Revision c0897e0c hw/pc_piix.c

b/hw/pc_piix.c
79 79
    IsaIrqState *isa_irq_state;
80 80
    DriveInfo *hd[MAX_IDE_BUS * MAX_IDE_DEVS];
81 81
    FDCtrl *floppy_controller;
82
    BusState *idebus[MAX_IDE_BUS];
82 83
    ISADevice *rtc_state;
83 84

  
84 85
    pc_cpus_init(cpu_model);
......
132 133
    }
133 134

  
134 135
    if (pci_enabled) {
135
        pci_piix3_ide_init(pci_bus, hd, piix3_devfn + 1);
136
        PCIDevice *dev;
137
        dev = pci_piix3_ide_init(pci_bus, hd, piix3_devfn + 1);
138
        idebus[0] = qdev_get_child_bus(&dev->qdev, "ide.0");
139
        idebus[1] = qdev_get_child_bus(&dev->qdev, "ide.1");
136 140
    } else {
137 141
        for(i = 0; i < MAX_IDE_BUS; i++) {
138
            isa_ide_init(ide_iobase[i], ide_iobase2[i], ide_irq[i],
139
	                 hd[MAX_IDE_DEVS * i], hd[MAX_IDE_DEVS * i + 1]);
142
            ISADevice *dev;
143
            dev = isa_ide_init(ide_iobase[i], ide_iobase2[i], ide_irq[i],
144
                               hd[MAX_IDE_DEVS * i], hd[MAX_IDE_DEVS * i + 1]);
145
            idebus[i] = qdev_get_child_bus(&dev->qdev, "ide.0");
140 146
        }
141 147
    }
142 148

  
143 149
    pc_audio_init(pci_enabled ? pci_bus : NULL, isa_irq);
144 150

  
145
    pc_cmos_init(below_4g_mem_size, above_4g_mem_size, boot_device, hd,
146
                 floppy_controller, rtc_state);
151
    pc_cmos_init(below_4g_mem_size, above_4g_mem_size, boot_device,
152
                 idebus[0], idebus[1], floppy_controller, rtc_state);
147 153

  
148 154
    if (pci_enabled && usb_enabled) {
149 155
        usb_uhci_piix3_init(pci_bus, piix3_devfn + 2);

Also available in: Unified diff