summaryrefslogtreecommitdiff
path: root/src/soc/amd/genoa/acpi
diff options
context:
space:
mode:
authorFelix Held <felix-coreboot@felixheld.de>2023-12-15 10:57:30 +0100
committerFelix Held <felix-coreboot@felixheld.de>2023-12-16 20:14:34 +0000
commitd123f8d8716811149ecdf7d51661d8cee6f48577 (patch)
tree36c6ae14a65508adac7889c4d43fa098db0bafca /src/soc/amd/genoa/acpi
parent1c295092d61c2ac7427ddac6d194d99337f86094 (diff)
soc/amd/genoa: rename to genoa_poc
Even though this SoC is called 'Genoa', the openSIL implementation and the corresponding coreboot integration is only a proof of concept that isn't fully featured, has known limitations and bugs, and is not meant for or ready to being productized. Adding the proof of concept suffix to the name should point this out clearly enough so that no potential customer could infer that this might be a fully functional and supported implementation which it is not. Change-Id: Ia459b1e007dcfd8e8710c12e252b2f9a4ae19b72 Signed-off-by: Varshit Pandya <pandyavarshit@gmail.com> Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Reviewed-on: https://review.coreboot.org/c/coreboot/+/77894 Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com> Reviewed-by: Marshall Dawson <marshalldawson3rd@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/amd/genoa/acpi')
-rw-r--r--src/soc/amd/genoa/acpi/globalnvs.asl13
-rw-r--r--src/soc/amd/genoa/acpi/mmio.asl414
-rw-r--r--src/soc/amd/genoa/acpi/pci_int_defs.asl98
-rw-r--r--src/soc/amd/genoa/acpi/soc.asl39
4 files changed, 0 insertions, 564 deletions
diff --git a/src/soc/amd/genoa/acpi/globalnvs.asl b/src/soc/amd/genoa/acpi/globalnvs.asl
deleted file mode 100644
index 23c53ee854..0000000000
--- a/src/soc/amd/genoa/acpi/globalnvs.asl
+++ /dev/null
@@ -1,13 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-
-/*
- * NOTE: The layout of the GNVS structure below must match the layout in
- * soc/amd/genoa/include/soc/nvs.h !!!
- */
-
-Field (GNVS, ByteAcc, NoLock, Preserve)
-{
- /* Miscellaneous */
- PM1I, 64, // 0x00 - 0x07 - System Wake Source - PM1 Index
- GPEI, 64, // 0x08 - 0x0f - GPE Wake Source
-}
diff --git a/src/soc/amd/genoa/acpi/mmio.asl b/src/soc/amd/genoa/acpi/mmio.asl
deleted file mode 100644
index 9b5e1d2d2b..0000000000
--- a/src/soc/amd/genoa/acpi/mmio.asl
+++ /dev/null
@@ -1,414 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-
-#include <soc/amd/common/acpi/aoac.asl>
-#include <soc/aoac_defs.h>
-#include <soc/gpio.h>
-#include <soc/iomap.h>
-#include <amdblocks/acpimmio_map.h>
-
-Device (AAHB)
-{
- Name (_HID, "AAHB0000")
- Name (_UID, 0x0)
- Name (_CRS, ResourceTemplate()
- {
- Memory32Fixed (ReadWrite, ALINK_AHB_ADDRESS, 0x2000)
- })
- Name (_STA, 0xb)
-}
-
-Device (GPIO)
-{
- Name (_HID, GPIO_DEVICE_NAME)
- Name (_CID, GPIO_DEVICE_NAME)
- Name (_UID, 0)
- Name (_DDN, GPIO_DEVICE_DESC)
-
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Level,
- ActiveLow,
- Shared, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, ACPIMMIO_GPIO0_BASE, 0x400)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = IGPI
- } Else {
- IRQN = PGPI
- }
- If (IRQN == 0x1f || IRQN == 0) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, ACPIMMIO_GPIO0_BASE, 0x400)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Method (_STA, 0x0, NotSerialized)
- {
- Return (0x0F)
- }
-}
-
-Device (FUR0)
-{
- Name (_HID, "AMDI0020")
- Name (_UID, 0x0)
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Edge,
- ActiveHigh,
- Exclusive, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, APU_UART0_BASE, 0x1000)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = IUA0
- } Else {
- IRQN = PUA0
- }
- If (IRQN == 0x1f) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, APU_UART0_BASE, 0x1000)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Name (STAT, 0x0)
- Method (_STA, 0x0, NotSerialized)
- {
- Return (STAT)
- }
-
- AOAC_DEVICE(FCH_AOAC_DEV_UART0, 0)
-}
-
-Device (FUR1) {
- Name (_HID, "AMDI0020")
- Name (_UID, 0x1)
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Edge,
- ActiveHigh,
- Exclusive, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, APU_UART1_BASE, 0x1000)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = IUA1
- } Else {
- IRQN = PUA1
- }
- If (IRQN == 0x1f) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, APU_UART1_BASE, 0x1000)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Name (STAT, 0x0)
- Method (_STA, 0x0, NotSerialized)
- {
- Return (STAT)
- }
-
- AOAC_DEVICE(FCH_AOAC_DEV_UART1, 0)
-}
-
-Device (FUR2) {
- Name (_HID, "AMDI0020")
- Name (_UID, 0x2)
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Edge,
- ActiveHigh,
- Exclusive, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, APU_UART2_BASE, 0x1000)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = IUA2
- } Else {
- IRQN = PUA2
- }
- If (IRQN == 0x1f) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, APU_UART2_BASE, 0x1000)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Name (STAT, 0x0)
- Method (_STA, 0x0, NotSerialized)
- {
- Return (STAT)
- }
-
- AOAC_DEVICE(FCH_AOAC_DEV_UART2, 0)
-}
-
-Device (I2C0) {
- Name (_HID, "AMDI0010")
- Name (_UID, 0x0)
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Edge,
- ActiveHigh,
- Exclusive, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, APU_I2C0_BASE, 0x1000)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = II20
- } Else {
- IRQN = PI20
- }
- If (IRQN == 0x1f) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, APU_I2C0_BASE, 0x1000)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Name (STAT, 0x0)
- Method (_STA, 0x0, NotSerialized)
- {
- Return (STAT)
- }
-
- AOAC_DEVICE(FCH_AOAC_DEV_I2C0, 0)
-}
-
-Device (I2C1) {
- Name (_HID, "AMDI0010")
- Name (_UID, 0x1)
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Edge,
- ActiveHigh,
- Exclusive, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, APU_I2C1_BASE, 0x1000)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = II21
- } Else {
- IRQN = PI21
- }
- If (IRQN == 0x1f) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, APU_I2C1_BASE, 0x1000)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Name (STAT, 0x0)
- Method (_STA, 0x0, NotSerialized)
- {
- Return (STAT)
- }
-
- AOAC_DEVICE(FCH_AOAC_DEV_I2C1, 0)
-}
-
-Device (I2C2) {
- Name (_HID, "AMDI0010")
- Name (_UID, 0x2)
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Edge,
- ActiveHigh,
- Exclusive, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, APU_I2C2_BASE, 0x1000)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = II22
- } Else {
- IRQN = PI22
- }
- If (IRQN == 0x1f) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, APU_I2C2_BASE, 0x1000)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Name (STAT, 0x0)
- Method (_STA, 0x0, NotSerialized)
- {
- Return (STAT)
- }
-
- AOAC_DEVICE(FCH_AOAC_DEV_I2C2, 0)
-}
-
-Device (I2C3)
-{
- Name (_HID, "AMDI0010")
- Name (_UID, 0x3)
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Edge,
- ActiveHigh,
- Exclusive, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, APU_I2C3_BASE, 0x1000)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = II23
- } Else {
- IRQN = PI23
- }
- If (IRQN == 0x1f) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, APU_I2C3_BASE, 0x1000)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Name (STAT, 0x0)
- Method (_STA, 0x0, NotSerialized)
- {
- Return (STAT)
- }
-
- AOAC_DEVICE(FCH_AOAC_DEV_I2C3, 0)
-}
-
-Device (I2C4)
-{
- Name (_HID, "AMDI0010")
- Name (_UID, 0x4)
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Edge,
- ActiveHigh,
- Exclusive, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, APU_I2C4_BASE, 0x1000)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = II24
- } Else {
- IRQN = PI24
- }
- If (IRQN == 0x1f) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, APU_I2C4_BASE, 0x1000)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Name (STAT, 0x0)
- Method (_STA, 0x0, NotSerialized)
- {
- Return (STAT)
- }
-
- AOAC_DEVICE(FCH_AOAC_DEV_I2C4, 0)
-}
-
-Device (I2C5)
-{
- Name (_HID, "AMDI0010")
- Name (_UID, 0x5)
- Method (_CRS, 0) {
- Local0 = ResourceTemplate() {
- Interrupt (
- ResourceConsumer,
- Edge,
- ActiveHigh,
- Exclusive, , , IRQR)
- { 0 }
- Memory32Fixed (ReadWrite, APU_I2C5_BASE, 0x1000)
- }
- CreateDWordField (Local0, IRQR._INT, IRQN)
- If (PICM) {
- IRQN = II25
- } Else {
- IRQN = PI25
- }
- If (IRQN == 0x1f) {
- Return (ResourceTemplate() {
- Memory32Fixed (ReadWrite, APU_I2C5_BASE, 0x1000)
- })
- } Else {
- Return (Local0)
- }
- }
-
- Name (STAT, 0x0)
- Method (_STA, 0x0, NotSerialized)
- {
- Return (STAT)
- }
-
- AOAC_DEVICE(FCH_AOAC_DEV_I2C5, 0)
-}
-
-Device (MISC)
-{
- Name (_HID, "AMD0040")
- Name (_UID, 0x3)
- Name (_CRS, ResourceTemplate() {
- Memory32Fixed (ReadWrite, ACPIMMIO_MISC_BASE, 0x100)
- })
- Name (_DSD, Package ()
- {
- ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
- Package ()
- {
- Package () { "is-rv", 1 },
- },
- })
- Method (_STA, 0x0, NotSerialized)
- {
- Return (0x0B)
- }
-}
diff --git a/src/soc/amd/genoa/acpi/pci_int_defs.asl b/src/soc/amd/genoa/acpi/pci_int_defs.asl
deleted file mode 100644
index 22455c5cae..0000000000
--- a/src/soc/amd/genoa/acpi/pci_int_defs.asl
+++ /dev/null
@@ -1,98 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-
-/* PCI IRQ mapping registers, C00h-C01h. */
-OperationRegion(PRQM, SystemIO, 0x00000c00, 0x00000002)
- Field(PRQM, ByteAcc, NoLock, Preserve) {
- PRQI, 0x00000008,
- PRQD, 0x00000008, /* Offset: 1h */
-}
-
-/*
- * All PIC indexes are prefixed with P.
- * All IO-APIC indexes are prefixed with I.
- */
-IndexField(PRQI, PRQD, ByteAcc, NoLock, Preserve) {
- PIRA, 0x00000008, /* Index 0: INTA */
- PIRB, 0x00000008, /* Index 1: INTB */
- PIRC, 0x00000008, /* Index 2: INTC */
- PIRD, 0x00000008, /* Index 3: INTD */
- PIRE, 0x00000008, /* Index 4: INTE */
- PIRF, 0x00000008, /* Index 5: INTF */
- PIRG, 0x00000008, /* Index 6: INTG */
- PIRH, 0x00000008, /* Index 7: INTH */
-
- Offset (0x10),
- PSCI, 0x00000008, /* Index 0x10: SCI */
- PSB0, 0x00000008, /* Index 0x11: SMBUS0 */
- PASF, 0x00000008, /* Index 0x12: ASF */
-
- Offset (0x16),
- PPMN, 0x00000008, /* Index 0x16: PerMon */
-
- Offset (0x1a),
- PSIO, 0x00000008, /* Index 0x1A: SDIO */
-
- Offset (0x50),
- PGP0, 0x00000008, /* Index 0x50: GPP0 */
- PGP1, 0x00000008, /* Index 0x51: GPP1 */
- PGP2, 0x00000008, /* Index 0x52: GPP2 */
- PGP3, 0x00000008, /* Index 0x53: GPP3 */
-
- Offset (0x62),
- PGPI, 0x00000008, /* Index 0x62: GPIO */
-
- Offset (0x70),
- PI20, 0x00000008, /* Index 0x70: I2C0/I3C0 */
- PI21, 0x00000008, /* Index 0x71: I2C1/I3C1 */
- PI22, 0x00000008, /* Index 0x72: I2C2/I3C2 */
- PI23, 0x00000008, /* Index 0x73: I2C3/I3C3 */
- PUA0, 0x00000008, /* Index 0x74: UART0 */
- PUA1, 0x00000008, /* Index 0x75: UART1 */
- PI24, 0x00000008, /* Index 0x76: I2C4 */
- PI25, 0x00000008, /* Index 0x77: I2C5 */
- PUA2, 0x00000008, /* Index 0x78: UART2 */
- PUA3, 0x00000008, /* Index 0x79: UART3 */
-
- /* IO-APIC IRQs */
- Offset (0x80),
- IORA, 0x00000008, /* Index 0x80: INTA */
- IORB, 0x00000008, /* Index 0x81: INTB */
- IORC, 0x00000008, /* Index 0x82: INTC */
- IORD, 0x00000008, /* Index 0x83: INTD */
- IORE, 0x00000008, /* Index 0x84: INTE */
- IORF, 0x00000008, /* Index 0x85: INTF */
- IORG, 0x00000008, /* Index 0x86: INTG */
- IORH, 0x00000008, /* Index 0x87: INTH */
-
- Offset (0x90),
- ISCI, 0x00000008, /* Index 0x90: SCI */
- ISB0, 0x00000008, /* Index 0x91: SMBUS0 */
- IASF, 0x00000008, /* Index 0x92: ASF */
-
- Offset (0x96),
- IPMN, 0x00000008, /* Index 0x96: PerMon */
-
- Offset (0x9a),
- ISIO, 0x00000008, /* Index 0x9A: SDIO */
-
- Offset (0xD0),
- IGP0, 0x00000008, /* Index 0xD0: GPP0 */
- IGP1, 0x00000008, /* Index 0xD1: GPP1 */
- IGP2, 0x00000008, /* Index 0xD2: GPP2 */
- IGP3, 0x00000008, /* Index 0xD3: GPP3 */
-
- Offset (0xE2),
- IGPI, 0x00000008, /* Index 0xE2: GPIO */
-
- Offset (0xF0),
- II20, 0x00000008, /* Index 0xF0: I2C0/I3C0 */
- II21, 0x00000008, /* Index 0xF1: I2C1/I3C1 */
- II22, 0x00000008, /* Index 0xF2: I2C2/I3C2 */
- II23, 0x00000008, /* Index 0xF3: I2C3/I3C3 */
- IUA0, 0x00000008, /* Index 0xF4: UART0 */
- IUA1, 0x00000008, /* Index 0xF5: UART1 */
- II24, 0x00000008, /* Index 0xF6: I2C4 */
- II25, 0x00000008, /* Index 0xF7: I2C5 */
- IUA2, 0x00000008, /* Index 0xF8: UART2 */
- IUA3, 0x00000008, /* Index 0xF9: UART3 */
-}
diff --git a/src/soc/amd/genoa/acpi/soc.asl b/src/soc/amd/genoa/acpi/soc.asl
deleted file mode 100644
index 75344dc325..0000000000
--- a/src/soc/amd/genoa/acpi/soc.asl
+++ /dev/null
@@ -1,39 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-
-#include <soc/amd/common/acpi/pci_root.asl>
-#include "globalnvs.asl"
-
-Scope(\_SB) {
- /* global utility methods expected within the \_SB scope */
- #include <arch/x86/acpi/globutil.asl>
-
- #include <soc/amd/common/acpi/gpio_bank_lib.asl>
-
- #include <soc/amd/common/acpi/osc.asl>
-
- #include "pci_int_defs.asl"
-
- #include "mmio.asl"
-
- ROOT_BRIDGE(S0B0)
- ROOT_BRIDGE(S0B1)
- ROOT_BRIDGE(S0B2)
- ROOT_BRIDGE(S0B3)
-} /* End \_SB scope */
-
-#include <soc/amd/common/acpi/alib.asl>
-
-#include <soc/amd/common/acpi/platform.asl>
-
-#include <soc/amd/common/acpi/sleepstates.asl>
-
-/*
- * Platform Notify
- *
- * This is called by soc/amd/common/acpi/platform.asl.
- */
-Method (PNOT)
-{
- /* Report AC/DC state to ALIB using WAL1() */
- \WAL1 ()
-}