summaryrefslogtreecommitdiffstats
path: root/sys/dev/ppbus
Commit message (Collapse)AuthorAgeFilesLines
* Make this driver a better citizen by moving dev creation andimp2001-12-191-46/+45
| | | | | | | other initialization into attach from probe. Also hide a few printfs behind a bootverbose. approved in principle by: phk
* Update to C99, s/__FUNCTION__/__func__/,obrien2001-12-103-12/+12
| | | | also don't use ANSI string concatenation.
* Give the pps driver an additional 8 inputs if we can persuade thephk2001-09-221-43/+154
| | | | | | ppc to go into EPP mode. These 8 inputs are timestamped in polled loop so their resolution will be nanoseconds but their granularity will only be 1/hz.
* KSE Milestone 2julian2001-09-124-11/+11
| | | | | | | | | | | | | | Note ALL MODULES MUST BE RECOMPILED make the kernel aware that there are smaller units of scheduling than the process. (but only allow one thread per process at this time). This is functionally equivalent to teh previousl -current except that there is a thread associated with each process. Sorry john! (your next MFC will be a doosie!) Reviewed by: peter@freebsd.org, dillon@freebsd.org X-MFC after: ha ha ha ha
* Translate various ppbus sequences into microsequences to limitnsouch2001-06-232-109/+128
| | | | | | overhead of abstraction layers. Submitted by: jcm@FreeBSD-uk.eu.org
* -Wunused cleanuppeter2001-06-121-2/+1
|
* Style fixes from Saschaphk2001-06-061-4/+3
| | | | | PR: 16551 Submitted by: Sascha Schumann <sascha@schumann.cx>
* make code use strxxx() callsalfred2001-04-011-11/+3
| | | | Glanced at by: imp
* Send the remains (such as I have located) of "block major numbers" tophk2001-03-264-4/+0
| | | | the bit-bucket.
* Discard extra status information if -1. This has been breaking thensouch2001-01-251-0/+5
| | | | | | PS/2 mode for ZIP+ drives for a long time. Thanks Jonathon. Submitted by: j mckitrick <jcm@FreeBSD-uk.eu.org>
* Cleanup and improve mode detection. Now, you should get what you actuallynsouch2001-01-023-183/+98
| | | | | | | want according to the modes set with the ppc(4) flags. Especially, it should fix some problems with mode detection of parallel chipsets configured to EPP but which have timing troubles with the drives. In such a case, the driver should now fall back to slower modes (PS2, NIBBLE).
* Convert more malloc+bzero to malloc+M_ZERO.dwmalone2000-12-082-5/+3
| | | | | Submitted by: josh@zipperup.org Submitted by: Robert Drehmel <robd@gmx.net>
* Staticize some malloc M_ instances.phk2000-12-081-1/+1
|
* Don't use a private malloc(9) type for something this M_DEVBUFish.phk2000-12-071-6/+4
| | | | Noticed long time ago by: bde
* Lock down the network interface queues. The queue mutex must be obtainedjlemon2000-11-251-14/+10
| | | | | | | | | | | | | | before adding/removing packets from the queue. Also, the if_obytes and if_omcasts fields should only be manipulated under protection of the mutex. IF_ENQUEUE, IF_PREPEND, and IF_DEQUEUE perform all necessary locking on the queue. An IF_LOCK macro is provided, as well as the old (mutex-less) versions of the macros in the form _IF_ENQUEUE, _IF_QFULL, for code which needs them, but their use is discouraged. Two new macros are introduced: IF_DRAIN() to drain a queue, and IF_HANDOFF, which takes care of locking/enqueue, and also statistics updating/start if necessary.
* Remove unneeded #include <machine/clock.h>phk2000-10-1510-10/+0
|
* A quote from the ia64 compiler:dfr2000-10-101-1/+1
| | | | | `char' is promoted to `int' when passed through `...' (so you should pass `int' not `char' to `va_arg')
* Remove an unused variable warning.n_hibma2000-07-181-2/+0
|
* Fix the detection of parallel port Zip drives.n_hibma2000-07-181-4/+5
| | | | | Submitted by: j mckitrick <jcm@freebsd-uk.eu.org> Reviewed by: nsouchu
* Unused include: #include "pps.h"peter2000-06-101-1/+0
|
* Match the include protection with the install location.obrien2000-05-201-3/+3
|
* Rather than use a MD lpt.h, we now use the MI lptio.h.obrien2000-05-191-2/+1
|
* If PERIPH_1284 is not defined, don't even bother calling the BUS_*_INTRn_hibma2000-05-071-9/+15
| | | | | | | | | | functions. If it is defined, check whether bus_alloc_resource has succeeded. If it hasn't, it is in polled mode. Mike Nowlin reports that this change makes the geek port (whatever _that_ is :-) work again on his machine. Submitted by: Mike Nowlin <mike@argos.org>
* Confusing comment.n_hibma2000-05-051-1/+1
|
* Don't use getebuf() unless you really need a struct buf. Malloc willphk2000-05-051-10/+12
| | | | do fine in this case.
* Remove unneeded #include <sys/kernel.h>phk2000-04-293-3/+0
|
* make the example compile again.n_hibma2000-04-271-0/+2
| | | | | | | | The makefile contains a reference to /sys/dev/ppbus. What really should be done is copy the header files to /usr/include/sys/dev/ppbus. PR: kern/16767 Submitted by: Jin Guojun (FTG staff) <jin@gracie.lbl.gov>
* Remove ~25 unneeded #include <sys/conf.h>phk2000-04-194-5/+0
| | | | Remove ~60 unneeded #include <sys/malloc.h>
* Remove unneeded <sys/buf.h> includes.phk2000-04-183-3/+0
| | | | | Due to some interesting cpp tricks in lockmgr, the LINT kernel shrinks by 924 bytes.
* * Factor out the object system from new-bus so that it can be used bydfr2000-04-081-0/+1
| | | | | | | | | | non-device code. * Re-implement the method dispatch to improve efficiency. The new system takes about 40ns for a method dispatch on a 300Mhz PII which is only 10ns slower than a direct function call on the same hardware. This changes the new-bus ABI slightly so make sure you re-compile any driver modules which you use.
* If we can't allocate an IRQ resource, fail in the attach routine.jlemon2000-04-071-0/+4
|
* Add automatic rescan on connect. This happens already if the drive isn_hibma2000-04-041-9/+37
| | | | | | | connected during boot and the vpo module is in the kernel/loaded. In the case where the module is loaded at some later stage with kldload, the CAM bus is now rescanned as well.
* Isolate the Timecounter internals in their own two files.phk2000-03-201-0/+1
| | | | | | | | | | | | | | | Make the public interface more systematically named. Remove the alternate method, it doesn't do any good, only ruins performance. Add counters to profile the usage of the 8 access functions. Apply the beer-ware to my code. The weird +/- counts are caused by two repocopies behind the scenes: kern/kern_clock.c -> kern/kern_tc.c sys/time.h -> sys/timetc.h (thanks peter!)
* I _HATE_ crashes. The lptread() call needs to check LP_BYPASS, becausegreen2000-03-151-0/+5
| | | | | if one tries to use read() on an LP_BYPASS'd dev_t, the softc will be initialized mainly with NULLs, so...
* Fix buffer overrun in pcfclock_read(). The submitter is the originalsheldonh2000-02-201-0/+3
| | | | | | | | author of the affected code. PR: 16552 Submitted by: Sascha Schumann <sascha@schumann.cx> Approved by: jkh
* Fix two warnings.peter2000-02-132-2/+2
|
* Fix system hang when printer locks on missing papernsouch2000-02-081-2/+2
| | | | | | (also called the "printer fiasco") Approved by: jkh
* Make this lot build on alpha.dfr2000-01-253-4/+6
|
* Some newbus-inspired tidy-ups. Use device_identify() rather than scanningpeter2000-01-238-255/+195
| | | | | | | | | | | | the resource table to locate children. The 'at ppbus?' can go again. Remove a few #if Nxxx > 0' type things, config arranges this for us. Move the newbus method glue next to the DRIVER_MODULE() stuff so we don't need extra prototypes. Don't set device descriptions until after the possibility of the probe returning an error. Remove all cdevsw_add() calls, all the drivers that did this also use make_dev() correctly, so it's not required. A couple of other minor nits.
* Add parallel port clock driver.jkh2000-01-191-0/+348
| | | | Submitted by: Sascha Schumann <sascha@schumann.cx>
* Make this compile - missing ")";peter2000-01-141-1/+1
|
* ppi needs to use a bus method to get this rather than peering inside thensouch2000-01-143-4/+6
| | | | | | 1284 stuff. Submitted by: Peter Wemm <peter@netplex.com.au>
* Port of ppbus standalone framework to the newbus system.nsouch2000-01-1418-1406/+1607
| | | | | | | | | | | | | | | | | | | | | Note1: the correct interrupt level is invoked correctly for each driver. For this purpose, drivers request the bus before being able to call BUS_SETUP_INTR and BUS_TEARDOWN_INTR call is forced by the ppbus core when drivers release it. Thus, when BUS_SETUP_INTR is called at ppbus driver level, ppbus checks that the caller owns the bus and stores the interrupt handler cookie (in order to unregister it later). Printing is impossible while plip link is up is still TRUE. vpo (ZIP driver) and lpt are make in such a way that using the ZIP and printing concurrently is permitted is also TRUE. Note2: specific chipset detection is not done by default. PPC_PROBE_CHIPSET is now needed to force chipset detection. If set, the flags 0x40 still avoid detection at boot. Port of the pcf(4) driver to the newbus system (was previously directly connected to the rootbus and attached by a bogus pcf_isa_probe function).
* Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"peter1999-12-296-21/+21
| | | | | | is an application space macro and the applications are supposed to be free to use it as they please (but cannot). This is consistant with the other BSD's who made this change quite some time ago. More commits to come.
* Incorrect NULL -> 0eivind1999-12-201-3/+3
|
* Remove the 'ivars' arguement to device_add_child() andmdodd1999-12-031-2/+2
| | | | | | | | | | | | | | | | device_add_child_ordered(). 'ivars' may now be set using the device_set_ivars() function. This makes it easier for us to change how arbitrary data structures are associated with a device_t. Eventually we won't be modifying device_t to add additional pointers for ivars, softc data etc. Despite my best efforts I've probably forgotten something so let me know if this breaks anything. I've been running with this change for months and its been quite involved actually isolating all the changes from the rest of the local changes in my tree. Reviewed by: peter, dfr
* Print more verbose debugging outputn_hibma1999-10-051-7/+10
| | | | Clean up computation of parameters.
* Remove five now unused fields from struct cdevsw. They should neverphk1999-09-253-15/+0
| | | | | | | | have been there in the first place. A GENERIC kernel shrinks almost 1k. Add a slightly different safetybelt under nostop for tty drivers. Add some missing FreeBSD tags
* Remove NBPF conditionality of bpf calls in most of our network drivers.phk1999-09-251-15/+0
| | | | | | | | | | | | This means that we will not have to have a bpf and a non-bpf version of our driver modules. This does not open any security hole, because the bpf core isn't loadable The drivers left unchanged are the "cross platform" drivers where the respective maintainers are urged to DTRT, whatever that may be. Add a couple of missing FreeBSD tags.
* $Id$ -> $FreeBSD$peter1999-08-2819-19/+19
|
OpenPOWER on IntegriCloud