We use "new" names for functions that allocate and initialize
device objects: pci_new(), isa_new(), usb_new().
Let's call this one i2c_slave_new(). Since we have to update
all the callers, also let it return a I2CSlave object.
Suggested-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <
20200705224154.16917-3-f4bug@amsat.org>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
/* Bus 3: TODO bmp280@77 */
/* Bus 3: TODO max31785@52 */
/* Bus 3: TODO dps310@76 */
- dev = i2c_try_create_slave(TYPE_PCA9552, 0x60);
+ dev = DEVICE(i2c_slave_new(TYPE_PCA9552, 0x60));
qdev_prop_set_string(dev, "description", "pca1");
i2c_realize_and_unref(dev, aspeed_i2c_get_bus(&soc->i2c, 3),
&error_fatal);
smbus_eeprom_init_one(aspeed_i2c_get_bus(&soc->i2c, 11), 0x51,
eeprom_buf);
- dev = i2c_try_create_slave(TYPE_PCA9552, 0x60);
+ dev = DEVICE(i2c_slave_new(TYPE_PCA9552, 0x60));
qdev_prop_set_string(dev, "description", "pca0");
i2c_realize_and_unref(dev, aspeed_i2c_get_bus(&soc->i2c, 11),
&error_fatal);
}
};
-DeviceState *i2c_try_create_slave(const char *name, uint8_t addr)
+I2CSlave *i2c_slave_new(const char *name, uint8_t addr)
{
DeviceState *dev;
dev = qdev_new(name);
qdev_prop_set_uint8(dev, "address", addr);
- return dev;
+ return I2C_SLAVE(dev);
}
bool i2c_realize_and_unref(DeviceState *dev, I2CBus *bus, Error **errp)
DeviceState *i2c_create_slave(I2CBus *bus, const char *name, uint8_t addr)
{
- DeviceState *dev;
+ I2CSlave *dev = i2c_slave_new(name, addr);
- dev = i2c_try_create_slave(name, addr);
- i2c_realize_and_unref(dev, bus, &error_fatal);
+ i2c_realize_and_unref(DEVICE(dev), bus, &error_fatal);
- return dev;
+ return DEVICE(dev);
}
static void i2c_slave_class_init(ObjectClass *klass, void *data)
int i2c_send(I2CBus *bus, uint8_t data);
uint8_t i2c_recv(I2CBus *bus);
+I2CSlave *i2c_slave_new(const char *name, uint8_t addr);
DeviceState *i2c_create_slave(I2CBus *bus, const char *name, uint8_t addr);
-DeviceState *i2c_try_create_slave(const char *name, uint8_t addr);
bool i2c_realize_and_unref(DeviceState *dev, I2CBus *bus, Error **errp);
/* lm832x.c */