[coreboot] how to prevent legacy resource conflict with multiple VGA cards
scott at notabs.org
Fri Oct 22 03:08:51 CEST 2010
From: coreboot-bounces+scott=notabs.org at coreboot.org [mailto:coreboot-bounces+scott=notabs.org at coreboot.org] On Behalf Of Marc Jones
Sent: Thursday, October 21, 2010 07:47 PM
To: Scott Duplichan
Cc: coreboot at coreboot.org
Subject: Re: [coreboot] how to prevent legacy resource conflict with multiple VGA cards
]On Thu, Oct 21, 2010 at 4:18 PM, Scott Duplichan <scott at notabs.org> wrote:
]> I have Win7 working well with mahogany_fam10 if I use a PCI
]> video card. However, Device manager complains that it is unable
]> to find enough free resources for the UMA graphics controller.
]> Running an AMI legacy BIOS shows the problem can be solved by
]> enabling the PCI command register memory and I/O enable bits
]> for only the graphics card that you are using. Is there a way
]> to make coreboot do this, and if not, any suggestions on where
]> best to implement such a feature?
]I think that you can define the device you want disabled in
]devicetree.cb and set it to off.
Thanks for the suggestion. What I am really looking for is the
special handling that a commercial BIOS does for legacy video
devices. Say you have a typical desktop UMA board. If you add a
PCI video card, Windows resource manager will not report any
resource conflicts. The same is not true for coreboot+seabios.
When you add the PCI video card, Windows device manager reports
a resource conflict.
One detail I forgot to mention in the original email. What is
the exact resource conflict? Coreboot does properly assign
unique bar values for both video devices. However, the PCI class
code tells the OS that in addition to the bars, both video
devices decode memory range a0000-bffff, I/O 3b0-3bb, and I/O
3c0-3df. So there really is a conflict, and using the pci
command register to turn off memory and I/O decoding for all but
one video card solves the problem.
More information about the coreboot