Message ID | 1433167752-5311-1-git-send-email-marcel@redhat.com |
---|---|
State | New |
Headers | show |
On 06/01/2015 05:09 PM, Marcel Apfelbaum wrote: > In DSDT FDC0 declares the IO region as IO(Decode16, 0x03F2, 0x03F2, 0x00, 0x04). > Use the same in lpc_ich9 initialization code. > Now the floppy drive is detected correctly on Windows. > > Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> > --- > hw/isa/lpc_ich9.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c > index dba7585..bc9afc6 100644 > --- a/hw/isa/lpc_ich9.c > +++ b/hw/isa/lpc_ich9.c > @@ -494,7 +494,7 @@ static void ich9_lpc_machine_ready(Notifier *n, void *opaque) > /* lpt */ > pci_conf[0x82] |= 0x04; > } > - if (memory_region_present(io_as, 0x3f0)) { > + if (memory_region_present(io_as, 0x3f2)) { > /* floppy */ > pci_conf[0x82] |= 0x08; > } > Hi, I cc-ed the developers involved in the mail thread: https://lists.gnu.org/archive/html/qemu-block/2015-05/msg01043.html and the FDC maintainer. I hope I didn't miss anybody. I also have no knowledge of FDC, but I think the above patch is correct and solves the problem of floppy disk missing in Windows for Q35 machines. Comments appreciated as always. Thanks, Marcel
On 01/06/2015 16:13, Marcel Apfelbaum wrote: > >> In DSDT FDC0 declares the IO region as IO(Decode16, 0x03F2, 0x03F2, >> 0x00, 0x04). >> Use the same in lpc_ich9 initialization code. >> Now the floppy drive is detected correctly on Windows. >> >> Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> >> --- >> hw/isa/lpc_ich9.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c >> index dba7585..bc9afc6 100644 >> --- a/hw/isa/lpc_ich9.c >> +++ b/hw/isa/lpc_ich9.c >> @@ -494,7 +494,7 @@ static void ich9_lpc_machine_ready(Notifier *n, >> void *opaque) >> /* lpt */ >> pci_conf[0x82] |= 0x04; >> } >> - if (memory_region_present(io_as, 0x3f0)) { >> + if (memory_region_present(io_as, 0x3f2)) { >> /* floppy */ >> pci_conf[0x82] |= 0x08; >> } >> > > Hi, > > I cc-ed the developers involved in the mail thread: > https://lists.gnu.org/archive/html/qemu-block/2015-05/msg01043.html > and the FDC maintainer. I hope I didn't miss anybody. > > I also have no knowledge of FDC, but I think the above patch is correct > and solves the problem of floppy disk missing in Windows for Q35 machines. The patch is okay, but the correct definition of the area is from 0x3F1 to 0x3F7. Paolo
On 06/01/2015 05:45 PM, Paolo Bonzini wrote: > > > On 01/06/2015 16:13, Marcel Apfelbaum wrote: >> >>> In DSDT FDC0 declares the IO region as IO(Decode16, 0x03F2, 0x03F2, >>> 0x00, 0x04). >>> Use the same in lpc_ich9 initialization code. >>> Now the floppy drive is detected correctly on Windows. >>> >>> Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> >>> --- >>> hw/isa/lpc_ich9.c | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c >>> index dba7585..bc9afc6 100644 >>> --- a/hw/isa/lpc_ich9.c >>> +++ b/hw/isa/lpc_ich9.c >>> @@ -494,7 +494,7 @@ static void ich9_lpc_machine_ready(Notifier *n, >>> void *opaque) >>> /* lpt */ >>> pci_conf[0x82] |= 0x04; >>> } >>> - if (memory_region_present(io_as, 0x3f0)) { >>> + if (memory_region_present(io_as, 0x3f2)) { >>> /* floppy */ >>> pci_conf[0x82] |= 0x08; >>> } >>> >> >> Hi, >> >> I cc-ed the developers involved in the mail thread: >> https://lists.gnu.org/archive/html/qemu-block/2015-05/msg01043.html >> and the FDC maintainer. I hope I didn't miss anybody. >> >> I also have no knowledge of FDC, but I think the above patch is correct >> and solves the problem of floppy disk missing in Windows for Q35 machines. > > The patch is okay, but the correct definition of the area is from 0x3F1 > to 0x3F7. Can we do other fixes on top of this? This patch solves the actual Windows problem and now we can use floppies for Q35. Can I take this okay as a "Reviewed-by"? ) Thanks, Marcel > > Paolo >
> On 06/01/2015 05:45 PM, Paolo Bonzini wrote: > > The patch is okay, but the correct definition of the area is from 0x3F1 > > to 0x3F7. > Can we do other fixes on top of this? This patch solves the actual Windows > problem and now we can use floppies for Q35. Well, IANAM. :) > Can I take this okay as a "Reviewed-by"? ) Sure. Paolo
On 06/01/2015 05:57 PM, Paolo Bonzini wrote: >> On 06/01/2015 05:45 PM, Paolo Bonzini wrote: >>> The patch is okay, but the correct definition of the area is from 0x3F1 >>> to 0x3F7. >> Can we do other fixes on top of this? This patch solves the actual Windows >> problem and now we can use floppies for Q35. > > Well, IANAM. :) > >> Can I take this okay as a "Reviewed-by"? ) > > Sure. Thanks Paolo! Michael, maybe you can take this patch under pci/Q35 branch? Thanks, Marcel > > Paolo >
diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c index dba7585..bc9afc6 100644 --- a/hw/isa/lpc_ich9.c +++ b/hw/isa/lpc_ich9.c @@ -494,7 +494,7 @@ static void ich9_lpc_machine_ready(Notifier *n, void *opaque) /* lpt */ pci_conf[0x82] |= 0x04; } - if (memory_region_present(io_as, 0x3f0)) { + if (memory_region_present(io_as, 0x3f2)) { /* floppy */ pci_conf[0x82] |= 0x08; }
In DSDT FDC0 declares the IO region as IO(Decode16, 0x03F2, 0x03F2, 0x00, 0x04). Use the same in lpc_ich9 initialization code. Now the floppy drive is detected correctly on Windows. Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> --- hw/isa/lpc_ich9.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)