typedef struct SMBusEEPROMDevice {
SMBusDevice smbusdev;
- uint8_t *data;
+ void *data;
uint8_t offset;
} SMBusEEPROMDevice;
static uint8_t eeprom_receive_byte(SMBusDevice *dev)
{
SMBusEEPROMDevice *eeprom = (SMBusEEPROMDevice *) dev;
- uint8_t val = eeprom->data[eeprom->offset++];
+ uint8_t *data = eeprom->data;
+ uint8_t val = data[eeprom->offset++];
#ifdef DEBUG
printf("eeprom_receive_byte: addr=0x%02x val=0x%02x\n",
dev->i2c.address, val);
.i2c.qdev.name = "smbus-eeprom",
.i2c.qdev.size = sizeof(SMBusEEPROMDevice),
.i2c.qdev.props = (Property[]) {
- {
- .name = "data",
- .info = &qdev_prop_ptr,
- .offset = offsetof(SMBusEEPROMDevice, data),
- },
- {/* end of list */}
+ DEFINE_PROP_PTR("data", SMBusEEPROMDevice, data),
+ DEFINE_PROP_END_OF_LIST(),
},
.init = smbus_eeprom_init,
.quick_cmd = eeprom_quick_cmd,