Browse Source

ath10k: differentiate between target init failures

This just makes it easier to tell apart different
kinds of bringup failure.

Signed-off-by: Michal Kazior <michal.kazior@tieto.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Michal Kazior 11 năm trước cách đây
mục cha
commit
6a4f6e1d29

+ 7 - 1
drivers/net/wireless/ath/ath10k/pci.c

@@ -2464,7 +2464,13 @@ static int ath10k_pci_wait_for_target_init(struct ath10k *ar)
 		mdelay(10);
 		mdelay(10);
 	} while (time_before(jiffies, timeout));
 	} while (time_before(jiffies, timeout));
 
 
-	if (val == 0xffffffff || !(val & FW_IND_INITIALIZED)) {
+	if (val == 0xffffffff) {
+		ath10k_err("failed to read device register, device is gone\n");
+		ret = -EIO;
+		goto out;
+	}
+
+	if (!(val & FW_IND_INITIALIZED)) {
 		ath10k_err("failed to receive initialized event from target: %08x\n",
 		ath10k_err("failed to receive initialized event from target: %08x\n",
 			   val);
 			   val);
 		ret = -ETIMEDOUT;
 		ret = -ETIMEDOUT;