igb: remove unneeded bit refrence when enabling jumbo frames
authorAlexander Duyck <alexander.h.duyck@intel.com>
Tue, 25 Nov 2008 09:03:26 +0000 (01:03 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 25 Nov 2008 09:03:26 +0000 (01:03 -0800)
There is a reference to a Buffer Size extention bit that is unneded by
82575/82576 hardware.  Since it is not needed it should be removed from the
code.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/igb/e1000_defines.h
drivers/net/igb/igb_main.c

index ce70068..c5fe784 100644 (file)
 #define E1000_RCTL_RDMTS_HALF     0x00000000    /* rx desc min threshold size */
 #define E1000_RCTL_MO_SHIFT       12            /* multicast offset shift */
 #define E1000_RCTL_BAM            0x00008000    /* broadcast enable */
-/* these buffer sizes are valid if E1000_RCTL_BSEX is 0 */
 #define E1000_RCTL_SZ_2048        0x00000000    /* rx buffer size 2048 */
 #define E1000_RCTL_SZ_1024        0x00010000    /* rx buffer size 1024 */
 #define E1000_RCTL_SZ_512         0x00020000    /* rx buffer size 512 */
 #define E1000_RCTL_SZ_256         0x00030000    /* rx buffer size 256 */
-/* these buffer sizes are valid if E1000_RCTL_BSEX is 1 */
-#define E1000_RCTL_SZ_16384       0x00010000    /* rx buffer size 16384 */
-#define E1000_RCTL_SZ_8192        0x00020000    /* rx buffer size 8192 */
-#define E1000_RCTL_SZ_4096        0x00030000    /* rx buffer size 4096 */
 #define E1000_RCTL_VFE            0x00040000    /* vlan filter enable */
 #define E1000_RCTL_CFIEN          0x00080000    /* canonical form enable */
-#define E1000_RCTL_BSEX           0x02000000    /* Buffer size extension */
 #define E1000_RCTL_SECRC          0x04000000    /* Strip Ethernet CRC */
 
 /*
index b64c41a..ae65fae 100644 (file)
@@ -1791,37 +1791,29 @@ static void igb_setup_rctl(struct igb_adapter *adapter)
        */
        rctl |= E1000_RCTL_SECRC;
 
-       rctl &= ~E1000_RCTL_SBP;
+       /*
+        * disable store bad packets, long packet enable, and clear size bits.
+        */
+       rctl &= ~(E1000_RCTL_SBP | E1000_RCTL_LPE | E1000_RCTL_SZ_256);
 
-       if (adapter->netdev->mtu <= ETH_DATA_LEN)
-               rctl &= ~E1000_RCTL_LPE;
-       else
-               rctl |= E1000_RCTL_LPE;
-       if (adapter->rx_buffer_len <= IGB_RXBUFFER_2048) {
+       if (adapter->netdev->mtu <= ETH_DATA_LEN) {
                /* Setup buffer sizes */
-               rctl &= ~E1000_RCTL_SZ_4096;
-               rctl |= E1000_RCTL_BSEX;
                switch (adapter->rx_buffer_len) {
                case IGB_RXBUFFER_256:
                        rctl |= E1000_RCTL_SZ_256;
-                       rctl &= ~E1000_RCTL_BSEX;
                        break;
                case IGB_RXBUFFER_512:
                        rctl |= E1000_RCTL_SZ_512;
-                       rctl &= ~E1000_RCTL_BSEX;
                        break;
                case IGB_RXBUFFER_1024:
                        rctl |= E1000_RCTL_SZ_1024;
-                       rctl &= ~E1000_RCTL_BSEX;
                        break;
-               case IGB_RXBUFFER_2048:
                default:
                        rctl |= E1000_RCTL_SZ_2048;
-                       rctl &= ~E1000_RCTL_BSEX;
                        break;
                }
        } else {
-               rctl &= ~E1000_RCTL_BSEX;
+               rctl |= E1000_RCTL_LPE;
                srrctl = adapter->rx_buffer_len >> E1000_SRRCTL_BSIZEPKT_SHIFT;
        }