sunxi-6.13: sun50i-h616: add pwm nodes, pwm pins overlays

This commit is contained in:
The-going 2025-04-11 10:51:13 +03:00 committed by Igor
parent 481b407b6b
commit f61dc0c13e
3 changed files with 280 additions and 18 deletions

View File

@ -1,26 +1,34 @@
From 428b6d645ccf1acf574c3e13c6261ff75ade2411 Mon Sep 17 00:00:00 2001
From c07564c395a35f421a9eff81d9ca77496c0106e6 Mon Sep 17 00:00:00 2001
From: The-going <48602507+The-going@users.noreply.github.com>
Date: Sat, 8 Feb 2025 16:38:23 +0300
Subject: arm64: dts: h616(8): Add overlays i2c(234)ph,pg; uart(25)ph,pg
Date: Thu, 10 Apr 2025 21:46:22 +0300
Subject: arm64: dts: h616(8): Add overlays i2c, pwm, uart
---
arch/arm64/boot/dts/allwinner/overlay/Makefile | 10 ++++++++++
.../allwinner/overlay/sun50i-h616-i2c2-ph.dtso | 13 +++++++++++++
.../allwinner/overlay/sun50i-h616-i2c3-pg.dtso | 13 +++++++++++++
.../allwinner/overlay/sun50i-h616-i2c3-ph.dtso | 13 +++++++++++++
.../allwinner/overlay/sun50i-h616-i2c4-pg.dtso | 13 +++++++++++++
.../allwinner/overlay/sun50i-h616-i2c4-ph.dtso | 13 +++++++++++++
.../overlay/sun50i-h616-uart2-pg-rts-cts.dtso | 15 +++++++++++++++
.../allwinner/overlay/sun50i-h616-uart2-pg.dtso | 15 +++++++++++++++
.../overlay/sun50i-h616-uart2-ph-rts-cts.dtso | 15 +++++++++++++++
.../allwinner/overlay/sun50i-h616-uart2-ph.dtso | 15 +++++++++++++++
.../dts/allwinner/overlay/sun50i-h616-uart5.dtso | 15 +++++++++++++++
11 files changed, 150 insertions(+)
.../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(+)
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
create mode 100644 arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-i2c4-pg.dtso
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-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
@ -28,10 +36,10 @@ Subject: arm64: dts: h616(8): Add overlays i2c(234)ph,pg; uart(25)ph,pg
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 fb6b30d5753e..775290d031bf 100644
index 84711585fc86..fd0b06d173f7 100644
--- a/arch/arm64/boot/dts/allwinner/overlay/Makefile
+++ b/arch/arm64/boot/dts/allwinner/overlay/Makefile
@@ -48,6 +48,16 @@ dtb-$(CONFIG_ARCH_SUNXI) += \
@@ -49,6 +49,20 @@ dtb-$(CONFIG_ARCH_SUNXI) += \
sun50i-h6-uart2.dtbo \
sun50i-h6-uart3.dtbo \
sun50i-h6-w1-gpio.dtbo \
@ -40,6 +48,10 @@ index fb6b30d5753e..775290d031bf 100644
+ sun50i-h616-i2c3-ph.dtbo \
+ sun50i-h616-i2c4-pg.dtbo \
+ sun50i-h616-i2c4-ph.dtbo \
+ sun50i-h616-pwm1-ph3.dtbo \
+ sun50i-h616-pwm1-pi11.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 \
@ -143,6 +155,110 @@ 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
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-ph3.dtso
@@ -0,0 +1,20 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+ fragment@0 {
+ target = <&pwm>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&pwm1>;
+ __overlay__ {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm1_ph_pin>;
+ };
+ };
+};
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
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm1-pi11.dtso
@@ -0,0 +1,20 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+ fragment@0 {
+ target = <&pwm>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&pwm1>;
+ __overlay__ {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm1_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
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm4-ph1.dtso
@@ -0,0 +1,20 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+ fragment@0 {
+ target = <&pwm>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&pwm4>;
+ __overlay__ {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm4_ph_pin>;
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm4-pi14.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm4-pi14.dtso
new file mode 100644
index 000000000000..47302a13a7bf
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-pwm4-pi14.dtso
@@ -0,0 +1,20 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+ fragment@0 {
+ target = <&pwm>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&pwm4>;
+ __overlay__ {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm4_pi_pin>;
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pg-rts-cts.dtso b/arch/arm64/boot/dts/allwinner/overlay/sun50i-h616-uart2-pg-rts-cts.dtso
new file mode 100644
index 000000000000..7cee4ebec233

View File

@ -0,0 +1,145 @@
From 27928e904c38bafc1702ac3f02e84be6ad7a6d12 Mon Sep 17 00:00:00 2001
From: The-going <48602507+The-going@users.noreply.github.com>
Date: Thu, 10 Apr 2025 13:19:52 +0300
Subject: arm64: dts: sun50i-h616: add pwm nodes support
---
.../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 115 ++++++++++++++++++
1 file changed, 115 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
index 668ed3b9090a..fc134db28f75 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi
@@ -332,6 +332,55 @@ watchdog: watchdog@30090a0 {
clocks = <&osc24M>;
};
+ pwm: pwm@300a000 {
+ compatible = "allwinner,sun50i-h616-pwm";
+ reg = <0x0300a000 0x400>;
+ clocks = <&osc24M>, <&ccu CLK_BUS_PWM>;
+ clock-names = "mod", "bus";
+ resets = <&ccu RST_BUS_PWM>;
+ pwm-number = <6>;
+ pwm-base = <0x0>;
+ sunxi-pwms = <&pwm0>, <&pwm1>, <&pwm2>,
+ <&pwm3>, <&pwm4>, <&pwm5>;
+ #pwm-cells = <3>;
+ status = "disabled";
+ };
+
+ pwm0: pwm0@0300a000 {
+ compatible = "allwinner,sunxi-pwm0";
+ /* pinctrl-names = "default"; */
+ /* pinctrl-0 = <&pwm0_pin>; */
+ /* status = "disabled"; */
+ };
+
+ pwm1: pwm1@0300a000 {
+ compatible = "allwinner,sunxi-pwm1";
+ pinctrl-names = "default";
+ };
+
+ pwm2: pwm2@0300a000 {
+ compatible = "allwinner,sunxi-pwm2";
+ pinctrl-names = "default";
+ };
+
+ pwm3: pwm3@0300a000 {
+ compatible = "allwinner,sunxi-pwm3";
+ pinctrl-names = "default";
+ };
+
+ pwm4: pwm4@0300a000 {
+ compatible = "allwinner,sunxi-pwm4";
+ pinctrl-names = "default";
+ };
+
+ pwm5: pwm5@0300a000 {
+ compatible = "allwinner,sunxi-pwm5";
+ pinctrl-names = "default";
+ /* pinctrl-0 = <&pwm5_pin>;
+ clk_bypass_output = <0x1>;
+ status = "disabled"; */
+ };
+
pio: pinctrl@300b000 {
compatible = "allwinner,sun50i-h616-pinctrl";
reg = <0x0300b000 0x400>;
@@ -444,6 +493,72 @@ mmc2_pins: mmc2-pins {
bias-pull-up;
};
+ /omit-if-no-ref/
+ pwm0_pin: pwm0-pin {
+ pins = "PD28";
+ function = "pwm0";
+ };
+
+ /omit-if-no-ref/
+ pwm1_pg_pin: pwm1-pg-pin {
+ pins = "PG19";
+ function = "pwm1";
+ };
+
+ /omit-if-no-ref/
+ pwm1_ph_pin: pwm1-ph-pin {
+ pins = "PH3";
+ function = "pwm1";
+ };
+
+ /omit-if-no-ref/
+ pwm1_pi_pin: pwm1-pi-pin {
+ pins = "PI11";
+ function = "pwm1";
+ };
+
+ /omit-if-no-ref/
+ pwm2_ph_pin: pwm2-ph-pin {
+ pins = "PH2";
+ function = "pwm2";
+ };
+
+ /omit-if-no-ref/
+ pwm2_pi_pin: pwm2-pi-pin {
+ pins = "PI12";
+ function = "pwm2";
+ };
+
+ /omit-if-no-ref/
+ pwm3_ph_pin: pwm3-ph-pin {
+ pins = "PH0";
+ function = "pwm3";
+ };
+
+ /omit-if-no-ref/
+ pwm3_pi_pin: pwm3-pi-pin {
+ pins = "PI13";
+ function = "pwm3";
+ };
+
+ /omit-if-no-ref/
+ pwm4_ph_pin: pwm4-ph-pin {
+ pins = "PH1";
+ function = "pwm4";
+ };
+
+ /omit-if-no-ref/
+ pwm4_pi_pin: pwm4-pi-pin {
+ pins = "PI14";
+ function = "pwm4";
+ };
+
+ pwm5_pin: pwm5-pin {
+ pins = "PA12";
+ function = "pwm5";
+ bias-pull-up;
+ };
+
/omit-if-no-ref/
spi0_pins: spi0-pins {
pins = "PC0", "PC2", "PC4";
--
2.35.3

View File

@ -165,7 +165,8 @@
patches.armbian/arm64-dts-sun50i-h618-orangepi-zero3-Enable-GPU-mali.patch
patches.armbian/arm64-dts-h616-add-hdmi-support-for-zero2-and-zero3.patch
patches.armbian/arm64-sun50i-h616-Add-i2c-2-3-4-uart-2-5-pins.patch
patches.armbian/arm64-dts-h616-8-Add-overlays-i2c-234-ph-pg-uart-25-ph-pg.patch
patches.armbian/arm64-dts-sun50i-h616-add-pwm-nodes-support.patch
patches.armbian/arm64-dts-h616-8-Add-overlays-i2c-pwm-uart.patch
patches.armbian/arm64-dts-sun50i-h618-orangepi-zero2w-Add-missing-nodes.patch
patches.armbian/add-dtb-overlay-for-zero2w.patch
patches.armbian/Sound-for-H616-H618-Allwinner-SOCs.patch