diff options
author | Karthikeyan Ramasubramanian <kramasub@google.com> | 2021-03-18 23:16:29 -0600 |
---|---|---|
committer | Martin Roth <martinroth@google.com> | 2021-03-22 03:40:42 +0000 |
commit | 4f87ae1d4a3a597f1260534001bd99160cc8ca99 (patch) | |
tree | d9b2e6f2a396744b9a10f8f3cc7106d85c0afdc7 /src/soc/amd/stoneyridge/include/soc/iomap.h | |
parent | 0dbea48d46013c004014a024ad8717d049e67c8d (diff) | |
download | coreboot-4f87ae1d4a3a597f1260534001bd99160cc8ca99.tar.gz coreboot-4f87ae1d4a3a597f1260534001bd99160cc8ca99.tar.bz2 coreboot-4f87ae1d4a3a597f1260534001bd99160cc8ca99.zip |
soc/amd/common/block/i2c: Move SoC agnostic parts into common
The logic behind I2C bus initialization, I2C MMIO base address getter
and setter, I2C bus ACPI name resolution are identical for all the AMD
SoCs. Hence moving all the SoC agnotic parts of the driver into the
common driver and just configure the SoC specific parts into individual
I2C drivers.
BUG=None
TEST=Build Dalboz and Grunt. Boot to OS in Dalboz. Ensure that the I2C
peripherals are detected as earlier in Dalboz. Verify some I2C
peripheral functionality like trackpad and touchscreen.
Change-Id: Ic9c99ec769d7d8ad7e1e566fdf42a5206657183d
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Suggested-by: Kyosti Malkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/51509
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/amd/stoneyridge/include/soc/iomap.h')
-rw-r--r-- | src/soc/amd/stoneyridge/include/soc/iomap.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/soc/amd/stoneyridge/include/soc/iomap.h b/src/soc/amd/stoneyridge/include/soc/iomap.h index 7832dadafc79..b3c78e805573 100644 --- a/src/soc/amd/stoneyridge/include/soc/iomap.h +++ b/src/soc/amd/stoneyridge/include/soc/iomap.h @@ -15,6 +15,12 @@ #define I2C_DEVICE_SIZE 0x00001000 #define I2C_DEVICE_COUNT 4 +#define I2C_BUS_ADDRESS(x) (I2C_BASE_ADDRESS + I2C_DEVICE_SIZE * (x)) +#define I2CA_BASE_ADDRESS (I2C_BUS_ADDRESS(0)) +#define I2CB_BASE_ADDRESS (I2C_BUS_ADDRESS(1)) +#define I2CC_BASE_ADDRESS (I2C_BUS_ADDRESS(2)) +#define I2CD_BASE_ADDRESS (I2C_BUS_ADDRESS(3)) + #if CONFIG(HPET_ADDRESS_OVERRIDE) #error HPET address override is not allowed and must be fixed at 0xfed00000 #endif |