2 * QEMU LASI PS/2 emulation
4 * Copyright (c) 2019 Sven Schnelle
10 * + sysbus MMIO region 0: MemoryRegion defining the LASI PS2 keyboard
12 * + sysbus MMIO region 1: MemoryRegion defining the LASI PS2 mouse
14 * + sysbus IRQ 0: LASI PS2 output irq
15 * + Named GPIO input "ps2-kbd-input-irq": set to 1 if the downstream PS2
16 * keyboard device has asserted its irq
17 * + Named GPIO input "ps2-mouse-input-irq": set to 1 if the downstream PS2
18 * mouse device has asserted its irq
21 #ifndef HW_INPUT_LASIPS2_H
22 #define HW_INPUT_LASIPS2_H
24 #include "exec/hwaddr.h"
25 #include "hw/sysbus.h"
26 #include "hw/input/ps2.h"
28 #define TYPE_LASIPS2_PORT "lasips2-port"
29 OBJECT_DECLARE_SIMPLE_TYPE(LASIPS2Port
, LASIPS2_PORT
)
31 typedef struct LASIPS2State LASIPS2State
;
34 DeviceState parent_obj
;
46 #define TYPE_LASIPS2_KBD_PORT "lasips2-kbd-port"
47 OBJECT_DECLARE_SIMPLE_TYPE(LASIPS2KbdPort
, LASIPS2_KBD_PORT
)
49 struct LASIPS2KbdPort
{
50 LASIPS2Port parent_obj
;
53 #define TYPE_LASIPS2_MOUSE_PORT "lasips2-mouse-port"
54 OBJECT_DECLARE_SIMPLE_TYPE(LASIPS2MousePort
, LASIPS2_MOUSE_PORT
)
56 struct LASIPS2MousePort
{
57 LASIPS2Port parent_obj
;
61 SysBusDevice parent_obj
;
63 LASIPS2KbdPort kbd_port
;
68 #define TYPE_LASIPS2 "lasips2"
69 OBJECT_DECLARE_SIMPLE_TYPE(LASIPS2State
, LASIPS2
)
71 #endif /* HW_INPUT_LASIPS2_H */