ath10k: fix ath10k_ce_init() failpath
authorMichal Kazior <michal.kazior@tieto.com>
Fri, 8 Nov 2013 07:01:28 +0000 (08:01 +0100)
committerKalle Valo <kvalo@qca.qualcomm.com>
Tue, 12 Nov 2013 18:06:45 +0000 (20:06 +0200)
Make sure to put target back to sleep. This was a
minor issue as it didn't really matter if we put
target back to sleep at this point. It just looked
wrong.

Signed-off-by: Michal Kazior <michal.kazior@tieto.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath10k/ce.c

index 7a49cde9c6165d88cd564c4be5fcf7b9c08b777e..657e8f2ee982912852d0d2fd30cf8ef89f814c19 100644 (file)
@@ -1077,7 +1077,7 @@ struct ath10k_ce_pipe *ath10k_ce_init(struct ath10k *ar,
        ce_state = ath10k_ce_init_state(ar, ce_id, attr);
        if (!ce_state) {
                ath10k_err("Failed to initialize CE state for ID: %d\n", ce_id);
-               return NULL;
+               goto out;
        }
 
        if (attr->src_nentries) {
@@ -1086,7 +1086,8 @@ struct ath10k_ce_pipe *ath10k_ce_init(struct ath10k *ar,
                        ath10k_err("Failed to initialize CE src ring for ID: %d (%d)\n",
                                   ce_id, ret);
                        ath10k_ce_deinit(ce_state);
-                       return NULL;
+                       ce_state = NULL;
+                       goto out;
                }
        }
 
@@ -1096,15 +1097,16 @@ struct ath10k_ce_pipe *ath10k_ce_init(struct ath10k *ar,
                        ath10k_err("Failed to initialize CE dest ring for ID: %d (%d)\n",
                                   ce_id, ret);
                        ath10k_ce_deinit(ce_state);
-                       return NULL;
+                       ce_state = NULL;
+                       goto out;
                }
        }
 
        /* Enable CE error interrupts */
        ath10k_ce_error_intr_enable(ar, ctrl_addr);
 
+out:
        ath10k_pci_sleep(ar);
-
        return ce_state;
 }
 
This page took 0.026539 seconds and 5 git commands to generate.