[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 03/11] hw/i2c: convert I2CSlaveClass::init -> re
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [Qemu-devel] [PATCH 03/11] hw/i2c: convert I2CSlaveClass::init -> realize |
Date: |
Fri, 19 Jan 2018 15:53:49 -0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 |
On 01/19/2018 03:18 PM, Eduardo Habkost wrote:
> On Tue, Jan 16, 2018 at 10:15:47AM -0300, Philippe Mathieu-Daudé wrote:
> [...]
>> -static int i2c_slave_qdev_init(DeviceState *dev)
>> +static void i2c_slave_realize(DeviceState *dev, Error **errp)
>> {
>> I2CSlave *s = I2C_SLAVE(dev);
>> I2CSlaveClass *sc = I2C_SLAVE_GET_CLASS(s);
>>
>> - if (sc->init) {
>> - return sc->init(s);
>> + if (sc->realize) {
>> + return sc->realize(s, errp);
>> }
>
> Do you think i2c_slave_realize() will perform additional actions
> in the future? If not, why not let subclasses set
> DeviceClass::realize directly?
Good idea, also with SMBusDeviceClass::realize.
>> -
>> - return 0;
>> }
>>
>> DeviceState *i2c_create_slave(I2CBus *bus, const char *name, uint8_t addr)
>> @@ -301,7 +299,7 @@ DeviceState *i2c_create_slave(I2CBus *bus, const char
>> *name, uint8_t addr)
>> static void i2c_slave_class_init(ObjectClass *klass, void *data)
>> {
>> DeviceClass *k = DEVICE_CLASS(klass);
>> - k->init = i2c_slave_qdev_init;
>> + k->realize = i2c_slave_realize;
>> set_bit(DEVICE_CATEGORY_MISC, k->categories);
>> k->bus_type = TYPE_I2C_BUS;
>> k->props = i2c_props;
> [...]
>
- [Qemu-devel] [PATCH 00/11] qdev: remove DeviceClass::init/exit(), Philippe Mathieu-Daudé, 2018/01/16
- [Qemu-devel] [PATCH 01/11] smbus: add a NULL check for SMBusDeviceClass::init callbacks, Philippe Mathieu-Daudé, 2018/01/16
- [Qemu-devel] [PATCH 03/11] hw/i2c: convert I2CSlaveClass::init -> realize, Philippe Mathieu-Daudé, 2018/01/16
- [Qemu-devel] [PATCH 02/11] smbus_eeprom: replace SMBusDeviceClass::init by DeviceClass::reset, Philippe Mathieu-Daudé, 2018/01/16
- [Qemu-devel] [PATCH 05/11] virtio-ccw: convert VirtIOCCWDeviceClass::init -> realize, Philippe Mathieu-Daudé, 2018/01/16
- Re: [Qemu-devel] [PATCH 05/11] virtio-ccw: convert VirtIOCCWDeviceClass::init -> realize, Cornelia Huck, 2018/01/16
- [Qemu-devel] [PATCH 04/11] usb-ccid: convert CCIDCardClass::init -> realize, Philippe Mathieu-Daudé, 2018/01/16