diff options
| author | Karl Hiramoto <karl@hiramoto.org> | 2010-07-08 16:55:38 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2010-07-09 03:09:24 -0400 |
| commit | cc7b86c1a8f207c8aa77aad6941475d8294a83c4 (patch) | |
| tree | 796aa8dce98e2ed73fdefd27beca0ea31e244c77 /drivers/usb/atm | |
| parent | 23f89f0488fa0fc843503fa07768d0d3edde3c44 (diff) | |
usb/atm/ueagle-atm.c: call atm_dev_signal_change() when signal changes.
Propagate signal changes to upper atm layer.
Signed-off-by: Karl Hiramoto <karl@hiramoto.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/usb/atm')
| -rw-r--r-- | drivers/usb/atm/ueagle-atm.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/usb/atm/ueagle-atm.c b/drivers/usb/atm/ueagle-atm.c index e213d3fa4920..ebae94480140 100644 --- a/drivers/usb/atm/ueagle-atm.c +++ b/drivers/usb/atm/ueagle-atm.c | |||
| @@ -575,6 +575,13 @@ MODULE_PARM_DESC(annex, | |||
| 575 | sc->usbatm->atm_dev->type = val; \ | 575 | sc->usbatm->atm_dev->type = val; \ |
| 576 | } while (0) | 576 | } while (0) |
| 577 | 577 | ||
| 578 | #define UPDATE_ATM_SIGNAL(val) \ | ||
| 579 | do { \ | ||
| 580 | if (sc->usbatm->atm_dev) \ | ||
| 581 | atm_dev_signal_change(sc->usbatm->atm_dev, val); \ | ||
| 582 | } while (0) | ||
| 583 | |||
| 584 | |||
| 578 | /* Firmware loading */ | 585 | /* Firmware loading */ |
| 579 | #define LOAD_INTERNAL 0xA0 | 586 | #define LOAD_INTERNAL 0xA0 |
| 580 | #define F8051_USBCS 0x7f92 | 587 | #define F8051_USBCS 0x7f92 |
| @@ -1359,7 +1366,7 @@ static int uea_stat_e1(struct uea_softc *sc) | |||
| 1359 | /* always update it as atm layer could not be init when we switch to | 1366 | /* always update it as atm layer could not be init when we switch to |
| 1360 | * operational state | 1367 | * operational state |
| 1361 | */ | 1368 | */ |
| 1362 | UPDATE_ATM_STAT(signal, ATM_PHY_SIG_FOUND); | 1369 | UPDATE_ATM_SIGNAL(ATM_PHY_SIG_FOUND); |
| 1363 | 1370 | ||
| 1364 | /* wake up processes waiting for synchronization */ | 1371 | /* wake up processes waiting for synchronization */ |
| 1365 | wake_up(&sc->sync_q); | 1372 | wake_up(&sc->sync_q); |
| @@ -1498,7 +1505,7 @@ static int uea_stat_e4(struct uea_softc *sc) | |||
| 1498 | /* always update it as atm layer could not be init when we switch to | 1505 | /* always update it as atm layer could not be init when we switch to |
| 1499 | * operational state | 1506 | * operational state |
| 1500 | */ | 1507 | */ |
| 1501 | UPDATE_ATM_STAT(signal, ATM_PHY_SIG_FOUND); | 1508 | UPDATE_ATM_SIGNAL(ATM_PHY_SIG_FOUND); |
| 1502 | 1509 | ||
| 1503 | /* wake up processes waiting for synchronization */ | 1510 | /* wake up processes waiting for synchronization */ |
| 1504 | wake_up(&sc->sync_q); | 1511 | wake_up(&sc->sync_q); |
| @@ -1825,7 +1832,7 @@ static int uea_start_reset(struct uea_softc *sc) | |||
| 1825 | * So we will failed to wait Ready CMV. | 1832 | * So we will failed to wait Ready CMV. |
| 1826 | */ | 1833 | */ |
| 1827 | sc->cmv_ack = 0; | 1834 | sc->cmv_ack = 0; |
| 1828 | UPDATE_ATM_STAT(signal, ATM_PHY_SIG_LOST); | 1835 | UPDATE_ATM_SIGNAL(ATM_PHY_SIG_LOST); |
| 1829 | 1836 | ||
| 1830 | /* reset statistics */ | 1837 | /* reset statistics */ |
| 1831 | memset(&sc->stats, 0, sizeof(struct uea_stats)); | 1838 | memset(&sc->stats, 0, sizeof(struct uea_stats)); |
