diff options
author | Nicolas Boichat <drinkcat@chromium.org> | 2018-02-01 11:33:25 +0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-02-02 10:17:30 -0800 |
commit | 76927bdc5a17ddbdc9fc601b761c2a4984ecc1e9 (patch) | |
tree | 0ef346ffe19b05b9fddeb0320c244705c5686baf /core | |
parent | c721ad9162b9fe20ce872c1d28cd8b1ad60e2c25 (diff) | |
download | chrome-ec-76927bdc5a17ddbdc9fc601b761c2a4984ecc1e9.tar.gz |
stm32/usb: Add HOOK_USB_PM_CHANGE, called when USB is resumed/suspended
In particular, this will allow touchpad driver and keyboard matrix
scanning to be powered off/disabled when the USB interface is
disabled without setting the remote wake feature
(USB_REQ_FEATURE_DEVICE_REMOTE_WAKEUP), as events would be
ignored anyway.
BRANCH=none
BUG=b:72683995
TEST=With next CLs, touchpad and keyboard matrix scanning are disabled
when lid is closed.
Change-Id: I3750bfaf8c31cde075adf9da4fef39753b8981c5
Signed-off-by: Nicolas Boichat <drinkcat@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/897067
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
Diffstat (limited to 'core')
-rw-r--r-- | core/cortex-m/ec.lds.S | 6 | ||||
-rw-r--r-- | core/cortex-m0/ec.lds.S | 6 | ||||
-rw-r--r-- | core/minute-ia/ec.lds.S | 6 | ||||
-rw-r--r-- | core/nds32/ec.lds.S | 6 |
4 files changed, 24 insertions, 0 deletions
diff --git a/core/cortex-m/ec.lds.S b/core/cortex-m/ec.lds.S index 64fb132462..5e84b56db0 100644 --- a/core/cortex-m/ec.lds.S +++ b/core/cortex-m/ec.lds.S @@ -204,6 +204,12 @@ SECTIONS __hooks_ccd_change_end = .; #endif +#ifdef CONFIG_USB_SUSPEND + __hooks_usb_change = .; + KEEP(*(.rodata.HOOK_USB_PM_CHANGE)) + __hooks_usb_change_end = .; +#endif + __hooks_tick = .; KEEP(*(.rodata.HOOK_TICK)) __hooks_tick_end = .; diff --git a/core/cortex-m0/ec.lds.S b/core/cortex-m0/ec.lds.S index a43499ab27..ce4ef3849d 100644 --- a/core/cortex-m0/ec.lds.S +++ b/core/cortex-m0/ec.lds.S @@ -139,6 +139,12 @@ SECTIONS KEEP(*(.rodata.HOOK_BATTERY_SOC_CHANGE)) __hooks_battery_soc_change_end = .; +#ifdef CONFIG_USB_SUSPEND + __hooks_usb_change = .; + KEEP(*(.rodata.HOOK_USB_PM_CHANGE)) + __hooks_usb_change_end = .; +#endif + __hooks_tick = .; KEEP(*(.rodata.HOOK_TICK)) __hooks_tick_end = .; diff --git a/core/minute-ia/ec.lds.S b/core/minute-ia/ec.lds.S index 7357737189..5c8f9d6fce 100644 --- a/core/minute-ia/ec.lds.S +++ b/core/minute-ia/ec.lds.S @@ -110,6 +110,12 @@ SECTIONS KEEP(*(.rodata.HOOK_BATTERY_SOC_CHANGE)) __hooks_battery_soc_change_end = .; +#ifdef CONFIG_USB_SUSPEND + __hooks_usb_change = .; + KEEP(*(.rodata.HOOK_USB_PM_CHANGE)) + __hooks_usb_change_end = .; +#endif + __hooks_tick = .; KEEP(*(.rodata.HOOK_TICK)) __hooks_tick_end = .; diff --git a/core/nds32/ec.lds.S b/core/nds32/ec.lds.S index df4a7aeaa8..c2897343e6 100644 --- a/core/nds32/ec.lds.S +++ b/core/nds32/ec.lds.S @@ -137,6 +137,12 @@ SECTIONS KEEP(*(.rodata.HOOK_BATTERY_SOC_CHANGE)) __hooks_battery_soc_change_end = .; +#ifdef CONFIG_USB_SUSPEND + __hooks_usb_change = .; + KEEP(*(.rodata.HOOK_USB_PM_CHANGE)) + __hooks_usb_change_end = .; +#endif + __hooks_tick = .; KEEP(*(.rodata.HOOK_TICK)) __hooks_tick_end = .; |