summaryrefslogtreecommitdiffstats
path: root/sys/isa
Commit message (Collapse)AuthorAgeFilesLines
* Close the line displine on detach. Lots of folks have submittd this, andimp2001-06-051-1/+4
| | | | | | | I think bde even reviewed it once. Also, change the name of ActionTEC pat to more generic Lucent Kermit chip. Add stub for Xircom card. Add cardbus attachment too.
* Move out the files from src/sys/isa/ic/ to src/sys/dev/ic/, so theyjoerg2001-06-045-285/+3
| | | | | | | | | | can be made userland-visible as <dev/ic/...>. Also, those files are not supposed to contain any bus-specific details at all, so placing them under .../isa/ has been a misnomer from the beginning. The files in src/sys/dev/ic/ have been repo-copied from their old location (this commit is a forced null commit there to record this message).
* Fix my email address. I accidentally cut'npasted the wrong (old)joerg2001-06-031-1/+1
| | | | hostname laste time.
* The orm device. This device gobbles up the Option ROMs in the ISAimp2001-06-011-0/+185
| | | | | | | | | | | | | | | memory I/O space. Otherwise, our resource allocation system might mistakenly assign pccard, plug and play devices or other things addresses that conflict with ROMs. I cleaned up his code a little from the submited driver: style(9) issues, commentary on why something that looks incorrect really is correct. Also noted that while a checksum field is defined for the ROMs, enough common hardware neglects it to make it not worthwhile checking. Submitted by: Nikolai Saoukh <nms@otdel-1.org> PR: 22078
* add Dualmode Zoom/FaxModem 56K (internal) Model 2919sanpei2001-05-261-0/+1
| | | | | PR: kern/27476 Submitted by: Eric Beyer <lnxfrk@earthlink.net>
* Don't lie to diskerr() now that it listens to us.phk2001-05-251-5/+0
|
* Add SmartLink 5634PCV SurfRidersanpei2001-05-201-0/+1
| | | | | PR: kern/26952 Submitted by: Simon Dick <simond@irrelevant.org>
* Remove unneeded includes of sys/ipl.h and machine/ipl.h.jhb2001-05-152-2/+0
|
* Implement a few more floppy ioctl commands and IO options, namely:joerg2001-05-141-23/+40
| | | | | | | | | | | | | | | | | | | | | . FD_CLRERR clears the error counter, thus re-enables kernel error printf()s, . FD_GSTAT obtains the last FDC operation state, if any, . FDOPT_NOERRLOG (temporarily) turns off kernel printf() floppy error logging, . FDOPT_NOERROR makes the kernel ignore an FDC error, thus can enable the transfer of an erroneous sector to the user application All options are being cleared on (last) close. Prime consumer of the last features will be fdread(1), to be committed shortly. (FD_CLRERR should be wired into fdcontrol(8), but then fdcontrol(8) needs a major rewrite anyway.)
* Actually biofinish(struct bio *, struct devstat *, int error) is more generalphk2001-05-061-4/+2
| | | | | | than the bioerror(). Most of this patch is generated by scripts.
* Undo part of the tangle of having sys/lock.h and sys/mutex.h included inmarkm2001-05-012-10/+14
| | | | | | | | | | | other "system" header files. Also help the deprecation of lockmgr.h by making it a sub-include of sys/lock.h and removing sys/lockmgr.h form kernel .c files. Sort sys/*.h includes where possible in affected files. OK'ed by: bde (with reservations)
* Add in a missing call to forward_hardclock() in the SMP case.jhb2001-04-281-0/+3
| | | | Submitted by: bde
* Overhaul of the SMP code. Several portions of the SMP kernel support havejhb2001-04-271-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | been made machine independent and various other adjustments have been made to support Alpha SMP. - It splits the per-process portions of hardclock() and statclock() off into hardclock_process() and statclock_process() respectively. hardclock() and statclock() call the *_process() functions for the current process so that UP systems will run as before. For SMP systems, it is simply necessary to ensure that all other processors execute the *_process() functions when the main clock functions are triggered on one CPU by an interrupt. For the alpha 4100, clock interrupts are delievered in a staggered broadcast fashion, so we simply call hardclock/statclock on the boot CPU and call the *_process() functions on the secondaries. For x86, we call statclock and hardclock as usual and then call forward_hardclock/statclock in the MD code to send an IPI to cause the AP's to execute forwared_hardclock/statclock which then call the *_process() functions. - forward_signal() and forward_roundrobin() have been reworked to be MI and to involve less hackery. Now the cpu doing the forward sets any flags, etc. and sends a very simple IPI_AST to the other cpu(s). AST IPIs now just basically return so that they can execute ast() and don't bother with setting the astpending or needresched flags themselves. This also removes the loop in forward_signal() as sched_lock closes the race condition that the loop worked around. - need_resched(), resched_wanted() and clear_resched() have been changed to take a process to act on rather than assuming curproc so that they can be used to implement forward_roundrobin() as described above. - Various other SMP variables have been moved to a MI subr_smp.c and a new header sys/smp.h declares MI SMP variables and API's. The IPI API's from machine/ipl.h have moved to machine/smp.h which is included by sys/smp.h. - The globaldata_register() and globaldata_find() functions as well as the SLIST of globaldata structures has become MI and moved into subr_smp.c. Also, the globaldata list is only available if SMP support is compiled in. Reviewed by: jake, peter Looked over by: eivind
* Catch up to header include changes:jhb2001-03-281-3/+1
| | | | | - <sys/mutex.h> now requires <sys/systm.h> - <sys/mutex.h> and <sys/sx.h> now require <sys/lock.h>
* Send the remains (such as I have located) of "block major numbers" tophk2001-03-265-6/+0
| | | | the bit-bucket.
* Always call resource_int_value function for getting portsize and msize.nyan2001-03-171-4/+6
| | | | | | It was not set resource size (portsize/msize) if resource address was set. This is MFC candidate.
* Add GVC1601 - Rockwell V.34 Plug & Play Modemsanpei2001-03-071-0/+1
| | | | | PR: kern/25204 Submitted by: Victor Ivanov <v0rbiz@icon.bg>
* Add IOD0081 - I-O DATA DEVICE,INC. IFML-560sanpei2001-03-071-0/+1
| | | | | PR: kern/25173 Submitted by: Yohsuke Fujikawa <yohsuke@mx2.nisiq.net>
* Harvest interrupt entropy off the floppy disk controller.markm2001-03-031-1/+2
|
* Fixed style bugs in clock.c rev.1.164 and cpu.h rev.1.52-1.53 -- declarebde2001-02-191-6/+1
| | | | | | tsc_present in the right places (together with other variables of the same linkage), and don't use messy ifdefs just to avoid exporting it in some cases.
* Extend kqueue down to the device layer.jlemon2001-02-151-2/+3
| | | | Backwards compatible approach suggested by: peter
* RIP <machine/lock.h>.markm2001-02-111-4/+0
| | | | | | | Some things needed bits of <i386/include/lock.h> - cy.c now has its own (only) copy of the COM_(UN)LOCK() macros, and IMASK_(UN)LOCK() has been moved to <i386/include/apic.h> (AKA <machine/apic.h>). Reviewed by: jhb
* Catch up to changes to inthand_add().jhb2001-02-091-8/+8
|
* - Catch up to the new swi API changes:jhb2001-02-091-12/+12
| | | | | | | - Use swi_* function names. - Use void * to hold cookies to handlers instead of struct intrhand *. - In sio.c, use 'driver_name' instead of "sio" as the name of the driver lock to minimize diffs with cy(4).
* Change and clean the mutex lock interface.bmilekic2001-02-092-59/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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)
* 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)
* Convert mca (microchannel bus support) from something that we countpeter2001-01-291-3/+3
| | | | (bogus) to something that we test for the presence of.
* Consider that the chipset may be in ECP mode (from BIOS settings)nsouch2001-01-252-36/+37
| | | | | | | even if mode PS/2 is forced with bootflags. As a matter of fact, chipsets needs some extra configuration for accessing PS/2 mode from ECP. The current patch is only relevant for generic chipsets since specific code is supposed to deal with this during detection.
* Remove MUTEX_DECLARE() and MTX_COLD. Instead, postpone full mutexjasone2001-01-211-1/+1
| | | | | | | | initialization until after malloc() is safe to call, then iterate through all mutexes and complete their initialization. This change is necessary in order to avoid some circular bootstrapping dependencies.
* Convert apm from a bogus 'count' into a plain option. Clean out somepeter2001-01-191-3/+3
| | | | other cruft from the files.alpha and files.ia64 that were related to this.
* select() DKI is now in <sys/selinfo.h>.wollman2001-01-091-1/+1
|
* Add OZO8008 - Zoom (33.6k Modem).tanimura2000-12-261-0/+1
| | | | | PR: kern/23336 Submitted by: Paulo Menezes <root@samurai.dee.uc.pt>
* Fix the PR. Getting a dma channel equal to 0 remains a problem though.nsouch2000-12-191-1/+1
| | | | PR: i386/22568
* Convert the sio driver to use a spin mutex instead of a s_lock. This isjhb2000-12-181-123/+58
| | | | | | going to hurt sio(4) performance for the time being. As we get closer to release and have more of the kernel unlocked we can come back to doing arcane optimizations to workaround the limitations of the sio hardware.
* It's possible for an ISA bus to be hung off an EISA bridge, so we need tomsmith2000-12-121-0/+1
| | | | reflect that here.
* Convert more malloc+bzero to malloc+M_ZERO.dwmalone2000-12-084-8/+5
| | | | | Submitted by: josh@zipperup.org Submitted by: Robert Drehmel <robd@gmx.net>
* Staticize some malloc M_ instances.phk2000-12-082-2/+2
|
* Namespace cleanup. Remove some #includes in favour of an explicitmarkm2000-12-021-0/+5
| | | | | | declaration. Asked for by: bde
* - Add a hack for "psmintr: out of sync.." This is NOT a fix,yokota2000-12-011-0/+11
| | | | | | | | | | | but a hack! Add `flags 0x8000' to the psm driver to enable it. The psm driver will try to get out of out-of-sync situation by disabling the mouse and immediately enable it again. If you are seeing this out-of-sync problem because of an incompetent(?!) KVM switch, this hack will NOT be good for you. However, if you are occasionally seeing the problem because of lost mouse interrupt, this might help.
* - Slightly rearrnage IntelliMouse Explorer and Logitechyokota2000-12-011-30/+39
| | | | | MouseMan+ identification routines for efficiency. No functional change.
* Reduce code duplication by using the GET_RESOURCE_LIST bus method and relatedmdodd2000-11-281-26/+12
| | | | | | | | generic resource_list management functions. I'll deal with the EISA bits later. Not objected to by: new-bus
* Make diskerr() always log with printf.phk2000-11-261-2/+1
|
* GC some defunct prototypespeter2000-11-251-4/+0
|
* Ignore resources with a size of 0, as these are disabled (and we don'tmsmith2000-11-071-0/+7
| | | | | | deal with them properly elsewhere). Submitted by: Masayuki FUKUI <fukui@sonic.nm.fujitsu.co.jp>
* Revert two experimental changes which escaped from my devel machine.phk2000-10-281-1/+1
|
* Convert all users of fldoff() to offsetof(). fldoff() is badphk2000-10-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | because it only takes a struct tag which makes it impossible to use unions, typedefs etc. Define __offsetof() in <machine/ansi.h> Define offsetof() in terms of __offsetof() in <stddef.h> and <sys/types.h> Remove myriad of local offsetof() definitions. Remove includes of <stddef.h> in kernel code. NB: Kernelcode should *never* include from /usr/include ! Make <sys/queue.h> include <machine/ansi.h> to avoid polluting the API. Deprecate <struct.h> with a warning. The warning turns into an error on 01-12-2000 and the file gets removed entirely on 01-01-2001. Paritials reviews by: various. Significant brucifications by: bde
* - Overhaul the software interrupt code to use interrupt threads for eachjhb2000-10-252-16/+16
| | | | | | | | | | | | | | | | | | | type of software interrupt. Roughly, what used to be a bit in spending now maps to a swi thread. Each thread can have multiple handlers, just like a hardware interrupt thread. - Instead of using a bitmask of pending interrupts, we schedule the specific software interrupt thread to run, so spending, NSWI, and the shandlers array are no longer needed. We can now have an arbitrary number of software interrupt threads. When you register a software interrupt thread via sinthand_add(), you get back a struct intrhand that you pass to sched_swi() when you wish to schedule your swi thread to run. - Convert the name of 'struct intrec' to 'struct intrhand' as it is a bit more intuitive. Also, prefix all the members of struct intrhand with 'ih_'. - Make swi_net() a MI function since there is now no point in it being MD. Submitted by: cp
* Moved prototypes of isa_alloc_resourcev() and isa_load_resourcev() tonyan2000-10-221-0/+13
| | | | isa/isavar.h, and added needed includes.
* - machine/mutex.h -> sys/mutex.hjhb2000-10-201-3/+3
| | | | | - machine/ipl.h -> sys/ipl.h - Use MUTEX_DECLARE() for clock_lock
* Remove unneeded #include <machine/clock.h>phk2000-10-152-2/+0
|
OpenPOWER on IntegriCloud