xref: /qemu/include/hw/input/i8042.h (revision 0fe4bb3241110fc9fbd1c5c457d58191fcdca5d3)
147973a2dSPhilippe Mathieu-Daudé /*
247973a2dSPhilippe Mathieu-Daudé  * QEMU PS/2 Controller
347973a2dSPhilippe Mathieu-Daudé  *
447973a2dSPhilippe Mathieu-Daudé  * Copyright (c) 2003 Fabrice Bellard
547973a2dSPhilippe Mathieu-Daudé  *
647973a2dSPhilippe Mathieu-Daudé  * SPDX-License-Identifier: MIT
747973a2dSPhilippe Mathieu-Daudé  */
847973a2dSPhilippe Mathieu-Daudé #ifndef HW_INPUT_I8042_H
947973a2dSPhilippe Mathieu-Daudé #define HW_INPUT_I8042_H
1047973a2dSPhilippe Mathieu-Daudé 
1147973a2dSPhilippe Mathieu-Daudé #include "hw/isa/isa.h"
1247973a2dSPhilippe Mathieu-Daudé 
1347973a2dSPhilippe Mathieu-Daudé #define TYPE_I8042 "i8042"
1447973a2dSPhilippe Mathieu-Daudé 
1547973a2dSPhilippe Mathieu-Daudé #define I8042_A20_LINE "a20"
1647973a2dSPhilippe Mathieu-Daudé 
17*0fe4bb32SMarc-André Lureau typedef struct ISAKBDState ISAKBDState;
18*0fe4bb32SMarc-André Lureau 
1947973a2dSPhilippe Mathieu-Daudé void i8042_mm_init(qemu_irq kbd_irq, qemu_irq mouse_irq,
2047973a2dSPhilippe Mathieu-Daudé                    MemoryRegion *region, ram_addr_t size,
2147973a2dSPhilippe Mathieu-Daudé                    hwaddr mask);
22*0fe4bb32SMarc-André Lureau void i8042_isa_mouse_fake_event(ISAKBDState *isa);
2347973a2dSPhilippe Mathieu-Daudé void i8042_setup_a20_line(ISADevice *dev, qemu_irq a20_out);
2447973a2dSPhilippe Mathieu-Daudé 
2547973a2dSPhilippe Mathieu-Daudé #endif /* HW_INPUT_I8042_H */
26