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;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
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;
 | 
			
		||||
    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);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
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;
 | 
			
		||||
 | 
			
		||||
    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)
 | 
			
		||||
| 
						 | 
				
			
			@ -121,13 +123,14 @@ void vmmouse_set_data(const uint32_t *data)
 | 
			
		|||
    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 = {
 | 
			
		||||
    .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)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue