ITE drivers/pinctrl/it8xxx2: add default mode function

Add default mode function for pin control.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
This commit is contained in:
Ruibin Chang 2023-02-06 14:19:14 +08:00 committed by Anas Nashif
parent 1440b19bde
commit e3b57c392c
2 changed files with 93 additions and 2 deletions

View file

@ -249,8 +249,19 @@ static int pinctrl_kscan_it8xxx2_configure_pins(const pinctrl_soc_pin_t *pins)
return -EINVAL;
}
/* Set a pin of KSI[7:0]/KSO[15:0] to kbs mode */
*reg_gctrl &= ~pin_mask;
switch (pins->alt_func) {
case IT8XXX2_ALT_FUNC_1:
/* Set a pin of KSI[7:0]/KSO[15:0] to kbs mode */
*reg_gctrl &= ~pin_mask;
break;
case IT8XXX2_ALT_DEFAULT:
/* Set a pin of KSI[7:0]/KSO[15:0] to gpio mode */
*reg_gctrl |= pin_mask;
break;
default:
LOG_ERR("Alternate function not supported");
return -ENOTSUP;
}
return 0;
}

View file

@ -211,6 +211,86 @@
bias-pull-up;
};
/* Keyboard sleep function */
ksi0_sleep: ksi0_sleep {
pinmuxs = <&pinctrlksi 0 IT8XXX2_ALT_DEFAULT>;
};
ksi1_sleep: ksi1_sleep {
pinmuxs = <&pinctrlksi 1 IT8XXX2_ALT_DEFAULT>;
};
ksi2_sleep: ksi2_sleep {
pinmuxs = <&pinctrlksi 2 IT8XXX2_ALT_DEFAULT>;
};
ksi3_sleep: ksi3_sleep {
pinmuxs = <&pinctrlksi 3 IT8XXX2_ALT_DEFAULT>;
};
ksi4_sleep: ksi4_sleep {
pinmuxs = <&pinctrlksi 4 IT8XXX2_ALT_DEFAULT>;
};
ksi5_sleep: ksi5_sleep {
pinmuxs = <&pinctrlksi 5 IT8XXX2_ALT_DEFAULT>;
};
ksi6_sleep: ksi6_sleep {
pinmuxs = <&pinctrlksi 6 IT8XXX2_ALT_DEFAULT>;
};
ksi7_sleep: ksi7_sleep {
pinmuxs = <&pinctrlksi 7 IT8XXX2_ALT_DEFAULT>;
};
kso0_sleep: kso0_sleep {
pinmuxs = <&pinctrlksol 0 IT8XXX2_ALT_DEFAULT>;
};
kso1_sleep: kso1_sleep {
pinmuxs = <&pinctrlksol 1 IT8XXX2_ALT_DEFAULT>;
};
kso2_sleep: kso2_sleep {
pinmuxs = <&pinctrlksol 2 IT8XXX2_ALT_DEFAULT>;
};
kso3_sleep: kso3_sleep {
pinmuxs = <&pinctrlksol 3 IT8XXX2_ALT_DEFAULT>;
};
kso4_sleep: kso4_sleep {
pinmuxs = <&pinctrlksol 4 IT8XXX2_ALT_DEFAULT>;
};
kso5_sleep: kso5_sleep {
pinmuxs = <&pinctrlksol 5 IT8XXX2_ALT_DEFAULT>;
};
kso6_sleep: kso6_sleep {
pinmuxs = <&pinctrlksol 6 IT8XXX2_ALT_DEFAULT>;
};
kso7_sleep: kso7_sleep {
pinmuxs = <&pinctrlksol 7 IT8XXX2_ALT_DEFAULT>;
};
kso8_sleep: kso8_sleep {
pinmuxs = <&pinctrlksoh 0 IT8XXX2_ALT_DEFAULT>;
};
kso9_sleep: kso9_sleep {
pinmuxs = <&pinctrlksoh 1 IT8XXX2_ALT_DEFAULT>;
};
kso10_sleep: kso10_sleep {
pinmuxs = <&pinctrlksoh 2 IT8XXX2_ALT_DEFAULT>;
};
kso11_sleep: kso11_sleep {
pinmuxs = <&pinctrlksoh 3 IT8XXX2_ALT_DEFAULT>;
};
kso12_sleep: kso12_sleep {
pinmuxs = <&pinctrlksoh 4 IT8XXX2_ALT_DEFAULT>;
};
kso13_sleep: kso13_sleep {
pinmuxs = <&pinctrlksoh 5 IT8XXX2_ALT_DEFAULT>;
};
kso14_sleep: kso14_sleep {
pinmuxs = <&pinctrlksoh 6 IT8XXX2_ALT_DEFAULT>;
};
kso15_sleep: kso15_sleep {
pinmuxs = <&pinctrlksoh 7 IT8XXX2_ALT_DEFAULT>;
};
kso16_gpc3_sleep: kso16_gpc3_sleep {
pinmuxs = <&pinctrlc 3 IT8XXX2_ALT_DEFAULT>;
};
kso17_gpc5_sleep: kso17_gpc5_sleep {
pinmuxs = <&pinctrlc 5 IT8XXX2_ALT_DEFAULT>;
};
/* PECI alternate function */
peci_gpf6_default: peci_gpf6_default {
pinmuxs = <&pinctrlf 6 IT8XXX2_ALT_FUNC_3>;