device or bus resets to SATA devices on sata controller
I'm trying to issue a Bus and Device reset (at different times) to a
SATA drive. Unfortunately, I'm getting an EIO when I use
SG_SCSI_RESET with a SG_SCSI_RESET_BUS or SG_SCSI_RESET_DEVICE arg in
the int* on an sg device, and ENOTTY on an sd device.
So, I decided to try using the SAT interface via libata. One the
of it, this looks like it should be easy... Device Reset is protocol
field = 9, don't do check condition, no tlength, tdir doesn't matter,
extend doesn't matter, etc.
So I issue:
but get an 05/24/00 error (invalid field in CDB)
So, I try the extend bit...
Maybe I need to manually set the SRST in the control field too...
Neither sg_reset nor hdparm could issue the resets either. Does
anyone know how to issue HARD, SOFT, or DEVICE resets to sata