Update sunxi-next overlays

This commit is contained in:
zador-blood-stained 2017-10-30 16:36:11 +03:00
parent 7c24bd7c32
commit b04977e14d
2 changed files with 375 additions and 165 deletions

View file

@ -1,5 +1,5 @@
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 4b17f35d..ff6b68e2 100644
index 4b17f35dc..ff6b68e26 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1062,4 +1062,7 @@ dtstree := $(srctree)/$(src)
@ -12,10 +12,10 @@ index 4b17f35d..ff6b68e2 100644
+dts-dirs += overlay
diff --git a/arch/arm/boot/dts/overlay/Makefile b/arch/arm/boot/dts/overlay/Makefile
new file mode 100644
index 00000000..2285ac06
index 000000000..f83b4bbe3
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/Makefile
@@ -0,0 +1,84 @@
@@ -0,0 +1,87 @@
+ifeq ($(CONFIG_OF_CONFIGFS),y)
+
+dtbo-$(CONFIG_MACH_SUN4I) += \
@ -47,6 +47,8 @@ index 00000000..2285ac06
+ sun7i-a20-i2c2.dtbo \
+ sun7i-a20-i2c3.dtbo \
+ sun7i-a20-i2c4.dtbo \
+ sun7i-a20-i2s0.dtbo \
+ sun7i-a20-i2s1.dtbo \
+ sun7i-a20-mmc2.dtbo \
+ sun7i-a20-nand.dtbo \
+ sun7i-a20-pps-gpio.dtbo \
@ -82,6 +84,7 @@ index 00000000..2285ac06
+ sun8i-h3-uart2.dtbo \
+ sun8i-h3-uart3.dtbo \
+ sun8i-h3-usbhost0.dtbo \
+ sun8i-h3-usbhost1.dtbo \
+ sun8i-h3-usbhost2.dtbo \
+ sun8i-h3-usbhost3.dtbo \
+ sun8i-h3-w1-gpio.dtbo
@ -102,10 +105,10 @@ index 00000000..2285ac06
+clean-files := *.dtbo *.scr
diff --git a/arch/arm/boot/dts/overlay/README.sun4i-a10-overlays b/arch/arm/boot/dts/overlay/README.sun4i-a10-overlays
new file mode 100644
index 00000000..fd059d1d
index 000000000..e0795f13d
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/README.sun4i-a10-overlays
@@ -0,0 +1,271 @@
@@ -0,0 +1,278 @@
+This document describes overlays provided in the kernel packages
+For generic Armbian overlays documentation please see
+https://docs.armbian.com/User-Guide_Allwinner_overlays/
@ -314,10 +317,17 @@ index 00000000..fd059d1d
+
+Activates serial port 3 (/dev/ttyS3)
+
+UART 3 pins (TX, RX, RTS, CTS): PG6, PG7, PG8, PG9
+UART 3 pins a (TX, RX, RTS, CTS): PG6, PG7, PG8, PG9
+UART 3 pins b (TX, RX, RTS, CTS): PH0, PH1, PH2, PH3
+
+Parameters:
+
+param_uart3_pins (char)
+ Determines what pins UART 3 is exposed on
+ Optional
+ Default: a
+ Supported values: a, b
+
+param_uart3_rtscts (bool)
+ Enable RTS and CTS pins
+ Optional
@ -379,10 +389,10 @@ index 00000000..fd059d1d
+ please use external pull-up resistor instead
diff --git a/arch/arm/boot/dts/overlay/README.sun7i-a20-overlays b/arch/arm/boot/dts/overlay/README.sun7i-a20-overlays
new file mode 100644
index 00000000..9e53a862
index 000000000..362f87961
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/README.sun7i-a20-overlays
@@ -0,0 +1,327 @@
@@ -0,0 +1,348 @@
+This document describes overlays provided in the kernel packages
+For generic Armbian overlays documentation please see
+https://docs.armbian.com/User-Guide_Allwinner_overlays/
@ -409,6 +419,8 @@ index 00000000..9e53a862
+- i2c2
+- i2c3
+- i2c4
+- i2s0
+- i2s1
+- mmc2
+- nand
+- pps-gpio
@ -466,6 +478,18 @@ index 00000000..9e53a862
+
+I2C4 pins (SCL, SDA): PI2, PI3
+
+### i2s0
+
+Activates SoC I2S controller 0
+
+I2S0 pins (MCLK, BCLK, LRCK, DO0, DO1, DO2, DO3, DI): PB5, PB6, PB7, PB8, PB9, PB10, PB11, PB12
+
+### i2s1
+
+Activates SoC I2S controller 1
+
+I2S1 pins (MCLK, BCLK, LRCK, DO, DI): PA9, PA14, PA15, PA16, PA17
+
+### mmc2
+
+Activates SD/MMC controller 2. To be used on boards with second SD slot, eMMC
@ -647,10 +671,17 @@ index 00000000..9e53a862
+
+Activates serial port 3 (/dev/ttyS3)
+
+UART 3 pins (TX, RX, RTS, CTS): PG6, PG7, PG8, PG9
+UART 3 pins a (TX, RX, RTS, CTS): PG6, PG7, PG8, PG9
+UART 3 pins b (TX, RX, RTS, CTS): PH0, PH1, PH2, PH3
+
+Parameters:
+
+param_uart3_pins (char)
+ Determines what pins UART 3 is exposed on
+ Optional
+ Default: a
+ Supported values: a, b
+
+param_uart3_rtscts (bool)
+ Enable RTS and CTS pins
+ Optional
@ -712,7 +743,7 @@ index 00000000..9e53a862
+ please use external pull-up resistor instead
diff --git a/arch/arm/boot/dts/overlay/README.sun8i-h3-overlays b/arch/arm/boot/dts/overlay/README.sun8i-h3-overlays
new file mode 100644
index 00000000..30297349
index 000000000..302973491
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/README.sun8i-h3-overlays
@@ -0,0 +1,250 @@
@ -968,7 +999,7 @@ index 00000000..30297349
+ or long wires - please use external pull-up resistor instead
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-analog-codec.dts b/arch/arm/boot/dts/overlay/sun4i-a10-analog-codec.dts
new file mode 100644
index 00000000..9254e22e
index 000000000..9254e22e0
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-analog-codec.dts
@@ -0,0 +1,13 @@
@ -987,7 +1018,7 @@ index 00000000..9254e22e
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-can.dts b/arch/arm/boot/dts/overlay/sun4i-a10-can.dts
new file mode 100644
index 00000000..4be3a38b
index 000000000..4be3a38b9
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-can.dts
@@ -0,0 +1,15 @@
@ -1008,10 +1039,10 @@ index 00000000..4be3a38b
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-fixup.scr-cmd b/arch/arm/boot/dts/overlay/sun4i-a10-fixup.scr-cmd
new file mode 100644
index 00000000..69af411f
index 000000000..8dd3eeb85
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-fixup.scr-cmd
@@ -0,0 +1,109 @@
@@ -0,0 +1,124 @@
+# overlays fixup script
+# implements (or rather substitutes) overlay arguments functionality
+# using u-boot scripting, environment variables and "fdt" command
@ -1107,13 +1138,28 @@ index 00000000..69af411f
+ env delete tmp_phandle
+fi
+
+if test "${param_uart3_rtscts}" = "1"; then
+ fdt get value tmp_phandle1 /soc@01c00000/pinctrl@01c20800/uart3 phandle
+ fdt get value tmp_phandle2 /soc@01c00000/pinctrl@01c20800/uart3_rts_cts phandle
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-names "default" "default"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-0 "<${tmp_phandle1}>"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-1 "<${tmp_phandle2}>"
+ env delete tmp_phandle1 tmp_phandle2
+if test "${param_uart3_pins}" = "b"; then
+ if test "${param_uart3_rtscts}" = "1"; then
+ fdt get value tmp_phandle1 /soc@01c00000/pinctrl@01c20800/uart3_pins_b phandle
+ fdt get value tmp_phandle2 /soc@01c00000/pinctrl@01c20800/uart3_pins_b_rts_cts phandle
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-names "default" "default"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-0 "<${tmp_phandle1}>"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-1 "<${tmp_phandle2}>"
+ env delete tmp_phandle1 tmp_phandle2
+ else
+ fdt get value tmp_phandle /soc@01c00000/pinctrl@01c20800/uart3_pins_b phandle
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-0 "<${tmp_phandle}>"
+ env delete tmp_phandle
+ fi
+else
+ if test "${param_uart3_rtscts}" = "1"; then
+ fdt get value tmp_phandle1 /soc@01c00000/pinctrl@01c20800/uart3_pins_a phandle
+ fdt get value tmp_phandle2 /soc@01c00000/pinctrl@01c20800/uart3_pins_a_rts_cts phandle
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-names "default" "default"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-0 "<${tmp_phandle1}>"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-1 "<${tmp_phandle2}>"
+ env delete tmp_phandle1 tmp_phandle2
+ fi
+fi
+
+if test "${param_uart4_pins}" = "b"; then
@ -1123,7 +1169,7 @@ index 00000000..69af411f
+fi
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-i2c1.dts b/arch/arm/boot/dts/overlay/sun4i-a10-i2c1.dts
new file mode 100644
index 00000000..44a7ce9b
index 000000000..44a7ce9be
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-i2c1.dts
@@ -0,0 +1,22 @@
@ -1151,7 +1197,7 @@ index 00000000..44a7ce9b
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-i2c2.dts b/arch/arm/boot/dts/overlay/sun4i-a10-i2c2.dts
new file mode 100644
index 00000000..ab3c00fa
index 000000000..ab3c00fa0
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-i2c2.dts
@@ -0,0 +1,22 @@
@ -1179,7 +1225,7 @@ index 00000000..ab3c00fa
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-nand.dts b/arch/arm/boot/dts/overlay/sun4i-a10-nand.dts
new file mode 100644
index 00000000..f0d4c2f3
index 000000000..f0d4c2f34
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-nand.dts
@@ -0,0 +1,103 @@
@ -1288,7 +1334,7 @@ index 00000000..f0d4c2f3
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-pps-gpio.dts b/arch/arm/boot/dts/overlay/sun4i-a10-pps-gpio.dts
new file mode 100644
index 00000000..6031fc53
index 000000000..6031fc53e
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-pps-gpio.dts
@@ -0,0 +1,29 @@
@ -1323,7 +1369,7 @@ index 00000000..6031fc53
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-pwm.dts b/arch/arm/boot/dts/overlay/sun4i-a10-pwm.dts
new file mode 100644
index 00000000..1927fc52
index 000000000..1927fc528
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-pwm.dts
@@ -0,0 +1,15 @@
@ -1344,7 +1390,7 @@ index 00000000..1927fc52
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-spdif-out.dts b/arch/arm/boot/dts/overlay/sun4i-a10-spdif-out.dts
new file mode 100644
index 00000000..5811e474
index 000000000..5811e4746
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-spdif-out.dts
@@ -0,0 +1,38 @@
@ -1388,7 +1434,7 @@ index 00000000..5811e474
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-spi-jedec-nor.dts b/arch/arm/boot/dts/overlay/sun4i-a10-spi-jedec-nor.dts
new file mode 100644
index 00000000..9cf640f3
index 000000000..9cf640f33
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-spi-jedec-nor.dts
@@ -0,0 +1,57 @@
@ -1451,7 +1497,7 @@ index 00000000..9cf640f3
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-spi-spidev.dts b/arch/arm/boot/dts/overlay/sun4i-a10-spi-spidev.dts
new file mode 100644
index 00000000..f603d6dc
index 000000000..f603d6dc8
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-spi-spidev.dts
@@ -0,0 +1,57 @@
@ -1514,7 +1560,7 @@ index 00000000..f603d6dc
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-spi0.dts b/arch/arm/boot/dts/overlay/sun4i-a10-spi0.dts
new file mode 100644
index 00000000..04442626
index 000000000..04442626a
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-spi0.dts
@@ -0,0 +1,23 @@
@ -1543,7 +1589,7 @@ index 00000000..04442626
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-spi1.dts b/arch/arm/boot/dts/overlay/sun4i-a10-spi1.dts
new file mode 100644
index 00000000..3c3fcb86
index 000000000..3c3fcb864
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-spi1.dts
@@ -0,0 +1,22 @@
@ -1571,7 +1617,7 @@ index 00000000..3c3fcb86
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-spi2.dts b/arch/arm/boot/dts/overlay/sun4i-a10-spi2.dts
new file mode 100644
index 00000000..b38e04c3
index 000000000..b38e04c35
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-spi2.dts
@@ -0,0 +1,23 @@
@ -1600,7 +1646,7 @@ index 00000000..b38e04c3
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-uart2.dts b/arch/arm/boot/dts/overlay/sun4i-a10-uart2.dts
new file mode 100644
index 00000000..41ce3e67
index 000000000..41ce3e670
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-uart2.dts
@@ -0,0 +1,37 @@
@ -1643,10 +1689,10 @@ index 00000000..41ce3e67
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-uart3.dts b/arch/arm/boot/dts/overlay/sun4i-a10-uart3.dts
new file mode 100644
index 00000000..6da2fe73
index 000000000..0b70a65eb
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-uart3.dts
@@ -0,0 +1,37 @@
@@ -0,0 +1,47 @@
+/dts-v1/;
+/plugin/;
+
@ -1664,12 +1710,22 @@ index 00000000..6da2fe73
+ target = <&pio>;
+ __overlay__ {
+ uart3_pins_a: uart3@0 {
+ pins = "PG6", "PG7", "PG8", "PG9";
+ pins = "PG6", "PG7";
+ function = "uart3";
+ };
+
+ uart3_pins_a_2: uart3@1 {
+ pins = "PG6", "PG7";
+ uart3_pins_a_rts_cts: uart3@1 {
+ pins = "PG8", "PG9";
+ function = "uart3";
+ };
+
+ uart3_pins_b: uart3@2 {
+ pins = "PH0", "PH1";
+ function = "uart3";
+ };
+
+ uart3_pins_b_rts_cts: uart3@3 {
+ pins = "PH2", "PH3";
+ function = "uart3";
+ };
+ };
@ -1679,14 +1735,14 @@ index 00000000..6da2fe73
+ target = <&uart3>;
+ __overlay__ {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart3_pins_a_2>;
+ pinctrl-0 = <&uart3_pins_a>;
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-uart4.dts b/arch/arm/boot/dts/overlay/sun4i-a10-uart4.dts
new file mode 100644
index 00000000..0677c634
index 000000000..0677c634d
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-uart4.dts
@@ -0,0 +1,37 @@
@ -1729,7 +1785,7 @@ index 00000000..0677c634
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-uart5.dts b/arch/arm/boot/dts/overlay/sun4i-a10-uart5.dts
new file mode 100644
index 00000000..0a3ed9b5
index 000000000..0a3ed9b5f
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-uart5.dts
@@ -0,0 +1,32 @@
@ -1767,7 +1823,7 @@ index 00000000..0a3ed9b5
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-uart6.dts b/arch/arm/boot/dts/overlay/sun4i-a10-uart6.dts
new file mode 100644
index 00000000..f58b4112
index 000000000..f58b4112a
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-uart6.dts
@@ -0,0 +1,32 @@
@ -1805,7 +1861,7 @@ index 00000000..f58b4112
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-uart7.dts b/arch/arm/boot/dts/overlay/sun4i-a10-uart7.dts
new file mode 100644
index 00000000..65d8c688
index 000000000..65d8c6885
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-uart7.dts
@@ -0,0 +1,32 @@
@ -1843,7 +1899,7 @@ index 00000000..65d8c688
+};
diff --git a/arch/arm/boot/dts/overlay/sun4i-a10-w1-gpio.dts b/arch/arm/boot/dts/overlay/sun4i-a10-w1-gpio.dts
new file mode 100644
index 00000000..41da08c6
index 000000000..41da08c60
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun4i-a10-w1-gpio.dts
@@ -0,0 +1,29 @@
@ -1878,7 +1934,7 @@ index 00000000..41da08c6
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-analog-codec.dts b/arch/arm/boot/dts/overlay/sun7i-a20-analog-codec.dts
new file mode 100644
index 00000000..e1a70c51
index 000000000..e1a70c510
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-analog-codec.dts
@@ -0,0 +1,13 @@
@ -1897,7 +1953,7 @@ index 00000000..e1a70c51
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-can.dts b/arch/arm/boot/dts/overlay/sun7i-a20-can.dts
new file mode 100644
index 00000000..65aebcd4
index 000000000..65aebcd41
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-can.dts
@@ -0,0 +1,15 @@
@ -1918,10 +1974,10 @@ index 00000000..65aebcd4
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-fixup.scr-cmd b/arch/arm/boot/dts/overlay/sun7i-a20-fixup.scr-cmd
new file mode 100644
index 00000000..86028d79
index 000000000..5a320b836
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-fixup.scr-cmd
@@ -0,0 +1,128 @@
@@ -0,0 +1,143 @@
+# overlays fixup script
+# implements (or rather substitutes) overlay arguments functionality
+# using u-boot scripting, environment variables and "fdt" command
@ -2036,13 +2092,28 @@ index 00000000..86028d79
+ env delete tmp_phandle
+fi
+
+if test "${param_uart3_rtscts}" = "1"; then
+ fdt get value tmp_phandle1 /soc@01c00000/pinctrl@01c20800/uart3 phandle
+ fdt get value tmp_phandle2 /soc@01c00000/pinctrl@01c20800/uart3_rts_cts phandle
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-names "default" "default"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-0 "<${tmp_phandle1}>"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-1 "<${tmp_phandle2}>"
+ env delete tmp_phandle1 tmp_phandle2
+if test "${param_uart3_pins}" = "b"; then
+ if test "${param_uart3_rtscts}" = "1"; then
+ fdt get value tmp_phandle1 /soc@01c00000/pinctrl@01c20800/uart3_pins_b phandle
+ fdt get value tmp_phandle2 /soc@01c00000/pinctrl@01c20800/uart3_pins_b_rts_cts phandle
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-names "default" "default"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-0 "<${tmp_phandle1}>"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-1 "<${tmp_phandle2}>"
+ env delete tmp_phandle1 tmp_phandle2
+ else
+ fdt get value tmp_phandle /soc@01c00000/pinctrl@01c20800/uart3_pins_b phandle
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-0 "<${tmp_phandle}>"
+ env delete tmp_phandle
+ fi
+else
+ if test "${param_uart3_rtscts}" = "1"; then
+ fdt get value tmp_phandle1 /soc@01c00000/pinctrl@01c20800/uart3_pins_a_2 phandle
+ fdt get value tmp_phandle2 /soc@01c00000/pinctrl@01c20800/uart3_pins_a_rts_cts phandle
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-names "default" "default"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-0 "<${tmp_phandle1}>"
+ fdt set /soc@01c00000/serial@01c28c00 pinctrl-1 "<${tmp_phandle2}>"
+ env delete tmp_phandle1 tmp_phandle2
+ fi
+fi
+
+if test "${param_uart4_pins}" = "b"; then
@ -2052,7 +2123,7 @@ index 00000000..86028d79
+fi
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-i2c1.dts b/arch/arm/boot/dts/overlay/sun7i-a20-i2c1.dts
new file mode 100644
index 00000000..d1146ee4
index 000000000..d1146ee4c
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-i2c1.dts
@@ -0,0 +1,22 @@
@ -2080,7 +2151,7 @@ index 00000000..d1146ee4
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-i2c2.dts b/arch/arm/boot/dts/overlay/sun7i-a20-i2c2.dts
new file mode 100644
index 00000000..e6b32de5
index 000000000..e6b32de59
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-i2c2.dts
@@ -0,0 +1,22 @@
@ -2108,7 +2179,7 @@ index 00000000..e6b32de5
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-i2c3.dts b/arch/arm/boot/dts/overlay/sun7i-a20-i2c3.dts
new file mode 100644
index 00000000..5273d06c
index 000000000..5273d06c9
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-i2c3.dts
@@ -0,0 +1,22 @@
@ -2136,7 +2207,7 @@ index 00000000..5273d06c
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-i2c4.dts b/arch/arm/boot/dts/overlay/sun7i-a20-i2c4.dts
new file mode 100644
index 00000000..113a220b
index 000000000..113a220bc
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-i2c4.dts
@@ -0,0 +1,32 @@
@ -2172,9 +2243,71 @@ index 00000000..113a220b
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-i2s0.dts b/arch/arm/boot/dts/overlay/sun7i-a20-i2s0.dts
new file mode 100644
index 000000000..1a19a2417
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-i2s0.dts
@@ -0,0 +1,25 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "allwinner,sun7i-a20";
+
+ fragment@0 {
+ target = <&pio>;
+ __overlay__ {
+ i2s0_pins: i2s0 {
+ pins = "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12";
+ function = "i2s0";
+ };
+ };
+ };
+
+ fragment@1 {
+ target = <&i2s0>;
+ __overlay__ {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2s0_pins>;
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-i2s1.dts b/arch/arm/boot/dts/overlay/sun7i-a20-i2s1.dts
new file mode 100644
index 000000000..e6f0a22b7
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-i2s1.dts
@@ -0,0 +1,25 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "allwinner,sun7i-a20";
+
+ fragment@0 {
+ target = <&pio>;
+ __overlay__ {
+ i2s1_pins: i2s1 {
+ pins = "PA9", "PA14", "PA15", "PA16", "PA17";
+ function = "i2s1";
+ };
+ };
+ };
+
+ fragment@1 {
+ target = <&i2s1>;
+ __overlay__ {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2s1_pins>;
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-mmc2.dts b/arch/arm/boot/dts/overlay/sun7i-a20-mmc2.dts
new file mode 100644
index 00000000..f1ddbaa2
index 000000000..f1ddbaa2c
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-mmc2.dts
@@ -0,0 +1,18 @@
@ -2198,7 +2331,7 @@ index 00000000..f1ddbaa2
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-nand.dts b/arch/arm/boot/dts/overlay/sun7i-a20-nand.dts
new file mode 100644
index 00000000..ffa49cc6
index 000000000..ffa49cc69
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-nand.dts
@@ -0,0 +1,103 @@
@ -2307,7 +2440,7 @@ index 00000000..ffa49cc6
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-pps-gpio.dts b/arch/arm/boot/dts/overlay/sun7i-a20-pps-gpio.dts
new file mode 100644
index 00000000..fe3e2bd9
index 000000000..fe3e2bd96
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-pps-gpio.dts
@@ -0,0 +1,29 @@
@ -2342,7 +2475,7 @@ index 00000000..fe3e2bd9
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-pwm.dts b/arch/arm/boot/dts/overlay/sun7i-a20-pwm.dts
new file mode 100644
index 00000000..a0cc4695
index 000000000..a0cc4695c
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-pwm.dts
@@ -0,0 +1,15 @@
@ -2363,7 +2496,7 @@ index 00000000..a0cc4695
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-spdif-out.dts b/arch/arm/boot/dts/overlay/sun7i-a20-spdif-out.dts
new file mode 100644
index 00000000..7983ad0e
index 000000000..7983ad0eb
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-spdif-out.dts
@@ -0,0 +1,38 @@
@ -2407,7 +2540,7 @@ index 00000000..7983ad0e
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-spi-add-cs1.dts b/arch/arm/boot/dts/overlay/sun7i-a20-spi-add-cs1.dts
new file mode 100644
index 00000000..2de39a20
index 000000000..2de39a20e
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-spi-add-cs1.dts
@@ -0,0 +1,16 @@
@ -2429,7 +2562,7 @@ index 00000000..2de39a20
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-spi-jedec-nor.dts b/arch/arm/boot/dts/overlay/sun7i-a20-spi-jedec-nor.dts
new file mode 100644
index 00000000..baf59df7
index 000000000..baf59df75
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-spi-jedec-nor.dts
@@ -0,0 +1,57 @@
@ -2492,7 +2625,7 @@ index 00000000..baf59df7
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-spi-spidev.dts b/arch/arm/boot/dts/overlay/sun7i-a20-spi-spidev.dts
new file mode 100644
index 00000000..8d0f6ac8
index 000000000..8d0f6ac8e
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-spi-spidev.dts
@@ -0,0 +1,57 @@
@ -2555,7 +2688,7 @@ index 00000000..8d0f6ac8
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-spi0.dts b/arch/arm/boot/dts/overlay/sun7i-a20-spi0.dts
new file mode 100644
index 00000000..04442626
index 000000000..04442626a
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-spi0.dts
@@ -0,0 +1,23 @@
@ -2584,7 +2717,7 @@ index 00000000..04442626
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-spi1.dts b/arch/arm/boot/dts/overlay/sun7i-a20-spi1.dts
new file mode 100644
index 00000000..3c3fcb86
index 000000000..3c3fcb864
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-spi1.dts
@@ -0,0 +1,22 @@
@ -2612,7 +2745,7 @@ index 00000000..3c3fcb86
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-spi2.dts b/arch/arm/boot/dts/overlay/sun7i-a20-spi2.dts
new file mode 100644
index 00000000..b38e04c3
index 000000000..b38e04c35
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-spi2.dts
@@ -0,0 +1,23 @@
@ -2641,7 +2774,7 @@ index 00000000..b38e04c3
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-uart2.dts b/arch/arm/boot/dts/overlay/sun7i-a20-uart2.dts
new file mode 100644
index 00000000..b4f7230d
index 000000000..b4f7230d7
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-uart2.dts
@@ -0,0 +1,32 @@
@ -2679,10 +2812,10 @@ index 00000000..b4f7230d
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-uart3.dts b/arch/arm/boot/dts/overlay/sun7i-a20-uart3.dts
new file mode 100644
index 00000000..010d8a53
index 000000000..75e79eadc
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-uart3.dts
@@ -0,0 +1,32 @@
@@ -0,0 +1,42 @@
+/dts-v1/;
+/plugin/;
+
@ -2703,6 +2836,16 @@ index 00000000..010d8a53
+ pins = "PG6", "PG7";
+ function = "uart3";
+ };
+
+ uart3_pins_a_rts_cts: uart3@1 {
+ pins = "PG8", "PG9";
+ function = "uart3";
+ };
+
+ uart3_pins_b_rts_cts: uart3@3 {
+ pins = "PH2", "PH3";
+ function = "uart3";
+ };
+ };
+ };
+
@ -2717,7 +2860,7 @@ index 00000000..010d8a53
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-uart4.dts b/arch/arm/boot/dts/overlay/sun7i-a20-uart4.dts
new file mode 100644
index 00000000..008cf83a
index 000000000..008cf83a2
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-uart4.dts
@@ -0,0 +1,22 @@
@ -2745,7 +2888,7 @@ index 00000000..008cf83a
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-uart5.dts b/arch/arm/boot/dts/overlay/sun7i-a20-uart5.dts
new file mode 100644
index 00000000..32367102
index 000000000..32367102a
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-uart5.dts
@@ -0,0 +1,22 @@
@ -2773,7 +2916,7 @@ index 00000000..32367102
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-uart6.dts b/arch/arm/boot/dts/overlay/sun7i-a20-uart6.dts
new file mode 100644
index 00000000..12435386
index 000000000..124353866
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-uart6.dts
@@ -0,0 +1,22 @@
@ -2801,7 +2944,7 @@ index 00000000..12435386
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-uart7.dts b/arch/arm/boot/dts/overlay/sun7i-a20-uart7.dts
new file mode 100644
index 00000000..3087271b
index 000000000..3087271b4
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-uart7.dts
@@ -0,0 +1,22 @@
@ -2829,7 +2972,7 @@ index 00000000..3087271b
+};
diff --git a/arch/arm/boot/dts/overlay/sun7i-a20-w1-gpio.dts b/arch/arm/boot/dts/overlay/sun7i-a20-w1-gpio.dts
new file mode 100644
index 00000000..7d77606a
index 000000000..7d77606a1
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun7i-a20-w1-gpio.dts
@@ -0,0 +1,29 @@
@ -2864,7 +3007,7 @@ index 00000000..7d77606a
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-analog-codec.dts b/arch/arm/boot/dts/overlay/sun8i-h3-analog-codec.dts
new file mode 100644
index 00000000..36dbc31a
index 000000000..36dbc31ae
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-analog-codec.dts
@@ -0,0 +1,17 @@
@ -2887,7 +3030,7 @@ index 00000000..36dbc31a
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-cir.dts b/arch/arm/boot/dts/overlay/sun8i-h3-cir.dts
new file mode 100644
index 00000000..9b62fd2b
index 000000000..9b62fd2b8
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-cir.dts
@@ -0,0 +1,15 @@
@ -2908,7 +3051,7 @@ index 00000000..9b62fd2b
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-fixup.scr-cmd b/arch/arm/boot/dts/overlay/sun8i-h3-fixup.scr-cmd
new file mode 100644
index 00000000..744889c6
index 000000000..744889c6e
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-fixup.scr-cmd
@@ -0,0 +1,110 @@
@ -3024,7 +3167,7 @@ index 00000000..744889c6
+fi
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-i2c0.dts b/arch/arm/boot/dts/overlay/sun8i-h3-i2c0.dts
new file mode 100644
index 00000000..b457ac71
index 000000000..b457ac717
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-i2c0.dts
@@ -0,0 +1,20 @@
@ -3050,7 +3193,7 @@ index 00000000..b457ac71
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-i2c1.dts b/arch/arm/boot/dts/overlay/sun8i-h3-i2c1.dts
new file mode 100644
index 00000000..fd0928a1
index 000000000..fd0928a18
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-i2c1.dts
@@ -0,0 +1,20 @@
@ -3076,7 +3219,7 @@ index 00000000..fd0928a1
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-i2c2.dts b/arch/arm/boot/dts/overlay/sun8i-h3-i2c2.dts
new file mode 100644
index 00000000..25b75b71
index 000000000..25b75b71c
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-i2c2.dts
@@ -0,0 +1,20 @@
@ -3102,7 +3245,7 @@ index 00000000..25b75b71
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-pps-gpio.dts b/arch/arm/boot/dts/overlay/sun8i-h3-pps-gpio.dts
new file mode 100644
index 00000000..16a737b0
index 000000000..16a737b02
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-pps-gpio.dts
@@ -0,0 +1,29 @@
@ -3137,7 +3280,7 @@ index 00000000..16a737b0
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-pwm.dts b/arch/arm/boot/dts/overlay/sun8i-h3-pwm.dts
new file mode 100644
index 00000000..ed3b8e60
index 000000000..ed3b8e606
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-pwm.dts
@@ -0,0 +1,39 @@
@ -3182,7 +3325,7 @@ index 00000000..ed3b8e60
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-spdif-out.dts b/arch/arm/boot/dts/overlay/sun8i-h3-spdif-out.dts
new file mode 100644
index 00000000..c7c01411
index 000000000..c7c01411a
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-spdif-out.dts
@@ -0,0 +1,38 @@
@ -3226,7 +3369,7 @@ index 00000000..c7c01411
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-spi-add-cs1.dts b/arch/arm/boot/dts/overlay/sun8i-h3-spi-add-cs1.dts
new file mode 100644
index 00000000..bd8e2561
index 000000000..bd8e25617
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-spi-add-cs1.dts
@@ -0,0 +1,41 @@
@ -3273,7 +3416,7 @@ index 00000000..bd8e2561
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-spi-jedec-nor.dts b/arch/arm/boot/dts/overlay/sun8i-h3-spi-jedec-nor.dts
new file mode 100644
index 00000000..ad22a71a
index 000000000..ad22a71ac
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-spi-jedec-nor.dts
@@ -0,0 +1,42 @@
@ -3321,7 +3464,7 @@ index 00000000..ad22a71a
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-spi-spidev.dts b/arch/arm/boot/dts/overlay/sun8i-h3-spi-spidev.dts
new file mode 100644
index 00000000..180979e0
index 000000000..180979e0b
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-spi-spidev.dts
@@ -0,0 +1,42 @@
@ -3369,7 +3512,7 @@ index 00000000..180979e0
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-uart1.dts b/arch/arm/boot/dts/overlay/sun8i-h3-uart1.dts
new file mode 100644
index 00000000..8a4f7e49
index 000000000..8a4f7e49b
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-uart1.dts
@@ -0,0 +1,22 @@
@ -3397,7 +3540,7 @@ index 00000000..8a4f7e49
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-uart2.dts b/arch/arm/boot/dts/overlay/sun8i-h3-uart2.dts
new file mode 100644
index 00000000..499a1b49
index 000000000..499a1b496
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-uart2.dts
@@ -0,0 +1,22 @@
@ -3425,7 +3568,7 @@ index 00000000..499a1b49
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-uart3.dts b/arch/arm/boot/dts/overlay/sun8i-h3-uart3.dts
new file mode 100644
index 00000000..b5734c5b
index 000000000..b5734c5bf
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-uart3.dts
@@ -0,0 +1,22 @@
@ -3453,10 +3596,10 @@ index 00000000..b5734c5b
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-usbhost0.dts b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost0.dts
new file mode 100644
index 00000000..ff1d82fd
index 000000000..6bd8aedbe
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost0.dts
@@ -0,0 +1,20 @@
@@ -0,0 +1,27 @@
+/dts-v1/;
+/plugin/;
+
@ -3476,13 +3619,20 @@ index 00000000..ff1d82fd
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-usbhost1.dts b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost1.dts
new file mode 100644
index 00000000..92049ec1
index 000000000..4c7222b10
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost1.dts
@@ -0,0 +1,20 @@
@@ -0,0 +1,27 @@
+/dts-v1/;
+/plugin/;
+
@ -3502,13 +3652,20 @@ index 00000000..92049ec1
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-usbhost2.dts b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost2.dts
new file mode 100644
index 00000000..bf0c4f59
index 000000000..2b83ec933
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost2.dts
@@ -0,0 +1,20 @@
@@ -0,0 +1,27 @@
+/dts-v1/;
+/plugin/;
+
@ -3528,13 +3685,20 @@ index 00000000..bf0c4f59
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-usbhost3.dts b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost3.dts
new file mode 100644
index 00000000..f737075b
index 000000000..e2f28ab1a
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost3.dts
@@ -0,0 +1,20 @@
@@ -0,0 +1,27 @@
+/dts-v1/;
+/plugin/;
+
@ -3554,10 +3718,17 @@ index 00000000..f737075b
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-w1-gpio.dts b/arch/arm/boot/dts/overlay/sun8i-h3-w1-gpio.dts
new file mode 100644
index 00000000..f4ccb7fb
index 000000000..f4ccb7fba
--- /dev/null
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-w1-gpio.dts
@@ -0,0 +1,29 @@

View file

@ -1,10 +1,10 @@
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 94de6044..1e85fd7c 100644
index 108f12ce6..c01e6d7e7 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -6,5 +6,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-prime.dtb
@@ -8,5 +8,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-zero-plus2.dtb
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
always := $(dtb-y)
-subdir-y := $(dts-dirs)
+subdir-y := $(dts-dirs) overlay
@ -13,10 +13,10 @@ index 94de6044..1e85fd7c 100644
+dts-dirs += overlay
diff --git a/arch/arm64/boot/dts/allwinner/overlay/Makefile b/arch/arm64/boot/dts/allwinner/overlay/Makefile
new file mode 100644
index 00000000..4c945d83
index 000000000..379d8527f
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/Makefile
@@ -0,0 +1,43 @@
@@ -0,0 +1,44 @@
+dtbo-$(CONFIG_ARCH_SUNXI) += \
+ sun50i-a64-i2c0.dtbo \
+ sun50i-a64-i2c1.dtbo \
@ -44,6 +44,7 @@ index 00000000..4c945d83
+ sun50i-h5-uart2.dtbo \
+ sun50i-h5-uart3.dtbo \
+ sun50i-h5-usbhost0.dtbo \
+ sun50i-h5-usbhost1.dtbo \
+ sun50i-h5-usbhost2.dtbo \
+ sun50i-h5-usbhost3.dtbo \
+ sun50i-h5-w1-gpio.dtbo
@ -62,7 +63,7 @@ index 00000000..4c945d83
+clean-files := *.dtbo *.scr
diff --git a/arch/arm64/boot/dts/allwinner/overlay/README.sun50i-a64-overlays b/arch/arm64/boot/dts/allwinner/overlay/README.sun50i-a64-overlays
new file mode 100644
index 00000000..cd9dbc68
index 000000000..cd9dbc686
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/README.sun50i-a64-overlays
@@ -0,0 +1,196 @@
@ -264,10 +265,10 @@ index 00000000..cd9dbc68
+ or long wires - please use external pull-up resistor instead
diff --git a/arch/arm64/boot/dts/allwinner/overlay/README.sun50i-h5-overlays b/arch/arm64/boot/dts/allwinner/overlay/README.sun50i-h5-overlays
new file mode 100644
index 00000000..ad5feef1
index 000000000..1ac7fbcf6
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/README.sun50i-h5-overlays
@@ -0,0 +1,245 @@
@@ -0,0 +1,250 @@
+This document describes overlays provided in the kernel packages
+For generic Armbian overlays documentation please see
+https://docs.armbian.com/User-Guide_Allwinner_overlays/
@ -300,6 +301,7 @@ index 00000000..ad5feef1
+- uart2
+- uart3
+- usbhost0
+- usbhost1
+- usbhost2
+- usbhost3
+- w1-gpio
@ -485,6 +487,10 @@ index 00000000..ad5feef1
+
+Activates USB host controller 0
+
+### usbhost1
+
+Activates USB host controller 1
+
+### usbhost2
+
+Activates USB host controller 2
@ -515,7 +521,7 @@ index 00000000..ad5feef1
+ or long wires - please use external pull-up resistor instead
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-fixup.scr-cmd b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-fixup.scr-cmd
new file mode 100644
index 00000000..6e192b56
index 000000000..6e192b56a
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-fixup.scr-cmd
@@ -0,0 +1,95 @@
@ -616,7 +622,7 @@ index 00000000..6e192b56
+fi
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-i2c0.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-i2c0.dts
new file mode 100644
index 00000000..37bdb2c2
index 000000000..37bdb2c2f
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-i2c0.dts
@@ -0,0 +1,32 @@
@ -654,7 +660,7 @@ index 00000000..37bdb2c2
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-i2c1.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-i2c1.dts
new file mode 100644
index 00000000..b2483c9c
index 000000000..b2483c9cd
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-i2c1.dts
@@ -0,0 +1,22 @@
@ -682,7 +688,7 @@ index 00000000..b2483c9c
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-pps-gpio.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-pps-gpio.dts
new file mode 100644
index 00000000..5fa161c4
index 000000000..5fa161c47
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-pps-gpio.dts
@@ -0,0 +1,29 @@
@ -717,7 +723,7 @@ index 00000000..5fa161c4
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-spi-add-cs1.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-spi-add-cs1.dts
new file mode 100644
index 00000000..4432aac5
index 000000000..4432aac51
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-spi-add-cs1.dts
@@ -0,0 +1,41 @@
@ -764,7 +770,7 @@ index 00000000..4432aac5
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-spi-jedec-nor.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-spi-jedec-nor.dts
new file mode 100644
index 00000000..d67a4f67
index 000000000..d67a4f676
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-spi-jedec-nor.dts
@@ -0,0 +1,34 @@
@ -804,7 +810,7 @@ index 00000000..d67a4f67
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-spi-spidev.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-spi-spidev.dts
new file mode 100644
index 00000000..fe8fb14e
index 000000000..fe8fb14e5
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-spi-spidev.dts
@@ -0,0 +1,42 @@
@ -852,7 +858,7 @@ index 00000000..fe8fb14e
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart1.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart1.dts
new file mode 100644
index 00000000..4d8dac1a
index 000000000..4d8dac1a5
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart1.dts
@@ -0,0 +1,22 @@
@ -880,7 +886,7 @@ index 00000000..4d8dac1a
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart2.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart2.dts
new file mode 100644
index 00000000..36475fd5
index 000000000..36475fd5d
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart2.dts
@@ -0,0 +1,37 @@
@ -923,7 +929,7 @@ index 00000000..36475fd5
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart3.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart3.dts
new file mode 100644
index 00000000..a103a751
index 000000000..a103a7516
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart3.dts
@@ -0,0 +1,32 @@
@ -961,7 +967,7 @@ index 00000000..a103a751
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart4.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart4.dts
new file mode 100644
index 00000000..f84333c7
index 000000000..f84333c71
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-uart4.dts
@@ -0,0 +1,37 @@
@ -1004,7 +1010,7 @@ index 00000000..f84333c7
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-w1-gpio.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-w1-gpio.dts
new file mode 100644
index 00000000..d2304691
index 000000000..d23046913
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-a64-w1-gpio.dts
@@ -0,0 +1,29 @@
@ -1039,7 +1045,7 @@ index 00000000..d2304691
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-analog-codec.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-analog-codec.dts
new file mode 100644
index 00000000..aaa66d5e
index 000000000..aaa66d5e7
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-analog-codec.dts
@@ -0,0 +1,17 @@
@ -1062,7 +1068,7 @@ index 00000000..aaa66d5e
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-cir.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-cir.dts
new file mode 100644
index 00000000..74569cbf
index 000000000..74569cbfd
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-cir.dts
@@ -0,0 +1,15 @@
@ -1083,7 +1089,7 @@ index 00000000..74569cbf
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-fixup.scr-cmd b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-fixup.scr-cmd
new file mode 100644
index 00000000..744889c6
index 000000000..744889c6e
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-fixup.scr-cmd
@@ -0,0 +1,110 @@
@ -1199,7 +1205,7 @@ index 00000000..744889c6
+fi
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-i2c0.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-i2c0.dts
new file mode 100644
index 00000000..55d249db
index 000000000..55d249db6
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-i2c0.dts
@@ -0,0 +1,20 @@
@ -1225,7 +1231,7 @@ index 00000000..55d249db
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-i2c1.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-i2c1.dts
new file mode 100644
index 00000000..2528870c
index 000000000..2528870c7
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-i2c1.dts
@@ -0,0 +1,20 @@
@ -1251,7 +1257,7 @@ index 00000000..2528870c
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-i2c2.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-i2c2.dts
new file mode 100644
index 00000000..ff42f01a
index 000000000..ff42f01ab
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-i2c2.dts
@@ -0,0 +1,20 @@
@ -1277,7 +1283,7 @@ index 00000000..ff42f01a
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-pps-gpio.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-pps-gpio.dts
new file mode 100644
index 00000000..46e06756
index 000000000..46e067562
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-pps-gpio.dts
@@ -0,0 +1,29 @@
@ -1312,7 +1318,7 @@ index 00000000..46e06756
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-pwm.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-pwm.dts
new file mode 100644
index 00000000..6d12e842
index 000000000..6d12e8420
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-pwm.dts
@@ -0,0 +1,39 @@
@ -1357,7 +1363,7 @@ index 00000000..6d12e842
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spdif-out.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spdif-out.dts
new file mode 100644
index 00000000..2bb301f7
index 000000000..2bb301f77
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spdif-out.dts
@@ -0,0 +1,38 @@
@ -1401,7 +1407,7 @@ index 00000000..2bb301f7
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spi-add-cs1.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spi-add-cs1.dts
new file mode 100644
index 00000000..8e3eab29
index 000000000..8e3eab295
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spi-add-cs1.dts
@@ -0,0 +1,41 @@
@ -1448,7 +1454,7 @@ index 00000000..8e3eab29
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spi-jedec-nor.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spi-jedec-nor.dts
new file mode 100644
index 00000000..d4accd95
index 000000000..d4accd95e
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spi-jedec-nor.dts
@@ -0,0 +1,42 @@
@ -1496,7 +1502,7 @@ index 00000000..d4accd95
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spi-spidev.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spi-spidev.dts
new file mode 100644
index 00000000..d8a008d0
index 000000000..d8a008d0d
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-spi-spidev.dts
@@ -0,0 +1,42 @@
@ -1544,7 +1550,7 @@ index 00000000..d8a008d0
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-uart1.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-uart1.dts
new file mode 100644
index 00000000..0ce76efd
index 000000000..0ce76efdd
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-uart1.dts
@@ -0,0 +1,22 @@
@ -1572,7 +1578,7 @@ index 00000000..0ce76efd
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-uart2.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-uart2.dts
new file mode 100644
index 00000000..88cc0cdc
index 000000000..88cc0cdc3
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-uart2.dts
@@ -0,0 +1,32 @@
@ -1610,7 +1616,7 @@ index 00000000..88cc0cdc
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-uart3.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-uart3.dts
new file mode 100644
index 00000000..a738ff83
index 000000000..3ad6cc982
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-uart3.dts
@@ -0,0 +1,32 @@
@ -1648,7 +1654,7 @@ index 00000000..a738ff83
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost0.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost0.dts
new file mode 100644
index 00000000..7ca3eb35
index 000000000..c1d79c232
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost0.dts
@@ -0,0 +1,27 @@
@ -1659,29 +1665,62 @@ index 00000000..7ca3eb35
+ compatible = "allwinner,sun50i-h5";
+
+ fragment@0 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&ehci0>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ fragment@1 {
+ target = <&ohci0>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost1.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost1.dts
new file mode 100644
index 000000000..2b4f245bf
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost1.dts
@@ -0,0 +1,27 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "allwinner,sun50i-h5";
+
+ fragment@0 {
+ target = <&ehci1>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&ohci1>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost2.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost2.dts
new file mode 100644
index 00000000..3e910af7
index 000000000..54800e729
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost2.dts
@@ -0,0 +1,27 @@
@ -1692,29 +1731,29 @@ index 00000000..3e910af7
+ compatible = "allwinner,sun50i-h5";
+
+ fragment@0 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&ehci2>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ fragment@1 {
+ target = <&ohci2>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost3.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost3.dts
new file mode 100644
index 00000000..87f30ced
index 000000000..a99524ea3
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-usbhost3.dts
@@ -0,0 +1,27 @@
@ -1725,29 +1764,29 @@ index 00000000..87f30ced
+ compatible = "allwinner,sun50i-h5";
+
+ fragment@0 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&ehci3>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ fragment@1 {
+ target = <&ohci3>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@2 {
+ target = <&usbphy>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-w1-gpio.dts b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-w1-gpio.dts
new file mode 100644
index 00000000..6e99626a
index 000000000..6e99626ac
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h5-w1-gpio.dts
@@ -0,0 +1,29 @@