[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 07/54] ps2: introduce PS2DeviceClass
From: |
Mark Cave-Ayland |
Subject: |
[PATCH v2 07/54] ps2: introduce PS2DeviceClass |
Date: |
Fri, 24 Jun 2022 14:40:22 +0100 |
This is in preparation for allowing the new PS2_KBD_DEVICE and PS2_MOUSE_DEVICE
QOM types to reference the parent PS2_DEVICE device reset() function.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: Helge Deller <deller@gmx.de>
---
hw/input/ps2.c | 1 +
include/hw/input/ps2.h | 6 +++++-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/hw/input/ps2.c b/hw/input/ps2.c
index 3a770f3b78..fd5236690a 100644
--- a/hw/input/ps2.c
+++ b/hw/input/ps2.c
@@ -1283,6 +1283,7 @@ static const TypeInfo ps2_info = {
.parent = TYPE_SYS_BUS_DEVICE,
.instance_size = sizeof(PS2State),
.class_init = ps2_class_init,
+ .class_size = sizeof(PS2DeviceClass),
.abstract = true
};
diff --git a/include/hw/input/ps2.h b/include/hw/input/ps2.h
index 1a3321d77e..aef892b5e6 100644
--- a/include/hw/input/ps2.h
+++ b/include/hw/input/ps2.h
@@ -33,6 +33,10 @@
#define PS2_MOUSE_BUTTON_SIDE 0x08
#define PS2_MOUSE_BUTTON_EXTRA 0x10
+struct PS2DeviceClass {
+ SysBusDeviceClass parent_class;
+};
+
/*
* PS/2 buffer size. Keep 256 bytes for compatibility with
* older QEMU versions.
@@ -54,7 +58,7 @@ struct PS2State {
};
#define TYPE_PS2_DEVICE "ps2-device"
-OBJECT_DECLARE_SIMPLE_TYPE(PS2State, PS2_DEVICE)
+OBJECT_DECLARE_TYPE(PS2State, PS2DeviceClass, PS2_DEVICE)
struct PS2KbdState {
PS2State parent_obj;
--
2.30.2
- [PATCH v2 00/54] PS2 device QOMification - part 1, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 01/54] ps2: checkpatch fixes, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 02/54] ps2: QOMify PS2State, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 03/54] ps2: QOMify PS2KbdState, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 04/54] ps2: QOMify PS2MouseState, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 05/54] ps2: move QOM type definitions from ps2.c to ps2.h, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 06/54] ps2: improve function prototypes in ps2.c and ps2.h, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 07/54] ps2: introduce PS2DeviceClass,
Mark Cave-Ayland <=
- [PATCH v2 08/54] ps2: implement ps2_reset() for the PS2_DEVICE QOM type based upon ps2_common_reset(), Mark Cave-Ayland, 2022/06/24
- [PATCH v2 09/54] ps2: remove duplicate setting of scancode_set in ps2_kbd_init(), Mark Cave-Ayland, 2022/06/24
- [PATCH v2 11/54] ps2: implement ps2_mouse_realize() and use it to register ps2_mouse_handler, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 10/54] ps2: implement ps2_kbd_realize() and use it to register ps2_keyboard_handler, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 12/54] ps2: don't use vmstate_register() in ps2_kbd_init(), Mark Cave-Ayland, 2022/06/24
- [PATCH v2 13/54] ps2: don't use vmstate_register() in ps2_mouse_init(), Mark Cave-Ayland, 2022/06/24
- [PATCH v2 14/54] pl050: checkpatch fixes, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 15/54] pl050: split pl050_update_irq() into separate pl050_set_irq() and pl050_update_irq() functions, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 16/54] lasips2: spacing fixes, Mark Cave-Ayland, 2022/06/24
- [PATCH v2 17/54] lasips2: rename ps2dev_update_irq() to lasips2_port_set_irq(), Mark Cave-Ayland, 2022/06/24