mirror of https://gitee.com/openkylin/qemu.git
i2c: Drop I2C_SLAVE_FROM_QDEV() macro
It is not being used in hot paths and is obsoleted by I2C_SLAVE() QOM cast macro. Clean it up using a scripted conversion, so that it doesn't get used in new code. Some of its callers were combining it with FROM_I2C_SLAVE() macro, which is equally obsolete but needs to be replaced in a type-specific way. Signed-off-by: Andreas Färber <afaerber@suse.de> Cc: Kuo-Jung Su <dantesu@faraday-tech.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
6c8fec8372
commit
8aae84a1f2
|
@ -198,7 +198,7 @@ static int ds1338_init(I2CSlave *i2c)
|
|||
|
||||
static void ds1338_reset(DeviceState *dev)
|
||||
{
|
||||
DS1338State *s = FROM_I2C_SLAVE(DS1338State, I2C_SLAVE_FROM_QDEV(dev));
|
||||
DS1338State *s = FROM_I2C_SLAVE(DS1338State, I2C_SLAVE(dev));
|
||||
|
||||
/* The clock is running and synchronized with the host */
|
||||
s->offset = 0;
|
||||
|
|
4
hw/i2c.c
4
hw/i2c.c
|
@ -92,7 +92,7 @@ int i2c_start_transfer(i2c_bus *bus, uint8_t address, int recv)
|
|||
|
||||
QTAILQ_FOREACH(kid, &bus->qbus.children, sibling) {
|
||||
DeviceState *qdev = kid->child;
|
||||
I2CSlave *candidate = I2C_SLAVE_FROM_QDEV(qdev);
|
||||
I2CSlave *candidate = I2C_SLAVE(qdev);
|
||||
if (candidate->address == address) {
|
||||
slave = candidate;
|
||||
break;
|
||||
|
@ -204,7 +204,7 @@ const VMStateDescription vmstate_i2c_slave = {
|
|||
|
||||
static int i2c_slave_qdev_init(DeviceState *dev)
|
||||
{
|
||||
I2CSlave *s = I2C_SLAVE_FROM_QDEV(dev);
|
||||
I2CSlave *s = I2C_SLAVE(dev);
|
||||
I2CSlaveClass *sc = I2C_SLAVE_GET_CLASS(s);
|
||||
|
||||
return sc->init(s);
|
||||
|
|
1
hw/i2c.h
1
hw/i2c.h
|
@ -59,7 +59,6 @@ void i2c_nack(i2c_bus *bus);
|
|||
int i2c_send(i2c_bus *bus, uint8_t data);
|
||||
int i2c_recv(i2c_bus *bus);
|
||||
|
||||
#define I2C_SLAVE_FROM_QDEV(dev) DO_UPCAST(I2CSlave, qdev, dev)
|
||||
#define FROM_I2C_SLAVE(type, dev) DO_UPCAST(type, i2c, dev)
|
||||
|
||||
DeviceState *i2c_create_slave(i2c_bus *bus, const char *name, uint8_t addr);
|
||||
|
|
|
@ -476,7 +476,7 @@ static int lm8323_init(I2CSlave *i2c)
|
|||
|
||||
void lm832x_key_event(DeviceState *dev, int key, int state)
|
||||
{
|
||||
LM823KbdState *s = FROM_I2C_SLAVE(LM823KbdState, I2C_SLAVE_FROM_QDEV(dev));
|
||||
LM823KbdState *s = FROM_I2C_SLAVE(LM823KbdState, I2C_SLAVE(dev));
|
||||
|
||||
if ((s->status & INT_ERROR) && (s->error & ERR_FIFOOVR))
|
||||
return;
|
||||
|
|
|
@ -25,7 +25,7 @@ typedef struct {
|
|||
|
||||
static void max7310_reset(DeviceState *dev)
|
||||
{
|
||||
MAX7310State *s = FROM_I2C_SLAVE(MAX7310State, I2C_SLAVE_FROM_QDEV(dev));
|
||||
MAX7310State *s = FROM_I2C_SLAVE(MAX7310State, I2C_SLAVE(dev));
|
||||
s->level &= s->direction;
|
||||
s->direction = 0xff;
|
||||
s->polarity = 0xf0;
|
||||
|
|
|
@ -1468,7 +1468,7 @@ PXA2xxI2CState *pxa2xx_i2c_init(hwaddr base,
|
|||
s = FROM_SYSBUS(PXA2xxI2CState, i2c_dev);
|
||||
/* FIXME: Should the slave device really be on a separate bus? */
|
||||
dev = i2c_create_slave(i2c_init_bus(NULL, "dummy"), "pxa2xx-i2c-slave", 0);
|
||||
s->slave = FROM_I2C_SLAVE(PXA2xxI2CSlaveState, I2C_SLAVE_FROM_QDEV(dev));
|
||||
s->slave = FROM_I2C_SLAVE(PXA2xxI2CSlaveState, I2C_SLAVE(dev));
|
||||
s->slave->host = s;
|
||||
|
||||
return s;
|
||||
|
|
|
@ -632,7 +632,7 @@ static void wm8750_fini(I2CSlave *i2c)
|
|||
void wm8750_data_req_set(DeviceState *dev,
|
||||
void (*data_req)(void *, int, int), void *opaque)
|
||||
{
|
||||
WM8750State *s = FROM_I2C_SLAVE(WM8750State, I2C_SLAVE_FROM_QDEV(dev));
|
||||
WM8750State *s = FROM_I2C_SLAVE(WM8750State, I2C_SLAVE(dev));
|
||||
s->data_req = data_req;
|
||||
s->opaque = opaque;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue