[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 44/54] lasips2: add base property
From: |
Mark Cave-Ayland |
Subject: |
[PATCH v2 44/54] lasips2: add base property |
Date: |
Fri, 24 Jun 2022 14:40:59 +0100 |
This is in preparation for handling vmstate_register() within the device.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Acked-by: Helge Deller <deller@gmx.de>
---
hw/input/lasips2.c | 17 ++++++++++++++++-
include/hw/input/lasips2.h | 1 +
2 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/hw/input/lasips2.c b/hw/input/lasips2.c
index bd89c03996..81beb5b614 100644
--- a/hw/input/lasips2.c
+++ b/hw/input/lasips2.c
@@ -251,6 +251,7 @@ LASIPS2State *lasips2_initfn(hwaddr base, qemu_irq irq)
DeviceState *dev;
dev = qdev_new(TYPE_LASIPS2);
+ qdev_prop_set_uint64(dev, "base", base);
sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
s = LASIPS2(dev);
@@ -282,11 +283,25 @@ static void lasips2_init(Object *obj)
sysbus_init_mmio(SYS_BUS_DEVICE(obj), &s->mouse.reg);
}
+static Property lasips2_properties[] = {
+ DEFINE_PROP_UINT64("base", LASIPS2State, base, UINT64_MAX),
+ DEFINE_PROP_END_OF_LIST(),
+};
+
+static void lasips2_class_init(ObjectClass *klass, void *data)
+{
+ DeviceClass *dc = DEVICE_CLASS(klass);
+
+ device_class_set_props(dc, lasips2_properties);
+ set_bit(DEVICE_CATEGORY_INPUT, dc->categories);
+}
+
static const TypeInfo lasips2_info = {
.name = TYPE_LASIPS2,
.parent = TYPE_SYS_BUS_DEVICE,
.instance_init = lasips2_init,
- .instance_size = sizeof(LASIPS2State)
+ .instance_size = sizeof(LASIPS2State),
+ .class_init = lasips2_class_init,
};
static void lasips2_register_types(void)
diff --git a/include/hw/input/lasips2.h b/include/hw/input/lasips2.h
index b9723073e1..7e4437b925 100644
--- a/include/hw/input/lasips2.h
+++ b/include/hw/input/lasips2.h
@@ -25,6 +25,7 @@ typedef struct LASIPS2Port {
struct LASIPS2State {
SysBusDevice parent_obj;
+ hwaddr base;
LASIPS2Port kbd;
LASIPS2Port mouse;
qemu_irq irq;
--
2.30.2
- [PATCH v2 45/54] lasips2: implement lasips2_realize(), (continued)
- [PATCH v2 45/54] lasips2: implement lasips2_realize(), Mark Cave-Ayland, 2022/06/24
- [PATCH v2 42/54] lasips2: move mapping of LASIPS2 registers to HPPA machine, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 46/54] lasips2: use sysbus IRQ for output IRQ, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 47/54] lasips2: switch over from update_irq() function to PS2 device gpio, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 48/54] lasips2: add QEMU interface comment, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 49/54] pckbd: switch I8042_MMIO device from update_irq() function to PS2 device gpio, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 44/54] lasips2: add base property,
Mark Cave-Ayland <=
- [PATCH v2 50/54] pckbd: add QEMU interface comment for I8042_MMIO device, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 51/54] pckbd: add i8042_reset() function to I8042 device, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 52/54] pckbd: switch I8042 device from update_irq() function to PS2 device gpio, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 53/54] pckbd: add QEMU interface comment for I8042 device, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 54/54] ps2: remove update_irq() function and update_arg parameter, Mark Cave-Ayland, 2022/06/24