vmport: convert PIO to new memory api read/write
Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
5ec3a23e6c
commit
360d613e52
21
hw/vmport.c
21
hw/vmport.c
|
@ -54,7 +54,8 @@ void vmport_register(unsigned char command, IOPortReadFunc *func, void *opaque)
|
||||||
port_state->opaque[command] = opaque;
|
port_state->opaque[command] = opaque;
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint32_t vmport_ioport_read(void *opaque, uint32_t addr)
|
static uint64_t vmport_ioport_read(void *opaque, hwaddr addr,
|
||||||
|
unsigned size)
|
||||||
{
|
{
|
||||||
VMPortState *s = opaque;
|
VMPortState *s = opaque;
|
||||||
CPUX86State *env = cpu_single_env;
|
CPUX86State *env = cpu_single_env;
|
||||||
|
@ -81,11 +82,12 @@ static uint32_t vmport_ioport_read(void *opaque, uint32_t addr)
|
||||||
return s->func[command](s->opaque[command], addr);
|
return s->func[command](s->opaque[command], addr);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void vmport_ioport_write(void *opaque, uint32_t addr, uint32_t val)
|
static void vmport_ioport_write(void *opaque, hwaddr addr,
|
||||||
|
uint64_t val, unsigned size)
|
||||||
{
|
{
|
||||||
CPUX86State *env = cpu_single_env;
|
CPUX86State *env = cpu_single_env;
|
||||||
|
|
||||||
env->regs[R_EAX] = vmport_ioport_read(opaque, addr);
|
env->regs[R_EAX] = vmport_ioport_read(opaque, addr, 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint32_t vmport_cmd_get_version(void *opaque, uint32_t addr)
|
static uint32_t vmport_cmd_get_version(void *opaque, uint32_t addr)
|
||||||
|
@ -121,13 +123,14 @@ void vmmouse_set_data(const uint32_t *data)
|
||||||
env->regs[R_ESI] = data[4]; env->regs[R_EDI] = data[5];
|
env->regs[R_ESI] = data[4]; env->regs[R_EDI] = data[5];
|
||||||
}
|
}
|
||||||
|
|
||||||
static const MemoryRegionPortio vmport_portio[] = {
|
|
||||||
{0, 1, 4, .read = vmport_ioport_read, .write = vmport_ioport_write },
|
|
||||||
PORTIO_END_OF_LIST(),
|
|
||||||
};
|
|
||||||
|
|
||||||
static const MemoryRegionOps vmport_ops = {
|
static const MemoryRegionOps vmport_ops = {
|
||||||
.old_portio = vmport_portio
|
.read = vmport_ioport_read,
|
||||||
|
.write = vmport_ioport_write,
|
||||||
|
.impl = {
|
||||||
|
.min_access_size = 4,
|
||||||
|
.max_access_size = 4,
|
||||||
|
},
|
||||||
|
.endianness = DEVICE_LITTLE_ENDIAN,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int vmport_initfn(ISADevice *dev)
|
static int vmport_initfn(ISADevice *dev)
|
||||||
|
|
Loading…
Reference in a new issue