summaryrefslogtreecommitdiffstats
path: root/sys/dev/buslogic/bt_eisa.c
Commit message (Collapse)AuthorAgeFilesLines
* Use __FBSDID().obrien2003-08-241-1/+3
| | | | Also some minor style cleanups.
* Mega busdma API commit.scottl2003-07-011-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Add two new arguments to bus_dma_tag_create(): lockfunc and lockfuncarg. Lockfunc allows a driver to provide a function for managing its locking semantics while using busdma. At the moment, this is used for the asynchronous busdma_swi and callback mechanism. Two lockfunc implementations are provided: busdma_lock_mutex() performs standard mutex operations on the mutex that is specified from lockfuncarg. dftl_lock() is a panic implementation and is defaulted to when NULL, NULL are passed to bus_dma_tag_create(). The only time that NULL, NULL should ever be used is when the driver ensures that bus_dmamap_load() will not be deferred. Drivers that do not provide their own locking can pass busdma_lock_mutex,&Giant args in order to preserve the former behaviour. sparc64 and powerpc do not provide real busdma_swi functions, so this is largely a noop on those platforms. The busdma_swi on is64 is not properly locked yet, so warnings will be emitted on this platform when busdma callback deferrals happen. If anyone gets panics or warnings from dflt_lock() being called, please let me know right away. Reviewed by: tmm, gibbs
* Add /* FALLTHROUGH */phk2003-05-311-7/+0
| | | | | | Remove break after return Found by: FlexeLint
* Clean up argument comments for bus_dma_tag_create() calls.mdodd2003-03-291-8/+12
|
* Change BUS_SPACE_UNRESTRICTED (~0ul) to plain ~0 when used in thepeter2002-10-091-1/+1
| | | | | 'int nsegments' argument to bus_dma_tag_create(). ~0ul does not fit in an int on machines with 64 bit longs.
* Classify all EISA cards with major firmware revions '2' as 742As.gibbs2000-11-131-0/+12
| | | | | | | | | | | | | | | This allows us to successfully attach early Storage Dimension cards. Allocate mailboxes for the 742A bellow the 16MB limit. Although these cards seem to be able to deal with all other types of data anywhere in a 32bit address space, 24bit addresses are required for mailboxes. bt_eisa.c: Add device IDs for all Storage Dimension products I could find from their web site. Thanks to Ted Mittelstaed for loaning me the equipment to diagnose and fix these problems.
* Remove #include "eisa.h" and #if NEISA > 0 - this is guaranteed by config.peter2000-01-291-5/+0
|
* Pre 4.0 tidy up.peter2000-01-141-1/+1
| | | | | | | | | | | | Collect together the components of several drivers and export eisa from the i386-only area (It's not, it's on some alphas too). The code hasn't been updated to work on the Alpha yet, but that can come later. Repository copies were done a while ago. Moving these now keeps them in consistant place across the 4.x series as the newbusification progresses. Submitted by: mdodd
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Properly set the alignment argument to bus_dma_tag_create(). If wegibbs1999-08-161-2/+2
| | | | don't care about the alignment, set it to 1, meaning single byte alignment.
* Move the specification of EDGE/LEVEL triggered interrupts tomdodd1999-08-011-2/+7
| | | | | | | | | | | | | | | | | eisa_add_intr() which now takes an additional arguement (one of EISA_TRIGGER_LEVEL or EISA_TRIGGER_EDGE). The flag RR_SHAREABLE has no effect when passed to bus_alloc_resource(dev, SYS_RES_IRQ, ...) in an EISA device context as the eisa_alloc_resource() call (bus_alloc_resource method) now deals with this flag directly, depending on the device ivars. This change does nothing more than move all the 'shared = inb(foo + iobsse)' nonesense to the device probe methods rather than the device attach. Also, print out 'edge' or 'level' in the IRQ announcement message. Reviewed by: dfr
* Move the declaration of the interrupt type from the driver structuredfr1999-05-081-2/+1
| | | | to the BUS_SETUP_INTR call.
* Typo, use SYS_RES_IRQ when releasing the irq resource, not SYS_RES_IOPORT.peter1999-04-241-2/+2
|
* Make bt driver work on eisa again.dfr1999-04-201-2/+2
| | | | Submitted by: Matthew N. Dodd <winter@jurai.net>
* Implement an EISA new-bus framework. The old driver probe mechanismpeter1999-04-181-175/+181
| | | | | | | | | had a quirk that made a shim rather hard to implement properly and it was just easier to convert the drivers in one go. The changes to the buslogic driver go beyond just this - the whole driver was new-bus'ed including pci and isa. I have only tested the EISA part of this so far. Submitted by: Doug Rabson <dfr@nlsystems.com>
* Fix a typo.gibbs1999-03-231-2/+2
| | | | | PR: 10722 Submitted by: Chris Costello <chris@holly.dyndns.org>
* Ask the card where our interrupt is instead of attempting to use the EISAgibbs1999-03-081-85/+31
| | | | | | config info. On early revision cards (742a), the EISA register space, other than the location used to determine the address of the card's main command ports, is write only.
* Mylex/Buslogic MultiMaster SCSI-Host Adapter Driver for CAM.gibbs1998-09-151-0/+392
OpenPOWER on IntegriCloud