Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pinctrl: meson-g12a: add g12b pwm groups

G12B and SM1 have additional PWM pinmuxes for b, c, and d.

Signed-off-by: Da Xue <da@libre.computer>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/20250619022337.43900-1-da@libre.computer
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by

Da Xue and committed by
Linus Walleij
b58ea88d c0d03cdf

+19 -3
+19 -3
drivers/pinctrl/meson/pinctrl-meson-g12a.c
··· 270 270 /* pwm_b */ 271 271 static const unsigned int pwm_b_x7_pins[] = { GPIOX_7 }; 272 272 static const unsigned int pwm_b_x19_pins[] = { GPIOX_19 }; 273 + static const unsigned int pwm_b_z0_pins[] = { GPIOZ_0 }; 274 + static const unsigned int pwm_b_z13_pins[] = { GPIOZ_13 }; 275 + static const unsigned int pwm_b_h_pins[] = { GPIOH_7 }; 273 276 274 277 /* pwm_c */ 275 278 static const unsigned int pwm_c_c_pins[] = { GPIOC_4 }; 276 279 static const unsigned int pwm_c_x5_pins[] = { GPIOX_5 }; 277 280 static const unsigned int pwm_c_x8_pins[] = { GPIOX_8 }; 281 + static const unsigned int pwm_c_z_pins[] = { GPIOZ_1 }; 278 282 279 283 /* pwm_d */ 280 284 static const unsigned int pwm_d_x3_pins[] = { GPIOX_3 }; 281 285 static const unsigned int pwm_d_x6_pins[] = { GPIOX_6 }; 286 + static const unsigned int pwm_d_z_pins[] = { GPIOZ_2 }; 287 + static const unsigned int pwm_d_a_pins[] = { GPIOA_4 }; 282 288 283 289 /* pwm_e */ 284 290 static const unsigned int pwm_e_pins[] = { GPIOX_16 }; ··· 655 649 GROUP(pwm_a, 1), 656 650 GROUP(pwm_b_x7, 4), 657 651 GROUP(pwm_b_x19, 1), 652 + GROUP(pwm_b_z0, 5), 653 + GROUP(pwm_b_z13, 5), 654 + GROUP(pwm_b_h, 5), 658 655 GROUP(pwm_c_x5, 4), 659 656 GROUP(pwm_c_x8, 5), 657 + GROUP(pwm_c_c, 5), 658 + GROUP(pwm_c_z, 5), 659 + GROUP(pwm_d_z, 4), 660 + GROUP(pwm_d_a, 3), 660 661 GROUP(pwm_d_x3, 4), 661 662 GROUP(pwm_d_x6, 4), 662 663 GROUP(pwm_e, 1), 664 + GROUP(pwm_f_a, 3), 665 + GROUP(pwm_f_h, 4), 663 666 GROUP(pwm_f_x, 1), 667 + GROUP(pwm_f_z, 5), 664 668 GROUP(tsin_a_valid, 3), 665 669 GROUP(tsin_a_sop, 3), 666 670 GROUP(tsin_a_din0, 3), ··· 1074 1058 }; 1075 1059 1076 1060 static const char * const pwm_b_groups[] = { 1077 - "pwm_b_x7", "pwm_b_x19", 1061 + "pwm_b_h", "pwm_b_x7", "pwm_b_x19", "pwm_b_z0", "pwm_b_z13" 1078 1062 }; 1079 1063 1080 1064 static const char * const pwm_c_groups[] = { 1081 - "pwm_c_c", "pwm_c_x5", "pwm_c_x8", 1065 + "pwm_c_c", "pwm_c_x5", "pwm_c_x8", "pwm_c_z", 1082 1066 }; 1083 1067 1084 1068 static const char * const pwm_d_groups[] = { 1085 - "pwm_d_x3", "pwm_d_x6", 1069 + "pwm_d_a", "pwm_d_x3", "pwm_d_x6", "pwm_d_z", 1086 1070 }; 1087 1071 1088 1072 static const char * const pwm_e_groups[] = {