]> xenbits.xensource.com Git - seabios.git/commitdiff
virtio: create vp_cap struct for legacy bar
authorGerd Hoffmann <kraxel@redhat.com>
Tue, 30 Jun 2015 06:50:09 +0000 (08:50 +0200)
committerGerd Hoffmann <kraxel@redhat.com>
Wed, 1 Jul 2015 14:35:49 +0000 (16:35 +0200)
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
src/hw/virtio-pci.c
src/hw/virtio-pci.h

index 58f3d39b0ec67476ab2214bb048a501b1800ec75..3c8fb7bcaea4bfbd6a7d1e51667a1f21bf9ff540 100644 (file)
@@ -143,8 +143,11 @@ void vp_init_simple(struct vp_device *vp, struct pci_device *pci)
                 pci_bdf_to_bus(pci->bdf), pci_bdf_to_dev(pci->bdf));
     }
 
-    vp->ioaddr = pci_config_readl(pci->bdf, PCI_BASE_ADDRESS_0) &
+    vp->legacy.bar = 0;
+    vp->legacy.addr = pci_config_readl(pci->bdf, PCI_BASE_ADDRESS_0) &
         PCI_BASE_ADDRESS_IO_MASK;
+    vp->legacy.is_io = 1;
+    vp->ioaddr = vp->legacy.addr; /* temporary */
 
     vp_reset(vp);
     pci_config_maskw(pci->bdf, PCI_COMMAND, 0, PCI_COMMAND_MASTER);
index 467c02fba81de23806a5dced22bc6ec136173bda..147e529e3dc0e3c44ce84e31f1512019860292c0 100644 (file)
@@ -124,7 +124,7 @@ struct vp_cap {
 
 struct vp_device {
     unsigned int ioaddr;
-    struct vp_cap common, notify, isr, device;
+    struct vp_cap common, notify, isr, device, legacy;
 };
 
 static inline u32 vp_get_features(struct vp_device *vp)