mirror of https://github.com/xemu-project/xemu.git
i2c:smbus_eeprom: Add normal type name and cast to smbus_eeprom.c
Create a type name and a cast macro and use those through the code. Signed-off-by: Corey Minyard <cminyard@mvista.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
This commit is contained in:
parent
547db24a17
commit
b398a92440
|
@ -32,6 +32,11 @@
|
||||||
|
|
||||||
//#define DEBUG
|
//#define DEBUG
|
||||||
|
|
||||||
|
#define TYPE_SMBUS_EEPROM "smbus-eeprom"
|
||||||
|
|
||||||
|
#define SMBUS_EEPROM(obj) \
|
||||||
|
OBJECT_CHECK(SMBusEEPROMDevice, (obj), TYPE_SMBUS_EEPROM)
|
||||||
|
|
||||||
typedef struct SMBusEEPROMDevice {
|
typedef struct SMBusEEPROMDevice {
|
||||||
SMBusDevice smbusdev;
|
SMBusDevice smbusdev;
|
||||||
void *data;
|
void *data;
|
||||||
|
@ -40,7 +45,7 @@ typedef struct SMBusEEPROMDevice {
|
||||||
|
|
||||||
static uint8_t eeprom_receive_byte(SMBusDevice *dev)
|
static uint8_t eeprom_receive_byte(SMBusDevice *dev)
|
||||||
{
|
{
|
||||||
SMBusEEPROMDevice *eeprom = (SMBusEEPROMDevice *) dev;
|
SMBusEEPROMDevice *eeprom = SMBUS_EEPROM(dev);
|
||||||
uint8_t *data = eeprom->data;
|
uint8_t *data = eeprom->data;
|
||||||
uint8_t val = data[eeprom->offset++];
|
uint8_t val = data[eeprom->offset++];
|
||||||
|
|
||||||
|
@ -53,7 +58,7 @@ static uint8_t eeprom_receive_byte(SMBusDevice *dev)
|
||||||
|
|
||||||
static int eeprom_write_data(SMBusDevice *dev, uint8_t *buf, uint8_t len)
|
static int eeprom_write_data(SMBusDevice *dev, uint8_t *buf, uint8_t len)
|
||||||
{
|
{
|
||||||
SMBusEEPROMDevice *eeprom = (SMBusEEPROMDevice *) dev;
|
SMBusEEPROMDevice *eeprom = SMBUS_EEPROM(dev);
|
||||||
uint8_t *data = eeprom->data;
|
uint8_t *data = eeprom->data;
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
|
@ -75,7 +80,7 @@ static int eeprom_write_data(SMBusDevice *dev, uint8_t *buf, uint8_t len)
|
||||||
|
|
||||||
static void smbus_eeprom_realize(DeviceState *dev, Error **errp)
|
static void smbus_eeprom_realize(DeviceState *dev, Error **errp)
|
||||||
{
|
{
|
||||||
SMBusEEPROMDevice *eeprom = (SMBusEEPROMDevice *)dev;
|
SMBusEEPROMDevice *eeprom = SMBUS_EEPROM(dev);
|
||||||
|
|
||||||
eeprom->offset = 0;
|
eeprom->offset = 0;
|
||||||
}
|
}
|
||||||
|
@ -99,7 +104,7 @@ static void smbus_eeprom_class_initfn(ObjectClass *klass, void *data)
|
||||||
}
|
}
|
||||||
|
|
||||||
static const TypeInfo smbus_eeprom_info = {
|
static const TypeInfo smbus_eeprom_info = {
|
||||||
.name = "smbus-eeprom",
|
.name = TYPE_SMBUS_EEPROM,
|
||||||
.parent = TYPE_SMBUS_DEVICE,
|
.parent = TYPE_SMBUS_DEVICE,
|
||||||
.instance_size = sizeof(SMBusEEPROMDevice),
|
.instance_size = sizeof(SMBusEEPROMDevice),
|
||||||
.class_init = smbus_eeprom_class_initfn,
|
.class_init = smbus_eeprom_class_initfn,
|
||||||
|
@ -116,7 +121,7 @@ void smbus_eeprom_init_one(I2CBus *smbus, uint8_t address, uint8_t *eeprom_buf)
|
||||||
{
|
{
|
||||||
DeviceState *dev;
|
DeviceState *dev;
|
||||||
|
|
||||||
dev = qdev_create((BusState *) smbus, "smbus-eeprom");
|
dev = qdev_create((BusState *) smbus, TYPE_SMBUS_EEPROM);
|
||||||
qdev_prop_set_uint8(dev, "address", address);
|
qdev_prop_set_uint8(dev, "address", address);
|
||||||
qdev_prop_set_ptr(dev, "data", eeprom_buf);
|
qdev_prop_set_ptr(dev, "data", eeprom_buf);
|
||||||
qdev_init_nofail(dev);
|
qdev_init_nofail(dev);
|
||||||
|
|
Loading…
Reference in New Issue