Skip to content

Commit

Permalink
igb: convert to ethtool set_phys_id
Browse files Browse the repository at this point in the history
Based on patch from Stephen Hemminger.
Convert igb driver to use new set_phys_id ethtool interface.

CC: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
  • Loading branch information
Jeff Kirsher committed May 7, 2011
1 parent 6435909 commit 936db35
Showing 1 changed file with 19 additions and 18 deletions.
37 changes: 19 additions & 18 deletions drivers/net/igb/igb_ethtool.c
Original file line number Diff line number Diff line change
Expand Up @@ -1964,27 +1964,28 @@ static int igb_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
/* bit defines for adapter->led_status */
#define IGB_LED_ON 0

static int igb_phys_id(struct net_device *netdev, u32 data)
static int igb_set_phys_id(struct net_device *netdev,
enum ethtool_phys_id_state state)
{
struct igb_adapter *adapter = netdev_priv(netdev);
struct e1000_hw *hw = &adapter->hw;
unsigned long timeout;

timeout = data * 1000;

/*
* msleep_interruptable only accepts unsigned int so we are limited
* in how long a duration we can wait
*/
if (!timeout || timeout > UINT_MAX)
timeout = UINT_MAX;

igb_blink_led(hw);
msleep_interruptible(timeout);

igb_led_off(hw);
clear_bit(IGB_LED_ON, &adapter->led_status);
igb_cleanup_led(hw);
switch (state) {
case ETHTOOL_ID_ACTIVE:
igb_blink_led(hw);
return 2;
case ETHTOOL_ID_ON:
igb_blink_led(hw);
break;
case ETHTOOL_ID_OFF:
igb_led_off(hw);
break;
case ETHTOOL_ID_INACTIVE:
igb_led_off(hw);
clear_bit(IGB_LED_ON, &adapter->led_status);
igb_cleanup_led(hw);
break;
}

return 0;
}
Expand Down Expand Up @@ -2216,7 +2217,7 @@ static const struct ethtool_ops igb_ethtool_ops = {
.set_tso = igb_set_tso,
.self_test = igb_diag_test,
.get_strings = igb_get_strings,
.phys_id = igb_phys_id,
.set_phys_id = igb_set_phys_id,
.get_sset_count = igb_get_sset_count,
.get_ethtool_stats = igb_get_ethtool_stats,
.get_coalesce = igb_get_coalesce,
Expand Down

0 comments on commit 936db35

Please sign in to comment.