Message ID | 20230320005249.13403-5-andre.przywara@arm.com (mailing list archive) |
---|---|
State | Handled Elsewhere |
Headers | show |
Series | ARM: dts: sunxi: Add MangoPi MQ-R board support | expand |
Context | Check | Description |
---|---|---|
conchuod/cover_letter | success | Series has a cover letter |
conchuod/tree_selection | success | Guessed tree name to be for-next |
conchuod/fixes_present | success | Fixes tag not required for -next series |
conchuod/maintainers_pattern | success | MAINTAINERS pattern errors before the patch: 1 and now 1 |
conchuod/verify_signedoff | success | Signed-off-by tag matches author and committer |
conchuod/kdoc | success | Errors and warnings before: 0 this patch: 0 |
conchuod/build_rv64_clang_allmodconfig | success | Errors and warnings before: 18 this patch: 18 |
conchuod/module_param | success | Was 0 now: 0 |
conchuod/build_rv64_gcc_allmodconfig | success | Errors and warnings before: 18 this patch: 18 |
conchuod/build_rv32_defconfig | success | Build OK |
conchuod/dtb_warn_rv64 | success | Errors and warnings before: 3 this patch: 3 |
conchuod/header_inline | success | No static functions without inline keyword in header files |
conchuod/checkpatch | warning | WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? |
conchuod/source_inline | success | Was 0 now: 0 |
conchuod/build_rv64_nommu_k210_defconfig | success | Build OK |
conchuod/verify_fixes | success | No Fixes tag |
conchuod/build_rv64_nommu_virt_defconfig | success | Build OK |
Dne ponedeljek, 20. marec 2023 ob 01:52:49 CET je Andre Przywara napisal(a): > The MangoPi MQ-R-T113 is a small SBC with the Allwinner T113-s3 SoC. > The SoC features two Arm Cortex-A7 cores and 128 MB of co-packaged DDR3 > DRAM. The board adds mostly connectors and the required regulators, plus > a Realtek RTL8189FTV WiFi chip. > Power comes in via a USB-C connector wired as a peripheral, and there is > a second USB-C connector usable as a host port. > > Add a .dtsi file describing most of the board's peripherals, and include > that from the actual board .dts file. This allows to re-use the .dtsi > for the MQ-R-F113 RISC-V variant of that board. > > Signed-off-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com> Best regards, Jernej
On Mon, Mar 20, 2023 at 1:53 AM Andre Przywara <andre.przywara@arm.com> wrote: > > The MangoPi MQ-R-T113 is a small SBC with the Allwinner T113-s3 SoC. > The SoC features two Arm Cortex-A7 cores and 128 MB of co-packaged DDR3 > DRAM. The board adds mostly connectors and the required regulators, plus > a Realtek RTL8189FTV WiFi chip. > Power comes in via a USB-C connector wired as a peripheral, and there is > a second USB-C connector usable as a host port. > > Add a .dtsi file describing most of the board's peripherals, and include > that from the actual board .dts file. This allows to re-use the .dtsi > for the MQ-R-F113 RISC-V variant of that board. > > Signed-off-by: Andre Przywara <andre.przywara@arm.com> > --- > arch/arm/boot/dts/Makefile | 1 + > .../dts/sun8i-t113s-mangopi-mq-r-t113.dts | 35 +++++ > .../boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi | 126 ++++++++++++++++++ > 3 files changed, 162 insertions(+) > create mode 100644 arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts > create mode 100644 arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi > > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile > index efe4152e5846d..3367e24146da8 100644 > --- a/arch/arm/boot/dts/Makefile > +++ b/arch/arm/boot/dts/Makefile > @@ -1397,6 +1397,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \ > sun8i-s3-elimo-initium.dtb \ > sun8i-s3-lichee-zero-plus.dtb \ > sun8i-s3-pinecube.dtb \ > + sun8i-t113s-mangopi-mq-r-t113.dtb \ > sun8i-t3-cqa3t-bv3.dtb \ > sun8i-v3-sl631-imx179.dtb \ > sun8i-v3s-licheepi-zero.dtb \ > diff --git a/arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts b/arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts > new file mode 100644 > index 0000000000000..94e24b5926dd7 > --- /dev/null > +++ b/arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts > @@ -0,0 +1,35 @@ > +// SPDX-License-Identifier: (GPL-2.0+ or MIT) > +// Copyright (C) 2022 Arm Ltd. > + > +#include <dt-bindings/interrupt-controller/irq.h> > + > +/dts-v1/; > + > +#include "sun8i-t113s.dtsi" > +#include "sunxi-d1s-t113-mangopi-mq-r.dtsi" > + > +/ { > + model = "MangoPi MQ-R-T113"; > + compatible = "widora,mangopi-mq-r-t113", "allwinner,sun8i-t113s"; > + > + aliases { > + ethernet0 = &rtl8189ftv; > + }; > +}; > + > +&cpu0 { > + cpu-supply = <®_vcc_core>; > +}; > + > +&cpu1 { > + cpu-supply = <®_vcc_core>; > +}; Tested on MQ-R-T113 Mangopi on top of 6.3-rc3 and on booted system I have only one CPU available: root@t113:~# cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 5 (v7l) BogoMIPS : 48.00 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 5 Hardware : Generic DT based system Revision : 0000 Serial : 9340600081169098 bootlog shows: [ 0.003515] /cpus/cpu@0 missing clock-frequency property [ 0.003601] /cpus/cpu@1 missing clock-frequency property [ 0.003640] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 > + > +&mmc1 { > + rtl8189ftv: wifi@1 { > + reg = <1>; > + interrupt-parent = <&pio>; > + interrupts = <6 10 IRQ_TYPE_LEVEL_LOW>; /* PG10 = WL_WAKE_AP */ > + interrupt-names = "host-wake"; > + }; > +}; > diff --git a/arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi b/arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi > new file mode 100644 > index 0000000000000..e9bc749488bb2 > --- /dev/null > +++ b/arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi > @@ -0,0 +1,126 @@ > +// SPDX-License-Identifier: (GPL-2.0+ or MIT) > +// Copyright (C) 2022 Arm Ltd. > +/* > + * Common peripherals and configurations for MangoPi MQ-R boards. > + */ > + > +#include <dt-bindings/gpio/gpio.h> > +#include <dt-bindings/leds/common.h> > + > +/ { > + aliases { > + serial3 = &uart3; > + }; > + > + chosen { > + stdout-path = "serial3:115200n8"; > + }; > + > + leds { > + compatible = "gpio-leds"; > + > + led-0 { > + color = <LED_COLOR_ID_BLUE>; > + function = LED_FUNCTION_STATUS; > + gpios = <&pio 3 22 GPIO_ACTIVE_LOW>; /* PD22 */ > + }; > + }; > + > + /* board wide 5V supply directly from the USB-C socket */ > + reg_vcc5v: regulator-5v { > + compatible = "regulator-fixed"; > + regulator-name = "vcc-5v"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-always-on; > + }; > + > + /* SY8008 DC/DC regulator on the board */ > + reg_3v3: regulator-3v3 { > + compatible = "regulator-fixed"; > + regulator-name = "vcc-3v3"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + vin-supply = <®_vcc5v>; > + }; > + > + /* SY8008 DC/DC regulator on the board, also supplying VDD-SYS */ > + reg_vcc_core: regulator-core { > + compatible = "regulator-fixed"; > + regulator-name = "vcc-core"; > + regulator-min-microvolt = <880000>; > + regulator-max-microvolt = <880000>; > + vin-supply = <®_vcc5v>; > + }; > + > + /* XC6206 LDO on the board */ > + reg_avdd2v8: regulator-avdd { > + compatible = "regulator-fixed"; > + regulator-name = "avdd2v8"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + vin-supply = <®_3v3>; > + }; > + > + wifi_pwrseq: wifi-pwrseq { > + compatible = "mmc-pwrseq-simple"; > + reset-gpios = <&pio 6 12 GPIO_ACTIVE_LOW>; /* PG12 */ > + }; > +}; > + > +&dcxo { > + clock-frequency = <24000000>; > +}; > + > +&ehci1 { > + status = "okay"; > +}; > + > +&mmc0 { > + pinctrl-0 = <&mmc0_pins>; > + pinctrl-names = "default"; > + vmmc-supply = <®_3v3>; > + cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; > + disable-wp; > + bus-width = <4>; > + status = "okay"; > +}; > + > +&mmc1 { > + pinctrl-0 = <&mmc1_pins>; > + pinctrl-names = "default"; > + vmmc-supply = <®_3v3>; > + non-removable; > + bus-width = <4>; > + mmc-pwrseq = <&wifi_pwrseq>; > + status = "okay"; > +}; > + > +&ohci1 { > + status = "okay"; > +}; > + > +&pio { > + vcc-pb-supply = <®_3v3>; > + vcc-pd-supply = <®_3v3>; > + vcc-pe-supply = <®_avdd2v8>; > + vcc-pf-supply = <®_3v3>; > + vcc-pg-supply = <®_3v3>; > +}; > + > +&uart3 { > + pinctrl-names = "default"; > + pinctrl-0 = <&uart3_pb_pins>; > + status = "okay"; > +}; > + > +/* The USB-C socket has its CC pins pulled to GND, so is hardwired as a UFP. */ > +&usb_otg { > + dr_mode = "peripheral"; > + status = "okay"; > +}; > + > +&usbphy { > + usb1_vbus-supply = <®_vcc5v>; > + status = "okay"; > +}; > -- > 2.35.7 > BR, marek
On Mon, 27 Mar 2023 10:30:33 +0200 Belisko Marek <marek.belisko@gmail.com> wrote: Hi Marek, thanks for testing! > On Mon, Mar 20, 2023 at 1:53 AM Andre Przywara <andre.przywara@arm.com> wrote: > > > > The MangoPi MQ-R-T113 is a small SBC with the Allwinner T113-s3 SoC. > > The SoC features two Arm Cortex-A7 cores and 128 MB of co-packaged DDR3 > > DRAM. The board adds mostly connectors and the required regulators, plus > > a Realtek RTL8189FTV WiFi chip. > > Power comes in via a USB-C connector wired as a peripheral, and there is > > a second USB-C connector usable as a host port. > > > > Add a .dtsi file describing most of the board's peripherals, and include > > that from the actual board .dts file. This allows to re-use the .dtsi > > for the MQ-R-F113 RISC-V variant of that board. > > > > Signed-off-by: Andre Przywara <andre.przywara@arm.com> > > --- > > arch/arm/boot/dts/Makefile | 1 + > > .../dts/sun8i-t113s-mangopi-mq-r-t113.dts | 35 +++++ > > .../boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi | 126 ++++++++++++++++++ > > 3 files changed, 162 insertions(+) > > create mode 100644 arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts > > create mode 100644 arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi > > > > diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile > > index efe4152e5846d..3367e24146da8 100644 > > --- a/arch/arm/boot/dts/Makefile > > +++ b/arch/arm/boot/dts/Makefile > > @@ -1397,6 +1397,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \ > > sun8i-s3-elimo-initium.dtb \ > > sun8i-s3-lichee-zero-plus.dtb \ > > sun8i-s3-pinecube.dtb \ > > + sun8i-t113s-mangopi-mq-r-t113.dtb \ > > sun8i-t3-cqa3t-bv3.dtb \ > > sun8i-v3-sl631-imx179.dtb \ > > sun8i-v3s-licheepi-zero.dtb \ > > diff --git a/arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts b/arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts > > new file mode 100644 > > index 0000000000000..94e24b5926dd7 > > --- /dev/null > > +++ b/arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts > > @@ -0,0 +1,35 @@ > > +// SPDX-License-Identifier: (GPL-2.0+ or MIT) > > +// Copyright (C) 2022 Arm Ltd. > > + > > +#include <dt-bindings/interrupt-controller/irq.h> > > + > > +/dts-v1/; > > + > > +#include "sun8i-t113s.dtsi" > > +#include "sunxi-d1s-t113-mangopi-mq-r.dtsi" > > + > > +/ { > > + model = "MangoPi MQ-R-T113"; > > + compatible = "widora,mangopi-mq-r-t113", "allwinner,sun8i-t113s"; > > + > > + aliases { > > + ethernet0 = &rtl8189ftv; > > + }; > > +}; > > + > > +&cpu0 { > > + cpu-supply = <®_vcc_core>; > > +}; > > + > > +&cpu1 { > > + cpu-supply = <®_vcc_core>; > > +}; > Tested on MQ-R-T113 Mangopi on top of 6.3-rc3 and on booted system I > have only one CPU available: Right, thanks for the heads up. The reason is that the current U-Boot branch does not enable PSCI services, so the kernel does not know how to enable and online the second core. As with the other 32-bit parts, the PSCI nodes and properties get inserted into the DT by U-Boot, at runtime: arch/arm/lib/psci-dt.c:fdt_psci(). It should be fairly straight-forward to enable that in U-Boot, I will try to look into this later this week. Cheers, Andre > root@t113:~# cat /proc/cpuinfo > processor : 0 > model name : ARMv7 Processor rev 5 (v7l) > BogoMIPS : 48.00 > Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 > idiva idivt vfpd32 lpae evtstrm > CPU implementer : 0x41 > CPU architecture: 7 > CPU variant : 0x0 > CPU part : 0xc07 > CPU revision : 5 > > Hardware : Generic DT based system > Revision : 0000 > Serial : 9340600081169098 > > bootlog shows: > [ 0.003515] /cpus/cpu@0 missing clock-frequency property > [ 0.003601] /cpus/cpu@1 missing clock-frequency property > [ 0.003640] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 > > > + > > +&mmc1 { > > + rtl8189ftv: wifi@1 { > > + reg = <1>; > > + interrupt-parent = <&pio>; > > + interrupts = <6 10 IRQ_TYPE_LEVEL_LOW>; /* PG10 = WL_WAKE_AP */ > > + interrupt-names = "host-wake"; > > + }; > > +}; > > diff --git a/arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi b/arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi > > new file mode 100644 > > index 0000000000000..e9bc749488bb2 > > --- /dev/null > > +++ b/arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi > > @@ -0,0 +1,126 @@ > > +// SPDX-License-Identifier: (GPL-2.0+ or MIT) > > +// Copyright (C) 2022 Arm Ltd. > > +/* > > + * Common peripherals and configurations for MangoPi MQ-R boards. > > + */ > > + > > +#include <dt-bindings/gpio/gpio.h> > > +#include <dt-bindings/leds/common.h> > > + > > +/ { > > + aliases { > > + serial3 = &uart3; > > + }; > > + > > + chosen { > > + stdout-path = "serial3:115200n8"; > > + }; > > + > > + leds { > > + compatible = "gpio-leds"; > > + > > + led-0 { > > + color = <LED_COLOR_ID_BLUE>; > > + function = LED_FUNCTION_STATUS; > > + gpios = <&pio 3 22 GPIO_ACTIVE_LOW>; /* PD22 */ > > + }; > > + }; > > + > > + /* board wide 5V supply directly from the USB-C socket */ > > + reg_vcc5v: regulator-5v { > > + compatible = "regulator-fixed"; > > + regulator-name = "vcc-5v"; > > + regulator-min-microvolt = <5000000>; > > + regulator-max-microvolt = <5000000>; > > + regulator-always-on; > > + }; > > + > > + /* SY8008 DC/DC regulator on the board */ > > + reg_3v3: regulator-3v3 { > > + compatible = "regulator-fixed"; > > + regulator-name = "vcc-3v3"; > > + regulator-min-microvolt = <3300000>; > > + regulator-max-microvolt = <3300000>; > > + vin-supply = <®_vcc5v>; > > + }; > > + > > + /* SY8008 DC/DC regulator on the board, also supplying VDD-SYS */ > > + reg_vcc_core: regulator-core { > > + compatible = "regulator-fixed"; > > + regulator-name = "vcc-core"; > > + regulator-min-microvolt = <880000>; > > + regulator-max-microvolt = <880000>; > > + vin-supply = <®_vcc5v>; > > + }; > > + > > + /* XC6206 LDO on the board */ > > + reg_avdd2v8: regulator-avdd { > > + compatible = "regulator-fixed"; > > + regulator-name = "avdd2v8"; > > + regulator-min-microvolt = <2800000>; > > + regulator-max-microvolt = <2800000>; > > + vin-supply = <®_3v3>; > > + }; > > + > > + wifi_pwrseq: wifi-pwrseq { > > + compatible = "mmc-pwrseq-simple"; > > + reset-gpios = <&pio 6 12 GPIO_ACTIVE_LOW>; /* PG12 */ > > + }; > > +}; > > + > > +&dcxo { > > + clock-frequency = <24000000>; > > +}; > > + > > +&ehci1 { > > + status = "okay"; > > +}; > > + > > +&mmc0 { > > + pinctrl-0 = <&mmc0_pins>; > > + pinctrl-names = "default"; > > + vmmc-supply = <®_3v3>; > > + cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; > > + disable-wp; > > + bus-width = <4>; > > + status = "okay"; > > +}; > > + > > +&mmc1 { > > + pinctrl-0 = <&mmc1_pins>; > > + pinctrl-names = "default"; > > + vmmc-supply = <®_3v3>; > > + non-removable; > > + bus-width = <4>; > > + mmc-pwrseq = <&wifi_pwrseq>; > > + status = "okay"; > > +}; > > + > > +&ohci1 { > > + status = "okay"; > > +}; > > + > > +&pio { > > + vcc-pb-supply = <®_3v3>; > > + vcc-pd-supply = <®_3v3>; > > + vcc-pe-supply = <®_avdd2v8>; > > + vcc-pf-supply = <®_3v3>; > > + vcc-pg-supply = <®_3v3>; > > +}; > > + > > +&uart3 { > > + pinctrl-names = "default"; > > + pinctrl-0 = <&uart3_pb_pins>; > > + status = "okay"; > > +}; > > + > > +/* The USB-C socket has its CC pins pulled to GND, so is hardwired as a UFP. */ > > +&usb_otg { > > + dr_mode = "peripheral"; > > + status = "okay"; > > +}; > > + > > +&usbphy { > > + usb1_vbus-supply = <®_vcc5v>; > > + status = "okay"; > > +}; > > -- > > 2.35.7 > > > > BR, > > marek >
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index efe4152e5846d..3367e24146da8 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -1397,6 +1397,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \ sun8i-s3-elimo-initium.dtb \ sun8i-s3-lichee-zero-plus.dtb \ sun8i-s3-pinecube.dtb \ + sun8i-t113s-mangopi-mq-r-t113.dtb \ sun8i-t3-cqa3t-bv3.dtb \ sun8i-v3-sl631-imx179.dtb \ sun8i-v3s-licheepi-zero.dtb \ diff --git a/arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts b/arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts new file mode 100644 index 0000000000000..94e24b5926dd7 --- /dev/null +++ b/arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts @@ -0,0 +1,35 @@ +// SPDX-License-Identifier: (GPL-2.0+ or MIT) +// Copyright (C) 2022 Arm Ltd. + +#include <dt-bindings/interrupt-controller/irq.h> + +/dts-v1/; + +#include "sun8i-t113s.dtsi" +#include "sunxi-d1s-t113-mangopi-mq-r.dtsi" + +/ { + model = "MangoPi MQ-R-T113"; + compatible = "widora,mangopi-mq-r-t113", "allwinner,sun8i-t113s"; + + aliases { + ethernet0 = &rtl8189ftv; + }; +}; + +&cpu0 { + cpu-supply = <®_vcc_core>; +}; + +&cpu1 { + cpu-supply = <®_vcc_core>; +}; + +&mmc1 { + rtl8189ftv: wifi@1 { + reg = <1>; + interrupt-parent = <&pio>; + interrupts = <6 10 IRQ_TYPE_LEVEL_LOW>; /* PG10 = WL_WAKE_AP */ + interrupt-names = "host-wake"; + }; +}; diff --git a/arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi b/arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi new file mode 100644 index 0000000000000..e9bc749488bb2 --- /dev/null +++ b/arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi @@ -0,0 +1,126 @@ +// SPDX-License-Identifier: (GPL-2.0+ or MIT) +// Copyright (C) 2022 Arm Ltd. +/* + * Common peripherals and configurations for MangoPi MQ-R boards. + */ + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/leds/common.h> + +/ { + aliases { + serial3 = &uart3; + }; + + chosen { + stdout-path = "serial3:115200n8"; + }; + + leds { + compatible = "gpio-leds"; + + led-0 { + color = <LED_COLOR_ID_BLUE>; + function = LED_FUNCTION_STATUS; + gpios = <&pio 3 22 GPIO_ACTIVE_LOW>; /* PD22 */ + }; + }; + + /* board wide 5V supply directly from the USB-C socket */ + reg_vcc5v: regulator-5v { + compatible = "regulator-fixed"; + regulator-name = "vcc-5v"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-always-on; + }; + + /* SY8008 DC/DC regulator on the board */ + reg_3v3: regulator-3v3 { + compatible = "regulator-fixed"; + regulator-name = "vcc-3v3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <®_vcc5v>; + }; + + /* SY8008 DC/DC regulator on the board, also supplying VDD-SYS */ + reg_vcc_core: regulator-core { + compatible = "regulator-fixed"; + regulator-name = "vcc-core"; + regulator-min-microvolt = <880000>; + regulator-max-microvolt = <880000>; + vin-supply = <®_vcc5v>; + }; + + /* XC6206 LDO on the board */ + reg_avdd2v8: regulator-avdd { + compatible = "regulator-fixed"; + regulator-name = "avdd2v8"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + vin-supply = <®_3v3>; + }; + + wifi_pwrseq: wifi-pwrseq { + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&pio 6 12 GPIO_ACTIVE_LOW>; /* PG12 */ + }; +}; + +&dcxo { + clock-frequency = <24000000>; +}; + +&ehci1 { + status = "okay"; +}; + +&mmc0 { + pinctrl-0 = <&mmc0_pins>; + pinctrl-names = "default"; + vmmc-supply = <®_3v3>; + cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; + disable-wp; + bus-width = <4>; + status = "okay"; +}; + +&mmc1 { + pinctrl-0 = <&mmc1_pins>; + pinctrl-names = "default"; + vmmc-supply = <®_3v3>; + non-removable; + bus-width = <4>; + mmc-pwrseq = <&wifi_pwrseq>; + status = "okay"; +}; + +&ohci1 { + status = "okay"; +}; + +&pio { + vcc-pb-supply = <®_3v3>; + vcc-pd-supply = <®_3v3>; + vcc-pe-supply = <®_avdd2v8>; + vcc-pf-supply = <®_3v3>; + vcc-pg-supply = <®_3v3>; +}; + +&uart3 { + pinctrl-names = "default"; + pinctrl-0 = <&uart3_pb_pins>; + status = "okay"; +}; + +/* The USB-C socket has its CC pins pulled to GND, so is hardwired as a UFP. */ +&usb_otg { + dr_mode = "peripheral"; + status = "okay"; +}; + +&usbphy { + usb1_vbus-supply = <®_vcc5v>; + status = "okay"; +};
The MangoPi MQ-R-T113 is a small SBC with the Allwinner T113-s3 SoC. The SoC features two Arm Cortex-A7 cores and 128 MB of co-packaged DDR3 DRAM. The board adds mostly connectors and the required regulators, plus a Realtek RTL8189FTV WiFi chip. Power comes in via a USB-C connector wired as a peripheral, and there is a second USB-C connector usable as a host port. Add a .dtsi file describing most of the board's peripherals, and include that from the actual board .dts file. This allows to re-use the .dtsi for the MQ-R-F113 RISC-V variant of that board. Signed-off-by: Andre Przywara <andre.przywara@arm.com> --- arch/arm/boot/dts/Makefile | 1 + .../dts/sun8i-t113s-mangopi-mq-r-t113.dts | 35 +++++ .../boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi | 126 ++++++++++++++++++ 3 files changed, 162 insertions(+) create mode 100644 arch/arm/boot/dts/sun8i-t113s-mangopi-mq-r-t113.dts create mode 100644 arch/arm/boot/dts/sunxi-d1s-t113-mangopi-mq-r.dtsi