aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/pata_sil680.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-08 14:58:20 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-08 14:58:20 -0400
commit4750def52cb2c21732dda9aa1d43a07db37b0186 (patch)
tree29fd6223665faabb593f8ae1f4f626685f425ff9 /drivers/ata/pata_sil680.c
parent9028780a3e6d2c3dd940e89b377765cca008b6df (diff)
parent27c78b372d05e47bbd059c9bb003c6d716abff54 (diff)
Merge branch 'reset-seq' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev
* 'reset-seq' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: [libata reset-seq] build and merge fixes libata: reimplement reset sequencing libata: improve ata_std_prereset() libata: improve 0xff status handling libata: add deadline support to prereset and reset methods
Diffstat (limited to 'drivers/ata/pata_sil680.c')
-rw-r--r--drivers/ata/pata_sil680.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/ata/pata_sil680.c b/drivers/ata/pata_sil680.c
index 6770820cfca9..a5886f061c0b 100644
--- a/drivers/ata/pata_sil680.c
+++ b/drivers/ata/pata_sil680.c
@@ -94,11 +94,13 @@ static int sil680_cable_detect(struct ata_port *ap) {
94/** 94/**
95 * sil680_bus_reset - reset the SIL680 bus 95 * sil680_bus_reset - reset the SIL680 bus
96 * @ap: ATA port to reset 96 * @ap: ATA port to reset
97 * @deadline: deadline jiffies for the operation
97 * 98 *
98 * Perform the SIL680 housekeeping when doing an ATA bus reset 99 * Perform the SIL680 housekeeping when doing an ATA bus reset
99 */ 100 */
100 101
101static int sil680_bus_reset(struct ata_port *ap,unsigned int *classes) 102static int sil680_bus_reset(struct ata_port *ap,unsigned int *classes,
103 unsigned long deadline)
102{ 104{
103 struct pci_dev *pdev = to_pci_dev(ap->host->dev); 105 struct pci_dev *pdev = to_pci_dev(ap->host->dev);
104 unsigned long addr = sil680_selreg(ap, 0); 106 unsigned long addr = sil680_selreg(ap, 0);
@@ -108,7 +110,7 @@ static int sil680_bus_reset(struct ata_port *ap,unsigned int *classes)
108 pci_write_config_byte(pdev, addr, reset | 0x03); 110 pci_write_config_byte(pdev, addr, reset | 0x03);
109 udelay(25); 111 udelay(25);
110 pci_write_config_byte(pdev, addr, reset); 112 pci_write_config_byte(pdev, addr, reset);
111 return ata_std_softreset(ap, classes); 113 return ata_std_softreset(ap, classes, deadline);
112} 114}
113 115
114static void sil680_error_handler(struct ata_port *ap) 116static void sil680_error_handler(struct ata_port *ap)