* [PATCH v10 0/1] Enable Bluetooth on qcs6490-rb3gen2 board
@ 2025-02-21 17:10 Janaki Ramaiah Thota
2025-02-21 17:10 ` [PATCH v10 1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node Janaki Ramaiah Thota
2025-02-25 18:18 ` (subset) [PATCH v10 0/1] Enable Bluetooth on qcs6490-rb3gen2 board Bjorn Andersson
0 siblings, 2 replies; 6+ messages in thread
From: Janaki Ramaiah Thota @ 2025-02-21 17:10 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: quic_mohamull, quic_janathot, quic_hbandi, quic_anubhavg,
linux-arm-msm, devicetree, linux-kernel
Patch 1/1
Addressed review comments related to alignment in patch 1
----
Changes from v9:
* Addressed review comments provided Dmitry
* Link to v9: https://lore.kernel.org/linux-arm-msm/20250220112945.3106086-1-quic_janathot@quicinc.com/
Changes from v8:
* Fixed the dtb-check warning in P1 and removed tag: Reviewed-by
* Link to v8: https://lore.kernel.org/linux-arm-msm/20250127064940.1360404-1-quic_janathot@quicinc.com/
Changes from v7:
* updated P1 & P2 with tag: Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
* Link to v7: https://lore.kernel.org/lkml/20250107134157.211702-1-quic_janathot@quicinc.com/#t
Changes from v6:
* Elaborated the commit message with more information.
* Link to v6: https://lore.kernel.org/lkml/20241223135700.22660-1-quic_janathot@quicinc.com/
Changes from v5:
* Update the wcn6750 required properties in bindings.
* Link to v5: https://lore.kernel.org/linux-arm-msm/20241209103455.9675-1-quic_janathot@quicinc.com/
Changes from v4:
* Added reviewed tag by Krzysztof in p1
* Updated the p2 commit message with sw_ctrl and wifi-enable are
handled in wifi FW.
* Added blank line between the nodes in p2
* Placed the structures in proper order in p4
* Link to v4: https://lore.kernel.org/all/20241204131706.20791-1-quic_janathot@quicinc.com/
Changes from v3:
* Defined the PMU node and used the its output to power up BT
* Used power sequencer for wcn wcn6750 module
* Split the patch to multiple as per subtree
* Add description of the PMU of the WCN6750 module
* Include separate UART state node for sleep pin configuarion
* Link to v3: https://lore.kernel.org/linux-arm-msm/20241022104600.3228-1-quic_janathot@quicinc.com/
Changes from v2:
* Sorted nodes alphabetically
* Link to v2: https://lore.kernel.org/linux-arm-msm/20241010105107.30118-1-quic_janathot@quicinc.com/
Changes from v1:
* Corrected the board name in subject
* Link to v1: https://lore.kernel.org/linux-arm-msm/20241009111436.23473-1-quic_janathot@quicinc.com/
Janaki Ramaiah Thota (1):
arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node
arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 171 ++++++++++++++++++-
1 file changed, 170 insertions(+), 1 deletion(-)
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v10 1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node
2025-02-21 17:10 [PATCH v10 0/1] Enable Bluetooth on qcs6490-rb3gen2 board Janaki Ramaiah Thota
@ 2025-02-21 17:10 ` Janaki Ramaiah Thota
2025-02-21 18:58 ` Konrad Dybcio
2025-02-21 19:16 ` Alexey Klimov
2025-02-25 18:18 ` (subset) [PATCH v10 0/1] Enable Bluetooth on qcs6490-rb3gen2 board Bjorn Andersson
1 sibling, 2 replies; 6+ messages in thread
From: Janaki Ramaiah Thota @ 2025-02-21 17:10 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: quic_mohamull, quic_janathot, quic_hbandi, quic_anubhavg,
linux-arm-msm, devicetree, linux-kernel
Add the PMU node for WCN6750 present on the qcs6490-rb3gen
board and assign its power outputs to the Bluetooth module.
In WCN6750 module sw_ctrl and wifi-enable pins are handled
in the wifi controller firmware. Therefore, it is not required
to have those pins' entries in the PMU node.
Signed-off-by: Janaki Ramaiah Thota <quic_janathot@quicinc.com>
---
arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 171 ++++++++++++++++++-
1 file changed, 170 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
index 7a36c90ad4ec..de03770e0b90 100644
--- a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
+++ b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
- * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
+ * Copyright (c) 2023-2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
/dts-v1/;
@@ -34,6 +34,7 @@ / {
aliases {
serial0 = &uart5;
+ serial1 = &uart7;
};
chosen {
@@ -218,6 +219,63 @@ vph_pwr: vph-pwr-regulator {
regulator-min-microvolt = <3700000>;
regulator-max-microvolt = <3700000>;
};
+
+ wcn6750-pmu {
+ compatible = "qcom,wcn6750-pmu";
+ pinctrl-0 = <&bt_en>;
+ pinctrl-names = "default";
+ vddaon-supply = <&vreg_s7b_0p972>;
+ vddasd-supply = <&vreg_l11c_2p8>;
+ vddpmu-supply = <&vreg_s7b_0p972>;
+ vddrfa0p8-supply = <&vreg_s7b_0p972>;
+ vddrfa1p2-supply = <&vreg_s8b_1p272>;
+ vddrfa1p7-supply = <&vreg_s1b_1p872>;
+ vddrfa2p2-supply = <&vreg_s1c_2p19>;
+
+ bt-enable-gpios = <&tlmm 85 GPIO_ACTIVE_HIGH>;
+
+ regulators {
+ vreg_pmu_rfa_cmn: ldo0 {
+ regulator-name = "vreg_pmu_rfa_cmn";
+ };
+
+ vreg_pmu_aon_0p59: ldo1 {
+ regulator-name = "vreg_pmu_aon_0p59";
+ };
+
+ vreg_pmu_wlcx_0p8: ldo2 {
+ regulator-name = "vreg_pmu_wlcx_0p8";
+ };
+
+ vreg_pmu_wlmx_0p85: ldo3 {
+ regulator-name = "vreg_pmu_wlmx_0p85";
+ };
+
+ vreg_pmu_btcmx_0p85: ldo4 {
+ regulator-name = "vreg_pmu_btcmx_0p85";
+ };
+
+ vreg_pmu_rfa_0p8: ldo5 {
+ regulator-name = "vreg_pmu_rfa_0p8";
+ };
+
+ vreg_pmu_rfa_1p2: ldo6 {
+ regulator-name = "vreg_pmu_rfa_1p2";
+ };
+
+ vreg_pmu_rfa_1p7: ldo7 {
+ regulator-name = "vreg_pmu_rfa_1p7";
+ };
+
+ vreg_pmu_pcie_0p9: ldo8 {
+ regulator-name = "vreg_pmu_pcie_0p9";
+ };
+
+ vreg_pmu_pcie_1p8: ldo9 {
+ regulator-name = "vreg_pmu_pcie_1p8";
+ };
+ };
+ };
};
&apps_rsc {
@@ -799,6 +857,39 @@ &pon_resin {
status = "okay";
};
+&qup_uart7_cts {
+ /*
+ * Configure a bias-bus-hold on CTS to lower power
+ * usage when Bluetooth is turned off. Bus hold will
+ * maintain a low power state regardless of whether
+ * the Bluetooth module drives the pin in either
+ * direction or leaves the pin fully unpowered.
+ */
+ bias-bus-hold;
+};
+
+&qup_uart7_rts {
+ /* We'll drive RTS, so no pull */
+ drive-strength = <2>;
+ bias-disable;
+};
+
+&qup_uart7_rx {
+ /*
+ * Configure a pull-up on RX. This is needed to avoid
+ * garbage data when the TX pin of the Bluetooth module is
+ * in tri-state (module powered off or not driving the
+ * signal yet).
+ */
+ bias-pull-up;
+};
+
+&qup_uart7_tx {
+ /* We'll drive TX, so no pull */
+ drive-strength = <2>;
+ bias-disable;
+};
+
&qupv3_id_0 {
status = "okay";
};
@@ -842,12 +933,90 @@ &sdhc_2 {
&tlmm {
gpio-reserved-ranges = <32 2>, /* ADSP */
<48 4>; /* NFC */
+
+ bt_en: bt-en-state {
+ pins = "gpio85";
+ function = "gpio";
+ output-low;
+ bias-disable;
+ };
+
+ qup_uart7_sleep_cts: qup-uart7-sleep-cts-state {
+ pins = "gpio28";
+ function = "gpio";
+ /*
+ * Configure a bias-bus-hold on CTS to lower power
+ * usage when Bluetooth is turned off. Bus hold will
+ * maintain a low power state regardless of whether
+ * the Bluetooth module drives the pin in either
+ * direction or leaves the pin fully unpowered.
+ */
+ bias-bus-hold;
+ };
+
+ qup_uart7_sleep_rts: qup-uart7-sleep-rts-state {
+ pins = "gpio29";
+ function = "gpio";
+ /*
+ * Configure pull-down on RTS. As RTS is active low
+ * signal, pull it low to indicate the BT SoC that it
+ * can wakeup the system anytime from suspend state by
+ * pulling RX low (by sending wakeup bytes).
+ */
+ bias-pull-down;
+ };
+
+ qup_uart7_sleep_rx: qup-uart7-sleep-rx-state {
+ pins = "gpio31";
+ function = "gpio";
+ /*
+ * Configure a pull-up on RX. This is needed to avoid
+ * garbage data when the TX pin of the Bluetooth module
+ * is floating which may cause spurious wakeups.
+ */
+ bias-pull-up;
+ };
+
+ qup_uart7_sleep_tx: qup-uart7-sleep-tx-state {
+ pins = "gpio30";
+ function = "gpio";
+ /*
+ * Configure pull-up on TX when it isn't actively driven
+ * to prevent BT SoC from receiving garbage during sleep.
+ */
+ bias-pull-up;
+ };
};
&uart5 {
status = "okay";
};
+&uart7 {
+ /delete-property/ interrupts;
+ interrupts-extended = <&intc GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>,
+ <&tlmm 31 IRQ_TYPE_EDGE_FALLING>;
+ pinctrl-1 = <&qup_uart7_sleep_cts>,
+ <&qup_uart7_sleep_rts>,
+ <&qup_uart7_sleep_tx>,
+ <&qup_uart7_sleep_rx>;
+ pinctrl-names = "default",
+ "sleep";
+
+ status = "okay";
+
+ bluetooth: bluetooth {
+ compatible = "qcom,wcn6750-bt";
+ vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
+ vddaon-supply = <&vreg_pmu_aon_0p59>;
+ vddbtcmx-supply = <&vreg_pmu_btcmx_0p85>;
+ vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
+ vddrfa1p7-supply = <&vreg_pmu_rfa_1p7>;
+ vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
+ max-speed = <3200000>;
+ };
+};
+
&usb_1 {
status = "okay";
};
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v10 1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node
2025-02-21 17:10 ` [PATCH v10 1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node Janaki Ramaiah Thota
@ 2025-02-21 18:58 ` Konrad Dybcio
2025-02-21 19:16 ` Alexey Klimov
1 sibling, 0 replies; 6+ messages in thread
From: Konrad Dybcio @ 2025-02-21 18:58 UTC (permalink / raw)
To: Janaki Ramaiah Thota, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: quic_mohamull, quic_hbandi, quic_anubhavg, linux-arm-msm,
devicetree, linux-kernel
On 21.02.2025 6:10 PM, Janaki Ramaiah Thota wrote:
> Add the PMU node for WCN6750 present on the qcs6490-rb3gen
> board and assign its power outputs to the Bluetooth module.
>
> In WCN6750 module sw_ctrl and wifi-enable pins are handled
> in the wifi controller firmware. Therefore, it is not required
> to have those pins' entries in the PMU node.
>
> Signed-off-by: Janaki Ramaiah Thota <quic_janathot@quicinc.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v10 1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node
2025-02-21 17:10 ` [PATCH v10 1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node Janaki Ramaiah Thota
2025-02-21 18:58 ` Konrad Dybcio
@ 2025-02-21 19:16 ` Alexey Klimov
2025-02-22 14:59 ` Janaki Ramaiah Thota
1 sibling, 1 reply; 6+ messages in thread
From: Alexey Klimov @ 2025-02-21 19:16 UTC (permalink / raw)
To: Janaki Ramaiah Thota, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: quic_mohamull, quic_hbandi, quic_anubhavg, linux-arm-msm,
devicetree, linux-kernel
On Fri Feb 21, 2025 at 5:10 PM GMT, Janaki Ramaiah Thota wrote:
> Add the PMU node for WCN6750 present on the qcs6490-rb3gen
Is it rb3gen or rb3gen2? Also in the subject.
The file that you patch seems to be "rb3gen2".
> board and assign its power outputs to the Bluetooth module.
>
> In WCN6750 module sw_ctrl and wifi-enable pins are handled
> in the wifi controller firmware. Therefore, it is not required
> to have those pins' entries in the PMU node.
>
> Signed-off-by: Janaki Ramaiah Thota <quic_janathot@quicinc.com>
> ---
> arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 171 ++++++++++++++++++-
> 1 file changed, 170 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
> index 7a36c90ad4ec..de03770e0b90 100644
> --- a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
> +++ b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
[..]
Best regards,
Alexey
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v10 1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node
2025-02-21 19:16 ` Alexey Klimov
@ 2025-02-22 14:59 ` Janaki Ramaiah Thota
0 siblings, 0 replies; 6+ messages in thread
From: Janaki Ramaiah Thota @ 2025-02-22 14:59 UTC (permalink / raw)
To: Alexey Klimov, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: quic_mohamull, quic_hbandi, quic_anubhavg, linux-arm-msm,
devicetree, linux-kernel
On 2/22/2025 12:46 AM, Alexey Klimov wrote:
> On Fri Feb 21, 2025 at 5:10 PM GMT, Janaki Ramaiah Thota wrote:
>> Add the PMU node for WCN6750 present on the qcs6490-rb3gen
>
> Is it rb3gen or rb3gen2? Also in the subject.
>
> The file that you patch seems to be "rb3gen2".
>
Thanks for pointing out the typo, Alexey. Yes it is rb3gen2.
>> board and assign its power outputs to the Bluetooth module.
>>
>> In WCN6750 module sw_ctrl and wifi-enable pins are handled
>> in the wifi controller firmware. Therefore, it is not required
>> to have those pins' entries in the PMU node.
>>
>> Signed-off-by: Janaki Ramaiah Thota <quic_janathot@quicinc.com>
>> ---
>> arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 171 ++++++++++++++++++-
>> 1 file changed, 170 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
>> index 7a36c90ad4ec..de03770e0b90 100644
>> --- a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
>> +++ b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
>
> [..]
>
> Best regards,
> Alexey
Thanks,
Janakiram
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: (subset) [PATCH v10 0/1] Enable Bluetooth on qcs6490-rb3gen2 board
2025-02-21 17:10 [PATCH v10 0/1] Enable Bluetooth on qcs6490-rb3gen2 board Janaki Ramaiah Thota
2025-02-21 17:10 ` [PATCH v10 1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node Janaki Ramaiah Thota
@ 2025-02-25 18:18 ` Bjorn Andersson
1 sibling, 0 replies; 6+ messages in thread
From: Bjorn Andersson @ 2025-02-25 18:18 UTC (permalink / raw)
To: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Janaki Ramaiah Thota
Cc: quic_mohamull, quic_hbandi, quic_anubhavg, linux-arm-msm,
devicetree, linux-kernel
On Fri, 21 Feb 2025 22:40:13 +0530, Janaki Ramaiah Thota wrote:
> Patch 1/1
> Addressed review comments related to alignment in patch 1
>
> ----
> Changes from v9:
> * Addressed review comments provided Dmitry
> * Link to v9: https://lore.kernel.org/linux-arm-msm/20250220112945.3106086-1-quic_janathot@quicinc.com/
>
> [...]
Applied, thanks!
[1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node
commit: 914d16b4a9c4569cc8091a1dfda432dab2fcb9d1
Best regards,
--
Bjorn Andersson <andersson@kernel.org>
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2025-02-25 18:18 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-21 17:10 [PATCH v10 0/1] Enable Bluetooth on qcs6490-rb3gen2 board Janaki Ramaiah Thota
2025-02-21 17:10 ` [PATCH v10 1/1] arm64: dts: qcom: qcs6490-rb3gen: add and enable BT node Janaki Ramaiah Thota
2025-02-21 18:58 ` Konrad Dybcio
2025-02-21 19:16 ` Alexey Klimov
2025-02-22 14:59 ` Janaki Ramaiah Thota
2025-02-25 18:18 ` (subset) [PATCH v10 0/1] Enable Bluetooth on qcs6490-rb3gen2 board Bjorn Andersson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox