[OpenBIOS] [PATCH] pci: enable io/memory unconditionally

Michael S. Tsirkin mst at redhat.com
Thu Dec 10 13:17:10 CET 2009


On Thu, Dec 10, 2009 at 01:09:34PM +0100, Laurent Vivier wrote:
> >On Thu, Dec 10, 2009 at 01:20:23AM +0100, Laurent Vivier wrote:
> >> Le mercredi 09 décembre 2009 à 17:53 +0200, Michael S. Tsirkin a écrit :
> >> > VGA adapters need to claim memory and i/o
> >> > transactions even if they do not have any
> >> > i/o or memory bars. E.g. PCI spec, page 297,
> >> > gives an example of such a device:
> >> > 
> >> >     Programming interface 0000 0000b
> >> >     VGA-compatible controller. Memory
> >> >     addresses 0A 0000h through 0B
> >> >     FFFFh. I/O addresses 3B0h to 3BBh
> >> >     and 3C0h to 3DFh and all aliases of
> >> >     these addresses.
> >> > 
> >> > While bios could check for these devices and special-case them, it is
> >> > easier to fix this by enabling i/o and memory space unconditionally:
> >> > devices that do not support it will just ignore this setting.
> >> > 
> >> > Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
> >> 
> >> Applied, but could you give me an use case where previous behavior
> >> breaks something ?
> >> 
> >> Regards,
> >> Laurent
> >
> >qemu uses openbios and implements cirrus vga emulation,
> >which has this device class and no IO bars.
> 
> qemu-system-ppc doesn't support cirrus vga emulation (only vga emulation), moreover openbios is not able to manage cirrus vga card.

Maybe it will support it in the future :).

> So why this modification is needed ?
> (even if it is correct according to the specs, it's why I've applied it)

It's not fixing any breakage I have observed, if that's what you mean.
I found the issue in bochs bios and seabios with
cirrus vga emulation, so I thought I'd fix up openbios as well.

> 
> Regards,
> Laurent
> -- 
> --------------------- Laurent at vivier.eu  ---------------------
> "Tout ce qui est impossible reste à accomplir"    Jules Verne
> "Things are only impossible until they're not" Jean-Luc Picard



More information about the OpenBIOS mailing list