From 603987488c61ca02ee99890d07cdaecdb118a659 Mon Sep 17 00:00:00 2001 From: Blue Swirl Date: Sun, 15 Nov 2009 14:30:56 +0000 Subject: PPC64: Partial fix to Linux crash: revert to old devfn 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 --- hw/unin_pci.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'hw') diff --git a/hw/unin_pci.c b/hw/unin_pci.c index f089cbd..e1cd2a3 100644 --- a/hw/unin_pci.c +++ b/hw/unin_pci.c @@ -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 -- cgit v1.1