Enable BT on qcs8300-ride by adding a node for the BT module. Since the platform uses the QCA6698 Bluetooth chip. While the QCA6698 shares th 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: Cheng Jiang <quic_chejiang@xxxxxxxxxxx> --- arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 24 +++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts index a6991e8e2df6..93458773b72d 100644 --- a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts +++ b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts @@ -17,6 +17,7 @@ / { aliases { serial0 = &uart7; + serial1 = &uart2; }; chosen { @@ -451,6 +452,13 @@ &serdes0 { }; &tlmm { + bt_en_state: bt-en-state { + pins = "gpio55"; + function = "normal"; + output-low; + bias-pull-down; + }; + ethernet0_default: ethernet0-default-state { ethernet0_mdc: ethernet0-mdc-pins { pins = "gpio5"; @@ -544,6 +552,22 @@ wlan_en_state: wlan-en-state { }; }; +&uart2 { + status = "okay"; + bluetooth: bluetooth { + compatible = "qcom,wcn6855-bt"; + firmware-name = "QCA6698/hpnv21", "QCA6698/hpbtfw21.tlv"; + + pinctrl-names = "default"; + pinctrl-0 = <&bt_en_state>; + enable-gpios = <&tlmm 55 GPIO_ACTIVE_HIGH>; /* BT_EN */ + + vddio-supply = <&vreg_conn_pa>; /* bt-vdd-ctrl1-supply */ + vddbtcxmx-supply = <&vreg_conn_1p8>; /* bt-vdd-ctrl2-supply */ + max-speed = <3200000>; + }; +}; + &uart7 { status = "okay"; }; -- 2.34.1