From patchwork Fri Feb 7 20:41:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 863044 Received: from mail-lj1-f171.google.com (mail-lj1-f171.google.com [209.85.208.171]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7D97F1AA1D9 for ; Fri, 7 Feb 2025 20:41:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.171 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960887; cv=none; b=b9L++TvdCxd0uC5p5nTCvrMQr/Sq1PVD34dK7tYaRWQZ8sQBKVmAkJilEe7FGQTZZr07gDj0dAg4T4Y9eEMfHMrhwvc3jTOMHkes65SOXKTa14b6EBWI4czA5fosyYvVwyluSWoNT38hKtjb3aYM4W4prn66clxKPgaPweqVqAw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960887; c=relaxed/simple; bh=s14YKYID9PJaE3calGZbF8LnlKIvHymDbj6L+7VVrMI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=gpNkAAjM374qNRPBW9lyV03TfIcuPp+66apKkZJ1onNtb5vwKHV4qQwiuUKGPOyD6Z+7JNS4PEUS4JyrFyA42vd8dfTKVOl0azOnn4FzMXR6MZSzBjAzxz0Sk1xQ/9bomjYjDlLkopGkar54vA5YOrITDeK92n8oxaklZXSsSOI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=WzDKg+oS; arc=none smtp.client-ip=209.85.208.171 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="WzDKg+oS" Received: by mail-lj1-f171.google.com with SMTP id 38308e7fff4ca-30738a717ffso22877361fa.0 for ; Fri, 07 Feb 2025 12:41:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738960884; x=1739565684; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=HSlGgKqz38+k78ygp0mcUEOzYQKAs3hlnKXdF+3RtWk=; b=WzDKg+oSTLe1MMSevZxVsh0JQRZ/ZbAhdwMQliFqLf+J6DNgbJ4iwZTGULujH/R2tm yZrcgz/mnLQGm1n+2vVGPMC1eMTPcNogO/AQvjL2ZMlQXM1r65JaiylApApsajiu0GZT QTZAJM0AwfH/kdI1DYZXl4oDd6uet9eTibIpOIzqnOOYcsdfFrqYAUaVYY2DvOO+9gyi Nnb/V6pzzA4XdO4PvIx4vl3dKZPFWbdIZcMGjWG2Iay/jqr1oeVygFP+2yho6Tupjou8 NTDUWkpPPzfe3BZPwjV/UisuKrAROl+F5LDXIxTm4ANqfXgKnJBtgHMWWAhClXhznLBX M/rQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738960884; x=1739565684; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HSlGgKqz38+k78ygp0mcUEOzYQKAs3hlnKXdF+3RtWk=; b=S0aKd5RAn8Cokzb8bEZFa+yWjMpSYK8INOa7hp++NvIsniF2cg8+V9EFpCG7GLoLqF arG7QjDqEGmC/lsePmKRUEdXIBBr+w39F5oFS6mx7AZKvPgMe246Qu6QX4C5jE2Du1re 9p4v3Qy72IO1vOwgCwqy1nK5vD9P3ZRI6vTO0fI4045ejyvCLOXPV+75mcNxMMSDxFW0 yhkTJOjWpZl4ocQ0a14wKmHRsOHK71PkI5FlMgYxb3sYu/8s9wgfOjqFQ6pi63ngvheH 2pMki14IGfSGpWQwgxsmu8Yzq0TLZvyuiEXbAzsha5YT0/KeJBuW7X4hZ6byPneKmdqc SOLg== X-Forwarded-Encrypted: i=1; AJvYcCV9eIqBCMVstRZQwvXSk9Xyi9bgsGEHY5uEzUBj0pxiCMzMfj0yi7ebmfFsNBmxCCabxZH6OgqFiPmefkZt@vger.kernel.org X-Gm-Message-State: AOJu0YyoJ/KBNsp9ef4O+TOi0rtBc49dLzMDonXOGtZ6EfeL2rhmxSQy O1qTjEv60WeTD+YhcX2J1KslbzyGNeuoW0hPrJHbQ8mdRoi+1HDxwV3NGqQXQ/E= X-Gm-Gg: ASbGnct2Z4EgAaymmWYRLsOmp4X43YvWUIQU7YqKYKIQw2DZ/SQwdyiULHYOyD0jVIG fixPjrLSqW3jpqNxWyvNl1nXP+97ZKUnn3MRSmN2TwHZn7oZBVrU07m6B34GA+Fn0V7/hytohX/ g36gA8gieogC78qc0O5h825Bp0RB29k9sZCA9NAHOTBR2JJkSk0Q/djdCL8gWZYVMuecRdZE8h9 V1bsp1RztbHTgObmnDSCEzWMI8WjsmvLlytEs4UkD+LSsVtstq5GrC+SAwHEewGaz8z2CJVNPng co3vcO0o+BW8L4Razn3CD3E= X-Google-Smtp-Source: AGHT+IHngABXa0RfWQvCOT+hZ5/tEP4wpFl7H3wFVT0JpPMz/eOAilEh8xFb5Y4ccK82JrxnO8CDlg== X-Received: by 2002:a2e:bccb:0:b0:306:1524:20e with SMTP id 38308e7fff4ca-307e581946dmr20024521fa.18.1738960883630; Fri, 07 Feb 2025 12:41:23 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-307de178628sm5343811fa.10.2025.02.07.12.41.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Feb 2025 12:41:22 -0800 (PST) From: Dmitry Baryshkov Date: Fri, 07 Feb 2025 22:41:15 +0200 Subject: [PATCH v4 1/6] dt-bindings: net: bluetooth: qualcomm: document WCN3950 Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250207-rb1-bt-v4-1-d810fc8c94a9@linaro.org> References: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> In-Reply-To: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> To: Marcel Holtmann , Luiz Augusto von Dentz , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Balakrishna Godavarthi , Rocky Liao , Bjorn Andersson , Konrad Dybcio Cc: linux-bluetooth@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Krzysztof Kozlowski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1268; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=s14YKYID9PJaE3calGZbF8LnlKIvHymDbj6L+7VVrMI=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnpm/ti0opbMT8jZ+Ob3h/ZXQZ/AbPR399emf52 uE20q302/yJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ6Zv7QAKCRCLPIo+Aiko 1eGLB/9AaRKZTGVR5ln9tpeVIDGYjwzGp30+jHbKD8kNkknwOhjF/cwIoBbV3MIdBLKkPE8aAD4 1P2AKiseT9gDvt/7CTosS4h9ZOx8VvvuBDZRXJfKv7FxtXXiLQr1BPvCg9jbeguSGVhqvtRlPKJ 2y/fS6uc8pg8dxpCCp/eMMx8CDIBov7IdNWkF3GLs10tWH7yVmB1xs4VQTqD7108U6L7Vbt1ys1 GWQR8bSkdzA/VLv3xJueUDqCGSX6Z6bX2/dqdUIFbebtT55N+qnGUViIymzy3eEzXXHnAlrAtBX 8R8Puv20Zs2+zIvMcQn0lH3tH6qe2BnZTBZ1tAQrRA+PQoEV X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A WCN3950 is another member of the WiFi/BT WCN39xx family of the chips. It requires different firmware, so document it as a new compat string. Reviewed-by: Krzysztof Kozlowski Signed-off-by: Dmitry Baryshkov --- Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml b/Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml index a72152f7e29b490003114dae1e36df85cba384df..6353a336f382e4dd689d1f50a624079aa83b2ffa 100644 --- a/Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml +++ b/Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml @@ -19,6 +19,7 @@ properties: - qcom,qca2066-bt - qcom,qca6174-bt - qcom,qca9377-bt + - qcom,wcn3950-bt - qcom,wcn3988-bt - qcom,wcn3990-bt - qcom,wcn3991-bt @@ -138,6 +139,7 @@ allOf: compatible: contains: enum: + - qcom,wcn3950-bt - qcom,wcn3988-bt - qcom,wcn3990-bt - qcom,wcn3991-bt From patchwork Fri Feb 7 20:41:16 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 863337 Received: from mail-lj1-f181.google.com (mail-lj1-f181.google.com [209.85.208.181]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B8B2D1B2182 for ; Fri, 7 Feb 2025 20:41:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.181 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960889; cv=none; b=P94nIfBIrrTvLmjz3fG38DrIWE91lisyPUcT86Ls4SYZCgizDU3yzUXwivz/Tu2Cv4WLe+Rzgw+3gCA9Ldqqqh0lMOQYFAOcwQXsV2IEsg5kCtgA55GvpmG4RBUWSYsS16hENwIOhEEXjeR2uPd7eCLo8mDznGXUNxs3P4jfQjY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960889; c=relaxed/simple; bh=XL7ng8U88IdS02LpqkHkwAED27Q7ZWUI6j1I8zn2UOs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=RNMeWFl/YniNJroEoVCM24pwE577HnkZuCBbAghQX5LE1E3l+DmBXXuCOPrlGMZlKfNFOFGSuJZyHZMZMKCEeXwOAKggCbccQAIgVWOCmKrC3EO31xRE9DvwkyX76/GCQ+22O5C9KFEzNuH2Y/oCisJxpUtRXNb+u5e9feVBd3U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=d4XS0pQS; arc=none smtp.client-ip=209.85.208.181 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="d4XS0pQS" Received: by mail-lj1-f181.google.com with SMTP id 38308e7fff4ca-30227c56b11so25973041fa.3 for ; Fri, 07 Feb 2025 12:41:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738960886; x=1739565686; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=0uDfHhxafnqOPaFWheOWVq1hqVSH+SO7a7CETbeXIaY=; b=d4XS0pQSQOVbWw+0OUFGpQe5k7aWUuvwgIqxk+3dclpyH9J3KD6bTfNuaG3xBE3a2y JUHP/7esVvfygbaQPZxAOusPcoieHOCnDArnnar6ucfknzaRbCTsKdopv7y1Xj595wHz vYARRZ7VBIxkvWEiQgWmrPMUhS6AaWVSC2AP9E7dW24rFst+9SCy7EhPtJ/+xEjDcMoO l0eY0MprFGVAhsAzxOJ4+N4c1qvy7liEmscNMfbVNn6arIUS9Swe6zwQpOGgXIJoaVr7 vc8q4TgmhYgCRi4mZVxssjgEZr5Eux2SoW6VqYVod0jPdPwWLTito0FW4XXrHdNx3vte KBMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738960886; x=1739565686; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0uDfHhxafnqOPaFWheOWVq1hqVSH+SO7a7CETbeXIaY=; b=dntRDeuH3pksh1NxGpAEgN8r8yhYRn2jT9AiheXbUZ6X7rqT1yx88gcIZNMKtN4Hoi /gu9ALZW58MBeXXTdNRGTcKI6zfq+OBOBGkvDnjEbDjNaZhP7MiZuTC+rcCuk3u/vDuq eEdhcpr3tH/x3GuuwXaDfgqvhtY5Zx/Tuka1IA/PJUAlqbqlZvrGLIKCgDWiNF8q5j2s 6NBgYcds1JiwahNtwhjxGge5PYN0netOpv2sEOn2YCHe/jWMpGmc3rWOTlcl0xNU4djY 6mse1ElpRTLwyEVEt9zuHnEnRda6UYHSMG1v5bi2XER53HbO58YPqsUzmOCimydWPaM8 scJQ== X-Forwarded-Encrypted: i=1; AJvYcCXiVC0eW6sVAIux9SgdaGLawwjJeb8hF3DlvrVNyq7odXaNsafNjqVsuo3EGy8xFrEPVvvKtxpEP+RHJMOJ@vger.kernel.org X-Gm-Message-State: AOJu0YxkAUDbopoQYyJVRuo0Cc3c3/000xSkVVhC5vMG77fIVg5x/7ji G+W2K/+lodeqxlVzRfXwNX8E1rtdB5w/bEJODc8gzRCta3R53L3hyH6wpRmdf2w= X-Gm-Gg: ASbGnctKvbKwYnpAj+5qWhUD32yCANeDUGPsoioiai/Co3e9s+KPYO6znEQ311GxHrW F2xLQx21z7iAvAWBcn5d3u5oBbO1mXVCdKjqd3elFAnBOUx5QkeV8G8HGuycMug0HI8xYbQLGzB w+FG1knolgwQDYraFMT9L90hzel16UymQeFVOYAg3lY7h53FRoxLkrdOQQUpsdqve/EltENN8zL o8YMeZHaSQePKgDy9h/9pAl91yPQ6emkIOZqmTXxjJBbuAiSq9WVeR2dvJ8T6vfw8VjaaHHVCXX /QhlTnITW6qRRa2U6JqW9WM= X-Google-Smtp-Source: AGHT+IGtmlenPKj9LmASZRzoEdDvspUQmr0gkUf8MuzFWT3Zd9xILG1u2wmFj5LYB1kI0k75o0Hs3A== X-Received: by 2002:a2e:7d1a:0:b0:306:1302:8c7a with SMTP id 38308e7fff4ca-307e5a8de31mr12160461fa.36.1738960885956; Fri, 07 Feb 2025 12:41:25 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-307de178628sm5343811fa.10.2025.02.07.12.41.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Feb 2025 12:41:24 -0800 (PST) From: Dmitry Baryshkov Date: Fri, 07 Feb 2025 22:41:16 +0200 Subject: [PATCH v4 2/6] Bluetooth: qca: simplify WCN399x NVM loading Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250207-rb1-bt-v4-2-d810fc8c94a9@linaro.org> References: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> In-Reply-To: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> To: Marcel Holtmann , Luiz Augusto von Dentz , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Balakrishna Godavarthi , Rocky Liao , Bjorn Andersson , Konrad Dybcio Cc: linux-bluetooth@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1590; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=XL7ng8U88IdS02LpqkHkwAED27Q7ZWUI6j1I8zn2UOs=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnpm/u5muoe3WwA41QWOGX33TQrFVTMesUiPrQ/ 9pnIvcxGl6JATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ6Zv7gAKCRCLPIo+Aiko 1dwNCACV+YYSREIUcBJrFra5aFyY76q3gLdPuk6s/5St8iZfxf3G5YLyCuDF4Ft4t4x/KlxZr9o rx85D9wg1EtUZTtqSYUkty900t2wUt5/jqsZ29LWTuvEPjHNYXx5Fxw+b2/PwC2gPNhLjWsM+LA XtlyLGXBH0eGlfSx/vKycONM06vPY4qImK5bt6x8qFMmvXLqQ3y7++Lt0H4rE79TrSvdY1XuYsd aMJzzVzQMf6NVzPTiycEqafs2mv6KlO2bUvWny0wfRctl0B4G3cxE5HeJJ45105BTKbWJrocosj KoILNJI8aj+AvbzAyIqQnvmiK/AKfFShcGr8DpavtFuV7gha X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A The WCN399x code has two separate cases for loading the NVM data. In preparation to adding support for WCN3950, which also requires similar quirk, split the "variant" to be specified explicitly and merge two snprintfs into a single one. Signed-off-by: Dmitry Baryshkov --- drivers/bluetooth/btqca.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/drivers/bluetooth/btqca.c b/drivers/bluetooth/btqca.c index cdf09d9a9ad27c080f27c5fe8d61d76085e1fd2c..7d6b02fe2040ff16d9d62de683571e1e1900fe85 100644 --- a/drivers/bluetooth/btqca.c +++ b/drivers/bluetooth/btqca.c @@ -785,6 +785,7 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate, const char *firmware_name, const char *rampatch_name) { struct qca_fw_config config = {}; + const char *variant = ""; int err; u8 rom_ver = 0; u32 soc_ver; @@ -883,13 +884,11 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate, case QCA_WCN3990: case QCA_WCN3991: case QCA_WCN3998: - if (le32_to_cpu(ver.soc_id) == QCA_WCN3991_SOC_ID) { - snprintf(config.fwname, sizeof(config.fwname), - "qca/crnv%02xu.bin", rom_ver); - } else { - snprintf(config.fwname, sizeof(config.fwname), - "qca/crnv%02x.bin", rom_ver); - } + if (le32_to_cpu(ver.soc_id) == QCA_WCN3991_SOC_ID) + variant = "u"; + + snprintf(config.fwname, sizeof(config.fwname), + "qca/crnv%02x%s.bin", rom_ver, variant); break; case QCA_WCN3988: snprintf(config.fwname, sizeof(config.fwname), From patchwork Fri Feb 7 20:41:17 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 863043 Received: from mail-lj1-f172.google.com (mail-lj1-f172.google.com [209.85.208.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3A7BB1BBBF7 for ; Fri, 7 Feb 2025 20:41:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.172 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960892; cv=none; b=OUVIlx1WAZiqiv7pNYx3xXdF/3vVwtpl2EvgAs0/K8iYeJJdg6fki7KEXkJiLQOSfPsYGrSbTMNiGHPADqB+B4qd/0zF5hiqqbeRA/DWiBITVjbc5Zd9KXHvixuR0EZ3yPxd8pH3csSJe1kfvEQZPFE8VZACWozUFT/uBzf7AOA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960892; c=relaxed/simple; bh=4YP5ILDAhWLFOzXAyWykx1y2KrD6Q7IeV+E11CzXC4w=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=AS1iYmJoomTlphQvKENPEd+CQzRfRYTmID+cqqO4uTsCwn/v5nh0WC9RDUCgFJxP8gFViP0mW1M3WfQUjJ90dA66xx9MXxPigDRHAK6586yTSVkcx/2aDRjirzLiKCZM6lnN76A3ZyhnaSKBZYX8ek7VOcvJieHVYGzi5ql4M3k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=JaGm9Krs; arc=none smtp.client-ip=209.85.208.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="JaGm9Krs" Received: by mail-lj1-f172.google.com with SMTP id 38308e7fff4ca-30615661f98so26571271fa.2 for ; Fri, 07 Feb 2025 12:41:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738960888; x=1739565688; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ckV+zDmxUPxFXOUa/QFr85H3OeY0Ep07vfj0NguxjGY=; b=JaGm9KrsyXxH+w5GHqlVwvq1IC2IVbzTtAEi/5201A9c5oXUSpf0/NBa59fvXTpNoG vnNbGiTo/Lq/rWOzXq98HMISSpEJHfI5KM7RQLaJWOekSELw06SM3vcqh99fBTMjTgps SoUxPsPpUv5gRkFC+a4LHSM7MOwkUrle4WlolBTIO/XJu+kOhW/o2UnvTmBjNKOLZ44u c4vhoSTiC5RVQdPTaLGmBH8sPoNWVK6EefZKHe5b/sOmeje2pK3IhfsLgvT4p2ry5/wY wsdCgz3+AvjEGhaoFhInr9X7X8BlsNeMpsgb7Z8+WjK2/U2hWgMjdBTeRRtfz/iruAv1 gDgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738960888; x=1739565688; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ckV+zDmxUPxFXOUa/QFr85H3OeY0Ep07vfj0NguxjGY=; b=CXVu/NsUTLQXL2lEO+2636S23mRFgiLKFkLncuaYgv2weQmN5HoYKsx/QP3jY5w8Cw FkJfBI2xTOq5ndNVjxHHPAiepOJdBITJrH3hLcprx55FpPXE4G6DDccpY+fn+bv73qH7 mxb6nBUJ6MCdn3fZ5+4NBzqWjG0ha+2R5IRzn8IFC2VLNeA8NV1p9kBfLVoDf1RHHbRQ mpTtaIgdfyClWMx/d7DEj9u3f1mCl146HB6FJExh4qX45w85giGTWDwfysXac50fTaP+ 1limwv5CvmAh+ccKXUW0varCS2gKuHTMML8F1ADF9Jsi8GzfxPOAS0Zt1BUEfGFvrryd Wv7w== X-Forwarded-Encrypted: i=1; AJvYcCVCHQZPj/zViZe6JVLuFJgcTFSsxXoh1KDf2ceZ+vytFMgDocP3GvdOEvtjXo7qrfwK4bWjNzbATLi9kviR@vger.kernel.org X-Gm-Message-State: AOJu0YzyoYauTulF9NxmZ/YTTYFgMUJu1RKt/ipJ3fveZ5nQRMlprBZd ypPhmLDN8vHxnx6tAo3Lh42qdYGGYy1gz4TaItOUQKAOlYkLwdayN76TtgJdekU= X-Gm-Gg: ASbGncuJWX1lFXHAMzcZxvz4ao0PZTNq8CiJLfYDfBkkrkfST0XKJ9oLKk3+qH3+OE+ pzr1IXKCSNq9YxikBwhIpShwjc+dy50vPov0ihQ2nQWg4C6OSvdoqHtWM556mvBfTetgho1S8Wn OtJxKJl3nczrRObSWufJhPBVe0Rtv8XM0Z6DiYyRtl8cM7z1x3uwDmZHAcqISkwwRv2uMhhX0MF jcRffqmbWahybpEM2h5XPpxHHYm/ztAL3iiDOlQCyJh56wjmEVPu5OvgwSAN9PEQtT2kEde4I0l uWupkpd/PDRmZQGAz8IQm3A= X-Google-Smtp-Source: AGHT+IHAF171jwGreoAfCS+qIAXuUNgCF0vCCbR8Ca2fWtNNaE2jDVet0J8Ww4xEbrPz9K5hZ2BfVw== X-Received: by 2002:a2e:a98e:0:b0:302:17e7:e176 with SMTP id 38308e7fff4ca-307e57be353mr13604501fa.5.1738960888388; Fri, 07 Feb 2025 12:41:28 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-307de178628sm5343811fa.10.2025.02.07.12.41.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Feb 2025 12:41:27 -0800 (PST) From: Dmitry Baryshkov Date: Fri, 07 Feb 2025 22:41:17 +0200 Subject: [PATCH v4 3/6] Bluetooth: qca: add WCN3950 support Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250207-rb1-bt-v4-3-d810fc8c94a9@linaro.org> References: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> In-Reply-To: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> To: Marcel Holtmann , Luiz Augusto von Dentz , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Balakrishna Godavarthi , Rocky Liao , Bjorn Andersson , Konrad Dybcio Cc: linux-bluetooth@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=6877; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=4YP5ILDAhWLFOzXAyWykx1y2KrD6Q7IeV+E11CzXC4w=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnpm/uWi6QsFuEkb18jSOyduZrhX9EB00S/e0By yxcT+3Wh5CJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ6Zv7gAKCRCLPIo+Aiko 1ekACACt4s5dnfutKVpPRti/nIUchrWcJGS3N34hhKnAdfhS6ZI1vDwjL3Ej1S27HQuFCvmurKQ uvGPYh3cYu8XSq7DHm0f8ei9JiWTL2isrW7rKdn5/3rpsQ/1VeUvkiHMqcAJFSCCkKfR7yi5SyE CHHK8K2BzNYtJds0w/ntXEt7wtq4p9kQrXB1AWW/1rDhBR2hPQC7BlmLdHwKwCmVSe4RXemMXvG lU4gK42mIDL+56yOqjzyS/95qRCxBgqVyYG+SJF3sNhJVaM8Qnim941wyJvnLrjOrHsHU20nYVL IEVoMnizAuNguKThkm5CIjHNHiXM3uTQKSCJTbwtGc0J/P4T X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A WCN3950 is another example of the WCN39xx BT/WiFI family of chips. It requires different firmware files and has different current requirements, so add it as a separate SoC type. The firmware for these chips has been recently added to the linux-firmware repository and will be a part of the upcoming release: - qca/cmbtfw12.tlv - qca/cmbtfw13.tlv - qca/cmnv12.bin - qca/cmnv13.bin - qca/cmnv13s.bin - qca/cmnv13t.bin Signed-off-by: Dmitry Baryshkov --- drivers/bluetooth/btqca.c | 14 ++++++++++++++ drivers/bluetooth/btqca.h | 4 ++++ drivers/bluetooth/hci_qca.c | 25 +++++++++++++++++++++++++ 3 files changed, 43 insertions(+) diff --git a/drivers/bluetooth/btqca.c b/drivers/bluetooth/btqca.c index 7d6b02fe2040ff16d9d62de683571e1e1900fe85..3d6778b95e0058beda3f0500b21caaef8e797d32 100644 --- a/drivers/bluetooth/btqca.c +++ b/drivers/bluetooth/btqca.c @@ -816,6 +816,10 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate, snprintf(config.fwname, sizeof(config.fwname), "qca/%s", rampatch_name); } else { switch (soc_type) { + case QCA_WCN3950: + snprintf(config.fwname, sizeof(config.fwname), + "qca/cmbtfw%02x.tlv", rom_ver); + break; case QCA_WCN3990: case QCA_WCN3991: case QCA_WCN3998: @@ -881,6 +885,15 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate, } } else { switch (soc_type) { + case QCA_WCN3950: + if (le32_to_cpu(ver.soc_id) == QCA_WCN3950_SOC_ID_T) + variant = "t"; + else if (le32_to_cpu(ver.soc_id) == QCA_WCN3950_SOC_ID_S) + variant = "u"; + + snprintf(config.fwname, sizeof(config.fwname), + "qca/cmnv%02x%s.bin", rom_ver, variant); + break; case QCA_WCN3990: case QCA_WCN3991: case QCA_WCN3998: @@ -947,6 +960,7 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate, * VsMsftOpCode. */ switch (soc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: diff --git a/drivers/bluetooth/btqca.h b/drivers/bluetooth/btqca.h index 9d28c88002257bae31249457b98a5df1df26efe4..8f3c1b1c77b3de8e7c86578aa3af17aefe99dab3 100644 --- a/drivers/bluetooth/btqca.h +++ b/drivers/bluetooth/btqca.h @@ -41,6 +41,9 @@ #define QCA_WCN3991_SOC_ID 0x40014320 +#define QCA_WCN3950_SOC_ID_T 0x40074130 +#define QCA_WCN3950_SOC_ID_S 0x40075130 + /* QCA chipset version can be decided by patch and SoC * version, combination with upper 2 bytes from SoC * and lower 2 bytes from patch will be used. @@ -145,6 +148,7 @@ enum qca_btsoc_type { QCA_INVALID = -1, QCA_AR3002, QCA_ROME, + QCA_WCN3950, QCA_WCN3988, QCA_WCN3990, QCA_WCN3998, diff --git a/drivers/bluetooth/hci_qca.c b/drivers/bluetooth/hci_qca.c index 0ac2168f1dc4f8ae2f7a3b2912e7f5b5b8115cac..b39889ce0e8ff9d97f72eb8e70cb9c6825984c82 100644 --- a/drivers/bluetooth/hci_qca.c +++ b/drivers/bluetooth/hci_qca.c @@ -623,6 +623,7 @@ static int qca_open(struct hci_uart *hu) qcadev = serdev_device_get_drvdata(hu->serdev); switch (qcadev->btsoc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1366,6 +1367,7 @@ static int qca_set_baudrate(struct hci_dev *hdev, uint8_t baudrate) /* Give the controller time to process the request */ switch (qca_soc_type(hu)) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1452,6 +1454,7 @@ static unsigned int qca_get_speed(struct hci_uart *hu, static int qca_check_speeds(struct hci_uart *hu) { switch (qca_soc_type(hu)) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1494,6 +1497,7 @@ static int qca_set_speed(struct hci_uart *hu, enum qca_speed_type speed_type) * changing the baudrate of chip and host. */ switch (soc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1528,6 +1532,7 @@ static int qca_set_speed(struct hci_uart *hu, enum qca_speed_type speed_type) error: switch (soc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1746,6 +1751,7 @@ static int qca_regulator_init(struct hci_uart *hu) } switch (soc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1776,6 +1782,7 @@ static int qca_regulator_init(struct hci_uart *hu) qca_set_speed(hu, QCA_INIT_SPEED); switch (soc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1807,6 +1814,7 @@ static int qca_power_on(struct hci_dev *hdev) return 0; switch (soc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1891,6 +1899,7 @@ static int qca_setup(struct hci_uart *hu) soc_name = "qca2066"; break; + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1925,6 +1934,7 @@ static int qca_setup(struct hci_uart *hu) clear_bit(QCA_SSR_TRIGGERED, &qca->flags); switch (soc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -1958,6 +1968,7 @@ static int qca_setup(struct hci_uart *hu) } switch (soc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -2046,6 +2057,17 @@ static const struct hci_uart_proto qca_proto = { .dequeue = qca_dequeue, }; +static const struct qca_device_data qca_soc_data_wcn3950 __maybe_unused = { + .soc_type = QCA_WCN3950, + .vregs = (struct qca_vreg []) { + { "vddio", 15000 }, + { "vddxo", 60000 }, + { "vddrf", 155000 }, + { "vddch0", 585000 }, + }, + .num_vregs = 4, +}; + static const struct qca_device_data qca_soc_data_wcn3988 __maybe_unused = { .soc_type = QCA_WCN3988, .vregs = (struct qca_vreg []) { @@ -2338,6 +2360,7 @@ static int qca_serdev_probe(struct serdev_device *serdev) qcadev->btsoc_type = QCA_ROME; switch (qcadev->btsoc_type) { + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -2374,6 +2397,7 @@ static int qca_serdev_probe(struct serdev_device *serdev) break; } fallthrough; + case QCA_WCN3950: case QCA_WCN3988: case QCA_WCN3990: case QCA_WCN3991: @@ -2683,6 +2707,7 @@ static const struct of_device_id qca_bluetooth_of_match[] = { { .compatible = "qcom,qca6174-bt" }, { .compatible = "qcom,qca6390-bt", .data = &qca_soc_data_qca6390}, { .compatible = "qcom,qca9377-bt" }, + { .compatible = "qcom,wcn3950-bt", .data = &qca_soc_data_wcn3950}, { .compatible = "qcom,wcn3988-bt", .data = &qca_soc_data_wcn3988}, { .compatible = "qcom,wcn3990-bt", .data = &qca_soc_data_wcn3990}, { .compatible = "qcom,wcn3991-bt", .data = &qca_soc_data_wcn3991}, From patchwork Fri Feb 7 20:41:18 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 863336 Received: from mail-lj1-f173.google.com (mail-lj1-f173.google.com [209.85.208.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D00201C68A6 for ; Fri, 7 Feb 2025 20:41:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960893; cv=none; b=i4qoO60jCazZRk3iWPNT/j1op8/XBKVo75gJmiTf2kUzoILNhTfIMTNyc1p5cMHIybTtCLktqk6AlvFfAc4YVS6aA2r/p0MV4JG/th6qWQLEnxCHqmdAZJYWGstjUhCsywHoE++xrPXl4EXzbhi5EMKwh1wOVgwImPbW/4XyHNE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960893; c=relaxed/simple; bh=NUqFnkgEJyd8qAOCcBnUZHRsatlfc9uvOXSSW/6REWM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=B2KtbS2pVykRGPQx2vYMHL8OE1jkmjh9wXia/7yCtsmRFw+reNq449XO94AHEUR9B/rdZ3MGO7XVcoHqmlLLP4EPWLuVfYzR1tT5n9wTVf1z3y3v0vzY5BF9oZnY2bgMbm76o9Ov6OhpycLJNcZfIaG9YQxwZ0MJA24GsNnZhEM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=doKA+8Re; arc=none smtp.client-ip=209.85.208.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="doKA+8Re" Received: by mail-lj1-f173.google.com with SMTP id 38308e7fff4ca-307c13298eeso27953071fa.0 for ; Fri, 07 Feb 2025 12:41:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738960890; x=1739565690; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=7gl6uIUQ+SRtnNn0YmoDk4IwVwtpgN9AtLN/o2kDYZk=; b=doKA+8RejbgZddNHJpiLMAcTauJX3Y07F9RRgT+zn4Fi3+9UU3sf3ky08UpVxudGoC BviKYE88Tp2BnT7pqFYC686AS0A6A1FQF12X+uaZeHLpBy/nR6U4k30oFVU9ay4Buh6s 3KQp+M1ITsn2HZrVcfr4YjTrvU/U4qGfN9GDdQUG037sEc8uDNQOr7Puy+xCnsjSFq8L vxinYc+nkjYev0GfBM1wZtDlkA37FG3mU6g/GROCV+XXsHorb4hqghYBHhRahCQciaNg 7Tr8KfJTdKmQN0acwyhLsyYIZoRZ9DxxDS9IVFI+82uEGkLfHfpV4suZE/ep35chQkND jS6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738960890; x=1739565690; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7gl6uIUQ+SRtnNn0YmoDk4IwVwtpgN9AtLN/o2kDYZk=; b=l/hfCyIj8TE7FR6qoMhiKuVOu3EFv0X3cl9Byvslc97ri/qZrYpvE9sqG7kWvIlciq qvAqEMUeM9VDpwg5wf/qX/cA9VPTlX+IVa6aPh6yeBiHoUfhUoD5mlPx/ahGy54nYXOL qca0FOzD0ycXCAtQ1bs85DLNV0NfjJVMd6quuTM+ig/q2PWzju2LqfgQqnUwMVGEvSh6 1DS71z0kmtyl8wZfkkmEMI0CNolnZHRHnxl0ZXAN4T8xxup/9BjuQMkM0cOB5UkXNRs0 SHgfqeDCL3Nn5mNB4DGCQ5UKku+y2MdkAhuPKkIBOPaNZ4BVcZELIu+nkmbkLXMoaeHC L+ww== X-Forwarded-Encrypted: i=1; AJvYcCUUYOKu88QwDwhxPjsmjxAxua+4Bcd/mwUJBDrZrSw1s0/F414YTmnId/Eb5RRvbu4CN4yqKum6P9PhyBId@vger.kernel.org X-Gm-Message-State: AOJu0YweTMh5HMGYWMRSY8B6I7A6PGXqmKqDELs1+Oe6ym9OZHIKY2Em /9rx8iDvz3yfZxncB+lk+1bCpopjMDz8+flGF0QNg/rNmHO39/p4rD5IQ7Dtd54= X-Gm-Gg: ASbGncvjTbchRedoufVqt+nzl6mZzNPX0zZ8S4ZfESW0qCVkafuwBZRgGemfVFhrYU/ jN7Y5eplG1RfW9oDOv06jSvneVeLUoKFWxHuPoD6pPf+8zCQE6Cq3x+VMiChly67LuBqMcY2qNq voaL/cEm6esD6K2ouG7y97+HO9tOLRyb7qEuE4veMvDz836wBPA/9u+bLVgYU0MZIsCs6Fod3vI RHzhuKBf1rY+MLy5q7LOBrc4YgkpMZK2L71/gidW8RY82Mf+ZK2S0DxXH74rDpvkP/nimXjK5GK /z6RweQwZH5zozdPHrEBjbY= X-Google-Smtp-Source: AGHT+IHb/M4fq/eclAesQyX1qyqm2opdvIwW1hz+G44wi2NHTIvLGxaNLMU9QXaZHuJ50RaoDvL3yQ== X-Received: by 2002:a2e:bc14:0:b0:302:2cb3:bb1d with SMTP id 38308e7fff4ca-307e5cf5defmr10169671fa.12.1738960889845; Fri, 07 Feb 2025 12:41:29 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-307de178628sm5343811fa.10.2025.02.07.12.41.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Feb 2025 12:41:28 -0800 (PST) From: Dmitry Baryshkov Date: Fri, 07 Feb 2025 22:41:18 +0200 Subject: [PATCH v4 4/6] arm64: dts: qcom: qcm2290: fix (some) of QUP interconnects Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250207-rb1-bt-v4-4-d810fc8c94a9@linaro.org> References: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> In-Reply-To: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> To: Marcel Holtmann , Luiz Augusto von Dentz , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Balakrishna Godavarthi , Rocky Liao , Bjorn Andersson , Konrad Dybcio Cc: linux-bluetooth@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Konrad Dybcio X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=4143; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=NUqFnkgEJyd8qAOCcBnUZHRsatlfc9uvOXSSW/6REWM=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnpm/uo7dpwwRiggT/r+0juc6Vw+YUA+cYrP30n Wu476ddcqSJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ6Zv7gAKCRCLPIo+Aiko 1daFCACi/KngyeZlqd5UPAZdmwD7vZ05C+LmRSewURQOppe62JOLDZ75X2OoBvM0FqzGEbY+i+8 KHxs8ysaHD/jLKEtH2HKvr9JohWEAWPDNBgCV3Wzf2UK9LK5n1AYDU9cCFQx2W98ckoXmNfZge5 s+Lw2Ht/tWCpENWvtpiUxCatKHzPn3Cfp8SVIzXgiWgydm2j9ZOzUqbAa1Oip3vCw1qnJiBrrE9 LGrO93vlN9QkUk16Z6u5Z5y7sr1cT3W36B0FlUdGup3NFi/jWdjVM7CnOIpvRz8aIXzey6wkN64 Xxo9Vbgwy4ym5Db1X7Ow/LUSFDIp/6ppoiB6l6fOs6WlTzEc X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A While adding interconnect support for the QCM2290 platform some of them got the c&p error, rogue MASTER_APPSS_PROC for the config_noc interconnect. Turn that into SLAVE_QUP_0 as expected. Fixes: 5b970ff0193d ("arm64: dts: qcom: qcm2290: Hook up interconnects") Reported-by: Konrad Dybcio Reviewed-by: Konrad Dybcio Signed-off-by: Dmitry Baryshkov --- arch/arm64/boot/dts/qcom/qcm2290.dtsi | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/qcm2290.dtsi b/arch/arm64/boot/dts/qcom/qcm2290.dtsi index f0746123e594d5ce5cc314c956eaca11556a9211..6e3e57dd02612f3568f07f1e198028413f463c69 100644 --- a/arch/arm64/boot/dts/qcom/qcm2290.dtsi +++ b/arch/arm64/boot/dts/qcom/qcm2290.dtsi @@ -1073,7 +1073,7 @@ spi0: spi@4a80000 { interconnects = <&qup_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, <&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG - &config_noc MASTER_APPSS_PROC RPM_ALWAYS_TAG>; + &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; interconnect-names = "qup-core", "qup-config"; #address-cells = <1>; @@ -1092,7 +1092,7 @@ uart0: serial@4a80000 { interconnects = <&qup_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, <&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG - &config_noc MASTER_APPSS_PROC RPM_ALWAYS_TAG>; + &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; @@ -1137,7 +1137,7 @@ spi1: spi@4a84000 { interconnects = <&qup_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, <&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG - &config_noc MASTER_APPSS_PROC RPM_ALWAYS_TAG>; + &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; interconnect-names = "qup-core", "qup-config"; #address-cells = <1>; @@ -1184,7 +1184,7 @@ spi2: spi@4a88000 { interconnects = <&qup_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, <&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG - &config_noc MASTER_APPSS_PROC RPM_ALWAYS_TAG>; + &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; interconnect-names = "qup-core", "qup-config"; #address-cells = <1>; @@ -1231,7 +1231,7 @@ spi3: spi@4a8c000 { interconnects = <&qup_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, <&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG - &config_noc MASTER_APPSS_PROC RPM_ALWAYS_TAG>; + &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; interconnect-names = "qup-core", "qup-config"; #address-cells = <1>; @@ -1278,7 +1278,7 @@ spi4: spi@4a90000 { interconnects = <&qup_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, <&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG - &config_noc MASTER_APPSS_PROC RPM_ALWAYS_TAG>; + &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; interconnect-names = "qup-core", "qup-config"; #address-cells = <1>; @@ -1297,7 +1297,7 @@ uart4: serial@4a90000 { interconnects = <&qup_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, <&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG - &config_noc MASTER_APPSS_PROC RPM_ALWAYS_TAG>; + &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; @@ -1342,7 +1342,7 @@ spi5: spi@4a94000 { interconnects = <&qup_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, <&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG - &config_noc MASTER_APPSS_PROC RPM_ALWAYS_TAG>; + &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; interconnect-names = "qup-core", "qup-config"; #address-cells = <1>; From patchwork Fri Feb 7 20:41:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 863042 Received: from mail-lj1-f179.google.com (mail-lj1-f179.google.com [209.85.208.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 139201D63CE for ; Fri, 7 Feb 2025 20:41:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960895; cv=none; b=shKHkQv06vM5YcvwEBh3VG9AbwF50/hJ2MeOQWbbIgM+ySL0LrHSjX4oc440KiSJ/t8bHsf4dx9vAnhHHDJ6t1vyHIUk/YZwuO4bZuBav9P5o5FdFtZG1YVq/AcIgenzL9mOeY1HyWlksykBqcYXQlfLpZbGuCGGgjcTrwA+Ncg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960895; c=relaxed/simple; bh=qi1V0XhBkBrxty8uIfZTcLxNTnebQC4tHcL8urIKw8w=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=pdg4EcNg404ntvnyPBnlVCd/MSeUU8l6oNEP6imNSkudVH2NxABcmK1D+tLIZUGPcmca0l+9Q18/MehczgWdtx2ax55LB0NDsEa19OfSa9G6hmYKc5ignOc/o74aO8V0aUz8b4BYjkSPZsRoXeVDrZMMFOd0p+rH37yBt689uRk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=uRz7ZBIf; arc=none smtp.client-ip=209.85.208.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="uRz7ZBIf" Received: by mail-lj1-f179.google.com with SMTP id 38308e7fff4ca-30229d5b229so24017401fa.0 for ; Fri, 07 Feb 2025 12:41:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738960892; x=1739565692; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=4GCW5ssE11TCosEFHQR+hT7DqL2XinuXrF8Jh/KlSvs=; b=uRz7ZBIfl13I77jO5n3qkcDJbEuxw/QvHahmWrRrre2wNUhVLsJztlA9LYKQL7P/Yh 2WV6ILffS13z/RyiAa41Mdnk3jDgmqgKqZLVPAecLWfJdHvYiOiH60hOshTz03v6NkVY JuT/VlIelZOrBKX/R02AM8O6AGikqFzKw6A+rUtNH+IsXGVn9y6aJbXlZhkS3wxEJyCJ o8WL7kEAHRvx/qrC0n+Lcqrqj6nUZashqpgPu3YpIgeH+Wu/t95YNUvB++pZsBGk62Vw 8E82fkJ9R5e5B77JiiVbd+R88dVezGAgmR8Q6EzStzHHrmyRlab+iYd9quM1h9jyhCPS xbOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738960892; x=1739565692; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4GCW5ssE11TCosEFHQR+hT7DqL2XinuXrF8Jh/KlSvs=; b=G5Pxx1HBOMT19i0LqKEELagAZG+1x3derStkzMzh+53wkuiX+7p4Vrdyck8ky3i/rH OWy9PglXck4iEAyZ+UGGrNVSCEaL3f5TVs2/cc3rsKGRVyJQ1QRbdpjKk0pzRRkQvpYO B4i5+ZMFSJnD9tKvJAlDseBMoshlBJv4HioSPEL62eT0IaBFyC5+/yRwzdpajYrNiLRp eJG+OCf6jzq6p8nt2RlBcm0cYYoxH2jX5gyuTO2zNb6oVcAquKeELouYmhghj9Qf5S2Z X1LQwDhzJ73vQ7ZDqSE9hTrHl1/ONsTgjjPbebB13MRdbay+nstbvyf6CgLEankwPt43 4COA== X-Forwarded-Encrypted: i=1; AJvYcCVB/JTnObrbwAky0+jSazXv8jRq9RSf2bTahjM9pkdiyoNDHU408wor2FhZ0SNMG/OfaGWXSijGYRSFG2Os@vger.kernel.org X-Gm-Message-State: AOJu0YwhI6UAserl9x54rZCUr3sqUy0ilxZsb5KiKluhhl8jXHyUvyLa kqPSxf/GosqiQkh/IGB6iScGqnXjZ7PtRrZUtcD/5tX36Vs+iIXRMur+7pC575U= X-Gm-Gg: ASbGncvs1rcXyVFLyLl8pwG1fAcXbYjmzsJAsSrKSPVGr7YBAlYAjW9K4aDgV5GUmi8 EVaa8XhDkhQUsXK0KJgFj1jQ2yQoJdYI7onFnBTbEeVhkNKNrRNHO854qiutzHvVfgTMaHg0juL LLPALYsLlfrnfHa6+zlNHr7MRwFOcDUCUCbHrDdJdyfWShTk9JFY7sn2oVPg5PbXhw4SCo9+dtn IsfwIFfxFGmRx+WwFZXNhKJkEBEmCtWgvAp0001MmG1iCYEDQFn/mehVtroJ4m+5s/vjKhIi2Go D30xtIvezYxNFx2/Rz0128Y= X-Google-Smtp-Source: AGHT+IEBrJZCd0Xop4TqN7hbfRaUqlV9yD/Buv5vFYZSETU04EFffkRNpJDvdRhPM0QpF0NR/3WMpQ== X-Received: by 2002:a2e:b8c3:0:b0:302:17e7:e17e with SMTP id 38308e7fff4ca-307e56249b5mr16057921fa.0.1738960892192; Fri, 07 Feb 2025 12:41:32 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-307de178628sm5343811fa.10.2025.02.07.12.41.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Feb 2025 12:41:31 -0800 (PST) From: Dmitry Baryshkov Date: Fri, 07 Feb 2025 22:41:19 +0200 Subject: [PATCH v4 5/6] arm64: dts: qcom: qcm2290: add UART3 device Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250207-rb1-bt-v4-5-d810fc8c94a9@linaro.org> References: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> In-Reply-To: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> To: Marcel Holtmann , Luiz Augusto von Dentz , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Balakrishna Godavarthi , Rocky Liao , Bjorn Andersson , Konrad Dybcio Cc: linux-bluetooth@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1323; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=qi1V0XhBkBrxty8uIfZTcLxNTnebQC4tHcL8urIKw8w=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnpm/ujW9HyGLt8g9r8KYeBGvBPzJCLQA6GIBM0 F5rhO2oy9yJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ6Zv7gAKCRCLPIo+Aiko 1aInCACdLbRGZMZ1qluRxcZdmHdIo85b7zTs9sSmlNzHctqHpE1ZjdGHk8cepvMmTCoMuWZpbeu rnMO9+8Q0MECLgV7ImZPbDYxudbJySRSDawCTUP1kPPwVVX387tsvK0nkV1M3HOcF9jfWQOEFWL Q7gor3l8DABVRtFj2QJoGMSeTVLFubca0mXphiWnN4ZeTFyDBnIq4atPOpRLvKObAKc83zg+4rR /Q1kY+mtinwxcxcZFR77ZnjSSn+lkQPy34gayvbKpup6VQwbg8bcCTmmrBVsqM/hiKa1mVTKddu 6/ree3ZIYjQ4GBQI14QB4ZTJmY7i7ikGs8PjPnijLOl/Nc/j X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A On QCM2290-based devices the SE3 is used for the Bluetooth chips. Add corresponding device node. Signed-off-by: Dmitry Baryshkov --- arch/arm64/boot/dts/qcom/qcm2290.dtsi | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/qcm2290.dtsi b/arch/arm64/boot/dts/qcom/qcm2290.dtsi index 6e3e57dd02612f3568f07f1e198028413f463c69..30e9bb6c1679aab13c3f3f7f6455f2483b2ba0c5 100644 --- a/arch/arm64/boot/dts/qcom/qcm2290.dtsi +++ b/arch/arm64/boot/dts/qcom/qcm2290.dtsi @@ -1239,6 +1239,21 @@ &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, status = "disabled"; }; + uart3: serial@4a8c000 { + compatible = "qcom,geni-uart"; + reg = <0x0 0x04a8c000 0x0 0x4000>; + interrupts = ; + clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>; + clock-names = "se"; + interconnects = <&qup_virt MASTER_QUP_CORE_0 RPM_ALWAYS_TAG + &qup_virt SLAVE_QUP_CORE_0 RPM_ALWAYS_TAG>, + <&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG + &config_noc SLAVE_QUP_0 RPM_ALWAYS_TAG>; + interconnect-names = "qup-core", + "qup-config"; + status = "disabled"; + }; + i2c4: i2c@4a90000 { compatible = "qcom,geni-i2c"; reg = <0x0 0x04a90000 0x0 0x4000>; From patchwork Fri Feb 7 20:41:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 863335 Received: from mail-lj1-f171.google.com (mail-lj1-f171.google.com [209.85.208.171]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3869A1DA100 for ; Fri, 7 Feb 2025 20:41:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.171 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960898; cv=none; b=hJQyrC+DGhSWQ32LLkIaNz562eviiiXWMUXFuAmpwJgmkrK2V6wWp83eRkj2Xint5O0P0uAWDIx3pWEVuo62rnMCJ9Gkal+JAwiqul9pT9sZBCIMoXTsM09Xb937tM0xJl/r9G4x9a4Lf53eYUe2FEnmMOSZvwHBxPNEEgMzEA0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738960898; c=relaxed/simple; bh=nvBn7R4zl24lXF8bRo2NYM4At9i0z38sCJ0Oi1zDsD0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=jAAF5uuMu0Ut08HrfEabVrSwOZbWqJVbWocKeEhlFKMkUHMP3Xmza5fxZSTv9KHG1EDp4cpFq7VufdMO6f2HCdIvKgy3RCcEMRIQRvcH+GLY06wiI/LmLD6csyaRMBeyDf1QHjoDYg4os634mzAM5EdSR45d5VTq3l2elgiIvKE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=jBpLuFpi; arc=none smtp.client-ip=209.85.208.171 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="jBpLuFpi" Received: by mail-lj1-f171.google.com with SMTP id 38308e7fff4ca-308d625295cso8692041fa.0 for ; Fri, 07 Feb 2025 12:41:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738960894; x=1739565694; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=a8UJbddvLQG9wXJNzynWa7omOtgBQR2Tq8dAU0qNTtA=; b=jBpLuFpi8awAQFehuVzFwx0neQzYX+5yQzbo+BH9RBWVpP9Q2sPkPHGy7WmdS6+MgE LNWGmYyCXUsr7vD3oT7eAbRcufx6H+IMP2s7FTXJ/MZIfTWCsfOGLSf63BgDDOghPcy3 HgbwlG95W/5ZFgngvHES+ebLwf06g+orrHPZ5Sd80RcZ8B1OxVbqVdKBbAMFGSkVnZ9A ipc5n5gsF+gOwsJmdypd/LbqW8R2hms3p8UXF3y0FWtOtpb9WhV6NdsW+0Ayll5daeff goj3EadKUYK1jV9GK3Db79CvczAlMUHWLYtjKyN50C75uyLk6p3gaolOu1SENC3UhFMW rDdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738960894; x=1739565694; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=a8UJbddvLQG9wXJNzynWa7omOtgBQR2Tq8dAU0qNTtA=; b=q738emQj4paZuNe1nAeJrXUZfeOCVTeI3GRnugqa6iv5riqGKoFXqDYWFLeqYdAGSL SZnMwWDt7firfoRmYS2YxOnmNVe2HnRDLuicHolLBdBMAgchEfeT3Xw8KXND3HI1JLWD M7lWXMmyWCsvE6kESyGG8/It4BsxE0IPk5KlKgaN4HBVVAb0vlzY8+adf5qYDWHPw+pr 3TTijJUMcIc7ubu4bX5aIHIz7493B5wmer4GfGQP0gDf8juTJatZWk2a9gma3ErPdwXr epBcrjMNzqtsVrGtjBulBKH0y50dDm9ndIBZSziQHkh6Cq5OvWQ3I2KufYyChz6otbHd kaaw== X-Forwarded-Encrypted: i=1; AJvYcCU8u7oy8cnNWLIQE6zUvlP24VYr5xJoKdwqb8AUhATE/qWTkkeCdj3yosQYLbcSuNn7qHoVVI0bZcJvF3v1@vger.kernel.org X-Gm-Message-State: AOJu0Yy3rvWZp9poinDGNdNbPmLp2Ovhe9wx5Zd7SVuJkaKjt8LuioiD akYNIO8+YrRpopYRvtflpbXA7GcpOFxegL9DjdY1u7L1LIkRaTPDFvzwCAWog7s= X-Gm-Gg: ASbGnctG23o4dj76n+iflDJXeKlOb7TxNISIVRyfIDqidnTk0ZhRk1LssxNuWy41E1T eC8kwahdUUnfUi6u8U9D4NaR1n/pPWihQEBN09TUje2lHxeRaQ+RhSsVtAwJSC33sf5IOyLemyu UIgp0sLkfTpIjJA1MOAaVYdhYGb6Wb3ZBbrr6mZy8/6XswIKBySbzv/FZYMaSwuOAVMgS4cMYLB +sJj0G5mAcVkdQfZkrsNSRX/8rUhR1FX0KfFAxq0TwmwNyfmyriz9FMZzrvg1pndFaWHRj3E4Xr trC3hHxE0UcXSBYWmOQF6Mo= X-Google-Smtp-Source: AGHT+IE+PEeFY+/fGE/0oTDa+1Oyc89e2djwYGmCFITdkpFlLgeM+hJaVdYS05brkuhQo+y4hh2GcQ== X-Received: by 2002:a2e:b8c6:0:b0:302:175e:5abb with SMTP id 38308e7fff4ca-307e57ce521mr12024031fa.3.1738960894523; Fri, 07 Feb 2025 12:41:34 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-307de178628sm5343811fa.10.2025.02.07.12.41.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Feb 2025 12:41:33 -0800 (PST) From: Dmitry Baryshkov Date: Fri, 07 Feb 2025 22:41:20 +0200 Subject: [PATCH v4 6/6] arm64: dts: qcom: qrb2210-rb1: add Bluetooth support Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250207-rb1-bt-v4-6-d810fc8c94a9@linaro.org> References: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> In-Reply-To: <20250207-rb1-bt-v4-0-d810fc8c94a9@linaro.org> To: Marcel Holtmann , Luiz Augusto von Dentz , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Balakrishna Godavarthi , Rocky Liao , Bjorn Andersson , Konrad Dybcio Cc: linux-bluetooth@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Krzysztof Kozlowski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3166; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=nvBn7R4zl24lXF8bRo2NYM4At9i0z38sCJ0Oi1zDsD0=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnpm/ubXRilr+k7yK/Z4ZjyxXCNNia7uDidNpQ8 sX5SOfx5zmJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ6Zv7gAKCRCLPIo+Aiko 1WrwB/9oYqO4kJTo5HFANYeTOnbkNfsQhepHwUbzzOqYGYqpxQVZmBr8VToM1SAv0sizF0vxQTs XRm+qgA1PS9ecw0ruoBWfz7wjB/8Mv45Y2X1RFcLfpwAhtkUlGM9Wz9ceZvmN9uC9DOtS+3TrEh YqfaTatOhHYtB85pc6buQE/BBrEmT9XcoF1r5+JI/n0QmKdvxAZDBLy+nDNYuvVIqWBy7q5HAZT zLD5FSrzKDxRSPlegfdbm7RJWcoPbjosqd2E9YJCh2uOPOgsK71vLTZsGn1nI631SnNIPytZS3x GyHI/Qz4fFFZA2FBmRdktbJdfRS5x+Y7hgMpnaY5qoc7lleC X-Developer-Key: i=dmitry.baryshkov@linaro.org; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A Add support for the onboard WCN3950 BT/WiFi chip. Corresponding firmware has been merged to linux-firmware and should be available in the next release. Bluetooth: hci0: setting up wcn399x Bluetooth: hci0: QCA Product ID :0x0000000f Bluetooth: hci0: QCA SOC Version :0x40070120 Bluetooth: hci0: QCA ROM Version :0x00000102 Bluetooth: hci0: QCA Patch Version:0x00000001 Bluetooth: hci0: QCA controller version 0x01200102 Bluetooth: hci0: QCA Downloading qca/cmbtfw12.tlv Bluetooth: hci0: QCA Downloading qca/cmnv12.bin Bluetooth: hci0: QCA setup on UART is completed Reviewed-by: Krzysztof Kozlowski Signed-off-by: Dmitry Baryshkov --- arch/arm64/boot/dts/qcom/qrb2210-rb1.dts | 83 ++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts b/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts index 7a789b41c2f1887f0c41ae24da2e2fe8915ab13c..9a2c86144ed529f13987b4135407f605b9ec71cd 100644 --- a/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts +++ b/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts @@ -15,6 +15,7 @@ / { aliases { serial0 = &uart4; + serial1 = &uart3; sdhc1 = &sdhc_1; sdhc2 = &sdhc_2; }; @@ -549,6 +550,66 @@ can@0 { }; &tlmm { + uart3_default: uart3-default-state { + cts-pins { + pins = "gpio8"; + function = "qup3"; + drive-strength = <2>; + bias-bus-hold; + }; + + rts-pins { + pins = "gpio9"; + function = "qup3"; + drive-strength = <2>; + bias-disable; + }; + + tx-pins { + pins = "gpio10"; + function = "qup3"; + drive-strength = <2>; + bias-disable; + }; + + rx-pins { + pins = "gpio11"; + function = "qup3"; + drive-strength = <2>; + bias-pull-up; + }; + }; + + uart3_sleep: uart3-sleep-state { + cts-pins { + pins = "gpio8"; + function = "gpio"; + drive-strength = <2>; + bias-bus-hold; + }; + + rts-pins { + pins = "gpio9"; + function = "gpio"; + drive-strength = <2>; + bias-pull-down; + }; + + tx-pins { + pins = "gpio10"; + function = "gpio"; + drive-strength = <2>; + bias-pull-up; + }; + + rx-pins { + pins = "gpio11"; + function = "gpio"; + drive-strength = <2>; + bias-pull-up; + }; + }; + lt9611_rst_pin: lt9611-rst-state { pins = "gpio41"; function = "gpio"; @@ -584,6 +645,28 @@ key_volp_n: key-volp-n-state { }; }; +&uart3 { + /delete-property/ interrupts; + interrupts-extended = <&intc GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>, + <&tlmm 11 IRQ_TYPE_LEVEL_HIGH>; + pinctrl-0 = <&uart3_default>; + pinctrl-1 = <&uart3_sleep>; + pinctrl-names = "default", "sleep"; + + status = "okay"; + + bluetooth { + compatible = "qcom,wcn3950-bt"; + + vddio-supply = <&pm4125_l15>; + vddxo-supply = <&pm4125_l13>; + vddrf-supply = <&pm4125_l10>; + vddch0-supply = <&pm4125_l22>; + enable-gpios = <&tlmm 87 GPIO_ACTIVE_HIGH>; + max-speed = <3200000>; + }; +}; + /* UART connected to the Micro-USB port via a FTDI chip */ &uart4 { compatible = "qcom,geni-debug-uart";