|
@@ -133,8 +133,8 @@ static void igb_clean_all_rx_rings(struct igb_adapter *);
|
|
|
static void igb_clean_tx_ring(struct igb_ring *);
|
|
|
static void igb_clean_rx_ring(struct igb_ring *);
|
|
|
static void igb_set_rx_mode(struct net_device *);
|
|
|
-static void igb_update_phy_info(unsigned long);
|
|
|
-static void igb_watchdog(unsigned long);
|
|
|
+static void igb_update_phy_info(struct timer_list *);
|
|
|
+static void igb_watchdog(struct timer_list *);
|
|
|
static void igb_watchdog_task(struct work_struct *);
|
|
|
static netdev_tx_t igb_xmit_frame(struct sk_buff *skb, struct net_device *);
|
|
|
static void igb_get_stats64(struct net_device *dev,
|
|
@@ -2538,10 +2538,8 @@ static int igb_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
wr32(E1000_TXPBS, I210_TXPBSIZE_DEFAULT);
|
|
|
}
|
|
|
|
|
|
- setup_timer(&adapter->watchdog_timer, igb_watchdog,
|
|
|
- (unsigned long) adapter);
|
|
|
- setup_timer(&adapter->phy_info_timer, igb_update_phy_info,
|
|
|
- (unsigned long) adapter);
|
|
|
+ timer_setup(&adapter->watchdog_timer, igb_watchdog, 0);
|
|
|
+ timer_setup(&adapter->phy_info_timer, igb_update_phy_info, 0);
|
|
|
|
|
|
INIT_WORK(&adapter->reset_task, igb_reset_task);
|
|
|
INIT_WORK(&adapter->watchdog_task, igb_watchdog_task);
|
|
@@ -4425,9 +4423,9 @@ static void igb_spoof_check(struct igb_adapter *adapter)
|
|
|
/* Need to wait a few seconds after link up to get diagnostic information from
|
|
|
* the phy
|
|
|
*/
|
|
|
-static void igb_update_phy_info(unsigned long data)
|
|
|
+static void igb_update_phy_info(struct timer_list *t)
|
|
|
{
|
|
|
- struct igb_adapter *adapter = (struct igb_adapter *) data;
|
|
|
+ struct igb_adapter *adapter = from_timer(adapter, t, phy_info_timer);
|
|
|
igb_get_phy_info(&adapter->hw);
|
|
|
}
|
|
|
|
|
@@ -4514,9 +4512,9 @@ static void igb_check_lvmmc(struct igb_adapter *adapter)
|
|
|
* igb_watchdog - Timer Call-back
|
|
|
* @data: pointer to adapter cast into an unsigned long
|
|
|
**/
|
|
|
-static void igb_watchdog(unsigned long data)
|
|
|
+static void igb_watchdog(struct timer_list *t)
|
|
|
{
|
|
|
- struct igb_adapter *adapter = (struct igb_adapter *)data;
|
|
|
+ struct igb_adapter *adapter = from_timer(adapter, t, watchdog_timer);
|
|
|
/* Do the rest outside of interrupt context */
|
|
|
schedule_work(&adapter->watchdog_task);
|
|
|
}
|