ppc_oldworld: swap the MACIO and CMD646 IDE controllers
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 7 Mar 2009 21:35:21 +0000 (21:35 +0000)
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 7 Mar 2009 21:35:21 +0000 (21:35 +0000)
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6763 c046a42c-6fe2-441c-8c8c-71466251a162

hw/ppc_oldworld.c

index 3589812..46d0362 100644 (file)
@@ -308,12 +308,13 @@ static void ppc_heathrow_init (ram_addr_t ram_size, int vga_ram_size,
     for(i = 0; i < nb_nics; i++)
         pci_nic_init(pci_bus, &nd_table[i], -1, "ne2k_pci");
 
-    /* First IDE channel is a CMD646 on the PCI bus */
 
     if (drive_get_max_bus(IF_IDE) >= MAX_IDE_BUS) {
         fprintf(stderr, "qemu: too many IDE bus\n");
         exit(1);
     }
+
+    /* First IDE channel is a MAC IDE on the MacIO bus */
     index = drive_get_index(IF_IDE, 0, 0);
     if (index == -1)
         hd[0] = NULL;
@@ -324,10 +325,11 @@ static void ppc_heathrow_init (ram_addr_t ram_size, int vga_ram_size,
         hd[1] = NULL;
     else
         hd[1] =  drives_table[index].bdrv;
-    hd[3] = hd[2] = NULL;
-    pci_cmd646_ide_init(pci_bus, hd, 0);
+    dbdma = DBDMA_init(&dbdma_mem_index);
+    ide_mem_index[0] = -1;
+    ide_mem_index[1] = pmac_ide_init(hd, pic[0x0D], dbdma, 0x16, pic[0x02]);
 
-    /* Second IDE channel is a MAC IDE on the MacIO bus */
+    /* Second IDE channel is a CMD646 on the PCI bus */
     index = drive_get_index(IF_IDE, 1, 0);
     if (index == -1)
         hd[0] = NULL;
@@ -338,11 +340,8 @@ static void ppc_heathrow_init (ram_addr_t ram_size, int vga_ram_size,
         hd[1] = NULL;
     else
         hd[1] =  drives_table[index].bdrv;
-
-    dbdma = DBDMA_init(&dbdma_mem_index);
-
-    ide_mem_index[0] = -1;
-    ide_mem_index[1] = pmac_ide_init(hd, pic[0x0D], dbdma, 0x16, pic[0x02]);
+    hd[3] = hd[2] = NULL;
+    pci_cmd646_ide_init(pci_bus, hd, 0);
 
     /* cuda also initialize ADB */
     cuda_init(&cuda_mem_index, pic[0x12]);