ixgbe: Fix isues while reporting 8259x backplane link capabilities
Subsystems (2)
PATCH 1/3 ixgbe: Fix isues while reporting 8259x backplane link capabilities
From: Mallikarjuna R Chilakala <[email protected]>
Fix ethtool get_settings logic to report 10G & 1G advertised and supported link modes in all 8259x 10G backplane connection types except for 82598EB BX network connection type.
---
drivers/net/ixgbe/ixgbe_ethtool.c | 19 ++++++++----------- 1 files changed, 8 insertions(+), 11 deletions(-)
drivers/net/ixgbe/ixgbe_ethtool.c +8 -11
@@ -169,23 +169,20 @@ static int ixgbe_get_settings(struct net_device *netdev, } }else if (hw->phy.media_type == ixgbe_media_type_backplane) {/* Set as FIBRE until SERDES defined in kernel */ -switch (hw->device_id) { -case IXGBE_DEV_ID_82598 : - ecmd->supported |= (SUPPORTED_1000baseT_Full | -SUPPORTED_FIBRE ); - ecmd->advertising = (ADVERTISED_10000baseT_Full | - ADVERTISED_1000baseT_Full | -ADVERTISED_FIBRE ); - ecmd->port =PORT_FIBRE ; -break ; -case IXGBE_DEV_ID_82598_BX : +if (hw->device_id ==IXGBE_DEV_ID_82598_BX ) { ecmd->supported = (SUPPORTED_1000baseT_Full |SUPPORTED_FIBRE ); ecmd->advertising = (ADVERTISED_1000baseT_Full |ADVERTISED_FIBRE ); ecmd->port =PORT_FIBRE ; ecmd->autoneg =AUTONEG_DISABLE ; -break ; + }else { + ecmd->supported |= (SUPPORTED_1000baseT_Full | +SUPPORTED_FIBRE ); + ecmd->advertising = (ADVERTISED_10000baseT_Full | + ADVERTISED_1000baseT_Full | +ADVERTISED_FIBRE ); + ecmd->port =PORT_FIBRE ; } }else { ecmd->supported |=SUPPORTED_FIBRE ;
PATCH 2/3 ixgbe: cleanup functions that should have been defined static
From: Don Skidmore <[email protected]>
We have some ~40 functions that were being called out with 'make namespacecheck'. This patch changes these functions to be static.
---
drivers/net/ixgbe/ixgbe.h | 35 --------- drivers/net/ixgbe/ixgbe_82598.c | 6 + drivers/net/ixgbe/ixgbe_82599.c | 156 ++++++++++++++++++-------------------- drivers/net/ixgbe/ixgbe_common.c | 3 - drivers/net/ixgbe/ixgbe_common.h | 1 drivers/net/ixgbe/ixgbe_main.c | 2 6 files changed, 81 insertions(+), 122 deletions(-)
drivers/net/ixgbe/ixgbe.h +0 -35
@@ -424,55 +424,20 @@ extern s32 ixgbe_init_fdir_perfect_82599(struct ixgbe_hw *hw, u32 pballoc);extern s32 ixgbe_fdir_add_signature_filter_82599 (struct ixgbe_hw *hw,struct ixgbe_atr_input *input,u8 queue); -extern s32 ixgbe_fdir_add_perfect_filter_82599 (struct ixgbe_hw *hw, -struct ixgbe_atr_input *input, -u16 soft_id, -u8 queue); -extern u16 ixgbe_atr_compute_hash_82599 (struct ixgbe_atr_input *input,u32 key);extern s32 ixgbe_atr_set_vlan_id_82599 (struct ixgbe_atr_input *input,u16 vlan_id);extern s32 ixgbe_atr_set_src_ipv4_82599 (struct ixgbe_atr_input *input,u32 src_addr);extern s32 ixgbe_atr_set_dst_ipv4_82599 (struct ixgbe_atr_input *input,u32 dst_addr); -extern s32 ixgbe_atr_set_src_ipv6_82599 (struct ixgbe_atr_input *input, -u32 src_addr_1,u32 src_addr_2, -u32 src_addr_3,u32 src_addr_4); -extern s32 ixgbe_atr_set_dst_ipv6_82599 (struct ixgbe_atr_input *input, -u32 dst_addr_1,u32 dst_addr_2, -u32 dst_addr_3,u32 dst_addr_4);extern s32 ixgbe_atr_set_src_port_82599 (struct ixgbe_atr_input *input,u16 src_port);extern s32 ixgbe_atr_set_dst_port_82599 (struct ixgbe_atr_input *input,u16 dst_port);extern s32 ixgbe_atr_set_flex_byte_82599 (struct ixgbe_atr_input *input,u16 flex_byte); -extern s32 ixgbe_atr_set_vm_pool_82599 (struct ixgbe_atr_input *input, -u8 vm_pool);extern s32 ixgbe_atr_set_l4type_82599 (struct ixgbe_atr_input *input,u8 l4type); -extern s32 ixgbe_atr_get_vlan_id_82599 (struct ixgbe_atr_input *input, -u16 *vlan_id); -extern s32 ixgbe_atr_get_src_ipv4_82599 (struct ixgbe_atr_input *input, -u32 *src_addr); -extern s32 ixgbe_atr_get_dst_ipv4_82599 (struct ixgbe_atr_input *input, -u32 *dst_addr); -extern s32 ixgbe_atr_get_src_ipv6_82599 (struct ixgbe_atr_input *input, -u32 *src_addr_1,u32 *src_addr_2, -u32 *src_addr_3,u32 *src_addr_4); -extern s32 ixgbe_atr_get_dst_ipv6_82599 (struct ixgbe_atr_input *input, -u32 *dst_addr_1,u32 *dst_addr_2, -u32 *dst_addr_3,u32 *dst_addr_4); -extern s32 ixgbe_atr_get_src_port_82599 (struct ixgbe_atr_input *input, -u16 *src_port); -extern s32 ixgbe_atr_get_dst_port_82599 (struct ixgbe_atr_input *input, -u16 *dst_port); -extern s32 ixgbe_atr_get_flex_byte_82599 (struct ixgbe_atr_input *input, -u16 *flex_byte); -extern s32 ixgbe_atr_get_vm_pool_82599 (struct ixgbe_atr_input *input, -u8 *vm_pool); -extern s32 ixgbe_atr_get_l4type_82599 (struct ixgbe_atr_input *input, -u8 *l4type);#ifdef IXGBE_FCOE extern void ixgbe_configure_fcoe (struct ixgbe_adapter *adapter); extern int ixgbe_fso(struct ixgbe_adapter *adapter,
drivers/net/ixgbe/ixgbe_82598.c +3 -3
@@ -59,7 +59,7 @@ static s32 ixgbe_read_i2c_eeprom_82598(struct ixgbe_hw *hw, u8 byte_offset,* increase the value to either 10ms to 250ms for capability version 1 config, * or 16ms to 55ms for version 2. **/ -void ixgbe_set_pcie_completion_timeout (struct ixgbe_hw *hw) +static void ixgbe_set_pcie_completion_timeout (struct ixgbe_hw *hw) {struct ixgbe_adapter *adapter = hw->back;u32 gcr =IXGBE_READ_REG (hw,IXGBE_GCR );
@@ -143,7 +143,7 @@ static s32 ixgbe_get_invariants_82598(struct ixgbe_hw *hw)* not known. Perform the SFP init if necessary. * **/ -s32 ixgbe_init_phy_ops_82598 (struct ixgbe_hw *hw) +static s32 ixgbe_init_phy_ops_82598 (struct ixgbe_hw *hw) {struct ixgbe_mac_info *mac = &hw->mac;struct ixgbe_phy_info *phy = &hw->phy;
@@ -204,7 +204,7 @@ out:* Starts the hardware using the generic start_hw function. * Then set pcie completion timeout **/ -s32 ixgbe_start_hw_82598 (struct ixgbe_hw *hw) +static s32 ixgbe_start_hw_82598 (struct ixgbe_hw *hw) {s32 ret_val =0 ;
drivers/net/ixgbe/ixgbe_82599.c +75 -81
412 lines not on this page · raw message
drivers/net/ixgbe/ixgbe_common.c +2 -1
@@ -53,6 +53,7 @@ static void ixgbe_enable_rar(struct ixgbe_hw *hw, u32 index);static void ixgbe_disable_rar (struct ixgbe_hw *hw,u32 index);static s32 ixgbe_mta_vector (struct ixgbe_hw *hw,u8 *mc_addr);static void ixgbe_add_uc_addr (struct ixgbe_hw *hw,u8 *addr,u32 vmdq); +static s32 ixgbe_setup_fc (struct ixgbe_hw *hw,s32 packetbuf_num);/** * ixgbe_start_hw_generic - Prepare hardware for Tx/Rx
@@ -1815,7 +1816,7 @@ out:* * Called at init time to set up flow control. **/ -s32 ixgbe_setup_fc (struct ixgbe_hw *hw,s32 packetbuf_num) +static s32 ixgbe_setup_fc (struct ixgbe_hw *hw,s32 packetbuf_num) {s32 ret_val =0 ;u32 reg;
drivers/net/ixgbe/ixgbe_common.h +0 -1
@@ -64,7 +64,6 @@ s32 ixgbe_update_uc_addr_list_generic(struct ixgbe_hw *hw,s32 ixgbe_enable_mc_generic (struct ixgbe_hw *hw);s32 ixgbe_disable_mc_generic (struct ixgbe_hw *hw);s32 ixgbe_enable_rx_dma_generic (struct ixgbe_hw *hw,u32 regval); -s32 ixgbe_setup_fc (struct ixgbe_hw *hw,s32 packetbuf_num);s32 ixgbe_fc_enable_generic (struct ixgbe_hw *hw,s32 packtetbuf_num);s32 ixgbe_fc_autoneg (struct ixgbe_hw *hw);
drivers/net/ixgbe/ixgbe_main.c +1 -1
@@ -3615,7 +3615,7 @@ static void ixgbe_free_q_vectors(struct ixgbe_adapter *adapter) } } -void ixgbe_reset_interrupt_capability (struct ixgbe_adapter *adapter) +static void ixgbe_reset_interrupt_capability (struct ixgbe_adapter *adapter) {if (adapter->flags &IXGBE_FLAG_MSIX_ENABLED ) { adapter->flags &= ~IXGBE_FLAG_MSIX_ENABLED ;
Re: [net-next PATCH 2/3] ixgbe: cleanup functions that should have been defined static
From: Jeff Kirsher <[email protected]>
Date: Tue, 25 Aug 2009 07:47:32 -0700
Quoted 7 lines
From: Don Skidmore <[email protected]>
We have some ~40 functions that were being called out with 'make namespacecheck'. This patch changes these functions to be static.
Signed-off-by Don Skidmore <[email protected]>Signed-off-by Jeff Kirsher <[email protected]>
Applied.
PATCH 3/3 igb/ixgbe: add IPV6_CSUM support to vlan_features
In reply to Jeff KirsherFrom: Alexander Duyck <[email protected]>
We were already exporting TSO6 to the vlan, but we weren't exporting the checksum support for IPV6 which was causing warning messages to be displayed when doing IPv6 TSO over a vlan.
---
drivers/net/igb/igb_main.c | 1 + drivers/net/ixgbe/ixgbe_main.c | 1 + 2 files changed, 2 insertions(+), 0 deletions(-)
drivers/net/igb/igb_main.c +1 -0
@@ -1380,6 +1380,7 @@ static int __devinit igb_probe(struct pci_dev *pdev, netdev->vlan_features |=NETIF_F_TSO ; netdev->vlan_features |=NETIF_F_TSO6 ; netdev->vlan_features |=NETIF_F_IP_CSUM ; + netdev->vlan_features |=NETIF_F_IPV6_CSUM ; netdev->vlan_features |=NETIF_F_SG ;if (pci_using_dac)
drivers/net/ixgbe/ixgbe_main.c +1 -0
@@ -5575,6 +5575,7 @@ static int __devinit ixgbe_probe(struct pci_dev *pdev, netdev->vlan_features |=NETIF_F_TSO ; netdev->vlan_features |=NETIF_F_TSO6 ; netdev->vlan_features |=NETIF_F_IP_CSUM ; + netdev->vlan_features |=NETIF_F_IPV6_CSUM ; netdev->vlan_features |=NETIF_F_SG ;if (adapter->flags &IXGBE_FLAG_DCB_ENABLED )
Re: [net-next PATCH 3/3] igb/ixgbe: add IPV6_CSUM support to vlan_features
From: Jeff Kirsher <[email protected]>
Date: Tue, 25 Aug 2009 07:47:50 -0700
Quoted 8 lines
From: Alexander Duyck <[email protected]>
We were already exporting TSO6 to the vlan, but we weren't exporting the checksum support for IPV6 which was causing warning messages to be displayed when doing IPv6 TSO over a vlan.
Signed-off-by Alexander Duyck <[email protected]>Signed-off-by Jeff Kirsher <[email protected]>
Applied.
From: Jeff Kirsher <[email protected]>
Date: Tue, 25 Aug 2009 07:47:11 -0700
Quoted 9 lines
From: Mallikarjuna R Chilakala <[email protected]>
Fix ethtool
get_settingslogic to report 10G & 1G advertised and supported link modes in all 8259x 10G backplane connection types except for 82598EB BX network connection type.Signed-off-by Mallikarjuna R Chilakala <[email protected]>Signed-off-by Jeff Kirsher <[email protected]>
Applied.