pinctrl: meson-g12a: add more pwm_d options

This commit is contained in:
retro98boy 2025-05-30 21:27:05 +08:00 committed by Igor
parent aa5526a918
commit 66cc1f04d4
2 changed files with 48 additions and 28 deletions

View File

@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From e1e66c32b7a9ce7cf52922fe073c4bff40054599 Mon Sep 17 00:00:00 2001
From: Yuntian Zhang <yt@radxa.com>
Date: Thu, 13 Jan 2022 21:34:10 +0800
Subject: pinctrl: meson: Add several missing pinmux for pwm functions
Subject: [PATCH] pinctrl: meson: Add several missing pinmux for pwm functions
The following pin definitions are mentioned in A311D Quick
Reference Manual and S922X Public Datasheet, but not in S905Y2
@ -11,15 +11,15 @@ They are currently exposed in Radxa Zero 2's GPIO header.
Signed-off-by: Yuntian Zhang <yt@radxa.com>
---
arch/arm64/boot/dts/amlogic/meson-g12b.dtsi | 34 ++++++++++
drivers/pinctrl/meson/pinctrl-meson-g12a.c | 14 +++-
2 files changed, 45 insertions(+), 3 deletions(-)
arch/arm64/boot/dts/amlogic/meson-g12b.dtsi | 42 +++++++++++++++++++++
drivers/pinctrl/meson/pinctrl-meson-g12a.c | 16 ++++++--
2 files changed, 55 insertions(+), 3 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi
index 111111111111..222222222222 100644
index 86e6ceb31..b2f9a09b2 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi
@@ -149,3 +149,37 @@ &pmu {
@@ -149,3 +149,45 @@ &pmu {
&npu {
power-domains = <&pwrc PWRC_G12A_NNA_ID>;
};
@ -56,12 +56,20 @@ index 111111111111..222222222222 100644
+ bias-disable;
+ };
+ };
+
+ pwm_d_a_pins: pwm-d-a {
+ mux {
+ groups = "pwm_d_a";
+ function = "pwm_d";
+ bias-disable;
+ };
+ };
+};
diff --git a/drivers/pinctrl/meson/pinctrl-meson-g12a.c b/drivers/pinctrl/meson/pinctrl-meson-g12a.c
index 111111111111..222222222222 100644
index e2788bfc5..c94360afc 100644
--- a/drivers/pinctrl/meson/pinctrl-meson-g12a.c
+++ b/drivers/pinctrl/meson/pinctrl-meson-g12a.c
@@ -271,17 +271,21 @@ static const unsigned int eth_act_led_pins[] = { GPIOZ_15 };
@@ -268,17 +268,22 @@ static const unsigned int eth_act_led_pins[] = { GPIOZ_15 };
static const unsigned int pwm_a_pins[] = { GPIOX_6 };
/* pwm_b */
@ -80,20 +88,22 @@ index 111111111111..222222222222 100644
static const unsigned int pwm_d_x3_pins[] = { GPIOX_3 };
static const unsigned int pwm_d_x6_pins[] = { GPIOX_6 };
+static const unsigned int pwm_d_z_pins[] = { GPIOZ_2 };
+static const unsigned int pwm_d_a_pins[] = { GPIOA_4 };
/* pwm_e */
static const unsigned int pwm_e_pins[] = { GPIOX_16 };
@@ -594,6 +598,9 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
@@ -591,6 +596,10 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
GROUP(bt565_a_din5, 2),
GROUP(bt565_a_din6, 2),
GROUP(bt565_a_din7, 2),
+ GROUP(pwm_b_z, 5),
+ GROUP(pwm_c_z, 5),
+ GROUP(pwm_d_z, 2),
+ GROUP(pwm_d_a, 3),
GROUP(tsin_b_valid_z, 3),
GROUP(tsin_b_sop_z, 3),
GROUP(tsin_b_din0_z, 3),
@@ -726,6 +733,7 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
@@ -723,6 +732,7 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
GROUP(uart_c_rts, 2),
GROUP(iso7816_clk_h, 1),
GROUP(iso7816_data_h, 1),
@ -101,7 +111,7 @@ index 111111111111..222222222222 100644
GROUP(pwm_f_h, 4),
GROUP(cec_ao_a_h, 4),
GROUP(cec_ao_b_h, 5),
@@ -1066,15 +1074,15 @@ static const char * const pwm_a_groups[] = {
@@ -1058,15 +1068,15 @@ static const char * const pwm_a_groups[] = {
};
static const char * const pwm_b_groups[] = {
@ -116,10 +126,10 @@ index 111111111111..222222222222 100644
static const char * const pwm_d_groups[] = {
- "pwm_d_x3", "pwm_d_x6",
+ "pwm_d_x3", "pwm_d_x6", "pwm_d_z",
+ "pwm_d_x3", "pwm_d_x6", "pwm_d_z", "pwm_d_a",
};
static const char * const pwm_e_groups[] = {
--
Armbian
2.49.0

View File

@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From e1e66c32b7a9ce7cf52922fe073c4bff40054599 Mon Sep 17 00:00:00 2001
From: Yuntian Zhang <yt@radxa.com>
Date: Thu, 13 Jan 2022 21:34:10 +0800
Subject: pinctrl: meson: Add several missing pinmux for pwm functions
Subject: [PATCH] pinctrl: meson: Add several missing pinmux for pwm functions
The following pin definitions are mentioned in A311D Quick
Reference Manual and S922X Public Datasheet, but not in S905Y2
@ -11,15 +11,15 @@ They are currently exposed in Radxa Zero 2's GPIO header.
Signed-off-by: Yuntian Zhang <yt@radxa.com>
---
arch/arm64/boot/dts/amlogic/meson-g12b.dtsi | 34 ++++++++++
drivers/pinctrl/meson/pinctrl-meson-g12a.c | 14 +++-
2 files changed, 45 insertions(+), 3 deletions(-)
arch/arm64/boot/dts/amlogic/meson-g12b.dtsi | 42 +++++++++++++++++++++
drivers/pinctrl/meson/pinctrl-meson-g12a.c | 16 ++++++--
2 files changed, 55 insertions(+), 3 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi
index 111111111111..222222222222 100644
index 86e6ceb31..b2f9a09b2 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b.dtsi
@@ -149,3 +149,37 @@ &pmu {
@@ -149,3 +149,45 @@ &pmu {
&npu {
power-domains = <&pwrc PWRC_G12A_NNA_ID>;
};
@ -56,12 +56,20 @@ index 111111111111..222222222222 100644
+ bias-disable;
+ };
+ };
+
+ pwm_d_a_pins: pwm-d-a {
+ mux {
+ groups = "pwm_d_a";
+ function = "pwm_d";
+ bias-disable;
+ };
+ };
+};
diff --git a/drivers/pinctrl/meson/pinctrl-meson-g12a.c b/drivers/pinctrl/meson/pinctrl-meson-g12a.c
index 111111111111..222222222222 100644
index e2788bfc5..c94360afc 100644
--- a/drivers/pinctrl/meson/pinctrl-meson-g12a.c
+++ b/drivers/pinctrl/meson/pinctrl-meson-g12a.c
@@ -271,17 +271,21 @@ static const unsigned int eth_act_led_pins[] = { GPIOZ_15 };
@@ -268,17 +268,22 @@ static const unsigned int eth_act_led_pins[] = { GPIOZ_15 };
static const unsigned int pwm_a_pins[] = { GPIOX_6 };
/* pwm_b */
@ -80,20 +88,22 @@ index 111111111111..222222222222 100644
static const unsigned int pwm_d_x3_pins[] = { GPIOX_3 };
static const unsigned int pwm_d_x6_pins[] = { GPIOX_6 };
+static const unsigned int pwm_d_z_pins[] = { GPIOZ_2 };
+static const unsigned int pwm_d_a_pins[] = { GPIOA_4 };
/* pwm_e */
static const unsigned int pwm_e_pins[] = { GPIOX_16 };
@@ -594,6 +598,9 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
@@ -591,6 +596,10 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
GROUP(bt565_a_din5, 2),
GROUP(bt565_a_din6, 2),
GROUP(bt565_a_din7, 2),
+ GROUP(pwm_b_z, 5),
+ GROUP(pwm_c_z, 5),
+ GROUP(pwm_d_z, 2),
+ GROUP(pwm_d_a, 3),
GROUP(tsin_b_valid_z, 3),
GROUP(tsin_b_sop_z, 3),
GROUP(tsin_b_din0_z, 3),
@@ -726,6 +733,7 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
@@ -723,6 +732,7 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
GROUP(uart_c_rts, 2),
GROUP(iso7816_clk_h, 1),
GROUP(iso7816_data_h, 1),
@ -101,7 +111,7 @@ index 111111111111..222222222222 100644
GROUP(pwm_f_h, 4),
GROUP(cec_ao_a_h, 4),
GROUP(cec_ao_b_h, 5),
@@ -1066,15 +1074,15 @@ static const char * const pwm_a_groups[] = {
@@ -1058,15 +1068,15 @@ static const char * const pwm_a_groups[] = {
};
static const char * const pwm_b_groups[] = {
@ -116,10 +126,10 @@ index 111111111111..222222222222 100644
static const char * const pwm_d_groups[] = {
- "pwm_d_x3", "pwm_d_x6",
+ "pwm_d_x3", "pwm_d_x6", "pwm_d_z",
+ "pwm_d_x3", "pwm_d_x6", "pwm_d_z", "pwm_d_a",
};
static const char * const pwm_e_groups[] = {
--
Armbian
2.49.0