mt76x0: disable HW before probe

Disable HW before probe, otherwise after reboot we will fail
to initialize MCU.

Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
Stanislaw Gruszka 2018-07-31 14:41:03 +02:00 committed by Kalle Valo
parent 52abb142ba
commit 369bbecdbb
3 changed files with 6 additions and 1 deletions

View File

@ -62,7 +62,7 @@ mt76x0_set_wlan_state(struct mt76x0_dev *dev, u32 val, bool enable)
dev_err(dev->mt76.dev, "Error: PLL and XTAL check failed!\n");
}
static void mt76x0_chip_onoff(struct mt76x0_dev *dev, bool enable, bool reset)
void mt76x0_chip_onoff(struct mt76x0_dev *dev, bool enable, bool reset)
{
u32 val;

View File

@ -288,6 +288,7 @@ struct mt76x0_dev *mt76x0_alloc_device(struct device *dev);
int mt76x0_init_hardware(struct mt76x0_dev *dev);
int mt76x0_register_device(struct mt76x0_dev *dev);
void mt76x0_cleanup(struct mt76x0_dev *dev);
void mt76x0_chip_onoff(struct mt76x0_dev *dev, bool enable, bool reset);
int mt76x0_mac_start(struct mt76x0_dev *dev);
void mt76x0_mac_stop(struct mt76x0_dev *dev);

View File

@ -283,6 +283,10 @@ static int mt76x0_probe(struct usb_interface *usb_intf,
ret = mt76x0_assign_pipes(usb_intf, dev);
if (ret)
goto err;
/* Disable the HW, otherwise MCU fail to initalize on hot reboot */
mt76x0_chip_onoff(dev, false, false);
ret = mt76x0_wait_asic_ready(dev);
if (ret)
goto err;