coreboot-kgpe-d16/src/mainboard
Furquan Shaikh fa8b75fb17 gpio_keys: Allow boards to configure different wakeup routes
This change allows mainboard to configure different wakeup routes that
can be used by a GPIO key:
1. SCI: This is selected when SCI route is used to wake the system. It
results in _PRW property being exposed in ACPI tables.
2. GPIO IRQ: This is selected when GPIO controller wake is used to
wake the system. It is typically used when the input signal is not
dual routed and the GPIO controller block is not capable of applying
filters for IRQ and wake separately. In this case, _PRW is not exposed
in ACPI tables for the key device.
3. Disabled: No wakeup supported.

Based on these wakeup routes, gpio_keys_add_child_node() is updated to
expose _PRW and _DSD properties for wakeup appropriately.

Additionally, the change updates mainboards that were already using
gpio_keys to set wakeup_route attribute correctly and renames "wake"
to "wake_gpe" to make the usage clear.

BUG=b:159942427

Change-Id: Ib32b866b5f0ca559ed680b46218454bdfd8c6457
Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/42826
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2020-06-28 05:22:41 +00:00
..
51nb Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
adlink
amd mb/mandolin/devicetree: clarify that Ethernet devices are internal MACs 2020-06-26 20:47:18 +00:00
aopen aopen/dxplplusu,intel/i82801dx: Select COMMON_FADT 2020-06-10 01:00:11 +00:00
apple src/mainboard: Remove unused include 'sandybridge.h' 2020-06-22 16:30:48 +00:00
asrock Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
asus src/mainboard: Remove unused include 'sandybridge.h' 2020-06-22 16:30:48 +00:00
bap mb/bap/ode_e21XX: Drop left over unmaintained ROMCC board 2020-06-18 09:10:53 +00:00
biostar src: Remove unused '#include <cpu/x86/lapic.h>' 2020-06-02 07:38:45 +00:00
cavium Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
compulab sandybridge boards: Factor out MAX_CPUS 2020-06-15 22:49:23 +00:00
dell mb/*/*/Kconfig: guard board name in quotes 2020-06-19 15:28:48 +00:00
elmex mb,sb/amd/cimx/sb800: Remove FADT_PM_PROFILE 2020-06-10 01:08:24 +00:00
emulation mb/emulation/qemu-q35: Use common early SPI code 2020-06-27 17:31:13 +00:00
facebook Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
foxconn Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
getac i945 boards: Factor out MAX_CPUS 2020-06-15 22:56:48 +00:00
gigabyte src/mainboard: Remove unused include 'sandybridge.h' 2020-06-22 16:30:48 +00:00
gizmosphere mb,sb/amd/cimx/sb800: Remove FADT_PM_PROFILE 2020-06-10 01:08:24 +00:00
google gpio_keys: Allow boards to configure different wakeup routes 2020-06-28 05:22:41 +00:00
hp src/mainboard: Remove unused include 'sandybridge.h' 2020-06-22 16:30:48 +00:00
ibase i945 boards: Factor out MAX_CPUS 2020-06-15 22:56:48 +00:00
intel cpu/x86/smm: Use already defined APM_CNT messages 2020-06-22 11:44:01 +00:00
jetway mb,sb/amd/cimx/sb800: Remove FADT_PM_PROFILE 2020-06-10 01:08:24 +00:00
kontron i945 boards: Factor out MAX_CPUS 2020-06-15 22:56:48 +00:00
lenovo src/mainboard: Remove unused include 'sandybridge.h' 2020-06-22 16:30:48 +00:00
libretrend
lippert mb,sb/amd/cimx/sb800: Remove FADT_PM_PROFILE 2020-06-10 01:08:24 +00:00
msi Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
ocp mb/ocp/deltalake: Enable IPMI KCS 2020-06-25 11:53:47 +00:00
opencellular Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
packardbell arrandale boards: Factor out MAX_CPUS 2020-06-15 22:49:59 +00:00
pcengines Revert "mb/pcengines/apu2: Update GPIO Reads & writes" 2020-06-25 19:01:57 +00:00
portwell acpi: Rename motherboard_fill_fadt() to mainboard_fill_fadt() 2020-06-07 21:53:33 +00:00
prodrive mainboard/prodrive/hermes: Enable EIST in DeviceTree 2020-06-26 05:35:43 +00:00
protectli mb/protectli/vault_kbl: Enable Intel PTT 2020-06-21 17:02:58 +00:00
purism Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
razer mb/razer/blade_stealth_kbl: Remove duplicate ACPI power button device 2020-06-06 09:45:30 +00:00
roda Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
samsung sandybridge boards: Factor out MAX_CPUS 2020-06-15 22:49:23 +00:00
sapphire src/mainboard: Remove unused include 'sandybridge.h' 2020-06-22 16:30:48 +00:00
scaleway mb/scaleway/tagada: Move override of SMBIOS_ENCLOSURE_TYPE 2020-06-09 06:29:31 +00:00
siemens Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
sifive treewide: Add Kconfig variable MEMLAYOUT_LD_FILE 2020-06-13 06:49:23 +00:00
supermicro Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
system76 mb/*/*/Kconfig: guard board name in quotes 2020-06-19 15:28:48 +00:00
ti treewide: Add Kconfig variable MEMLAYOUT_LD_FILE 2020-06-13 06:49:23 +00:00
up Kconfig: Escape variable to accommodate new Kconfig versions 2020-06-19 15:29:04 +00:00
Kconfig