[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL v2 12/49] z2: QOM'ify AER915
From: |
Andreas Färber |
Subject: |
[Qemu-devel] [PULL v2 12/49] z2: QOM'ify AER915 |
Date: |
Mon, 17 Feb 2014 23:24:22 +0100 |
Replace usages of FROM_I2C_SLAVE() with QOM cast macro.
Rename the parent field. Reuse the type constant in z2_init().
Reviewed-by: Peter Crosthwaite <address@hidden>
[AF: Use TYPE_AER915 in z2_init() too]
Signed-off-by: Andreas Färber <address@hidden>
---
hw/arm/z2.c | 20 +++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
diff --git a/hw/arm/z2.c b/hw/arm/z2.c
index 97ec381..67c1be8 100644
--- a/hw/arm/z2.c
+++ b/hw/arm/z2.c
@@ -193,15 +193,20 @@ static const TypeInfo zipit_lcd_info = {
.class_init = zipit_lcd_class_init,
};
-typedef struct {
- I2CSlave i2c;
+#define TYPE_AER915 "aer915"
+#define AER915(obj) OBJECT_CHECK(AER915State, (obj), TYPE_AER915)
+
+typedef struct AER915State {
+ I2CSlave parent_obj;
+
int len;
uint8_t buf[3];
} AER915State;
static int aer915_send(I2CSlave *i2c, uint8_t data)
{
- AER915State *s = FROM_I2C_SLAVE(AER915State, i2c);
+ AER915State *s = AER915(i2c);
+
s->buf[s->len] = data;
if (s->len++ > 2) {
DPRINTF("%s: message too long (%i bytes)\n",
@@ -219,7 +224,8 @@ static int aer915_send(I2CSlave *i2c, uint8_t data)
static void aer915_event(I2CSlave *i2c, enum i2c_event event)
{
- AER915State *s = FROM_I2C_SLAVE(AER915State, i2c);
+ AER915State *s = AER915(i2c);
+
switch (event) {
case I2C_START_SEND:
s->len = 0;
@@ -238,8 +244,8 @@ static void aer915_event(I2CSlave *i2c, enum i2c_event
event)
static int aer915_recv(I2CSlave *slave)
{
+ AER915State *s = AER915(slave);
int retval = 0x00;
- AER915State *s = FROM_I2C_SLAVE(AER915State, slave);
switch (s->buf[0]) {
/* Return hardcoded battery voltage,
@@ -290,7 +296,7 @@ static void aer915_class_init(ObjectClass *klass, void
*data)
}
static const TypeInfo aer915_info = {
- .name = "aer915",
+ .name = TYPE_AER915,
.parent = TYPE_I2C_SLAVE,
.instance_size = sizeof(AER915State),
.class_init = aer915_class_init,
@@ -351,7 +357,7 @@ static void z2_init(QEMUMachineInitArgs *args)
type_register_static(&aer915_info);
z2_lcd = ssi_create_slave(mpu->ssp[1], "zipit-lcd");
bus = pxa2xx_i2c_bus(mpu->i2c[0]);
- i2c_create_slave(bus, "aer915", 0x55);
+ i2c_create_slave(bus, TYPE_AER915, 0x55);
wm = i2c_create_slave(bus, "wm8750", 0x1b);
mpu->i2s->opaque = wm;
mpu->i2s->codec_out = wm8750_dac_dat;
--
1.8.4.5
- [Qemu-devel] [PULL v2 02/49] ppcemb-softmmu: Drop Mac and e500 emulation, (continued)
- [Qemu-devel] [PULL v2 02/49] ppcemb-softmmu: Drop Mac and e500 emulation, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 04/49] tests: Fix gcov paths for relocated device sources, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 01/49] qtest: don't report signals if qtest driver enabled, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 03/49] target-ppc: Make ppc40x CPUs available in ppcemb, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 05/49] qom-test: Run for all available machines, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 07/49] tests: Run qom-test for every architecture, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 08/49] nand: Don't use qdev_create() in nand_init(), Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 06/49] qom-test: Test shutdown in addition to startup, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 10/49] pxa2xx: QOM'ify I2C slave, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 11/49] tosa: QOM'ify DAC, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 12/49] z2: QOM'ify AER915,
Andreas Färber <=
- [Qemu-devel] [PULL v2 13/49] wm8750: QOM'ify, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 09/49] i2c: Rename i2c_bus to I2CBus, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 14/49] ssd0303: QOM'ify, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 15/49] max7310: QOM'ify, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 16/49] lm832x: QOM'ify, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 17/49] ds1338: QOM'ify, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 18/49] twl92230: QOM'ify, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 19/49] i2c: Drop FROM_I2C_SLAVE() macro, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 21/49] tests: Add vmxnet3 qtest, Andreas Färber, 2014/02/17
- [Qemu-devel] [PULL v2 20/49] tests: Add e1000 qtest, Andreas Färber, 2014/02/17