diff options
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/init.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/init.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c index dee9e092449a..9dfce1a69c73 100644 --- a/drivers/net/wireless/ath/ath9k/init.c +++ b/drivers/net/wireless/ath/ath9k/init.c | |||
@@ -489,6 +489,7 @@ static void ath9k_init_misc(struct ath_softc *sc) | |||
489 | 489 | ||
490 | setup_timer(&common->ani.timer, ath_ani_calibrate, (unsigned long)sc); | 490 | setup_timer(&common->ani.timer, ath_ani_calibrate, (unsigned long)sc); |
491 | 491 | ||
492 | sc->last_rssi = ATH_RSSI_DUMMY_MARKER; | ||
492 | sc->config.txpowlimit = ATH_TXPOWER_MAX; | 493 | sc->config.txpowlimit = ATH_TXPOWER_MAX; |
493 | memcpy(common->bssidmask, ath_bcast_mac, ETH_ALEN); | 494 | memcpy(common->bssidmask, ath_bcast_mac, ETH_ALEN); |
494 | sc->beacon.slottime = ATH9K_SLOT_TIME_9; | 495 | sc->beacon.slottime = ATH9K_SLOT_TIME_9; |
@@ -560,6 +561,12 @@ static int ath9k_init_softc(u16 devid, struct ath_softc *sc, | |||
560 | tasklet_init(&sc->bcon_tasklet, ath_beacon_tasklet, | 561 | tasklet_init(&sc->bcon_tasklet, ath_beacon_tasklet, |
561 | (unsigned long)sc); | 562 | (unsigned long)sc); |
562 | 563 | ||
564 | INIT_WORK(&sc->hw_reset_work, ath_reset_work); | ||
565 | INIT_WORK(&sc->hw_check_work, ath_hw_check); | ||
566 | INIT_WORK(&sc->paprd_work, ath_paprd_calibrate); | ||
567 | INIT_DELAYED_WORK(&sc->hw_pll_work, ath_hw_pll_work); | ||
568 | setup_timer(&sc->rx_poll_timer, ath_rx_poll, (unsigned long)sc); | ||
569 | |||
563 | /* | 570 | /* |
564 | * Cache line size is used to size and align various | 571 | * Cache line size is used to size and align various |
565 | * structures used to communicate with the hardware. | 572 | * structures used to communicate with the hardware. |
@@ -590,6 +597,9 @@ static int ath9k_init_softc(u16 devid, struct ath_softc *sc, | |||
590 | ath9k_cmn_init_crypto(sc->sc_ah); | 597 | ath9k_cmn_init_crypto(sc->sc_ah); |
591 | ath9k_init_misc(sc); | 598 | ath9k_init_misc(sc); |
592 | 599 | ||
600 | if (common->bus_ops->aspm_init) | ||
601 | common->bus_ops->aspm_init(common); | ||
602 | |||
593 | return 0; | 603 | return 0; |
594 | 604 | ||
595 | err_btcoex: | 605 | err_btcoex: |
@@ -782,11 +792,6 @@ int ath9k_init_device(u16 devid, struct ath_softc *sc, | |||
782 | ARRAY_SIZE(ath9k_tpt_blink)); | 792 | ARRAY_SIZE(ath9k_tpt_blink)); |
783 | #endif | 793 | #endif |
784 | 794 | ||
785 | INIT_WORK(&sc->hw_reset_work, ath_reset_work); | ||
786 | INIT_WORK(&sc->hw_check_work, ath_hw_check); | ||
787 | INIT_WORK(&sc->paprd_work, ath_paprd_calibrate); | ||
788 | INIT_DELAYED_WORK(&sc->hw_pll_work, ath_hw_pll_work); | ||
789 | |||
790 | /* Register with mac80211 */ | 795 | /* Register with mac80211 */ |
791 | error = ieee80211_register_hw(hw); | 796 | error = ieee80211_register_hw(hw); |
792 | if (error) | 797 | if (error) |
@@ -805,9 +810,6 @@ int ath9k_init_device(u16 devid, struct ath_softc *sc, | |||
805 | goto error_world; | 810 | goto error_world; |
806 | } | 811 | } |
807 | 812 | ||
808 | setup_timer(&sc->rx_poll_timer, ath_rx_poll, (unsigned long)sc); | ||
809 | sc->last_rssi = ATH_RSSI_DUMMY_MARKER; | ||
810 | |||
811 | ath_init_leds(sc); | 813 | ath_init_leds(sc); |
812 | ath_start_rfkill_poll(sc); | 814 | ath_start_rfkill_poll(sc); |
813 | 815 | ||