Commit Graph

1532 Commits

Author SHA1 Message Date
John Hay
d805b866fa This driver supports the SDL Communications RISCom/N2 ISA cards that is
based on the HD64570 chip. Both the 1 and 2 port cards is supported.

Line speeds of up to 2Mbps is possible. At this speed about 95% of the
bandwidth is usable with 486DX processors.

The standard FreeBSD sppp code is used for the link level layer. The
default protocol used is PPP. The Cisco HDLC protocol can be used by
adding "link2" to the ifconfig line in /etc/sysconfig or where ever
ifconfig is run.

At the moment only the X.21 interface is tested. The others may need
tweaks to the clock selection code.
1996-07-05 18:51:59 +00:00
Bruce Evans
f6b4ae3c82 Added or restored #include of <machine/md_var.h>. Some declarations
moved from <machine/cpufunc.h> to better places.
1996-07-01 20:29:10 +00:00
Bruce Evans
d2700ee639 Use the standard timer (interrupt) frequency while calibrating the clocks.
Testing with the high frequency of 20000 Hz (to find problems) only found
the problem that this frequency is too high for slow i386's.

Disable interrupts while setting the timer frequency.  This was unnecessary
before rev.1.57 and forgotten in rev.1.57.  The critical (i8254) interrupts
are disabled in another way at boot time but not in the sysctl to change
the frequency.
1996-07-01 18:00:47 +00:00
Peter Wemm
dcca5a532d Fix typo that prevented the initial/lock state devices from working
correctly (accessing the lock device was not possible).
1996-06-30 04:56:05 +00:00
Joerg Wunsch
a9e9062ca1 Bump various timeouts in scprobe(). This finally fixes the broken
keyboard reset one of my earlier commits has been causing.
1996-06-27 21:36:11 +00:00
Søren Schmidt
da040b2280 Fixed bug in pasting 8bit char (ache).
Added linefeeds in cuts that extend beyond one line.
Prepared for the mousefunctions to be used in nontext modes.
1996-06-26 13:04:53 +00:00
Bruce Evans
c673fe98d7 Added #include of <machine/md_var.h>. This will be needed when
some declarations are moved from <machine/cpufunc.h> to better
places.
1996-06-25 20:31:01 +00:00
Søren Schmidt
ad0c0c784f Change the way moused talk to syscons, now its only delivering mouseevents
via an ioctl (MOUSE_ACTION).
Fixed a couple of bugs (destructive cursor, uncut, jitter).
Now applications can use the mouse via the MOUSE_MODE ioctl, its
possible to have a signal sent on mouseevents, makeing an event loop
in the application take over mouseevents.
1996-06-25 08:54:57 +00:00
Bruce Evans
ea959743cb Moved declarations of static functions to the correct file. This fixes
hundreds of warnings from -Wunused in lkm/syscons/*.
1996-06-23 17:12:05 +00:00
Bruce Evans
5c496ee31e Don't (re)define or use ACTUALLY_LKM_NOT_KERNEL - use the existing
definition of QCAM_MODULE for everything involving LKM'ness.

Makefile:
Don't add -I/sys to CFLAGS.  bsd.kmod.mk adds the correct (relative)
path.
1996-06-23 14:41:55 +00:00
Peter Wemm
17b944a6a7 When writing the settings for stop bits and output hardware flow control,
things tend to work better if you write the settings to the correct
register.. (*blush*).  This subtle bug has been haunting me for ages, and
will solve a few problems that have been reported to me.

Also, take a shot at fixing the serial BREAK processing, what was there
before never really worked.  (There is a PR on this I think)
1996-06-21 21:35:01 +00:00
Søren Schmidt
ab35f219ac Oops, fix a bug that caused updates to the screen to happen, without
anything actually changed, in this case the mousepointer logic.
1996-06-21 11:31:09 +00:00
Søren Schmidt
de4d1b835e Some news for syscons (long overdue):
Real support for a Textmode mousecursor, works by reprogramming the
charset. Together with this support for cut&paste in text mode.
To use it a userland daemon is needed (moused), which provides
the interface to the various mice protokols.
Bug fixes here and there, all known PR's closed by this update.
1996-06-21 07:19:18 +00:00
Bruce Evans
9b2b0822b7 Removed unused #includes of <i386/isa/icu.h> and <i386/isa/icu.h>. icu.h
is only used by the icu support modules and by a few drivers that know
too much about the icu (most only use it to convert `n' to `IRQn').  isa.h
is only used by ioconf.c and by a few drivers that know too much about
isa addresses (a few have to, because config is deficient).
1996-06-18 01:22:40 +00:00
Peter Wemm
e999a90a90 This time, get rid of the struct copies that were really causing gcc to
call memcpy..  It seems that gcc would not inline the implicit call
when copying from a volatile...
1996-06-17 18:52:53 +00:00
Bill Paul
afe0e92aa8 Stomp another compiler warning: sc_devfs_token[] should only be declared
if DEVFS is #defined.
1996-06-17 17:21:35 +00:00
Bruce Evans
f0ea07bffb Reduced nesting of #includes in random.h and adjusted isa/random_machdep.c
to match (pc98/random_machdep.c probably requires a similar change).  This
is a problem area for the PC98 merge - all PC98 ifdefs in <machine/*.h> are
kludges to work around incorrect layering.
1996-06-17 16:47:43 +00:00
Bruce Evans
7d64a7fe80 Added support for TIOCDCDTIMESTAMP (enable/get timestamp of last DCD rise).
Original version by John Hay.

Simplified timestamp code by reading the time exactly when necessary.
This may slow down the interrupt handler with extra calls to microtime(),
but only in bad configurations - the input fifo should normally be
disabled if timestamps on input are being used, since otherwise the
timestamp won't be precisely associated with any particular input event.
The interrupt handler remains slowed down by one test and branch for
each input (and now DCD change) event - avoiding this is not practical
yet.

The simplifications also fixed:
- timestamps for input sometimes being clobbered by output and modem
  status interrupts.
- valid timestamps not being available unless the port is configured with
  vector siointrts.  siointrts no longer exists.
- compiler warnings about siointr* in some configurations.

Simplified timestamp and probe code by depending on recent changes in
microtime() and DELAY() to preserve the interrupt enable flag.
1996-06-17 14:23:39 +00:00
Bruce Evans
16263f7a8b In getit(), use read_eflags()/write_eflags() to preserve the interrupt
enable flag instead of enable_intr() to restore it to its usual state.
getit() is only called from DELAY() so there is no point in optimising
its speed (this wasn't so clear when it was extern), and using
enable_intr() made it inconvenient to call DELAY() from probes that need
to run with interrupts disabled.
1996-06-17 12:50:22 +00:00
Peter Wemm
bde5e68a33 Fix cut/paste error; a read-only variable should have been read/write. 1996-06-16 13:32:16 +00:00
Nate Williams
771acaaa0a Whoops, I accidentally deleted a necessary ":" which is part of the
parameters to printf() using the "D" format.  (Why this even worked on
my box during testing I don't know, but as soon as I powered it on/off
it quite working.)
1996-06-15 00:43:03 +00:00
Nate Williams
333f7d7bb6 At long last, we know have support for the 3C589 in a FreeBSD release
using the existing files using the existing PCCARD support.  Now that
this is in place I would like to fixup the PCCARD hooks and remove the
if_zp driver.  At this point, we support everything we used to support
*AND MORE* with the PCCARD code.

Submitted by:	Naoki Hamada <nao@sbl.cl.nec.co.jp> (via the Nomad release)

[ This works on both my 3C589B and 3C589C ]
1996-06-14 22:11:38 +00:00
Nate Williams
8ca7c1c4a0 Better code for switching the ethernet transceiver.
My 3C509B-COMBO works fine with the following patch. Switching between
UTP and BNC is quite easy. (Just type 'ifconfig ep0 link1 -link2' or 'ifconifg
ep0 link2 -link1'.)

[ I tested this with the additional PC-CARD patches and it works on both
connectors on my 3C589B and 3C589C ]

Reviewed by:	nate
Submitted by:	Naoki Hamada <nao@sbl.cl.nec.co.jp>
1996-06-14 21:28:35 +00:00
Satoshi Asami
ad63a118b2 The Great PC98 Merge.
All new code is "#ifdef PC98"ed so this should make no difference to
PC/AT (and its clones) users.

Ok'd by:	core
Submitted by:	FreeBSD(98) development team
1996-06-14 11:02:28 +00:00
Stefan Eßer
21219d2116 Change CONF1_ENABLE_MSK to 0x7ff00000 in another attempt to decide
whether a system could possibly support PCI configuration mechanism 1
(or whether it rather is an EISA only system ...).
1996-06-13 21:50:41 +00:00
Gary Palmer
c23670e294 Clean up -Wunused warnings.
Reviewed by:		bde
1996-06-12 05:11:41 +00:00
Gary Palmer
10a466c7d3 Clean up -Wunused warnings. Also clean up a -Winline warning while here.
Reviewed by:		bde
1996-06-12 05:04:51 +00:00
Gary Palmer
7b3628096c Clean up -Wunused warnings.
Reviewed by:	 Greg Ungerer <gerg@stallion.oz.au>
1996-06-12 04:26:36 +00:00
Paul Traina
8f33d986bc Move warning messages under bootverbose 1996-06-11 16:11:27 +00:00
Paul Traina
6d715e951e Put clock calibration #defines in opt_clock.h to ease reconfiguration 1996-06-11 16:02:55 +00:00
Joerg Wunsch
2e60812e3a Fix the spl handling. There's still the effect that the timers have
sometimes already been released at the time pcaclose() is called, but
this is now prevented from deadlocking by checking for a running timer
at the start of pca_wait().

At least, i can now play xboing again with pcaudio, this used to hang
the entire system previously within a few seconds.
1996-06-09 14:23:13 +00:00
Andrey A. Chernov
88926e45d5 Implement CDIOCCLOSE 1996-06-09 12:17:53 +00:00
Peter Wemm
80b53b4fd5 Eliminate a struct copy that gcc doesn't inline and ends up as a call to
memset().
1996-06-08 10:18:12 +00:00
Bruce Evans
5610112b22 Fixed calculation of the number of cylinders. wdp_cylinders (was
wdp_fixedcyl) gives it directly.  wdp_removedcyl is "reserved" except
in ancient ATA-1 drafts and shouldn't be added.  This fixes PR 1288.

Changed some fields and comments in struct wdparams to match a less-
ancient ATA draft.

Fixed bit number for `rdy' in status string.
1996-06-08 10:03:38 +00:00
Bruce Evans
7dad0d7ef9 Removed recently introduced unnecessary #includes of <machine/cpu.h>
(bootverbose isn't there in -current) and nearby unnecessary #includes.
1996-06-08 09:37:51 +00:00
Bruce Evans
e7f1854cb7 Fixed group and permissions for devfs devices (group operator was games;
permissions 0640 was 0600).
1996-06-08 09:18:27 +00:00
Bruce Evans
7cc1644db3 Fixed existence, minor numbers, group and permissions for devfs devices
(locked devices weren't created; minor numbers didn't depend on the unit
number; group operator was games; permissions 0640 was 0600).
1996-06-08 09:17:51 +00:00
Bruce Evans
5e0fc49ea8 Replaced some memcpy()'s by bcopy()'s.
gcc only inlines memcpy()'s whose count is constant and didn't inline
these.  I want memcpy() in the kernel go away so that it's obvious that
it doesn't need to be optimized.  Now it is only used for one struct
copy in si.c.
1996-06-08 08:18:00 +00:00
Nate Williams
beca01611f Bring in changes from if_ep.c for PCCARD driver.
Properly determine the offset of the remaining bytes we need to transfer
after outsl'ing all the long words we can during transmission in 32bit mode.
1996-06-04 21:41:01 +00:00
Joerg Wunsch
89cabf8664 Hide the ``wrong signature'' message behind bootverbose. It's
annoying for people who don't have a bus mouse.
1996-06-02 18:57:17 +00:00
Paul Traina
53df9ccfca Fix ioctl() operations...nasty typo 1996-05-31 17:35:07 +00:00
Peter Wemm
ee323f62ad Jump some hoops to have the *.s code being able to be run through both an
ansi and traditional cpp.

The nesting rules of macros are different, which required some changes.
Use __CONCAT(x,y) instead of /**/.
Redo some comments to use /* */ rather than "# comment" because the ansi
  cpp cares about those, and also cares about quote matching.
1996-05-31 01:08:08 +00:00
Peter Wemm
c15b6c4bc6 When estimating the time (in ms) left to drain the output queue based
on the baud rate, dont get upset if it's been hung up by setting B0.
Instead, sleep for a short time, as the host controller takes a while
to go through the state changes.
1996-05-30 23:41:35 +00:00
Gary Palmer
d9378aac9a Clean up the warnings produced by the recent PCI code. Requested by
SE since he doesn't have good access right now
1996-05-27 22:32:23 +00:00
Peter Wemm
d2dc185840 Fix the warnings about "cant inline call to xxx" by reordering two
functions.  It seems gcc wants to have seen the definitions of the
function before it will insert it inline in a caller.
1996-05-27 06:02:52 +00:00
Justin T. Gibbs
c6841cd18f Properly determine the offset of the remaining bytes we need to transfer
after outsl'ing all the long words we can during transmission in 32bit mode.

Closes PR:i386/1243
Submitted by:	flash@eru.tubank.msk.su
1996-05-24 15:22:36 +00:00
Dima Ruban
2dfdc2cd79 "board not responding" -> "board is not responding"
Reviewed by:	gibbs
1996-05-22 00:04:12 +00:00
Stefan Eßer
8408422768 Add support for NE2000 compatible PCI Ethernet cards. The PCI probe
is enabled by having an "device ed0 at isa? [...]" config line.
The first PCI card will get a unit number one higher than the highest
defined for any ISA card of the ED type, e.g. if ed0 and ed1 are
configured, then the PCI cards will be ed2, ed3, ...

BEWARE: If you have configured your kernel as ed0 with the port address
as assigned by the PCI BIOS, then your card will be found by both the
PCI and ISA probes, and bad things may happen. Make sure to restore
the original port address form the GENERIC kernel for the ed0 device!

Reviewed by:	davidg
1996-05-18 17:56:42 +00:00
Joerg Wunsch
09fdca5394 Fix the "well-known retries bug" (a logic-o). 1996-05-12 12:36:59 +00:00
Joerg Wunsch
a9313682fc Give up waiting for a successful keyboard reset after some
unreasonable time.  I've got a PCI mainboard that simply doesn't grok
it, so continuing with a warning (and a keyboard that's working
nevertheless :) seems to be better than spin-looping forever.
1996-05-11 23:16:23 +00:00
Peter Wemm
809959779f *blush* How did this slip through?
Fix a dynamic initialiser in a static variable, and make sure sysctl.h
is #included.
1996-05-08 04:48:25 +00:00
Nate Williams
757dab8dcb Simplify probe. Removed the DELAY() as it's not needed. 1996-05-07 22:33:19 +00:00
Nate Williams
0e76201114 Removed one of the un-documented CTRL pokes, and replace it with a one
second delay.  My ps/2 mouse is now found reliably on my ThinkPad (it
didn't before) and still works on my NEC Versa.

Submitted by:	Richard Wiwatowski <rjwiwat@adelaide.on.net>
1996-05-07 21:59:44 +00:00
Nate Williams
f73355c18f Make sure you include <sys/devconf.h> if you have devconf code. :( 1996-05-07 21:56:46 +00:00
Nate Williams
a0245aeb1a Added code to avoid keyboard 'hangs' during the probe.
Submitted by:	Richard Wiwatowski <rjwiwat@adelaide.on.net>
1996-05-07 21:48:55 +00:00
Nate Williams
0c7b035e39 Added devconf() support.
Obtained from: Richard Wiwatowski <rjwiwat@adelaide.on.net>
1996-05-07 21:32:29 +00:00
Nate Williams
077e6558ec Re-wrote psm_poll_status() to use the ioport supplied in the kernel
config file instead of hard-coding it in the driver.  No functional
differences.

This is based on the code Richard Wiwatowski <rjwiwat@adelaide.on.net>
sent to the mailing list.
1996-05-07 21:11:13 +00:00
Nate Williams
110f70b852 Last typo fixed (network came up for a few minutes). 1996-05-07 20:39:34 +00:00
Nate Williams
ff473041c5 Augh, more typos.
(I hate *Sprint*, since the network is down it's hard to test things well.)
1996-05-07 20:08:21 +00:00
Nate Williams
83cc6d6bdd Whoops, brain-o's with the previous commit. Fix up quite a few typos. 1996-05-07 19:40:47 +00:00
Nate Williams
aaf73493e8 - KNF'ify
- Prepend PSM_ to some defines to avoid any possible name-space problems
- Use some already defined constants instead of magic #'s where appropriate.

[ No functional changes (yet) ]
1996-05-07 19:01:31 +00:00
Paul Traina
07167e6200 Update qcamdriver to 1.1-release distribution.
- move the cdevsw structure back up front (sigh)
- use __linux__ instead of LINUX
1996-05-06 16:47:28 +00:00
Peter Wemm
3af9eab18e Avoid potential trademark conflict 1996-05-05 17:55:54 +00:00
Peter Wemm
3461d589f2 Change the logic of the interrupt/poll loop. It no longer loops until
it empties all of the 256 byte incoming fifo, as it can spend more time
processing one port than intended, especially if data is streaming in
at 115.2K.  The port fifo will be emptied and dumped into the tty system
and left until next time.  I've been running this for quite some time on
one of my systems here.
Also, if the tty layer is blocked or full it lets the hardware assert the
flow control rather than loosing the data.
1996-05-05 17:35:19 +00:00
Peter Wemm
34914e50d4 Change the compiled-in polling parameters to a sysctl setting. 1996-05-05 17:09:04 +00:00
Peter Wemm
962b3ba7ba Add $Id$ 1996-05-04 08:53:27 +00:00
Peter Wemm
1d52f67989 Some trivial updates to the information in here, A good deal of this
is out of date, as it deals with patching the driver into the kernel.
1996-05-04 08:51:42 +00:00
Peter Wemm
3fca8b1c96 Add $Id$
Compile for FreeBSD-2.2
Fix some compile warnings about function declarations
-current's VM include files have changed lately, this needed to be updated.
Use correct major number.
1996-05-04 08:49:40 +00:00
Peter Wemm
8c72709bb8 Add $Id$
Compile for FreeBSD-2.2 (it compiles for 2.0.5, 2.1 and 2.2)
Use -current include file locations
Use -current pciintr calling conventions
1996-05-04 08:44:42 +00:00
Paul Traina
3bac9a71b6 Update to version 1.1beta5d of the driver. This driver now runs under
FreeBSD 2.1 and 2.2, BSD/OS 2.x, Linux, Solaris, and SCO V.
1996-05-04 07:03:55 +00:00
Peter Wemm
dcde8b4904 This commit was generated by cvs2svn to compensate for changes in r15599,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:31:39 +00:00
Peter Wemm
c1e8e76993 Import kernel parts of the v0.0.5alpha Stallion driver(s).
This is now two seperate drivers that support (I think) all of Stallions's
range, including the high performance intelligent cards, and their older
cards.

Submitted by: Greg Ungerer (gerg@stallion.oz.au)

(User-mode parts and patches to follow)
1996-05-04 06:31:39 +00:00
Peter Wemm
53f25a7bd9 This commit was generated by cvs2svn to compensate for changes in r15596,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:16:23 +00:00
Peter Wemm
64b69fe2e7 Import v0.0.4alpha of the Stallion driver.
Sumbitted by: Greg Ungerer (gerg@stallion.oz.au)
1996-05-04 06:16:23 +00:00
Peter Wemm
c7b0cbac79 This commit was generated by cvs2svn to compensate for changes in r15593,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:13:22 +00:00
Peter Wemm
1d0f52d7e4 Import v0.0.3alpha of Stallion driver.
Submitted by: Greg Ungerer (gerg@stallion.oz.au)
1996-05-04 06:13:22 +00:00
Peter Wemm
b17b915ed3 This commit was generated by cvs2svn to compensate for changes in r15590,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:09:47 +00:00
Peter Wemm
7450fe9fc2 Import v0.0.2 alpha of the Stallion driver
Submitted by: Greg Ungerer (gerg@stallion.oz.au)
1996-05-04 06:09:47 +00:00
Peter Wemm
019ab50b3d This commit was generated by cvs2svn to compensate for changes in r15587,
which included commits to RCS files with non-trunk default branches.
1996-05-04 06:03:59 +00:00
Peter Wemm
0a9462e353 Initial import of driver for the Stallion EasyIO and EasyConnection 8/32
boards by Greg Ungerer (gerg@stallion.oz.au).  (v0.0.1 alpha)

This is a multiple import of all revisions available to build up
a history.

This driver supports only some of the Stallion range, in particular, not
the highly intelligent cards.  That comes in shortly.

Submitted by: Greg Ungerer (gerg@stallion.oz.au)
1996-05-04 06:03:59 +00:00
Poul-Henning Kamp
3554bebc3e A nasty #define, so that we don't use buf->b_actf anymore. 1996-05-03 20:52:18 +00:00
Poul-Henning Kamp
14212c9d29 Typo. 1996-05-03 20:15:11 +00:00
Poul-Henning Kamp
0be33caa54 Forget that TAILQ's must be init'ed. 1996-05-03 16:49:14 +00:00
Poul-Henning Kamp
540bfbd1a5 Move from the old buf.b_actf to the new TAILQ(buf.b_act).
Also remove a ton of weird comments and a couple of no-use options.
1996-05-03 14:58:11 +00:00
Poul-Henning Kamp
17542807e5 Move from the old buf.b_actf to the new TAILQ(buf.b_act). 1996-05-03 14:57:27 +00:00
Andrey A. Chernov
f0478277ba Fix ^[[1K (clear from beginning of line to cursor) and
^[[2K (clear whole line), they not work _initially_
1996-05-02 21:47:50 +00:00
Poul-Henning Kamp
f8845af0db First pass at cleaning up macros relating to pages, clusters and all that. 1996-05-02 10:43:17 +00:00
Poul-Henning Kamp
a8c5fef5e6 KGDB is dead. It may come back one day if somebody does it. 1996-05-02 09:34:51 +00:00
Bruce Evans
2dafbfcbab Added calibration the i8254 and the i586 clocks agains the RTC at boot
time.  The results are currently ignored unless certain temporary options
are used.

Added sysctls to support reading and writing the clock frequency variables
(not the frequencies themselves).  Writing is supposed to atomically
adjust all related variables.

machdep.c:
Fixed spelling of a function name in a comment so that I can log this
message which should have been with the previous commit.

Initialize `cpu_class' earlier so that it can be used in startrtclock()
instead of in calibrate_cyclecounter() (which no longer exists).

Removed range checking of `cpu'.  It is always initialized to CPU_XXX
so it is less likely to be out of bounds than most variables.

clock.h:
Removed I586_CYCLECTR().  Use rdtsc() instead.

clock.c:
TIMER_FREQ is now a variable timer_freq that defaults to the old value of
TIMER_FREQ.  #define'ing TIMER_FREQ should still work and may be the best
way of setting the frequency.

Calibration involves counting cycles while watching the RTC for one second.
This gives values correct to within (a few ppm) + (the innaccuracy of the
RTC) on my systems.
1996-05-01 08:39:02 +00:00
Bruce Evans
b1d3d2ffcf Fixed a race that caused panics in kernel printfs when the screen timeout
routine changed the screen pointers while output was in progress.
1996-05-01 03:58:21 +00:00
Stefan Eßer
e20df7fc31 Make pcibus_check() ignore Device/Vendor IDs of all 0. 1996-04-30 21:37:21 +00:00
Julian Elischer
6ebe2436ab slight re-ordering to allow the qcam to compile with devfs enabled. 1996-04-29 20:05:52 +00:00
Søren Schmidt
03475c250b Removed options MAXCONS & HARDFONT, they are no longer in use
(and havn't been for long, sigh)
1996-04-26 06:45:41 +00:00
Nate Williams
e12ac36c96 Format the already applied PCCARD additions to use KNF form. No
functional changes.
1996-04-23 18:36:56 +00:00
Nate Williams
e597b4972e - add apm to the GENERIC kernel (disabled by default), and add some comments
regarding apm to LINT
- Disabled the statistics clock on machines which have an APM BIOS and
  have the options "APM_BROKEN_STATCLOCK" enabled (which is default
  in GENERIC now)
- move around some of the code in clock.c dealing with the rtc to make
  it more obvios the effects of disabling the statistics clock

Reviewed by:	bde
1996-04-22 19:40:28 +00:00
Justin T. Gibbs
1d7ded8adf Change the devconf description from "ISA or EISA bus" to "ISA bus" now
that we have eisaconf.
1996-04-20 21:22:32 +00:00
Poul-Henning Kamp
6523110494 Whoops, shouldn't really have been here, but what the heck: remove some
stale comments.
1996-04-18 21:37:43 +00:00
Paul Traina
4f789210dc Support FreeBSD v2.1 1996-04-17 09:37:17 +00:00
Paul Traina
60b0febdbf Add in linux support for the quickcam driver bottom half and
add a new "invasive camera scan" option for folks who have weird
cameras or weird parallel ports.
1996-04-17 09:00:53 +00:00
Bruce Evans
a74080cc94 Oops, include opt_pcvt_hdr.h before the key value in it is used. 1996-04-13 16:59:29 +00:00
Bruce Evans
aef18d6ed7 Another try: fixed bogus change of the fifo settings for the non-speed of 0.
rev.1.30 incorrectly changed the behaviour from always disabling the fifo
to always enabling it.
1996-04-13 14:55:18 +00:00
Bruce Evans
c5294719c3 Eliminated sloppy common-style declarations. Now there are no duplicated
common labels for LINT.  There are still some common declarations for the
!KERNEL case in tcp_debug.h and spx_debug.h.  trpt depends on the ones in
tcp_debug.h.
1996-04-13 12:45:57 +00:00
Bruce Evans
65a59d4b3f Declared `unittab' as static. It was bogusly shared between the asc and
gsc drivers.
1996-04-13 12:18:45 +00:00
John Hay
d80101ee8e Improve the handling of receive errors. Fix a nasty bug in the receive
buffer code.
1996-04-12 19:57:44 +00:00
Bruce Evans
3745f80a48 Moved AUTO_EOI_[12] and most sio and pcvt options out of the makefile. 1996-04-11 21:18:49 +00:00
Sujal Patel
e04401bad1 Added a note about OPTi 82C929 based cards.
Clarified GUS DMA Settings.
Other misc. changes.

This should hold us over until I can finish cleaning up TASD, and finish
reintegrating all of the FreeBSD changes to the sound driver.  At that time
this document will be removed, and it's information moved to the handbook.
1996-04-11 15:34:22 +00:00
Marc G. Fournier
97bc0f09cf Added documentation for "options PAS_JOYSTICK_ENABLE" 1996-04-11 06:23:18 +00:00
Marc G. Fournier
6d4bca5b8a removed RS_IBUFSIZE #ifndef - have been informed it was a bad idea 1996-04-10 18:09:58 +00:00
Marc G. Fournier
f4f119017f Placed an #ifndef around RS_IBUFSIZE so that it can be changed in the
config file ... PR#528 is reportly fixed by adding 'options RS_IBUFSIZE=1024'
to the config file
1996-04-10 04:18:36 +00:00
Sujal Patel
c755a8837c Added isa_dmadone() to fix the errors the sound driver has been complaining
about.

Update driver to use isa_dma_acquire() and isa_dma_release()
1996-04-08 19:42:07 +00:00
Sujal Patel
100f78bbe0 Update drivers to use isa_dma_acquire() and isa_dma_release()
Reviewed by:	bde
1996-04-08 19:40:57 +00:00
Sujal Patel
1dce4e5d60 Add a lock for DMA Channels to prevent two devices from using the same DMA
channel at the same time.  The functions isa_dma_acquire() and
isa_dma_release() should be used in all ISA drivers which call isa_dmastart().
This can be used more generally to register the usage of DMA channels in
any driver, but it is required for drivers using isa_dmastart() and friends.

Clean up sanity checks, error messages, etc.
Remove isa_dmadone_nobounce(), it is no longer needed

Reviewed by:	bde
1996-04-08 19:38:57 +00:00
Garrett Wollman
dadd5f3a95 Added a $Id$ keyword. Bruce still needs to put a copyright notice
on this file.
1996-04-08 16:41:06 +00:00
Poul-Henning Kamp
a925b654ee Replace usage of buf->b_actf with queue.3 and buf->b_act. 1996-04-08 07:56:42 +00:00
David Greenman
d40802692e Killed sections 3 and 4 of my copyright as I think it is unnecessarily
restrictive.
1996-04-08 01:25:22 +00:00
Bruce Evans
bc4750691c Use rdtsc() function instead of inline essembler. 1996-04-07 18:16:26 +00:00
Bruce Evans
5670f8fbd7 Changed #includes of <i386/include/foo.h> to #includes of <machine/foo.h>. 1996-04-07 17:50:10 +00:00
Bruce Evans
6ffde942bf Removed never-used #includes of <machine/cpu.h>. Many were apparently
copied from bad examples.
1996-04-07 17:39:28 +00:00
Bruce Evans
3157adc8af Removed now-unused #includes of <machine/cpu.h>. They were for bootverbose
being declared in the wrong place.
1996-04-07 17:32:42 +00:00
Bruce Evans
2151975455 Fixed devfs device names and numbers.
Fixed handling of unknown CMOS types - don't attach unrecognized devices.
1996-04-07 14:46:42 +00:00
Andrey A. Chernov
2cb9219c5d Fix adjkerntz expression priority 1996-04-05 18:56:10 +00:00
Andrey A. Chernov
fe0d5f43c5 Add wall_cmos_clock sysctl variable, needed to manage adjkerntz even for
UTC cmos clocks (needed for Local Timezone FSes)
1996-04-05 03:36:31 +00:00
Joerg Wunsch
c80faa792c Work around a braindead signal handling in many newer HP printers.
They don't have BUSY de-asserted by the time they ACK (and thus cause
an interrupt).  The workaround is to try seeing if the BUSY will be
de-asserted soon, and if not, to use an incremental backoff and
semi-polled mode instead of the fixed timeout with 1/2 s we've been
using previously (that caused the printer to run really slooow).

Printers that have been working previously should not be affected by
this.
1996-04-04 12:28:36 +00:00
Marc G. Fournier
ecd87fe6c3 changed from using dev_link() to devfs_link() 1996-04-02 04:52:03 +00:00
Justin T. Gibbs
a9debe9ce1 Convert to use stdarg in aha_cmd. Use XS_SELTIMEOUT for selection timeouts.
Obtained from: stdarg fixes adapted from cgd's work on the NetBSD BT driver
1996-03-31 18:19:38 +00:00
Joerg Wunsch
0e317d05cc Fetch the (dummy) READY CHANGED condition interrupt stati that
happen after an FDC reset.

Submitted by:	bde
1996-03-31 18:04:51 +00:00
Joerg Wunsch
4ddc73e65b Fix a bogus message:
ed0: Invalid irq configuration (2) must be 2-5 for 3c503
                                ^          ^
1996-03-31 15:53:19 +00:00
Bruce Evans
ef9805a3c8 Moved rtcin() to clock.c.
Always delay using one inb(0x84) after each i/o in rtcin() - don't
do this conditional on the bogus option DUMMY_NOPS not being defined.
If you want an optionally slightly faster rtcin() again, then inline
it and use a better named option or sysctl variable.  It only needs
to be fast in rtcintr().
1996-03-31 04:05:36 +00:00
Bruce Evans
5d170d7eb8 Killed religous FASTER_NOP again. 1996-03-31 03:31:29 +00:00
Justin T. Gibbs
2af488412c Override the unit number passed into us in the isa_device structure with
the current unit in bt_unit.  We do this as a kludge to make the unit nubmer
work properly between the pci/eisa/isa bt boards that are in the system.
1996-03-31 03:06:20 +00:00
Bruce Evans
a680ab7537 Count PCI irqs in up to 4 ISAish counters named `pci irqnn' instead of
in the clk0 counter.

Reviewed by:	s
1996-03-29 15:01:51 +00:00
Bruce Evans
e57841c795 Fixed devfs group of some more disk devices.
Added devfs lpt control device (only the standard one, not the ones that
aren't supported by MAKEDEV).

Removed some stupid comments.
1996-03-29 11:54:56 +00:00
Bruce Evans
f85120ac5b Fixed group of some more disk devices.
Fixed devfs function names.
1996-03-29 11:45:12 +00:00
Marc G. Fournier
734daefc97 Switched from using devfs_add_devsw() to devfs_add_devswf()
Reviewed by:	julian@freebsd.org
1996-03-28 14:31:42 +00:00
Marc G. Fournier
719d4dc5bd Added DEVFS support to create ttyv* devices
Reviewed by:	julian@freebsd.org
1996-03-28 14:30:37 +00:00
Marc G. Fournier
6e18ce4676 Switched from using devfs_add_sw() to using devfs_add_swf()
Reviewed by:	julian@freebsd.org
1996-03-28 14:29:52 +00:00
Bruce Evans
6c4591a089 Fixed ownerships of callout devices. 1996-03-27 20:03:32 +00:00
Bruce Evans
df957ee1b3 Moved the initialization of the devfs devices to after the initialization
of the devswitch so that it actually works.
1996-03-27 19:11:41 +00:00
Bruce Evans
2412bc33ad Fixed name of /dev/speaker (it's not spkr). 1996-03-27 19:07:33 +00:00
Bruce Evans
6ae323519c Fixed group of disk devices (was wheel or games, now operator).
Added scsi control devices.

Converted almost everything that I changed to use devfs_add_devswf()
and verbose id macros.

st.c:
Renamed enrst* to erst* since that's what the current name is (enrst
seems to be an old name).
1996-03-27 18:50:10 +00:00
Nate Williams
cdf642d171 Whoops, back out the last commit, which was accidentally committed at
the same time as the if_zp cleanup patch.

The commit that occurred was an incomplete patch for APM on my laptop
and needs more work.
1996-03-23 21:36:03 +00:00
Nate Williams
ada00a4447 Now that ac->ac_ipaddr and arpwhohas() no longer exist, remove the
ifdef'd out code that used it.
1996-03-23 21:32:39 +00:00
Bill Fenner
c8fcba1870 Remove reference to ac_ipaddr, which was being used to
determine if the interface had been assigned an IP address.
This code prevented the interface from receiving ethernet
broadcasts if it had no IP address assigned, and appeared
to be an optimization that is not completely needed.
1996-03-23 19:34:12 +00:00
Paul Traina
f3a4ca94cd Add support for /very/ experimental -e (exposure) option.
Add support for LKM operation.

Change M_NOWAIT on buffer memory allocation to M_WAIT in hopes we'll be
able to get ourselves a nice fat buffer from the kernel if we suspend.

Note: The LKM support looks kinda screwy in two areas, where I found
      problems with the kernel proper.  First, calling dev_attach()
      at module load time will cause a panic.  I haven't investigated.
      Secondly, I had to manually call qcam_drvinit() to register the
      device softc structure by hand at module load time.  This seems
      bogus,  it should be called as a core part of the module load
      process for character/block device drivers.
1996-03-21 08:22:59 +00:00
Andrey A. Chernov
e84f22b522 Fix/cleanup raw partition open/close code 1996-03-17 13:33:42 +00:00
Jordan K. Hubbard
2dbb98e0af This is a revised fe, Ethernet driver for MB8696x based adapters. 1996-03-17 08:36:38 +00:00
Peter Wemm
fe63158271 Changes to the Digi/Arnet SYNC driver:
1. Create 2 x 8k transmit buffer blocks in place of the 16k block previously.
   With this change the speed as tested with ttcp on a 2Mbit link went up
   from 206kbyte/s to 236kbyte/s.
2. Change the rest of the functions to also have the definition of the
   return value on a sepperate line.
3. Remove some unused variables.
4. Add code to recover from DMA underruns.
5. Reorder ar_get_packets() to handle errors better.
6. Only allocate a mbuf cluster if the data is more than the mbuf.

(and in a second diff in addition to the above)
7. Stops the occasional DMA underruns that occurred when 2 channels
   are running at 2Mbit/s.

Submitted by: John Hay <jhay@mikom.csir.co.za>
1996-03-17 00:29:35 +00:00
Jean-Marc Zucconi
80da27b88c Fix the isa_device table (lkm): id_irq and id_maddr must be 0.
Pointed out by: bde
1996-03-16 01:08:04 +00:00
Jean-Marc Zucconi
b1fe5b5c60 Add code to make it a loadable kernel module 1996-03-15 20:35:06 +00:00
Nate Williams
44f0e01b25 Removed undocumented an unused APM_SLOWSTART code. 1996-03-12 05:44:25 +00:00
David Greenman
83bf11d386 More missing int32 -> int32_t... 1996-03-10 18:33:43 +00:00
Justin T. Gibbs
58a8ca6a4d Cleanse the SCSI subsystem of its internally defined types
u_int32, u_int16, u_int8, int32, int16, int8.
	Use the system defined *_t types instead.
1996-03-10 07:04:48 +00:00
Jordan K. Hubbard
3873c27840 Don't print DMA busy messages - the sound code apparently runs
afoul of this without actually providing useful information and
works nonetheless.
Submitted by:	Jim Lowe <james@miller.cs.uwm.edu>
1996-03-10 02:10:27 +00:00
Rodney W. Grimes
46ed21d1a7 Convert a timeout loop from 100 iterations of 15uS to 50
iterations of 30uS so that really fast systems stop getting
timeout messages from the Riscom driver.

Reviewed by:	ache, peter@nmti.com (Peter da Silva)
1996-03-09 18:59:00 +00:00
Poul-Henning Kamp
6ec922bb91 Validate the length before we trust it.
Submitted by:	Andrew.Gordon@net-tel.co.uk
1996-03-04 15:58:25 +00:00
Peter Wemm
af6646cdc5 Make the handshake lines do the right thing. This is untested by the author
but others say it's working. (DTR etc)

Closes PR#884

Submitted-by: John Hay <jhay@mikom.csir.co.za>
1996-03-03 08:42:28 +00:00
Peter Wemm
4bd4912865 Add more options into the conf/options and i386/conf/options.i386 files
and the #include hooks so that 'make depend' is more useful.  This
covers most of the options I regularly use (but not all) and some other
easy ones.
1996-03-02 18:24:13 +00:00
Paul Traina
9d2baf5cdf Update the Connectix QuickCam driver to match my current work.
- split driver into FreeBSD specific and camera specific portions
  (qcamio.c can run in user mode, with a Linux "driver top" etc,
   and qcam.c should be trivial to port to NetBSD and BSDI.)
- support for 4bppand bidirectional transfers working better
- start of interleaved data-transfers byte-stream decodes (some of this
  stuff has been pulled out for the moment to make it easier to debug)

At this point, anyone who wants to port it to other platforms should feel
free to do so.  Please feed changes directly back to me so that I can produce
a unified distribution.
1996-03-02 03:48:19 +00:00
John Dyson
33309c7fc0 More b_flags fixes. 1996-03-02 01:49:51 +00:00
John Dyson
f5d1e6dae6 Fix a bug that b_flags was getting unnecessarily modified by
the slice code.  The effect up to now has been insignficant, but
improved buffer allocation code will break with this problem.
1996-03-01 19:01:04 +00:00
Justin T. Gibbs
6398c75dc7 Fix media type determination. 1996-02-28 17:19:04 +00:00
Nate Williams
f2b04a2396 Fix for 3C589C model. This patch allows people with the new models to work and
doesn't break support for the older models (tested with my 3C589B).

Reviewed by:    Joshua Gahm <jgahm@BBN.COM>
Submitted by:   hosokawa@mt.cs.keio.ac.jp (HOSOKAWA Tatsumi)
1996-02-28 16:23:36 +00:00
Andrey A. Chernov
79dd972e3e Fix re-sense code
Remove unused part of close code
1996-02-27 19:08:39 +00:00
Andrey A. Chernov
f4cb715ffe rmcd0c: now several ioctls (eject/close/debug/reset/etc.) works
even not CD sensed. Open of this device without CD sensed allowed too.
Other ioctls re-sense CD for this device.
1996-02-27 18:53:50 +00:00
Justin T. Gibbs
eea817fc73 Clean up the 3c5x9 driver and add an eisaconf probe to it. This should
prevent it from conflicting with other drivers (like the aic7xxx driver).
Most of the work was in spliting out common portions of the driver and
making them generic enough to be called from the eisaconf probe.
1996-02-26 01:05:36 +00:00
Bruce Evans
3b3bedbc0e Added some delays to the probe. This might fix some incompatible UARTs
(the ones that take more than a few hundred nsec and less than 1 msec to
switch their IRQ output).
1996-02-25 21:10:54 +00:00
Bruce Evans
8335c1b8ae Don't turn off the motor on active drives. The motor timeout may
occur while a command is in progress if the system is overloaded
or was stopped at a debugger breakpoint.
1996-02-25 21:01:31 +00:00
Joerg Wunsch
2e899e8a02 . move out the error and status register def's for wt into
<machine/wtio.h>, so mt(1) can print them,

. cosmetics: put the return type and the function name onto
  different lines.
1996-02-22 00:31:49 +00:00
Justin T. Gibbs
162b7f0ac2 - Properly set the watchdog timer only during transmits.
- Clean up the access to our ifnet structure by caching a pointer
  to it instead of always digging through our softc structure.

Submitted by: Watchdog fixes by Serge A. Babkin <babkin@hq.icb.chel.su>
1996-02-13 15:55:33 +00:00
Poul-Henning Kamp
01a3e1a590 use devfs_add_devswf and avoid local variable. 1996-02-13 14:15:13 +00:00
Andrey A. Chernov
52be2bc34c Implement CDIOCSTART 1996-02-13 02:32:36 +00:00
Paul Traina
ab58050112 Close kern/627 - panic if syscons not attached 1996-02-08 06:30:31 +00:00
Garrett Wollman
9b44ff2214 Clean up Ethernet drivers:
- fill in and use ifp->if_softc
	- use if_bpf rather than private cookie variables
	- change bpf interface to take advantage of this
	- call ether_ifattach() directly from Ethernet drivers
	- delete kludge in if_attach() that did this indirectly
1996-02-06 18:51:28 +00:00
Andrey A. Chernov
f2b4163c2a Deliver all bells to current console, use different pitch
for non-originating bells.
1996-02-05 14:08:39 +00:00
Paul Traina
56d073db13 Document kernel config flags better and add bidirectional override 1996-02-04 10:23:33 +00:00
Paul Traina
9e88c75a9f Add ability to bypass the auto-detection code. It used to be rock solid
for me, but has gotten a bit flakey in bidirectional parallel port mode.

Fix a bug in bidirectional parallel port transfers, more work is still
needed here (testers welcome).

Minor cleanup.
1996-02-04 10:02:35 +00:00
Andrey A. Chernov
3025715460 Implement CD_MEDIA_CATALOG request for read_subchannel
Obtained from: NetBSD
1996-02-03 14:33:56 +00:00
Andrey A. Chernov
0b2207bcb3 Detect yet one kind of device (taken from NetBSD)
Use more accurate TOC size calculation
1996-02-03 00:06:49 +00:00
Andrey A. Chernov
1cf944e85c Implement PREVENT & CLOSE ioctls 1996-02-02 22:08:28 +00:00
Andrey A. Chernov
8b1448af24 Remove close tray on open - works very bad with xcdplayer 1996-02-02 21:18:02 +00:00
Andrey A. Chernov
c3ed4fcf9d Exchange addr_type<->control 1996-02-02 20:54:27 +00:00
Andrey A. Chernov
4a52a30aff Calculate TOC size to match what scsi cd says.
Exchange control<->addr_type fields
1996-02-02 20:50:04 +00:00
Paul Traina
b184a4f4e4 Remove the ability for the user mode programs to specify bidirectional
vs unidirectional transfer modes.  The kernel handles hardware, user mode
programs shouldn't get in the way.

This cleans up some really ugly grots that I hated too. :-)

Suggested by: Sujal Patel <smpatel@wam.umd.edu>
1996-02-02 20:37:51 +00:00
Paul Traina
b0f4bf0063 Add support for Connectix QuickCam(tm)
* this is my unoptimized driver, it works fine, it's not as fast as it
* could be (yet) -- I have yet to merge in ideas from other QuickCam
* developers.
1996-02-02 19:27:57 +00:00
Andrey A. Chernov
108fdb172f Implement PLAYBLOCKS ioctl, add argument checking to other PLAY* ioctls
Obtained from: NetBSD (partially)
1996-02-01 19:15:41 +00:00
Andrey A. Chernov
7e1ed1c4aa addr_type field was ever not assigned, control field was assigned incorrectly 1996-02-01 17:27:01 +00:00
Andrey A. Chernov
3a08c9b183 Return to #pragma pack(4) after header is done
Obtained from: NetBSD
1996-02-01 17:19:46 +00:00
Andrey A. Chernov
6495d86b22 Fix TOC size calculation: old code assing volume size here 1996-02-01 16:51:53 +00:00
Andrey A. Chernov
e48413a02e Oops, I pick wrong size field for leadout entry 1996-02-01 16:11:42 +00:00
Jordan K. Hubbard
26a2ebbb95 Sync with latest Meteor and Spigot sources from James.
Submitted by:	Jim Lowe <james@miller.cs.uwm.edu>
1996-02-01 07:36:34 +00:00
Andrey A. Chernov
dff88dc420 Audio part: various improvements from NetBSD driver
Convert LBA to network order now
1996-01-30 23:27:20 +00:00
Andrey A. Chernov
42f5e5cdbe Bugfix: don't convert LBA to host order, they must stay in network order. 1996-01-30 23:11:45 +00:00
Mike Pritchard
6c5e9bbdf5 Fix a bunch of spelling errors in the comment fields of
a bunch of system include files.
1996-01-30 23:02:38 +00:00
Garrett Wollman
3addba4f55 No longer use the cyclecounter to attempt to correct for late or missed
clock interrupts.

Keep a 1-in-16 smoothed average of the length of each tick.  If the
CPU speed is correctly diagnosed, this should give experienced users
enough information to figure out a more suitable value for `tick'.
1996-01-30 18:56:47 +00:00
Andrey A. Chernov
48ce3c2cee Calculate leadout entry instead of honor ATAPI request
(it can be wrong for some devices)
1996-01-30 15:25:12 +00:00
Andrey A. Chernov
e407db3cbc READTOCENTRYS: protect against stack overflow when incorrect data
stored in CD's TOC
1996-01-30 13:15:28 +00:00
Andrey A. Chernov
685a5a0b51 Don't generate EINVAL for data_len too big in READTOCENTRYS, it
reduces automatically to reasonable value in the code below
1996-01-30 12:07:15 +00:00
Andrey A. Chernov
71517d7ccf Fix READTOCENTRYS partialy based on kientzle@netcom.com patch partialy on
my own ideas
1996-01-30 11:32:20 +00:00
Andrey A. Chernov
bc7805ece3 Fix audio part, especially READTOCENTRYS inspired by NetBSD driver
and my own ideas
1996-01-30 10:31:12 +00:00
David Greenman
ab11bf854a Restore my change to the watchdog params that Paul spammed in rev 1.18. 1996-01-30 07:25:44 +00:00