ath6kl: configure SDIO when power is reapplied
authorJames Minor <james.minor@ni.com>
Mon, 3 Oct 2016 18:00:04 +0000 (13:00 -0500)
committerKalle Valo <kvalo@qca.qualcomm.com>
Thu, 6 Oct 2016 07:14:45 +0000 (10:14 +0300)
When power is removed from the device, all of the SDIO settings
return to default.  Fix that by reconfiguring after power is
applied.

Signed-off-by: James Minor <james.minor@ni.com>
Reviewed-by: Steve deRosier <steve.derosier@lairdtech.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath6kl/sdio.c

index 8261e24..c2df075 100644 (file)
@@ -75,6 +75,8 @@ struct ath6kl_sdio {
 #define CMD53_ARG_FIXED_ADDRESS 0
 #define CMD53_ARG_INCR_ADDRESS  1
 
+static int ath6kl_sdio_config(struct ath6kl *ar);
+
 static inline struct ath6kl_sdio *ath6kl_sdio_priv(struct ath6kl *ar)
 {
        return ar->hif_priv;
@@ -526,8 +528,15 @@ static int ath6kl_sdio_power_on(struct ath6kl *ar)
         */
        msleep(10);
 
+       ret = ath6kl_sdio_config(ar);
+       if (ret) {
+               ath6kl_err("Failed to config sdio: %d\n", ret);
+               goto out;
+       }
+
        ar_sdio->is_disabled = false;
 
+out:
        return ret;
 }