390ba044dc
SSFG was meant to be used as a mask to enable sleep states _S1 thru _S4. However as a logical instead of bitwise 'and' operation was used, all the states were enabled if only one was marked available. State _S3 is now set conditionally if HAVE_ACPI_RESUME=y. For pi/hudson this had been fixed already preprocessor. Note that all boards had SSFG == 0x0D that previously enabled ACPI S3 sleep state even when it was not available. States _S1 and _S2 still appear enabled in ASL/AML but may not actually work. TEST: 'cat /sys/power/state' and notice choice 'mem' was removed from the list of available sleep states. Change-Id: I27d616871c1771f0c87d8fba23d4ce1569607765 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/21091 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Marc Jones <marc@marcjonesconsulting.com>
87 lines
2.6 KiB
Text
87 lines
2.6 KiB
Text
/*
|
|
* This file is part of the coreboot project.
|
|
*
|
|
* Copyright (C) 2013 Advanced Micro Devices, Inc.
|
|
* Copyright (C) 2013 Sage Electronic Engineering, LLC
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; version 2 of the License.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*/
|
|
|
|
/* DefinitionBlock Statement */
|
|
DefinitionBlock (
|
|
"DSDT.AML", /* Output filename */
|
|
"DSDT", /* Signature */
|
|
0x02, /* DSDT Revision, needs to be 2 for 64bit */
|
|
"AMD ", /* OEMID */
|
|
"COREBOOT", /* TABLE ID */
|
|
0x00010001 /* OEM Revision */
|
|
)
|
|
{ /* Start of ASL file */
|
|
/* #include <arch/x86/acpi/debug.asl> */ /* Include global debug methods if needed */
|
|
|
|
/* Globals for the platform */
|
|
#include "acpi/mainboard.asl"
|
|
|
|
/* Describe the USB Overcurrent pins */
|
|
#include "acpi/usb_oc.asl"
|
|
|
|
/* PCI IRQ mapping for the Southbridge */
|
|
#include <southbridge/amd/agesa/hudson/acpi/pcie.asl>
|
|
|
|
/* Describe the processor tree (\_PR) */
|
|
#include <cpu/amd/agesa/family16kb/acpi/cpu.asl>
|
|
|
|
/* Contains the supported sleep states for this chipset */
|
|
#include <southbridge/amd/common/acpi/sleepstates.asl>
|
|
|
|
/* Contains the Sleep methods (WAK, PTS, GTS, etc.) */
|
|
#include "acpi/sleep.asl"
|
|
|
|
/* System Bus */
|
|
Scope(\_SB) { /* Start \_SB scope */
|
|
/* global utility methods expected within the \_SB scope */
|
|
#include <arch/x86/acpi/globutil.asl>
|
|
|
|
/* Describe IRQ Routing mapping for this platform (within the \_SB scope) */
|
|
#include "acpi/routing.asl"
|
|
|
|
Device(PWRB) {
|
|
Name(_HID, EISAID("PNP0C0C"))
|
|
Name(_UID, 0xAA)
|
|
Name(_PRW, Package () {3, 0x04})
|
|
Name(_STA, 0x0B)
|
|
}
|
|
|
|
Device(PCI0) {
|
|
/* Describe the AMD Northbridge */
|
|
#include <northbridge/amd/agesa/family16kb/acpi/northbridge.asl>
|
|
|
|
/* Describe the AMD Fusion Controller Hub Southbridge */
|
|
#include <southbridge/amd/agesa/hudson/acpi/fch.asl>
|
|
}
|
|
|
|
/* Describe PCI INT[A-H] for the Southbridge */
|
|
#include <southbridge/amd/agesa/hudson/acpi/pci_int.asl>
|
|
|
|
} /* End \_SB scope */
|
|
|
|
/* Describe SMBUS for the Southbridge */
|
|
#include <southbridge/amd/agesa/hudson/acpi/smbus.asl>
|
|
|
|
/* Define the General Purpose Events for the platform */
|
|
#include "acpi/gpe.asl"
|
|
|
|
/* Define the Thermal zones and methods for the platform */
|
|
#include "acpi/thermal.asl"
|
|
|
|
/* Define the System Indicators for the platform */
|
|
#include "acpi/si.asl"
|
|
}
|
|
/* End of ASL file */
|