Subject: Polled SCSI drivers
To: None <port-acorn32@netbsd.org>
From: Ben Harris <bjh21@netbsd.org>
List: port-acorn32
Date: 02/11/2002 23:44:56
[ I really should actually subscribe to this list, rather than reading it
a month in arrears through the archives. ]
The correct way for a SCSI host adaptor driver to indicate that it doesn't
support non-polled transfers is for it to set SCSIPI_ADAPT_POLL_ONLY in
its adapt_flags. This ensures that the MI SCSI system will issue all
transfers with XS_CTL_POLL set and with XS_CTL_ASYNC unset, and hence
ensures that the "ASYNC and POLL" panic never happens.
Since scsipi_execute_xs() does different things depending on the state of
these flags, just setting XS_CTL_POLL in csc_scsi_request() isn't
guaranteed to do the right thing. This is why I introduced
SCSIPI_ADAPT_POLL_ONLY.
Incidentally, there's a similar flag, WDC_CAPABILITY_NOIRQ, for IDE
controllers.
--
Ben Harris <bjh21@netbsd.org>
Portmaster, NetBSD/arm26 <URL:http://www.netbsd.org/Ports/arm26/>