Revision e4bcb14c hw/realview.c

b/hw/realview.c
32 32
    int done_smc = 0;
33 33
    qemu_irq cpu_irq[4];
34 34
    int ncpu;
35
    int index;
35 36

  
36 37
    if (!cpu_model)
37 38
        cpu_model = "arm926";
......
89 90

  
90 91
    pl110_init(ds, 0x10020000, pic[23], 1);
91 92

  
92
    pl181_init(0x10005000, sd_bdrv, pic[17], pic[18]);
93
    index = drive_get_index(IF_SD, 0, 0);
94
    if (index == -1) {
95
        fprintf(stderr, "qemu: missing SecureDigital card\n");
96
        exit(1);
97
    }
98
    pl181_init(0x10005000, drives_table[index].bdrv, pic[17], pic[18]);
93 99

  
94 100
    pl031_init(0x10017000, pic[10]);
95 101

  
......
97 103
    if (usb_enabled) {
98 104
        usb_ohci_init_pci(pci_bus, 3, -1);
99 105
    }
106
    if (drive_get_max_bus(IF_SCSI) > 0) {
107
        fprintf(stderr, "qemu: too many SCSI bus\n");
108
        exit(1);
109
    }
100 110
    scsi_hba = lsi_scsi_init(pci_bus, -1);
101
    for (n = 0; n < MAX_DISKS; n++) {
102
        if (bs_table[n]) {
103
            lsi_scsi_attach(scsi_hba, bs_table[n], n);
104
        }
111
    for (n = 0; n < LSI_MAX_DEVS; n++) {
112
        index = drive_get_index(IF_SCSI, 0, n);
113
        if (index == -1)
114
            continue;
115
        lsi_scsi_attach(scsi_hba, drives_table[index].bdrv, n);
105 116
    }
106 117
    for(n = 0; n < nb_nics; n++) {
107 118
        nd = &nd_table[n];

Also available in: Unified diff