diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2011-07-29 16:35:18 +0100 |
---|---|---|
committer | Andrzej Zaborowski <andrew.zaborowski@intel.com> | 2011-07-30 06:00:42 +0200 |
commit | c4f05c8cf715fa613e1985421080e62a7b169284 (patch) | |
tree | 089b2ebc9eaee0a427d207277054285f9d8df8e1 /hw/nseries.c | |
parent | 77831c204fda6303408aee1853c36768d853b413 (diff) | |
download | qemu-c4f05c8cf715fa613e1985421080e62a7b169284.zip qemu-c4f05c8cf715fa613e1985421080e62a7b169284.tar.gz qemu-c4f05c8cf715fa613e1985421080e62a7b169284.tar.bz2 |
lm832x: Take DeviceState pointer in lm832x_key_event()
Since lm832x has been qdev'ified, its users will generally
have a DeviceState pointer rather than an i2c_slave pointer,
so adjust lm832x_key_event's prototype to suit.
This allows the n810 (its only user) to actually pass a correct
pointer to it rather than NULL. The effect is that we no longer
segfault when a key is pressed.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Andrzej Zaborowski <andrew.zaborowski@intel.com>
Diffstat (limited to 'hw/nseries.c')
-rw-r--r-- | hw/nseries.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/hw/nseries.c b/hw/nseries.c index d9a5428..d12ed46 100644 --- a/hw/nseries.c +++ b/hw/nseries.c @@ -45,7 +45,7 @@ struct n800_s { i2c_bus *i2c; int keymap[0x80]; - i2c_slave *kbd; + DeviceState *kbd; TUSBState *usb; void *retu; @@ -362,7 +362,6 @@ static int n810_keys[0x80] = { static void n810_kbd_setup(struct n800_s *s) { qemu_irq kbd_irq = qdev_get_gpio_in(s->cpu->gpio, N810_KEYBOARD_GPIO); - DeviceState *dev; int i; for (i = 0; i < 0x80; i ++) @@ -375,8 +374,8 @@ static void n810_kbd_setup(struct n800_s *s) /* Attach the LM8322 keyboard to the I2C bus, * should happen in n8x0_i2c_setup and s->kbd be initialised here. */ - dev = i2c_create_slave(s->i2c, "lm8323", N810_LM8323_ADDR); - qdev_connect_gpio_out(dev, 0, kbd_irq); + s->kbd = i2c_create_slave(s->i2c, "lm8323", N810_LM8323_ADDR); + qdev_connect_gpio_out(s->kbd, 0, kbd_irq); } /* LCD MIPI DBI-C controller (URAL) */ |