libata: implement and use ops inheritance
[deliverable/linux.git] / drivers / ata / pata_cmd640.c
index 26562b814400fe152103b653b000f216b3b52f4c..061c891c8a66c39f5cce48d21ae428dd7f0238dd 100644 (file)
@@ -170,35 +170,12 @@ static struct scsi_host_template cmd640_sht = {
 };
 
 static struct ata_port_operations cmd640_port_ops = {
-       .set_piomode    = cmd640_set_piomode,
-       .mode_filter    = ata_pci_default_filter,
-       .tf_load        = ata_tf_load,
-       .tf_read        = ata_tf_read,
-       .check_status   = ata_check_status,
-       .exec_command   = ata_exec_command,
-       .dev_select     = ata_std_dev_select,
-
-       .freeze         = ata_bmdma_freeze,
-       .thaw           = ata_bmdma_thaw,
-       .error_handler  = ata_bmdma_error_handler,
-       .post_internal_cmd = ata_bmdma_post_internal_cmd,
-       .cable_detect   = ata_cable_40wire,
-
-       .bmdma_setup    = ata_bmdma_setup,
-       .bmdma_start    = ata_bmdma_start,
-       .bmdma_stop     = ata_bmdma_stop,
-       .bmdma_status   = ata_bmdma_status,
-
-       .qc_prep        = ata_qc_prep,
-       .qc_issue       = cmd640_qc_issue_prot,
-
-       /* In theory this is not needed once we kill the prefetcher */
+       .inherits       = &ata_bmdma_port_ops,
+       /* In theory xfer_noirq is not needed once we kill the prefetcher */
        .data_xfer      = ata_data_xfer_noirq,
-
-       .irq_handler    = ata_interrupt,
-       .irq_clear      = ata_bmdma_irq_clear,
-       .irq_on         = ata_irq_on,
-
+       .qc_issue       = cmd640_qc_issue_prot,
+       .cable_detect   = ata_cable_40wire,
+       .set_piomode    = cmd640_set_piomode,
        .port_start     = cmd640_port_start,
 };
 
This page took 0.034126 seconds and 5 git commands to generate.