[PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support

Wei Deng posted 1 patch 1 month, 2 weeks ago
There is a newer version of this series
arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 26 +++++++++++++++++++++++
1 file changed, 26 insertions(+)
[PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support
Posted by Wei Deng 1 month, 2 weeks ago
Enable BT on qcs8300-ride by adding a BT device tree node.

Since the platform uses the QCA6698 Bluetooth chip. While
the QCA6698 shares the same IP core as the WCN6855, it has
different RF components and RAM sizes, requiring new firmware
files. Use the firmware-name property to specify the NVM and
rampatch firmware to load.

Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
---
This patch depends on:
- WLAN
https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/

Changes in v3:
- Rebase patches
- Remove unintended 'output-low' from bt-en-state pinctrl
- Use prerequisite-message-id to replace prerequisite-patch-id (Konrad)
- Link to v2: https://lore.kernel.org/all/20251118140406.1551669-2-wei.deng@oss.qualcomm.com/

Changes for v2
- Update commit message, add firmware name detail
- Reorganize patchset
- Link to v1: https://lore.kernel.org/all/20251113130942.2661069-1-wei.deng@oss.qualcomm.com/
---
 arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 26 +++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
index 2ede6efd1afd..03c01ae630b4 100644
--- a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
+++ b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
@@ -18,6 +18,7 @@ / {
 	aliases {
 		serial0 = &uart7;
 		mmc0 = &sdhc_1;
+		serial1 = &uart2;
 	};
 
 	chosen {
@@ -107,6 +108,7 @@ wcn6855-pmu {
 		vddpcie1p3-supply = <&vreg_conn_1p35>;
 		vddpcie1p9-supply = <&vreg_conn_1p95>;
 
+		bt-enable-gpios = <&tlmm 55 GPIO_ACTIVE_HIGH>;
 		wlan-enable-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>;
 
 		regulators {
@@ -559,6 +561,12 @@ &sdhc_1 {
 };
 
 &tlmm {
+	bt_en_state: bt-en-state {
+		pins = "gpio55";
+		function = "gpio";
+		bias-pull-down;
+	};
+
 	pcie0_default_state: pcie0-default-state {
 		wake-pins {
 			pins = "gpio0";
@@ -633,6 +641,24 @@ wlan_en_state: wlan-en-state {
 	};
 };
 
+&uart2 {
+	status = "okay";
+	bluetooth: bluetooth {
+		compatible = "qcom,wcn6855-bt";
+		firmware-name = "QCA6698/hpnv21", "QCA6698/hpbtfw21.tlv";
+		max-speed = <3200000>;
+
+		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
+		vddaon-supply = <&vreg_pmu_aon_0p59>;
+		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
+		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
+		vddbtcmx-supply = <&vreg_pmu_btcmx_0p85>;
+		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
+		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
+		vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
+	};
+};
+
 &uart7 {
 	status = "okay";
 };

base-commit: 7dff99b354601dd01829e1511711846e04340a69
prerequisite-message-id: 20260122053624.4068718-1-wei.zhang@oss.qualcomm.com
-- 
2.25.1
Re: [PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support
Posted by Krzysztof Kozlowski 1 month, 2 weeks ago
On 25/02/2026 10:17, Wei Deng wrote:
> Enable BT on qcs8300-ride by adding a BT device tree node.
> 
> Since the platform uses the QCA6698 Bluetooth chip. While
> the QCA6698 shares the same IP core as the WCN6855, it has
> different RF components and RAM sizes, requiring new firmware
> files. Use the firmware-name property to specify the NVM and
> rampatch firmware to load.
> 
> Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
> ---
> This patch depends on:
> - WLAN
> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/
> 


Which depends on 5 other patches. Send one complete Bluetooth+WLAN posting.

Best regards,
Krzysztof
Re: [PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support
Posted by Wei Deng 1 month, 2 weeks ago
Hi Krzysztof,

On 2/26/2026 5:18 PM, Krzysztof Kozlowski wrote:
> On 25/02/2026 10:17, Wei Deng wrote:
>> Enable BT on qcs8300-ride by adding a BT device tree node.
>>
>> Since the platform uses the QCA6698 Bluetooth chip. While
>> the QCA6698 shares the same IP core as the WCN6855, it has
>> different RF components and RAM sizes, requiring new firmware
>> files. Use the firmware-name property to specify the NVM and
>> rampatch firmware to load.
>>
>> Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
>> ---
>> This patch depends on:
>> - WLAN
>> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/
>>
> 
> 
> Which depends on 5 other patches. Send one complete Bluetooth+WLAN posting.

Thanks for the clarification.

The WLAN patch has just been reposted as a new v10:
https://lore.kernel.org/all/20260225071459.1600394-1-wei.zhang@oss.qualcomm.com/

This v10 no longer depends on the additional patches mentioned earlier.
Given this update, would it be acceptable if I re-submit the Bluetooth patch on top of this v10 WLAN change?

> 
> Best regards,
> Krzysztof

-- 
Best Regards,
Wei Deng
Re: [PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support
Posted by Dmitry Baryshkov 1 month, 2 weeks ago
On Wed, Feb 25, 2026 at 02:47:00PM +0530, Wei Deng wrote:
> Enable BT on qcs8300-ride by adding a BT device tree node.
> 
> Since the platform uses the QCA6698 Bluetooth chip. While
> the QCA6698 shares the same IP core as the WCN6855, it has
> different RF components and RAM sizes, requiring new firmware
> files. Use the firmware-name property to specify the NVM and
> rampatch firmware to load.
> 
> Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
> ---
> This patch depends on:
> - WLAN
> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/
> 
> Changes in v3:
> - Rebase patches
> - Remove unintended 'output-low' from bt-en-state pinctrl
> - Use prerequisite-message-id to replace prerequisite-patch-id (Konrad)
> - Link to v2: https://lore.kernel.org/all/20251118140406.1551669-2-wei.deng@oss.qualcomm.com/
> 
> Changes for v2
> - Update commit message, add firmware name detail
> - Reorganize patchset
> - Link to v1: https://lore.kernel.org/all/20251113130942.2661069-1-wei.deng@oss.qualcomm.com/
> ---
>  arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 26 +++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
> index 2ede6efd1afd..03c01ae630b4 100644
> --- a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
> +++ b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
> @@ -18,6 +18,7 @@ / {
>  	aliases {
>  		serial0 = &uart7;
>  		mmc0 = &sdhc_1;
> +		serial1 = &uart2;
>  	};
>  
>  	chosen {
> @@ -107,6 +108,7 @@ wcn6855-pmu {
>  		vddpcie1p3-supply = <&vreg_conn_1p35>;
>  		vddpcie1p9-supply = <&vreg_conn_1p95>;
>  
> +		bt-enable-gpios = <&tlmm 55 GPIO_ACTIVE_HIGH>;
>  		wlan-enable-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>;
>  
>  		regulators {
> @@ -559,6 +561,12 @@ &sdhc_1 {
>  };
>  
>  &tlmm {
> +	bt_en_state: bt-en-state {
> +		pins = "gpio55";
> +		function = "gpio";
> +		bias-pull-down;
> +	};
> +
>  	pcie0_default_state: pcie0-default-state {
>  		wake-pins {
>  			pins = "gpio0";
> @@ -633,6 +641,24 @@ wlan_en_state: wlan-en-state {
>  	};
>  };
>  
> +&uart2 {
> +	status = "okay";
> +	bluetooth: bluetooth {

Please add an empty line before the subnode.

> +		compatible = "qcom,wcn6855-bt";
> +		firmware-name = "QCA6698/hpnv21", "QCA6698/hpbtfw21.tlv";
> +		max-speed = <3200000>;
> +
> +		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
> +		vddaon-supply = <&vreg_pmu_aon_0p59>;
> +		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
> +		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
> +		vddbtcmx-supply = <&vreg_pmu_btcmx_0p85>;
> +		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
> +		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
> +		vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
> +	};
> +};
> +
>  &uart7 {
>  	status = "okay";
>  };
> 
> base-commit: 7dff99b354601dd01829e1511711846e04340a69
> prerequisite-message-id: 20260122053624.4068718-1-wei.zhang@oss.qualcomm.com
> -- 
> 2.25.1
> 

-- 
With best wishes
Dmitry
Re: [PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support
Posted by Wei Deng 1 month, 2 weeks ago
Hi Dmitry,

On 2/26/2026 10:27 AM, Dmitry Baryshkov wrote:
> On Wed, Feb 25, 2026 at 02:47:00PM +0530, Wei Deng wrote:
>> Enable BT on qcs8300-ride by adding a BT device tree node.
>>
>> Since the platform uses the QCA6698 Bluetooth chip. While
>> the QCA6698 shares the same IP core as the WCN6855, it has
>> different RF components and RAM sizes, requiring new firmware
>> files. Use the firmware-name property to specify the NVM and
>> rampatch firmware to load.
>>
>> Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
>> ---
>> This patch depends on:
>> - WLAN
>> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/
>>
>> Changes in v3:
>> - Rebase patches
>> - Remove unintended 'output-low' from bt-en-state pinctrl
>> - Use prerequisite-message-id to replace prerequisite-patch-id (Konrad)
>> - Link to v2: https://lore.kernel.org/all/20251118140406.1551669-2-wei.deng@oss.qualcomm.com/
>>
>> Changes for v2
>> - Update commit message, add firmware name detail
>> - Reorganize patchset
>> - Link to v1: https://lore.kernel.org/all/20251113130942.2661069-1-wei.deng@oss.qualcomm.com/
>> ---
>>  arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 26 +++++++++++++++++++++++
>>  1 file changed, 26 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
>> index 2ede6efd1afd..03c01ae630b4 100644
>> --- a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
>> +++ b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
>> @@ -18,6 +18,7 @@ / {
>>  	aliases {
>>  		serial0 = &uart7;
>>  		mmc0 = &sdhc_1;
>> +		serial1 = &uart2;
>>  	};
>>  
>>  	chosen {
>> @@ -107,6 +108,7 @@ wcn6855-pmu {
>>  		vddpcie1p3-supply = <&vreg_conn_1p35>;
>>  		vddpcie1p9-supply = <&vreg_conn_1p95>;
>>  
>> +		bt-enable-gpios = <&tlmm 55 GPIO_ACTIVE_HIGH>;
>>  		wlan-enable-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>;
>>  
>>  		regulators {
>> @@ -559,6 +561,12 @@ &sdhc_1 {
>>  };
>>  
>>  &tlmm {
>> +	bt_en_state: bt-en-state {
>> +		pins = "gpio55";
>> +		function = "gpio";
>> +		bias-pull-down;
>> +	};
>> +
>>  	pcie0_default_state: pcie0-default-state {
>>  		wake-pins {
>>  			pins = "gpio0";
>> @@ -633,6 +641,24 @@ wlan_en_state: wlan-en-state {
>>  	};
>>  };
>>  
>> +&uart2 {
>> +	status = "okay";
>> +	bluetooth: bluetooth {
> 
> Please add an empty line before the subnode.

Thanks, I’ll add an empty line before the subnode as suggested.

> 
>> +		compatible = "qcom,wcn6855-bt";
>> +		firmware-name = "QCA6698/hpnv21", "QCA6698/hpbtfw21.tlv";
>> +		max-speed = <3200000>;
>> +
>> +		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
>> +		vddaon-supply = <&vreg_pmu_aon_0p59>;
>> +		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
>> +		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
>> +		vddbtcmx-supply = <&vreg_pmu_btcmx_0p85>;
>> +		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
>> +		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
>> +		vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
>> +	};
>> +};
>> +
>>  &uart7 {
>>  	status = "okay";
>>  };
>>
>> base-commit: 7dff99b354601dd01829e1511711846e04340a69
>> prerequisite-message-id: 20260122053624.4068718-1-wei.zhang@oss.qualcomm.com
>> -- 
>> 2.25.1
>>
> 

-- 
Best Regards,
Wei Deng

Re: [PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support
Posted by Konrad Dybcio 1 month, 2 weeks ago
On 2/25/26 10:17 AM, Wei Deng wrote:
> Enable BT on qcs8300-ride by adding a BT device tree node.
> 
> Since the platform uses the QCA6698 Bluetooth chip. While
> the QCA6698 shares the same IP core as the WCN6855, it has
> different RF components and RAM sizes, requiring new firmware
> files. Use the firmware-name property to specify the NVM and
> rampatch firmware to load.
> 
> Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
> ---
> This patch depends on:
> - WLAN
> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/
> 
> Changes in v3:
> - Rebase patches
> - Remove unintended 'output-low' from bt-en-state pinctrl
> - Use prerequisite-message-id to replace prerequisite-patch-id (Konrad)

Only now did I realize you're the author of both patches!

Next time around, please keep them in the same series, for easier
tracking (since they're very much related)

[...]


> +&uart2 {
> +	status = "okay";
> +	bluetooth: bluetooth {

Ideally there'd be a newline separating the properties from the subnodes

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad
Re: [PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support
Posted by Wei Deng 1 month, 2 weeks ago
Hi Konrad,


On 2/25/2026 8:27 PM, Konrad Dybcio wrote:
> On 2/25/26 10:17 AM, Wei Deng wrote:
>> Enable BT on qcs8300-ride by adding a BT device tree node.
>>
>> Since the platform uses the QCA6698 Bluetooth chip. While
>> the QCA6698 shares the same IP core as the WCN6855, it has
>> different RF components and RAM sizes, requiring new firmware
>> files. Use the firmware-name property to specify the NVM and
>> rampatch firmware to load.
>>
>> Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
>> ---
>> This patch depends on:
>> - WLAN
>> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/
>>
>> Changes in v3:
>> - Rebase patches
>> - Remove unintended 'output-low' from bt-en-state pinctrl
>> - Use prerequisite-message-id to replace prerequisite-patch-id (Konrad)
> 
> Only now did I realize you're the author of both patches!
> 
> Next time around, please keep them in the same series, for easier
> tracking (since they're very much related)

Just to clarify — are you referring to the below WLAN-related patch and this one? 
https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/ 
If so, they are authored by different people. This BT-related patch depend on it.

> 
> [...]
> 
> 
>> +&uart2 {
>> +	status = "okay";
>> +	bluetooth: bluetooth {
> 
> Ideally there'd be a newline separating the properties from the subnodes
> 

Thanks, I’ll add an empty line before the subnode as suggested.

> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> 
> Konrad

-- 
Best Regards,
Wei Deng

Re: [PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support
Posted by Konrad Dybcio 1 month, 2 weeks ago
On 2/26/26 10:14 AM, Wei Deng wrote:
> Hi Konrad,
> 
> 
> On 2/25/2026 8:27 PM, Konrad Dybcio wrote:
>> On 2/25/26 10:17 AM, Wei Deng wrote:
>>> Enable BT on qcs8300-ride by adding a BT device tree node.
>>>
>>> Since the platform uses the QCA6698 Bluetooth chip. While
>>> the QCA6698 shares the same IP core as the WCN6855, it has
>>> different RF components and RAM sizes, requiring new firmware
>>> files. Use the firmware-name property to specify the NVM and
>>> rampatch firmware to load.
>>>
>>> Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
>>> ---
>>> This patch depends on:
>>> - WLAN
>>> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/
>>>
>>> Changes in v3:
>>> - Rebase patches
>>> - Remove unintended 'output-low' from bt-en-state pinctrl
>>> - Use prerequisite-message-id to replace prerequisite-patch-id (Konrad)
>>
>> Only now did I realize you're the author of both patches!
>>
>> Next time around, please keep them in the same series, for easier
>> tracking (since they're very much related)
> 
> Just to clarify — are you referring to the below WLAN-related patch and this one? 
> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/ 
> If so, they are authored by different people. This BT-related patch depend on it.

Right, I seem to only have read the first part of the name.. sorry about that!

Konrad
Re: [PATCH V3] arm64: dts: qcom: qcs8300-ride: Enable Bluetooth support
Posted by Wei Deng 1 month, 2 weeks ago
Hi Konrad,

On 2/26/2026 8:15 PM, Konrad Dybcio wrote:
> On 2/26/26 10:14 AM, Wei Deng wrote:
>> Hi Konrad,
>>
>>
>> On 2/25/2026 8:27 PM, Konrad Dybcio wrote:
>>> On 2/25/26 10:17 AM, Wei Deng wrote:
>>>> Enable BT on qcs8300-ride by adding a BT device tree node.
>>>>
>>>> Since the platform uses the QCA6698 Bluetooth chip. While
>>>> the QCA6698 shares the same IP core as the WCN6855, it has
>>>> different RF components and RAM sizes, requiring new firmware
>>>> files. Use the firmware-name property to specify the NVM and
>>>> rampatch firmware to load.
>>>>
>>>> Signed-off-by: Wei Deng <wei.deng@oss.qualcomm.com>
>>>> ---
>>>> This patch depends on:
>>>> - WLAN
>>>> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/
>>>>
>>>> Changes in v3:
>>>> - Rebase patches
>>>> - Remove unintended 'output-low' from bt-en-state pinctrl
>>>> - Use prerequisite-message-id to replace prerequisite-patch-id (Konrad)
>>>
>>> Only now did I realize you're the author of both patches!
>>>
>>> Next time around, please keep them in the same series, for easier
>>> tracking (since they're very much related)
>>
>> Just to clarify — are you referring to the below WLAN-related patch and this one? 
>> https://lore.kernel.org/all/20260122053624.4068718-1-wei.zhang@oss.qualcomm.com/ 
>> If so, they are authored by different people. This BT-related patch depend on it.
> 
> Right, I seem to only have read the first part of the name.. sorry about that!

No problem at all, thanks for the clarification!
Appreciate you pointing this out — we’re aligned now.
Thanks!

> 
> Konrad

-- 
Best Regards,
Wei Deng