qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] i386: drop FDC in pc-q35-2.4+ if neither


From: Gerd Hoffmann
Subject: Re: [Qemu-devel] [PATCH] i386: drop FDC in pc-q35-2.4+ if neither
Date: Thu, 28 May 2015 16:56:00 +0200

  Hi,

> > $ virsh qemu-monitor-command fedora-org-q35.base --hmp "info mtree" | grep 
> > fdc
> >     00000000000003f1-00000000000003f5 (prio 0, RW): fdc
> >     00000000000003f7-00000000000003f7 (prio 0, RW): fdc
> > 
> > ... looks fishy too.  Shouldn't that be 0x3f2-0x3f6 for the first range?
> 
> I think 0x3f0-0x3f5 based on this:
> 
> hw/block/fdc.c:    FD_REG_SRA = 0x00,
> hw/block/fdc.c:    FD_REG_SRB = 0x01,
> hw/block/fdc.c:    FD_REG_DOR = 0x02,
> hw/block/fdc.c:    FD_REG_TDR = 0x03,
> hw/block/fdc.c:    FD_REG_MSR = 0x04,
> hw/block/fdc.c:    FD_REG_DSR = 0x04,
> hw/block/fdc.c:    FD_REG_FIFO = 0x05,
> hw/block/fdc.c:    FD_REG_DIR = 0x07,
> hw/block/fdc.c:    FD_REG_CCR = 0x07,
> 
> So:
> 
> diff --git a/hw/block/fdc.c b/hw/block/fdc.c
> index d8a8edd..c761291 100644
> --- a/hw/block/fdc.c
> +++ b/hw/block/fdc.c
> @@ -2186,7 +2186,7 @@ static void fdctrl_realize_common(FDCtrl *fdctrl, Error 
> **errp)
>  }
>  
>  static const MemoryRegionPortio fdc_portio_list[] = {
> -    { 1, 5, 1, .read = fdctrl_read, .write = fdctrl_write },
> +    { 0, 6, 1, .read = fdctrl_read, .write = fdctrl_write },
>      { 7, 1, 1, .read = fdctrl_read, .write = fdctrl_write },
>      PORTIO_END_OF_LIST(),
>  };

The io ranges for FDC0 in hw/i386/acpi-dsdt-isa.dsl are not consistent
with that though.  If 0x3f0 is correct (which seems to be the case from
a brief look) this needs to be fixed up.

cheers,
  Gerd





reply via email to

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