PPC64: Partial fix to Linux crash: revert to old devfn
authorBlue Swirl <blauwirbel@gmail.com>
Sun, 15 Nov 2009 14:30:56 +0000 (14:30 +0000)
committerBlue Swirl <blauwirbel@gmail.com>
Sun, 15 Nov 2009 14:30:56 +0000 (14:30 +0000)
Before 2e29bd04786003561303dcad940b38afe790fb9b, Uni-North host and AGP
bridge were using the same devfn, 11 << 3. The net effect was that only
AGP bridge was visible. This was changed in the commit to 13 << 3 for AGP.

Some of the later crashes happened due to NULL pointer dereferences generated
by 07b7d05377a5e2b242ef0cce3d461d3284700fc0 and insufficient return value
checks.

Disable host device and revert AGP to 11 << 3.

Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
hw/unin_pci.c

index f089cbd..e1cd2a3 100644 (file)
@@ -156,7 +156,9 @@ PCIBus *pci_pmac_init(qemu_irq *pic)
                                          pci_unin_set_irq, pci_unin_map_irq,
                                          pic, 11 << 3, 4);
 
+#if 0
     pci_create_simple(d->host_state.bus, 11 << 3, "Uni-north main");
+#endif
 
     sysbus_mmio_map(s, 0, 0xf2800000);
     sysbus_mmio_map(s, 1, 0xf2c00000);
@@ -168,7 +170,7 @@ PCIBus *pci_pmac_init(qemu_irq *pic)
 #endif
 
     /* Uninorth AGP bus */
-    pci_create_simple(d->host_state.bus, 13 << 3, "Uni-north AGP");
+    pci_create_simple(d->host_state.bus, 11 << 3, "Uni-north AGP");
 
     /* Uninorth internal bus */
 #if 0