Skip to content

Commit eb5e97b

Browse files
franciscomunozandrewboie
authored andcommitted
boards: arm: mec15xxevb_assy6853: Enable Keyboard Scan
Add pinmux and Kconfig switches in order to enable the keyboard scan matrix driver. Signed-off-by: Francisco Munoz <[email protected]>
1 parent 400f060 commit eb5e97b

File tree

3 files changed

+82
-0
lines changed

3 files changed

+82
-0
lines changed

boards/arm/mec15xxevb_assy6853/mec15xxevb_assy6853.dts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,8 @@
6969
&pwm0 {
7070
status = "okay";
7171
};
72+
73+
&kscan0 {
74+
status = "okay";
75+
};
76+

boards/arm/mec15xxevb_assy6853/mec15xxevb_assy6853_defconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ CONFIG_SERIAL=y
1616
CONFIG_PINMUX=y
1717
CONFIG_GPIO=y
1818
CONFIG_PS2=y
19+
CONFIG_KSCAN=y
1920

2021
CONFIG_I2C=y
2122
CONFIG_I2C_INIT_PRIORITY=60

boards/arm/mec15xxevb_assy6853/pinmux.c

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,82 @@ static int board_pinmux_init(struct device *dev)
185185
#endif
186186
#endif /* CONFIG_PWM_XEC */
187187

188+
#if defined CONFIG_KSCAN_XEC
189+
/* KSCAN KSO00 */
190+
pinmux_pin_set(portb, MCHP_GPIO_040,
191+
MCHP_GPIO_CTRL_MUX_F2 | MCHP_GPIO_CTRL_PUD_PU);
192+
/* KSCAN KSO01 */
193+
pinmux_pin_set(portb, MCHP_GPIO_045,
194+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_PUD_PU);
195+
/* KSCAN KSO02 */
196+
pinmux_pin_set(portb, MCHP_GPIO_046,
197+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_PUD_PU);
198+
/* KSCAN KSO012 */
199+
pinmux_pin_set(portc, MCHP_GPIO_125,
200+
MCHP_GPIO_CTRL_MUX_F2 | MCHP_GPIO_CTRL_PUD_PU);
201+
/* KSCAN KSO013 */
202+
pinmux_pin_set(portc, MCHP_GPIO_126,
203+
MCHP_GPIO_CTRL_MUX_F2 | MCHP_GPIO_CTRL_PUD_PU);
204+
/* KSCAN KSO03 */
205+
pinmux_pin_set(portb, MCHP_GPIO_047,
206+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_PUD_PU);
207+
/* KSCAN KSO04 */
208+
pinmux_pin_set(portc, MCHP_GPIO_107,
209+
MCHP_GPIO_CTRL_MUX_F2 | MCHP_GPIO_CTRL_PUD_PU);
210+
/* KSCAN KSO05 */
211+
pinmux_pin_set(portc, MCHP_GPIO_112,
212+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_PUD_PU);
213+
/* KSCAN KSO06 */
214+
pinmux_pin_set(portc, MCHP_GPIO_113,
215+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_PUD_PU);
216+
/* KSCAN KSO14 */
217+
pinmux_pin_set(portd, MCHP_GPIO_152,
218+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_PUD_PU);
219+
/* KSCAN KSO15 */
220+
pinmux_pin_set(portd, MCHP_GPIO_151,
221+
MCHP_GPIO_CTRL_MUX_F2 | MCHP_GPIO_CTRL_PUD_PU);
222+
/* KSCAN KSO07 */
223+
pinmux_pin_set(portc, MCHP_GPIO_120,
224+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_PUD_PU);
225+
/* KSCAN KSO08 */
226+
pinmux_pin_set(portc, MCHP_GPIO_121,
227+
MCHP_GPIO_CTRL_MUX_F2 | MCHP_GPIO_CTRL_PUD_PU);
228+
/* KSCAN KSO09 */
229+
pinmux_pin_set(portc, MCHP_GPIO_122,
230+
MCHP_GPIO_CTRL_MUX_F2 | MCHP_GPIO_CTRL_PUD_PU);
231+
/* KSCAN KSO10 */
232+
pinmux_pin_set(portc, MCHP_GPIO_123,
233+
MCHP_GPIO_CTRL_MUX_F2 | MCHP_GPIO_CTRL_PUD_PU);
234+
/* KSCAN KSO11 */
235+
pinmux_pin_set(portc, MCHP_GPIO_124,
236+
MCHP_GPIO_CTRL_MUX_F2 | MCHP_GPIO_CTRL_PUD_PU);
237+
238+
/* KSCAN KSI00 */
239+
pinmux_pin_set(porta, MCHP_GPIO_017,
240+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_BUFT_OPENDRAIN);
241+
/* KSCAN KSI01 */
242+
pinmux_pin_set(porta, MCHP_GPIO_020,
243+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_BUFT_OPENDRAIN);
244+
/* KSCAN KSI02 */
245+
pinmux_pin_set(porta, MCHP_GPIO_021,
246+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_BUFT_OPENDRAIN);
247+
/* KSCAN KSI03 */
248+
pinmux_pin_set(porta, MCHP_GPIO_026,
249+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_BUFT_OPENDRAIN);
250+
/* KSCAN KSI04 */
251+
pinmux_pin_set(porta, MCHP_GPIO_027,
252+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_BUFT_OPENDRAIN);
253+
/* KSCAN KSI05 */
254+
pinmux_pin_set(porta, MCHP_GPIO_030,
255+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_BUFT_OPENDRAIN);
256+
/* KSCAN KSI06 */
257+
pinmux_pin_set(porta, MCHP_GPIO_031,
258+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_BUFT_OPENDRAIN);
259+
/* KSCAN KSI07 */
260+
pinmux_pin_set(porta, MCHP_GPIO_032,
261+
MCHP_GPIO_CTRL_MUX_F1 | MCHP_GPIO_CTRL_BUFT_OPENDRAIN);
262+
#endif /* CONFIG_KSCAN_XEC */
263+
188264
return 0;
189265
}
190266

0 commit comments

Comments
 (0)