uninorth: remove obsolete pci_pmac_u3_init() function
Instead wire up the PCI/AGP host bridges in mac_newworld.c. Now this is complete it is possible to move the initialisation of the PCI hole alias into pci_u3_agp_init(). Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
		
							parent
							
								
									7b19318bee
								
							
						
					
					
						commit
						8ce3f743c7
					
				@ -185,8 +185,13 @@ static void pci_u3_agp_init(Object *obj)
 | 
				
			|||||||
    memory_region_init(&s->pci_mmio, OBJECT(s), "unin-pci-mmio",
 | 
					    memory_region_init(&s->pci_mmio, OBJECT(s), "unin-pci-mmio",
 | 
				
			||||||
                       0x100000000ULL);
 | 
					                       0x100000000ULL);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    memory_region_init_alias(&s->pci_hole, OBJECT(s),
 | 
				
			||||||
 | 
					                             "unin-pci-hole", &s->pci_mmio,
 | 
				
			||||||
 | 
					                             0x80000000ULL, 0x70000000ULL);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    sysbus_init_mmio(sbd, &h->conf_mem);
 | 
					    sysbus_init_mmio(sbd, &h->conf_mem);
 | 
				
			||||||
    sysbus_init_mmio(sbd, &h->data_mem);
 | 
					    sysbus_init_mmio(sbd, &h->data_mem);
 | 
				
			||||||
 | 
					    sysbus_init_mmio(sbd, &s->pci_hole);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void pci_unin_agp_realize(DeviceState *dev, Error **errp)
 | 
					static void pci_unin_agp_realize(DeviceState *dev, Error **errp)
 | 
				
			||||||
@ -247,31 +252,6 @@ static void pci_unin_internal_init(Object *obj)
 | 
				
			|||||||
    sysbus_init_mmio(sbd, &h->data_mem);
 | 
					    sysbus_init_mmio(sbd, &h->data_mem);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
UNINState *pci_pmac_u3_init(qemu_irq *pic,
 | 
					 | 
				
			||||||
                            MemoryRegion *address_space_mem)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    DeviceState *dev;
 | 
					 | 
				
			||||||
    SysBusDevice *s;
 | 
					 | 
				
			||||||
    UNINState *d;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /* Uninorth AGP bus */
 | 
					 | 
				
			||||||
    dev = qdev_create(NULL, TYPE_U3_AGP_HOST_BRIDGE);
 | 
					 | 
				
			||||||
    qdev_prop_set_ptr(dev, "pic-irqs", pic);
 | 
					 | 
				
			||||||
    qdev_init_nofail(dev);
 | 
					 | 
				
			||||||
    s = SYS_BUS_DEVICE(dev);
 | 
					 | 
				
			||||||
    d = U3_AGP_HOST_BRIDGE(dev);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    memory_region_init_alias(&d->pci_hole, OBJECT(d), "pci-hole", &d->pci_mmio,
 | 
					 | 
				
			||||||
                             0x80000000ULL, 0x70000000ULL);
 | 
					 | 
				
			||||||
    memory_region_add_subregion(address_space_mem, 0x80000000ULL,
 | 
					 | 
				
			||||||
                                &d->pci_hole);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    sysbus_mmio_map(s, 0, 0xf0800000);
 | 
					 | 
				
			||||||
    sysbus_mmio_map(s, 1, 0xf0c00000);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return d;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static void unin_main_pci_host_realize(PCIDevice *d, Error **errp)
 | 
					static void unin_main_pci_host_realize(PCIDevice *d, Error **errp)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    /* cache_line_size */
 | 
					    /* cache_line_size */
 | 
				
			||||||
 | 
				
			|||||||
@ -345,7 +345,18 @@ static void ppc_core99_init(MachineState *machine)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    if (PPC_INPUT(env) == PPC_FLAGS_INPUT_970) {
 | 
					    if (PPC_INPUT(env) == PPC_FLAGS_INPUT_970) {
 | 
				
			||||||
        /* 970 gets a U3 bus */
 | 
					        /* 970 gets a U3 bus */
 | 
				
			||||||
        uninorth_pci = pci_pmac_u3_init(pic, get_system_memory());
 | 
					        /* Uninorth AGP bus */
 | 
				
			||||||
 | 
					        dev = qdev_create(NULL, TYPE_U3_AGP_HOST_BRIDGE);
 | 
				
			||||||
 | 
					        qdev_prop_set_ptr(dev, "pic-irqs", pic);
 | 
				
			||||||
 | 
					        qdev_init_nofail(dev);
 | 
				
			||||||
 | 
					        uninorth_pci = U3_AGP_HOST_BRIDGE(dev);
 | 
				
			||||||
 | 
					        s = SYS_BUS_DEVICE(dev);
 | 
				
			||||||
 | 
					        /* PCI hole */
 | 
				
			||||||
 | 
					        memory_region_add_subregion(get_system_memory(), 0x80000000ULL,
 | 
				
			||||||
 | 
					                                    sysbus_mmio_get_region(s, 2));
 | 
				
			||||||
 | 
					        sysbus_mmio_map(s, 0, 0xf0800000);
 | 
				
			||||||
 | 
					        sysbus_mmio_map(s, 1, 0xf0c00000);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        machine_arch = ARCH_MAC99_U3;
 | 
					        machine_arch = ARCH_MAC99_U3;
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
        /* Use values found on a real PowerMac */
 | 
					        /* Use values found on a real PowerMac */
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user