Commit | Line | Data |
---|---|---|
34e49164 C |
1 | static void xm_link_timer(void *arg) |
2 | { | |
3 | struct net_device *dev = arg; | |
4 | struct skge_port *skge = netdev_priv(arg); | |
5 | struct skge_hw *hw = skge->hw; | |
6 | int port = skge->port; | |
7 | ||
8 | if (!netif_running(dev)) | |
9 | return; | |
10 | ||
11 | if (netif_carrier_ok(dev)) { | |
12 | xm_read16(hw, port, XM_ISRC); | |
13 | if (!(xm_read16(hw, port, XM_ISRC) & XM_IS_INP_ASS)) | |
14 | goto nochange; | |
15 | } | |
16 | ||
17 | nochange: | |
18 | schedule_delayed_work(&skge->link_thread, LINK_HZ); | |
19 | } |