summaryrefslogtreecommitdiff
path: root/sys/dev/ic/wdcvar.h
AgeCommit message (Collapse)Author
2004-06-02Add quirks field to the wdc softc and implement the first one:Alexander Yurchenko
WDC_QUIRK_NOSHORTDMA which disables DMA for the one-sector transfers. Use this quirk for the Geode SC1100 IDE to fix hanging during fdisk reported in PR 3729. Thanks to Alexandre Belloni <abelloni@nerim.net> for testing. ok costa@
2003-10-21typos from Tom Cosgrove;Jason McIntyre
Tom: I did not commit a couple of your changes. i did not include some punctuation fixes (full stops, etc.) mnemorable -> mnemonic: i decided memorable was probably better instrunctions -> instruction: i kept the plural
2003-10-17Merge an old fix from NetBSD:Alexander Yurchenko
- do not stop/unload current DMA operation if an IRQ was not detected by DMA engine unless the force flag was given, fixes DMA problems in shared IRQ setups; - ack interrupt before entering DMA codepath Tested by many. Work by niklas@ but he doesn't want to commit it for some reason.
2003-10-16New flag to mark SATA controllersAlexander Yurchenko
2003-10-16spaces/tabs cleanupAlexander Yurchenko
2003-09-28kill trailing spaces, no functional changesAlexander Yurchenko
2003-07-23Old Promise ATA controllers need some additional operationsAlexander Yurchenko
during DMA transfers to work correctly with LBA48 drives. Based on diff from Takeshi Nakayama <tn@catvmics.ne.jp> for NetBSD with some corrections from FreeBSD ATA driver.
2003-07-05better indentAlexander Yurchenko
2002-05-03LBA48 support.Grigoriy Orlov
Adopted from NetBSD by Alexander Yurchenko <grange@openbsd.ru>. costa@ ok.
2002-03-16The new code logs the control signals on the IDE bus. You can extract the logConstantine Sapuntzakis
using atactl <device> dump. The log will help us support more devices. Send logs to csapuntz@
2002-03-14Final __P removal plus some cosmetic fixupsTodd C. Miller
2002-03-14First round of __P removal in sysTodd C. Miller
2002-01-07pass the proc* down the ioctl chain to controller; mjacob@ csapuntz@ okMichael Shalayeff
2001-07-31On DMA timeouts, stop busmaster PCIIDE and reset channel. Avoid readingConstantine Sapuntzakis
device registers as this may cause lock-ups on some chipsets Clean-up in atapiscsi. Get rid of claim_irq. Instead, atapiscsi always returns -1 (maybe) from the interrupt handler.
2001-06-25Fix excessive resets and device probes by storing IDENTIFY results in theConstantine Sapuntzakis
drvp structure
2001-04-30Move ATA IOCTL commands to low-level WDC driverConstantine Sapuntzakis
2001-04-04Lay the groundwork for disabling ATAPI DMA on controllersConstantine Sapuntzakis
where we have trouble. Note, in theory, ATAPI DMA is no different than ATA DMA. "Promise" not to tell anybody
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-03-15Fix races between timeouts and interrupts.Constantine Sapuntzakis
Cleanup atapiscsi driver a bit by moving fields out of xfer.
2001-03-05Convert to new timeout API. costa@ ok.Hakan Olsson
2001-01-29Add wdc_print_current_modes to print current transfer modes set on theConstantine Sapuntzakis
devices. Print after attach in wdc_isa, wdc_isapnp, wdc_pcmcia. pciide_print_modes rewritten to use wdc_print_current_modes. Disable wdc_print_caps since it's not as useful. Inspired by NetBSD. Thanks to Dale and Theo for pointing out this improvement.
2000-10-27Patch to get rid of ST506 phantoms. Thanks to Grigoriy Orlov for the designConstantine Sapuntzakis
and testing.
2000-07-20chp->wdc can be NULL on probe.Constantine Sapuntzakis
Propagate verbose flag from cf_data to channel
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-06-30Convert some parts to new timeouts.Artur Grabowski
2000-04-10Added support for wd detach (merge from NetBSD). Support forConstantine Sapuntzakis
SCSI/ATAPI detach is not here yet. Minor cleanup of wdc. Downgrade to UDMA mode 1 before going further. Want to stay in UDMA modes because they're more error-resilient due to a CRC. Got rid of some of the ridiculous amount of softc sharing going on. Hopefully, this will make the life of whoever goes in and fixes the ref-counting to be correct easier.
1999-12-14Thanks aaron.Constantine Sapuntzakis
Changed time->ticks
1999-12-11ATAPI Tape drive support. Should be considered experimental.Constantine Sapuntzakis
Major restructuring of the code path that sends ATAPI packet commands. One set of functions works in polling, process, and interrupt contexts.
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-10-29reliability fixes from csapuntz; commit message replaced later with detailsTheo de Raadt
1999-10-09wdc layer work:Constantine Sapuntzakis
Separate wdc_probe_caps into wdc_probe_caps and wdc_print_caps for more flexibility in printing capability information. Get rid of wdc_final_attach. Include name of device (e.g. cd0), if possible, on errors. atapiscsi layer work: Put a pointer to the SCSI device into ata_drive_datas' drv_softc field Simplify, simplify, simplify. Got rid of a bunch of fields in atapiscsi_softc Delay printing capabilities until we know the real device name (e.g. st0)
1999-07-22Create wdc_enable_intr, wdc_disable_intr, wdc_select_drive.Constantine Sapuntzakis
wdc_select_drive implements the drive selection protocol as documented in the ATA-5 preliminary specs.
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