From patchwork Sun Feb 2 12:15:57 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 861446 Received: from mail-lf1-f53.google.com (mail-lf1-f53.google.com [209.85.167.53]) (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 0F00E1D63EC for ; Sun, 2 Feb 2025 12:16:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498571; cv=none; b=TRbxVgNkpej2Mgjv9ZVvfluVhNB9E/LwarOnvnq9QZTHCY1YNSzu78K9EpZ8dgzsDXQ0xqfGrKNcMvbIQBoqny2igJ5YL0gaNaSLoJDD/iqk3yE05zj69JLwJ+T1YhYewRXmNMhvwGWk1bxouKzC0JkN/cE4SiTdf7vvhu+MD/k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498571; c=relaxed/simple; bh=/d/geU3OxC4Nkibrq9A3Ew2gwBiXmZo2CHTH+6Gy0Vc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=F5Z/X5Pwn9pmHj1EvA8JuK8eppyQneWADFm0fNWoVOLkJeLG/499lH5KsD3dUhI8uBPiHday9TTV28nBXEVpxwwoXQ0mCucwjJvYEQ2LymrmnHY5sRnJzT5kl4VwwqxAJtNpFhkqNu/oD68ycGsz7+uZmfpzMe55xRK7NtMSm7E= 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=JL4GkBxB; arc=none smtp.client-ip=209.85.167.53 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="JL4GkBxB" Received: by mail-lf1-f53.google.com with SMTP id 2adb3069b0e04-540215984f0so3732807e87.1 for ; Sun, 02 Feb 2025 04:16:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738498566; x=1739103366; 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=/Dk7ljpeNS9WkTUfxOFg/JBajDxdcbPw39k3Tq9ImKI=; b=JL4GkBxBbSlI0/wHjLKBhSuaSJ7t9Q5DiBXxkc2u7JVhuPzfIJmz+/8PyI8M9iPwmw mONIP0VSf14x83Fa0R+DdYEtJjFgaXA79df7H4YznQbYSNhFy6QUBzVNQ/GWuIdMBJjy Lbly12zucWNvw46adQ8K1j8i/GgK+It/NmHP53rNrno1VwHFbynshx5hmUq8ejmzTj9v F1qVnuLWZCEcU2LyXAJWgIb3DEHNPwNNHt/nWF3NCNyEyeWwKV1whoMLY8Do+16UBgIA GYrj/9yRNeX52FeeXe3/Pu9f6c4BLj2cJvmoD/VD1wXTHToADggvtH4uMBOMkDlrqeUf EukA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738498566; x=1739103366; 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=/Dk7ljpeNS9WkTUfxOFg/JBajDxdcbPw39k3Tq9ImKI=; b=JgAbK4Qdt9OraLsD5eysTt5cDHadpQGc59QH3VdNjnOvDRArhMKJAxOhUzK9CESJwD jw1iV7PhfWB5WlbVP2lucF/o9wqp2W2UoCHVC/aCZC5RrRexzdYqKIDc6ZZDEUS80GRm l/SuZK+CURfYEp7AIVg/WvkGmWcPjM1VF+adBz+umIUNTChzZ09W+exx5Z4g67amrkBU m9eLMvdOBD7bmdZ9mYfWw0e3KP8k5nXDb1MSDjjjdhC3zYhg8PnFVXp6KwRBJssRWZnd riKP7d9TLIrMA55BDtUfB13NpKbg1RMDKB+XDGpArSJlY3htD+HBbFUzFYxTcVGlrjqw NYow== X-Forwarded-Encrypted: i=1; AJvYcCWx6ydcBzPNiXwUw7Th9UwxSKZiwoub3eyRbQQlEX0CjaC7HjfjeJyg0HQTR+RzJChfhWT0Em/NiKOqtEGy@vger.kernel.org X-Gm-Message-State: AOJu0YxpTAVI8yHDFSjTB3sCw7808a3fso5KerA57nhdzrngJhDa3NQH qVZ3e0hFjxXQZrkxgQb7+CEo9dQc1WccyDw+mlwY+5bZikHYsuVsmYPdzZMIXwE= X-Gm-Gg: ASbGncv/C1cQpvZM5fR2pwzhF5ExgdQFgtfr1pQbvx6GyVAH+Bzc4cyHiWVf2j8KVHn VjlVRllh6sY7AG0cTUcwM4JzwvMwwcxYjN4Jxd64GtBgDldUujMWfX0R80vrb/PHFA20sc+M26g zdcUpejD0Sh1fQq0/maDWvUi1i3eVixs94pHBr0aMtjkLAgI+e8EuOi+lDWwtNbwZDDQbWFa1Mr RgcLLkX94HsS/Nb4ej9QOMaVaBgVjCR5LOU+0MwlbPTVIfks07Zu4tOTzkV0f0/gfxJzHNvESh6 q1y4l4RWBNRnGhWGilTqC4w= X-Google-Smtp-Source: AGHT+IGP98WumGAvva+L5oENy7ZtjMAo+pqO/eBrk6bMfEKIlWE1R/0IRGd/QpefZzWafsWgZy/y2w== X-Received: by 2002:a05:6512:32c3:b0:541:1c49:26a with SMTP id 2adb3069b0e04-543e4c41038mr6109076e87.43.1738498566072; Sun, 02 Feb 2025 04:16:06 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-543ebeb0a4esm950663e87.114.2025.02.02.04.16.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 Feb 2025 04:16:04 -0800 (PST) From: Dmitry Baryshkov Date: Sun, 02 Feb 2025 14:15:57 +0200 Subject: [PATCH v3 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: <20250202-rb1-bt-v3-1-6797a4467ced@linaro.org> References: <20250202-rb1-bt-v3-0-6797a4467ced@linaro.org> In-Reply-To: <20250202-rb1-bt-v3-0-6797a4467ced@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=1201; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=/d/geU3OxC4Nkibrq9A3Ew2gwBiXmZo2CHTH+6Gy0Vc=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnn2IBFNJQoyc6Q4TD+Kypa+h8oMgJ1mr88BTN7 iUCRw7nItiJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ59iAQAKCRCLPIo+Aiko 1dQvCACSiRQJBXKmOxljdACfeKHT2m75Y5VpbZRWKMkcI4H0buAMvopgfIgG9wPFTf/dek+VG6p lqKqBfxIV+KU99Dcb7wxL0JW5UBsMx23ADuVZLjUmdCSJq+tSakpNlbdkmaeXyV/PNUD/ULwhyZ MGX56kw39F9vBS3TgKHbv7ncPOqS1mNm006aKml/MWzxKqFLXt6mlofqI7V/K82io+gfHeSK9am Rnln3hHL6poko2ReUQcMCvpYBAcF7RmwaYk9th1OWVNRCsz9QpGgjdzztVW0T5JFUbjNWxd5VvI hen+Oa3myvAKVNmTcGGAZt6U1MMoI4lAB/6hVDsISJPP0Mgz 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. Signed-off-by: Dmitry Baryshkov Reviewed-by: Krzysztof Kozlowski --- 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 Sun Feb 2 12:15:58 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 861907 Received: from mail-lf1-f54.google.com (mail-lf1-f54.google.com [209.85.167.54]) (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 6A4B81D798E for ; Sun, 2 Feb 2025 12:16:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498572; cv=none; b=hw/kAZJK1d+crsZtGnSUVCZdwjwZF1qcI29WiDYULAIGAvLlB2E0nobxpq8HLMxqW8l5X+d26eOCsOzcaWvUBAF8q8R8crrUtStKLm5e8J7JTiyy0b58qTs90XJ111gZtjGqQddoYNA86AYvp/v9bnfiYgdpjm1G4L+AHpGLh7k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498572; c=relaxed/simple; bh=XL7ng8U88IdS02LpqkHkwAED27Q7ZWUI6j1I8zn2UOs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Fel95y+6ajewCIGepu7Ln3yHkIUCfawJ27issrxK9SWlov8uPT+iSXnNvzHvlUc/LHE0NSQ+dAYUp1uwvIiTQPYI/hV31GTG7589pTNvwJj5JJShkAWDppx5C8zdOZ5ZRHeND6ihV0TZMPlcaWAtRj+8DOprHtd/fIT4mZJ7X68= 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=yi4uvw1h; arc=none smtp.client-ip=209.85.167.54 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="yi4uvw1h" Received: by mail-lf1-f54.google.com with SMTP id 2adb3069b0e04-5401c52000dso3545861e87.3 for ; Sun, 02 Feb 2025 04:16:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738498568; x=1739103368; 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=yi4uvw1hfcswZ2VQxp3nDkBa55RPmjGgBYmwe+CA+jXBHXVVMdlbB/zKmnI8qd5Yqf gJuglgJbb9RGXJmeutypPMJ2/DhI89YmWj3cm25dA0UdudeLUEU+LMz/6xUCTRNOynqs 9MAAW7LrziYzckbGCdFONcpTDNLb2GjjQcfyJKsfRud3CuUS1dM10DuJKFgSz7X48Eiw JW9n10g57JucPHyBQQFugKeuGv8kGAW2falBzNMprDEFSO/OWSC/VpiSk+WQllJIHuKx 7ro3YmL3hYuFnAYr1ZdzfxcJ9Iyy+5y2V3+AdhGZ9/daqpBdW5Ll/h2DN1aDlrneqSzt /MHQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738498568; x=1739103368; 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=NGRw2VPJG/PMZivsTEUd4Dzj+pTKJuAeKB0N6ryr3XOALRVEmmuXX2eogQac8L1rR8 xSJKsAODAozRpUSALRcNYijYD3q1TdOqwmu9N2XazJP1jNy+QbNyMWgceaiXJFT9avIN QIv653ygepzUVLwYuqAbCr8Uju/XGDspmxwEDf3lNJ8evcu65UNLyS655BfPq+vvA7ph EPTYG4qmPEd/zBMPMKNfK9o3WB2BdlDz5vK4ChaHkU0dFnbVW8f3KNs+VUZ2eie2nXmn v5VblF6/QvxdxXIGgrAftoupoOgcvjThNIlTOD7TWhxU0Nd0jyWEQJijgW7ce0fu/CGY NiEg== X-Forwarded-Encrypted: i=1; AJvYcCX24nuomybsLlFXp2sTbdkAFwAUTsyR6kQMghl62Q5h48fVmL8L0fCTz/pjooBe2fMRQDpc2kq3JyiD/EUP@vger.kernel.org X-Gm-Message-State: AOJu0Yzio4DRIKXjPULlmlKpJWHLfBD86YMlQdrv4GDpVunkXW9abuI0 RJULkT8s8CshA+9oi6mNADOBYChLw0nQs2WLtRn5qbo+lrjDWZxW8ynbx1bASWc= X-Gm-Gg: ASbGnctD0Q22gmG/wiWbq6ie1ZiH6/HoAnDANBzQwZC6Qwb0Aae1lqKQnd9bigfjS0A aNHSjB1Lf++Ql1tGWZtJgJBvw2FlI5WGLIFq5SD+XRGWSPBPKG6szsDWZkn0n0q9PqB4Kea/1Om w/q+Fg8YGo4Iepce94uBxDXYFLaUf3Sm23+yDWarqSC3MQ6Odb35kvU/rG15bUTJGrgmqxPaWw5 TDe270xYcU5LWcjf+W+EnJd+q4Zm9Y+IuSgipnRm2nC8oRHkc30bbfkcKfGdcjjpkkhG/kYbNu6 fw1odthclVqCl5wP5B2regE= X-Google-Smtp-Source: AGHT+IGkAqb29ObwLsStliQ3X+p82fx7N71ujUtJWUx9Mh0vkbbBSuYVWVgq/RcqBea9q4sf1SX4og== X-Received: by 2002:a05:6512:2344:b0:540:20eb:80c5 with SMTP id 2adb3069b0e04-543e4c2565fmr6341236e87.37.1738498568556; Sun, 02 Feb 2025 04:16:08 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-543ebeb0a4esm950663e87.114.2025.02.02.04.16.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 Feb 2025 04:16:07 -0800 (PST) From: Dmitry Baryshkov Date: Sun, 02 Feb 2025 14:15:58 +0200 Subject: [PATCH v3 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: <20250202-rb1-bt-v3-2-6797a4467ced@linaro.org> References: <20250202-rb1-bt-v3-0-6797a4467ced@linaro.org> In-Reply-To: <20250202-rb1-bt-v3-0-6797a4467ced@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/pANAwAKAYs8ij4CKSjVAcsmYgBnn2IBLOuD4AebbL9VEvX8M3u7zFk8VAl9gGNdQ alwF5QoryyJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ59iAQAKCRCLPIo+Aiko 1c7XB/9loxRdO1eIDrFUhixVzmgXgsB59i1s7L7w88DJXzg+vTbZ7lC5QDBnyZP6T+XNLr3SZ/0 qA+mMVM1Gu36R1ereCfMUgQCm3kfd+KCkYq1lQCjew5UxQC19mSU6UXmRQ+9QaY3iK63cgaf1ua PahJOxwqmNyGBi8BilFp6nLftFFiLLQzGorraEs2Lum8LOd18X1sPV6fv66Fhbp2xuFa5WsHZbd wJujrE8PgFeOnjtxYLt8crEUMwl0y1/b2ULnMKZ8rmfpwW/scXcH8HJ0PnTZFRNp6vEWmKYQHk7 0RBh2sM7fMqwb3wWlJVJ5f0EgRDT6DLHmaiCgGZi74ajIrv4 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 Sun Feb 2 12:15:59 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 861445 Received: from mail-lf1-f41.google.com (mail-lf1-f41.google.com [209.85.167.41]) (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 318971D8DF6 for ; Sun, 2 Feb 2025 12:16:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498574; cv=none; b=gulxFn0AJN1ZdvZTXYW859jrUHF5dbowVA/ZQdoOECrqpTXtYj4osslkFuXPDaRUhOtEqTTh8OrUGySt+pFhWuNPPoL0PC24hIsDL1HMluM12NF+cedVmG/9Q54GKsmFIDXDP9ys1yCklbv2tREp8SkCh3/gGxpgpviGTDF6ydg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498574; c=relaxed/simple; bh=14MmxgXH6MGoKQlSv53fBwYT+gb2hGBEOWXu2liSlgE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rE3efmhfyzX/a5WMz1CntRQi67eJv+VMg1S9tCLDR8U0HoBcyS8/bSTbjd9HnnYcqOjkoAsHCQGM4Ntw2caEQNVPZb3la6spgZigMQz9/95u3yuZIhU1Ya6bBy5ybD9cN9ZrvuhuBUZLVWO/FnrTqebAMlExMW+/DqH1+4wSGf4= 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=jdZNMxdj; arc=none smtp.client-ip=209.85.167.41 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="jdZNMxdj" Received: by mail-lf1-f41.google.com with SMTP id 2adb3069b0e04-5426fcb3c69so3102765e87.3 for ; Sun, 02 Feb 2025 04:16:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738498570; x=1739103370; 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=5/wgQA4ZO4Ux39DmgobxmQyBbaP59b/Ddx14+zk9ePA=; b=jdZNMxdjvLm+PitNsN2jOkjSoDVNrrWHABWcTsD9dhwQdzIvOeitEZ63NE58pmEoSG +3fQR6HiITjqxBG4Q59R2Oy3mE+R6He37XT+DCtSgi0t7chDdh9fUoUl7v4EOtJFLR0J 6y7Y0irEkmfA9P6nTkyQDBRogCRPAWtBPGffQ/RvkPxL7AImPDc2nOXn6tEzhuV+q1n5 brrm9hl0E6/y4lfrOy7d/yAahrNlsKunbiG5eB6gm7o/lT6UXalBO45tVg7DW69/0dPh hIFlSqxHtgCtUugAaPkHjplP/qcVqQBgV5Bao1rT16u2Pn0BWLdBlGvCZOOqBaDSio+9 RJKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738498570; x=1739103370; 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=5/wgQA4ZO4Ux39DmgobxmQyBbaP59b/Ddx14+zk9ePA=; b=jzjVsn+sbBuWzhPGFXfuNjkGWIOe/bdfiSNKFZGmBcxQLl1nUeNFDXJezGv/q7BvAI w6m+ayXXWiWuuaOSaedCSxeQ9zSFSAc6hF0eelJ4ciBQmyWTY32XUbMjNeOL2fa9Sg8B bzIooGiM28TALQA3NFZlr/4A7w2TRq028VzaLvZydWcmh81VTG66ka/UhaEz93fuc80R 3BsbkAloLAlsQZ9FkIpcoeaej63ybcMwcrY1GhycW1zML0p6aUdQ7KAWEDL5/eorC9Sq g7gkKS9B/E8lP3S4ZtiQCPqp86JyMYK5PMwOXAx1MTo+BUBXmwp3CDym1nMvtJhibpMe pIFg== X-Forwarded-Encrypted: i=1; AJvYcCXt0CQ1Yu0TZCoyCxCRe4OudDxGjoa/eX2Iw7CWsHzVjYqzdG3Wfdgw3LTgvm3vTQqjfB0vdzR+T05tZwyz@vger.kernel.org X-Gm-Message-State: AOJu0Yzd/eoEzpHHU48723ODC2/wkYtmsbqdTPmYVTLWn10Z/hzTEDet u6n+g7CJwo755jr+jb1pRv/kNuHkF6TNcuF3gk5PcanMUNavThnkMLL3BV8LhwI= X-Gm-Gg: ASbGnct5FPWNjPmythpIj5mDfTdGZHhFtBDW0LOgcD9SF2DRygfFdVaLuWadB2keApF OAgbREa/1t9lkXdh8Yft1r0V76hcS0pKA4stmbh0Hn621BeDEx/bZ7IlsYo4d3DgmVhQHd4G2ew FWPzcvEnmDJJXZ0+e1ktCWRcnDcnI1ydE6gvicYqq/lDkTexaEWAoDklx3bbsAEASiPTU34DCfs 9u7D1m7FWRP7kl0m3PSeMFQeGwoYZAvcqLAdC4D3ZdDS3o47a7djSOwS1LGQj1743kKWV4elt8C zpAqiIoRs/QymflIxyL8Ocs= X-Google-Smtp-Source: AGHT+IFqExPesZgM/f1koff9qNfw4RB1gc5X7W1anqS7RYf47NPcsjIJhgvIkuCOh4rNke6QDcNaxQ== X-Received: by 2002:a05:6512:b19:b0:541:1c48:8bf6 with SMTP id 2adb3069b0e04-543e4c3e14emr4839516e87.53.1738498570131; Sun, 02 Feb 2025 04:16:10 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-543ebeb0a4esm950663e87.114.2025.02.02.04.16.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 Feb 2025 04:16:09 -0800 (PST) From: Dmitry Baryshkov Date: Sun, 02 Feb 2025 14:15:59 +0200 Subject: [PATCH v3 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: <20250202-rb1-bt-v3-3-6797a4467ced@linaro.org> References: <20250202-rb1-bt-v3-0-6797a4467ced@linaro.org> In-Reply-To: <20250202-rb1-bt-v3-0-6797a4467ced@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=6951; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=14MmxgXH6MGoKQlSv53fBwYT+gb2hGBEOWXu2liSlgE=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnn2IBFb6rjwAzc/LtLub0IJQ3E97KS5ZYvnmo4 9FUaTGf/UWJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ59iAQAKCRCLPIo+Aiko 1aWCB/9LhPHfYPcr9XC63kgQbDl8QKR4uhWY7biEsE/9+bT2eJE23+LbjoxZcHsTFpajYAOwpMg /sKB4Bz3qaFGlDXFGX//zpw/uqNouyTifuiNvBH+FE2L84UUBDTIcNhKo90vlDVx8hrSNjuLVMZ e8YVi2sBbG4yWQv3x+EW4EUspGJ18OC2TsL2Ha+4NbH5yz46FwwmNhzUTYesF6tRhhDiegPx/yU rlWYPPYNaGBo+/MTNAFwGsLhSx9o/Id74SSbhW0rEcywyEpXuCjewUADbTcjD5q6h3Llt2Uon0q o/Frj0W9DiDFumryeyofkgaeBivfmVR7MWiZbhLCs05d7MHt 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 Two additional NVM files are pending to be merged into linux-firmware: - 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 Sun Feb 2 12:16:00 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 861906 Received: from mail-lf1-f42.google.com (mail-lf1-f42.google.com [209.85.167.42]) (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 A36891D7994 for ; Sun, 2 Feb 2025 12:16:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498576; cv=none; b=Y77OLt4gTxS1zzGXASZjl4NOYF5hHom7LM/Y9oLI88kz4jw/XjKcig4nVtAFMQMmoCQRFyhSkR4BbjjfQ3j+xlHrm/yFHS9thxC6aZw2Pw7QUgIoLu8YyjFtxG2MC6OcN3a2F4g0jDDoRNlWMXTm4DAAuQzi4L+2mJFFmrjY0XY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498576; c=relaxed/simple; bh=bnFY74SBqBhj50zQ7HIO+wjy7JugjwXGjrF/pgpBgeg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=X21gNz93tcIRaQvWobSYqLfCeI+tl3ijZp96020tDr2a0apNcUTzyV0h/pP2Zw70x1fmi01pNyVkNQM5sfGMS3P+N84du4QrU6WYmRHJ/yXW9VSFjtZnowv8hc5OsY+geDBvPJKfmHoxpTQOnW+DhfAp4PW+fZmS5LcF7ETtUPs= 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=XjvaC8a3; arc=none smtp.client-ip=209.85.167.42 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="XjvaC8a3" Received: by mail-lf1-f42.google.com with SMTP id 2adb3069b0e04-54025432becso3641155e87.1 for ; Sun, 02 Feb 2025 04:16:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738498573; x=1739103373; 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=dl2JKZ1IRhnp1wS++WB7EWKXLLWje8GjFlU5tMr+N/Y=; b=XjvaC8a3b7IQdAv80RLwNFFNTb5XKUaatkgybRxWxxAjl3DJHysQcAJjKppWdcDgiX 0daQFehyX80f3o/qfsW5SXEv7F1ajfpafUEN68CYsXlRilLnIRVVAFEBWRj+J3/KXX71 2jGBXi4NzVQX+e+12L/ztq89yCfAFtxSwZqKFwHzFRBVwJxY5qWTLQWnPaqSqWDSXD/8 IYV166HnLbhAar5T0ZuRfU9L1fQwpAnv5ZNSNKpoujnqinpnsYDd97kc9WJoCTClWs70 m6G7/uLLMdq/GRn2KHVB2tYKVhxSjxDbYeSnWpNmFsdVnK1N5KolavBOE3dl7ENA6uX3 qtHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738498573; x=1739103373; 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=dl2JKZ1IRhnp1wS++WB7EWKXLLWje8GjFlU5tMr+N/Y=; b=jRvQMmBQLsN6T2tlVmPmgAPjJJR2U0AhY07vQfe6Iw4Qx4NivK2uWIb6b2rOYJz6Vg rGrK+x7/hx2NhksUasoDP5OTjWmOmSEdWUR8W1fUkR7ObKSNlgZL8asd7UHVOeBobIjA 38/b8U8cZeuaXy37TpdDn8BMEHIO1AkMbV/Z6tjgNg536vGc89d8aOmr0yLd+1DZc4wP viVeDZNe6LfbSwh3KeWYsI8t2W9E3gcQfntjQw6/Di8rlzHpTiVJ7I3IQWQWus0/jx5c AqBUSgK/yHixd4vhJ5U2IIdidIysX0lgZ9NeN8ki6r1Ax4RLq3KULub4+zlNWcFkyvNv 2oDg== X-Forwarded-Encrypted: i=1; AJvYcCXdV5KyFjwPRxZSVKJ9a5dtGNzud4N4Y5kp4QeUD/LCKDbim3wq72x8nmmsDf5dKaHw/P8dCgyOmdqu8EWt@vger.kernel.org X-Gm-Message-State: AOJu0YzSxDCMa8ZwadaWutxHNFW3YokM9AeI1BsH4W7e/vgNd0P+JC9+ 7nt/cpXbXbQBv9/fDJANGJ+7iShKg4HPL8jpq5aPwzw5Tjzz49bdbqs1ZAjwR+A= X-Gm-Gg: ASbGncvVzvVxufuuPX0u35tabb1whXkw4r9n+ukWo0dpcyo8aRHRigSrm9pjSw5fbga 5svypo6qHbZm7KBjDxD2XY5AA1MK2UWjtVl65mAPt6CWjageiYF9Tf09l95YvaqMUBiUKLJuZp3 3rD+v8lkBn93OBOqP+qoY9nZs2MfD5DMclbY27Nt0wQomFPqLcdu/+t9gg4Xa4PdXLOe8O7M7fi 6cK49RyfUD4Lq1R1nyYpRs6Iy+EAYT5hJBi5zTnKDNxX5raO1K389oedELA/IWGa441VzaubZrF vZDh0x8DJAnNcK10uSd5qxw= X-Google-Smtp-Source: AGHT+IGuBcOzQL927cB5FV4/ZuTsXXAU3wO7PgScQvvImNPVGOdUn38v0cBF4Hvx3gUbQcbfzEj1LA== X-Received: by 2002:ac2:4e08:0:b0:53e:350a:72a0 with SMTP id 2adb3069b0e04-543e4c3c390mr5333833e87.51.1738498572765; Sun, 02 Feb 2025 04:16:12 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-543ebeb0a4esm950663e87.114.2025.02.02.04.16.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 Feb 2025 04:16:11 -0800 (PST) From: Dmitry Baryshkov Date: Sun, 02 Feb 2025 14:16:00 +0200 Subject: [PATCH v3 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: <20250202-rb1-bt-v3-4-6797a4467ced@linaro.org> References: <20250202-rb1-bt-v3-0-6797a4467ced@linaro.org> In-Reply-To: <20250202-rb1-bt-v3-0-6797a4467ced@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=4082; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=bnFY74SBqBhj50zQ7HIO+wjy7JugjwXGjrF/pgpBgeg=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnn2IBBLPEdQCC3ksfcheS8J9refVsucnZOUYFO K7LsNfa9eKJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ59iAQAKCRCLPIo+Aiko 1eElB/0SrSwPCWoZipLwTZBl5iMAVtXzwAS1zuxbnoBHv1w2dV4fGQ0i9ZjaGAi/Sgln+/0WNy5 BMNHiBd/Tel+OkzyAhlo1IEhfA3lP5LScEymb1Zmfk9zs9cgdajCH4XM7rtmVV0ozJVqgoz778g JAfvDDfbdtBGrw4BMvmAZWNGCN6yw5uprlhmlmPj+wFgvwiKwtYnzFJ6svx1hEesxbSX9Ef0B1F AuV12GuNiEhEaxVeIEhQFIIsUYPFvCrsNsRZojRT47xkVHXsQyV74XBbCXr0UYZmv/SK7XCBtjI GEltn0XJ+KdGTI5TWiVNpOYMlRejSDdLynXT7NHaIGNdNhY5 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 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 Sun Feb 2 12:16:01 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 861444 Received: from mail-lf1-f53.google.com (mail-lf1-f53.google.com [209.85.167.53]) (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 29FF91DB123 for ; Sun, 2 Feb 2025 12:16:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498579; cv=none; b=Cfsip1h9FgDVs/9thtzWaAMZuTg4ylqkzQdTWr4XIBI7iGsx+51dKzJjJOPGYxIupTFgBpX5x5731ogoXQOXBszExEBv2VN0p7M/58UEwE8mvNTilzytHV44XB0UZCV/nNnEMs4uo0brjGcXxm+Bkopusm1uO+ldsEv3tRCsFDk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498579; c=relaxed/simple; bh=qi1V0XhBkBrxty8uIfZTcLxNTnebQC4tHcL8urIKw8w=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ZSQbt2IfFBfbJ18mJbZo515BeAhai3/IDLL2ZV+Wpdq2n20wTkRy0hNLrCvlsagRbwCp0SZa43mrcHcnGKuycXuEjudlqqsFVt7ieXr5fEeVAb4ZLetILX3X8PHDzvf6TY3jvhSOlEsAxKvXVBG34W25ay/RB+Trkib5cbNggZw= 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=TEdI+7XT; arc=none smtp.client-ip=209.85.167.53 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="TEdI+7XT" Received: by mail-lf1-f53.google.com with SMTP id 2adb3069b0e04-5401be44b58so3745919e87.0 for ; Sun, 02 Feb 2025 04:16:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738498575; x=1739103375; 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=TEdI+7XTqTEubyvnS5zVcYGozhu0Va61rbeAYZVVEC97eyhFgM8o2F9FEo7aK2ADMT IYP89MxOJcSFyXssWNfXWAPv7T8m1/N846X01EH4OGrY1Rfcayy7uibbEcgqEeGEtATK yRTRyYWE8DJC3BicZ41XtlGscwHn3qMEBP4WCZJZHOml71DJy2oQ9Zu7GwILTpXE3t1S NY/HFNV6MTRwKlMOK357S56nnKx9cQdjfgVozCuet9PRVqil1jKwDdoPK3dPwqj4P67y aiSR8HGe7WdKMjT72+irLwGmIORRdseqMAwJSvOTYvUrdvoqElZ/tLRl9vgwCC2MzpYe 21FQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738498575; x=1739103375; 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=FllJcZomp5ORlXt0aihpt1YKcAoA0Iai8U6UBkfWPOagZV/RxVUyz2lxAI1Y3nOKCk dHtJbWy5f5SKKbO0ZTpk8Boh7ZMp0XIq11Dzk+j1DQQzSJu+AgmF9b7apZtylYwYQnfd /HSr7pPbtEC2SzlzEUb31otr6lQtvCPPP9IyPiV1ov7lOUC+Io0dDZpxPWwpenvye99V VSC/Rq2Pr0cE4vCDAkPZf1lGdF4FN1PT2fVR4TO+JKudDQmnmXkE+HvsxH3mLMVoEv6U 7h+pNL4UvMSb0uyNDxUcPY8VKsvno3WzQdnW1+9DdmDXxw350OWHaE9jGCZ7L+SB6b1J l0pQ== X-Forwarded-Encrypted: i=1; AJvYcCViMEuA54fZxoQ0RB+gIgsGHdKoLQpO7m+YmpopHz2b3jaT3QIOf47Uri4wNFLkZ/MflyZQebZUtkC4Kivl@vger.kernel.org X-Gm-Message-State: AOJu0YzueTrchVlPfY4axNj+YxMI9KcWiqcIGbegUHAP5mNT05uCVdHZ 0arFV1gKGs4LIxHJTnxpB3JBzebWl8q402a8MOpUJnGB500mRAUKgEZ9ZGBI13g= X-Gm-Gg: ASbGncskE9pTyu6E15olv3+deNjspQZH0g+Qc4K7ZScfwwWnPvy7J3QnNYuky8OpGym WfQtmNCVikNWeoz3AftC7YlMRwZL12IJ2PvUybyc7HL1fPJLIDwvVv1mVkGhs0htw0oGNM9PpWN pe1WMtpI2KbI86SjN7tMJ+sNIRdD3BR+ZJ9+xvlM65fElSt8+a2E+AQqQj3Jobb2NliE8qcMveE en0B3FXST0ZYaqvryZp2gzAfuP9OEd7rQ5owqCRdeolW0AZHKoarunc3x4saPk2z7QOQhvcjVZw YK0T73Wj/6cpix13TQ9M6NI= X-Google-Smtp-Source: AGHT+IEStuw9o+gIF0rwYX/wMSf2YaSVPtLa6hRhzgOqIJakeawWoXldDD53yCCCQJw1KAq/Lvfg5w== X-Received: by 2002:ac2:5481:0:b0:540:22bd:e25c with SMTP id 2adb3069b0e04-543e4c3e341mr5506950e87.50.1738498575292; Sun, 02 Feb 2025 04:16:15 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-543ebeb0a4esm950663e87.114.2025.02.02.04.16.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 Feb 2025 04:16:13 -0800 (PST) From: Dmitry Baryshkov Date: Sun, 02 Feb 2025 14:16:01 +0200 Subject: [PATCH v3 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: <20250202-rb1-bt-v3-5-6797a4467ced@linaro.org> References: <20250202-rb1-bt-v3-0-6797a4467ced@linaro.org> In-Reply-To: <20250202-rb1-bt-v3-0-6797a4467ced@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/pANAwAKAYs8ij4CKSjVAcsmYgBnn2IBpNre0AfGfgYIuxjDMYtVtRRhCxGUwpA4C ULnjgth8a2JATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ59iAQAKCRCLPIo+Aiko 1XDrB/4lgRe6AgOcOU5otx1lEGNzlnAQIJC+2WkA/BSJEcC9D0A0urNkcZ7wB3cm2b3onQ0i/nX 4iyXBRrCdB+Nj43n4Xhp0BGH9o9I2X4uKqI8qaKzuymWRE1yAswRN3YclV4PYDiyQIK7gkt1SOc xDpn+nxciNzU3zgd982gUQ7VKUZV9g68Da/8bKFc6w7Q6iwrR4WbdCa4jzCoFJQC+ZNJRL+m1fS wUJa6dci0Z8mz2GVZpV5Q8mYDgzz1f6UGMK6i96gB5CfabwtAbSoXiE2UPZezZSVHn0hzaJKLtt IK++NOU2Q33+A6j29Ras3sdtYG0jDMeiSWxNnuBo/sKbv6ME 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 Sun Feb 2 12:16:02 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 861905 Received: from mail-lf1-f43.google.com (mail-lf1-f43.google.com [209.85.167.43]) (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 C93001DB13D for ; Sun, 2 Feb 2025 12:16:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498580; cv=none; b=EeYE2nf1/GZqrzuTwCOadbfxl99wM7hE1DMaOCeeQUcs4SaVw29TwZUZnzttYKNxYCEe8gBazIkfAmqYhGAcTASkE+jKdMnP5n2x+qlHdt/VJnVqD0kwTRysliqmM6elvf8gDbMzohPwUDOE8vg2z7sfO2bKEN+w0TZ2oNcIB2I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738498580; c=relaxed/simple; bh=JNFb6Y/XdVHYoGkQV0QeQUNrQN1lFqLu5lpLIO5kuFE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=UXpIpKm60nJr/hXiD0DtpawsFH8zkeVWk1qurPIMBRyE/YzoRo9i9LF6I3XIQ93mDesDTmcQK7taObPJEwHnkDguKswvModNz7cKhxzzruepJp8M08TofKbE2jztprydizHizuT5NKfcTMHAPg3c5T1VsQBwysoDmu7qJM0eLsc= 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=oHl597bl; arc=none smtp.client-ip=209.85.167.43 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="oHl597bl" Received: by mail-lf1-f43.google.com with SMTP id 2adb3069b0e04-54287a3ba3cso4098476e87.0 for ; Sun, 02 Feb 2025 04:16:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1738498577; x=1739103377; 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=Ov3UCovqBDyElf7wgQMMIsdctTosh7cq25mLIhj+V3w=; b=oHl597bldXrjDkLKrDwsqZBIFvlxUBjIMVBRgxwO+fb6o7eDABcNdC3HY+UQlVP90t CmDI2qVBPYQZAeijNunYGEZEPULJJT+8E/hJI2LEqARFHHB4OWiSjoSrexVB6xGlx1o8 +LLA9F3bIi9Y9SxwaWuvE7qLNCbeFQGIKA1mWdVvIKxhSKW/va0rHhPHZjaSeROnjw5M sdKPsBUwBJrx3iKFX08QpTddetsf3UlStTu2av92uSaDg6EkQZWEcZ3Bh0iRXWk7v5Px XQ1XD5IUHl+HEm9weG0uvncaU0nhXXPEn/EdkQNkd5lwXYs0PlLbdIuxHP/w0P739btr 2org== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738498577; x=1739103377; 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=Ov3UCovqBDyElf7wgQMMIsdctTosh7cq25mLIhj+V3w=; b=eYLPzRUjNZ6tVXjQeNHKsDWTs+OKy0hUKZrrthnSx0qZ8lkWiPwT4dHDuLQPkhlZfj uxMPySYDocPy2fHKC9+MOoM8TCc+mh9tMQyDpTk2vAvlZC5yMRnvMtn2iQjcz2VHwM2y j0VhJJKsgEaK+uCTm5ADSv1r/nHYVChwC5db6yI6FnYYW0HuKcM/hiHGVhHE8QJcZR/e vVIe/eA49PT+P3oXKUXABh08brzn6qXPJOsGiRhs++5bglU0WprNF1mwtSy5P2nfsMJc NKNCymVpSSOKHVghub3W96CvT2mHvt99Y7YP4MCvearNKU+DUCGI8d1LHxCE4fUfpBl9 b7AA== X-Forwarded-Encrypted: i=1; AJvYcCUwkAx3h/JU5pn64BVy4yNCJt2ElO5dvqaTCx2q3Ra4ybZGVY6hQnTXQf4vYwTIWjr3n5cmsOu5C+Rq2SJE@vger.kernel.org X-Gm-Message-State: AOJu0YzGcNG7URuygh3qRzRaGAbqk6QS1CcEa5y0qPfJuxdJbkdpzBaL dEJZvvaNSq/2PLMPgZtDHKtM+eFhP79CUXieJ7TxtLa6KpL+CBtnTirOPdGJ5YA= X-Gm-Gg: ASbGncuYvC922AwLYVCgymqlKe+AFT/dPLAnjsjIaIzqna5/C5NOdU59rNnzVEoTNoW 99n/Rbzb7xavQg6lqvNRBBKIaw+0XshY7h4q2U90Qx7jD3GbVsGlVFdqbZ9GoOrexjbIHzEwXPf TReBSVluxEwJjbXG0NUtzh27BTmssX1CxyYv4ZFKSHs6JKHGQH8i/dHJUWjF9D+rjNcWOl30t9J 2t58YbMQDFZdWwAs5aQK2ayscET0rQw8X2jfeRVGN0dLpQ4QTf43W7sG0bGZA0zBrnW/PvgkDLP 2bUvwZBD7BkYLbNVBiYR1dQ= X-Google-Smtp-Source: AGHT+IHU+cY7Sd2FJwu/fK+FejNxlwvrPxT3OOghYyb0HQvwwOLYe3yknR5BZu/qRImPl6zTGSjVfg== X-Received: by 2002:a05:6512:3d2a:b0:540:16b3:3699 with SMTP id 2adb3069b0e04-543f0ef2da1mr2889703e87.9.1738498576871; Sun, 02 Feb 2025 04:16:16 -0800 (PST) Received: from umbar.lan ([192.130.178.90]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-543ebeb0a4esm950663e87.114.2025.02.02.04.16.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 Feb 2025 04:16:16 -0800 (PST) From: Dmitry Baryshkov Date: Sun, 02 Feb 2025 14:16:02 +0200 Subject: [PATCH v3 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: <20250202-rb1-bt-v3-6-6797a4467ced@linaro.org> References: <20250202-rb1-bt-v3-0-6797a4467ced@linaro.org> In-Reply-To: <20250202-rb1-bt-v3-0-6797a4467ced@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=3096; i=dmitry.baryshkov@linaro.org; h=from:subject:message-id; bh=JNFb6Y/XdVHYoGkQV0QeQUNrQN1lFqLu5lpLIO5kuFE=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBnn2IBlxn0ajqkpQJUmshzRsvUxqdik1OzGVj7t fB8L11OJ6uJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCZ59iAQAKCRCLPIo+Aiko 1UjUB/0XgJhzc/BM7b4PFzB0HBDUYi2cf0F8MCk7zDlSJF2i5R7Y9caEeQDxOtJLsLwumoRLsHk agl+SbPPMD1Ko63Ke//UhzKdl3q+0CSY841s1KHQaXSMTBnA3rb15CxX9c76QhEStY1pKeMpIIp LQOjfnEMjl+ZptAlrSK7lrcLtJeISceoQK0NVWvkEv3S1p9M5F200noLOF0mjxht2cp+JNvJioo sCCO0nObmvH1ncL0QIVmR5PLmHkq9AdgSUbgY3J69PMNsu9Gb/ViXkZwziVsLYVNfB51JDs6B+g MO81NMCey11gEa1Q5SB+2me34bViqTFIUjHaNJhFg/W65eFC 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 Signed-off-by: Dmitry Baryshkov --- arch/arm64/boot/dts/qcom/qrb2210-rb1.dts | 82 ++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts b/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts index 7a789b41c2f1887f0c41ae24da2e2fe8915ab13c..b9248505fadd3b986e188976435b786f43975dc3 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,27 @@ 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";