diff --git a/patch/kernel/archive/sunxi-6.14/patches.armbian/Add-BananaPi-BPI-M4-Zero-pinctrl.patch b/patch/kernel/archive/sunxi-6.14/patches.armbian/Add-BananaPi-BPI-M4-Zero-pinctrl.patch index 42e2ef571..66bd300de 100644 --- a/patch/kernel/archive/sunxi-6.14/patches.armbian/Add-BananaPi-BPI-M4-Zero-pinctrl.patch +++ b/patch/kernel/archive/sunxi-6.14/patches.armbian/Add-BananaPi-BPI-M4-Zero-pinctrl.patch @@ -1,15 +1,15 @@ -From 78a53cd64db4002e9c9a4f46406e7182b3f3b934 Mon Sep 17 00:00:00 2001 +From 074c33f4b2b60ea6d76968099f8210c61bbad7e1 Mon Sep 17 00:00:00 2001 From: Patrick Yavitz Date: Thu, 12 Dec 2024 06:49:59 -0500 Subject: Add BananaPi BPI-M4-Zero pinctrl Signed-off-by: Patrick Yavitz --- - .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 36 +++++++++++++++++++ - 1 file changed, 36 insertions(+) + arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi | 12 ++++++++++++ + 1 file changed, 12 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi -index 954c8eab2c44..004e824dfe0b 100644 +index 8de963bee2ac..2e418ffdfcdb 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi @@ -409,6 +409,12 @@ i2c0_pins: i2c0-pins { @@ -38,44 +38,6 @@ index 954c8eab2c44..004e824dfe0b 100644 spdif_tx_pin: spdif-tx-pin { pins = "PH4"; function = "spdif"; -@@ -593,6 +605,12 @@ uart1_rts_cts_pins: uart1-rts-cts-pins { - function = "uart1"; - }; - -+ /omit-if-no-ref/ -+ uart2_pi_pins: uart2-pi-pins { -+ pins = "PI5", "PI6"; -+ function = "uart2"; -+ }; -+ - /omit-if-no-ref/ - uart2_pg_pins: uart2-pg-pins { - pins = "PG15", "PG16"; -@@ -617,6 +635,24 @@ uart2_ph_rts_cts_pins: uart2-ph-rts-cts-pins { - function = "uart2"; - }; - -+ /omit-if-no-ref/ -+ uart3_pi_pins: uart3-pi-pins { -+ pins = "PI9", "PI10"; -+ function = "uart3"; -+ }; -+ -+ /omit-if-no-ref/ -+ uart4_pi_pins: uart4-pi-pins { -+ pins = "PI13", "PI14"; -+ function = "uart4"; -+ }; -+ -+ /omit-if-no-ref/ -+ uart4_pi_rts_cts_pins: uart4-pi-rts-cts-pins { -+ pins = "PI15", "PI16"; -+ function = "uart4"; -+ }; -+ - /omit-if-no-ref/ - uart5_pins: uart5-pins { - pins = "PH2", "PH3"; -- 2.35.3 diff --git a/patch/kernel/archive/sunxi-6.14/patches.armbian/Sound-for-H616-H618-Allwinner-SOCs.patch b/patch/kernel/archive/sunxi-6.14/patches.armbian/Sound-for-H616-H618-Allwinner-SOCs.patch index 73bc7abf2..7dc100892 100644 --- a/patch/kernel/archive/sunxi-6.14/patches.armbian/Sound-for-H616-H618-Allwinner-SOCs.patch +++ b/patch/kernel/archive/sunxi-6.14/patches.armbian/Sound-for-H616-H618-Allwinner-SOCs.patch @@ -1,4 +1,4 @@ -From f49aad9da6e2829c87f3d87c2f983aec0f111a6a Mon Sep 17 00:00:00 2001 +From 9b0e8a8239f334a40d1637204a0f58ab2efc0061 Mon Sep 17 00:00:00 2001 From: Stephen Graf Date: Wed, 26 Mar 2025 17:06:51 +0000 Subject: Sound for H616, H618 Allwinner SOCs @@ -80,10 +80,10 @@ index 60f643abb3eb..109c33c6558f 100644 status = "okay"; }; diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi -index 6c1f1087f199..954c8eab2c44 100644 +index 307a8678e0eb..8de963bee2ac 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi -@@ -642,7 +642,8 @@ gic: interrupt-controller@3021000 { +@@ -678,7 +678,8 @@ gic: interrupt-controller@3021000 { }; iommu: iommu@30f0000 { @@ -93,7 +93,7 @@ index 6c1f1087f199..954c8eab2c44 100644 reg = <0x030f0000 0x10000>; interrupts = ; clocks = <&ccu CLK_BUS_IOMMU>; -@@ -1009,6 +1010,63 @@ codec: codec@5096000 { +@@ -1045,6 +1046,63 @@ codec: codec@5096000 { status = "disabled"; }; diff --git a/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-dts-h616-8-Add-overlays-i2c-pwm-uart.patch b/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-dts-h616-8-Add-overlays-i2c-pwm-uart.patch index e80b82576..eaac21844 100644 --- a/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-dts-h616-8-Add-overlays-i2c-pwm-uart.patch +++ b/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-dts-h616-8-Add-overlays-i2c-pwm-uart.patch @@ -1,25 +1,37 @@ -From c07564c395a35f421a9eff81d9ca77496c0106e6 Mon Sep 17 00:00:00 2001 +From a59cb6bd62351166ac38d070c12cfb7dfeff411e Mon Sep 17 00:00:00 2001 From: The-going <48602507+The-going@users.noreply.github.com> Date: Thu, 10 Apr 2025 21:46:22 +0300 Subject: arm64: dts: h616(8): Add overlays i2c, pwm, uart +Signed-off-by: The-going <48602507+The-going@users.noreply.github.com> +Signed-off-by: Exodus --- - .../arm64/boot/dts/allwinner/overlay/Makefile | 14 +++++++++++++ - .../overlay/sun50i-h616-i2c2-ph.dtso | 13 ++++++++++++ - .../overlay/sun50i-h616-i2c3-pg.dtso | 13 ++++++++++++ - .../overlay/sun50i-h616-i2c3-ph.dtso | 13 ++++++++++++ - .../overlay/sun50i-h616-i2c4-pg.dtso | 13 ++++++++++++ - .../overlay/sun50i-h616-i2c4-ph.dtso | 13 ++++++++++++ - .../overlay/sun50i-h616-pwm1-ph3.dtso | 20 +++++++++++++++++++ - .../overlay/sun50i-h616-pwm1-pi11.dtso | 20 +++++++++++++++++++ - .../overlay/sun50i-h616-pwm4-ph1.dtso | 20 +++++++++++++++++++ - .../overlay/sun50i-h616-pwm4-pi14.dtso | 20 +++++++++++++++++++ - .../overlay/sun50i-h616-uart2-pg-rts-cts.dtso | 15 ++++++++++++++ - .../overlay/sun50i-h616-uart2-pg.dtso | 15 ++++++++++++++ - .../overlay/sun50i-h616-uart2-ph-rts-cts.dtso | 15 ++++++++++++++ - .../overlay/sun50i-h616-uart2-ph.dtso | 15 ++++++++++++++ - .../allwinner/overlay/sun50i-h616-uart5.dtso | 15 ++++++++++++++ - 15 files changed, 234 insertions(+) + .../arm64/boot/dts/allwinner/overlay/Makefile | 24 +++++++++++++++++++ + .../overlay/sun50i-h616-i2c2-ph.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-i2c3-pg.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-i2c3-ph.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-i2c4-pg.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-i2c4-ph.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-pwm1-ph3.dtso | 22 +++++++++++++++++ + .../overlay/sun50i-h616-pwm1-pi11.dtso | 22 +++++++++++++++++ + .../overlay/sun50i-h616-pwm2-ph2.dtso | 22 +++++++++++++++++ + .../overlay/sun50i-h616-pwm2-pi12.dtso | 22 +++++++++++++++++ + .../overlay/sun50i-h616-pwm3-ph0.dtso | 22 +++++++++++++++++ + .../overlay/sun50i-h616-pwm3-pi13.dtso | 22 +++++++++++++++++ + .../overlay/sun50i-h616-pwm4-ph1.dtso | 20 ++++++++++++++++ + .../overlay/sun50i-h616-pwm4-pi14.dtso | 20 ++++++++++++++++ + .../overlay/sun50i-h616-uart2-pg-rts-cts.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-uart2-pg.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-uart2-ph-rts-cts.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-uart2-ph.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-uart2-pi-rts-cts.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-uart2-pi.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-uart3-pi-rts-cts.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-uart3-pi.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-uart4-pi-rts-cts.dtso | 15 ++++++++++++ + .../overlay/sun50i-h616-uart4-pi.dtso | 15 ++++++++++++ + .../allwinner/overlay/sun50i-h616-uart5.dtso | 15 ++++++++++++ + 25 files changed, 436 insertions(+) create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c2-ph.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c3-pg.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c3-ph.dtso @@ -27,19 +39,29 @@ Subject: arm64: dts: h616(8): Add overlays i2c, pwm, uart create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c4-ph.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-ph3.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-pi11.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm2-ph2.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm2-pi12.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm3-ph0.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm3-pi13.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm4-ph1.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm4-pi14.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pg-rts-cts.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pg.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-ph-rts-cts.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-ph.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pi-rts-cts.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pi.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart3-pi-rts-cts.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart3-pi.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart4-pi-rts-cts.dtso + create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart4-pi.dtso create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart5.dtso diff --git a/arch/arm64/boot/dts/allwinner/overlay/Makefile b/arch/arm64/boot/dts/allwinner/overlay/Makefile -index 84711585fc86..fd0b06d173f7 100644 +index 84711585fc86..ce40c7ec5a8c 100644 --- a/arch/arm64/boot/dts/allwinner/overlay/Makefile +++ b/arch/arm64/boot/dts/allwinner/overlay/Makefile -@@ -49,6 +49,20 @@ dtb-$(CONFIG_ARCH_SUNXI) += \ +@@ -49,6 +49,30 @@ dtb-$(CONFIG_ARCH_SUNXI) += \ sun50i-h6-uart2.dtbo \ sun50i-h6-uart3.dtbo \ sun50i-h6-w1-gpio.dtbo \ @@ -50,26 +72,38 @@ index 84711585fc86..fd0b06d173f7 100644 + sun50i-h616-i2c4-ph.dtbo \ + sun50i-h616-pwm1-ph3.dtbo \ + sun50i-h616-pwm1-pi11.dtbo \ ++ sun50i-h616-pwm2-ph2.dtbo \ ++ sun50i-h616-pwm2-pi12.dtbo \ ++ sun50i-h616-pwm3-ph0.dtbo \ ++ sun50i-h616-pwm3-pi13.dtbo \ + sun50i-h616-pwm4-ph1.dtbo \ + sun50i-h616-pwm4-pi14.dtbo \ + sun50i-h616-uart2-pg.dtbo \ + sun50i-h616-uart2-pg-rts-cts.dtbo \ + sun50i-h616-uart2-ph.dtbo \ + sun50i-h616-uart2-ph-rts-cts.dtbo \ ++ sun50i-h616-uart2-pi.dtbo \ ++ sun50i-h616-uart2-pi-rts-cts.dtbo \ ++ sun50i-h616-uart3-pi.dtbo \ ++ sun50i-h616-uart3-pi-rts-cts.dtbo \ ++ sun50i-h616-uart4-pi.dtbo \ ++ sun50i-h616-uart4-pi-rts-cts.dtbo \ + sun50i-h616-uart5.dtbo \ sun50i-h616-spi-spidev.dtbo \ sun50i-h616-spidev0_0.dtbo \ sun50i-h616-spidev1_0.dtbo \ diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c2-ph.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c2-ph.dtso new file mode 100644 -index 000000000000..663633f6c7c9 +index 000000000000..c545c4dfa053 --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c2-ph.dtso -@@ -0,0 +1,13 @@ +@@ -0,0 +1,15 @@ +/dts-v1/; +/plugin/; + +/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ + fragment@0 { + target = <&i2c2>; + __overlay__ { @@ -81,14 +115,16 @@ index 000000000000..663633f6c7c9 +}; diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c3-pg.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c3-pg.dtso new file mode 100644 -index 000000000000..eb71dcb593cc +index 000000000000..08577d91fed9 --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c3-pg.dtso -@@ -0,0 +1,13 @@ +@@ -0,0 +1,15 @@ +/dts-v1/; +/plugin/; + +/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ + fragment@0 { + target = <&i2c3>; + __overlay__ { @@ -100,14 +136,16 @@ index 000000000000..eb71dcb593cc +}; diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c3-ph.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c3-ph.dtso new file mode 100644 -index 000000000000..b0aed6f59bb0 +index 000000000000..b09fa6d179f1 --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c3-ph.dtso -@@ -0,0 +1,13 @@ +@@ -0,0 +1,15 @@ +/dts-v1/; +/plugin/; + +/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ + fragment@0 { + target = <&i2c3>; + __overlay__ { @@ -119,14 +157,16 @@ index 000000000000..b0aed6f59bb0 +}; diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c4-pg.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c4-pg.dtso new file mode 100644 -index 000000000000..6a83466f5b37 +index 000000000000..2f6f3124357c --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c4-pg.dtso -@@ -0,0 +1,13 @@ +@@ -0,0 +1,15 @@ +/dts-v1/; +/plugin/; + +/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ + fragment@0 { + target = <&i2c4>; + __overlay__ { @@ -138,14 +178,16 @@ index 000000000000..6a83466f5b37 +}; diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c4-ph.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c4-ph.dtso new file mode 100644 -index 000000000000..cfa737d701d8 +index 000000000000..951a1a79530c --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c4-ph.dtso -@@ -0,0 +1,13 @@ +@@ -0,0 +1,15 @@ +/dts-v1/; +/plugin/; + +/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ + fragment@0 { + target = <&i2c4>; + __overlay__ { @@ -157,14 +199,16 @@ index 000000000000..cfa737d701d8 +}; diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-ph3.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-ph3.dtso new file mode 100644 -index 000000000000..fa7697a63915 +index 000000000000..95c360feb3ea --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-ph3.dtso -@@ -0,0 +1,20 @@ +@@ -0,0 +1,22 @@ +/dts-v1/; +/plugin/; + +/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ + fragment@0 { + target = <&pwm>; + __overlay__ { @@ -183,14 +227,16 @@ index 000000000000..fa7697a63915 +}; diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-pi11.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-pi11.dtso new file mode 100644 -index 000000000000..c42dabb470f3 +index 000000000000..39c9b31f61eb --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-pi11.dtso -@@ -0,0 +1,20 @@ +@@ -0,0 +1,22 @@ +/dts-v1/; +/plugin/; + +/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ + fragment@0 { + target = <&pwm>; + __overlay__ { @@ -207,6 +253,118 @@ index 000000000000..c42dabb470f3 + }; + }; +}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm2-ph2.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm2-ph2.dtso +new file mode 100644 +index 000000000000..4ba8dc968741 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm2-ph2.dtso +@@ -0,0 +1,22 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&pwm>; ++ __overlay__ { ++ status = "okay"; ++ }; ++ }; ++ ++ fragment@1 { ++ target = <&pwm2>; ++ __overlay__ { ++ status = "okay"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pwm2_ph_pin>; ++ }; ++ }; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm2-pi12.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm2-pi12.dtso +new file mode 100644 +index 000000000000..a23c45c9bda7 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm2-pi12.dtso +@@ -0,0 +1,22 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&pwm>; ++ __overlay__ { ++ status = "okay"; ++ }; ++ }; ++ ++ fragment@1 { ++ target = <&pwm2>; ++ __overlay__ { ++ status = "okay"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pwm2_pi_pin>; ++ }; ++ }; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm3-ph0.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm3-ph0.dtso +new file mode 100644 +index 000000000000..029dff6202bb +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm3-ph0.dtso +@@ -0,0 +1,22 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&pwm>; ++ __overlay__ { ++ status = "okay"; ++ }; ++ }; ++ ++ fragment@1 { ++ target = <&pwm3>; ++ __overlay__ { ++ status = "okay"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pwm3_ph_pin>; ++ }; ++ }; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm3-pi13.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm3-pi13.dtso +new file mode 100644 +index 000000000000..e6645573aae5 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm3-pi13.dtso +@@ -0,0 +1,22 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&pwm>; ++ __overlay__ { ++ status = "okay"; ++ }; ++ }; ++ ++ fragment@1 { ++ target = <&pwm3>; ++ __overlay__ { ++ status = "okay"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pwm3_pi_pin>; ++ }; ++ }; ++}; diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm4-ph1.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm4-ph1.dtso new file mode 100644 index 000000000000..381a3db48cba @@ -343,6 +501,132 @@ index 000000000000..438af7517b5a + }; + }; +}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pi-rts-cts.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pi-rts-cts.dtso +new file mode 100644 +index 000000000000..f7426899b938 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pi-rts-cts.dtso +@@ -0,0 +1,15 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&uart2>; ++ __overlay__ { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart2_pi_pins>, <&uart2_pi_rts_cts_pins>; ++ status = "okay"; ++ }; ++ }; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pi.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pi.dtso +new file mode 100644 +index 000000000000..8e816a05fb42 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pi.dtso +@@ -0,0 +1,15 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&uart2>; ++ __overlay__ { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart2_pi_pins>; ++ status = "okay"; ++ }; ++ }; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart3-pi-rts-cts.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart3-pi-rts-cts.dtso +new file mode 100644 +index 000000000000..55db4644693d +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart3-pi-rts-cts.dtso +@@ -0,0 +1,15 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&uart3>; ++ __overlay__ { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart3_pi_pins>, <&uart3_pi_rts_cts_pins>; ++ status = "okay"; ++ }; ++ }; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart3-pi.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart3-pi.dtso +new file mode 100644 +index 000000000000..e75292e67b7c +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart3-pi.dtso +@@ -0,0 +1,15 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&uart3>; ++ __overlay__ { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart3_pi_pins>; ++ status = "okay"; ++ }; ++ }; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart4-pi-rts-cts.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart4-pi-rts-cts.dtso +new file mode 100644 +index 000000000000..b4f4d0bda5f6 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart4-pi-rts-cts.dtso +@@ -0,0 +1,15 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&uart3>; ++ __overlay__ { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart4_pi_pins>, <&uart4_pi_rts_cts_pins>; ++ status = "okay"; ++ }; ++ }; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart4-pi.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart4-pi.dtso +new file mode 100644 +index 000000000000..21898add0f84 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart4-pi.dtso +@@ -0,0 +1,15 @@ ++/dts-v1/; ++/plugin/; ++ ++/ { ++ compatible = "allwinner,sun50i-h616", "allwinner,sun50i-h618"; ++ ++ fragment@0 { ++ target = <&uart3>; ++ __overlay__ { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart4_pi_pins>; ++ status = "okay"; ++ }; ++ }; ++}; diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart5.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart5.dtso new file mode 100644 index 000000000000..27b4ab085d98 diff --git a/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-dts-sun50i-h618-orangepi-zero2w-Add-missing-nodes.patch b/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-dts-sun50i-h618-orangepi-zero2w-Add-missing-nodes.patch index 5c01fb83d..8c4dd1d23 100644 --- a/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-dts-sun50i-h618-orangepi-zero2w-Add-missing-nodes.patch +++ b/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-dts-sun50i-h618-orangepi-zero2w-Add-missing-nodes.patch @@ -1,4 +1,4 @@ -From 02932a4604480b9cfdc1dde55deff32ec2a4a5b4 Mon Sep 17 00:00:00 2001 +From 57dc021d97d9077b4a3a7be733a0683a9725d43e Mon Sep 17 00:00:00 2001 From: chraac Date: Fri, 15 Mar 2024 12:30:26 +0800 Subject: arm64: dts: sun50i-h618-orangepi-zero2w: Add missing nodes @@ -11,7 +11,7 @@ Signed-off-by: Exodus 2 files changed, 210 insertions(+), 8 deletions(-) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi -index 72d008d6d4e7..6c1f1087f199 100644 +index 38f3dc9f4fea..307a8678e0eb 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi @@ -241,7 +241,7 @@ video-codec@1c0e000 { @@ -23,7 +23,7 @@ index 72d008d6d4e7..6c1f1087f199 100644 #address-cells = <1>; #size-cells = <1>; ranges; -@@ -919,19 +919,28 @@ mdio0: mdio { +@@ -955,19 +955,28 @@ mdio0: mdio { }; emac1: ethernet@5030000 { diff --git a/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-sun50i-h616-Add-i2c-2-3-4-uart-2-5-pins.patch b/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-sun50i-h616-Add-i2c-2-3-4-uart-2-5-pins.patch index fe65d9db5..b699a8a7f 100644 --- a/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-sun50i-h616-Add-i2c-2-3-4-uart-2-5-pins.patch +++ b/patch/kernel/archive/sunxi-6.14/patches.armbian/arm64-sun50i-h616-Add-i2c-2-3-4-uart-2-5-pins.patch @@ -1,4 +1,4 @@ -From c171891d217842915642e7fcc23b8b1d474a7e68 Mon Sep 17 00:00:00 2001 +From 05e16d776c12bd7a31a80a4b9485afe67581c5a4 Mon Sep 17 00:00:00 2001 From: The-going <48602507+The-going@users.noreply.github.com> Date: Sat, 8 Feb 2025 12:37:21 +0300 Subject: arm64: sun50i-h616: Add i2c(2,3,4), uart(2,5) pins @@ -9,11 +9,11 @@ in device trees and overlays. link to: drivers/pinctrl/sunxi/pinctrl-sun50i-h616.c --- - .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 67 +++++++++++++++++++ - 1 file changed, 67 insertions(+) + .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 103 ++++++++++++++++++ + 1 file changed, 103 insertions(+) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi -index 564c5853af97..668ed3b9090a 100644 +index 564c5853af97..084324d1e809 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi +++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi @@ -371,11 +371,48 @@ i2c0_pins: i2c0-pins { @@ -65,7 +65,7 @@ index 564c5853af97..668ed3b9090a 100644 ir_rx_pin: ir-rx-pin { pins = "PH10"; function = "ir_rx"; -@@ -453,6 +490,36 @@ uart1_rts_cts_pins: uart1-rts-cts-pins { +@@ -453,6 +490,72 @@ uart1_rts_cts_pins: uart1-rts-cts-pins { function = "uart1"; }; @@ -94,6 +94,42 @@ index 564c5853af97..668ed3b9090a 100644 + }; + + /omit-if-no-ref/ ++ uart2_pi_pins: uart2-pi-pins { ++ pins = "PI5", "PI6"; ++ function = "uart2"; ++ }; ++ ++ /omit-if-no-ref/ ++ uart2_pi_rts_cts_pins: uart2-pi-rts-cts-pins { ++ pins = "PI7", "PI8"; ++ function = "uart2"; ++ }; ++ ++ /omit-if-no-ref/ ++ uart3_pi_pins: uart3-pi-pins { ++ pins = "PI9", "PI10"; ++ function = "uart2"; ++ }; ++ ++ /omit-if-no-ref/ ++ uart3_pi_rts_cts_pins: uart3-pi-rts-cts-pins { ++ pins = "PI11", "PI12"; ++ function = "uart2"; ++ }; ++ ++ /omit-if-no-ref/ ++ uart4_pi_pins: uart4-pi-pins { ++ pins = "PI13", "PI14"; ++ function = "uart2"; ++ }; ++ ++ /omit-if-no-ref/ ++ uart4_pi_rts_cts_pins: uart4-pi-rts-cts-pins { ++ pins = "PI15", "PI16"; ++ function = "uart2"; ++ }; ++ ++ /omit-if-no-ref/ + uart5_pins: uart5-pins { + pins = "PH2", "PH3"; + function = "uart5"; diff --git a/patch/kernel/archive/sunxi-6.14/patches.armbian/h616-add-keys.patch b/patch/kernel/archive/sunxi-6.14/patches.armbian/h616-add-keys.patch index 7667b8e5a..bcb22dccf 100644 --- a/patch/kernel/archive/sunxi-6.14/patches.armbian/h616-add-keys.patch +++ b/patch/kernel/archive/sunxi-6.14/patches.armbian/h616-add-keys.patch @@ -23,7 +23,7 @@ index 3b0e2393552d..f637933c003f 100644 + sun50i-h616-keys.dtbo \ sun50i-h616-pwm1-ph3.dtbo \ sun50i-h616-pwm1-pi11.dtbo \ - sun50i-h616-pwm4-ph1.dtbo \ + sun50i-h616-pwm2-ph2.dtbo \ diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-keys.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-keys.dtso new file mode 100644 index 000000000000..e8a5665d77ce