aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2008-04-07 09:47:16 -0400
committerJeff Garzik <jgarzik@redhat.com>2008-04-17 15:44:22 -0400
commit5682ed33aae05d10a25c95633ef9d9c062825888 (patch)
tree1632d4d70f4fd2dc25596a5cde1183f70f162ac3
parent9363c3825ea9ad76561eb48a395349dd29211ed6 (diff)
libata: rename SFF port ops
Add sff_ prefix to SFF specific port ops. This rename is in preparation of separating SFF support out of libata core layer. This patch strictly renames ops and doesn't introduce any behavior difference. Signed-off-by: Tejun Heo <htejun@gmail.com>
-rw-r--r--drivers/ata/ahci.c6
-rw-r--r--drivers/ata/libata-core.c18
-rw-r--r--drivers/ata/libata-scsi.c2
-rw-r--r--drivers/ata/libata-sff.c109
-rw-r--r--drivers/ata/pata_bf54x.c20
-rw-r--r--drivers/ata/pata_cmd640.c2
-rw-r--r--drivers/ata/pata_icside.c4
-rw-r--r--drivers/ata/pata_it821x.c2
-rw-r--r--drivers/ata/pata_ixp4xx_cf.c2
-rw-r--r--drivers/ata/pata_legacy.c14
-rw-r--r--drivers/ata/pata_mpc52xx.c2
-rw-r--r--drivers/ata/pata_ninja32.c2
-rw-r--r--drivers/ata/pata_ns87415.c8
-rw-r--r--drivers/ata/pata_pcmcia.c4
-rw-r--r--drivers/ata/pata_platform.c2
-rw-r--r--drivers/ata/pata_qdi.c2
-rw-r--r--drivers/ata/pata_rb500_cf.c4
-rw-r--r--drivers/ata/pata_scc.c42
-rw-r--r--drivers/ata/pata_via.c2
-rw-r--r--drivers/ata/pata_winbond.c2
-rw-r--r--drivers/ata/sata_fsl.c6
-rw-r--r--drivers/ata/sata_inic162x.c12
-rw-r--r--drivers/ata/sata_nv.c20
-rw-r--r--drivers/ata/sata_promise.c6
-rw-r--r--drivers/ata/sata_sil.c6
-rw-r--r--drivers/ata/sata_sil24.c6
-rw-r--r--drivers/ata/sata_svw.c10
-rw-r--r--drivers/ata/sata_sx4.c16
-rw-r--r--drivers/ata/sata_via.c2
-rw-r--r--drivers/ata/sata_vsc.c6
-rw-r--r--drivers/scsi/ipr.c8
-rw-r--r--drivers/scsi/libsas/sas_ata.c8
-rw-r--r--include/linux/libata.h25
33 files changed, 192 insertions, 188 deletions
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 771509c9a3fb..c5e4501daa74 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -292,10 +292,10 @@ static struct scsi_host_template ahci_sht = {
292static struct ata_port_operations ahci_ops = { 292static struct ata_port_operations ahci_ops = {
293 .inherits = &sata_pmp_port_ops, 293 .inherits = &sata_pmp_port_ops,
294 294
295 .check_status = ahci_check_status, 295 .sff_check_status = ahci_check_status,
296 .check_altstatus = ahci_check_status, 296 .sff_check_altstatus = ahci_check_status,
297 297
298 .tf_read = ahci_tf_read, 298 .sff_tf_read = ahci_tf_read,
299 .qc_defer = sata_pmp_qc_defer_cmd_switch, 299 .qc_defer = sata_pmp_qc_defer_cmd_switch,
300 .qc_prep = ahci_qc_prep, 300 .qc_prep = ahci_qc_prep,
301 .qc_issue = ahci_qc_issue, 301 .qc_issue = ahci_qc_issue,
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index cbdbfb5eaeaa..a01e02c5ce7a 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -74,7 +74,7 @@ const unsigned long sata_deb_timing_hotplug[] = { 25, 500, 2000 };
74const unsigned long sata_deb_timing_long[] = { 100, 2000, 5000 }; 74const unsigned long sata_deb_timing_long[] = { 100, 2000, 5000 };
75 75
76const struct ata_port_operations ata_base_port_ops = { 76const struct ata_port_operations ata_base_port_ops = {
77 .irq_clear = ata_noop_irq_clear, 77 .sff_irq_clear = ata_noop_irq_clear,
78 .prereset = ata_sff_prereset, 78 .prereset = ata_sff_prereset,
79 .hardreset = sata_sff_hardreset, 79 .hardreset = sata_sff_hardreset,
80 .postreset = ata_sff_postreset, 80 .postreset = ata_sff_postreset,
@@ -85,7 +85,7 @@ const struct ata_port_operations sata_port_ops = {
85 .inherits = &ata_base_port_ops, 85 .inherits = &ata_base_port_ops,
86 86
87 .qc_defer = ata_std_qc_defer, 87 .qc_defer = ata_std_qc_defer,
88 .dev_select = ata_noop_dev_select, 88 .sff_dev_select = ata_noop_dev_select,
89}; 89};
90 90
91const struct ata_port_operations sata_pmp_port_ops = { 91const struct ata_port_operations sata_pmp_port_ops = {
@@ -3563,9 +3563,9 @@ void ata_sff_postreset(struct ata_link *link, unsigned int *classes)
3563 3563
3564 /* is double-select really necessary? */ 3564 /* is double-select really necessary? */
3565 if (classes[0] != ATA_DEV_NONE) 3565 if (classes[0] != ATA_DEV_NONE)
3566 ap->ops->dev_select(ap, 1); 3566 ap->ops->sff_dev_select(ap, 1);
3567 if (classes[1] != ATA_DEV_NONE) 3567 if (classes[1] != ATA_DEV_NONE)
3568 ap->ops->dev_select(ap, 0); 3568 ap->ops->sff_dev_select(ap, 0);
3569 3569
3570 /* bail out if no device is present */ 3570 /* bail out if no device is present */
3571 if (classes[0] == ATA_DEV_NONE && classes[1] == ATA_DEV_NONE) { 3571 if (classes[0] == ATA_DEV_NONE && classes[1] == ATA_DEV_NONE) {
@@ -4416,7 +4416,7 @@ static void fill_result_tf(struct ata_queued_cmd *qc)
4416 struct ata_port *ap = qc->ap; 4416 struct ata_port *ap = qc->ap;
4417 4417
4418 qc->result_tf.flags = qc->tf.flags; 4418 qc->result_tf.flags = qc->tf.flags;
4419 ap->ops->tf_read(ap, &qc->result_tf); 4419 ap->ops->sff_tf_read(ap, &qc->result_tf);
4420} 4420}
4421 4421
4422static void ata_verify_xfer(struct ata_queued_cmd *qc) 4422static void ata_verify_xfer(struct ata_queued_cmd *qc)
@@ -6049,16 +6049,16 @@ static unsigned int ata_dummy_qc_issue(struct ata_queued_cmd *qc)
6049} 6049}
6050 6050
6051struct ata_port_operations ata_dummy_port_ops = { 6051struct ata_port_operations ata_dummy_port_ops = {
6052 .check_status = ata_dummy_check_status, 6052 .sff_check_status = ata_dummy_check_status,
6053 .check_altstatus = ata_dummy_check_status, 6053 .sff_check_altstatus = ata_dummy_check_status,
6054 .dev_select = ata_noop_dev_select, 6054 .sff_dev_select = ata_noop_dev_select,
6055 .qc_prep = ata_noop_qc_prep, 6055 .qc_prep = ata_noop_qc_prep,
6056 .qc_issue = ata_dummy_qc_issue, 6056 .qc_issue = ata_dummy_qc_issue,
6057 .freeze = ata_dummy_noret, 6057 .freeze = ata_dummy_noret,
6058 .thaw = ata_dummy_noret, 6058 .thaw = ata_dummy_noret,
6059 .error_handler = ata_dummy_noret, 6059 .error_handler = ata_dummy_noret,
6060 .post_internal_cmd = ata_dummy_qc_noret, 6060 .post_internal_cmd = ata_dummy_qc_noret,
6061 .irq_clear = ata_dummy_noret, 6061 .sff_irq_clear = ata_dummy_noret,
6062 .port_start = ata_dummy_ret0, 6062 .port_start = ata_dummy_ret0,
6063 .port_stop = ata_dummy_noret, 6063 .port_stop = ata_dummy_noret,
6064}; 6064};
diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
index 798ba5e45710..f8be92836a6e 100644
--- a/drivers/ata/libata-scsi.c
+++ b/drivers/ata/libata-scsi.c
@@ -2393,7 +2393,7 @@ static void atapi_request_sense(struct ata_queued_cmd *qc)
2393 /* FIXME: is this needed? */ 2393 /* FIXME: is this needed? */
2394 memset(cmd->sense_buffer, 0, SCSI_SENSE_BUFFERSIZE); 2394 memset(cmd->sense_buffer, 0, SCSI_SENSE_BUFFERSIZE);
2395 2395
2396 ap->ops->tf_read(ap, &qc->tf); 2396 ap->ops->sff_tf_read(ap, &qc->tf);
2397 2397
2398 /* fill these in, for the case where they are -not- overwritten */ 2398 /* fill these in, for the case where they are -not- overwritten */
2399 cmd->sense_buffer[0] = 0x70; 2399 cmd->sense_buffer[0] = 0x70;
diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c
index 8544321293d4..04024a556660 100644
--- a/drivers/ata/libata-sff.c
+++ b/drivers/ata/libata-sff.c
@@ -51,13 +51,13 @@ const struct ata_port_operations ata_sff_port_ops = {
51 .error_handler = ata_sff_error_handler, 51 .error_handler = ata_sff_error_handler,
52 .post_internal_cmd = ata_sff_post_internal_cmd, 52 .post_internal_cmd = ata_sff_post_internal_cmd,
53 53
54 .dev_select = ata_sff_dev_select, 54 .sff_dev_select = ata_sff_dev_select,
55 .check_status = ata_sff_check_status, 55 .sff_check_status = ata_sff_check_status,
56 .tf_load = ata_sff_tf_load, 56 .sff_tf_load = ata_sff_tf_load,
57 .tf_read = ata_sff_tf_read, 57 .sff_tf_read = ata_sff_tf_read,
58 .exec_command = ata_sff_exec_command, 58 .sff_exec_command = ata_sff_exec_command,
59 .data_xfer = ata_sff_data_xfer, 59 .sff_data_xfer = ata_sff_data_xfer,
60 .irq_on = ata_sff_irq_on, 60 .sff_irq_on = ata_sff_irq_on,
61 61
62 .port_start = ata_sff_port_start, 62 .port_start = ata_sff_port_start,
63}; 63};
@@ -71,7 +71,7 @@ const struct ata_port_operations ata_bmdma_port_ops = {
71 .bmdma_start = ata_bmdma_start, 71 .bmdma_start = ata_bmdma_start,
72 .bmdma_stop = ata_bmdma_stop, 72 .bmdma_stop = ata_bmdma_stop,
73 .bmdma_status = ata_bmdma_status, 73 .bmdma_status = ata_bmdma_status,
74 .irq_clear = ata_sff_irq_clear, 74 .sff_irq_clear = ata_sff_irq_clear,
75}; 75};
76 76
77/** 77/**
@@ -245,8 +245,8 @@ u8 ata_sff_check_status(struct ata_port *ap)
245 */ 245 */
246u8 ata_sff_altstatus(struct ata_port *ap) 246u8 ata_sff_altstatus(struct ata_port *ap)
247{ 247{
248 if (ap->ops->check_altstatus) 248 if (ap->ops->sff_check_altstatus)
249 return ap->ops->check_altstatus(ap); 249 return ap->ops->sff_check_altstatus(ap);
250 250
251 return ioread8(ap->ioaddr.altstatus_addr); 251 return ioread8(ap->ioaddr.altstatus_addr);
252} 252}
@@ -290,7 +290,7 @@ int ata_sff_busy_sleep(struct ata_port *ap,
290 while (status != 0xff && (status & ATA_BUSY) && 290 while (status != 0xff && (status & ATA_BUSY) &&
291 time_before(jiffies, timeout)) { 291 time_before(jiffies, timeout)) {
292 msleep(50); 292 msleep(50);
293 status = ap->ops->check_status(ap); 293 status = ap->ops->sff_check_status(ap);
294 } 294 }
295 295
296 if (status == 0xff) 296 if (status == 0xff)
@@ -326,7 +326,7 @@ int ata_sff_wait_ready(struct ata_port *ap, unsigned long deadline)
326 int warned = 0; 326 int warned = 0;
327 327
328 while (1) { 328 while (1) {
329 u8 status = ap->ops->check_status(ap); 329 u8 status = ap->ops->sff_check_status(ap);
330 unsigned long now = jiffies; 330 unsigned long now = jiffies;
331 331
332 if (!(status & ATA_BUSY)) 332 if (!(status & ATA_BUSY))
@@ -403,7 +403,7 @@ void ata_dev_select(struct ata_port *ap, unsigned int device,
403 if (wait) 403 if (wait)
404 ata_wait_idle(ap); 404 ata_wait_idle(ap);
405 405
406 ap->ops->dev_select(ap, device); 406 ap->ops->sff_dev_select(ap, device);
407 407
408 if (wait) { 408 if (wait) {
409 if (can_sleep && ap->link.device[device].class == ATA_DEV_ATAPI) 409 if (can_sleep && ap->link.device[device].class == ATA_DEV_ATAPI)
@@ -434,7 +434,7 @@ u8 ata_sff_irq_on(struct ata_port *ap)
434 iowrite8(ap->ctl, ioaddr->ctl_addr); 434 iowrite8(ap->ctl, ioaddr->ctl_addr);
435 tmp = ata_wait_idle(ap); 435 tmp = ata_wait_idle(ap);
436 436
437 ap->ops->irq_clear(ap); 437 ap->ops->sff_irq_clear(ap);
438 438
439 return tmp; 439 return tmp;
440} 440}
@@ -593,8 +593,8 @@ void ata_sff_exec_command(struct ata_port *ap, const struct ata_taskfile *tf)
593static inline void ata_tf_to_host(struct ata_port *ap, 593static inline void ata_tf_to_host(struct ata_port *ap,
594 const struct ata_taskfile *tf) 594 const struct ata_taskfile *tf)
595{ 595{
596 ap->ops->tf_load(ap, tf); 596 ap->ops->sff_tf_load(ap, tf);
597 ap->ops->exec_command(ap, tf); 597 ap->ops->sff_exec_command(ap, tf);
598} 598}
599 599
600/** 600/**
@@ -709,13 +709,15 @@ static void ata_pio_sector(struct ata_queued_cmd *qc)
709 buf = kmap_atomic(page, KM_IRQ0); 709 buf = kmap_atomic(page, KM_IRQ0);
710 710
711 /* do the actual data transfer */ 711 /* do the actual data transfer */
712 ap->ops->data_xfer(qc->dev, buf + offset, qc->sect_size, do_write); 712 ap->ops->sff_data_xfer(qc->dev, buf + offset, qc->sect_size,
713 do_write);
713 714
714 kunmap_atomic(buf, KM_IRQ0); 715 kunmap_atomic(buf, KM_IRQ0);
715 local_irq_restore(flags); 716 local_irq_restore(flags);
716 } else { 717 } else {
717 buf = page_address(page); 718 buf = page_address(page);
718 ap->ops->data_xfer(qc->dev, buf + offset, qc->sect_size, do_write); 719 ap->ops->sff_data_xfer(qc->dev, buf + offset, qc->sect_size,
720 do_write);
719 } 721 }
720 722
721 qc->curbytes += qc->sect_size; 723 qc->curbytes += qc->sect_size;
@@ -772,7 +774,7 @@ static void atapi_send_cdb(struct ata_port *ap, struct ata_queued_cmd *qc)
772 DPRINTK("send cdb\n"); 774 DPRINTK("send cdb\n");
773 WARN_ON(qc->dev->cdb_len < 12); 775 WARN_ON(qc->dev->cdb_len < 12);
774 776
775 ap->ops->data_xfer(qc->dev, qc->cdb, qc->dev->cdb_len, 1); 777 ap->ops->sff_data_xfer(qc->dev, qc->cdb, qc->dev->cdb_len, 1);
776 ata_sff_altstatus(ap); /* flush */ 778 ata_sff_altstatus(ap); /* flush */
777 779
778 switch (qc->tf.protocol) { 780 switch (qc->tf.protocol) {
@@ -844,13 +846,13 @@ next_sg:
844 buf = kmap_atomic(page, KM_IRQ0); 846 buf = kmap_atomic(page, KM_IRQ0);
845 847
846 /* do the actual data transfer */ 848 /* do the actual data transfer */
847 consumed = ap->ops->data_xfer(dev, buf + offset, count, rw); 849 consumed = ap->ops->sff_data_xfer(dev, buf + offset, count, rw);
848 850
849 kunmap_atomic(buf, KM_IRQ0); 851 kunmap_atomic(buf, KM_IRQ0);
850 local_irq_restore(flags); 852 local_irq_restore(flags);
851 } else { 853 } else {
852 buf = page_address(page); 854 buf = page_address(page);
853 consumed = ap->ops->data_xfer(dev, buf + offset, count, rw); 855 consumed = ap->ops->sff_data_xfer(dev, buf + offset, count, rw);
854 } 856 }
855 857
856 bytes -= min(bytes, consumed); 858 bytes -= min(bytes, consumed);
@@ -893,7 +895,7 @@ static void atapi_pio_bytes(struct ata_queued_cmd *qc)
893 * error, qc->result_tf is later overwritten by ata_qc_complete(). 895 * error, qc->result_tf is later overwritten by ata_qc_complete().
894 * So, the correctness of qc->result_tf is not affected. 896 * So, the correctness of qc->result_tf is not affected.
895 */ 897 */
896 ap->ops->tf_read(ap, &qc->result_tf); 898 ap->ops->sff_tf_read(ap, &qc->result_tf);
897 ireason = qc->result_tf.nsect; 899 ireason = qc->result_tf.nsect;
898 bc_lo = qc->result_tf.lbam; 900 bc_lo = qc->result_tf.lbam;
899 bc_hi = qc->result_tf.lbah; 901 bc_hi = qc->result_tf.lbah;
@@ -979,7 +981,7 @@ static void ata_hsm_qc_complete(struct ata_queued_cmd *qc, int in_wq)
979 qc = ata_qc_from_tag(ap, qc->tag); 981 qc = ata_qc_from_tag(ap, qc->tag);
980 if (qc) { 982 if (qc) {
981 if (likely(!(qc->err_mask & AC_ERR_HSM))) { 983 if (likely(!(qc->err_mask & AC_ERR_HSM))) {
982 ap->ops->irq_on(ap); 984 ap->ops->sff_irq_on(ap);
983 ata_qc_complete(qc); 985 ata_qc_complete(qc);
984 } else 986 } else
985 ata_port_freeze(ap); 987 ata_port_freeze(ap);
@@ -995,7 +997,7 @@ static void ata_hsm_qc_complete(struct ata_queued_cmd *qc, int in_wq)
995 } else { 997 } else {
996 if (in_wq) { 998 if (in_wq) {
997 spin_lock_irqsave(ap->lock, flags); 999 spin_lock_irqsave(ap->lock, flags);
998 ap->ops->irq_on(ap); 1000 ap->ops->sff_irq_on(ap);
999 ata_qc_complete(qc); 1001 ata_qc_complete(qc);
1000 spin_unlock_irqrestore(ap->lock, flags); 1002 spin_unlock_irqrestore(ap->lock, flags);
1001 } else 1003 } else
@@ -1345,7 +1347,7 @@ unsigned int ata_sff_qc_issue(struct ata_queued_cmd *qc)
1345 case ATA_PROT_DMA: 1347 case ATA_PROT_DMA:
1346 WARN_ON(qc->tf.flags & ATA_TFLAG_POLLING); 1348 WARN_ON(qc->tf.flags & ATA_TFLAG_POLLING);
1347 1349
1348 ap->ops->tf_load(ap, &qc->tf); /* load tf registers */ 1350 ap->ops->sff_tf_load(ap, &qc->tf); /* load tf registers */
1349 ap->ops->bmdma_setup(qc); /* set up bmdma */ 1351 ap->ops->bmdma_setup(qc); /* set up bmdma */
1350 ap->ops->bmdma_start(qc); /* initiate bmdma */ 1352 ap->ops->bmdma_start(qc); /* initiate bmdma */
1351 ap->hsm_task_state = HSM_ST_LAST; 1353 ap->hsm_task_state = HSM_ST_LAST;
@@ -1397,7 +1399,7 @@ unsigned int ata_sff_qc_issue(struct ata_queued_cmd *qc)
1397 case ATAPI_PROT_DMA: 1399 case ATAPI_PROT_DMA:
1398 WARN_ON(qc->tf.flags & ATA_TFLAG_POLLING); 1400 WARN_ON(qc->tf.flags & ATA_TFLAG_POLLING);
1399 1401
1400 ap->ops->tf_load(ap, &qc->tf); /* load tf registers */ 1402 ap->ops->sff_tf_load(ap, &qc->tf); /* load tf registers */
1401 ap->ops->bmdma_setup(qc); /* set up bmdma */ 1403 ap->ops->bmdma_setup(qc); /* set up bmdma */
1402 ap->hsm_task_state = HSM_ST_FIRST; 1404 ap->hsm_task_state = HSM_ST_FIRST;
1403 1405
@@ -1486,12 +1488,12 @@ inline unsigned int ata_sff_host_intr(struct ata_port *ap,
1486 goto idle_irq; 1488 goto idle_irq;
1487 1489
1488 /* check main status, clearing INTRQ */ 1490 /* check main status, clearing INTRQ */
1489 status = ap->ops->check_status(ap); 1491 status = ap->ops->sff_check_status(ap);
1490 if (unlikely(status & ATA_BUSY)) 1492 if (unlikely(status & ATA_BUSY))
1491 goto idle_irq; 1493 goto idle_irq;
1492 1494
1493 /* ack bmdma irq events */ 1495 /* ack bmdma irq events */
1494 ap->ops->irq_clear(ap); 1496 ap->ops->sff_irq_clear(ap);
1495 1497
1496 ata_sff_hsm_move(ap, qc, status, 0); 1498 ata_sff_hsm_move(ap, qc, status, 0);
1497 1499
@@ -1506,8 +1508,8 @@ idle_irq:
1506 1508
1507#ifdef ATA_IRQ_TRAP 1509#ifdef ATA_IRQ_TRAP
1508 if ((ap->stats.idle_irq % 1000) == 0) { 1510 if ((ap->stats.idle_irq % 1000) == 0) {
1509 ap->ops->check_status(ap); 1511 ap->ops->sff_check_status(ap);
1510 ap->ops->irq_clear(ap); 1512 ap->ops->sff_irq_clear(ap);
1511 ata_port_printk(ap, KERN_WARNING, "irq trap\n"); 1513 ata_port_printk(ap, KERN_WARNING, "irq trap\n");
1512 return 1; 1514 return 1;
1513 } 1515 }
@@ -1582,9 +1584,9 @@ void ata_sff_freeze(struct ata_port *ap)
1582 * ATA_NIEN manipulation. Also, many controllers fail to mask 1584 * ATA_NIEN manipulation. Also, many controllers fail to mask
1583 * previously pending IRQ on ATA_NIEN assertion. Clear it. 1585 * previously pending IRQ on ATA_NIEN assertion. Clear it.
1584 */ 1586 */
1585 ap->ops->check_status(ap); 1587 ap->ops->sff_check_status(ap);
1586 1588
1587 ap->ops->irq_clear(ap); 1589 ap->ops->sff_irq_clear(ap);
1588} 1590}
1589 1591
1590/** 1592/**
@@ -1599,9 +1601,9 @@ void ata_sff_freeze(struct ata_port *ap)
1599void ata_sff_thaw(struct ata_port *ap) 1601void ata_sff_thaw(struct ata_port *ap)
1600{ 1602{
1601 /* clear & re-enable interrupts */ 1603 /* clear & re-enable interrupts */
1602 ap->ops->check_status(ap); 1604 ap->ops->sff_check_status(ap);
1603 ap->ops->irq_clear(ap); 1605 ap->ops->sff_irq_clear(ap);
1604 ap->ops->irq_on(ap); 1606 ap->ops->sff_irq_on(ap);
1605} 1607}
1606 1608
1607/** 1609/**
@@ -1626,7 +1628,7 @@ static unsigned int ata_devchk(struct ata_port *ap, unsigned int device)
1626 struct ata_ioports *ioaddr = &ap->ioaddr; 1628 struct ata_ioports *ioaddr = &ap->ioaddr;
1627 u8 nsect, lbal; 1629 u8 nsect, lbal;
1628 1630
1629 ap->ops->dev_select(ap, device); 1631 ap->ops->sff_dev_select(ap, device);
1630 1632
1631 iowrite8(0x55, ioaddr->nsect_addr); 1633 iowrite8(0x55, ioaddr->nsect_addr);
1632 iowrite8(0xaa, ioaddr->lbal_addr); 1634 iowrite8(0xaa, ioaddr->lbal_addr);
@@ -1675,11 +1677,11 @@ unsigned int ata_sff_dev_classify(struct ata_device *dev, int present,
1675 unsigned int class; 1677 unsigned int class;
1676 u8 err; 1678 u8 err;
1677 1679
1678 ap->ops->dev_select(ap, dev->devno); 1680 ap->ops->sff_dev_select(ap, dev->devno);
1679 1681
1680 memset(&tf, 0, sizeof(tf)); 1682 memset(&tf, 0, sizeof(tf));
1681 1683
1682 ap->ops->tf_read(ap, &tf); 1684 ap->ops->sff_tf_read(ap, &tf);
1683 err = tf.feature; 1685 err = tf.feature;
1684 if (r_err) 1686 if (r_err)
1685 *r_err = err; 1687 *r_err = err;
@@ -1709,7 +1711,8 @@ unsigned int ata_sff_dev_classify(struct ata_device *dev, int present,
1709 class = ATA_DEV_ATA; 1711 class = ATA_DEV_ATA;
1710 else 1712 else
1711 class = ATA_DEV_NONE; 1713 class = ATA_DEV_NONE;
1712 } else if ((class == ATA_DEV_ATA) && (ap->ops->check_status(ap) == 0)) 1714 } else if ((class == ATA_DEV_ATA) &&
1715 (ap->ops->sff_check_status(ap) == 0))
1713 class = ATA_DEV_NONE; 1716 class = ATA_DEV_NONE;
1714 1717
1715 return class; 1718 return class;
@@ -1741,7 +1744,7 @@ static int ata_bus_post_reset(struct ata_port *ap, unsigned int devmask,
1741 if (dev1) { 1744 if (dev1) {
1742 int i; 1745 int i;
1743 1746
1744 ap->ops->dev_select(ap, 1); 1747 ap->ops->sff_dev_select(ap, 1);
1745 1748
1746 /* Wait for register access. Some ATAPI devices fail 1749 /* Wait for register access. Some ATAPI devices fail
1747 * to set nsect/lbal after reset, so don't waste too 1750 * to set nsect/lbal after reset, so don't waste too
@@ -1766,11 +1769,11 @@ static int ata_bus_post_reset(struct ata_port *ap, unsigned int devmask,
1766 } 1769 }
1767 1770
1768 /* is all this really necessary? */ 1771 /* is all this really necessary? */
1769 ap->ops->dev_select(ap, 0); 1772 ap->ops->sff_dev_select(ap, 0);
1770 if (dev1) 1773 if (dev1)
1771 ap->ops->dev_select(ap, 1); 1774 ap->ops->sff_dev_select(ap, 1);
1772 if (dev0) 1775 if (dev0)
1773 ap->ops->dev_select(ap, 0); 1776 ap->ops->sff_dev_select(ap, 0);
1774 1777
1775 return ret; 1778 return ret;
1776} 1779}
@@ -1820,7 +1823,7 @@ void ata_sff_wait_after_reset(struct ata_port *ap, unsigned long deadline)
1820 */ 1823 */
1821 if (ap->flags & ATA_FLAG_SATA) { 1824 if (ap->flags & ATA_FLAG_SATA) {
1822 while (1) { 1825 while (1) {
1823 u8 status = ap->ops->check_status(ap); 1826 u8 status = ap->ops->sff_check_status(ap);
1824 1827
1825 if (status != 0xff || time_after(jiffies, deadline)) 1828 if (status != 0xff || time_after(jiffies, deadline))
1826 return; 1829 return;
@@ -1851,7 +1854,7 @@ static int ata_bus_softreset(struct ata_port *ap, unsigned int devmask,
1851 * the bus shows 0xFF because the odd clown forgets the D7 1854 * the bus shows 0xFF because the odd clown forgets the D7
1852 * pulldown resistor. 1855 * pulldown resistor.
1853 */ 1856 */
1854 if (ap->ops->check_status(ap) == 0xFF) 1857 if (ap->ops->sff_check_status(ap) == 0xFF)
1855 return -ENODEV; 1858 return -ENODEV;
1856 1859
1857 return ata_bus_post_reset(ap, devmask, deadline); 1860 return ata_bus_post_reset(ap, devmask, deadline);
@@ -1894,7 +1897,7 @@ int ata_sff_softreset(struct ata_link *link, unsigned int *classes,
1894 devmask |= (1 << 1); 1897 devmask |= (1 << 1);
1895 1898
1896 /* select device 0 again */ 1899 /* select device 0 again */
1897 ap->ops->dev_select(ap, 0); 1900 ap->ops->sff_dev_select(ap, 0);
1898 1901
1899 /* issue bus reset */ 1902 /* issue bus reset */
1900 DPRINTK("about to softreset, devmask=%x\n", devmask); 1903 DPRINTK("about to softreset, devmask=%x\n", devmask);
@@ -1977,7 +1980,7 @@ int sata_sff_hardreset(struct ata_link *link, unsigned int *class,
1977 return rc; 1980 return rc;
1978 } 1981 }
1979 1982
1980 ap->ops->dev_select(ap, 0); /* probably unnecessary */ 1983 ap->ops->sff_dev_select(ap, 0); /* probably unnecessary */
1981 1984
1982 *class = ata_sff_dev_classify(link->device, 1, NULL); 1985 *class = ata_sff_dev_classify(link->device, 1, NULL);
1983 1986
@@ -2035,8 +2038,8 @@ void ata_sff_error_handler(struct ata_port *ap)
2035 } 2038 }
2036 2039
2037 ata_sff_altstatus(ap); 2040 ata_sff_altstatus(ap);
2038 ap->ops->check_status(ap); 2041 ap->ops->sff_check_status(ap);
2039 ap->ops->irq_clear(ap); 2042 ap->ops->sff_irq_clear(ap);
2040 2043
2041 spin_unlock_irqrestore(ap->lock, flags); 2044 spin_unlock_irqrestore(ap->lock, flags);
2042 2045
@@ -2153,7 +2156,7 @@ void ata_bmdma_setup(struct ata_queued_cmd *qc)
2153 iowrite8(dmactl, ap->ioaddr.bmdma_addr + ATA_DMA_CMD); 2156 iowrite8(dmactl, ap->ioaddr.bmdma_addr + ATA_DMA_CMD);
2154 2157
2155 /* issue r/w command */ 2158 /* issue r/w command */
2156 ap->ops->exec_command(ap, &qc->tf); 2159 ap->ops->sff_exec_command(ap, &qc->tf);
2157} 2160}
2158 2161
2159/** 2162/**
@@ -2277,7 +2280,7 @@ void ata_bus_reset(struct ata_port *ap)
2277 devmask |= (1 << 1); 2280 devmask |= (1 << 1);
2278 2281
2279 /* select device 0 again */ 2282 /* select device 0 again */
2280 ap->ops->dev_select(ap, 0); 2283 ap->ops->sff_dev_select(ap, 0);
2281 2284
2282 /* issue bus reset */ 2285 /* issue bus reset */
2283 if (ap->flags & ATA_FLAG_SRST) { 2286 if (ap->flags & ATA_FLAG_SRST) {
@@ -2295,9 +2298,9 @@ void ata_bus_reset(struct ata_port *ap)
2295 2298
2296 /* is double-select really necessary? */ 2299 /* is double-select really necessary? */
2297 if (device[1].class != ATA_DEV_NONE) 2300 if (device[1].class != ATA_DEV_NONE)
2298 ap->ops->dev_select(ap, 1); 2301 ap->ops->sff_dev_select(ap, 1);
2299 if (device[0].class != ATA_DEV_NONE) 2302 if (device[0].class != ATA_DEV_NONE)
2300 ap->ops->dev_select(ap, 0); 2303 ap->ops->sff_dev_select(ap, 0);
2301 2304
2302 /* if no devices were detected, disable this port */ 2305 /* if no devices were detected, disable this port */
2303 if ((device[0].class == ATA_DEV_NONE) && 2306 if ((device[0].class == ATA_DEV_NONE) &&
diff --git a/drivers/ata/pata_bf54x.c b/drivers/ata/pata_bf54x.c
index c854e882d4a9..d98bd7455e6b 100644
--- a/drivers/ata/pata_bf54x.c
+++ b/drivers/ata/pata_bf54x.c
@@ -1264,7 +1264,7 @@ static void bfin_freeze(struct ata_port *ap)
1264 * ATA_NIEN manipulation. Also, many controllers fail to mask 1264 * ATA_NIEN manipulation. Also, many controllers fail to mask
1265 * previously pending IRQ on ATA_NIEN assertion. Clear it. 1265 * previously pending IRQ on ATA_NIEN assertion. Clear it.
1266 */ 1266 */
1267 ap->ops->check_status(ap); 1267 ap->ops->sff_check_status(ap);
1268 1268
1269 bfin_irq_clear(ap); 1269 bfin_irq_clear(ap);
1270} 1270}
@@ -1357,18 +1357,18 @@ static const struct ata_port_operations bfin_pata_ops = {
1357 .set_piomode = bfin_set_piomode, 1357 .set_piomode = bfin_set_piomode,
1358 .set_dmamode = bfin_set_dmamode, 1358 .set_dmamode = bfin_set_dmamode,
1359 1359
1360 .tf_load = bfin_tf_load, 1360 .sff_tf_load = bfin_tf_load,
1361 .tf_read = bfin_tf_read, 1361 .sff_tf_read = bfin_tf_read,
1362 .exec_command = bfin_exec_command, 1362 .sff_exec_command = bfin_exec_command,
1363 .check_status = bfin_check_status, 1363 .sff_check_status = bfin_check_status,
1364 .check_altstatus = bfin_check_altstatus, 1364 .sff_check_altstatus = bfin_check_altstatus,
1365 .dev_select = bfin_dev_select, 1365 .sff_dev_select = bfin_dev_select,
1366 1366
1367 .bmdma_setup = bfin_bmdma_setup, 1367 .bmdma_setup = bfin_bmdma_setup,
1368 .bmdma_start = bfin_bmdma_start, 1368 .bmdma_start = bfin_bmdma_start,
1369 .bmdma_stop = bfin_bmdma_stop, 1369 .bmdma_stop = bfin_bmdma_stop,
1370 .bmdma_status = bfin_bmdma_status, 1370 .bmdma_status = bfin_bmdma_status,
1371 .data_xfer = bfin_data_xfer, 1371 .sff_data_xfer = bfin_data_xfer,
1372 1372
1373 .qc_prep = ata_noop_qc_prep, 1373 .qc_prep = ata_noop_qc_prep,
1374 1374
@@ -1378,8 +1378,8 @@ static const struct ata_port_operations bfin_pata_ops = {
1378 .postreset = bfin_postreset, 1378 .postreset = bfin_postreset,
1379 .post_internal_cmd = bfin_bmdma_stop, 1379 .post_internal_cmd = bfin_bmdma_stop,
1380 1380
1381 .irq_clear = bfin_irq_clear, 1381 .sff_irq_clear = bfin_irq_clear,
1382 .irq_on = bfin_irq_on, 1382 .sff_irq_on = bfin_irq_on,
1383 1383
1384 .port_start = bfin_port_start, 1384 .port_start = bfin_port_start,
1385 .port_stop = bfin_port_stop, 1385 .port_stop = bfin_port_stop,
diff --git a/drivers/ata/pata_cmd640.c b/drivers/ata/pata_cmd640.c
index a907cf478891..2de30b990278 100644
--- a/drivers/ata/pata_cmd640.c
+++ b/drivers/ata/pata_cmd640.c
@@ -172,7 +172,7 @@ static struct scsi_host_template cmd640_sht = {
172static struct ata_port_operations cmd640_port_ops = { 172static struct ata_port_operations cmd640_port_ops = {
173 .inherits = &ata_bmdma_port_ops, 173 .inherits = &ata_bmdma_port_ops,
174 /* In theory xfer_noirq is not needed once we kill the prefetcher */ 174 /* In theory xfer_noirq is not needed once we kill the prefetcher */
175 .data_xfer = ata_sff_data_xfer_noirq, 175 .sff_data_xfer = ata_sff_data_xfer_noirq,
176 .qc_issue = cmd640_qc_issue, 176 .qc_issue = cmd640_qc_issue,
177 .cable_detect = ata_cable_40wire, 177 .cable_detect = ata_cable_40wire,
178 .set_piomode = cmd640_set_piomode, 178 .set_piomode = cmd640_set_piomode,
diff --git a/drivers/ata/pata_icside.c b/drivers/ata/pata_icside.c
index 52de9f908fb0..17138436423d 100644
--- a/drivers/ata/pata_icside.c
+++ b/drivers/ata/pata_icside.c
@@ -250,7 +250,7 @@ static void pata_icside_bmdma_setup(struct ata_queued_cmd *qc)
250 set_dma_mode(state->dma, write ? DMA_MODE_WRITE : DMA_MODE_READ); 250 set_dma_mode(state->dma, write ? DMA_MODE_WRITE : DMA_MODE_READ);
251 251
252 /* issue r/w command */ 252 /* issue r/w command */
253 ap->ops->exec_command(ap, &qc->tf); 253 ap->ops->sff_exec_command(ap, &qc->tf);
254} 254}
255 255
256static void pata_icside_bmdma_start(struct ata_queued_cmd *qc) 256static void pata_icside_bmdma_start(struct ata_queued_cmd *qc)
@@ -336,7 +336,7 @@ static struct ata_port_operations pata_icside_port_ops = {
336 .inherits = &ata_sff_port_ops, 336 .inherits = &ata_sff_port_ops,
337 /* no need to build any PRD tables for DMA */ 337 /* no need to build any PRD tables for DMA */
338 .qc_prep = ata_noop_qc_prep, 338 .qc_prep = ata_noop_qc_prep,
339 .data_xfer = ata_sff_data_xfer_noirq, 339 .sff_data_xfer = ata_sff_data_xfer_noirq,
340 .bmdma_setup = pata_icside_bmdma_setup, 340 .bmdma_setup = pata_icside_bmdma_setup,
341 .bmdma_start = pata_icside_bmdma_start, 341 .bmdma_start = pata_icside_bmdma_start,
342 .bmdma_stop = pata_icside_bmdma_stop, 342 .bmdma_stop = pata_icside_bmdma_stop,
diff --git a/drivers/ata/pata_it821x.c b/drivers/ata/pata_it821x.c
index 88e37cfcfc4f..e10816931b2f 100644
--- a/drivers/ata/pata_it821x.c
+++ b/drivers/ata/pata_it821x.c
@@ -652,7 +652,7 @@ static struct ata_port_operations it821x_passthru_port_ops = {
652 .inherits = &ata_bmdma_port_ops, 652 .inherits = &ata_bmdma_port_ops,
653 653
654 .check_atapi_dma= it821x_check_atapi_dma, 654 .check_atapi_dma= it821x_check_atapi_dma,
655 .dev_select = it821x_passthru_dev_select, 655 .sff_dev_select = it821x_passthru_dev_select,
656 .bmdma_start = it821x_passthru_bmdma_start, 656 .bmdma_start = it821x_passthru_bmdma_start,
657 .bmdma_stop = it821x_passthru_bmdma_stop, 657 .bmdma_stop = it821x_passthru_bmdma_stop,
658 .qc_issue = it821x_passthru_qc_issue, 658 .qc_issue = it821x_passthru_qc_issue,
diff --git a/drivers/ata/pata_ixp4xx_cf.c b/drivers/ata/pata_ixp4xx_cf.c
index 283a8fba79b3..8a175f23b907 100644
--- a/drivers/ata/pata_ixp4xx_cf.c
+++ b/drivers/ata/pata_ixp4xx_cf.c
@@ -93,7 +93,7 @@ static struct scsi_host_template ixp4xx_sht = {
93 93
94static struct ata_port_operations ixp4xx_port_ops = { 94static struct ata_port_operations ixp4xx_port_ops = {
95 .inherits = &ata_sff_port_ops, 95 .inherits = &ata_sff_port_ops,
96 .data_xfer = ixp4xx_mmio_data_xfer, 96 .sff_data_xfer = ixp4xx_mmio_data_xfer,
97 .cable_detect = ata_cable_40wire, 97 .cable_detect = ata_cable_40wire,
98 .set_mode = ixp4xx_set_mode, 98 .set_mode = ixp4xx_set_mode,
99}; 99};
diff --git a/drivers/ata/pata_legacy.c b/drivers/ata/pata_legacy.c
index f13f10a55ef3..7af4b29cc422 100644
--- a/drivers/ata/pata_legacy.c
+++ b/drivers/ata/pata_legacy.c
@@ -226,12 +226,12 @@ static const struct ata_port_operations legacy_base_port_ops = {
226 226
227static struct ata_port_operations simple_port_ops = { 227static struct ata_port_operations simple_port_ops = {
228 .inherits = &legacy_base_port_ops, 228 .inherits = &legacy_base_port_ops,
229 .data_xfer = ata_sff_data_xfer_noirq, 229 .sff_data_xfer = ata_sff_data_xfer_noirq,
230}; 230};
231 231
232static struct ata_port_operations legacy_port_ops = { 232static struct ata_port_operations legacy_port_ops = {
233 .inherits = &legacy_base_port_ops, 233 .inherits = &legacy_base_port_ops,
234 .data_xfer = ata_sff_data_xfer_noirq, 234 .sff_data_xfer = ata_sff_data_xfer_noirq,
235 .set_mode = legacy_set_mode, 235 .set_mode = legacy_set_mode,
236}; 236};
237 237
@@ -325,7 +325,7 @@ static unsigned int pdc_data_xfer_vlb(struct ata_device *dev,
325static struct ata_port_operations pdc20230_port_ops = { 325static struct ata_port_operations pdc20230_port_ops = {
326 .inherits = &legacy_base_port_ops, 326 .inherits = &legacy_base_port_ops,
327 .set_piomode = pdc20230_set_piomode, 327 .set_piomode = pdc20230_set_piomode,
328 .data_xfer = pdc_data_xfer_vlb, 328 .sff_data_xfer = pdc_data_xfer_vlb,
329}; 329};
330 330
331/* 331/*
@@ -775,19 +775,19 @@ static struct ata_port_operations qdi6500_port_ops = {
775 .inherits = &legacy_base_port_ops, 775 .inherits = &legacy_base_port_ops,
776 .set_piomode = qdi6500_set_piomode, 776 .set_piomode = qdi6500_set_piomode,
777 .qc_issue = qdi_qc_issue, 777 .qc_issue = qdi_qc_issue,
778 .data_xfer = vlb32_data_xfer, 778 .sff_data_xfer = vlb32_data_xfer,
779}; 779};
780 780
781static struct ata_port_operations qdi6580_port_ops = { 781static struct ata_port_operations qdi6580_port_ops = {
782 .inherits = &legacy_base_port_ops, 782 .inherits = &legacy_base_port_ops,
783 .set_piomode = qdi6580_set_piomode, 783 .set_piomode = qdi6580_set_piomode,
784 .data_xfer = vlb32_data_xfer, 784 .sff_data_xfer = vlb32_data_xfer,
785}; 785};
786 786
787static struct ata_port_operations qdi6580dp_port_ops = { 787static struct ata_port_operations qdi6580dp_port_ops = {
788 .inherits = &legacy_base_port_ops, 788 .inherits = &legacy_base_port_ops,
789 .set_piomode = qdi6580dp_set_piomode, 789 .set_piomode = qdi6580dp_set_piomode,
790 .data_xfer = vlb32_data_xfer, 790 .sff_data_xfer = vlb32_data_xfer,
791}; 791};
792 792
793static DEFINE_SPINLOCK(winbond_lock); 793static DEFINE_SPINLOCK(winbond_lock);
@@ -858,7 +858,7 @@ static int winbond_port(struct platform_device *dev,
858static struct ata_port_operations winbond_port_ops = { 858static struct ata_port_operations winbond_port_ops = {
859 .inherits = &legacy_base_port_ops, 859 .inherits = &legacy_base_port_ops,
860 .set_piomode = winbond_set_piomode, 860 .set_piomode = winbond_set_piomode,
861 .data_xfer = vlb32_data_xfer, 861 .sff_data_xfer = vlb32_data_xfer,
862}; 862};
863 863
864static struct legacy_controller controllers[] = { 864static struct legacy_controller controllers[] = {
diff --git a/drivers/ata/pata_mpc52xx.c b/drivers/ata/pata_mpc52xx.c
index 5d1d32a39c4d..bc79df6e7cb0 100644
--- a/drivers/ata/pata_mpc52xx.c
+++ b/drivers/ata/pata_mpc52xx.c
@@ -261,7 +261,7 @@ static struct scsi_host_template mpc52xx_ata_sht = {
261 261
262static struct ata_port_operations mpc52xx_ata_port_ops = { 262static struct ata_port_operations mpc52xx_ata_port_ops = {
263 .inherits = &ata_sff_port_ops, 263 .inherits = &ata_sff_port_ops,
264 .dev_select = mpc52xx_ata_dev_select, 264 .sff_dev_select = mpc52xx_ata_dev_select,
265 .cable_detect = ata_cable_40wire, 265 .cable_detect = ata_cable_40wire,
266 .set_piomode = mpc52xx_ata_set_piomode, 266 .set_piomode = mpc52xx_ata_set_piomode,
267 .post_internal_cmd = ATA_OP_NULL, 267 .post_internal_cmd = ATA_OP_NULL,
diff --git a/drivers/ata/pata_ninja32.c b/drivers/ata/pata_ninja32.c
index c9c0ea67c71a..565e67cd13fa 100644
--- a/drivers/ata/pata_ninja32.c
+++ b/drivers/ata/pata_ninja32.c
@@ -84,7 +84,7 @@ static struct scsi_host_template ninja32_sht = {
84 84
85static struct ata_port_operations ninja32_port_ops = { 85static struct ata_port_operations ninja32_port_ops = {
86 .inherits = &ata_bmdma_port_ops, 86 .inherits = &ata_bmdma_port_ops,
87 .dev_select = ninja32_dev_select, 87 .sff_dev_select = ninja32_dev_select,
88 .cable_detect = ata_cable_40wire, 88 .cable_detect = ata_cable_40wire,
89 .set_piomode = ninja32_set_piomode, 89 .set_piomode = ninja32_set_piomode,
90}; 90};
diff --git a/drivers/ata/pata_ns87415.c b/drivers/ata/pata_ns87415.c
index 03a52cefc010..ae92b0049bd5 100644
--- a/drivers/ata/pata_ns87415.c
+++ b/drivers/ata/pata_ns87415.c
@@ -138,7 +138,7 @@ static void ns87415_bmdma_setup(struct ata_queued_cmd *qc)
138 dmactl |= ATA_DMA_WR; 138 dmactl |= ATA_DMA_WR;
139 iowrite8(dmactl, ap->ioaddr.bmdma_addr + ATA_DMA_CMD); 139 iowrite8(dmactl, ap->ioaddr.bmdma_addr + ATA_DMA_CMD);
140 /* issue r/w command */ 140 /* issue r/w command */
141 ap->ops->exec_command(ap, &qc->tf); 141 ap->ops->sff_exec_command(ap, &qc->tf);
142} 142}
143 143
144/** 144/**
@@ -306,7 +306,7 @@ static struct ata_port_operations ns87415_pata_ops = {
306 .bmdma_setup = ns87415_bmdma_setup, 306 .bmdma_setup = ns87415_bmdma_setup,
307 .bmdma_start = ns87415_bmdma_start, 307 .bmdma_start = ns87415_bmdma_start,
308 .bmdma_stop = ns87415_bmdma_stop, 308 .bmdma_stop = ns87415_bmdma_stop,
309 .irq_clear = ns87415_irq_clear, 309 .sff_irq_clear = ns87415_irq_clear,
310 310
311 .cable_detect = ata_cable_40wire, 311 .cable_detect = ata_cable_40wire,
312 .set_piomode = ns87415_set_piomode, 312 .set_piomode = ns87415_set_piomode,
@@ -315,8 +315,8 @@ static struct ata_port_operations ns87415_pata_ops = {
315#if defined(CONFIG_SUPERIO) 315#if defined(CONFIG_SUPERIO)
316static struct ata_port_operations ns87560_pata_ops = { 316static struct ata_port_operations ns87560_pata_ops = {
317 .inherits = &ns87415_pata_ops, 317 .inherits = &ns87415_pata_ops,
318 .tf_read = ns87560_tf_read, 318 .sff_tf_read = ns87560_tf_read,
319 .check_status = ns87560_check_status, 319 .sff_check_status = ns87560_check_status,
320 .bmdma_status = ns87560_bmdma_status, 320 .bmdma_status = ns87560_bmdma_status,
321}; 321};
322#endif 322#endif
diff --git a/drivers/ata/pata_pcmcia.c b/drivers/ata/pata_pcmcia.c
index 2e206c5f869a..3d39f9dfec5a 100644
--- a/drivers/ata/pata_pcmcia.c
+++ b/drivers/ata/pata_pcmcia.c
@@ -133,14 +133,14 @@ static struct scsi_host_template pcmcia_sht = {
133 133
134static struct ata_port_operations pcmcia_port_ops = { 134static struct ata_port_operations pcmcia_port_ops = {
135 .inherits = &ata_sff_port_ops, 135 .inherits = &ata_sff_port_ops,
136 .data_xfer = ata_sff_data_xfer_noirq, 136 .sff_data_xfer = ata_sff_data_xfer_noirq,
137 .cable_detect = ata_cable_40wire, 137 .cable_detect = ata_cable_40wire,
138 .set_mode = pcmcia_set_mode, 138 .set_mode = pcmcia_set_mode,
139}; 139};
140 140
141static struct ata_port_operations pcmcia_8bit_port_ops = { 141static struct ata_port_operations pcmcia_8bit_port_ops = {
142 .inherits = &ata_sff_port_ops, 142 .inherits = &ata_sff_port_ops,
143 .data_xfer = ata_data_xfer_8bit, 143 .sff_data_xfer = ata_data_xfer_8bit,
144 .cable_detect = ata_cable_40wire, 144 .cable_detect = ata_cable_40wire,
145 .set_mode = pcmcia_set_mode_8bit, 145 .set_mode = pcmcia_set_mode_8bit,
146}; 146};
diff --git a/drivers/ata/pata_platform.c b/drivers/ata/pata_platform.c
index 1edfc13d05d2..6527c56c34a3 100644
--- a/drivers/ata/pata_platform.c
+++ b/drivers/ata/pata_platform.c
@@ -52,7 +52,7 @@ static struct scsi_host_template pata_platform_sht = {
52 52
53static struct ata_port_operations pata_platform_port_ops = { 53static struct ata_port_operations pata_platform_port_ops = {
54 .inherits = &ata_sff_port_ops, 54 .inherits = &ata_sff_port_ops,
55 .data_xfer = ata_sff_data_xfer_noirq, 55 .sff_data_xfer = ata_sff_data_xfer_noirq,
56 .cable_detect = ata_cable_unknown, 56 .cable_detect = ata_cable_unknown,
57 .set_mode = pata_platform_set_mode, 57 .set_mode = pata_platform_set_mode,
58 .port_start = ATA_OP_NULL, 58 .port_start = ATA_OP_NULL,
diff --git a/drivers/ata/pata_qdi.c b/drivers/ata/pata_qdi.c
index 0d81dd5fdc38..bf45cf017753 100644
--- a/drivers/ata/pata_qdi.c
+++ b/drivers/ata/pata_qdi.c
@@ -160,7 +160,7 @@ static struct scsi_host_template qdi_sht = {
160static struct ata_port_operations qdi6500_port_ops = { 160static struct ata_port_operations qdi6500_port_ops = {
161 .inherits = &ata_sff_port_ops, 161 .inherits = &ata_sff_port_ops,
162 .qc_issue = qdi_qc_issue, 162 .qc_issue = qdi_qc_issue,
163 .data_xfer = qdi_data_xfer, 163 .sff_data_xfer = qdi_data_xfer,
164 .cable_detect = ata_cable_40wire, 164 .cable_detect = ata_cable_40wire,
165 .set_piomode = qdi6500_set_piomode, 165 .set_piomode = qdi6500_set_piomode,
166}; 166};
diff --git a/drivers/ata/pata_rb500_cf.c b/drivers/ata/pata_rb500_cf.c
index 5b23d79bc92b..800ae4601f44 100644
--- a/drivers/ata/pata_rb500_cf.c
+++ b/drivers/ata/pata_rb500_cf.c
@@ -119,8 +119,8 @@ static irqreturn_t rb500_pata_irq_handler(int irq, void *dev_instance)
119 119
120static struct ata_port_operations rb500_pata_port_ops = { 120static struct ata_port_operations rb500_pata_port_ops = {
121 .inherits = &ata_sff_port_ops, 121 .inherits = &ata_sff_port_ops,
122 .exec_command = rb500_pata_exec_command, 122 .sff_exec_command = rb500_pata_exec_command,
123 .data_xfer = rb500_pata_data_xfer, 123 .sff_data_xfer = rb500_pata_data_xfer,
124 .freeze = rb500_pata_freeze, 124 .freeze = rb500_pata_freeze,
125 .thaw = rb500_pata_thaw, 125 .thaw = rb500_pata_thaw,
126}; 126};
diff --git a/drivers/ata/pata_scc.c b/drivers/ata/pata_scc.c
index 701d0addae73..2b9da715c704 100644
--- a/drivers/ata/pata_scc.c
+++ b/drivers/ata/pata_scc.c
@@ -441,7 +441,7 @@ static void scc_bmdma_setup (struct ata_queued_cmd *qc)
441 out_be32(mmio + SCC_DMA_CMD, dmactl); 441 out_be32(mmio + SCC_DMA_CMD, dmactl);
442 442
443 /* issue r/w command */ 443 /* issue r/w command */
444 ap->ops->exec_command(ap, &qc->tf); 444 ap->ops->sff_exec_command(ap, &qc->tf);
445} 445}
446 446
447/** 447/**
@@ -476,7 +476,7 @@ static unsigned int scc_devchk (struct ata_port *ap,
476 struct ata_ioports *ioaddr = &ap->ioaddr; 476 struct ata_ioports *ioaddr = &ap->ioaddr;
477 u8 nsect, lbal; 477 u8 nsect, lbal;
478 478
479 ap->ops->dev_select(ap, device); 479 ap->ops->sff_dev_select(ap, device);
480 480
481 out_be32(ioaddr->nsect_addr, 0x55); 481 out_be32(ioaddr->nsect_addr, 0x55);
482 out_be32(ioaddr->lbal_addr, 0xaa); 482 out_be32(ioaddr->lbal_addr, 0xaa);
@@ -525,7 +525,7 @@ static int scc_bus_post_reset(struct ata_port *ap, unsigned int devmask,
525 while (dev1) { 525 while (dev1) {
526 u8 nsect, lbal; 526 u8 nsect, lbal;
527 527
528 ap->ops->dev_select(ap, 1); 528 ap->ops->sff_dev_select(ap, 1);
529 nsect = in_be32(ioaddr->nsect_addr); 529 nsect = in_be32(ioaddr->nsect_addr);
530 lbal = in_be32(ioaddr->lbal_addr); 530 lbal = in_be32(ioaddr->lbal_addr);
531 if ((nsect == 1) && (lbal == 1)) 531 if ((nsect == 1) && (lbal == 1))
@@ -541,11 +541,11 @@ static int scc_bus_post_reset(struct ata_port *ap, unsigned int devmask,
541 } 541 }
542 542
543 /* is all this really necessary? */ 543 /* is all this really necessary? */
544 ap->ops->dev_select(ap, 0); 544 ap->ops->sff_dev_select(ap, 0);
545 if (dev1) 545 if (dev1)
546 ap->ops->dev_select(ap, 1); 546 ap->ops->sff_dev_select(ap, 1);
547 if (dev0) 547 if (dev0)
548 ap->ops->dev_select(ap, 0); 548 ap->ops->sff_dev_select(ap, 0);
549 549
550 return 0; 550 return 0;
551} 551}
@@ -616,7 +616,7 @@ static int scc_softreset(struct ata_link *link, unsigned int *classes,
616 devmask |= (1 << 1); 616 devmask |= (1 << 1);
617 617
618 /* select device 0 again */ 618 /* select device 0 again */
619 ap->ops->dev_select(ap, 0); 619 ap->ops->sff_dev_select(ap, 0);
620 620
621 /* issue bus reset */ 621 /* issue bus reset */
622 DPRINTK("about to softreset, devmask=%x\n", devmask); 622 DPRINTK("about to softreset, devmask=%x\n", devmask);
@@ -829,7 +829,7 @@ static u8 scc_irq_on (struct ata_port *ap)
829 out_be32(ioaddr->ctl_addr, ap->ctl); 829 out_be32(ioaddr->ctl_addr, ap->ctl);
830 tmp = ata_wait_idle(ap); 830 tmp = ata_wait_idle(ap);
831 831
832 ap->ops->irq_clear(ap); 832 ap->ops->sff_irq_clear(ap);
833 833
834 return tmp; 834 return tmp;
835} 835}
@@ -854,9 +854,9 @@ static void scc_freeze (struct ata_port *ap)
854 * ATA_NIEN manipulation. Also, many controllers fail to mask 854 * ATA_NIEN manipulation. Also, many controllers fail to mask
855 * previously pending IRQ on ATA_NIEN assertion. Clear it. 855 * previously pending IRQ on ATA_NIEN assertion. Clear it.
856 */ 856 */
857 ap->ops->check_status(ap); 857 ap->ops->sff_check_status(ap);
858 858
859 ap->ops->irq_clear(ap); 859 ap->ops->sff_irq_clear(ap);
860} 860}
861 861
862/** 862/**
@@ -887,9 +887,9 @@ static void scc_postreset(struct ata_link *link, unsigned int *classes)
887 887
888 /* is double-select really necessary? */ 888 /* is double-select really necessary? */
889 if (classes[0] != ATA_DEV_NONE) 889 if (classes[0] != ATA_DEV_NONE)
890 ap->ops->dev_select(ap, 1); 890 ap->ops->sff_dev_select(ap, 1);
891 if (classes[1] != ATA_DEV_NONE) 891 if (classes[1] != ATA_DEV_NONE)
892 ap->ops->dev_select(ap, 0); 892 ap->ops->sff_dev_select(ap, 0);
893 893
894 /* bail out if no device is present */ 894 /* bail out if no device is present */
895 if (classes[0] == ATA_DEV_NONE && classes[1] == ATA_DEV_NONE) { 895 if (classes[0] == ATA_DEV_NONE && classes[1] == ATA_DEV_NONE) {
@@ -967,18 +967,18 @@ static struct ata_port_operations scc_pata_ops = {
967 .set_dmamode = scc_set_dmamode, 967 .set_dmamode = scc_set_dmamode,
968 .mode_filter = scc_mode_filter, 968 .mode_filter = scc_mode_filter,
969 969
970 .tf_load = scc_tf_load, 970 .sff_tf_load = scc_tf_load,
971 .tf_read = scc_tf_read, 971 .sff_tf_read = scc_tf_read,
972 .exec_command = scc_exec_command, 972 .sff_exec_command = scc_exec_command,
973 .check_status = scc_check_status, 973 .sff_check_status = scc_check_status,
974 .check_altstatus = scc_check_altstatus, 974 .sff_check_altstatus = scc_check_altstatus,
975 .dev_select = scc_dev_select, 975 .sff_dev_select = scc_dev_select,
976 976
977 .bmdma_setup = scc_bmdma_setup, 977 .bmdma_setup = scc_bmdma_setup,
978 .bmdma_start = scc_bmdma_start, 978 .bmdma_start = scc_bmdma_start,
979 .bmdma_stop = scc_bmdma_stop, 979 .bmdma_stop = scc_bmdma_stop,
980 .bmdma_status = scc_bmdma_status, 980 .bmdma_status = scc_bmdma_status,
981 .data_xfer = scc_data_xfer, 981 .sff_data_xfer = scc_data_xfer,
982 982
983 .freeze = scc_freeze, 983 .freeze = scc_freeze,
984 .prereset = scc_pata_prereset, 984 .prereset = scc_pata_prereset,
@@ -986,8 +986,8 @@ static struct ata_port_operations scc_pata_ops = {
986 .postreset = scc_postreset, 986 .postreset = scc_postreset,
987 .post_internal_cmd = scc_bmdma_stop, 987 .post_internal_cmd = scc_bmdma_stop,
988 988
989 .irq_clear = scc_irq_clear, 989 .sff_irq_clear = scc_irq_clear,
990 .irq_on = scc_irq_on, 990 .sff_irq_on = scc_irq_on,
991 991
992 .port_start = scc_port_start, 992 .port_start = scc_port_start,
993 .port_stop = scc_port_stop, 993 .port_stop = scc_port_stop,
diff --git a/drivers/ata/pata_via.c b/drivers/ata/pata_via.c
index 4b85f84fbe76..d4840748fb5c 100644
--- a/drivers/ata/pata_via.c
+++ b/drivers/ata/pata_via.c
@@ -336,7 +336,7 @@ static struct ata_port_operations via_port_ops = {
336 336
337static struct ata_port_operations via_port_ops_noirq = { 337static struct ata_port_operations via_port_ops_noirq = {
338 .inherits = &via_port_ops, 338 .inherits = &via_port_ops,
339 .data_xfer = ata_sff_data_xfer_noirq, 339 .sff_data_xfer = ata_sff_data_xfer_noirq,
340}; 340};
341 341
342/** 342/**
diff --git a/drivers/ata/pata_winbond.c b/drivers/ata/pata_winbond.c
index cc18231e9334..6e52a3573fbf 100644
--- a/drivers/ata/pata_winbond.c
+++ b/drivers/ata/pata_winbond.c
@@ -127,7 +127,7 @@ static struct scsi_host_template winbond_sht = {
127 127
128static struct ata_port_operations winbond_port_ops = { 128static struct ata_port_operations winbond_port_ops = {
129 .inherits = &ata_sff_port_ops, 129 .inherits = &ata_sff_port_ops,
130 .data_xfer = winbond_data_xfer, 130 .sff_data_xfer = winbond_data_xfer,
131 .cable_detect = ata_cable_40wire, 131 .cable_detect = ata_cable_40wire,
132 .set_piomode = winbond_set_piomode, 132 .set_piomode = winbond_set_piomode,
133}; 133};
diff --git a/drivers/ata/sata_fsl.c b/drivers/ata/sata_fsl.c
index 676302fdaa97..37482d4e883f 100644
--- a/drivers/ata/sata_fsl.c
+++ b/drivers/ata/sata_fsl.c
@@ -1190,10 +1190,10 @@ static struct scsi_host_template sata_fsl_sht = {
1190static const struct ata_port_operations sata_fsl_ops = { 1190static const struct ata_port_operations sata_fsl_ops = {
1191 .inherits = &sata_port_ops, 1191 .inherits = &sata_port_ops,
1192 1192
1193 .check_status = sata_fsl_check_status, 1193 .sff_check_status = sata_fsl_check_status,
1194 .check_altstatus = sata_fsl_check_status, 1194 .sff_check_altstatus = sata_fsl_check_status,
1195 1195
1196 .tf_read = sata_fsl_tf_read, 1196 .sff_tf_read = sata_fsl_tf_read,
1197 1197
1198 .qc_prep = sata_fsl_qc_prep, 1198 .qc_prep = sata_fsl_qc_prep,
1199 .qc_issue = sata_fsl_qc_issue, 1199 .qc_issue = sata_fsl_qc_issue,
diff --git a/drivers/ata/sata_inic162x.c b/drivers/ata/sata_inic162x.c
index 6e6fca4c20b6..0b5a736a45e3 100644
--- a/drivers/ata/sata_inic162x.c
+++ b/drivers/ata/sata_inic162x.c
@@ -222,7 +222,7 @@ static void inic_bmdma_setup(struct ata_queued_cmd *qc)
222 writeb(pp->cached_prdctl, port_base + PORT_PRD_CTL); 222 writeb(pp->cached_prdctl, port_base + PORT_PRD_CTL);
223 223
224 /* issue r/w command */ 224 /* issue r/w command */
225 ap->ops->exec_command(ap, &qc->tf); 225 ap->ops->sff_exec_command(ap, &qc->tf);
226} 226}
227 227
228static void inic_bmdma_start(struct ata_queued_cmd *qc) 228static void inic_bmdma_start(struct ata_queued_cmd *qc)
@@ -267,14 +267,14 @@ static void inic_host_intr(struct ata_port *ap)
267 ata_qc_from_tag(ap, ap->link.active_tag); 267 ata_qc_from_tag(ap, ap->link.active_tag);
268 268
269 if (unlikely(!qc || (qc->tf.flags & ATA_TFLAG_POLLING))) { 269 if (unlikely(!qc || (qc->tf.flags & ATA_TFLAG_POLLING))) {
270 ap->ops->check_status(ap); /* clear ATA interrupt */ 270 ap->ops->sff_check_status(ap); /* clear ATA interrupt */
271 return; 271 return;
272 } 272 }
273 273
274 if (likely(ata_sff_host_intr(ap, qc))) 274 if (likely(ata_sff_host_intr(ap, qc)))
275 return; 275 return;
276 276
277 ap->ops->check_status(ap); /* clear ATA interrupt */ 277 ap->ops->sff_check_status(ap); /* clear ATA interrupt */
278 ata_port_printk(ap, KERN_WARNING, "unhandled " 278 ata_port_printk(ap, KERN_WARNING, "unhandled "
279 "interrupt, irq_stat=%x\n", irq_stat); 279 "interrupt, irq_stat=%x\n", irq_stat);
280 return; 280 return;
@@ -351,7 +351,7 @@ static unsigned int inic_qc_issue(struct ata_queued_cmd *qc)
351 */ 351 */
352 if (unlikely(qc->tf.command == ATA_CMD_ID_ATA || 352 if (unlikely(qc->tf.command == ATA_CMD_ID_ATA ||
353 qc->tf.command == ATA_CMD_ID_ATAPI)) { 353 qc->tf.command == ATA_CMD_ID_ATAPI)) {
354 u8 stat = ap->ops->check_status(ap); 354 u8 stat = ap->ops->sff_check_status(ap);
355 if (stat == 0x7f || stat == 0xff) 355 if (stat == 0x7f || stat == 0xff)
356 return AC_ERR_HSM; 356 return AC_ERR_HSM;
357 } 357 }
@@ -365,7 +365,7 @@ static void inic_freeze(struct ata_port *ap)
365 365
366 __inic_set_pirq_mask(ap, PIRQ_MASK_FREEZE); 366 __inic_set_pirq_mask(ap, PIRQ_MASK_FREEZE);
367 367
368 ap->ops->check_status(ap); 368 ap->ops->sff_check_status(ap);
369 writeb(0xff, port_base + PORT_IRQ_STAT); 369 writeb(0xff, port_base + PORT_IRQ_STAT);
370 370
371 readb(port_base + PORT_IRQ_STAT); /* flush */ 371 readb(port_base + PORT_IRQ_STAT); /* flush */
@@ -375,7 +375,7 @@ static void inic_thaw(struct ata_port *ap)
375{ 375{
376 void __iomem *port_base = inic_port_base(ap); 376 void __iomem *port_base = inic_port_base(ap);
377 377
378 ap->ops->check_status(ap); 378 ap->ops->sff_check_status(ap);
379 writeb(0xff, port_base + PORT_IRQ_STAT); 379 writeb(0xff, port_base + PORT_IRQ_STAT);
380 380
381 __inic_set_pirq_mask(ap, PIRQ_MASK_OTHER); 381 __inic_set_pirq_mask(ap, PIRQ_MASK_OTHER);
diff --git a/drivers/ata/sata_nv.c b/drivers/ata/sata_nv.c
index 63cc43765f04..109b07495721 100644
--- a/drivers/ata/sata_nv.c
+++ b/drivers/ata/sata_nv.c
@@ -429,11 +429,11 @@ static struct ata_port_operations nv_adma_ops = {
429 .inherits = &nv_generic_ops, 429 .inherits = &nv_generic_ops,
430 430
431 .check_atapi_dma = nv_adma_check_atapi_dma, 431 .check_atapi_dma = nv_adma_check_atapi_dma,
432 .tf_read = nv_adma_tf_read, 432 .sff_tf_read = nv_adma_tf_read,
433 .qc_defer = ata_std_qc_defer, 433 .qc_defer = ata_std_qc_defer,
434 .qc_prep = nv_adma_qc_prep, 434 .qc_prep = nv_adma_qc_prep,
435 .qc_issue = nv_adma_qc_issue, 435 .qc_issue = nv_adma_qc_issue,
436 .irq_clear = nv_adma_irq_clear, 436 .sff_irq_clear = nv_adma_irq_clear,
437 437
438 .freeze = nv_adma_freeze, 438 .freeze = nv_adma_freeze,
439 .thaw = nv_adma_thaw, 439 .thaw = nv_adma_thaw,
@@ -1440,7 +1440,7 @@ static irqreturn_t nv_generic_interrupt(int irq, void *dev_instance)
1440 else 1440 else
1441 // No request pending? Clear interrupt status 1441 // No request pending? Clear interrupt status
1442 // anyway, in case there's one pending. 1442 // anyway, in case there's one pending.
1443 ap->ops->check_status(ap); 1443 ap->ops->sff_check_status(ap);
1444 } 1444 }
1445 1445
1446 } 1446 }
@@ -1739,7 +1739,7 @@ static void nv_swncq_ncq_stop(struct ata_port *ap)
1739 pp->dhfis_bits, pp->dmafis_bits, pp->sdbfis_bits); 1739 pp->dhfis_bits, pp->dmafis_bits, pp->sdbfis_bits);
1740 1740
1741 ata_port_printk(ap, KERN_ERR, "ATA_REG 0x%X ERR_REG 0x%X\n", 1741 ata_port_printk(ap, KERN_ERR, "ATA_REG 0x%X ERR_REG 0x%X\n",
1742 ap->ops->check_status(ap), 1742 ap->ops->sff_check_status(ap),
1743 ioread8(ap->ioaddr.error_addr)); 1743 ioread8(ap->ioaddr.error_addr));
1744 1744
1745 sactive = readl(pp->sactive_block); 1745 sactive = readl(pp->sactive_block);
@@ -1765,7 +1765,7 @@ static void nv_swncq_ncq_stop(struct ata_port *ap)
1765 } 1765 }
1766 1766
1767 nv_swncq_pp_reinit(ap); 1767 nv_swncq_pp_reinit(ap);
1768 ap->ops->irq_clear(ap); 1768 ap->ops->sff_irq_clear(ap);
1769 __ata_bmdma_stop(ap); 1769 __ata_bmdma_stop(ap);
1770 nv_swncq_irq_clear(ap, 0xffff); 1770 nv_swncq_irq_clear(ap, 0xffff);
1771} 1771}
@@ -1987,8 +1987,8 @@ static unsigned int nv_swncq_issue_atacmd(struct ata_port *ap,
1987 pp->dmafis_bits &= ~(1 << qc->tag); 1987 pp->dmafis_bits &= ~(1 << qc->tag);
1988 pp->qc_active |= (0x1 << qc->tag); 1988 pp->qc_active |= (0x1 << qc->tag);
1989 1989
1990 ap->ops->tf_load(ap, &qc->tf); /* load tf registers */ 1990 ap->ops->sff_tf_load(ap, &qc->tf); /* load tf registers */
1991 ap->ops->exec_command(ap, &qc->tf); 1991 ap->ops->sff_exec_command(ap, &qc->tf);
1992 1992
1993 DPRINTK("Issued tag %u\n", qc->tag); 1993 DPRINTK("Issued tag %u\n", qc->tag);
1994 1994
@@ -2060,7 +2060,7 @@ static int nv_swncq_sdbfis(struct ata_port *ap)
2060 return -EINVAL; 2060 return -EINVAL;
2061 } 2061 }
2062 2062
2063 ap->ops->irq_clear(ap); 2063 ap->ops->sff_irq_clear(ap);
2064 __ata_bmdma_stop(ap); 2064 __ata_bmdma_stop(ap);
2065 2065
2066 sactive = readl(pp->sactive_block); 2066 sactive = readl(pp->sactive_block);
@@ -2182,7 +2182,7 @@ static void nv_swncq_host_interrupt(struct ata_port *ap, u16 fis)
2182 u8 ata_stat; 2182 u8 ata_stat;
2183 int rc = 0; 2183 int rc = 0;
2184 2184
2185 ata_stat = ap->ops->check_status(ap); 2185 ata_stat = ap->ops->sff_check_status(ap);
2186 nv_swncq_irq_clear(ap, fis); 2186 nv_swncq_irq_clear(ap, fis);
2187 if (!fis) 2187 if (!fis)
2188 return; 2188 return;
@@ -2245,7 +2245,7 @@ static void nv_swncq_host_interrupt(struct ata_port *ap, u16 fis)
2245 2245
2246 if (!(fis & NV_SWNCQ_IRQ_DMASETUP) && 2246 if (!(fis & NV_SWNCQ_IRQ_DMASETUP) &&
2247 !(pp->ncq_flags & ncq_saw_dmas)) { 2247 !(pp->ncq_flags & ncq_saw_dmas)) {
2248 ata_stat = ap->ops->check_status(ap); 2248 ata_stat = ap->ops->sff_check_status(ap);
2249 if (ata_stat & ATA_BUSY) 2249 if (ata_stat & ATA_BUSY)
2250 goto irq_exit; 2250 goto irq_exit;
2251 2251
diff --git a/drivers/ata/sata_promise.c b/drivers/ata/sata_promise.c
index 9923e860eae3..5a10dc5048ad 100644
--- a/drivers/ata/sata_promise.c
+++ b/drivers/ata/sata_promise.c
@@ -162,12 +162,12 @@ static struct scsi_host_template pdc_ata_sht = {
162static const struct ata_port_operations pdc_common_ops = { 162static const struct ata_port_operations pdc_common_ops = {
163 .inherits = &ata_sff_port_ops, 163 .inherits = &ata_sff_port_ops,
164 164
165 .tf_load = pdc_tf_load_mmio, 165 .sff_tf_load = pdc_tf_load_mmio,
166 .exec_command = pdc_exec_command_mmio, 166 .sff_exec_command = pdc_exec_command_mmio,
167 .check_atapi_dma = pdc_check_atapi_dma, 167 .check_atapi_dma = pdc_check_atapi_dma,
168 .qc_prep = pdc_qc_prep, 168 .qc_prep = pdc_qc_prep,
169 .qc_issue = pdc_qc_issue, 169 .qc_issue = pdc_qc_issue,
170 .irq_clear = pdc_irq_clear, 170 .sff_irq_clear = pdc_irq_clear,
171 171
172 .post_internal_cmd = pdc_post_internal_cmd, 172 .post_internal_cmd = pdc_post_internal_cmd,
173 .error_handler = pdc_error_handler, 173 .error_handler = pdc_error_handler,
diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
index 987313b68f3b..88bf4212590f 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -369,7 +369,7 @@ static void sil_host_intr(struct ata_port *ap, u32 bmdma2)
369 369
370 if (unlikely(!qc || (qc->tf.flags & ATA_TFLAG_POLLING))) { 370 if (unlikely(!qc || (qc->tf.flags & ATA_TFLAG_POLLING))) {
371 /* this sometimes happens, just clear IRQ */ 371 /* this sometimes happens, just clear IRQ */
372 ap->ops->check_status(ap); 372 ap->ops->sff_check_status(ap);
373 return; 373 return;
374 } 374 }
375 375
@@ -405,7 +405,7 @@ static void sil_host_intr(struct ata_port *ap, u32 bmdma2)
405 } 405 }
406 406
407 /* check main status, clearing INTRQ */ 407 /* check main status, clearing INTRQ */
408 status = ap->ops->check_status(ap); 408 status = ap->ops->sff_check_status(ap);
409 if (unlikely(status & ATA_BUSY)) 409 if (unlikely(status & ATA_BUSY))
410 goto err_hsm; 410 goto err_hsm;
411 411
@@ -480,7 +480,7 @@ static void sil_thaw(struct ata_port *ap)
480 u32 tmp; 480 u32 tmp;
481 481
482 /* clear IRQ */ 482 /* clear IRQ */
483 ap->ops->check_status(ap); 483 ap->ops->sff_check_status(ap);
484 ata_sff_irq_clear(ap); 484 ata_sff_irq_clear(ap);
485 485
486 /* turn on SATA IRQ if supported */ 486 /* turn on SATA IRQ if supported */
diff --git a/drivers/ata/sata_sil24.c b/drivers/ata/sata_sil24.c
index 67df1d753305..b83851f6e068 100644
--- a/drivers/ata/sata_sil24.c
+++ b/drivers/ata/sata_sil24.c
@@ -401,9 +401,9 @@ static struct scsi_host_template sil24_sht = {
401static struct ata_port_operations sil24_ops = { 401static struct ata_port_operations sil24_ops = {
402 .inherits = &sata_pmp_port_ops, 402 .inherits = &sata_pmp_port_ops,
403 403
404 .check_status = sil24_check_status, 404 .sff_check_status = sil24_check_status,
405 .check_altstatus = sil24_check_status, 405 .sff_check_altstatus = sil24_check_status,
406 .tf_read = sil24_tf_read, 406 .sff_tf_read = sil24_tf_read,
407 .qc_defer = sil24_qc_defer, 407 .qc_defer = sil24_qc_defer,
408 .qc_prep = sil24_qc_prep, 408 .qc_prep = sil24_qc_prep,
409 .qc_issue = sil24_qc_issue, 409 .qc_issue = sil24_qc_issue,
diff --git a/drivers/ata/sata_svw.c b/drivers/ata/sata_svw.c
index 7b941106f7de..16aa6839aa5a 100644
--- a/drivers/ata/sata_svw.c
+++ b/drivers/ata/sata_svw.c
@@ -233,7 +233,7 @@ static void k2_bmdma_setup_mmio(struct ata_queued_cmd *qc)
233 233
234 /* issue r/w command if this is not a ATA DMA command*/ 234 /* issue r/w command if this is not a ATA DMA command*/
235 if (qc->tf.protocol != ATA_PROT_DMA) 235 if (qc->tf.protocol != ATA_PROT_DMA)
236 ap->ops->exec_command(ap, &qc->tf); 236 ap->ops->sff_exec_command(ap, &qc->tf);
237} 237}
238 238
239/** 239/**
@@ -269,7 +269,7 @@ static void k2_bmdma_start_mmio(struct ata_queued_cmd *qc)
269 and the start command. */ 269 and the start command. */
270 /* issue r/w command if the access is to ATA*/ 270 /* issue r/w command if the access is to ATA*/
271 if (qc->tf.protocol == ATA_PROT_DMA) 271 if (qc->tf.protocol == ATA_PROT_DMA)
272 ap->ops->exec_command(ap, &qc->tf); 272 ap->ops->sff_exec_command(ap, &qc->tf);
273} 273}
274 274
275 275
@@ -336,9 +336,9 @@ static struct scsi_host_template k2_sata_sht = {
336 336
337static struct ata_port_operations k2_sata_ops = { 337static struct ata_port_operations k2_sata_ops = {
338 .inherits = &ata_bmdma_port_ops, 338 .inherits = &ata_bmdma_port_ops,
339 .tf_load = k2_sata_tf_load, 339 .sff_tf_load = k2_sata_tf_load,
340 .tf_read = k2_sata_tf_read, 340 .sff_tf_read = k2_sata_tf_read,
341 .check_status = k2_stat_check_status, 341 .sff_check_status = k2_stat_check_status,
342 .check_atapi_dma = k2_sata_check_atapi_dma, 342 .check_atapi_dma = k2_sata_check_atapi_dma,
343 .bmdma_setup = k2_bmdma_setup_mmio, 343 .bmdma_setup = k2_bmdma_setup_mmio,
344 .bmdma_start = k2_bmdma_start_mmio, 344 .bmdma_start = k2_bmdma_start_mmio,
diff --git a/drivers/ata/sata_sx4.c b/drivers/ata/sata_sx4.c
index 40be2ff60902..6107eff731f3 100644
--- a/drivers/ata/sata_sx4.c
+++ b/drivers/ata/sata_sx4.c
@@ -243,18 +243,18 @@ static struct scsi_host_template pdc_sata_sht = {
243 243
244/* TODO: inherit from base port_ops after converting to new EH */ 244/* TODO: inherit from base port_ops after converting to new EH */
245static struct ata_port_operations pdc_20621_ops = { 245static struct ata_port_operations pdc_20621_ops = {
246 .tf_load = pdc_tf_load_mmio, 246 .sff_tf_load = pdc_tf_load_mmio,
247 .tf_read = ata_sff_tf_read, 247 .sff_tf_read = ata_sff_tf_read,
248 .check_status = ata_sff_check_status, 248 .sff_check_status = ata_sff_check_status,
249 .exec_command = pdc_exec_command_mmio, 249 .sff_exec_command = pdc_exec_command_mmio,
250 .dev_select = ata_sff_dev_select, 250 .sff_dev_select = ata_sff_dev_select,
251 .phy_reset = pdc_20621_phy_reset, 251 .phy_reset = pdc_20621_phy_reset,
252 .qc_prep = pdc20621_qc_prep, 252 .qc_prep = pdc20621_qc_prep,
253 .qc_issue = pdc20621_qc_issue, 253 .qc_issue = pdc20621_qc_issue,
254 .data_xfer = ata_sff_data_xfer, 254 .sff_data_xfer = ata_sff_data_xfer,
255 .eng_timeout = pdc_eng_timeout, 255 .eng_timeout = pdc_eng_timeout,
256 .irq_clear = pdc20621_irq_clear, 256 .sff_irq_clear = pdc20621_irq_clear,
257 .irq_on = ata_sff_irq_on, 257 .sff_irq_on = ata_sff_irq_on,
258 .port_start = pdc_port_start, 258 .port_start = pdc_port_start,
259}; 259};
260 260
diff --git a/drivers/ata/sata_via.c b/drivers/ata/sata_via.c
index 9323bc2a2785..e5df37689740 100644
--- a/drivers/ata/sata_via.c
+++ b/drivers/ata/sata_via.c
@@ -173,7 +173,7 @@ static void svia_noop_freeze(struct ata_port *ap)
173 /* Some VIA controllers choke if ATA_NIEN is manipulated in 173 /* Some VIA controllers choke if ATA_NIEN is manipulated in
174 * certain way. Leave it alone and just clear pending IRQ. 174 * certain way. Leave it alone and just clear pending IRQ.
175 */ 175 */
176 ap->ops->check_status(ap); 176 ap->ops->sff_check_status(ap);
177 ata_sff_irq_clear(ap); 177 ata_sff_irq_clear(ap);
178} 178}
179 179
diff --git a/drivers/ata/sata_vsc.c b/drivers/ata/sata_vsc.c
index 2c3c7693c750..f3d635c0a2e9 100644
--- a/drivers/ata/sata_vsc.c
+++ b/drivers/ata/sata_vsc.c
@@ -251,7 +251,7 @@ static void vsc_port_intr(u8 port_status, struct ata_port *ap)
251 * simply clear the interrupt 251 * simply clear the interrupt
252 */ 252 */
253 if (unlikely(!handled)) 253 if (unlikely(!handled))
254 ap->ops->check_status(ap); 254 ap->ops->sff_check_status(ap);
255} 255}
256 256
257/* 257/*
@@ -306,8 +306,8 @@ static struct scsi_host_template vsc_sata_sht = {
306 306
307static struct ata_port_operations vsc_sata_ops = { 307static struct ata_port_operations vsc_sata_ops = {
308 .inherits = &ata_bmdma_port_ops, 308 .inherits = &ata_bmdma_port_ops,
309 .tf_load = vsc_sata_tf_load, 309 .sff_tf_load = vsc_sata_tf_load,
310 .tf_read = vsc_sata_tf_read, 310 .sff_tf_read = vsc_sata_tf_read,
311 .freeze = vsc_freeze, 311 .freeze = vsc_freeze,
312 .thaw = vsc_thaw, 312 .thaw = vsc_thaw,
313 .scr_read = vsc_sata_scr_read, 313 .scr_read = vsc_sata_scr_read,
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
index 79fd2436bd70..5bddae19d1fb 100644
--- a/drivers/scsi/ipr.c
+++ b/drivers/scsi/ipr.c
@@ -5271,13 +5271,13 @@ static u8 ipr_ata_check_altstatus(struct ata_port *ap)
5271} 5271}
5272 5272
5273static struct ata_port_operations ipr_sata_ops = { 5273static struct ata_port_operations ipr_sata_ops = {
5274 .check_status = ipr_ata_check_status, 5274 .sff_check_status = ipr_ata_check_status,
5275 .check_altstatus = ipr_ata_check_altstatus, 5275 .sff_check_altstatus = ipr_ata_check_altstatus,
5276 .dev_select = ata_noop_dev_select, 5276 .sff_dev_select = ata_noop_dev_select,
5277 .phy_reset = ipr_ata_phy_reset, 5277 .phy_reset = ipr_ata_phy_reset,
5278 .hardreset = ipr_sata_reset, 5278 .hardreset = ipr_sata_reset,
5279 .post_internal_cmd = ipr_ata_post_internal, 5279 .post_internal_cmd = ipr_ata_post_internal,
5280 .tf_read = ipr_tf_read, 5280 .sff_tf_read = ipr_tf_read,
5281 .qc_prep = ata_noop_qc_prep, 5281 .qc_prep = ata_noop_qc_prep,
5282 .qc_issue = ipr_qc_issue, 5282 .qc_issue = ipr_qc_issue,
5283 .port_start = ata_sas_port_start, 5283 .port_start = ata_sas_port_start,
diff --git a/drivers/scsi/libsas/sas_ata.c b/drivers/scsi/libsas/sas_ata.c
index b0e5ac372a32..a1664b87927a 100644
--- a/drivers/scsi/libsas/sas_ata.c
+++ b/drivers/scsi/libsas/sas_ata.c
@@ -348,12 +348,12 @@ static int sas_ata_scr_read(struct ata_port *ap, unsigned int sc_reg_in,
348} 348}
349 349
350static struct ata_port_operations sas_sata_ops = { 350static struct ata_port_operations sas_sata_ops = {
351 .check_status = sas_ata_check_status, 351 .sff_check_status = sas_ata_check_status,
352 .check_altstatus = sas_ata_check_status, 352 .sff_check_altstatus = sas_ata_check_status,
353 .dev_select = ata_noop_dev_select, 353 .sff_dev_select = ata_noop_dev_select,
354 .phy_reset = sas_ata_phy_reset, 354 .phy_reset = sas_ata_phy_reset,
355 .post_internal_cmd = sas_ata_post_internal, 355 .post_internal_cmd = sas_ata_post_internal,
356 .tf_read = sas_ata_tf_read, 356 .sff_tf_read = sas_ata_tf_read,
357 .qc_prep = ata_noop_qc_prep, 357 .qc_prep = ata_noop_qc_prep,
358 .qc_issue = sas_ata_qc_issue, 358 .qc_issue = sas_ata_qc_issue,
359 .port_start = ata_sas_port_start, 359 .port_start = ata_sas_port_start,
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 66663bfe2c71..584eca19b8f1 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -743,17 +743,18 @@ struct ata_port_operations {
743 /* 743 /*
744 * SFF / taskfile oriented ops 744 * SFF / taskfile oriented ops
745 */ 745 */
746 void (*dev_select)(struct ata_port *ap, unsigned int device); 746 void (*sff_dev_select)(struct ata_port *ap, unsigned int device);
747 u8 (*check_status)(struct ata_port *ap); 747 u8 (*sff_check_status)(struct ata_port *ap);
748 u8 (*check_altstatus)(struct ata_port *ap); 748 u8 (*sff_check_altstatus)(struct ata_port *ap);
749 void (*tf_load)(struct ata_port *ap, const struct ata_taskfile *tf); 749 void (*sff_tf_load)(struct ata_port *ap, const struct ata_taskfile *tf);
750 void (*tf_read)(struct ata_port *ap, struct ata_taskfile *tf); 750 void (*sff_tf_read)(struct ata_port *ap, struct ata_taskfile *tf);
751 void (*exec_command)(struct ata_port *ap, const struct ata_taskfile *tf); 751 void (*sff_exec_command)(struct ata_port *ap,
752 unsigned int (*data_xfer)(struct ata_device *dev, unsigned char *buf, 752 const struct ata_taskfile *tf);
753 unsigned int buflen, int rw); 753 unsigned int (*sff_data_xfer)(struct ata_device *dev,
754 u8 (*irq_on)(struct ata_port *); 754 unsigned char *buf, unsigned int buflen, int rw);
755 755 u8 (*sff_irq_on)(struct ata_port *);
756 void (*irq_clear)(struct ata_port *); 756 void (*sff_irq_clear)(struct ata_port *);
757
757 void (*bmdma_setup)(struct ata_queued_cmd *qc); 758 void (*bmdma_setup)(struct ata_queued_cmd *qc);
758 void (*bmdma_start)(struct ata_queued_cmd *qc); 759 void (*bmdma_start)(struct ata_queued_cmd *qc);
759 void (*bmdma_stop)(struct ata_queued_cmd *qc); 760 void (*bmdma_stop)(struct ata_queued_cmd *qc);
@@ -1438,7 +1439,7 @@ static inline u8 ata_sff_busy_wait(struct ata_port *ap, unsigned int bits,
1438 1439
1439 do { 1440 do {
1440 udelay(10); 1441 udelay(10);
1441 status = ap->ops->check_status(ap); 1442 status = ap->ops->sff_check_status(ap);
1442 max--; 1443 max--;
1443 } while (status != 0xff && (status & bits) && (max > 0)); 1444 } while (status != 0xff && (status & bits) && (max > 0));
1444 1445