summaryrefslogtreecommitdiffstats
path: root/sys/dev/aha
Commit message (Collapse)AuthorAgeFilesLines
* MFC r260893: Free dma memory from the dma map before destroying the map.ian2014-05-141-1/+1
|
* MFC r256887:mav2014-01-051-1/+3
| | | | | | Fix memory and references leak due to unfreed path. Coverity CID: 1109817
* Reform the busdma API so that new types may be added without modifyingkib2013-02-121-61/+17
| | | | | | | | | | | | | | | | | | | | | every architecture's busdma_machdep.c. It is done by unifying the bus_dmamap_load_buffer() routines so that they may be called from MI code. The MD busdma is then given a chance to do any final processing in the complete() callback. The cam changes unify the bus_dmamap_load* handling in cam drivers. The arm and mips implementations are updated to track virtual addresses for sync(). Previously this was done in a type specific way. Now it is done in a generic way by recording the list of virtuals in the map. Submitted by: jeff (sponsored by EMC/Isilon) Reviewed by: kan (previous version), scottl, mjacob (isp(4), no objections for target mode changes) Discussed with: ian (arm changes) Tested by: marius (sparc64), mips (jmallet), isci(4) on x86 (jharris), amd64 (Fabian Keil <freebsd-listen@fabiankeil.de>)
* Fix aha(4) build with i386 LINT (which includes 'device mca').pluknet2012-10-161-1/+2
|
* Fix build of aha(4).glebius2012-10-163-15/+16
| | | | Submitted by: delphij
* Add locking to the aha(4) driver and mark it MPSAFE.jhb2012-10-154-111/+86
| | | | | | - Remove use of explicit bus space handles and tags. Tested by: no one
* Pass bus_get_dma_tag() into the first argument of bus_dma_create_tag()imp2008-10-072-2/+2
| | | | rather than NULL.
* Minor typo fix, caught while skimming through the file.keramida2008-08-101-1/+1
|
* Prepare for future integration between CAM and newbus. xpt_bus_registerscottl2007-06-171-1/+1
| | | | | | | now takes a device_t to be the parent of the bus that is being created. Most SIMs have been updated with a reasonable argument, but a few exceptions just pass NULL for now. This argument isn't used yet and the newbus integration likely won't be ready until after 7.0-RELEASE.
* Remove Giant from CAM. Drivers (SIMs) now register a mutex that CAM willscottl2007-04-151-2/+2
| | | | | | | | | | | use to synchornize and protect all data objects that are used for that SIM. Drivers that are not yet MPSAFE register Giant and operate as usual. RIght now, no drivers are MPSAFE, though a few will be changed in the coming week as this work settles down. The driver API has changed, so all CAM drivers will need to be recompiled. The userland API has not changed, so tools like camcontrol do not need to be recompiled.
* o break newbus api: add a new argument of type driver_filter_t topiso2007-02-231-1/+1
| | | | | | | | | | | | bus_setup_intr() o add an int return code to all fast handlers o retire INTR_FAST/IH_FAST For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current Approved by: re (implicit?)
* o break newbus api: add a new argument of type driver_filter_t topiso2007-02-231-1/+1
| | | | | | | | | | | | | bus_setup_intr() o add an int return code to all fast handlers o retire INTR_FAST/IH_FAST For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current Reviewed by: many Approved by: re@
* Add MODULE_DEPENDS for cam, pci, mca, eisa and isa where needed.mjacob2006-12-113-2/+4
| | | | | PR: 106543 MFC after: 3 days
* Remove unused structures.kevlo2006-11-091-25/+0
| | | | | Reviewed by: cognet and imp Approved by: cognet and imp
* 2nd and final commit that moves us to CAM_NEW_TRAN_CODEmjacob2006-11-021-56/+0
| | | | | | as the default. Reviewed by multitudes.
* The first of 3 major steps to move the CAM layer forward to usingmjacob2006-10-311-4/+72
| | | | | | | | | | | | | | | | | | | | | the CAM_NEW_TRAN_CODE that has been in the tree for some years now. This first step consists solely of adding to or correcting CAM_NEW_TRAN_CODE pieces in the kernel source tree such that a both a GENERIC (at least on i386) and a LINT build with CAM_NEW_TRAN_CODE as an option will compile correctly and run (at least with some the h/w I have). After a short settle time, the other pieces (making CAM_NEW_TRAN_CODE the default and updating libcam and camcontrol) will be brought in. This will be an incompatible change in that the size of structures related to XPT_PATH_INQ and XPT_{GET,SET}_TRAN_SETTINGS change in both size and content. However, basic system operation and basic system utilities work well enough with this change. Reviewed by: freebsd-scsi and specific stakeholders
* Add explicit dependency on cam. This is necessary when both aha.ko andimp2006-03-242-0/+2
| | | | | | | | cam.ko are modules so that aha.ko's undefined symbols can be satisfied by cam.ko. Sumitted by: nork Reviewed by: scottl
* Remove bus_{mem,p}io.h and related code for a micro-optimization on i386nyan2005-05-292-2/+0
| | | | | | and amd64. The optimization is a trivial on recent machines. Reviewed by: -arch (imp, marcel, dfr)
* Simplify aha resource management, and fix a few bugs in unwindingimp2005-01-193-74/+51
| | | | error cases.
* Use the standard FreeBSD licenseimp2005-01-111-6/+6
|
* nitsimp2005-01-111-2/+3
|
* Final attempt to make aha 1542A working. If not, oh well, I don'timp2005-01-112-7/+16
| | | | | | | have the card and no way to reproduce problems. We do this by applying the workaround to firmware revsion 0. PR: 14334
* Start each of the license/copyright comments with /*-, minor shuffle of linesimp2005-01-063-3/+3
|
* Various whitespace nits.imp2004-11-121-21/+27
| | | | Noticed by: njl
* Don't use aha after calling aha_free.imp2004-11-121-4/+4
|
* #include <isa/isavar.h> instead of <i386/isa/isa_dma.h>phk2004-09-151-1/+1
|
* Convert callers to the new bus_alloc_resource_any(9) API.njl2004-03-172-8/+5
| | | | | Submitted by: Mark Santcroos <marks@ripe.net> Reviewed by: imp, dfr, bde
* Save the device so we can do a device_printf.imp2003-11-133-76/+69
| | | | | | Use this in preference to aha_name. Remove aha_name function and #define it to device_get_unitname() Minor indentation tweaks resulting therefrom
* Minor diff reduction with p4imp2003-11-121-1/+1
|
* Move 'guessing' code from the probe into the identify routine where it moreimp2003-11-102-160/+106
| | | | properly belongs.
* Tweak the front end driver file listimp2003-11-091-31/+26
| | | | Also some minor whitespace nits.
* Add my copyright to aha_isa.c to make it crystal clear its licenseimp2003-11-091-1/+25
|
* Let bus space manage softc.imp2003-11-094-56/+23
|
* Minor tweaks to make it behave better:imp2003-11-091-8/+18
| | | | | | | | | | | | | | o When we're resetting the board, make sure that we error out the pending CCBs first. Otherwise the aha_cmd won't accept further commands, such as those that are used to reset the card (AOP_INITIALIZE_MBOX). This appears to cause a cascade failure where no more commands are possible to the card. o Reduce from 10s down to 1s the amount of time we're willing to tolerate the card being awol. This helps the above case. o Add some error checking to two commands issued in the probe. I have a dim memory of gibbs@ trying to tell me about this problem a few years ago, so pointy hat to imp@ for sitting on it so long.
* Minor comment smithingimp2003-11-091-4/+4
|
* Make this driver a little more style(9) compliantimp2003-11-094-206/+176
|
* Use __FBSDID().obrien2003-08-243-6/+9
| | | | Also some minor style cleanups.
* Mega busdma API commit.scottl2003-07-013-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | 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
* Bring back bus_dmasync_op_t. It is now a typedef to an int, though thescottl2003-05-271-2/+2
| | | | | | | | BUS_DMASYNC_ definitions remain as before. The does not change the ABI, and reverts the API to be a bit more compatible and flexible. This has survived a full 'make universe'. Approved by: re (bmah)
* I deserve a big pointy hat for having missed all those referencesmux2003-04-101-2/+2
| | | | to bus_dmasync_op_t in my last commit.
* Clean up argument comments for bus_dma_tag_create() calls.mdodd2003-03-293-51/+76
|
* Consolidate MIN/MAX macros into one place (param.h).alfred2003-02-021-4/+0
| | | | Submitted by: Hiten Pandya <hiten@unixdaemons.com>
* Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,schweikh2003-01-011-2/+2
| | | | especially in troff files.
* Fix build on alpha. It used to case an int to a pointer in order to dopeter2002-10-091-1/+2
| | | | | pointer arithmetic. Detour via uintptr_t, since we're generating an offset not dereferencing them.
* Change BUS_SPACE_UNRESTRICTED (~0ul) to plain ~0 when used in thepeter2002-10-092-2/+2
| | | | | 'int nsegments' argument to bus_dma_tag_create(). ~0ul does not fit in an int on machines with 64 bit longs.
* Fix new gcc-3.1 warnings. I think this gets GENERIC compiling cleanlypeter2002-05-241-0/+1
| | | | again.
* Turn on interrupt-entropy harvesting for all/any mass storage devicesmarkm2001-03-012-2/+2
| | | | | | | I could find. I have no doubt missed a couple. Interrupt entropy harvesting is still conditional on the kern.random.sys.harvest_interrupt sysctl.
* Remove NAHA, NAHATOT and aha_softcs and related code. It was unusedimp2001-02-042-30/+0
| | | | | | | | | except for setting it. Also remove count from aha and replace it with optional. Also add commented out pccard lines for all the old card drivers. They have to be commented out until they are converted because it causes problems in NEWCARD.
* Remove unnecessary includes found by phk's script a long time ago.imp2000-12-132-4/+0
|
* Make a few more mallocs use M_ZERO.dwmalone2000-10-291-2/+1
| | | | | | Submitted by: josh@zipperup.org Submitted by: Robert Drehmel <robd@gmx.net> Approved by: imp
OpenPOWER on IntegriCloud