soc/amd/picasso/acpi: Remove dummy AOAC parent device
The dummy AOAC parent device was nice because it grouped all the AOAC devices. Unfortunately windows doesn't like this dummy device and causes "Not Found" errors. This change moves the AOAC devices to the actual devices that use them. BUG=b:175146875 TEST=Boot linux and make sure power resources are enabled/disabled. Signed-off-by: Raul E Rangel <rrangel@chromium.org> Change-Id: Idd4a94baa4358ee4f15c461a5bb54ca925023a13 Reviewed-on: https://review.coreboot.org/c/coreboot/+/49814 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
parent
0698f0f354
commit
7c0e49b24a
|
@ -1,9 +1,7 @@
|
||||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||||
|
|
||||||
#include <amdblocks/acpimmio_map.h>
|
#define AOAC_DEVICE(DEV_ID, SX) \
|
||||||
|
PowerResource(AOAC, SX, 0) { \
|
||||||
#define AOAC_DEVICE(DEV_NAME, DEV_ID, SX) \
|
|
||||||
PowerResource(DEV_NAME, SX, 0) { \
|
|
||||||
OperationRegion (AOAC, SystemMemory, ACPIMMIO_BASE(AOAC) + 0x40 + (DEV_ID << 1), 2) \
|
OperationRegion (AOAC, SystemMemory, ACPIMMIO_BASE(AOAC) + 0x40 + (DEV_ID << 1), 2) \
|
||||||
Field (AOAC, ByteAcc, NoLock, Preserve) { \
|
Field (AOAC, ByteAcc, NoLock, Preserve) { \
|
||||||
/* \
|
/* \
|
||||||
|
@ -105,28 +103,13 @@
|
||||||
Stall (100) \
|
Stall (100) \
|
||||||
} \
|
} \
|
||||||
} \
|
} \
|
||||||
}
|
} \
|
||||||
|
Name (_PR0, Package () { AOAC }) \
|
||||||
|
Name (_PR2, Package () { AOAC }) \
|
||||||
Device (AOAC) {
|
Name (_PR3, Package () { AOAC }) \
|
||||||
Name (_HID, EISAID("PNP0C02")) // ID for Motherboard resources
|
Method (_PS0, 0, Serialized) { \
|
||||||
|
^AOAC.TDS = 1 \
|
||||||
Method (_STA, 0x0, NotSerialized)
|
} \
|
||||||
{
|
Method (_PS3, 0, Serialized) { \
|
||||||
/*
|
^AOAC.TDS = 3 \
|
||||||
* This case is used to indicate a valid device for which no
|
|
||||||
* device driver should be loaded (for example, a bridge
|
|
||||||
* device.) Children of this device may be present and valid.
|
|
||||||
* OSPM should continue enumeration below a device whose _STA
|
|
||||||
* returns this bit combination.
|
|
||||||
*/
|
|
||||||
Return (0x08)
|
|
||||||
}
|
|
||||||
|
|
||||||
AOAC_DEVICE(I2C2, 7, 0)
|
|
||||||
AOAC_DEVICE(I2C3, 8, 0)
|
|
||||||
AOAC_DEVICE(FUR0, 11, 0)
|
|
||||||
AOAC_DEVICE(FUR1, 12, 0)
|
|
||||||
AOAC_DEVICE(FUR2, 16, 0)
|
|
||||||
AOAC_DEVICE(FUR3, 26, 0)
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
#include <soc/gpio.h>
|
#include <soc/gpio.h>
|
||||||
#include <soc/iomap.h>
|
#include <soc/iomap.h>
|
||||||
#include <amdblocks/acpimmio_map.h>
|
#include <amdblocks/acpimmio_map.h>
|
||||||
|
#include <aoac.asl>
|
||||||
|
|
||||||
Device (AAHB)
|
Device (AAHB)
|
||||||
{
|
{
|
||||||
|
@ -123,15 +124,7 @@ Device (FUR0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Name (_PR0, Package () { \_SB.AOAC.FUR0 })
|
AOAC_DEVICE(11, 0)
|
||||||
Name (_PR2, Package () { \_SB.AOAC.FUR0 })
|
|
||||||
Name (_PR3, Package () { \_SB.AOAC.FUR0 })
|
|
||||||
Method (_PS0, 0, Serialized) {
|
|
||||||
\_SB.AOAC.FUR0.TDS = 1
|
|
||||||
}
|
|
||||||
Method (_PS3, 0, Serialized) {
|
|
||||||
\_SB.AOAC.FUR0.TDS = 3
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Device (FUR1) {
|
Device (FUR1) {
|
||||||
|
@ -164,15 +157,7 @@ Device (FUR1) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Name (_PR0, Package () { \_SB.AOAC.FUR1 })
|
AOAC_DEVICE(12, 0)
|
||||||
Name (_PR2, Package () { \_SB.AOAC.FUR1 })
|
|
||||||
Name (_PR3, Package () { \_SB.AOAC.FUR1 })
|
|
||||||
Method (_PS0, 0, Serialized) {
|
|
||||||
\_SB.AOAC.FUR1.TDS = 1
|
|
||||||
}
|
|
||||||
Method (_PS3, 0, Serialized) {
|
|
||||||
\_SB.AOAC.FUR1.TDS = 3
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Device (FUR2) {
|
Device (FUR2) {
|
||||||
|
@ -205,15 +190,7 @@ Device (FUR2) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Name (_PR0, Package () { \_SB.AOAC.FUR2 })
|
AOAC_DEVICE(16, 0)
|
||||||
Name (_PR2, Package () { \_SB.AOAC.FUR2 })
|
|
||||||
Name (_PR3, Package () { \_SB.AOAC.FUR2 })
|
|
||||||
Method (_PS0, 0, Serialized) {
|
|
||||||
\_SB.AOAC.FUR2.TDS = 1
|
|
||||||
}
|
|
||||||
Method (_PS3, 0, Serialized) {
|
|
||||||
\_SB.AOAC.FUR2.TDS = 3
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Device (FUR3) {
|
Device (FUR3) {
|
||||||
|
@ -246,15 +223,7 @@ Device (FUR3) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Name (_PR0, Package () { \_SB.AOAC.FUR3 })
|
AOAC_DEVICE(26, 0)
|
||||||
Name (_PR2, Package () { \_SB.AOAC.FUR3 })
|
|
||||||
Name (_PR3, Package () { \_SB.AOAC.FUR3 })
|
|
||||||
Method (_PS0, 0, Serialized) {
|
|
||||||
\_SB.AOAC.FUR3.TDS = 1
|
|
||||||
}
|
|
||||||
Method (_PS3, 0, Serialized) {
|
|
||||||
\_SB.AOAC.FUR3.TDS = 3
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Device (I2C2) {
|
Device (I2C2) {
|
||||||
|
@ -290,15 +259,7 @@ Device (I2C2) {
|
||||||
Return (0x0F)
|
Return (0x0F)
|
||||||
}
|
}
|
||||||
|
|
||||||
Name (_PR0, Package () { \_SB.AOAC.I2C2 })
|
AOAC_DEVICE(7, 0)
|
||||||
Name (_PR2, Package () { \_SB.AOAC.I2C2 })
|
|
||||||
Name (_PR3, Package () { \_SB.AOAC.I2C2 })
|
|
||||||
Method (_PS0, 0, Serialized) {
|
|
||||||
\_SB.AOAC.I2C2.TDS = 1
|
|
||||||
}
|
|
||||||
Method (_PS3, 0, Serialized) {
|
|
||||||
\_SB.AOAC.I2C2.TDS = 3
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Device (I2C3)
|
Device (I2C3)
|
||||||
|
@ -334,15 +295,7 @@ Device (I2C3)
|
||||||
Return (0x0F)
|
Return (0x0F)
|
||||||
}
|
}
|
||||||
|
|
||||||
Name (_PR0, Package () { \_SB.AOAC.I2C3 })
|
AOAC_DEVICE(8, 0)
|
||||||
Name (_PR2, Package () { \_SB.AOAC.I2C3 })
|
|
||||||
Name (_PR3, Package () { \_SB.AOAC.I2C3 })
|
|
||||||
Method (_PS0, 0, Serialized) {
|
|
||||||
\_SB.AOAC.I2C3.TDS = 1
|
|
||||||
}
|
|
||||||
Method (_PS3, 0, Serialized) {
|
|
||||||
\_SB.AOAC.I2C3.TDS = 3
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Device (MISC)
|
Device (MISC)
|
||||||
|
|
Loading…
Reference in New Issue