diff options
Diffstat (limited to 'drivers/ata/sata_sil24.c')
-rw-r--r-- | drivers/ata/sata_sil24.c | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/drivers/ata/sata_sil24.c b/drivers/ata/sata_sil24.c index 51a7c06803df..15a4067149b7 100644 --- a/drivers/ata/sata_sil24.c +++ b/drivers/ata/sata_sil24.c | |||
@@ -336,12 +336,10 @@ static struct sil24_cerr_info { | |||
336 | struct sil24_port_priv { | 336 | struct sil24_port_priv { |
337 | union sil24_cmd_block *cmd_block; /* 32 cmd blocks */ | 337 | union sil24_cmd_block *cmd_block; /* 32 cmd blocks */ |
338 | dma_addr_t cmd_block_dma; /* DMA base addr for them */ | 338 | dma_addr_t cmd_block_dma; /* DMA base addr for them */ |
339 | struct ata_taskfile tf; /* Cached taskfile registers */ | ||
340 | int do_port_rst; | 339 | int do_port_rst; |
341 | }; | 340 | }; |
342 | 341 | ||
343 | static void sil24_dev_config(struct ata_device *dev); | 342 | static void sil24_dev_config(struct ata_device *dev); |
344 | static u8 sil24_check_status(struct ata_port *ap); | ||
345 | static int sil24_scr_read(struct ata_port *ap, unsigned sc_reg, u32 *val); | 343 | static int sil24_scr_read(struct ata_port *ap, unsigned sc_reg, u32 *val); |
346 | static int sil24_scr_write(struct ata_port *ap, unsigned sc_reg, u32 val); | 344 | static int sil24_scr_write(struct ata_port *ap, unsigned sc_reg, u32 val); |
347 | static int sil24_qc_defer(struct ata_queued_cmd *qc); | 345 | static int sil24_qc_defer(struct ata_queued_cmd *qc); |
@@ -401,8 +399,6 @@ static struct scsi_host_template sil24_sht = { | |||
401 | static struct ata_port_operations sil24_ops = { | 399 | static struct ata_port_operations sil24_ops = { |
402 | .inherits = &sata_pmp_port_ops, | 400 | .inherits = &sata_pmp_port_ops, |
403 | 401 | ||
404 | .sff_check_status = sil24_check_status, | ||
405 | .sff_check_altstatus = sil24_check_status, | ||
406 | .qc_defer = sil24_qc_defer, | 402 | .qc_defer = sil24_qc_defer, |
407 | .qc_prep = sil24_qc_prep, | 403 | .qc_prep = sil24_qc_prep, |
408 | .qc_issue = sil24_qc_issue, | 404 | .qc_issue = sil24_qc_issue, |
@@ -492,12 +488,6 @@ static void sil24_read_tf(struct ata_port *ap, int tag, struct ata_taskfile *tf) | |||
492 | ata_tf_from_fis(fis, tf); | 488 | ata_tf_from_fis(fis, tf); |
493 | } | 489 | } |
494 | 490 | ||
495 | static u8 sil24_check_status(struct ata_port *ap) | ||
496 | { | ||
497 | struct sil24_port_priv *pp = ap->private_data; | ||
498 | return pp->tf.command; | ||
499 | } | ||
500 | |||
501 | static int sil24_scr_map[] = { | 491 | static int sil24_scr_map[] = { |
502 | [SCR_CONTROL] = 0, | 492 | [SCR_CONTROL] = 0, |
503 | [SCR_STATUS] = 1, | 493 | [SCR_STATUS] = 1, |
@@ -1074,10 +1064,9 @@ static void sil24_error_intr(struct ata_port *ap) | |||
1074 | } | 1064 | } |
1075 | 1065 | ||
1076 | /* record error info */ | 1066 | /* record error info */ |
1077 | if (qc) { | 1067 | if (qc) |
1078 | sil24_read_tf(ap, qc->tag, &pp->tf); | ||
1079 | qc->err_mask |= err_mask; | 1068 | qc->err_mask |= err_mask; |
1080 | } else | 1069 | else |
1081 | ehi->err_mask |= err_mask; | 1070 | ehi->err_mask |= err_mask; |
1082 | 1071 | ||
1083 | ehi->action |= action; | 1072 | ehi->action |= action; |
@@ -1210,8 +1199,6 @@ static int sil24_port_start(struct ata_port *ap) | |||
1210 | if (!pp) | 1199 | if (!pp) |
1211 | return -ENOMEM; | 1200 | return -ENOMEM; |
1212 | 1201 | ||
1213 | pp->tf.command = ATA_DRDY; | ||
1214 | |||
1215 | cb = dmam_alloc_coherent(dev, cb_size, &cb_dma, GFP_KERNEL); | 1202 | cb = dmam_alloc_coherent(dev, cb_size, &cb_dma, GFP_KERNEL); |
1216 | if (!cb) | 1203 | if (!cb) |
1217 | return -ENOMEM; | 1204 | return -ENOMEM; |