ath10k: Handle when FW doesn't support QMI_WLFW_HOST_CAP_REQ_V01
authorJeffrey Hugo <jeffrey.l.hugo@gmail.com>
Fri, 15 Nov 2019 07:21:43 +0000 (09:21 +0200)
committerKalle Valo <kvalo@codeaurora.org>
Mon, 25 Nov 2019 11:55:38 +0000 (13:55 +0200)
Firmware with the build id QC_IMAGE_VERSION_STRING=WLAN.HL.1.0.2-XXXX does
not support the QMI_WLFW_HOST_CAP_REQ_V01 message and will return the
QMI not supported error to the ath10k driver.  Since not supporting this
message is not fatal to the firmware nor the ath10k driver, lets catch
this particular scenario and ignore it so that we can still bring up
wifi services successfully.

Signed-off-by: Jeffrey Hugo <jeffrey.l.hugo@gmail.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/ath10k/qmi.c

index a0ba07b..ed69e97 100644 (file)
@@ -635,7 +635,9 @@ static int ath10k_qmi_host_cap_send_sync(struct ath10k_qmi *qmi)
        if (ret < 0)
                goto out;
 
-       if (resp.resp.result != QMI_RESULT_SUCCESS_V01) {
+       /* older FW didn't support this request, which is not fatal */
+       if (resp.resp.result != QMI_RESULT_SUCCESS_V01 &&
+           resp.resp.error != QMI_ERR_NOT_SUPPORTED_V01) {
                ath10k_err(ar, "host capability request rejected: %d\n", resp.resp.error);
                ret = -EINVAL;
                goto out;