After some intial testing, there are even slower cards than the ones that I have.  Wait up to 1.1s for the card to become ready.  Document what the standards say, and use that to justify the behavior in the code: PCI standard says that a card must respond to configuration cycles within 2^25 cycles after reset goes high, which is approximately 1s.  Therefore, give cards a little break and wait for up to 1.1s for VENDOR to become valid.  Only look at the vendor part of the ID, since only it can't be 0xffff (although in practice vendor/device will always be != 0xfffffffff).  Include detailed pointers to standards so epople understand why we're doing what we're doing and why it just might be OK.  Make it clear in the timeout message that it is just a warning, sinc we try to soldier on as best we can anyway.
After some intial testing, there are even slower cards than the ones
that I have.  Wait up to 1.1s for the card to become ready.  Document
what the standards say, and use that to justify the behavior in the
code: PCI standard says that a card must respond to configuration
cycles within 2^25 cycles after reset goes high, which is
approximately 1s.  Therefore, give cards a little break and wait for
up to 1.1s for VENDOR to become valid.  Only look at the vendor part
of the ID, since only it can't be 0xffff (although in practice
vendor/device will always be != 0xfffffffff).  Include detailed
pointers to standards so epople understand why we're doing what we're
doing and why it just might be OK.  Make it clear in the timeout
message that it is just a warning, sinc we try to soldier on as best
we can anyway.

This should eliminate an error message that r181453 produced on
certain Atheros cards.

jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase