diff options
| author | Warner Losh <imp@FreeBSD.org> | 2006-08-09 00:05:54 +0000 |
|---|---|---|
| committer | Warner Losh <imp@FreeBSD.org> | 2006-08-09 00:05:54 +0000 |
| commit | 9500ad1d7de091ba6a05fb7da46914e12a8f5bf9 (patch) | |
| tree | 5f0ecb15532055f30c224212e9f802478ea36dd6 /sys | |
| parent | d1a5c5275c6cb1069cb2f0f64f718e24c04cd3a9 (diff) | |
Notes
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/dev/pccard/pccard_cis.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/dev/pccard/pccard_cis.c b/sys/dev/pccard/pccard_cis.c index ce2c23d88726..b912a200d6c2 100644 --- a/sys/dev/pccard/pccard_cis.c +++ b/sys/dev/pccard/pccard_cis.c @@ -94,6 +94,16 @@ pccard_read_cis(struct pccard_softc *sc) STAILQ_INIT(&state.card->pf_head); state.pf = NULL; + /* + * XXX The following shouldn't be needed, but some slow cards + * XXX seem to need it still. Need to investigate if there's + * XXX a way to tell if the card is 'ready' or not rather than + * XXX sleeping like this. We're called just after the power + * XXX up of the socket. The standard timing diagrams don't + * XXX seem to indicate that a delay is required. The old + * XXX delay was 1s. This delay is .1s. + */ + tsleep(&state, 0, "pccard", hz / 10); if (pccard_scan_cis(device_get_parent(sc->dev), sc->dev, pccard_parse_cis_tuple, &state) == -1) state.card->error++; |
