aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/pci/cs5530.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-18 19:00:02 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-18 19:00:02 -0400
commita9e82d3a02247af6b729be0a963862d70cb25bf9 (patch)
tree8f1f02bf0f1371391f2077a270bc32c0beddcc6a /drivers/ide/pci/cs5530.c
parent58f9b52ee8712283f7ffedb661df678c61e88a91 (diff)
parent85ad93ad56f4baf52e7c40f2e01c4df8e14d4c9c (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6: (37 commits) ide: set drive->autotune in ide_pci_setup_ports() triflex: always tune PIO opti621: always tune PIO cy82c693: always tune PIO cs5520: always tune PIO alim15x3: always tune PIO ide: add IDE_HFLAG_LEGACY_IRQS host flag ide: add IDE_HFLAG_SERIALIZE host flag ide: add IDE_HFLAG_ERROR_STOPS_FIFO host flag piix: add DECLARE_ICH_DEV() macro pdc202xx_old: add DECLARE_PDC2026X_DEV() macro pdc202xx_new: add DECLARE_PDCNEW_DEV() macro aec62xx: no need to disable UDMA in ->init_hwif method for ATP850UF ide: remove .init_setup from ide_pci_device_t serverworks: remove ->init_setup scc_pata: remove ->init_setup pdc202xx_old: remove ->init_setup pdc202xx_new: remove ->init_setup hpt366: remove ->init_setup cmd64x: remove ->init_setup ...
Diffstat (limited to 'drivers/ide/pci/cs5530.c')
-rw-r--r--drivers/ide/pci/cs5530.c18
1 files changed, 5 insertions, 13 deletions
diff --git a/drivers/ide/pci/cs5530.c b/drivers/ide/pci/cs5530.c
index 0d23b8aabe9c..ba0c6eba024b 100644
--- a/drivers/ide/pci/cs5530.c
+++ b/drivers/ide/pci/cs5530.c
@@ -245,9 +245,6 @@ static void __devinit init_hwif_cs5530 (ide_hwif_t *hwif)
245 unsigned long basereg; 245 unsigned long basereg;
246 u32 d0_timings; 246 u32 d0_timings;
247 247
248 if (hwif->mate)
249 hwif->serialized = hwif->mate->serialized = 1;
250
251 hwif->set_pio_mode = &cs5530_set_pio_mode; 248 hwif->set_pio_mode = &cs5530_set_pio_mode;
252 hwif->set_dma_mode = &cs5530_set_dma_mode; 249 hwif->set_dma_mode = &cs5530_set_dma_mode;
253 250
@@ -258,16 +255,9 @@ static void __devinit init_hwif_cs5530 (ide_hwif_t *hwif)
258 if (CS5530_BAD_PIO(inl(basereg + 8))) 255 if (CS5530_BAD_PIO(inl(basereg + 8)))
259 outl(cs5530_pio_timings[(d0_timings >> 31) & 1][0], basereg + 8); 256 outl(cs5530_pio_timings[(d0_timings >> 31) & 1][0], basereg + 8);
260 257
261 hwif->drives[0].autotune = 1;
262 hwif->drives[1].autotune = 1;
263
264 if (hwif->dma_base == 0) 258 if (hwif->dma_base == 0)
265 return; 259 return;
266 260
267 hwif->atapi_dma = 1;
268 hwif->ultra_mask = 0x07;
269 hwif->mwdma_mask = 0x07;
270
271 hwif->udma_filter = cs5530_udma_filter; 261 hwif->udma_filter = cs5530_udma_filter;
272} 262}
273 263
@@ -275,10 +265,12 @@ static ide_pci_device_t cs5530_chipset __devinitdata = {
275 .name = "CS5530", 265 .name = "CS5530",
276 .init_chipset = init_chipset_cs5530, 266 .init_chipset = init_chipset_cs5530,
277 .init_hwif = init_hwif_cs5530, 267 .init_hwif = init_hwif_cs5530,
278 .autodma = AUTODMA, 268 .host_flags = IDE_HFLAG_SERIALIZE |
279 .bootable = ON_BOARD, 269 IDE_HFLAG_POST_SET_MODE |
270 IDE_HFLAG_BOOTABLE,
280 .pio_mask = ATA_PIO4, 271 .pio_mask = ATA_PIO4,
281 .host_flags = IDE_HFLAG_POST_SET_MODE, 272 .mwdma_mask = ATA_MWDMA2,
273 .udma_mask = ATA_UDMA2,
282}; 274};
283 275
284static int __devinit cs5530_init_one(struct pci_dev *dev, const struct pci_device_id *id) 276static int __devinit cs5530_init_one(struct pci_dev *dev, const struct pci_device_id *id)