Skip to content

Commit a499afd

Browse files
AlessandroLuokartben
authored andcommitted
drivers: pinctrl: Update ambiq nce definitions in pinctrl
Updated nce definitions in pinctrl structure to be consistent with ambiq HAL. Signed-off-by: Hao Luo <[email protected]>
1 parent 8437760 commit a499afd

File tree

10 files changed

+42
-43
lines changed

10 files changed

+42
-43
lines changed

boards/ambiq/apollo3_evb/apollo3_evb-pinctrl.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@
125125
pinmux = <NCE19_P19>;
126126
drive-push-pull;
127127
drive-strength = "0.5";
128-
ambiq,iom-nce-module = <0>;
128+
ambiq,nce-src = <0>;
129129
ambiq,iom-num = <6>;
130130
};
131131
};

boards/ambiq/apollo3p_evb/apollo3p_evb-pinctrl.dtsi

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@
126126
drive-push-pull;
127127
drive-strength = "0.5";
128128
ambiq,iom-mspi = <0>;
129-
ambiq,iom-nce-module = <0>;
129+
ambiq,nce-src = <0>;
130130
ambiq,iom-num = <0>;
131131
};
132132
};
@@ -147,7 +147,7 @@
147147
drive-push-pull;
148148
drive-strength = "0.5";
149149
ambiq,iom-mspi = <0>;
150-
ambiq,iom-nce-module = <0>;
150+
ambiq,nce-src = <0>;
151151
ambiq,iom-num = <1>;
152152
};
153153
};
@@ -164,7 +164,7 @@
164164
drive-push-pull;
165165
drive-strength = "0.5";
166166
ambiq,iom-mspi = <0>;
167-
ambiq,iom-nce-module = <0>;
167+
ambiq,nce-src = <0>;
168168
ambiq,iom-num = <2>;
169169
};
170170
};

boards/ambiq/apollo4p_blue_kxr_evb/apollo4p_blue_kxr_evb-pinctrl.dtsi

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@
128128
pinmux = <NCE57_P57>;
129129
drive-push-pull;
130130
drive-strength = "0.5";
131-
ambiq,iom-nce-module = <32>;
131+
ambiq,nce-src = <32>;
132132
};
133133
};
134134
mspi1_default: mspi1_default{
@@ -141,7 +141,7 @@
141141
pinmux = <NCE56_P56>;
142142
drive-push-pull;
143143
drive-strength = "0.5";
144-
ambiq,iom-nce-module = <34>;
144+
ambiq,nce-src = <34>;
145145
};
146146
};
147147
mspi2_default: mspi2_default{
@@ -154,7 +154,7 @@
154154
pinmux = <NCE52_P52>;
155155
drive-push-pull;
156156
drive-strength = "0.5";
157-
ambiq,iom-nce-module = <36>;
157+
ambiq,nce-src = <36>;
158158
};
159159
};
160160

boards/ambiq/apollo4p_evb/apollo4p_evb-pinctrl.dtsi

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@
142142
pinmux = <NCE57_P57>;
143143
drive-push-pull;
144144
drive-strength = "0.5";
145-
ambiq,iom-nce-module = <32>;
145+
ambiq,nce-src = <32>;
146146
};
147147
};
148148
mspi1_default: mspi1_default{
@@ -155,7 +155,7 @@
155155
pinmux = <NCE56_P56>;
156156
drive-push-pull;
157157
drive-strength = "0.5";
158-
ambiq,iom-nce-module = <34>;
158+
ambiq,nce-src = <34>;
159159
};
160160
};
161161
mspi2_default: mspi2_default{
@@ -168,7 +168,7 @@
168168
pinmux = <NCE0_P0>;
169169
drive-push-pull;
170170
drive-strength = "0.5";
171-
ambiq,iom-nce-module = <36>;
171+
ambiq,nce-src = <36>;
172172
};
173173
};
174174
sdio0_default: sdio0_default {

boards/rakwireless/rak11720/rak11720_apollo3-pinctrl.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@
108108
pinmux = <NCE19_P19>;
109109
drive-push-pull;
110110
drive-strength = "0.5";
111-
ambiq,iom-nce-module = <0>;
111+
ambiq,nce-src = <0>;
112112
ambiq,iom-num = <6>;
113113
};
114114
};

drivers/pinctrl/pinctrl_ambiq.c

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ static void pinctrl_configure_pin(const pinctrl_soc_pin_t *pin)
2222
: pin->tristate ? AM_HAL_GPIO_PIN_OUTCFG_TRISTATE
2323
: AM_HAL_GPIO_PIN_OUTCFG_DISABLE;
2424
pin_config.eDriveStrength = pin->drive_strength;
25-
pin_config.uNCE = pin->iom_nce;
25+
pin_config.uNCE = pin->nce;
26+
pin_config.eCEpol = pin->nce_pol;
2627
#if defined(CONFIG_SOC_APOLLO3P_BLUE)
2728
pin_config.bIomMSPIn = pin->iom_mspi;
2829
#endif
@@ -42,9 +43,11 @@ static void pinctrl_configure_pin(const pinctrl_soc_pin_t *pin)
4243
: pin->tristate ? AM_HAL_GPIO_PIN_OUTCFG_TRISTATE
4344
: AM_HAL_GPIO_PIN_OUTCFG_DISABLE;
4445
pin_config.GP.cfg_b.eDriveStrength = pin->drive_strength;
46+
#if defined(CONFIG_SOC_SERIES_APOLLO4X)
4547
pin_config.GP.cfg_b.uSlewRate = pin->slew_rate;
46-
pin_config.GP.cfg_b.uNCE = pin->iom_nce;
47-
pin_config.GP.cfg_b.eIntDir = pin->interrupt_direction;
48+
#endif
49+
pin_config.GP.cfg_b.uNCE = pin->nce;
50+
pin_config.GP.cfg_b.eCEpol = pin->nce_pol;
4851

4952
if (pin->bias_pull_up) {
5053
pin_config.GP.cfg_b.ePullup = pin->ambiq_pull_up_ohms + AM_HAL_GPIO_PIN_PULLUP_1_5K;

dts/bindings/pinctrl/ambiq,apollo3-pinctrl.yaml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ child-binding:
9898
For Apollo3 these pins are 0-1,5-6,8-9,25,27,39-40,42-43,48-49.
9999
The default value is 1500 ohms, which is the reset value of
100100
register PADREGx.PADxRSEL.
101-
ambiq,iom-nce-module:
101+
ambiq,nce-src:
102102
type: int
103103
default: 0
104104
description: |
@@ -125,3 +125,10 @@ child-binding:
125125
information and config the pins accordingly, we give a default value
126126
0 here to make it be consistent with AM_HAL_GPIO_PINCFG_DEFAULT in
127127
ambiq hal. If the pin is not a CE, this descriptor will be ignored.
128+
ambiq,nce-pol:
129+
type: int
130+
default: 0
131+
description: |
132+
Polarity select for NCE
133+
LOW = 0x0 - Polarity is active low
134+
HIGH = 0x1 - Polarity is active high

dts/bindings/pinctrl/ambiq,apollo4-pinctrl.yaml

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ child-binding:
104104
default: 1500
105105
description: |
106106
The pullup resistor value. The default value is 1500 ohms.
107-
ambiq,iom-nce-module:
107+
ambiq,nce-src:
108108
type: int
109109
default: 0
110110
description: |
@@ -154,24 +154,10 @@ child-binding:
154154
42, DC_RESX : DC module RESX
155155
If the pin is not a CE, this descriptor will be ignored.
156156
Default value 0, which is the reset value.
157-
ambiq,iom-mspi:
157+
ambiq,nce-pol:
158158
type: int
159159
default: 0
160160
description: |
161-
Indicates the module which uses specific CE pin, 1 if CE is IOM, 0 if MSPI.
162-
Default value 0, which is the reset value.
163-
If the pin is not a CE, this descriptor will be ignored.
164-
ambiq,iom-num:
165-
type: int
166-
default: 0
167-
description: |
168-
Indicates the instance which uses specific CE pin.
169-
IOM number (0-7) or MSPI (0-2).
170-
Default value 0, which is the reset value.
171-
If the pin is not a CE, this descriptor will be ignored.
172-
ambiq,interrupt-direction:
173-
type: int
174-
default: 0
175-
description: |
176-
Indicates the pininterrupt direction.
177-
Default value 0, which is the reset value.
161+
Polarity select for NCE
162+
LOW = 0x0 - Polarity is active low
163+
HIGH = 0x1 - Polarity is active high

soc/ambiq/apollo3x/pinctrl_soc.h

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,14 @@ struct apollo3_pinctrl_soc_pin {
3333
uint32_t bias_pull_down: 1;
3434
/** pullup resistor value */
3535
uint32_t ambiq_pull_up_ohms: 3;
36-
/** IOM nCE module select */
37-
uint32_t iom_nce: 2;
36+
/** nCE module select */
37+
uint32_t nce: 2;
3838
/** IOM or MSPI */
3939
uint32_t iom_mspi: 1;
4040
/** IOM/MSPI instance number */
4141
uint32_t iom_num: 3;
42+
/** nCE module polarity */
43+
uint32_t nce_pol: 1;
4244
};
4345

4446
typedef struct apollo3_pinctrl_soc_pin pinctrl_soc_pin_t;
@@ -62,9 +64,10 @@ typedef struct apollo3_pinctrl_soc_pin pinctrl_soc_pin_t;
6264
DT_PROP(node_id, bias_pull_up), \
6365
DT_PROP(node_id, bias_pull_down), \
6466
DT_ENUM_IDX(node_id, ambiq_pull_up_ohms), \
65-
DT_PROP(node_id, ambiq_iom_nce_module), \
67+
DT_PROP(node_id, ambiq_nce_src), \
6668
DT_PROP(node_id, ambiq_iom_mspi), \
6769
DT_PROP(node_id, ambiq_iom_num), \
70+
DT_PROP(node_id, ambiq_nce_pol), \
6871
},
6972

7073
/**

soc/ambiq/apollo4x/pinctrl_soc.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,10 @@ struct apollo4_pinctrl_soc_pin {
3535
uint32_t bias_pull_down : 1;
3636
/** pullup resistor value */
3737
uint32_t ambiq_pull_up_ohms : 3;
38-
/** IOM nCE module select */
39-
uint32_t iom_nce : 6;
40-
/** IOM interrupt direction */
41-
uint32_t interrupt_direction: 2;
38+
/** nCE module select */
39+
uint32_t nce : 6;
40+
/** nCE module polarity */
41+
uint32_t nce_pol: 1;
4242
};
4343

4444
typedef struct apollo4_pinctrl_soc_pin pinctrl_soc_pin_t;
@@ -63,8 +63,8 @@ typedef struct apollo4_pinctrl_soc_pin pinctrl_soc_pin_t;
6363
DT_PROP(node_id, bias_pull_up), \
6464
DT_PROP(node_id, bias_pull_down), \
6565
DT_ENUM_IDX(node_id, ambiq_pull_up_ohms), \
66-
DT_PROP(node_id, ambiq_iom_nce_module), \
67-
DT_PROP(node_id, ambiq_interrupt_direction), \
66+
DT_PROP(node_id, ambiq_nce_src), \
67+
DT_PROP(node_id, ambiq_nce_pol), \
6868
},
6969

7070
/**

0 commit comments

Comments
 (0)