diff options
author | Tejun Heo <htejun@gmail.com> | 2006-06-16 15:13:53 +0900 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-06-20 05:12:15 -0400 |
commit | 40ef1d8d48e364dce689342adfdc475aa53f4808 (patch) | |
tree | 56c54e99479c471a614b87de6eeeb15193453053 /drivers/scsi/sata_via.c | |
parent | c5fa46e175ccd02803031ea071060cdb01521736 (diff) | |
download | op-kernel-dev-40ef1d8d48e364dce689342adfdc475aa53f4808.zip op-kernel-dev-40ef1d8d48e364dce689342adfdc475aa53f4808.tar.gz |
[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>
Diffstat (limited to 'drivers/scsi/sata_via.c')
-rw-r--r-- | drivers/scsi/sata_via.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/scsi/sata_via.c b/drivers/scsi/sata_via.c index c6975c5..322890b 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 = { .exec_command = ata_exec_command, .dev_select = ata_std_dev_select, - .phy_reset = sata_phy_reset, - .bmdma_setup = ata_bmdma_setup, .bmdma_start = ata_bmdma_start, .bmdma_stop = ata_bmdma_stop, @@ -127,7 +125,10 @@ static const struct ata_port_operations svia_sata_ops = { .qc_issue = ata_qc_issue_prot, .data_xfer = ata_pio_data_xfer, - .eng_timeout = ata_eng_timeout, + .freeze = ata_bmdma_freeze, + .thaw = ata_bmdma_thaw, + .error_handler = ata_bmdma_error_handler, + .post_internal_cmd = ata_bmdma_post_internal_cmd, .irq_handler = ata_interrupt, .irq_clear = ata_bmdma_irq_clear, @@ -142,7 +143,7 @@ static const struct ata_port_operations svia_sata_ops = { static struct ata_port_info svia_port_info = { .sht = &svia_sht, - .host_flags = ATA_FLAG_SATA | ATA_FLAG_SRST | ATA_FLAG_NO_LEGACY, + .host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY, .pio_mask = 0x1f, .mwdma_mask = 0x07, .udma_mask = 0x7f, @@ -237,8 +238,7 @@ static struct ata_probe_ent *vt6421_init_probe_ent(struct pci_dev *pdev) INIT_LIST_HEAD(&probe_ent->node); probe_ent->sht = &svia_sht; - probe_ent->host_flags = ATA_FLAG_SATA | ATA_FLAG_SATA_RESET | - ATA_FLAG_NO_LEGACY; + probe_ent->host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY; probe_ent->port_ops = &svia_sata_ops; probe_ent->n_ports = N_PORTS; probe_ent->irq = pdev->irq; |