[PATCH] sata_sil24: add hardreset
Now that libata is smart enough to handle both soft and hard resets,
add hardreset method. Note that sil24 hardreset doesn't supply
signature; still, the new reset mechanism can make good use of it.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
diff --git a/drivers/scsi/sata_sil24.c b/drivers/scsi/sata_sil24.c
index ccac05a..228a7fa 100644
--- a/drivers/scsi/sata_sil24.c
+++ b/drivers/scsi/sata_sil24.c
@@ -485,10 +485,19 @@
return 0;
}
+static int sil24_hardreset(struct ata_port *ap, int verbose,
+ unsigned int *class)
+{
+ unsigned int dummy_class;
+
+ /* sil24 doesn't report device signature after hard reset */
+ return sata_std_hardreset(ap, verbose, &dummy_class);
+}
+
static int sil24_probe_reset(struct ata_port *ap, unsigned int *classes)
{
return ata_drive_probe_reset(ap, ata_std_probeinit,
- sil24_softreset, NULL,
+ sil24_softreset, sil24_hardreset,
ata_std_postreset, classes);
}