vmport: Disentangle read handler type from portio
In case the latter may vanish one day, make sure the vmport read handler type will remain unaffected. This is also conceptually cleaner. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
0659097de2
commit
d67f679d99
@ -43,13 +43,13 @@ typedef struct VMPortState
|
|||||||
ISADevice parent_obj;
|
ISADevice parent_obj;
|
||||||
|
|
||||||
MemoryRegion io;
|
MemoryRegion io;
|
||||||
IOPortReadFunc *func[VMPORT_ENTRIES];
|
VMPortReadFunc *func[VMPORT_ENTRIES];
|
||||||
void *opaque[VMPORT_ENTRIES];
|
void *opaque[VMPORT_ENTRIES];
|
||||||
} VMPortState;
|
} VMPortState;
|
||||||
|
|
||||||
static VMPortState *port_state;
|
static VMPortState *port_state;
|
||||||
|
|
||||||
void vmport_register(unsigned char command, IOPortReadFunc *func, void *opaque)
|
void vmport_register(unsigned char command, VMPortReadFunc *func, void *opaque)
|
||||||
{
|
{
|
||||||
if (command >= VMPORT_ENTRIES)
|
if (command >= VMPORT_ENTRIES)
|
||||||
return;
|
return;
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
|
|
||||||
#include "qemu-common.h"
|
#include "qemu-common.h"
|
||||||
#include "exec/memory.h"
|
#include "exec/memory.h"
|
||||||
#include "exec/ioport.h"
|
|
||||||
#include "hw/isa/isa.h"
|
#include "hw/isa/isa.h"
|
||||||
#include "hw/block/fdc.h"
|
#include "hw/block/fdc.h"
|
||||||
#include "net/net.h"
|
#include "net/net.h"
|
||||||
@ -56,11 +55,14 @@ typedef struct GSIState {
|
|||||||
void gsi_handler(void *opaque, int n, int level);
|
void gsi_handler(void *opaque, int n, int level);
|
||||||
|
|
||||||
/* vmport.c */
|
/* vmport.c */
|
||||||
|
typedef uint32_t (VMPortReadFunc)(void *opaque, uint32_t address);
|
||||||
|
|
||||||
static inline void vmport_init(ISABus *bus)
|
static inline void vmport_init(ISABus *bus)
|
||||||
{
|
{
|
||||||
isa_create_simple(bus, "vmport");
|
isa_create_simple(bus, "vmport");
|
||||||
}
|
}
|
||||||
void vmport_register(unsigned char command, IOPortReadFunc *func, void *opaque);
|
|
||||||
|
void vmport_register(unsigned char command, VMPortReadFunc *func, void *opaque);
|
||||||
void vmmouse_get_data(uint32_t *data);
|
void vmmouse_get_data(uint32_t *data);
|
||||||
void vmmouse_set_data(const uint32_t *data);
|
void vmmouse_set_data(const uint32_t *data);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user