mirror of https://gitee.com/openkylin/linux.git
e1000e: rename e1000e_config_collision_dist() and call as function pointer
Rename e1000e_config_collision_dist() to e1000e_config_collision_dist_generic() to signify the function is used for more than one MAC-family type, and set and use it as a MAC ops function pointer to be consistent with the driver design. Signed-off-by: Bruce Allan <bruce.w.allan@intel.com> Tested-by: Aaron Brown <aaron.f.brown@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
6e3c807504
commit
57cde7630c
|
@ -1432,6 +1432,7 @@ static const struct e1000_mac_operations es2_mac_ops = {
|
|||
.setup_link = e1000e_setup_link_generic,
|
||||
/* setup_physical_interface dependent on media type */
|
||||
.setup_led = e1000e_setup_led_generic,
|
||||
.config_collision_dist = e1000e_config_collision_dist_generic,
|
||||
};
|
||||
|
||||
static const struct e1000_phy_operations es2_phy_ops = {
|
||||
|
|
|
@ -1927,6 +1927,7 @@ static const struct e1000_mac_operations e82571_mac_ops = {
|
|||
.setup_link = e1000_setup_link_82571,
|
||||
/* .setup_physical_interface: media type dependent */
|
||||
.setup_led = e1000e_setup_led_generic,
|
||||
.config_collision_dist = e1000e_config_collision_dist_generic,
|
||||
.read_mac_addr = e1000_read_mac_addr_82571,
|
||||
};
|
||||
|
||||
|
|
|
@ -575,7 +575,7 @@ extern s32 e1000e_set_fc_watermarks(struct e1000_hw *hw);
|
|||
extern void e1000e_set_pcie_no_snoop(struct e1000_hw *hw, u32 no_snoop);
|
||||
extern s32 e1000e_get_hw_semaphore(struct e1000_hw *hw);
|
||||
extern s32 e1000e_valid_led_default(struct e1000_hw *hw, u16 *data);
|
||||
extern void e1000e_config_collision_dist(struct e1000_hw *hw);
|
||||
extern void e1000e_config_collision_dist_generic(struct e1000_hw *hw);
|
||||
extern s32 e1000e_config_fc_after_link_up(struct e1000_hw *hw);
|
||||
extern s32 e1000e_force_mac_fc(struct e1000_hw *hw);
|
||||
extern s32 e1000e_blink_led_generic(struct e1000_hw *hw);
|
||||
|
|
|
@ -781,6 +781,7 @@ struct e1000_mac_operations {
|
|||
s32 (*setup_physical_interface)(struct e1000_hw *);
|
||||
s32 (*setup_led)(struct e1000_hw *);
|
||||
void (*write_vfta)(struct e1000_hw *, u32, u32);
|
||||
void (*config_collision_dist)(struct e1000_hw *);
|
||||
s32 (*read_mac_addr)(struct e1000_hw *);
|
||||
};
|
||||
|
||||
|
|
|
@ -746,7 +746,7 @@ static s32 e1000_check_for_copper_link_ich8lan(struct e1000_hw *hw)
|
|||
* of MAC speed/duplex configuration. So we only need to
|
||||
* configure Collision Distance in the MAC.
|
||||
*/
|
||||
e1000e_config_collision_dist(hw);
|
||||
mac->ops.config_collision_dist(hw);
|
||||
|
||||
/*
|
||||
* Configure Flow Control now that Auto-Neg has completed.
|
||||
|
@ -4022,6 +4022,7 @@ static const struct e1000_mac_operations ich8_mac_ops = {
|
|||
.setup_link = e1000_setup_link_ich8lan,
|
||||
.setup_physical_interface= e1000_setup_copper_link_ich8lan,
|
||||
/* id_led_init dependent on mac type */
|
||||
.config_collision_dist = e1000e_config_collision_dist_generic,
|
||||
};
|
||||
|
||||
static const struct e1000_phy_operations ich8_phy_ops = {
|
||||
|
|
|
@ -465,7 +465,7 @@ s32 e1000e_check_for_copper_link(struct e1000_hw *hw)
|
|||
* of MAC speed/duplex configuration. So we only need to
|
||||
* configure Collision Distance in the MAC.
|
||||
*/
|
||||
e1000e_config_collision_dist(hw);
|
||||
mac->ops.config_collision_dist(hw);
|
||||
|
||||
/*
|
||||
* Configure Flow Control now that Auto-Neg has completed.
|
||||
|
@ -890,7 +890,7 @@ s32 e1000e_setup_fiber_serdes_link(struct e1000_hw *hw)
|
|||
/* Take the link out of reset */
|
||||
ctrl &= ~E1000_CTRL_LRST;
|
||||
|
||||
e1000e_config_collision_dist(hw);
|
||||
hw->mac.ops.config_collision_dist(hw);
|
||||
|
||||
ret_val = e1000_commit_fc_settings_generic(hw);
|
||||
if (ret_val)
|
||||
|
@ -925,14 +925,13 @@ s32 e1000e_setup_fiber_serdes_link(struct e1000_hw *hw)
|
|||
}
|
||||
|
||||
/**
|
||||
* e1000e_config_collision_dist - Configure collision distance
|
||||
* e1000e_config_collision_dist_generic - Configure collision distance
|
||||
* @hw: pointer to the HW structure
|
||||
*
|
||||
* Configures the collision distance to the default value and is used
|
||||
* during link setup. Currently no func pointer exists and all
|
||||
* implementations are handled in the generic version of this function.
|
||||
* during link setup.
|
||||
**/
|
||||
void e1000e_config_collision_dist(struct e1000_hw *hw)
|
||||
void e1000e_config_collision_dist_generic(struct e1000_hw *hw)
|
||||
{
|
||||
u32 tctl;
|
||||
|
||||
|
|
|
@ -2855,7 +2855,7 @@ static void e1000_configure_tx(struct e1000_adapter *adapter)
|
|||
/* enable Report Status bit */
|
||||
adapter->txd_cmd |= E1000_TXD_CMD_RS;
|
||||
|
||||
e1000e_config_collision_dist(hw);
|
||||
hw->mac.ops.config_collision_dist(hw);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1181,7 +1181,7 @@ s32 e1000e_setup_copper_link(struct e1000_hw *hw)
|
|||
|
||||
if (link) {
|
||||
e_dbg("Valid link established!!!\n");
|
||||
e1000e_config_collision_dist(hw);
|
||||
hw->mac.ops.config_collision_dist(hw);
|
||||
ret_val = e1000e_config_fc_after_link_up(hw);
|
||||
} else {
|
||||
e_dbg("Unable to establish link!!!\n");
|
||||
|
@ -1489,7 +1489,7 @@ void e1000e_phy_force_speed_duplex_setup(struct e1000_hw *hw, u16 *phy_ctrl)
|
|||
e_dbg("Forcing 10mb\n");
|
||||
}
|
||||
|
||||
e1000e_config_collision_dist(hw);
|
||||
hw->mac.ops.config_collision_dist(hw);
|
||||
|
||||
ew32(CTRL, ctrl);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue