libata project: START STOP UNIT translation
If anybody is looking for SATA kernel hacking project, here's a small and self-contained one:
Implement the translation of SCSI command START STOP UNIT in drivers/scsi/libata-scsi.c.
Among other things, this will give people with SATA power management capabilities.
START STOP UNIT is described at
http://www.t10.org/ftp/t10/drafts/sbc2/sbc2r16.pdf
The translation of START STOP UNIT from SCSI to ATA is described at
http://www.t10.org/ftp/t10/drafts/sat/sat-r04.pdf
The relevant ATA commands you will be using are documented at
http://www.t13.org/docs2004/d1532v1r4b-ATA-ATAPI-7.pdf
More info on SATA hacking can be had by reading
http://linux.yyz.us/sata/devel.html
or by reading drivers/scsi/libata*.[ch], include/linux/libata.h, include/linux/ata.h, and drivers/scsi/sata_*.c.