summaryrefslogtreecommitdiffstats
path: root/sys/dev/ata/ata.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Delete unnecessary <sys/file.h> includesguenther2017-12-301-2/+1
| | | | ok millert@ krw@
* The 80's called and want their interface back. Remove last fragments ofkrw2015-08-171-2/+2
| | | | | | | | | ST-506 support. Remove redundant 'precomp' variables/fields and rename remaining few to 'features' to be consistant with the rest of the code. Consensus that no ST-506 disks (requiring ISA cards, <120MB, usually rife with bad sectors that can't be worked around) are still running OpenBSD.
* Remove some includes include-what-you-use claims don'tjsg2015-03-141-2/+1
| | | | | | | have any direct symbols used. Tested for indirect use by compiling amd64/i386/sparc64 kernels. ok tedu@ deraadt@
* Print correct function name in debug statements. ata_get_params, notkrw2011-06-221-3/+3
| | | | ata_get_parms or wdc_ata_get_parms.
* one dma_free() was mistakenly left as free()deraadt2011-04-081-2/+2
|
* Safer, big mem friendly, allocation of ATAPARAMS buf that is thekrw2011-04-031-5/+6
| | | | | | target of DMA. ok deraadt@ dlg@
* Manuel Bouyer rescinded clauses 3 and 4 of his license text.jsg2010-07-231-6/+1
|
* Do not put a data buffer on the stack; malloc it (we will use dma_allocderaadt2010-07-131-4/+12
| | | | | later, when we trust it) ok matthew
* Use CMD_OK instead of 0, no binary change, from mickeypedro2007-04-081-2/+2
|
* kill extra space in output with diskerr(); ok jsgderaadt2007-03-251-3/+3
|
* 'immediatly' -> 'immediately' in comments.krw2006-12-211-2/+2
|
* Don't fall back to fake geometry if ata_get_params() fails.uwe2005-11-091-2/+1
| | | | "looks sane" grange@; tested by niall@ krw@ jmc@ jolan@
* ansi and some spaces; no f/cgrange2004-01-151-11/+5
|
* Various cleanups, knf, better debug messages.grange2003-11-171-3/+12
|
* Don't wait for DRQ after issuing IDENTIFY command; instead check for DRQgrange2003-11-171-4/+4
| | | | | | | | | asserted after BSY is cleared in data read codepath. Solves delays in probe. The first version of this diff was done by costa@ a long time ago but had some issues. This one is a partial sync with NetBSD. ok costa@
* Cleanup a bit, more pretty debug messages.grange2003-10-161-10/+7
|
* kill trailing spaces, no functional changesgrange2003-09-281-2/+2
|
* revert last change since it causes problems on some devicesgrange2003-04-141-3/+3
|
* Don't wait for DRQ after issuing IDENTIFY command. Fix long detectinggrange2003-04-121-3/+3
| | | | | of atapi devices. Problem reported by Nicolas Baldi <nib1@cs.pitt.edu>, diff from costa@.
* sprintf->snprintf. miod@, grange@ ok.ho2003-04-091-7/+7
|
* Increase IDENTIFY command timeout to 3 sec, as required by somegrange2003-02-281-2/+2
| | | | drives; from NetBSD
* Fix Manuel Bouyer's copyright, from NetBSDgrange2003-02-211-2/+2
| | | | ok deraadt@
* Protect WDCDEBUG_PRINT macro with do {} while (0)grange2002-12-191-4/+5
| | | | ok costa@
* Correct some pryntf() usage: get the correct number of arguments in themiod2001-09-211-2/+2
| | | | correct order.
* Rework of probe code. Try better to deal with floating buses. Dependingcsapuntz2001-07-121-17/+2
| | | | | | | | | | | 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.
* ch_flags should be ch_statuscsapuntz2001-07-091-2/+2
|
* Minor mods to DMA interface - get rid of unnecessary args. Allow DMA functions to return status flags.csapuntz2001-03-251-1/+25
| | | | | | | | | | 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
* Fix bug where timeouts triggered too early, caused panic on ATAPI tapes.niklas2001-01-291-3/+1
| | | | Removed hardcoded WDCDEBUG definitions.
* undo this; adds files, unacceptable at this point in releasederaadt2000-10-291-5/+18
|
* Reduce footprint of ATA driver by only having PROBE debug messages compiledcsapuntz2000-10-281-18/+5
| | | | in by default.
* Fix to ATA detect. Some devices seem to be comatose after resetcsapuntz2000-07-201-3/+26
| | | | | | | | (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.
* correct debug printoutsniklas2000-04-071-3/+3
|
* New interface to ATA registers that goes through the lower-level devicecsapuntz1999-11-171-5/+1
| | | | | | | | | | | | | | | | | | | | | 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
* Fix ata_get_params on big endian platforms.csapuntz1999-11-051-11/+26
| | | | | We have diverged from NetBSD in that wdc_exec_xfer no longer automatically swaps.
* Make IDE compile on alpha again:niklas1999-08-051-6/+6
| | | | use b* instead of mem* functions, adhere to NISADMA for DMA support.
* Import of NetBSD ATA/IDE stuff.csapuntz1999-07-181-0/+199
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