Message ID | 20210608202522.2677850-4-venture@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | With the pca954x i2c mux available, enable it on aspeed and nuvoton BMC boards. | expand |
On 6/8/21 10:25 PM, Patrick Venture wrote: > Adds the pca954x muxes expected. > > Tested: Booted quanta-q71l image to userspace. > Signed-off-by: Patrick Venture <venture@google.com> > Reviewed-by: Hao Wu <wuhaotsh@google.com> > Reviewed-by: Joel Stanley <joel@jms.id.au> Reviewed-by: Cédric Le Goater <clg@kaod.org> I guess this patchset can go through the arm tree directly. Thanks, C. > --- > hw/arm/Kconfig | 1 + > hw/arm/aspeed.c | 11 ++++++++--- > 2 files changed, 9 insertions(+), 3 deletions(-) > > diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig > index 9d1c2a6f7b..4a033e81ef 100644 > --- a/hw/arm/Kconfig > +++ b/hw/arm/Kconfig > @@ -413,6 +413,7 @@ config ASPEED_SOC > select PCA9552 > select SERIAL > select SMBUS_EEPROM > + select PCA954X > select SSI > select SSI_M25P80 > select TMP105 > diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c > index 3fe6c55744..35a28b0e8b 100644 > --- a/hw/arm/aspeed.c > +++ b/hw/arm/aspeed.c > @@ -14,6 +14,7 @@ > #include "hw/arm/boot.h" > #include "hw/arm/aspeed.h" > #include "hw/arm/aspeed_soc.h" > +#include "hw/i2c/i2c_mux_pca954x.h" > #include "hw/i2c/smbus_eeprom.h" > #include "hw/misc/pca9552.h" > #include "hw/misc/tmp105.h" > @@ -461,14 +462,18 @@ static void quanta_q71l_bmc_i2c_init(AspeedMachineState *bmc) > /* TODO: i2c-1: Add Frontpanel FRU eeprom@57 24c64 */ > /* TODO: Add Memory Riser i2c mux and eeproms. */ > > - /* TODO: i2c-2: pca9546@74 */ > - /* TODO: i2c-2: pca9548@77 */ > + i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), "pca9546", 0x74); > + i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), "pca9548", 0x77); > + > /* TODO: i2c-3: Add BIOS FRU eeprom@56 24c64 */ > - /* TODO: i2c-7: Add pca9546@70 */ > + > + /* i2c-7 */ > + i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), "pca9546", 0x70); > /* - i2c@0: pmbus@59 */ > /* - i2c@1: pmbus@58 */ > /* - i2c@2: pmbus@58 */ > /* - i2c@3: pmbus@59 */ > + > /* TODO: i2c-7: Add PDB FRU eeprom@52 */ > /* TODO: i2c-8: Add BMC FRU eeprom@50 */ > } >
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig index 9d1c2a6f7b..4a033e81ef 100644 --- a/hw/arm/Kconfig +++ b/hw/arm/Kconfig @@ -413,6 +413,7 @@ config ASPEED_SOC select PCA9552 select SERIAL select SMBUS_EEPROM + select PCA954X select SSI select SSI_M25P80 select TMP105 diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index 3fe6c55744..35a28b0e8b 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -14,6 +14,7 @@ #include "hw/arm/boot.h" #include "hw/arm/aspeed.h" #include "hw/arm/aspeed_soc.h" +#include "hw/i2c/i2c_mux_pca954x.h" #include "hw/i2c/smbus_eeprom.h" #include "hw/misc/pca9552.h" #include "hw/misc/tmp105.h" @@ -461,14 +462,18 @@ static void quanta_q71l_bmc_i2c_init(AspeedMachineState *bmc) /* TODO: i2c-1: Add Frontpanel FRU eeprom@57 24c64 */ /* TODO: Add Memory Riser i2c mux and eeproms. */ - /* TODO: i2c-2: pca9546@74 */ - /* TODO: i2c-2: pca9548@77 */ + i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), "pca9546", 0x74); + i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 2), "pca9548", 0x77); + /* TODO: i2c-3: Add BIOS FRU eeprom@56 24c64 */ - /* TODO: i2c-7: Add pca9546@70 */ + + /* i2c-7 */ + i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), "pca9546", 0x70); /* - i2c@0: pmbus@59 */ /* - i2c@1: pmbus@58 */ /* - i2c@2: pmbus@58 */ /* - i2c@3: pmbus@59 */ + /* TODO: i2c-7: Add PDB FRU eeprom@52 */ /* TODO: i2c-8: Add BMC FRU eeprom@50 */ }