diff options
author | Tony Huang <tony-huang@quanta.corp-partner.google.com> | 2021-05-03 09:35:56 +0800 |
---|---|---|
committer | Furquan Shaikh <furquan@google.com> | 2021-05-05 01:16:29 +0000 |
commit | 1282b007be8c4ee2c6193a71f66b66ef989be4b3 (patch) | |
tree | 92114cc9b2c97e32ba2d46ac808c9d09fa9fd713 /src/drivers/i2c/generic | |
parent | d6612a420cc351afc5cf8c28fcb435a27fbb7faf (diff) |
drivers/i2c/generic: Set S0W to D3hot for wake device
If device is supported as a wake source, _S0W should be set to D3hot.
This ensures that the device is put into D3hot by the OSPM.
Power resource(PRIC) for the device is listed in both _PR0 and _PR3. Thus, it ensures that the OSPM does not turn off power resource when device is put into D0 and D3hot. Hence, it is capable of waking the system from D3hot state. However, if it is put into D3cold, then the power resource is turned off by the OSPM.
The devices we are currently looking at for touchscreen/touchpad
do not really support auxiliary power and so do not support wake from D3cold.
BUG=b:186070097
TEST=build and check device wake state _S0W set to 3 in ssdt table.
Change-Id: I34e4b2350875530d3337be700276bcc4fb1f810a
Signed-off-by: Tony Huang <tony-huang@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/52847
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Diffstat (limited to 'src/drivers/i2c/generic')
-rw-r--r-- | src/drivers/i2c/generic/generic.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/drivers/i2c/generic/generic.c b/src/drivers/i2c/generic/generic.c index 1c7267e897..656b9e6c16 100644 --- a/src/drivers/i2c/generic/generic.c +++ b/src/drivers/i2c/generic/generic.c @@ -98,7 +98,7 @@ void i2c_generic_fill_ssdt(const struct device *dev, /* Wake capabilities */ if (config->wake) { - acpigen_write_name_integer("_S0W", 4); + acpigen_write_name_integer("_S0W", ACPI_DEVICE_SLEEP_D3_HOT); acpigen_write_PRW(config->wake, 3); } |