Subject: Re: pci probe
To: M. Warner Losh <imp@bsdimp.com>
From: David Laight <david@l8s.co.uk>
List: tech-kern
Date: 08/15/2003 22:50:33
> Back to this section, you'll notice it doesn't unambiguously say that
> 'if vendorid == 0xffff for function 0, then there are no other
> functions'  It just says that vendorid == 0xffff is invalid and that
> reads from devices that aren't there must return 0xffff.  A subtle
> difference, but one that has been observed in the wild at least once.

I've only got REV 2.0 (nice bound edition...)

End of section 3.6.4 says:
    "Multi-function devices are required to do a full decode on ad[10::08],
    and only respind to the configuration cycle if they have implemented the
    configuration space registers for the selected function.  They are also
    required to always implement function 0 in the device."

Also is says the config code will probe function zero first, and if
that doesn't exist no other functions will be checked.

	David

-- 
David Laight: david@l8s.co.uk