aboutsummaryrefslogtreecommitdiff
path: root/drivers/scsi
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2005-10-07 01:43:19 +0900
committerJeff Garzik <jgarzik@pobox.com>2005-10-06 13:15:02 -0400
commit7f726d125d570f38b9e7c8a2decebc39c0a343dc (patch)
treef7a830e7c93d0c182f8f2f5942f9c30d320dfd42 /drivers/scsi
parent6a575fa969beeddd0859f9e9d26ab16c6a0d8d6a (diff)
[PATCH] sil24: implement tf_read callback
Hello, guys. This patch implements ->tf_read callback for sil24. It didn't use to be necessary but new ata_gen_fixed_sense now makes use of ->tf_read callback. This patch is taken from Edward Falk's driver. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/sata_sil24.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/scsi/sata_sil24.c b/drivers/scsi/sata_sil24.c
index b65194c755f..693330bdc82 100644
--- a/drivers/scsi/sata_sil24.c
+++ b/drivers/scsi/sata_sil24.c
@@ -229,6 +229,7 @@ static u8 sil24_check_status(struct ata_port *ap);
static u8 sil24_check_err(struct ata_port *ap);
static u32 sil24_scr_read(struct ata_port *ap, unsigned sc_reg);
static void sil24_scr_write(struct ata_port *ap, unsigned sc_reg, u32 val);
+static void sil24_tf_read(struct ata_port *ap, struct ata_taskfile *tf);
static void sil24_phy_reset(struct ata_port *ap);
static void sil24_qc_prep(struct ata_queued_cmd *qc);
static int sil24_qc_issue(struct ata_queued_cmd *qc);
@@ -280,6 +281,8 @@ static struct ata_port_operations sil24_ops = {
.check_err = sil24_check_err,
.dev_select = ata_noop_dev_select,
+ .tf_read = sil24_tf_read,
+
.phy_reset = sil24_phy_reset,
.qc_prep = sil24_qc_prep,
@@ -372,6 +375,12 @@ static void sil24_scr_write(struct ata_port *ap, unsigned sc_reg, u32 val)
}
}
+static void sil24_tf_read(struct ata_port *ap, struct ata_taskfile *tf)
+{
+ struct sil24_port_priv *pp = ap->private_data;
+ *tf = pp->tf;
+}
+
static void sil24_phy_reset(struct ata_port *ap)
{
__sata_phy_reset(ap);