qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 2/2][UPDATE] Add arg -drive to define new drive


From: Laurent Vivier
Subject: Re: [Qemu-devel] [PATCH 2/2][UPDATE] Add arg -drive to define new drive with more features
Date: Tue, 13 Nov 2007 17:02:23 +0100

Attached is an updated patch (corrected as you want and with more check
on -drive arguments)

Hope you'll like it.

Regards,
Laurent

Le lundi 12 novembre 2007 à 18:44 +0200, Blue Swirl a écrit :
> On 11/12/07, Laurent Vivier <address@hidden> wrote:
> > It also defines the default interface type to "scsi" for targets
> > "realview", "SS-5", "SS-10", "versatilepb", "versatileab"
> > to keep old behavior, where "-hda" is a SCSI disk.
> 
> For maximal compatibility, I'd like the following mappings for SS-5,
> SS-10, and SS-600MP:
> -hda = SCSI ID 0
> -hdb = SCSI ID 1
> -hdc = -cdrom = SCSI ID 2
> -hdd = SCSI ID 3
> There is no bus 1, only 0. Maybe a warning should be issued for bus=1.
> 
> I didn't find where this was implemented, so is the above in line with
> the patch?
> 
> > Index: qemu/hw/sun4m.c
> 
> > -    if (hwdef->fd_base != (target_phys_addr_t)-1)
> > -        sun4m_fdctrl_init(slavio_irq[hwdef->fd_irq], hwdef->fd_base, 
> > fd_table);
> > +    if (hwdef->fd_base != (target_phys_addr_t)-1) {
> > +        for(i = 0; i < MAX_FD; i++) {
> > +            index = drive_get_index(IF_FLOPPY, 0, i);
> > +            if (index != -1)
> > +                fd[i] = drives_table[index].bdrv;
> > +            else
> > +                fd[i] = NULL;
> > +        }
> > +
> > +        sun4m_fdctrl_init(slavio_irq[hwdef->fd_irq], hwdef->fd_base, fd);
> > +    }
> 
> This is broken, there are zero or one floppy drives, never more.
> 
> > Index: qemu/hw/sun4u.c
> 
> > -    floppy_controller = fdctrl_init(NULL/*6*/, 2, 0, 0x3f0, fd_table);
> > +    for(i = 0; i < MAX_FD; i++) {
> > +        index = drive_get_index(IF_FLOPPY, 0, i);
> > +       if (index != -1)
> > +           fd[i] = drives_table[index].bdrv;
> > +       else
> > +           fd[i] = NULL;
> > +    }
> > +    floppy_controller = fdctrl_init(NULL/*6*/, 2, 0, 0x3f0, fd);
> 
> I think same applies here (0 to 1 drives), but as the hardware is
> PC-like, technically it may be possible that someone could replace the
> cables and insert additional floppy drives.
-- 
------------- address@hidden  --------------
       "Any sufficiently advanced technology is
  indistinguishable from magic." - Arthur C. Clarke

Attachment: drive-arg.patch
Description: Text Data

Attachment: signature.asc
Description: Ceci est une partie de message numériquement signée


reply via email to

[Prev in Thread] Current Thread [Next in Thread]