aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2006-06-16 02:13:53 -0400
committerJeff Garzik <jeff@garzik.org>2006-06-20 05:12:15 -0400
commit40ef1d8d48e364dce689342adfdc475aa53f4808 (patch)
tree56c54e99479c471a614b87de6eeeb15193453053
parentc5fa46e175ccd02803031ea071060cdb01521736 (diff)
[PATCH] sata_via: convert to new EH, take #3
Convert sata_via to new EH. vt6420 used ATA_FLAG_SRST while vt6421 used ATA_FLAG_SATA_RESET. This difference seems to be an accident rather than intended. This patch makes both flavors use ata_bmdma_error_handler() which makes use of both SRST and SATA hardreset. This behavior change is intended and if it breaks anything, it should be very easy to spot. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/scsi/sata_via.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/scsi/sata_via.c b/drivers/scsi/sata_via.c
index c6975c5580ef..322890b400a6 100644
--- a/drivers/scsi/sata_via.c
+++ b/drivers/scsi/sata_via.c
@@ -116,8 +116,6 @@ static const struct ata_port_operations svia_sata_ops = {
116 .exec_command = ata_exec_command, 116 .exec_command = ata_exec_command,
117 .dev_select = ata_std_dev_select, 117 .dev_select = ata_std_dev_select,
118 118
119 .phy_reset = sata_phy_reset,
120
121 .bmdma_setup = ata_bmdma_setup, 119 .bmdma_setup = ata_bmdma_setup,
122 .bmdma_start = ata_bmdma_start, 120 .bmdma_start = ata_bmdma_start,
123 .bmdma_stop = ata_bmdma_stop, 121 .bmdma_stop = ata_bmdma_stop,
@@ -127,7 +125,10 @@ static const struct ata_port_operations svia_sata_ops = {
127 .qc_issue = ata_qc_issue_prot, 125 .qc_issue = ata_qc_issue_prot,
128 .data_xfer = ata_pio_data_xfer, 126 .data_xfer = ata_pio_data_xfer,
129 127
130 .eng_timeout = ata_eng_timeout, 128 .freeze = ata_bmdma_freeze,
129 .thaw = ata_bmdma_thaw,
130 .error_handler = ata_bmdma_error_handler,
131 .post_internal_cmd = ata_bmdma_post_internal_cmd,
131 132
132 .irq_handler = ata_interrupt, 133 .irq_handler = ata_interrupt,
133 .irq_clear = ata_bmdma_irq_clear, 134 .irq_clear = ata_bmdma_irq_clear,
@@ -142,7 +143,7 @@ static const struct ata_port_operations svia_sata_ops = {
142 143
143static struct ata_port_info svia_port_info = { 144static struct ata_port_info svia_port_info = {
144 .sht = &svia_sht, 145 .sht = &svia_sht,
145 .host_flags = ATA_FLAG_SATA | ATA_FLAG_SRST | ATA_FLAG_NO_LEGACY, 146 .host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY,
146 .pio_mask = 0x1f, 147 .pio_mask = 0x1f,
147 .mwdma_mask = 0x07, 148 .mwdma_mask = 0x07,
148 .udma_mask = 0x7f, 149 .udma_mask = 0x7f,
@@ -237,8 +238,7 @@ static struct ata_probe_ent *vt6421_init_probe_ent(struct pci_dev *pdev)
237 INIT_LIST_HEAD(&probe_ent->node); 238 INIT_LIST_HEAD(&probe_ent->node);
238 239
239 probe_ent->sht = &svia_sht; 240 probe_ent->sht = &svia_sht;
240 probe_ent->host_flags = ATA_FLAG_SATA | ATA_FLAG_SATA_RESET | 241 probe_ent->host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY;
241 ATA_FLAG_NO_LEGACY;
242 probe_ent->port_ops = &svia_sata_ops; 242 probe_ent->port_ops = &svia_sata_ops;
243 probe_ent->n_ports = N_PORTS; 243 probe_ent->n_ports = N_PORTS;
244 probe_ent->irq = pdev->irq; 244 probe_ent->irq = pdev->irq;