diff options
author | Ruibin Chang <Ruibin.Chang@ite.com.tw> | 2023-02-06 14:37:55 +0800 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-02-16 00:05:28 +0000 |
commit | 0849542c72359150a357945c010dca6b5a213633 (patch) | |
tree | 7c4c0a641140b6b1160c6c8030ce48eafe3f3f20 | |
parent | 5825d894b94ee4d1e2cc297c0e27712bc55c3855 (diff) | |
download | chrome-ec-0849542c72359150a357945c010dca6b5a213633.tar.gz |
zephyr: add sleep property for keyboard factory test
Add sleep property for keyboard factory test.
This CL depends on PR:
https://github.com/zephyrproject-rtos/zephyr/pull/54641
BRANCH=none
BUG=b:262352202
TEST=on yaviks, run "ectool kbfactorytest"
when we intend to short the KSI/KSO pin, it would fail the test.
And when finish the test, keyboard scan function can work.
Change-Id: I6a9d1831a911e52d989b074be14797cda5375036
Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4223685
Reviewed-by: Keith Short <keithshort@chromium.org>
Commit-Queue: Peter Marheine <pmarheine@chromium.org>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
-rw-r--r-- | zephyr/drivers/cros_kb_raw/cros_kb_raw_ite.c | 24 | ||||
-rw-r--r-- | zephyr/program/nissa/yaviks/keyboard.dtsi | 24 |
2 files changed, 26 insertions, 22 deletions
diff --git a/zephyr/drivers/cros_kb_raw/cros_kb_raw_ite.c b/zephyr/drivers/cros_kb_raw/cros_kb_raw_ite.c index 92a34740d6..7de488b059 100644 --- a/zephyr/drivers/cros_kb_raw/cros_kb_raw_ite.c +++ b/zephyr/drivers/cros_kb_raw/cros_kb_raw_ite.c @@ -134,16 +134,10 @@ static int cros_kb_raw_ite_drive_column(const struct device *dev, int col) #ifdef CONFIG_PLATFORM_EC_KEYBOARD_FACTORY_TEST static int cros_kb_raw_ite_config_alt(const struct device *dev, bool enable) { - const struct cros_kb_raw_ite_config *config; - const struct device *gpio_ksi; - const struct device *gpio_ksoh; - const struct device *gpio_ksol; - gpio_pin_t pin; + const struct cros_kb_raw_ite_config *config = dev->config; int status = 0; if (enable) { - config = dev->config; - /* Set KSI/KSO pins of cros_kb_raw node to kbs mode */ status = pinctrl_apply_state(config->pcfg, PINCTRL_STATE_DEFAULT); @@ -152,20 +146,8 @@ static int cros_kb_raw_ite_config_alt(const struct device *dev, bool enable) return status; } } else { - gpio_ksi = DEVICE_DT_GET(DT_NODELABEL(gpioksi)); - gpio_ksoh = DEVICE_DT_GET(DT_NODELABEL(gpioksoh)); - gpio_ksol = DEVICE_DT_GET(DT_NODELABEL(gpioksol)); - - /* Set KSI[7:0]/KSO[12:0] pins to gpio input mode */ - for (pin = 0; pin < 8; pin++) { - status |= gpio_pin_configure(gpio_ksi, pin, GPIO_INPUT); - status |= - gpio_pin_configure(gpio_ksol, pin, GPIO_INPUT); - if (pin <= 4) { - status |= gpio_pin_configure(gpio_ksoh, pin, - GPIO_INPUT); - } - } + /* Set KSI/KSO pins of cros_kb_raw node to gpio mode */ + status = pinctrl_apply_state(config->pcfg, PINCTRL_STATE_SLEEP); if (status < 0) { LOG_ERR("Failed to enable KSI and KSO gpio mode"); return status; diff --git a/zephyr/program/nissa/yaviks/keyboard.dtsi b/zephyr/program/nissa/yaviks/keyboard.dtsi index 17f3ca8e16..87d7d718fa 100644 --- a/zephyr/program/nissa/yaviks/keyboard.dtsi +++ b/zephyr/program/nissa/yaviks/keyboard.dtsi @@ -46,5 +46,27 @@ &kso12_default &kso13_default &kso14_default>; - pinctrl-names = "default"; + pinctrl-1 = <&ksi0_sleep + &ksi1_sleep + &ksi2_sleep + &ksi3_sleep + &ksi4_sleep + &ksi5_sleep + &ksi6_sleep + &ksi7_sleep + &kso0_sleep + &kso1_sleep + &kso3_sleep + &kso4_sleep + &kso5_sleep + &kso6_sleep + &kso7_sleep + &kso8_sleep + &kso9_sleep + &kso10_sleep + &kso11_sleep + &kso12_sleep + &kso13_sleep + &kso14_sleep>; + pinctrl-names = "default", "sleep"; }; |