]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
arm64: dts: amlogic: Add Amlogic S4 PWM
authorJunyi Zhao <junyi.zhao@amlogic.com>
Thu, 13 Jun 2024 11:46:36 +0000 (19:46 +0800)
committerNeil Armstrong <neil.armstrong@linaro.org>
Thu, 27 Jun 2024 07:52:43 +0000 (09:52 +0200)
Add device nodes for PWM_AB, PWM_CD, PWM_EF, PWM_GH and PWM_IJ
along with GPIO PIN configs of each channel.

Signed-off-by: Junyi Zhao <junyi.zhao@amlogic.com>
Reviewed-by: George Stark <gnstark@salutedevices.com>
Signed-off-by: Kelvin Zhang <kelvin.zhang@amlogic.com>
Link: https://lore.kernel.org/r/20240613-s4-pwm-v8-2-b5bd0a768282@amlogic.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
arch/arm64/boot/dts/amlogic/meson-s4.dtsi

index 10896f9df682d8c59afa9db032ab49e01d568392..b686eacb966207e2d17b0c10e68daea25ee6babf 100644 (file)
                                        };
                                };
 
+                               pwm_a_pins1: pwm-a-pins1 {
+                                       mux {
+                                               groups = "pwm_a_d";
+                                               function = "pwm_a";
+                                       };
+                               };
+
+                               pwm_a_pins2: pwm-a-pins2 {
+                                       mux {
+                                               groups = "pwm_a_x";
+                                               function = "pwm_a";
+                                       };
+                               };
+
+                               pwm_b_pins1: pwm-b-pins1 {
+                                       mux {
+                                               groups = "pwm_b_d";
+                                               function = "pwm_b";
+                                       };
+                               };
+
+                               pwm_b_pins2: pwm-b-pins2 {
+                                       mux {
+                                               groups = "pwm_b_x";
+                                               function = "pwm_b";
+                                       };
+                               };
+
+                               pwm_c_pins1: pwm-c-pins1 {
+                                       mux {
+                                               groups = "pwm_c_d";
+                                               function = "pwm_c";
+                                       };
+                               };
+
+                               pwm_c_pins2: pwm-c-pins2 {
+                                       mux {
+                                               groups = "pwm_c_x";
+                                               function = "pwm_c";
+                                       };
+                               };
+
+                               pwm_d_pins1: pwm-d-pins1 {
+                                       mux {
+                                               groups = "pwm_d_d";
+                                               function = "pwm_d";
+                                       };
+                               };
+
+                               pwm_d_pins2: pwm-d-pins2 {
+                                       mux {
+                                               groups = "pwm_d_h";
+                                               function = "pwm_d";
+                                       };
+                               };
+
+                               pwm_e_pins1: pwm-e-pins1 {
+                                       mux {
+                                               groups = "pwm_e_x";
+                                               function = "pwm_e";
+                                       };
+                               };
+
+                               pwm_e_pins2: pwm-e-pins2 {
+                                       mux {
+                                               groups = "pwm_e_z";
+                                               function = "pwm_e";
+                                       };
+                               };
+
+                               pwm_f_pins1: pwm-f-pins1 {
+                                       mux {
+                                               groups = "pwm_f_x";
+                                               function = "pwm_f";
+                                       };
+                               };
+
+                               pwm_f_pins2: pwm-f-pins2 {
+                                       mux {
+                                               groups = "pwm_f_z";
+                                               function = "pwm_f";
+                                       };
+                               };
+
+                               pwm_g_pins1: pwm-g-pins1 {
+                                       mux {
+                                               groups = "pwm_g_d";
+                                               function = "pwm_g";
+                                       };
+                               };
+
+                               pwm_g_pins2: pwm-g-pins2 {
+                                       mux {
+                                               groups = "pwm_g_z";
+                                               function = "pwm_g";
+                                       };
+                               };
+
+                               pwm_h_pins: pwm-h-pins {
+                                       mux {
+                                               groups = "pwm_h";
+                                               function = "pwm_h";
+                                       };
+                               };
+
+                               pwm_i_pins1: pwm-i-pins1 {
+                                       mux {
+                                               groups = "pwm_i_d";
+                                               function = "pwm_i";
+                                       };
+                               };
+
+                               pwm_i_pins2: pwm-i-pins2 {
+                                       mux {
+                                               groups = "pwm_i_h";
+                                               function = "pwm_i";
+                                       };
+                               };
+
+                               pwm_j_pins: pwm-j-pins {
+                                       mux {
+                                               groups = "pwm_j";
+                                               function = "pwm_j";
+                                       };
+                               };
+
+                               pwm_a_hiz_pins: pwm-a-hiz-pins {
+                                       mux {
+                                               groups = "pwm_a_hiz";
+                                               function = "pwm_a_hiz";
+                                       };
+                               };
+
+                               pwm_b_hiz_pins: pwm-b-hiz-pins {
+                                       mux {
+                                               groups = "pwm_b_hiz";
+                                               function = "pwm_b_hiz";
+                                       };
+                               };
+
+                               pwm_c_hiz_pins: pwm-c-hiz-pins {
+                                       mux {
+                                               groups = "pwm_c_hiz";
+                                               function = "pwm_c_hiz";
+                                       };
+                               };
+
+                               pwm_g_hiz_pins: pwm-g-hiz-pins {
+                                       mux {
+                                               groups = "pwm_g_hiz";
+                                               function = "pwm_g_hiz";
+                                       };
+                               };
+
                                spicc0_pins_x: spicc0-pins_x {
                                        mux {
                                                groups = "spi_a_mosi_x",
                                status = "disabled";
                        };
 
+                       pwm_ab: pwm@58000 {
+                               compatible = "amlogic,meson-s4-pwm";
+                               reg = <0x0 0x58000 0x0 0x24>;
+                               clocks = <&clkc_periphs CLKID_PWM_A>,
+                                        <&clkc_periphs CLKID_PWM_B>;
+                               #pwm-cells = <3>;
+                               status = "disabled";
+                       };
+
+                       pwm_cd: pwm@5a000 {
+                               compatible = "amlogic,meson-s4-pwm";
+                               reg = <0x0 0x5a000 0x0 0x24>;
+                               clocks = <&clkc_periphs CLKID_PWM_C>,
+                                        <&clkc_periphs CLKID_PWM_D>;
+                               #pwm-cells = <3>;
+                               status = "disabled";
+                       };
+
+                       pwm_ef: pwm@5c000 {
+                               compatible = "amlogic,meson-s4-pwm";
+                               reg = <0x0 0x5c000 0x0 0x24>;
+                               clocks = <&clkc_periphs CLKID_PWM_E>,
+                                        <&clkc_periphs CLKID_PWM_F>;
+                               #pwm-cells = <3>;
+                               status = "disabled";
+                       };
+
+                       pwm_gh: pwm@5e000 {
+                               compatible = "amlogic,meson-s4-pwm";
+                               reg = <0x0 0x5e000 0x0 0x24>;
+                               clocks = <&clkc_periphs CLKID_PWM_G>,
+                                        <&clkc_periphs CLKID_PWM_H>;
+                               #pwm-cells = <3>;
+                               status = "disabled";
+                       };
+
+                       pwm_ij: pwm@60000 {
+                               compatible = "amlogic,meson-s4-pwm";
+                               reg = <0x0 0x60000 0x0 0x24>;
+                               clocks = <&clkc_periphs CLKID_PWM_I>,
+                                        <&clkc_periphs CLKID_PWM_J>;
+                               #pwm-cells = <3>;
+                               status = "disabled";
+                       };
+
                        i2c0: i2c@66000 {
                                compatible = "amlogic,meson-axg-i2c";
                                reg = <0x0 0x66000 0x0 0x20>;