From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C388142AA3 for ; Mon, 5 Jan 2026 03:01:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767582121; cv=none; b=Mngbes6S7gA4j9wqAfUP/NytjnoX7ald8VNg2DB5aQpcnxX71RltWP4TTFVx2weo5itG4KoMZ2ifmqbUUtA4ulZLVvMjx9asC6lCDwrpuzXz4WA9jRvaBk6R8dAHKOj14VaMSIbfNEEgkr7nBoTDdCDfvGJ5/D8Dx6MRPyTSDns= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767582121; c=relaxed/simple; bh=TcVcFAzdK1L7oaPmQITMHsIB2Sl5kqTwn25Do+5cAJs=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=GDwP1axNjc042fYwGGFrF6K8pLC6avxrVNZpDpTRG2V2cwumUs1vm7/xxU1nViok82DF3HmCzZGaxfYCOzLxouwgX3Rlrw5/gHmJFdU2oTmDyhEMjEh5k1yfJ5MPjOo9vejQocQpSI0gikU28bV/BUfTVvg6OkjB4KPsVJLuNX4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=JFijDMNR; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Vm2GRN0Y; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="JFijDMNR"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Vm2GRN0Y" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 604NhmkD2863218 for ; Mon, 5 Jan 2026 03:01:58 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= vWwuOViYV8FT9T9UVEeIWCWEZ06Ee7nADDhLsdvaexc=; b=JFijDMNRD9d+nmNv PimnLMZLmbClJ89NbrbRdrXD+a2FX4flrfKJ8lYhCDJIoVB1D+Tijucp6GRQByXX Ip2fIYYZdoVc74pv09fXlwSk+tu8DO11QQRzCTOuG3Q0A64swDD5fE7I/EuJJu88 7KVLt6pYVM2sM2k9R3iwkYNPEbw+XBct31N0oiHlqzJOzZJpDw3gGBAMAZgObZgE L3lfxYQy1XaNA6uXfktjeG3p5QiG/g++8lmAlF3vl57KgQBT2RdY4HDLD3Qh3yWd p8dMlSpw5ZPfUuJ+3+OzG45LE+S0cUjeO73lua9PTwXEnUazdoHlKnwBLeTYjOOY HRAZIQ== Received: from mail-pl1-f200.google.com (mail-pl1-f200.google.com [209.85.214.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4berfnb67e-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 05 Jan 2026 03:01:58 +0000 (GMT) Received: by mail-pl1-f200.google.com with SMTP id d9443c01a7336-2a377e15716so180802875ad.3 for ; Sun, 04 Jan 2026 19:01:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1767582117; x=1768186917; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=vWwuOViYV8FT9T9UVEeIWCWEZ06Ee7nADDhLsdvaexc=; b=Vm2GRN0Y2j8jW4nblEtx+2FOoOEuphDVq3mZHjCMHFxi/1RlzTLmkudYb0IHHHTNVP AqbMojbmK3LXoV4DPN2fVLaMkopxnnjmiheRs7Kog1gNMu3FGQB0KDv9ATLv8drMn9px G/gkqXm55pEFInUgBgu+naWvnLIWPOZ0vEMV1cVLH/0Kjj8kF1a1QLXGlUcJZzQYnEJW 8Aw/KthSLAj2LJGa8ZroUF89e1SeSTaxv/8VTR/qXQF7jMhHVbaFrEtorA3aPcT7EYKJ UFThidk1tQlWCw63Hl+c9SMQ9uxcLgkkT8xeugPLCzNznQXf3ZD4iSbrbFUi4bhYLLhN ryTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767582117; x=1768186917; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=vWwuOViYV8FT9T9UVEeIWCWEZ06Ee7nADDhLsdvaexc=; b=D+QbhnQDD005/onGop0PjM/49aTQnXEdqog2dvKRKIDDfUmxfzCzszeAWXvPyJ1XJo SLPXl1U1WF5coefPRPyTHzni6ATffdfI0/W+U5Wu1vQdtqbzH67C5gVDpFYDVyU4+S5d UOUbYVsWFkAtXbCUNeWxC1JB1e8Hlcl3mExqIZHZingdwh26HlV5biiFrHH4ogjLsTNi TVnvOx93q84VS/lLAEULgXEGtahIBBavxQbhfmNeMZ01f7PmBQAIPv5VdI31xzrfeVu+ 1llGOsrQm3DHWCKP8X36IoRcDAT1eIgTzH+A01qK8BaBMyqqy7c8zE7dLTcMjlxg/RCG i7fg== X-Forwarded-Encrypted: i=1; AJvYcCUs8EGV/HjHiDWR9p49ccvhWoPq01Us1XeUo1Wf/Vw00dHVUjcwqi/DFZvMAhdEe4Lq4IEVxluKJB2wcPo=@vger.kernel.org X-Gm-Message-State: AOJu0YzOy48mmoWrV5sQ7icBhIEyl+0JxE3ptHlTuGJ5NGFKHFEydWHr sIApA4kbeWBCyH/BI4knhMXwJUpg9oNhXvteEkW4aen7068hey0x/uafY4ZarMJETxmT7b+2d9R YuVzQOxbh9tMZtxFn0yyKN6puXzTFXoqxgOQMLCtMnKdAlC1IqeOZWxdQvHfFO/sGFnw= X-Gm-Gg: AY/fxX7OKpSA2sn+7Hr3414W5PVOg9oJS0giIYyIN8Jaa0PNOC4GAS6NjM0lsHCCFh2 QV11i1XyQORZA1Nd9Tjx2QkdNVMJ4XcyF07fCc3VhRY/DNy6ELN6lem4TDRd1STVluXlVHYonjk prV0P2aIrktmCiTl+b6aLYrOMbDEYJBEnFkG5C8J1vziARdmaeBHtI9nF9s2E7cuZeXCaLy0Xiv V0gruaiwSMq2t1hyJnJ+FwlPrGE+lxIDf1rynY1ZELKWs6Plb28x9QQzipaBS0QoRqdXk7VzC4K W8JtZkmKYlHzieykALSyoZWyaYSXENSvl+fuDZ0GZmnNNK4VAUyaesISvIki9uTuePMHgBnJRSX r+uQNK1BP/RV/1mM5kJUnsFPgLzuhJpOxS6/2O3quXVaPoeT+r0rkwzvItg85ROXB X-Received: by 2002:a05:7022:689:b0:119:e569:f620 with SMTP id a92af1059eb24-121722e13ddmr60048742c88.25.1767582117252; Sun, 04 Jan 2026 19:01:57 -0800 (PST) X-Google-Smtp-Source: AGHT+IH9nh6pp98Os8eGY2VprvQnIN6lP8gpiM/Yw3L+8/zskxFXQ3KdzjQxpZraJglP3LQdtaZeYg== X-Received: by 2002:a05:7022:689:b0:119:e569:f620 with SMTP id a92af1059eb24-121722e13ddmr60048710c88.25.1767582116587; Sun, 04 Jan 2026 19:01:56 -0800 (PST) Received: from [10.110.40.60] (i-global254.qualcomm.com. [199.106.103.254]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-1217243bbe3sm174401548c88.0.2026.01.04.19.01.53 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 04 Jan 2026 19:01:56 -0800 (PST) Message-ID: <3a3cd2a6-5372-4a02-a3e4-9d52c7391fb3@oss.qualcomm.com> Date: Mon, 5 Jan 2026 11:01:49 +0800 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v5 1/2] Bluetooth: btqca: move WCN7850 workaround to the caller To: Paul Menzel Cc: Bartosz Golaszewski , Marcel Holtmann , Luiz Augusto von Dentz , linux-arm-msm@vger.kernel.org, linux-bluetooth@vger.kernel.org, linux-kernel@vger.kernel.org, cheng.jiang@oss.qualcomm.com, quic_chezhou@quicinc.com, wei.deng@oss.qualcomm.com, jinwang.li@oss.qualcomm.com, mengshi.wu@oss.qualcomm.com References: <20251231075817.2611848-1-shuai.zhang@oss.qualcomm.com> <20251231075817.2611848-2-shuai.zhang@oss.qualcomm.com> Content-Language: en-US From: Shuai Zhang In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Proofpoint-GUID: -glCRtq7q4m0wOe6QDAb8y0gTTfJqi2f X-Proofpoint-ORIG-GUID: -glCRtq7q4m0wOe6QDAb8y0gTTfJqi2f X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTA1MDAyNiBTYWx0ZWRfX6+a+F7gyk1el PtM3+nCwcoRCDKup5+NPpBJVrIaPLRg/up6oSPj8ut/Uk2YoJ3NLqlq36F8Q79B3Hiwftuc1Fc+ H3L2fdcIvBPhHfhNIPXLT+zqzZtuWwz/xGP3Xch4gf+n+s54eOI5GtG63dzcRBsjU3yFsk51Kjw 34b/uMCkcMff22IITF3ARwBrzitBHoMxEXc55/zCsNg8+m5wWd7zUF6VQQ+1ww390CF9Heuxo8p +Q8gnQHNaG8gDR/yvYp26H7RbjmcC1DCTI8nUc6dusmL7U8xcRivtVJWpCprGEqU8SGvzuleIc+ px73zscFagGR8l2WqraooPwx2vYrAetXByYywzhcV3Ou248TPOv0A2/VBp9h/dRV6VouAqvF3zT wBFMcG05wuJsjIMZrM87rla/zc/HLBHvU+kmRJKTtTfwI077zi9R/Sior5YcCvp8PUu7eHU3lf0 KcM52+DjiUSNmYQ8PWw== X-Authority-Analysis: v=2.4 cv=GNkF0+NK c=1 sm=1 tr=0 ts=695b29a6 cx=c_pps a=IZJwPbhc+fLeJZngyXXI0A==:117 a=JYp8KDb2vCoCEuGobkYCKw==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=pRLi8byjjBT-p1ZUwX8A:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=uG9DUKGECoFWVXl0Dc02:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-04_07,2025-12-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 adultscore=0 malwarescore=0 clxscore=1015 lowpriorityscore=0 phishscore=0 priorityscore=1501 impostorscore=0 bulkscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601050026 Hi Paul On 12/31/2025 4:38 PM, Paul Menzel wrote: > Dear Shuai, > > > Thank you for the patch. > > Am 31.12.25 um 13:58 schrieb Shuai Zhang: >> To code uniformity, move WCN7850 workaround to the caller. > > Please elaborate, and detail what WCN7850 workaround. > I will update. >> Signed-off-by: Shuai Zhang >> --- >>   drivers/bluetooth/btqca.c | 41 +++++++++++++++++++-------------------- >>   1 file changed, 20 insertions(+), 21 deletions(-) >> >> diff --git a/drivers/bluetooth/btqca.c b/drivers/bluetooth/btqca.c >> index 7c958d606..b4c0a018d 100644 >> --- a/drivers/bluetooth/btqca.c >> +++ b/drivers/bluetooth/btqca.c >> @@ -581,28 +581,11 @@ static int qca_download_firmware(struct hci_dev >> *hdev, >>         ret = request_firmware(&fw, config->fwname, &hdev->dev); >>       if (ret) { >> -        /* For WCN6750, if mbn file is not present then check for >> -         * tlv file. >> -         */ >> -        if (soc_type == QCA_WCN6750 && config->type == >> ELF_TYPE_PATCH) { > > The `config->type == ELF_TYPE_PATCH` wasn’t moved, and it’s not > visible from the diff, why. Please explain in the commit message. If it is WCN7850, config.type is already set to ELF_TYPE_PATCH when downloading the rampatch file. Therefore, if (config.type == ELF_TYPE_PATCH) will always evaluate to true. > >> -            bt_dev_dbg(hdev, "QCA Failed to request file: %s (%d)", >> -                   config->fwname, ret); >> -            config->type = TLV_TYPE_PATCH; >> -            snprintf(config->fwname, sizeof(config->fwname), >> -                 "qca/msbtfw%02x.tlv", rom_ver); >> -            bt_dev_info(hdev, "QCA Downloading %s", config->fwname); >> -            ret = request_firmware(&fw, config->fwname, &hdev->dev); >> -            if (ret) { >> -                bt_dev_err(hdev, "QCA Failed to request file: %s (%d)", >> -                       config->fwname, ret); >> -                return ret; >> -            } >> -        } >>           /* If the board-specific file is missing, try loading the >> default >>            * one, unless that was attempted already. >>            */ >> -        else if (config->type == TLV_TYPE_NVM && >> -             qca_get_alt_nvm_file(config->fwname, >> sizeof(config->fwname))) { >> +        if (config->type == TLV_TYPE_NVM && >> +            qca_get_alt_nvm_file(config->fwname, >> sizeof(config->fwname))) { >>               bt_dev_info(hdev, "QCA Downloading %s", config->fwname); >>               ret = request_firmware(&fw, config->fwname, &hdev->dev); >>               if (ret) { >> @@ -862,8 +845,24 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t >> baudrate, >>         err = qca_download_firmware(hdev, &config, soc_type, rom_ver); >>       if (err < 0) { >> -        bt_dev_err(hdev, "QCA Failed to download patch (%d)", err); >> -        return err; >> +        /* For WCN6750, if mbn file is not present then check for >> +         * tlv file. >> +         */ >> +        if (soc_type == QCA_WCN6750) { >> +            bt_dev_dbg(hdev, "QCA Failed to request file: %s (%d)", >> +                   config.fwname, err); >> +            config.type = TLV_TYPE_PATCH; >> +            snprintf(config.fwname, sizeof(config.fwname), >> +                 "qca/msbtfw%02x.tlv", rom_ver); >> +            bt_dev_info(hdev, "QCA Downloading %s", config.fwname); >> +            err = qca_download_firmware(hdev, &config, soc_type, >> rom_ver); >> +        } >> + >> +        if (err) { >> +            bt_dev_err(hdev, "QCA Failed to request file: %s (%d)", >> +                   config.fwname, err); >> +            return err; >> +        } >>       } >>         /* Give the controller some time to get ready to receive the >> NVM */ > > > Kind regards, > > Paul Kind regards, Shuai >