Revision 07a7484e hw/ppc/mac_newworld.c

b/hw/ppc/mac_newworld.c
148 148
    long kernel_size, initrd_size;
149 149
    PCIBus *pci_bus;
150 150
    PCIDevice *macio;
151
    MACIOIDEState *macio_ide;
151 152
    MacIONVRAMState *nvr;
152 153
    int bios_size;
153
    MemoryRegion *pic_mem, *dbdma_mem, *cuda_mem, *escc_mem;
154
    MemoryRegion *pic_mem, *cuda_mem, *escc_mem;
154 155
    MemoryRegion *escc_bar = g_new(MemoryRegion, 1);
155
    MemoryRegion *ide_mem[3];
156 156
    int ppc_boot_device;
157 157
    DriveInfo *hd[MAX_IDE_BUS * MAX_IDE_DEVS];
158 158
    void *fw_cfg;
159
    void *dbdma;
160 159
    int machine_arch;
161 160
    SysBusDevice *s;
162 161
    DeviceState *dev;
......
363 362
        pci_nic_init_nofail(&nd_table[i], "ne2k_pci", NULL);
364 363

  
365 364
    ide_drive_get(hd, MAX_IDE_BUS);
366
    dbdma = DBDMA_init(&dbdma_mem);
367

  
368
    /* We only emulate 2 out of 3 IDE controllers for now */
369
    ide_mem[0] = NULL;
370
    ide_mem[1] = pmac_ide_init(hd, pic[0x0d], dbdma, 0x16, pic[0x02]);
371
    ide_mem[2] = pmac_ide_init(&hd[MAX_IDE_DEVS], pic[0x0e], dbdma, 0x1a, pic[0x02]);
372 365

  
373 366
    cuda_init(&cuda_mem, pic[0x19]);
374 367

  
......
376 369
    adb_mouse_init(&adb_bus);
377 370

  
378 371
    macio = pci_create(pci_bus, -1, TYPE_NEWWORLD_MACIO);
379
    macio_init(macio, pic_mem,
380
               dbdma_mem, cuda_mem, 3, ide_mem, escc_bar);
372
    dev = DEVICE(macio);
373
    qdev_connect_gpio_out(dev, 0, pic[0x0d]); /* IDE */
374
    qdev_connect_gpio_out(dev, 1, pic[0x02]); /* IDE DMA */
375
    qdev_connect_gpio_out(dev, 2, pic[0x0e]); /* IDE */
376
    qdev_connect_gpio_out(dev, 3, pic[0x02]); /* IDE DMA */
377
    macio_init(macio, pic_mem, cuda_mem, escc_bar);
378

  
379
    /* We only emulate 2 out of 3 IDE controllers for now */
380
    macio_ide = MACIO_IDE(object_resolve_path_component(OBJECT(macio),
381
                                                        "ide[0]"));
382
    macio_ide_init_drives(macio_ide, hd);
383

  
384
    macio_ide = MACIO_IDE(object_resolve_path_component(OBJECT(macio),
385
                                                        "ide[1]"));
386
    macio_ide_init_drives(macio_ide, &hd[MAX_IDE_DEVS]);
381 387

  
382 388
    if (usb_enabled(machine_arch == ARCH_MAC99_U3)) {
383 389
        pci_create_simple(pci_bus, -1, "pci-ohci");

Also available in: Unified diff