ARM: dts: nes: add Nintendo NES/SuperNES Classic Edition support
authorMiquel Raynal <miquel.raynal@bootlin.com>
Tue, 24 Apr 2018 15:55:03 +0000 (17:55 +0200)
committerMaxime Ripard <maxime.ripard@bootlin.com>
Wed, 25 Apr 2018 07:03:02 +0000 (09:03 +0200)
The Nintendo NES/SuperNES features an R16 already well supported in
mainline.

The console over UART0 may be wired on two ports of the R16, both
available on the NES Classic PCB.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
arch/arm/boot/dts/Makefile
arch/arm/boot/dts/sun8i-r16-nintendo-nes-classic.dts [new file with mode: 0644]
arch/arm/boot/dts/sun8i-r16-nintendo-super-nes-classic.dts [new file with mode: 0644]

index 7e24249..c904eb8 100644 (file)
@@ -1010,6 +1010,8 @@ dtb-$(CONFIG_MACH_SUN8I) += \
        sun8i-h3-orangepi-plus.dtb \
        sun8i-h3-orangepi-plus2e.dtb \
        sun8i-r16-bananapi-m2m.dtb \
+       sun8i-r16-nintendo-nes-classic.dtb \
+       sun8i-r16-nintendo-super-nes-classic.dtb \
        sun8i-r16-parrot.dtb \
        sun8i-r40-bananapi-m2-ultra.dtb \
        sun8i-v3s-licheepi-zero.dtb \
diff --git a/arch/arm/boot/dts/sun8i-r16-nintendo-nes-classic.dts b/arch/arm/boot/dts/sun8i-r16-nintendo-nes-classic.dts
new file mode 100644 (file)
index 0000000..fc0658c
--- /dev/null
@@ -0,0 +1,56 @@
+// SPDX-License-Identifier: GPL-2.0 OR X11
+/* Copyright (c) 2016 FUKAUMI Naoki <naobsd@gmail.com> */
+
+/dts-v1/;
+#include "sun8i-a33.dtsi"
+#include "sunxi-common-regulators.dtsi"
+
+/ {
+       model = "Nintendo NES Classic Edition";
+       compatible = "nintendo,nes-classic", "allwinner,sun8i-r16",
+                    "allwinner,sun8i-a33";
+
+       aliases {
+               serial0 = &uart0;
+       };
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+};
+
+&uart0 {
+       /*
+        * UART0 is available on two ports: PB and PF, both are accessible.
+        * PF can also be used for the SD card so PB is preferred.
+        */
+       pinctrl-names = "default";
+       pinctrl-0 = <&uart0_pins_a>;
+       status = "okay";
+};
+
+&nfc {
+       status = "okay";
+
+       /* 2Gb Macronix MX30LF2G18AC (3V) */
+       nand@0 {
+               #address-cells = <1>;
+               #size-cells = <1>;
+               reg = <0>;
+               allwinner,rb = <0>;
+               nand-ecc-mode = "hw";
+               nand-ecc-strength = <16>;
+               nand-ecc-step-size = <1024>;
+       };
+};
+
+&usb_otg {
+       status = "okay";
+       dr_mode = "otg";
+};
+
+&usbphy {
+       /* VBUS is always on because it is wired to the power supply */
+       usb1_vbus-supply = <&reg_vcc5v0>;
+       status = "okay";
+};
diff --git a/arch/arm/boot/dts/sun8i-r16-nintendo-super-nes-classic.dts b/arch/arm/boot/dts/sun8i-r16-nintendo-super-nes-classic.dts
new file mode 100644 (file)
index 0000000..80761d7
--- /dev/null
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: GPL-2.0 OR X11
+/* Copyright (c) 2018 Miquèl RAYNAL <miquel.raynal@bootlin.com> */
+
+/dts-v1/;
+#include "sun8i-r16-nintendo-nes-classic.dts"
+
+/ {
+       model = "Nintendo SuperNES Classic Edition";
+       compatible = "nintendo,super-nes-classic", "nintendo,nes-classic",
+                    "allwinner,sun8i-r16", "allwinner,sun8i-a33";
+};