From 1dbb4df1fb4a11c9c0b6c95c34a4b6dedbd4e32f Mon Sep 17 00:00:00 2001 From: Diana Z Date: Thu, 20 Apr 2023 10:57:48 -0600 Subject: Skyrim: Keep retimer enabled in suspend The A1 retimer needs to remain enabled in suspend in order to prevent issues with USB detection on resume. Enable and disable on the transition into/out of S5 instead. BUG=b:273849234,b:280957965 TEST=on frostflow, ensure USB file transfer is able to resume after suspend Change-Id: I0186d54a76c14f3d0141fbeec75ed5b13aa599d7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4455299 Tested-by: Diana Z Commit-Queue: Diana Z Reviewed-by: Robert Zieba --- zephyr/test/skyrim/tests/baseboard/src/power_signals.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'zephyr/test') diff --git a/zephyr/test/skyrim/tests/baseboard/src/power_signals.c b/zephyr/test/skyrim/tests/baseboard/src/power_signals.c index c4bfba04a7..82e42acaa1 100644 --- a/zephyr/test/skyrim/tests/baseboard/src/power_signals.c +++ b/zephyr/test/skyrim/tests/baseboard/src/power_signals.c @@ -87,19 +87,31 @@ ZTEST(power_signals, test_baseboard_suspend_change) { const struct gpio_dt_spec *gpio_ec_disable_disp_bl = GPIO_DT_FROM_NODELABEL(gpio_ec_disable_disp_bl); - const struct gpio_dt_spec *usb_a1_retimer_en = - GPIO_DT_FROM_NODELABEL(usb_a1_retimer_en); struct ap_power_ev_data data; data.event = AP_POWER_SUSPEND; baseboard_suspend_change(NULL, data); zassert_true(gpio_emul_output_get_dt(gpio_ec_disable_disp_bl)); - zassert_false(gpio_emul_output_get_dt(usb_a1_retimer_en)); data.event = AP_POWER_RESUME; baseboard_suspend_change(NULL, data); zassert_false(gpio_emul_output_get_dt(gpio_ec_disable_disp_bl)); +} + +ZTEST(power_signals, test_baseboard_shutdown_change) +{ + const struct gpio_dt_spec *usb_a1_retimer_en = + GPIO_DT_FROM_NODELABEL(usb_a1_retimer_en); + + struct ap_power_ev_data data; + + data.event = AP_POWER_SHUTDOWN; + baseboard_suspend_change(NULL, data); + zassert_false(gpio_emul_output_get_dt(usb_a1_retimer_en)); + + data.event = AP_POWER_STARTUP; + baseboard_suspend_change(NULL, data); zassert_true(gpio_emul_output_get_dt(usb_a1_retimer_en)); } -- cgit v1.2.1