diff options
author | Siyu Qin <qinsiyu@huaqin.corp-partner.google.com> | 2023-03-16 11:35:41 +0800 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-03-20 08:07:22 +0000 |
commit | ba192f443638aa8834324ea8ef06f2f3c273bc61 (patch) | |
tree | 3bba003c6b576e7a68f4b7091deafe63897c1d4f | |
parent | a3db0bee1d4ec1cad46ba08b4abc52892ca2a17a (diff) | |
download | chrome-ec-ba192f443638aa8834324ea8ef06f2f3c273bc61.tar.gz |
corsola: set GPIO_LID_OPEN as GPIO_INPUT_PULL_UP
The lid sensor is on daughter board, if daughter board is
disconnected, the EC will detect the floating pin as low,
then the lid state is locked as lid close. The DUT cannot
power on by power button. So set the pin as GPIO_INPUT_PULL_UP.
BUG=b:273422759
BRANCH=corsola
TEST=1. disconnect daughter board, 'lidstate' shows 'lid open',
and the DUT can power on by power button.
2. connect daughter board, DUT can power on by lid open.
3. ./twister -T zephyr/test/krabby/
Change-Id: I2766d4a3a245efc28621d8a0292390c64721aae4
Signed-off-by: Siyu Qin <qinsiyu@huaqin.corp-partner.google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4344441
Reviewed-by: Mike Lee <mike5@huaqin.corp-partner.google.com>
Reviewed-by: Ting Shen <phoenixshen@chromium.org>
-rw-r--r-- | zephyr/program/corsola/ite_gpio.dtsi | 2 | ||||
-rw-r--r-- | zephyr/program/corsola/npcx_gpio.dtsi | 2 | ||||
-rw-r--r-- | zephyr/test/krabby/src/power_seq.c | 1 |
3 files changed, 3 insertions, 2 deletions
diff --git a/zephyr/program/corsola/ite_gpio.dtsi b/zephyr/program/corsola/ite_gpio.dtsi index 5f06609f43..c478852b3b 100644 --- a/zephyr/program/corsola/ite_gpio.dtsi +++ b/zephyr/program/corsola/ite_gpio.dtsi @@ -25,7 +25,7 @@ enum-name = "GPIO_POWER_BUTTON_L"; }; lid_open: lid_open { - gpios = <&gpioe 2 GPIO_INPUT>; + gpios = <&gpioe 2 GPIO_INPUT_PULL_UP>; enum-name = "GPIO_LID_OPEN"; }; tablet_mode_l: tablet_mode_l { diff --git a/zephyr/program/corsola/npcx_gpio.dtsi b/zephyr/program/corsola/npcx_gpio.dtsi index 4976b7a1d5..cd269eeb69 100644 --- a/zephyr/program/corsola/npcx_gpio.dtsi +++ b/zephyr/program/corsola/npcx_gpio.dtsi @@ -123,7 +123,7 @@ gpios = <&gpio7 7 GPIO_INPUT>; }; gpio_lid_open: lid_open { - gpios = <&gpiod 2 GPIO_INPUT>; + gpios = <&gpiod 2 GPIO_INPUT_PULL_UP>; enum-name = "GPIO_LID_OPEN"; }; gpio_acok_od: acok_od { diff --git a/zephyr/test/krabby/src/power_seq.c b/zephyr/test/krabby/src/power_seq.c index f24a3d22b6..d01fbad035 100644 --- a/zephyr/test/krabby/src/power_seq.c +++ b/zephyr/test/krabby/src/power_seq.c @@ -124,6 +124,7 @@ ZTEST(power_seq, test_lid_open) const struct gpio_dt_spec *lid_open = gpio_get_dt_spec(GPIO_LID_OPEN); gpio_emul_input_set(lid_open->port, lid_open->pin, 0); + k_sleep(K_SECONDS(1)); zassert_equal(power_get_state(), POWER_G3); gpio_emul_input_set(lid_open->port, lid_open->pin, 1); |