This patch is a accumulation of ata-hosts-7/8/9/10/11, ata-autodma
and ata-ata66_check patches previously posted on LKML.
It is independent of IDE 94/95/96.
Wed Jul 3 00:13:31 CEST 2002 ide-clean-97
- add int 'modes_map' and flag 'no_atapi_autodma' to
struct ata_channel, initialise them in *_init_channel()
functions
- add int 'map' parameter to ch->udma_setup() functions
- add XFER_UDMA_ALL, XFER_UDMA_80W and rework misc defines
to ata-timing.h
- convert *_ratemask() functions to *_modes_map(),
mark them with __init
affected drivers: alim15x3.c, cmd64x.c, hpt366.c,
pdc202xx.c, serverworks.c, sis5513.c
- split aec62xx_udma_setup() to aec62xx_udma_setup()
and aec62xx_modes_map()
- split config_chipset_for_dma() in pdc202xx.c to
pdc202xx_udma_setup() and pdc202xx_tx_udma_setup()
- add udma_generic_setup() to pcidma.c, which
- equals functionality of driver specific udma_setup()
and config_chipset_for_dma()
- makes use of ch->modes_map, ch->no_atapi_autodma
and ch->speedproc()/tuneproc()
- auto-tunes PIO only if we failed to enable DMA
(PIO auto-tuning is already handled by ch->tuneproc()
call in probe.c, it is controlled separetly of autodma)
- convert aec62xx.c, alim15x3.c, amd74xx.c, cmd64x.c, hpt34x.c,
hpt366.c, it8172.c, pdc202xx.c, piix.c, serverworks.c,
sis5513.c and via82cxxx.c to new scheme
- this has nice side effect of teaching aec, amd, piix and via
drivers using DMA blacklist/whitelist
- clean usage of ch->autodma flag in PCI host chips drivers
- remove ATA_F_NOADMA flag from aec62xx.c, hpt34x.c,
sis5513.c and via82cxxx.c drivers, it's use was bogus
in these drivers
only two usages of ATA_F_NOADMA are left (in ide-pci.c),
probably they can alse be removed due to fact that drivers
should disable autodma not ide-pci (i.e. hpt34x)
- teach alim15x3.c, cs5530.c, cy82c693.c, hpt34x.c, hpt366.c,
it8172.c, pdc202xx.c, sis5513.c, sl82c105.c, and trm290.c
drivers about CONFIG_IDEDMA_AUTO (indirectly through ide-pci)
- make it possible to auto-tune DMA for trm290.c
- always check PIO timings in cs5530.c
- remove ata66_check entry from struct ata_pci_device,
initialise ch->udma_four directly in *_init_channel()
this abstraction wasn't needed and it was PCI specific
This archive was generated by hypermail 2b29 : Sun Jul 07 2002 - 22:00:09 EST