coreboot-kgpe-d16/src
Karthikeyan Ramasubramanian f8fe39baca mb/google/guybrush: Define ACPI Power Resources for FPMCU
Currently all the power sequencing for FPMCU is done explicitly in
different stages of coreboot. This can all be done by adding ACPI power
resources for FPMCU and clean up the unused code. Here is the expected
power sequence:
PowerUp  : Assert EN_PWR_FP -> 3 ms delay -> De-assert FPMCU_RST_ODL
Shutdown : De-assert EN_PWR_FP -> Assert FPMCU_RST_ODL
Reboot   : Shutdown -> 200 ms delay -> PowerUp

BUG=None
TEST=Build and boot to OS in Guybrush. Ensure that the FP is able to
unlock the system after the first login attempt. Ensure that the FP is
able to wakeup the system. Observed that the power resource is added
correctly in the FPMCU ACPI object
            Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
            {
                PR01
            })
            Name (_PR3, Package (0x01)  // _PR3: Power Resources for D3hot
            {
                PR01
            })
            PowerResource (PR01, 0x00, 0x0000)
            {
                Method (_STA, 0, NotSerialized)  // _STA: Status
                {
                    Return (0x01)
                }

                Method (_ON, 0, Serialized)  // _ON_: Power On
                {
                    \_SB.CTXS (0x0B)
                    \_SB.STXS (0x20)
                    \_SB.STXS (0x0B)
                }

                Method (_OFF, 0, Serialized)  // _OFF: Power Off
                {
                     \_SB.CTXS (0x0B)
                     \_SB.CTXS (0x20)
                }
            }

Change-Id: I52322eaecf6961ff9a196ca9ab2d58b7d4599d4f
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/58705
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Reviewed-by: Rob Barnes <robbarnes@google.com>
2021-11-11 18:05:12 +00:00
..
acpi Rename ECAM-specific MMCONF Kconfigs 2021-11-10 17:24:16 +00:00
arch arch/x86: Refactor the SMBIOS type 17 write function 2021-11-11 09:10:10 +00:00
commonlib drivers/intel/fsp2_0: Allow FSP-M to be relocated 2021-11-08 19:58:46 +00:00
console src/acpi to src/lib: Fix spelling errors 2021-10-05 18:06:39 +00:00
cpu cpu/intel: Use unsigned types in get_cpu_count() 2021-11-05 15:30:34 +00:00
device arch/x86: Refactor the SMBIOS type 17 write function 2021-11-11 09:10:10 +00:00
drivers Rename ECAM-specific MMCONF Kconfigs 2021-11-10 17:24:16 +00:00
ec ChromeOS: Fix <vc/google/chromeos/chromeos.h> 2021-11-09 00:14:46 +00:00
include arch/x86: Refactor the SMBIOS type 17 write function 2021-11-11 09:10:10 +00:00
lib arch/x86: Refactor the SMBIOS type 17 write function 2021-11-11 09:10:10 +00:00
mainboard mb/google/guybrush: Define ACPI Power Resources for FPMCU 2021-11-11 18:05:12 +00:00
northbridge arch/x86: Refactor the SMBIOS type 17 write function 2021-11-11 09:10:10 +00:00
security Rename ECAM-specific MMCONF Kconfigs 2021-11-10 17:24:16 +00:00
soc soc/mediatek/mt8195: fix apusys coding defects 2021-11-11 14:34:44 +00:00
southbridge sb/intel: Replace bad uses of find_resource 2021-11-04 17:32:06 +00:00
superio superio: Replace bad uses of find_resource 2021-11-04 17:36:32 +00:00
vendorcode Rename ECAM-specific MMCONF Kconfigs 2021-11-10 17:24:16 +00:00
Kconfig src/lib: Add FW_CONFIG_SOURCE_VPD 2021-11-08 14:48:05 +00:00