On Sat, 20 Apr 2024 22:43:57 +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 > > Changelog v1..v2: > - Update copyright > - Spaces -> Tabs > - Remove redundant &uart0 node and DTS version tag > - Add GPIO bank comments > - Use generic pwrseq name > > Signed-off-by: Ryan Walklin <ryan@xxxxxxxxxxxxx> > --- > .../sun50i-h700-anbernic-rg35xx-plus.dts | 53 +++++++++++++++++++ > 1 file changed, 53 insertions(+) > create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-plus.dts > > 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..67ba1c7bb3ca > --- /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 = <®_pll_dcx0>; It would be great to confirm what the I/O voltage for MMC1/WiFi really is, 1.8V or 3.3V? Is someone with a board able to measure this? The rest looks good to me, thanks for the changes. Cheers, Andre > + 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"; > + }; > +}; > + > +/* 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 */ > + }; > +};