diff options
author | Tejun Heo <htejun@gmail.com> | 2006-02-10 23:58:48 +0900 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2006-02-10 10:30:12 -0500 |
commit | 489ff4c7d167be954f715128790bd80d3c888322 (patch) | |
tree | 72c06ba67487dd1796fcf45e4d803a9880657bc6 | |
parent | 07b734702a96efbc260bf50c2ce57e34167f431b (diff) | |
download | op-kernel-dev-489ff4c7d167be954f715128790bd80d3c888322.zip op-kernel-dev-489ff4c7d167be954f715128790bd80d3c888322.tar.gz |
[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>
-rw-r--r-- | drivers/scsi/sata_sil24.c | 11 |
1 files changed, 10 insertions, 1 deletions
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 @@ static int sil24_softreset(struct ata_port *ap, int verbose, 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); } |