Commit 4e21d3f5 authored by Stephen Hemminger's avatar Stephen Hemminger

[PATCH] remove 8139too ring size option.

On Wed, 31 Mar 2004 15:05:16 -0500
Jeff Garzik <jgarzik@pobox.com> wrote:

> I really should remove the ability to configure 8139_RXBUF_IDX=3.
parent d54bf49a
...@@ -167,8 +167,12 @@ static int multicast_filter_limit = 32; ...@@ -167,8 +167,12 @@ static int multicast_filter_limit = 32;
/* bitmapped message enable number */ /* bitmapped message enable number */
static int debug = -1; static int debug = -1;
/* Ring size is now a config option */ /*
#define RX_BUF_LEN (8192 << CONFIG_8139_RXBUF_IDX) * Receive ring size
* Warning: 64K ring has hardware issues and may lock up.
*/
#define RX_BUF_IDX 2 /* 32K ring */
#define RX_BUF_LEN (8192 << RX_BUF_IDX)
#define RX_BUF_PAD 16 #define RX_BUF_PAD 16
#define RX_BUF_WRAP_PAD 2048 /* spare padding to handle lack of packet wrap */ #define RX_BUF_WRAP_PAD 2048 /* spare padding to handle lack of packet wrap */
...@@ -692,22 +696,22 @@ static const u16 rtl8139_norx_intr_mask = ...@@ -692,22 +696,22 @@ static const u16 rtl8139_norx_intr_mask =
PCIErr | PCSTimeout | RxUnderrun | PCIErr | PCSTimeout | RxUnderrun |
TxErr | TxOK | RxErr ; TxErr | TxOK | RxErr ;
#if CONFIG_8139_RXBUF_IDX == 0 #if RX_BUF_IDX == 0
static const unsigned int rtl8139_rx_config = static const unsigned int rtl8139_rx_config =
RxCfgRcv8K | RxNoWrap | RxCfgRcv8K | RxNoWrap |
(RX_FIFO_THRESH << RxCfgFIFOShift) | (RX_FIFO_THRESH << RxCfgFIFOShift) |
(RX_DMA_BURST << RxCfgDMAShift); (RX_DMA_BURST << RxCfgDMAShift);
#elif CONFIG_8139_RXBUF_IDX == 1 #elif RX_BUF_IDX == 1
static const unsigned int rtl8139_rx_config = static const unsigned int rtl8139_rx_config =
RxCfgRcv16K | RxNoWrap | RxCfgRcv16K | RxNoWrap |
(RX_FIFO_THRESH << RxCfgFIFOShift) | (RX_FIFO_THRESH << RxCfgFIFOShift) |
(RX_DMA_BURST << RxCfgDMAShift); (RX_DMA_BURST << RxCfgDMAShift);
#elif CONFIG_8139_RXBUF_IDX == 2 #elif RX_BUF_IDX == 2
static const unsigned int rtl8139_rx_config = static const unsigned int rtl8139_rx_config =
RxCfgRcv32K | RxNoWrap | RxCfgRcv32K | RxNoWrap |
(RX_FIFO_THRESH << RxCfgFIFOShift) | (RX_FIFO_THRESH << RxCfgFIFOShift) |
(RX_DMA_BURST << RxCfgDMAShift); (RX_DMA_BURST << RxCfgDMAShift);
#elif CONFIG_8139_RXBUF_IDX == 3 #elif RX_BUF_IDX == 3
static const unsigned int rtl8139_rx_config = static const unsigned int rtl8139_rx_config =
RxCfgRcv64K | RxCfgRcv64K |
(RX_FIFO_THRESH << RxCfgFIFOShift) | (RX_FIFO_THRESH << RxCfgFIFOShift) |
...@@ -1911,7 +1915,7 @@ static void rtl8139_rx_err (u32 rx_status, struct net_device *dev, ...@@ -1911,7 +1915,7 @@ static void rtl8139_rx_err (u32 rx_status, struct net_device *dev,
#endif #endif
} }
#if CONFIG_8139_RXBUF_IDX == 3 #if RX_BUF_IDX == 3
static __inline__ void wrap_copy(struct sk_buff *skb, const unsigned char *ring, static __inline__ void wrap_copy(struct sk_buff *skb, const unsigned char *ring,
u32 offset, unsigned int size) u32 offset, unsigned int size)
{ {
...@@ -1997,7 +2001,7 @@ static int rtl8139_rx(struct net_device *dev, struct rtl8139_private *tp, ...@@ -1997,7 +2001,7 @@ static int rtl8139_rx(struct net_device *dev, struct rtl8139_private *tp,
if (likely(skb)) { if (likely(skb)) {
skb->dev = dev; skb->dev = dev;
skb_reserve (skb, 2); /* 16 byte align the IP fields. */ skb_reserve (skb, 2); /* 16 byte align the IP fields. */
#if CONFIG_8139_RXBUF_IDX == 3 #if RX_BUF_IDX == 3
wrap_copy(skb, rx_ring, ring_offset+4, pkt_size); wrap_copy(skb, rx_ring, ring_offset+4, pkt_size);
#else #else
eth_copy_and_sum (skb, &rx_ring[ring_offset + 4], pkt_size, 0); eth_copy_and_sum (skb, &rx_ring[ring_offset + 4], pkt_size, 0);
......
...@@ -1597,24 +1597,6 @@ config 8139_OLD_RX_RESET ...@@ -1597,24 +1597,6 @@ config 8139_OLD_RX_RESET
experience problems, you can enable this option to restore the experience problems, you can enable this option to restore the
old RX-reset behavior. If unsure, say N. old RX-reset behavior. If unsure, say N.
config 8139_RXBUF_IDX
int "Receive ring size (0 => 8K, 1 => 16K, 2 => 32K, 3 => 64K)"
depends on 8139TOO
range 0 3
default 1 if EMBEDDED || SH_DREAMCAST
default 2
help
The 8139too driver has a fixed area of memory for receiving data.
The default value is adequate for most systems. The 64KB
ring size has hardware issues that may cause problems.
Values:
0 => 8 KB
1 => 16 KB embedded systems
2 => 32 KB default for most systems
3 => 64 KB
If unsure, use the default 2.
config SIS900 config SIS900
tristate "SiS 900/7016 PCI Fast Ethernet Adapter support" tristate "SiS 900/7016 PCI Fast Ethernet Adapter support"
depends on NET_PCI && PCI depends on NET_PCI && PCI
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment