2019-12-20 22:15:10 +01:00
|
|
|
/*
|
|
|
|
* QEMU LASI PS/2 emulation
|
|
|
|
*
|
|
|
|
* Copyright (c) 2019 Sven Schnelle
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
#ifndef HW_INPUT_LASIPS2_H
|
|
|
|
#define HW_INPUT_LASIPS2_H
|
|
|
|
|
|
|
|
#include "exec/hwaddr.h"
|
2022-06-24 15:40:54 +02:00
|
|
|
#include "hw/sysbus.h"
|
|
|
|
|
|
|
|
struct LASIPS2State;
|
|
|
|
typedef struct LASIPS2Port {
|
|
|
|
struct LASIPS2State *parent;
|
|
|
|
MemoryRegion reg;
|
|
|
|
void *dev;
|
|
|
|
uint8_t id;
|
|
|
|
uint8_t control;
|
|
|
|
uint8_t buf;
|
|
|
|
bool loopback_rbne;
|
|
|
|
bool irq;
|
|
|
|
} LASIPS2Port;
|
|
|
|
|
|
|
|
struct LASIPS2State {
|
|
|
|
SysBusDevice parent_obj;
|
|
|
|
|
2022-06-24 15:40:59 +02:00
|
|
|
hwaddr base;
|
2022-06-24 15:40:54 +02:00
|
|
|
LASIPS2Port kbd;
|
|
|
|
LASIPS2Port mouse;
|
|
|
|
qemu_irq irq;
|
|
|
|
};
|
2019-12-20 22:15:10 +01:00
|
|
|
|
|
|
|
#define TYPE_LASIPS2 "lasips2"
|
2022-06-24 15:40:54 +02:00
|
|
|
OBJECT_DECLARE_SIMPLE_TYPE(LASIPS2State, LASIPS2)
|
2019-12-20 22:15:10 +01:00
|
|
|
|
2022-06-24 15:40:57 +02:00
|
|
|
LASIPS2State *lasips2_initfn(hwaddr base, qemu_irq irq);
|
2019-12-20 22:15:10 +01:00
|
|
|
|
|
|
|
#endif /* HW_INPUT_LASIPS2_H */
|