From 993555b5476cf02009c2ef5c21e8403baee945d1 Mon Sep 17 00:00:00 2001 From: Coia Prant Date: Thu, 2 Jul 2026 02:56:56 +0800 Subject: [PATCH] arm64: dts: rockchip: Add AP6275S support for 9Tripod X3568 v4 Add the missing Broadcom Wi-Fi and Bluetooth child nodes for the 9Tripod X3568 v4 board. The Bluetooth subnode is attached to uart8 with hardware flow control enabled via RTS/CTS pins. The Wi-Fi subnode is connected via the sdmmc2 bus. Additionally, change the status of the i2s3_2ch node to "disabled" since the required rk3568-codec-digital driver for Bluetooth audio is currently unavailable in the mainline tree. Signed-off-by: Coia Prant Link: https://patch.msgid.link/20260701185657.4092955-1-coiaprant@gmail.com Signed-off-by: Heiko Stuebner --- .../dts/rockchip/rk3568-9tripod-x3568-v4.dts | 56 +++++++++++++++++-- 1 file changed, 52 insertions(+), 4 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3568-9tripod-x3568-v4.dts b/arch/arm64/boot/dts/rockchip/rk3568-9tripod-x3568-v4.dts index 2ac4f72b1585..66f3cbb22a59 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-9tripod-x3568-v4.dts +++ b/arch/arm64/boot/dts/rockchip/rk3568-9tripod-x3568-v4.dts @@ -582,9 +582,9 @@ &i2s1_8ch { status = "okay"; }; -/* used for AP6275S Bluetooth Sound */ +/* required rk3568-codec-digital for AP6275S Bluetooth Sound */ &i2s3_2ch { - status = "okay"; + status = "disabled"; }; &mdio0 { @@ -664,6 +664,20 @@ &pdm { }; &pinctrl { + bluetooth { + bt_reg_on_h: bt-reg-on-h { + rockchip,pins = <3 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; + }; + + bt_wake_host_h: bt-wake-host-h { + rockchip,pins = <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_down>; + }; + + host_wake_bt_h: host-wake-bt-h { + rockchip,pins = <3 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + leds { led_work_en: led_work_en { rockchip,pins = <0 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>; @@ -699,6 +713,12 @@ vcc3v3_pcie_en_pin: vcc3v3-pcie-en-pin { rockchip,pins = <3 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>; }; }; + + wifi-irq { + wifi_host_wake_irq: wifi-host-wake-irq { + rockchip,pins = <3 RK_PD4 RK_FUNC_GPIO &pcfg_pull_down>; + }; + }; }; &pmu_io_domains { @@ -770,7 +790,19 @@ &sdmmc2 { sd-uhs-sdr104; vmmc-supply = <&vcc3v3_sys>; vqmmc-supply = <&vcc_1v8>; + #address-cells = <1>; + #size-cells = <0>; status = "okay"; + + wifi@1 { + compatible = "brcm,bcm43752-fmac", "brcm,bcm4329-fmac"; + reg = <1>; + interrupt-parent = <&gpio3>; + interrupts = ; + interrupt-names = "host-wake"; + pinctrl-names = "default"; + pinctrl-0 = <&wifi_host_wake_irq>; + }; }; &spdif { @@ -798,10 +830,26 @@ &uart4 { status = "okay"; }; -/* used for WiFi/BT AP6275S */ +/* used for AP6275S Bluetooth */ &uart8 { - pinctrl-0 = <&uart8m0_xfer &uart8m0_ctsn>; + dma-names = "tx", "rx"; + pinctrl-names = "default"; + pinctrl-0 = <&uart8m0_xfer &uart8m0_ctsn &uart8m0_rtsn>; + uart-has-rtscts; status = "okay"; + + bluetooth { + compatible = "brcm,bcm43438-bt"; + clocks = <&rk809 1>; + clock-names = "lpo"; + device-wakeup-gpios = <&gpio3 RK_PA2 GPIO_ACTIVE_HIGH>; + host-wakeup-gpios = <&gpio3 RK_PA1 GPIO_ACTIVE_HIGH>; + max-speed = <1500000>; + pinctrl-names = "default"; + pinctrl-0 = <&bt_reg_on_h &bt_wake_host_h &host_wake_bt_h>; + shutdown-gpios = <&gpio3 RK_PA0 GPIO_ACTIVE_HIGH>; + vddio-supply = <&vcc_1v8>; + }; }; &uart9 {