summaryrefslogtreecommitdiff
path: root/sys/dev/ata/ata.c
AgeCommit message (Collapse)Author
2001-09-21Correct some pryntf() usage: get the correct number of arguments in theMiod Vallat
correct order.
2001-07-12Rework of probe code. Try better to deal with floating buses. DependingConstantine Sapuntzakis
on the value floating on the bus, we would occasionally skip the register writability tests. Whoops... Move fix for a flash device that doesn't wake up until a command is sent Try to supress spurious interrupts. However, if one does happen, acknowledge it anyway by reading status. This prevents the interrupt condition from persisting.
2001-07-09ch_flags should be ch_statusConstantine Sapuntzakis
2001-03-25Minor mods to DMA interface - get rid of unnecessary args. Allow DMA ↵Constantine Sapuntzakis
functions to return status flags. Note: Changing code to have DMA interface indicate when I/O is done (a la NetBSD) was considered. It was rejected due to questionable backward compatability with ISA DMA and MAC obio DMA Added irqack from NetBSD (though this feature should really be in the PCI interrupt handlers) Use pool
2001-01-29Fix bug where timeouts triggered too early, caused panic on ATAPI tapes.Niklas Hallqvist
Removed hardcoded WDCDEBUG definitions.
2000-10-29undo this; adds files, unacceptable at this point in releaseTheo de Raadt
2000-10-28Reduce footprint of ATA driver by only having PROBE debug messages compiledConstantine Sapuntzakis
in by default.
2000-07-20Fix to ATA detect. Some devices seem to be comatose after resetConstantine Sapuntzakis
(return 0x00 status persistently). Send them identify to wake them up. Flag value 0x10000 will enable probe messages for a channel/controller. When UKC supports setting flags, this will be useful debugging failing IDE detects without kernel recompiles.
2000-04-07correct debug printoutsNiklas Hallqvist
1999-11-17New interface to ATA registers that goes through the lower-level deviceConstantine Sapuntzakis
driver (pciide, wdc, etc.) Remove #define WDCDEBUG from top of files More fixes to ATAPISCSI logic: Not all devices transition correctly between phases. Devices are supposed to keep BSY high until they've set the registers to the next sensible state. Some devices drop BSY and leave the registers in an old or nonsense state. Our polling code is extremely sensitive to this (though an early itnerrupt could also observe this). So, if the device is in an unexpected state, the new polling code waits for a while in the hope that it enters a better state. This seems to fix many of the problems reported. Also, there was a horrible bug which would cause sense to fail on a ATAPI command that sent data to the drive
1999-11-05Fix ata_get_params on big endian platforms.Constantine Sapuntzakis
We have diverged from NetBSD in that wdc_exec_xfer no longer automatically swaps.
1999-08-05Make IDE compile on alpha again:Niklas Hallqvist
use b* instead of mem* functions, adhere to NISADMA for DMA support.
1999-07-18Import of NetBSD ATA/IDE stuff.Constantine Sapuntzakis
Introduction of home-grown To enable this stuff in your configuration, look at the NEWATA conf file and go through dev/isa/files.isa dev/pci/files.pci conf/files arch/i386/conf/files.i386 and follow the instructions on commenting/uncommenting stuff