Fix compilation with Cygwin, by Herve Poussineau.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3831 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
		
							parent
							
								
									0300e3faf6
								
							
						
					
					
						commit
						f60d39bc4d
					
				
							
								
								
									
										6
									
								
								sysemu.h
								
								
								
								
							
							
						
						
									
										6
									
								
								sysemu.h
								
								
								
								
							| 
						 | 
				
			
			@ -122,7 +122,7 @@ typedef enum {
 | 
			
		|||
 | 
			
		||||
typedef struct DriveInfo {
 | 
			
		||||
    BlockDriverState *bdrv;
 | 
			
		||||
    BlockInterfaceType interface;
 | 
			
		||||
    BlockInterfaceType type;
 | 
			
		||||
    int bus;
 | 
			
		||||
    int unit;
 | 
			
		||||
} DriveInfo;
 | 
			
		||||
| 
						 | 
				
			
			@ -134,8 +134,8 @@ typedef struct DriveInfo {
 | 
			
		|||
int nb_drives;
 | 
			
		||||
DriveInfo drives_table[MAX_DRIVES+1];
 | 
			
		||||
 | 
			
		||||
extern int drive_get_index(BlockInterfaceType interface, int bus, int unit);
 | 
			
		||||
extern int drive_get_max_bus(BlockInterfaceType interface);
 | 
			
		||||
extern int drive_get_index(BlockInterfaceType type, int bus, int unit);
 | 
			
		||||
extern int drive_get_max_bus(BlockInterfaceType type);
 | 
			
		||||
 | 
			
		||||
/* serial ports */
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										36
									
								
								vl.c
								
								
								
								
							
							
						
						
									
										36
									
								
								vl.c
								
								
								
								
							| 
						 | 
				
			
			@ -4838,14 +4838,14 @@ static int drive_add(const char *fmt, ...)
 | 
			
		|||
    return nb_drives_opt++;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int drive_get_index(BlockInterfaceType interface, int bus, int unit)
 | 
			
		||||
int drive_get_index(BlockInterfaceType type, int bus, int unit)
 | 
			
		||||
{
 | 
			
		||||
    int index;
 | 
			
		||||
 | 
			
		||||
    /* seek interface, bus and unit */
 | 
			
		||||
 | 
			
		||||
    for (index = 0; index < nb_drives; index++)
 | 
			
		||||
        if (drives_table[index].interface == interface &&
 | 
			
		||||
        if (drives_table[index].type == type &&
 | 
			
		||||
	    drives_table[index].bus == bus &&
 | 
			
		||||
	    drives_table[index].unit == unit)
 | 
			
		||||
        return index;
 | 
			
		||||
| 
						 | 
				
			
			@ -4853,14 +4853,14 @@ int drive_get_index(BlockInterfaceType interface, int bus, int unit)
 | 
			
		|||
    return -1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int drive_get_max_bus(BlockInterfaceType interface)
 | 
			
		||||
int drive_get_max_bus(BlockInterfaceType type)
 | 
			
		||||
{
 | 
			
		||||
    int max_bus;
 | 
			
		||||
    int index;
 | 
			
		||||
 | 
			
		||||
    max_bus = -1;
 | 
			
		||||
    for (index = 0; index < nb_drives; index++) {
 | 
			
		||||
        if(drives_table[index].interface == interface &&
 | 
			
		||||
        if(drives_table[index].type == type &&
 | 
			
		||||
           drives_table[index].bus > max_bus)
 | 
			
		||||
            max_bus = drives_table[index].bus;
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			@ -4873,7 +4873,7 @@ static int drive_init(const char *str, int snapshot, QEMUMachine *machine)
 | 
			
		|||
    char file[1024];
 | 
			
		||||
    char devname[128];
 | 
			
		||||
    const char *mediastr = "";
 | 
			
		||||
    BlockInterfaceType interface;
 | 
			
		||||
    BlockInterfaceType type;
 | 
			
		||||
    enum { MEDIA_DISK, MEDIA_CDROM } media;
 | 
			
		||||
    int bus_id, unit_id;
 | 
			
		||||
    int cyls, heads, secs, translation;
 | 
			
		||||
| 
						 | 
				
			
			@ -4902,11 +4902,11 @@ static int drive_init(const char *str, int snapshot, QEMUMachine *machine)
 | 
			
		|||
        !strcmp(machine->name, "SS-600MP") ||
 | 
			
		||||
        !strcmp(machine->name, "versatilepb") ||
 | 
			
		||||
        !strcmp(machine->name, "versatileab")) {
 | 
			
		||||
        interface = IF_SCSI;
 | 
			
		||||
        type = IF_SCSI;
 | 
			
		||||
        max_devs = MAX_SCSI_DEVS;
 | 
			
		||||
        strcpy(devname, "scsi");
 | 
			
		||||
    } else {
 | 
			
		||||
        interface = IF_IDE;
 | 
			
		||||
        type = IF_IDE;
 | 
			
		||||
        max_devs = MAX_IDE_DEVS;
 | 
			
		||||
        strcpy(devname, "ide");
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			@ -4933,22 +4933,22 @@ static int drive_init(const char *str, int snapshot, QEMUMachine *machine)
 | 
			
		|||
    if (get_param_value(buf, sizeof(buf), "if", str)) {
 | 
			
		||||
        strncpy(devname, buf, sizeof(devname));
 | 
			
		||||
        if (!strcmp(buf, "ide")) {
 | 
			
		||||
	    interface = IF_IDE;
 | 
			
		||||
	    type = IF_IDE;
 | 
			
		||||
            max_devs = MAX_IDE_DEVS;
 | 
			
		||||
        } else if (!strcmp(buf, "scsi")) {
 | 
			
		||||
	    interface = IF_SCSI;
 | 
			
		||||
	    type = IF_SCSI;
 | 
			
		||||
            max_devs = MAX_SCSI_DEVS;
 | 
			
		||||
        } else if (!strcmp(buf, "floppy")) {
 | 
			
		||||
	    interface = IF_FLOPPY;
 | 
			
		||||
	    type = IF_FLOPPY;
 | 
			
		||||
            max_devs = 0;
 | 
			
		||||
        } else if (!strcmp(buf, "pflash")) {
 | 
			
		||||
	    interface = IF_PFLASH;
 | 
			
		||||
	    type = IF_PFLASH;
 | 
			
		||||
            max_devs = 0;
 | 
			
		||||
	} else if (!strcmp(buf, "mtd")) {
 | 
			
		||||
	    interface = IF_MTD;
 | 
			
		||||
	    type = IF_MTD;
 | 
			
		||||
            max_devs = 0;
 | 
			
		||||
	} else if (!strcmp(buf, "sd")) {
 | 
			
		||||
	    interface = IF_SD;
 | 
			
		||||
	    type = IF_SD;
 | 
			
		||||
            max_devs = 0;
 | 
			
		||||
	} else {
 | 
			
		||||
            fprintf(stderr, "qemu: '%s' unsupported bus type '%s'\n", str, buf);
 | 
			
		||||
| 
						 | 
				
			
			@ -5063,7 +5063,7 @@ static int drive_init(const char *str, int snapshot, QEMUMachine *machine)
 | 
			
		|||
 | 
			
		||||
    if (unit_id == -1) {
 | 
			
		||||
       unit_id = 0;
 | 
			
		||||
       while (drive_get_index(interface, bus_id, unit_id) != -1) {
 | 
			
		||||
       while (drive_get_index(type, bus_id, unit_id) != -1) {
 | 
			
		||||
           unit_id++;
 | 
			
		||||
           if (max_devs && unit_id >= max_devs) {
 | 
			
		||||
               unit_id -= max_devs;
 | 
			
		||||
| 
						 | 
				
			
			@ -5084,23 +5084,23 @@ static int drive_init(const char *str, int snapshot, QEMUMachine *machine)
 | 
			
		|||
     * ignore multiple definitions
 | 
			
		||||
     */
 | 
			
		||||
 | 
			
		||||
    if (drive_get_index(interface, bus_id, unit_id) != -1)
 | 
			
		||||
    if (drive_get_index(type, bus_id, unit_id) != -1)
 | 
			
		||||
        return 0;
 | 
			
		||||
 | 
			
		||||
    /* init */
 | 
			
		||||
 | 
			
		||||
    if (interface == IF_IDE || interface == IF_SCSI)
 | 
			
		||||
    if (type == IF_IDE || type == IF_SCSI)
 | 
			
		||||
        mediastr = (media == MEDIA_CDROM) ? "-cd" : "-hd";
 | 
			
		||||
    snprintf(buf, sizeof(buf), max_devs ? "%1$s%4$i%2$s%3$i" : "%s%s%i",
 | 
			
		||||
             devname, mediastr, unit_id, bus_id);
 | 
			
		||||
    bdrv = bdrv_new(buf);
 | 
			
		||||
    drives_table[nb_drives].bdrv = bdrv;
 | 
			
		||||
    drives_table[nb_drives].interface = interface;
 | 
			
		||||
    drives_table[nb_drives].type = type;
 | 
			
		||||
    drives_table[nb_drives].bus = bus_id;
 | 
			
		||||
    drives_table[nb_drives].unit = unit_id;
 | 
			
		||||
    nb_drives++;
 | 
			
		||||
 | 
			
		||||
    switch(interface) {
 | 
			
		||||
    switch(type) {
 | 
			
		||||
    case IF_IDE:
 | 
			
		||||
    case IF_SCSI:
 | 
			
		||||
        switch(media) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue