aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/pata_ixp4xx_cf.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ata/pata_ixp4xx_cf.c')
-rw-r--r--drivers/ata/pata_ixp4xx_cf.c46
1 files changed, 6 insertions, 40 deletions
diff --git a/drivers/ata/pata_ixp4xx_cf.c b/drivers/ata/pata_ixp4xx_cf.c
index 030878fedeb5..8a175f23b907 100644
--- a/drivers/ata/pata_ixp4xx_cf.c
+++ b/drivers/ata/pata_ixp4xx_cf.c
@@ -88,48 +88,14 @@ static unsigned int ixp4xx_mmio_data_xfer(struct ata_device *dev,
88} 88}
89 89
90static struct scsi_host_template ixp4xx_sht = { 90static struct scsi_host_template ixp4xx_sht = {
91 .module = THIS_MODULE, 91 ATA_PIO_SHT(DRV_NAME),
92 .name = DRV_NAME,
93 .ioctl = ata_scsi_ioctl,
94 .queuecommand = ata_scsi_queuecmd,
95 .can_queue = ATA_DEF_QUEUE,
96 .this_id = ATA_SHT_THIS_ID,
97 .sg_tablesize = LIBATA_MAX_PRD,
98 .cmd_per_lun = ATA_SHT_CMD_PER_LUN,
99 .emulated = ATA_SHT_EMULATED,
100 .use_clustering = ATA_SHT_USE_CLUSTERING,
101 .proc_name = DRV_NAME,
102 .dma_boundary = ATA_DMA_BOUNDARY,
103 .slave_configure = ata_scsi_slave_config,
104 .slave_destroy = ata_scsi_slave_destroy,
105 .bios_param = ata_std_bios_param,
106}; 92};
107 93
108static struct ata_port_operations ixp4xx_port_ops = { 94static struct ata_port_operations ixp4xx_port_ops = {
109 .set_mode = ixp4xx_set_mode, 95 .inherits = &ata_sff_port_ops,
110 .mode_filter = ata_pci_default_filter, 96 .sff_data_xfer = ixp4xx_mmio_data_xfer,
111
112 .tf_load = ata_tf_load,
113 .tf_read = ata_tf_read,
114 .exec_command = ata_exec_command,
115 .check_status = ata_check_status,
116 .dev_select = ata_std_dev_select,
117
118 .freeze = ata_bmdma_freeze,
119 .thaw = ata_bmdma_thaw,
120 .error_handler = ata_bmdma_error_handler,
121 .post_internal_cmd = ata_bmdma_post_internal_cmd,
122
123 .qc_prep = ata_qc_prep,
124 .qc_issue = ata_qc_issue_prot,
125 .data_xfer = ixp4xx_mmio_data_xfer,
126 .cable_detect = ata_cable_40wire, 97 .cable_detect = ata_cable_40wire,
127 98 .set_mode = ixp4xx_set_mode,
128 .irq_handler = ata_interrupt,
129 .irq_clear = ata_bmdma_irq_clear,
130 .irq_on = ata_irq_on,
131
132 .port_start = ata_port_start,
133}; 99};
134 100
135static void ixp4xx_setup_port(struct ata_port *ap, 101static void ixp4xx_setup_port(struct ata_port *ap,
@@ -144,7 +110,7 @@ static void ixp4xx_setup_port(struct ata_port *ap,
144 ioaddr->altstatus_addr = data->cs1 + 0x06; 110 ioaddr->altstatus_addr = data->cs1 + 0x06;
145 ioaddr->ctl_addr = data->cs1 + 0x06; 111 ioaddr->ctl_addr = data->cs1 + 0x06;
146 112
147 ata_std_ports(ioaddr); 113 ata_sff_std_ports(ioaddr);
148 114
149#ifndef __ARMEB__ 115#ifndef __ARMEB__
150 116
@@ -220,7 +186,7 @@ static __devinit int ixp4xx_pata_probe(struct platform_device *pdev)
220 dev_printk(KERN_INFO, &pdev->dev, "version " DRV_VERSION "\n"); 186 dev_printk(KERN_INFO, &pdev->dev, "version " DRV_VERSION "\n");
221 187
222 /* activate host */ 188 /* activate host */
223 return ata_host_activate(host, irq, ata_interrupt, 0, &ixp4xx_sht); 189 return ata_host_activate(host, irq, ata_sff_interrupt, 0, &ixp4xx_sht);
224} 190}
225 191
226static __devexit int ixp4xx_pata_remove(struct platform_device *dev) 192static __devexit int ixp4xx_pata_remove(struct platform_device *dev)