HomeFreeBSD

rtsx: Call taskqueue sooner, adjust DELAY(9) calls, add an inversion heuristic

Description

rtsx: Call taskqueue sooner, adjust DELAY(9) calls, add an inversion heuristic

  • Some configurations, e.g. HP EliteBook 840 G3, come with a dummy card

in the card slot which is detected as a valid SD card. This added long
timeout at boot time. To alleviate the problem, the default timeout is
reduced to one second during the setup phase. [1]

  • Some configurations crash at boot if rtsx(4) is defined in the kernel

config. At boot time, without a card inserted, the driver found that
a card is present and just after that a "spontaneous" interrupt is
generated showing that no card is present. To solve this problem,
DELAY(9) is set to one quarter of a second before checking card presence
during driver attach.

  • As advised by adrian, taskqueue and DMA are set up sooner during

the driver attach. A heuristic to try to detect configuration needing
inversion was added.

PR: 255130 [1]
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D30499

Details

Provenance
hlh_restart.beAuthored on Sep 9 2021, 5:33 PM
jkimCommitted on Sep 9 2021, 6:26 PM
Differential Revision
D30499: Call taskqueue sooner, adjust some DELAY(), add inversion heuristic
Parents
rG3ea2cdd45ec1: sctp: add explicit cast, no functional change intended
Branches
Unknown
Tags
Unknown