summaryrefslogtreecommitdiffstats
path: root/sys/dev
Commit message (Collapse)AuthorAgeFilesLines
* Change and clean the mutex lock interface.bmilekic2001-02-0921-151/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mtx_enter(lock, type) becomes: mtx_lock(lock) for sleep locks (MTX_DEF-initialized locks) mtx_lock_spin(lock) for spin locks (MTX_SPIN-initialized) similarily, for releasing a lock, we now have: mtx_unlock(lock) for MTX_DEF and mtx_unlock_spin(lock) for MTX_SPIN. We change the caller interface for the two different types of locks because the semantics are entirely different for each case, and this makes it explicitly clear and, at the same time, it rids us of the extra `type' argument. The enter->lock and exit->unlock change has been made with the idea that we're "locking data" and not "entering locked code" in mind. Further, remove all additional "flags" previously passed to the lock acquire/release routines with the exception of two: MTX_QUIET and MTX_NOSWITCH The functionality of these flags is preserved and they can be passed to the lock/unlock routines by calling the corresponding wrappers: mtx_{lock, unlock}_flags(lock, flag(s)) and mtx_{lock, unlock}_spin_flags(lock, flag(s)) for MTX_DEF and MTX_SPIN locks, respectively. Re-inline some lock acq/rel code; in the sleep lock case, we only inline the _obtain_lock()s in order to ensure that the inlined code fits into a cache line. In the spin lock case, we inline recursion and actually only perform a function call if we need to spin. This change has been made with the idea that we generally tend to avoid spin locks and that also the spin locks that we do have and are heavily used (i.e. sched_lock) do recurse, and therefore in an effort to reduce function call overhead for some architectures (such as alpha), we inline recursion for this case. Create a new malloc type for the witness code and retire from using the M_DEV type. The new type is called M_WITNESS and is only declared if WITNESS is enabled. Begin cleaning up some machdep/mutex.h code - specifically updated the "optimized" inlined code in alpha/mutex.h and wrote MTX_LOCK_SPIN and MTX_UNLOCK_SPIN asm macros for the i386/mutex.h as we presently need those. Finally, caught up to the interface changes in all sys code. Contributors: jake, jhb, jasone (in no particular order)
* Add includes of sys/malloc.h so this actually compiles.jhb2001-02-092-1/+2
| | | | Pointy-hat to: asmodai
* Whoops... forgotten a few pieces in previous patch:luigi2001-02-081-5/+9
| | | | | | | * a ">" is really ">=" ; * do not try to fetch zero-sized blocks from the card; * make sure that bpf gets the packets it wants even with bridging active;
* Make sure that we do not accept packets shorter than a full ethernetluigi2001-02-081-1/+3
| | | | header, or we would have a negative length passed to ether_input().
* Fix memory leaks with dev_get_children().imp2001-02-081-0/+6
| | | | Submitted by: Jeroen Ruigrok/Asmodai <asmodai@wxs.nl>
* Fix a memory leak.sos2001-02-081-5/+4
| | | | Pointed out by: Asmodai
* Fix memoryleaks with device_get_children().asmodai2001-02-082-0/+3
| | | | Approved by: wpaul
* Fix memory leaks with dev_get_children().imp2001-02-081-0/+3
| | | | Submitted by: Jeroen Ruigrok/Asmodai <asmodai@wxs.nl>
* Fix typos: initalise -> initialise.asmodai2001-02-081-5/+5
| | | | Initalise is not an english word.
* - Check if the ccb_infos in the softc is NULL before trying to free it injhb2001-02-082-2/+11
| | | | | | | | adv_free() as the ISA probe routine doesn't malloc() ccb_infos but does call adv_free(). - Release the ISA-only overrun DMA tags, bufs, and maps if the probe fails. Tested by: rwatson
* Oops... I knew i shouldn't use arrows in vi. Fix a typo causing errors insemenu2001-02-071-1/+0
| | | | compilation.
* back out rev 1.49, looks like i committed it from the wrong tree.cg2001-02-071-424/+803
| | | | | | include the changes 1.49 was supposed to have. Noticed by: peter
* Add support for SMC9432FTX card, possibly othe fiber optic SMC9432 familysemenu2001-02-073-43/+216
| | | | cards will work too.
* Add QS6612, AC101 and LXT970 personal drivers and register definitions.semenu2001-02-077-6/+1367
| | | | Obtained from: NetBSD/OpenBSD
* Use correct index when counting short errors.phk2001-02-071-1/+1
|
* conditionalize "hwptr went backwards" messagescg2001-02-071-801/+425
| | | | | modify default buffer size heuristic to not max out at 4k. mpg123 should now behave better under load.
* Introduce busspace instead of the good old in/out instructions.sos2001-02-069-253/+312
| | | | Not pretty but it works (I hope)...
* Regen.n_hibma2001-02-062-2/+17
|
* Add a comment about the fact that adding an ID doesn't actually do anything.n_hibma2001-02-061-0/+15
|
* Damn! that was the wrong patch! get it right this time....sos2001-02-061-1/+1
|
* Fix the clone functionality in atapi-cd, it didn't work forsos2001-02-063-6/+17
| | | | | devs other than the first, and allowed to clone a nonexistent device..
* Fix typo: compatability -> compatibility.asmodai2001-02-061-1/+1
| | | | Compatability is not an existing english word.
* Fix typo: seperate -> separate.asmodai2001-02-062-2/+2
| | | | Seperate does not exist in the english language.
* Fix typo: depricated -> deprecated.asmodai2001-02-061-1/+1
|
* Convert if_multiaddrs from LIST to TAILQ so that it can be traversedphk2001-02-0622-46/+32
| | | | | | backwards in the three drivers which want to do that. Reviewed by: mikeh
* Fix typo: wierd -> weird.asmodai2001-02-064-4/+4
| | | | There is no such thing as wierd in the english language.
* Regen.n_hibma2001-02-052-5/+67
|
* Add some ids from NetBSD.n_hibma2001-02-051-2/+16
|
* Regen.n_hibma2001-02-052-2/+41
|
* * Correct a broken entryn_hibma2001-02-051-1/+2
| | | | | * Add the id for the Rio 800 USB. Submitted by: Wesley Morgan <morganw@chemikals.org>
* add driver for CS4281 sound chipscg2001-02-042-0/+1163
| | | | Submitted by: Orion Hodson <O.Hodson@cs.ucl.ac.uk>
* add driver for CMedia CMI8338/CMI8738 sound chipscg2001-02-042-0/+1090
| | | | Submitted by: Orion Hodson <O.Hodson@cs.ucl.ac.uk>
* 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.
* Another round of the <sys/queue.h> FOREACH transmogriffer.phk2001-02-0413-42/+21
| | | | | Created with: sed(1) Reviewed by: md5(1)
* Mechanical change to use <sys/queue.h> macro API instead ofphk2001-02-0417-60/+60
| | | | | | | fondling implementation details. Created with: sed(1) Reviewed by: md5(1)
* Use LIST_FOREACH() to traverse ifp->if_multiaddrs list, instead ofphk2001-02-0313-34/+17
| | | | | | | <sys/queue.h> implementation details. Created with: /usr/sbin/sed Reviewed with: /sbin/md5
* quieten the esscontrol devicecg2001-02-021-1/+6
|
* Allocate lock table and mutex not only for parity plexes, but also forgrog2001-02-021-3/+3
| | | | | | | striped plexes. This prevents various panics introduced in the last rewrite of the locking code. Suffered by: "Niels Chr. Bank-Pedersen" <ncbp@bank-pedersen.dk>
* Driver for the ESS Maestro3 and Allegro sound chips. Note that due to thescottl2001-02-012-0/+1504
| | | | | | amount of GPL'd firmware in the driver, it will only be built as a module. Approved by: cg
* Converted to new-bus.bde2001-02-011-57/+85
| | | | Reviewed by: imp
* Remove count for NSIO. The only places it was used it were incorrect.peter2001-01-311-1/+0
| | | | (alpha-gdbstub.c got sync'ed up a bit with the i386 version)
* Add some debugging.msmith2001-01-311-8/+72
| | | | | | Turn off semaphores. Nobody else implements them, and there is lots of AML out there which does totally absurd things with them, meaning that if we try to do the right thing we are guaranteed to fail.
* Add some debugging statements.msmith2001-01-313-26/+67
|
* Tidy up.msmith2001-01-311-48/+47
| | | | | | Don't print temperatures at attach time - they're usually wrong. Use acpi_EvaluateInteger instead of doing things the hard way.
* Add some debugging.msmith2001-01-311-35/+17
| | | | | | | | | Use acpi_EvaluateInteger where possible. Use FuncName rather than &FuncName when passing function addresses. Don't evaluate the _REG method when we attach to an address space - AcpiInstallAddressSpaceHandler does it for us.
* ACPI_NUMBER becomes ACPI_INTEGER. acpi_EvaluateNumber becomesmsmith2001-01-318-46/+24
| | | | | | | | | | | acpi_EvaluateInteger. Use acpi_EvaluateInteger instead of doing things the hard way where possible. AcpiSetSystemSleepState (unofficial) becomes AcpiEnterSleepState. Use the AcpiGbl_FADT pointer rather than searching for the FADT.
* Exterminate the use of PSEUDO_SET() with extreme prejudice.peter2001-01-311-10/+22
|
* Added used include of <sys/mutex.h>. The SMP case was broken bybde2001-01-302-0/+2
| | | | | | incompletely converting simplelocks to mutexes (COM_LOCK() is supposed to hide the SMP locking internals, but it now depends on mutex interfaces being visible).
* Newbusify the sr device and move it to its new location.jhay2001-01-304-3797/+700
|
* Update include files to reflect the new location of the ar device.jhay2001-01-302-5/+5
|
OpenPOWER on IntegriCloud