diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-08 14:58:20 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-08 14:58:20 -0400 |
commit | 4750def52cb2c21732dda9aa1d43a07db37b0186 (patch) | |
tree | 29fd6223665faabb593f8ae1f4f626685f425ff9 /drivers/ata/pata_sil680.c | |
parent | 9028780a3e6d2c3dd940e89b377765cca008b6df (diff) | |
parent | 27c78b372d05e47bbd059c9bb003c6d716abff54 (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.c | 6 |
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 | ||
101 | static int sil680_bus_reset(struct ata_port *ap,unsigned int *classes) | 102 | static 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 | ||
114 | static void sil680_error_handler(struct ata_port *ap) | 116 | static void sil680_error_handler(struct ata_port *ap) |