On Wed, 24 Apr 2024 23:09:46 +1200 Ryan Walklin <ryan@xxxxxxxxxxxxx> wrote: Hi, > The RG35XX-Plus adds a RTL8221CS SDIO Wifi/BT chip to the RG35XX (2024). > > Enabled in this DTS: > - WiFi > - Bluetooth > - Supporting power sequence and GPIOs > > Signed-off-by: Ryan Walklin <ryan@xxxxxxxxxxxxx> > --- > Changelog v1..v2: > - Update copyright > - Spaces -> Tabs > - Remove redundant &uart0 node and DTS version tag > - Add GPIO bank comments > - Use generic pwrseq name > > Changelog v2..v3: > - Add DTB to Makefile > - Correct Wifi vqmmc-supply to ALDO4 > - Move changelog below fold-line > > --- > arch/arm64/boot/dts/allwinner/Makefile | 1 + > .../sun50i-h700-anbernic-rg35xx-plus.dts | 53 +++++++++++++++++++ > 2 files changed, 54 insertions(+) > create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-plus.dts > > diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile > index 6f997157968e..4217328b1889 100644 > --- a/arch/arm64/boot/dts/allwinner/Makefile > +++ b/arch/arm64/boot/dts/allwinner/Makefile > @@ -48,3 +48,4 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h618-orangepi-zero2w.dtb > dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h618-orangepi-zero3.dtb > dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h618-transpeed-8k618-t.dtb > dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h700-anbernic-rg35xx-2024.dtb > +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h700-anbernic-rg35xx-plus.dtb > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-plus.dts b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-plus.dts > new file mode 100644 > index 000000000000..7e9d45eccb10 > --- /dev/null > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-plus.dts > @@ -0,0 +1,53 @@ > +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +/* > + * Copyright (C) 2024 Ryan Walklin <ryan@xxxxxxxxxxxxx>. > + */ > + > +#include "sun50i-h700-anbernic-rg35xx-2024.dts" > + > +/ { > + model = "Anbernic RG35XX Plus"; > + compatible = "anbernic,rg35xx-plus", "allwinner,sun50i-h700"; > + > + wifi_pwrseq: pwrseq { > + compatible = "mmc-pwrseq-simple"; > + clocks = <&rtc CLK_OSC32K_FANOUT>; > + clock-names = "ext_clock"; > + pinctrl-0 = <&x32clk_fanout_pin>; > + pinctrl-names = "default"; > + post-power-on-delay-ms = <200>; > + reset-gpios = <&pio 6 18 GPIO_ACTIVE_LOW>; /* PG18 */ > + }; > +}; > + > +/* SDIO WiFi RTL8821CS */ > +&mmc1 { > + vmmc-supply = <®_cldo4>; > + vqmmc-supply = <®_aldo4>; > + mmc-pwrseq = <&wifi_pwrseq>; > + bus-width = <4>; > + non-removable; > + status = "okay"; > + > + sdio_wifi: wifi@1 { > + reg = <1>; > + interrupt-parent = <&pio>; > + interrupts = <6 15 IRQ_TYPE_LEVEL_LOW>; /* PG15 */ > + interrupt-names = "host-wake"; Those four lines here need to be indented with two tabs. With that fixed: Reviewed-by: Andre Przywara <andre.przywara@xxxxxxx> Cheers, Andre > + }; > +}; > + > +/* Bluetooth RTL8821CS */ > +&uart1 { > + pinctrl-names = "default"; > + pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; > + uart-has-rtscts; > + status = "okay"; > + > + bluetooth { > + compatible = "realtek,rtl8821cs-bt", "realtek,rtl8723bs-bt"; > + device-wake-gpios = <&pio 6 17 GPIO_ACTIVE_HIGH>; /* PG17 */ > + enable-gpios = <&pio 6 19 GPIO_ACTIVE_HIGH>; /* PG19 */ > + host-wake-gpios = <&pio 6 16 GPIO_ACTIVE_HIGH>; /* PG16 */ > + }; > +};