aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/sata_sil24.c
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2005-10-06 12:43:19 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-10-06 13:15:02 -0400
commit7f726d125d570f38b9e7c8a2decebc39c0a343dc (patch)
treef7a830e7c93d0c182f8f2f5942f9c30d320dfd42 /drivers/scsi/sata_sil24.c
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/sata_sil24.c')
-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 b65194c755f8..693330bdc821 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);
229static u8 sil24_check_err(struct ata_port *ap); 229static u8 sil24_check_err(struct ata_port *ap);
230static u32 sil24_scr_read(struct ata_port *ap, unsigned sc_reg); 230static u32 sil24_scr_read(struct ata_port *ap, unsigned sc_reg);
231static void sil24_scr_write(struct ata_port *ap, unsigned sc_reg, u32 val); 231static void sil24_scr_write(struct ata_port *ap, unsigned sc_reg, u32 val);
232static void sil24_tf_read(struct ata_port *ap, struct ata_taskfile *tf);
232static void sil24_phy_reset(struct ata_port *ap); 233static void sil24_phy_reset(struct ata_port *ap);
233static void sil24_qc_prep(struct ata_queued_cmd *qc); 234static void sil24_qc_prep(struct ata_queued_cmd *qc);
234static int sil24_qc_issue(struct ata_queued_cmd *qc); 235static int sil24_qc_issue(struct ata_queued_cmd *qc);
@@ -280,6 +281,8 @@ static struct ata_port_operations sil24_ops = {
280 .check_err = sil24_check_err, 281 .check_err = sil24_check_err,
281 .dev_select = ata_noop_dev_select, 282 .dev_select = ata_noop_dev_select,
282 283
284 .tf_read = sil24_tf_read,
285
283 .phy_reset = sil24_phy_reset, 286 .phy_reset = sil24_phy_reset,
284 287
285 .qc_prep = sil24_qc_prep, 288 .qc_prep = sil24_qc_prep,
@@ -372,6 +375,12 @@ static void sil24_scr_write(struct ata_port *ap, unsigned sc_reg, u32 val)
372 } 375 }
373} 376}
374 377
378static void sil24_tf_read(struct ata_port *ap, struct ata_taskfile *tf)
379{
380 struct sil24_port_priv *pp = ap->private_data;
381 *tf = pp->tf;
382}
383
375static void sil24_phy_reset(struct ata_port *ap) 384static void sil24_phy_reset(struct ata_port *ap)
376{ 385{
377 __sata_phy_reset(ap); 386 __sata_phy_reset(ap);