[SeaBIOS] [seabios patch 1/5] pci: init all devices

Gerd Hoffmann kraxel at redhat.com
Fri May 4 17:35:10 CEST 2012


On 05/04/12 15:15, Kevin O'Connor wrote:
> On Fri, May 04, 2012 at 10:21:23AM +0200, Gerd Hoffmann wrote:
>> seabios used to initialize root bus devices only, with this patch
>> devices behind pci bridges are initialized too.  This allows to boot
>> from virtio devices behind pci bridges.
>>
>> Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
>> ---
>>  src/pciinit.c |    3 ---
>>  1 files changed, 0 insertions(+), 3 deletions(-)
>>
>> diff --git a/src/pciinit.c b/src/pciinit.c
>> index 25b04ac..6a7a0d2 100644
>> --- a/src/pciinit.c
>> +++ b/src/pciinit.c
>> @@ -213,9 +213,6 @@ static void pci_bios_init_devices(void)
>>  {
>>      struct pci_device *pci;
>>      foreachpci(pci) {
>> -        if (pci_bdf_to_bus(pci->bdf) != 0)
>> -            // Only init devices on host bus.
>> -            break;
> 
> I think this will then assign an incorrect PCI_INTERRUPT_LINE value to
> non root bus devices.

Attached patch should fix it if I read the specs correctly.
Untested though, review appreciated.

cheers,
  Gerd

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0001-pci-handle-bridge-irq-mapping.patch
URL: <http://www.seabios.org/pipermail/seabios/attachments/20120504/39f46b1b/attachment.ksh>


More information about the SeaBIOS mailing list