Messages in this thread | | | Date | Wed, 14 Jul 2010 11:47:29 -0700 | From | "H. Peter Anvin" <> | Subject | Re: Regression: 2.6.34 boot fails on E5405 system, bisected: de08e2c26 |
| |
On 07/14/2010 11:22 AM, Ben Greear wrote: > > Is there at least a maximum number of capabilities that can exist so that > you can limit the loop by that? >
Well, 3072 bytes and a minimum size of 4 bytes, so 768. However, a capability ID of 0000 or FFFF means no capabilities (PCIe 2.01 sec 7.9.1-2), so we should terminate the search on finding one of those capability ID.
[Also note: bits 21:20 are reserved and need to be masked, per PCIe 2.01 7.9.3.]
The spec seems to imply that capabilities should be sequential, but I really don't know if that is actually the case in the field.
-hpa
| |