diff options
author | Sasha Levin <levinsasha928@gmail.com> | 2011-05-26 13:30:08 +0300 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2015-06-01 16:39:44 +0100 |
commit | 947392bcaaee10d34504b40a7481d5d51f635de7 (patch) | |
tree | 5f64544ae67b8ffc75b37003dc33cb41b988d0d2 /hw | |
parent | 80ac1d059f2bdf60ea34c303bb918ce3e8dc877f (diff) | |
download | kvmtool-947392bcaaee10d34504b40a7481d5d51f635de7.tar.gz |
kvm tools: Use dynamic IO port allocation in vesa driver
Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/vesa.c | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -49,7 +49,6 @@ static struct pci_device_header vesa_pci_device = { .class = 0x030000, .subsys_vendor_id = PCI_SUBSYSTEM_VENDOR_ID_REDHAT_QUMRANET, .subsys_id = PCI_SUBSYSTEM_ID_VESA, - .bar[0] = IOPORT_VESA | PCI_BASE_ADDRESS_SPACE_IO, .bar[1] = VESA_MEM_ADDR | PCI_BASE_ADDRESS_SPACE_MEMORY, }; @@ -66,17 +65,17 @@ void vesa__init(struct kvm *kvm) { u8 dev, line, pin; pthread_t thread; + u16 vesa_base_addr; if (irq__register_device(PCI_DEVICE_ID_VESA, &dev, &pin, &line) < 0) return; vesa_pci_device.irq_pin = pin; vesa_pci_device.irq_line = line; - + vesa_base_addr = ioport__register(IOPORT_EMPTY, &vesa_io_ops, IOPORT_SIZE, NULL); + vesa_pci_device.bar[0] = vesa_base_addr | PCI_BASE_ADDRESS_SPACE_IO; pci__register(&vesa_pci_device, dev); - ioport__register(IOPORT_VESA, &vesa_io_ops, IOPORT_VESA_SIZE, NULL); - kvm__register_mmio(VESA_MEM_ADDR, VESA_MEM_SIZE, &vesa_mmio_callback); pthread_create(&thread, NULL, vesa__dovnc, kvm); |