j
: Next unread message k
: Previous unread message j a
: Jump to all threads
j l
: Jump to MailingList overview
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@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 :).
Are you working on this ?
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.
OK, it's fine for me. Thank you.
Laurent
On Thu, Dec 10, 2009 at 01:25:11PM +0100, Laurent Vivier wrote:
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@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 :).
Are you working on this ?
No, but I'm doing some cleanups on qemu pci emulation in general, this job becomes tricky if bios isn't going by the spec. And people copy code from each other, so these bugs propagate :)
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.
OK, it's fine for me. Thank you.
Laurent
--------------------- Laurent@vivier.eu --------------------- "Tout ce qui est impossible reste à accomplir" Jules Verne "Things are only impossible until they're not" Jean-Luc Picard