diff options
-rw-r--r-- | drivers/net/wireless/bcm43xx/bcm43xx_main.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_main.c b/drivers/net/wireless/bcm43xx/bcm43xx_main.c index 57306a658407..4a7d88d28211 100644 --- a/drivers/net/wireless/bcm43xx/bcm43xx_main.c +++ b/drivers/net/wireless/bcm43xx/bcm43xx_main.c | |||
@@ -3484,15 +3484,17 @@ static int bcm43xx_init_board(struct bcm43xx_private *bcm) | |||
3484 | 3484 | ||
3485 | bcm43xx_pctl_set_clock(bcm, BCM43xx_PCTL_CLK_DYNAMIC); | 3485 | bcm43xx_pctl_set_clock(bcm, BCM43xx_PCTL_CLK_DYNAMIC); |
3486 | 3486 | ||
3487 | spin_lock_irqsave(&bcm->lock, flags); | ||
3488 | bcm->initialized = 1; | ||
3489 | spin_unlock_irqrestore(&bcm->lock, flags); | ||
3490 | |||
3491 | if (bcm->current_core->radio->initial_channel != 0xFF) { | 3487 | if (bcm->current_core->radio->initial_channel != 0xFF) { |
3492 | bcm43xx_mac_suspend(bcm); | 3488 | bcm43xx_mac_suspend(bcm); |
3493 | bcm43xx_radio_selectchannel(bcm, bcm->current_core->radio->initial_channel, 0); | 3489 | bcm43xx_radio_selectchannel(bcm, bcm->current_core->radio->initial_channel, 0); |
3494 | bcm43xx_mac_enable(bcm); | 3490 | bcm43xx_mac_enable(bcm); |
3495 | } | 3491 | } |
3492 | |||
3493 | /* Initialization of the board is done. Flag it as such. */ | ||
3494 | spin_lock_irqsave(&bcm->lock, flags); | ||
3495 | bcm->initialized = 1; | ||
3496 | spin_unlock_irqrestore(&bcm->lock, flags); | ||
3497 | |||
3496 | bcm43xx_periodic_tasks_setup(bcm); | 3498 | bcm43xx_periodic_tasks_setup(bcm); |
3497 | 3499 | ||
3498 | assert(err == 0); | 3500 | assert(err == 0); |