• T
    wlcore: Fix timout errors after recovery · db68052b
    Tony Lindgren 提交于
    After enabling runtime PM, if we force hardware reset multiple times with:
    
    # echo 1 > /sys/kernel/debug/ieee80211/phy0/wlcore/start_recovery
    
    We will after few tries get the following error:
    
    wlcore: ERROR timeout waiting for the hardware to complete initialization
    
    And then wlcore is unable to reconnect until after the wlcore related modules
    are reloaded.
    
    Let's fix this by moving pm_runtime_put() earlier before we restart the hardware.
    And let's use the sync version to make sure we're done before we restart.
    
    Note that we still will get -EBUSY warning from wl12xx_sdio_set_power() but let's
    fix that separately once we know exactly why we get the warning.
    Reported-by: NEyal Reizer <eyalr@ti.com>
    Signed-off-by: NTony Lindgren <tony@atomide.com>
    Signed-off-by: NKalle Valo <kvalo@codeaurora.org>
    db68052b
main.c 168.4 KB