pinctrl: npcx: config pwm open-drain without enabling STORE_REG

Config pwm open-drain mode without enabling STORE_REG. This CL
collects all active PWM's base address and related index in an
array. Then, pinctrl driver configs its open-drain mode by
finding the corresponding 'channel' index.

Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
This commit is contained in:
Mulin Chao 2022-05-16 01:03:04 -07:00 committed by Carles Cufí
commit 0f18c4c4ab
8 changed files with 54 additions and 35 deletions

View file

@ -293,6 +293,7 @@
pwm0: pwm@40080000 {
compatible = "nuvoton,npcx-pwm";
reg = <0x40080000 0x2000>;
pwm-channel = <0>;
clocks = <&pcc NPCX_CLOCK_BUS_APB2 NPCX_PWDWN_CTL2 0>;
#pwm-cells = <3>;
status = "disabled";
@ -302,6 +303,7 @@
pwm1: pwm@40082000 {
compatible = "nuvoton,npcx-pwm";
reg = <0x40082000 0x2000>;
pwm-channel = <1>;
clocks = <&pcc NPCX_CLOCK_BUS_APB2 NPCX_PWDWN_CTL2 1>;
#pwm-cells = <3>;
status = "disabled";
@ -311,6 +313,7 @@
pwm2: pwm@40084000 {
compatible = "nuvoton,npcx-pwm";
reg = <0x40084000 0x2000>;
pwm-channel = <2>;
clocks = <&pcc NPCX_CLOCK_BUS_APB2 NPCX_PWDWN_CTL2 2>;
#pwm-cells = <3>;
status = "disabled";
@ -320,6 +323,7 @@
pwm3: pwm@40086000 {
compatible = "nuvoton,npcx-pwm";
reg = <0x40086000 0x2000>;
pwm-channel = <3>;
clocks = <&pcc NPCX_CLOCK_BUS_APB2 NPCX_PWDWN_CTL2 3>;
#pwm-cells = <3>;
status = "disabled";
@ -329,6 +333,7 @@
pwm4: pwm@40088000 {
compatible = "nuvoton,npcx-pwm";
reg = <0x40088000 0x2000>;
pwm-channel = <4>;
clocks = <&pcc NPCX_CLOCK_BUS_APB2 NPCX_PWDWN_CTL2 4>;
#pwm-cells = <3>;
status = "disabled";
@ -338,6 +343,7 @@
pwm5: pwm@4008a000 {
compatible = "nuvoton,npcx-pwm";
reg = <0x4008a000 0x2000>;
pwm-channel = <5>;
clocks = <&pcc NPCX_CLOCK_BUS_APB2 NPCX_PWDWN_CTL2 5>;
#pwm-cells = <3>;
status = "disabled";
@ -347,6 +353,7 @@
pwm6: pwm@4008c000 {
compatible = "nuvoton,npcx-pwm";
reg = <0x4008c000 0x2000>;
pwm-channel = <6>;
clocks = <&pcc NPCX_CLOCK_BUS_APB2 NPCX_PWDWN_CTL2 6>;
#pwm-cells = <3>;
status = "disabled";
@ -356,6 +363,7 @@
pwm7: pwm@4008e000 {
compatible = "nuvoton,npcx-pwm";
reg = <0x4008e000 0x2000>;
pwm-channel = <7>;
clocks = <&pcc NPCX_CLOCK_BUS_APB2 NPCX_PWDWN_CTL2 7>;
#pwm-cells = <3>;
status = "disabled";