Patchwork [for-1.4?] i2c: Drop I2C_SLAVE_FROM_QDEV() macro

login
register
mail settings
Submitter Andreas Färber
Date Jan. 25, 2013, 8:12 a.m.
Message ID <1359101574-7025-1-git-send-email-afaerber@suse.de>
Download mbox | patch
Permalink /patch/215572/
State New
Headers show

Comments

Andreas Färber - Jan. 25, 2013, 8:12 a.m.
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>
---
 hw/ds1338.c  |    2 +-
 hw/i2c.c     |    4 ++--
 hw/i2c.h     |    1 -
 hw/lm832x.c  |    2 +-
 hw/max7310.c |    2 +-
 hw/pxa2xx.c  |    2 +-
 hw/wm8750.c  |    2 +-
 7 Dateien geändert, 7 Zeilen hinzugefügt(+), 8 Zeilen entfernt(-)
Andreas Färber - Feb. 1, 2013, 9:09 a.m.
Am 25.01.2013 09:12, schrieb Andreas Färber:
> 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>
> ---
>  hw/ds1338.c  |    2 +-
>  hw/i2c.c     |    4 ++--
>  hw/i2c.h     |    1 -
>  hw/lm832x.c  |    2 +-
>  hw/max7310.c |    2 +-
>  hw/pxa2xx.c  |    2 +-
>  hw/wm8750.c  |    2 +-
>  7 Dateien geändert, 7 Zeilen hinzugefügt(+), 8 Zeilen entfernt(-)

Ping. Not 1.4 material? A similar SysBus cleanup was applied earlier.

Andreas

> diff --git a/hw/ds1338.c b/hw/ds1338.c
> index 3792206..6f70538 100644
> --- a/hw/ds1338.c
> +++ b/hw/ds1338.c
> @@ -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;
> diff --git a/hw/i2c.c b/hw/i2c.c
> index 119e96b..ec314a4 100644
> --- a/hw/i2c.c
> +++ b/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);
> diff --git a/hw/i2c.h b/hw/i2c.h
> index 883b5c5..0e80d5a 100644
> --- a/hw/i2c.h
> +++ b/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);
> diff --git a/hw/lm832x.c b/hw/lm832x.c
> index af49dd6..94b8ae0 100644
> --- a/hw/lm832x.c
> +++ b/hw/lm832x.c
> @@ -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;
> diff --git a/hw/max7310.c b/hw/max7310.c
> index de2221b..c2df0b4 100644
> --- a/hw/max7310.c
> +++ b/hw/max7310.c
> @@ -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;
> diff --git a/hw/pxa2xx.c b/hw/pxa2xx.c
> index 2367c6a..373d061 100644
> --- a/hw/pxa2xx.c
> +++ b/hw/pxa2xx.c
> @@ -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;
> diff --git a/hw/wm8750.c b/hw/wm8750.c
> index bb85064..d3ea5ba 100644
> --- a/hw/wm8750.c
> +++ b/hw/wm8750.c
> @@ -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;
>  }
Anthony Liguori - Feb. 4, 2013, 10:54 p.m.
Applied.  Thanks.

Regards,

Anthony Liguori

Patch

diff --git a/hw/ds1338.c b/hw/ds1338.c
index 3792206..6f70538 100644
--- a/hw/ds1338.c
+++ b/hw/ds1338.c
@@ -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;
diff --git a/hw/i2c.c b/hw/i2c.c
index 119e96b..ec314a4 100644
--- a/hw/i2c.c
+++ b/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);
diff --git a/hw/i2c.h b/hw/i2c.h
index 883b5c5..0e80d5a 100644
--- a/hw/i2c.h
+++ b/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);
diff --git a/hw/lm832x.c b/hw/lm832x.c
index af49dd6..94b8ae0 100644
--- a/hw/lm832x.c
+++ b/hw/lm832x.c
@@ -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;
diff --git a/hw/max7310.c b/hw/max7310.c
index de2221b..c2df0b4 100644
--- a/hw/max7310.c
+++ b/hw/max7310.c
@@ -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;
diff --git a/hw/pxa2xx.c b/hw/pxa2xx.c
index 2367c6a..373d061 100644
--- a/hw/pxa2xx.c
+++ b/hw/pxa2xx.c
@@ -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;
diff --git a/hw/wm8750.c b/hw/wm8750.c
index bb85064..d3ea5ba 100644
--- a/hw/wm8750.c
+++ b/hw/wm8750.c
@@ -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;
 }