aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/tx4939ide.c
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-02-02 14:12:23 -0500
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-02-02 14:12:23 -0500
commita77dcc437c1c3bc73887ecac8a304e4adcabb9b7 (patch)
treef4e87dd4be440be29f819dff169d5c9b6724558a /drivers/ide/tx4939ide.c
parent9f6514c1c5b55ab90f3ad1f3fc18b9daa5bd9c8c (diff)
ide: add CS5536 host driver (v3)
This is a port of libata's pata_cs5536.c (written by Martin K. Petersen) to IDE subsystem. Changes done while at it: * Reprogram PIO/MWDMA timings if needed before and after DMA transfer (chipset uses shared PIO/MWDMA timings). * Fix cable detection to report 80-wires cable if BIOS set it for any device on a port (IDE core will do drive-side cable detection later). * Don't disable UDMA while programming PIO timings. * Simplify PCI/MSR support. Pros of having IDE host driver in addition to libata's one: * IDE is much lighter than SCSI+libata, the host driver itself is also a bit smaller: text data bss dec hex filename 1261 496 4 1761 6e1 drivers/ata/pata_cs5536.o 1242 128 4 1374 55e drivers/ide/cs5536.o * This allows use of IDE features which are unavailable under libata. v2: * Fixes per review from Sergei: - simplify dependency check in Kconfig - use IDE_DRV_MASK also for ->drive_data - disable UDMA when programming MWDMA - program new DTC timings only when necessary - fix printk() level in cs5536_init_one() * Fix patch description according to comments from Alan and Sergei. v3: * Smarter masking of UDMA bits per Sergei's suggestion. Cc: Martin K. Petersen <mkp@mkp.net> Cc: Karl Auerbach <karl@iwl.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/tx4939ide.c')
0 files changed, 0 insertions, 0 deletions