diff options
author | Raul E Rangel <rrangel@chromium.org> | 2021-02-24 16:17:54 -0700 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2021-03-01 08:21:31 +0000 |
commit | 69ff4281596127622f4ef941a37d80baec4f65b1 (patch) | |
tree | 134189b0be1d29b6b24d4c264984d67e15d49369 /src | |
parent | bda338a1be38a50fae86a2e02ce8dac8bb9eb3f0 (diff) |
soc/amd/common/block/acpimmio: Add fch_disable_legacy_dma_io
Add a method to disable decoding the legacy DMA IO ports.
Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Change-Id: I979445cfa8317334e62e9ebf12256ece9f8058bf
Reviewed-on: https://review.coreboot.org/c/coreboot/+/51075
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/soc/amd/common/block/acpimmio/mmio_util.c | 6 | ||||
-rw-r--r-- | src/soc/amd/common/block/include/amdblocks/acpimmio.h | 3 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/soc/amd/common/block/acpimmio/mmio_util.c b/src/soc/amd/common/block/acpimmio/mmio_util.c index 3a86aafbb5..cfe877952a 100644 --- a/src/soc/amd/common/block/acpimmio/mmio_util.c +++ b/src/soc/amd/common/block/acpimmio/mmio_util.c @@ -69,6 +69,12 @@ void fch_enable_legacy_io(void) pm_write32(PM_DECODE_EN, pm_read32(PM_DECODE_EN) | LEGACY_IO_EN); } +void fch_disable_legacy_dma_io(void) +{ + pm_write32(PM_DECODE_EN, pm_read32(PM_DECODE_EN) & + ~(LEGACY_DMA_IO_EN | LEGACY_DMA_IO_80_EN)); +} + void fch_io_enable_legacy_io(void) { pm_io_write32(PM_DECODE_EN, pm_io_read32(PM_DECODE_EN) | LEGACY_IO_EN); diff --git a/src/soc/amd/common/block/include/amdblocks/acpimmio.h b/src/soc/amd/common/block/include/amdblocks/acpimmio.h index a9a6986c77..7891bfddb1 100644 --- a/src/soc/amd/common/block/include/amdblocks/acpimmio.h +++ b/src/soc/amd/common/block/include/amdblocks/acpimmio.h @@ -22,6 +22,8 @@ #define HPET_EN (1 << 6) /* decode HPET MMIO at 0xfed00000 */ #define FCH_IOAPIC_EN (1 << 5) #define SMBUS_ASF_IO_EN (1 << 4) +#define LEGACY_DMA_IO_80_EN (1 << 3) /* pass 0x80-0x83 to legacy DMA IO range */ +#define LEGACY_DMA_IO_EN (1 << 2) #define CF9_IO_EN (1 << 1) #define LEGACY_IO_EN (1 << 0) #define PM_RST_STATUS 0xc0 @@ -78,6 +80,7 @@ void enable_acpimmio_decode_pm24(void); void enable_acpimmio_decode_pm04(void); void fch_enable_cf9_io(void); void fch_enable_legacy_io(void); +void fch_disable_legacy_dma_io(void); void fch_io_enable_legacy_io(void); void fch_enable_ioapic_decode(void); void fch_configure_hpet(void); |