mb/prodrive/hermes: Hook up wake on USB option
Hook up the `wake_on_usb` EEPROM setting so that it works as intended. TEST=Keysmash on a USB keyboard, verify Hermes does not wake from S3. Change-Id: I81531b90abae6a62754ea66c47e934e1f440bda2 Signed-off-by: Angel Pons <th3fanbus@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/72906 Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
f411db3561
commit
05df1084ed
|
@ -1,5 +1,6 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#include <acpi/acpi.h>
|
||||
#include <acpi/acpigen.h>
|
||||
#include <bootstate.h>
|
||||
#include <cbmem.h>
|
||||
|
@ -217,6 +218,18 @@ static void mainboard_acpi_fill_ssdt(const struct device *dev)
|
|||
acpigen_write_soc_gpio_op(usb_power_gpios[i]);
|
||||
}
|
||||
acpigen_pop_len();
|
||||
|
||||
if (!board_cfg->wake_on_usb) {
|
||||
acpigen_write_if();
|
||||
acpigen_emit_byte(LNOT_OP);
|
||||
acpigen_emit_byte(LLESS_OP);
|
||||
acpigen_emit_byte(ARG0_OP);
|
||||
acpigen_write_integer(ACPI_S3);
|
||||
{
|
||||
acpigen_write_store_int_to_namestr(0, "\\_SB.PCI0.XHCI.PMEE");
|
||||
}
|
||||
acpigen_pop_len();
|
||||
}
|
||||
}
|
||||
acpigen_pop_len();
|
||||
}
|
||||
|
|
|
@ -87,6 +87,12 @@ Device (XHCI)
|
|||
Offset (0x10),
|
||||
, 16,
|
||||
XMEM, 16, /* MEM_BASE */
|
||||
Offset (0x74),
|
||||
D0D3, 2, /* POWERSTATE */
|
||||
, 6,
|
||||
PMEE, 1, /* PME_EN */
|
||||
, 6,
|
||||
PMES, 1, /* PME_STS */
|
||||
}
|
||||
|
||||
Method (_PS0, 0, Serialized)
|
||||
|
|
Loading…
Reference in New Issue