Message ID | 20230114170151.87833-5-peter@pjd.dev (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | hw/nvram/eeprom_at24c: Cleanup + FRUID EEPROM init example | expand |
On 1/14/23 18:01, Peter Delevoryas wrote: > Signed-off-by: Peter Delevoryas <peter@pjd.dev> Reviewed-by: Cédric Le Goater <clg@kaod.org> Thanks, C. > --- > hw/arm/npcm7xx_boards.c | 20 +++++--------------- > 1 file changed, 5 insertions(+), 15 deletions(-) > > diff --git a/hw/arm/npcm7xx_boards.c b/hw/arm/npcm7xx_boards.c > index 6bc6f5d2fe29..9b31207a06e9 100644 > --- a/hw/arm/npcm7xx_boards.c > +++ b/hw/arm/npcm7xx_boards.c > @@ -21,6 +21,7 @@ > #include "hw/i2c/i2c_mux_pca954x.h" > #include "hw/i2c/smbus_eeprom.h" > #include "hw/loader.h" > +#include "hw/nvram/eeprom_at24c.h" > #include "hw/qdev-core.h" > #include "hw/qdev-properties.h" > #include "qapi/error.h" > @@ -140,17 +141,6 @@ static I2CBus *npcm7xx_i2c_get_bus(NPCM7xxState *soc, uint32_t num) > return I2C_BUS(qdev_get_child_bus(DEVICE(&soc->smbus[num]), "i2c-bus")); > } > > -static void at24c_eeprom_init(NPCM7xxState *soc, int bus, uint8_t addr, > - uint32_t rsize) > -{ > - I2CBus *i2c_bus = npcm7xx_i2c_get_bus(soc, bus); > - I2CSlave *i2c_dev = i2c_slave_new("at24c-eeprom", addr); > - DeviceState *dev = DEVICE(i2c_dev); > - > - qdev_prop_set_uint32(dev, "rom-size", rsize); > - i2c_slave_realize_and_unref(i2c_dev, i2c_bus, &error_abort); > -} > - > static void npcm7xx_init_pwm_splitter(NPCM7xxMachine *machine, > NPCM7xxState *soc, const int *fan_counts) > { > @@ -253,8 +243,8 @@ static void quanta_gsj_i2c_init(NPCM7xxState *soc) > i2c_slave_create_simple(npcm7xx_i2c_get_bus(soc, 3), "tmp105", 0x5c); > i2c_slave_create_simple(npcm7xx_i2c_get_bus(soc, 4), "tmp105", 0x5c); > > - at24c_eeprom_init(soc, 9, 0x55, 8192); > - at24c_eeprom_init(soc, 10, 0x55, 8192); > + at24c_eeprom_init(npcm7xx_i2c_get_bus(soc, 9), 0x55, 8192); > + at24c_eeprom_init(npcm7xx_i2c_get_bus(soc, 10), 0x55, 8192); > > /* > * i2c-11: > @@ -360,7 +350,7 @@ static void kudo_bmc_i2c_init(NPCM7xxState *soc) > > i2c_slave_create_simple(npcm7xx_i2c_get_bus(soc, 4), TYPE_PCA9548, 0x77); > > - at24c_eeprom_init(soc, 4, 0x50, 8192); /* mbfru */ > + at24c_eeprom_init(npcm7xx_i2c_get_bus(soc, 4), 0x50, 8192); /* mbfru */ > > i2c_mux = i2c_slave_create_simple(npcm7xx_i2c_get_bus(soc, 13), > TYPE_PCA9548, 0x77); > @@ -371,7 +361,7 @@ static void kudo_bmc_i2c_init(NPCM7xxState *soc) > i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 4), "tmp105", 0x48); > i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 5), "tmp105", 0x49); > > - at24c_eeprom_init(soc, 14, 0x55, 8192); /* bmcfru */ > + at24c_eeprom_init(npcm7xx_i2c_get_bus(soc, 14), 0x55, 8192); /* bmcfru */ > > /* TODO: Add remaining i2c devices. */ > }
On 14/1/23 18:01, Peter Delevoryas wrote: > Signed-off-by: Peter Delevoryas <peter@pjd.dev> > --- > hw/arm/npcm7xx_boards.c | 20 +++++--------------- > 1 file changed, 5 insertions(+), 15 deletions(-) Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
diff --git a/hw/arm/npcm7xx_boards.c b/hw/arm/npcm7xx_boards.c index 6bc6f5d2fe29..9b31207a06e9 100644 --- a/hw/arm/npcm7xx_boards.c +++ b/hw/arm/npcm7xx_boards.c @@ -21,6 +21,7 @@ #include "hw/i2c/i2c_mux_pca954x.h" #include "hw/i2c/smbus_eeprom.h" #include "hw/loader.h" +#include "hw/nvram/eeprom_at24c.h" #include "hw/qdev-core.h" #include "hw/qdev-properties.h" #include "qapi/error.h" @@ -140,17 +141,6 @@ static I2CBus *npcm7xx_i2c_get_bus(NPCM7xxState *soc, uint32_t num) return I2C_BUS(qdev_get_child_bus(DEVICE(&soc->smbus[num]), "i2c-bus")); } -static void at24c_eeprom_init(NPCM7xxState *soc, int bus, uint8_t addr, - uint32_t rsize) -{ - I2CBus *i2c_bus = npcm7xx_i2c_get_bus(soc, bus); - I2CSlave *i2c_dev = i2c_slave_new("at24c-eeprom", addr); - DeviceState *dev = DEVICE(i2c_dev); - - qdev_prop_set_uint32(dev, "rom-size", rsize); - i2c_slave_realize_and_unref(i2c_dev, i2c_bus, &error_abort); -} - static void npcm7xx_init_pwm_splitter(NPCM7xxMachine *machine, NPCM7xxState *soc, const int *fan_counts) { @@ -253,8 +243,8 @@ static void quanta_gsj_i2c_init(NPCM7xxState *soc) i2c_slave_create_simple(npcm7xx_i2c_get_bus(soc, 3), "tmp105", 0x5c); i2c_slave_create_simple(npcm7xx_i2c_get_bus(soc, 4), "tmp105", 0x5c); - at24c_eeprom_init(soc, 9, 0x55, 8192); - at24c_eeprom_init(soc, 10, 0x55, 8192); + at24c_eeprom_init(npcm7xx_i2c_get_bus(soc, 9), 0x55, 8192); + at24c_eeprom_init(npcm7xx_i2c_get_bus(soc, 10), 0x55, 8192); /* * i2c-11: @@ -360,7 +350,7 @@ static void kudo_bmc_i2c_init(NPCM7xxState *soc) i2c_slave_create_simple(npcm7xx_i2c_get_bus(soc, 4), TYPE_PCA9548, 0x77); - at24c_eeprom_init(soc, 4, 0x50, 8192); /* mbfru */ + at24c_eeprom_init(npcm7xx_i2c_get_bus(soc, 4), 0x50, 8192); /* mbfru */ i2c_mux = i2c_slave_create_simple(npcm7xx_i2c_get_bus(soc, 13), TYPE_PCA9548, 0x77); @@ -371,7 +361,7 @@ static void kudo_bmc_i2c_init(NPCM7xxState *soc) i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 4), "tmp105", 0x48); i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 5), "tmp105", 0x49); - at24c_eeprom_init(soc, 14, 0x55, 8192); /* bmcfru */ + at24c_eeprom_init(npcm7xx_i2c_get_bus(soc, 14), 0x55, 8192); /* bmcfru */ /* TODO: Add remaining i2c devices. */ }
Signed-off-by: Peter Delevoryas <peter@pjd.dev> --- hw/arm/npcm7xx_boards.c | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-)