On 4/26/11 5:05 AM, Manuel Bouyer wrote:
Once upon a long time ago, I added NCQ support to the ATA layer (for Wasabi, so I assume that code is legally lost now). Like you said, it isn't as complicated as it sounds, and I don't think it's worth it sharing with the SCSI code at this point.The ATA layer doesn't yet support multiple outstanding commands, but some provision for this is already there: for example, wd_softc has a openings member, we have a queue of commands. What's missing is tag handling in the wd driver; idea can probably be borrowed from the scsipi layer (scsipi_{get,put}_tag()). The code is so small I'm not sure it's worth trying to share it.
- Frank