[coreboot] Interesting device enumeration problem

Marc Jones marcj303 at gmail.com
Tue Jul 7 17:23:00 CEST 2009


On Mon, Jul 6, 2009 at 4:03 PM, Myles Watson<mylesgw at gmail.com> wrote:
> I tried to disable the onboard graphics on my s2892:
>
> device pci 6.0 off end
>
> But that made it probe 6.1 - 6.7.  Since the code only checks for
> multifunction devices at function 0, all of those responded.  So now instead
> of disabling my card, it had 7 instances of it.  I realize that the card
> probably shouldn't have responded to all of those functions, but it probably
> doesn't bother checking which function is addressed.
>
> device pci 6.0 off end
> device pci 6.1 off end
> device pci 6.2 off end
> device pci 6.3 off end
> device pci 6.4 off end
> device pci 6.5 off end
> device pci 6.6 off end
> device pci 6.7 off end
>
> This worked, but it is non-obvious.  I wonder what the "right" way would be
> to handle this.
>
> Is there any time when you want to disable function 0 but still have all the
> other functions enabled/probed?

Myles,

That seems like a defective card but something is strange. Why
wouldn't it detect the functions when the first function was enabled?

A PCI cards functions don't have to be related to each other. It is
legitimate to disable the first function and expect the others to
work.

Marc

-- 
http://marcjonesconsulting.com




More information about the coreboot mailing list