Commit Graph

2443 Commits

Author SHA1 Message Date
Kazutaka YOKOTA
2ad872c579 The first stage of console driver reorganization: activate new
keyboard and video card drivers.

Because of the changes, you are required to update your kernel
configuration file now!

The files in sys/dev/syscons are still i386-specific (but less so than
before), and won't compile for alpha and PC98 yet.

syscons still directly accesses the video card registers here and
there; this will be rectified in the later stages.
1999-01-11 03:18:56 +00:00
Nicolas Souchu
a7006f894f Fix broken low level ppb_rxxx() return type: char becomes u_char.
Submitted by: Bruce Evans <bde@zeta.org.au>

Some ppb bootup printfs simplified.
1999-01-10 16:41:14 +00:00
Nicolas Souchu
bc35c17446 Major ppbus commit with:
+ ECP parallel port chipset FIFO detection
	+ DMA+FIFO parallel I/O handled as chipset specific
	+ nlpt updated in order to use the above enhanced parallel I/O.
	  Use 'lptcontrol -e' to use enhanced I/O
	+ Various options documented in LINT
	+ Full IEEE1284 NIBBLE and BYTE modes support. See ppbus(4) for
	  an overview of the IEEE1284 standard
	+ Detection of PnP parallel devices at boot
	+ Read capability added to nlpt driver to get IEEE1284 compliant
	  printer status with a simple 'cat /dev/lpt0'
	+ IEEE1284 peripheral emulation added to BYTE mode. Two computers
	  may dialog according to IEEE1284 signaling method.
	  See PERIPH_1284 option and /sys/dev/ppbus/ppi.c

All this code is supposed to provide basic functions for IEEE1284 programming.
ppi.c and nlpt.c may act as examples.
1999-01-10 12:04:56 +00:00
Bruce Evans
b2aa114118 Removed the asm version of translate_bytes(). When both the C
version and the asm version are inlined, and everything is cached,
the asm version is 1.75 times slower than the C version on P5's.
On K6's, it is only 1.25 times slower.
1999-01-09 13:50:52 +00:00
Bruce Evans
d18c16d45b Removed buggy, `#if 0'ed asm version of translate_bytes() instead of
fixing it.  See rev.1.22 of ../sound/audio.c for fixes.  When both
the C version and the asm version are inlined, and everything is cached,
the asm version is 1.75 times slower than the C version on P5's.  On
K6's, it is only 1.25 times slower.
1999-01-09 13:43:09 +00:00
Bruce Evans
47886981ee Don't put operands in clobber lists, since this is dubious for old
versions of gcc and broken for current versions of egcs.  The asm
here (for translate_bytes()) is now an interesting example of one
that needs to be volatile to work.

Fixed missing "memory" in the clobber list for translate_bytes().

Submitted by:	"John S. Dyson" <dyson@iquest.net> but rewritten by me
1999-01-09 13:27:37 +00:00
Kazutaka YOKOTA
617b908036 Add the new keyboard driver and video card driver. They will be
used by console drivers.

(They are not yet activated yet.  Wait for announcement later.)
1999-01-09 02:44:50 +00:00
Bruce Evans
2a32c15f45 Unspammed includes in <machine/cpufunc.h> in the !SMP case. Partially
unspammed them in the SMP case.
1999-01-08 19:17:49 +00:00
Bruce Evans
68ba369606 Moved declarations related to copying and zeroing to the right place. 1999-01-08 16:29:59 +00:00
Kazutaka YOKOTA
fc847f6651 Remove a hard-coded table of kernel console I/O functions exported
from sc, vt and sio drivers.  Use instead a linker_set to collect them.

Staticize ??cngetc(), ??cnputc(), etc functions in sc and vt drivers.
We must still have siocngetc() and siocnputc() as globals because they
are directly referred to by i386-gdbstub.c :-(

Oked by: bde
1999-01-07 14:14:24 +00:00
Kazutaka YOKOTA
2d15a1badc Move IO_PSMSIZE from kbdio.h to isa.h. I thought I did this a long time
ago...

While I am here, correct the values for IO_MDASIZE and IO_CGASIZE; they
should be 12 rather than 16.
1999-01-06 05:40:01 +00:00
Luigi Rizzo
73a5bda360 Fix YMF719 detection (report by jose@we.lc.ehu.es).
Fix compile problems without "controller pnp0"
(fix by German Tischler)
1999-01-04 20:06:38 +00:00
Luigi Rizzo
2bd69c5d34 Bring in ad1816 patches from German Tischler.
Fix 'device not configured' problem that people were experiencing
when only PCI devices are present.
1999-01-04 10:40:14 +00:00
KATO Takenori
8f1ca31497 - Remove bus-dependent addresses from `ic' file.
- Special registers of IO-DATA device's RSA series are defined in
  ic/rsa.h (new file).

Pointed out by:	Bruce Evans <bde@zeta.org.au>
Submitted by:	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1999-01-03 15:57:02 +00:00
KATO Takenori
3171a83027 Support following devices:
- on board 2nd CCU
  - Midori Elec. MDC-926Rs
  - Midori-Hayes ESP98
  - NEC PC-9861K, PC-9801-101 PC-9801-120
  - Melco IND-SP and IND-SS
  - PIO-9032A/B/C
  - B98-01 and B98-02
  - IO-data device RSA-98II and RSA-98III
  - MC-16550
  - MC-RS98
  - Media Inteligent RSB-2000/3000 and RSB-384
  - PCMCIA modem card

Submitted by:	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1999-01-03 05:03:47 +00:00
Tim Vanderhoek
28cb15a9a9 Extraneous space. 1999-01-02 17:11:45 +00:00
Luigi Rizzo
0a1dd951c8 unbreak devfs support after wrong cut&paste...
ReportedBy: Louis A. Mamakos
1999-01-01 14:53:31 +00:00
Dag-Erling Smørgrav
70bfbd280e Correct typo in macro name. 1999-01-01 14:38:30 +00:00
Bruce Evans
93ac7ca8cf Minor English and spelling fixes. 1999-01-01 14:21:13 +00:00
Peter Wemm
b3c0a3cc54 Part 3 of the pcvt/voxware revival.
Reviewed by:	core
1999-01-01 08:23:23 +00:00
Peter Wemm
a0f70ac053 Part 2 of pcvt/voxware revival. I hope I have not clobbered any other
deltas, but it is possible since I had a few merge conflicts over the last
few days while this has been sitting ready to go.

(Part 1 was committed to the config files, but cvs aborted grrr..)

Approved by:    core
1999-01-01 08:18:13 +00:00
Luigi Rizzo
4964edb0c6 Extend the callback mechanism and add hooks to support PCI cards.
Remove a few unused variables.
1998-12-31 07:34:01 +00:00
Luigi Rizzo
172ea6ae6f Update documentation on cards and config 1998-12-31 07:28:24 +00:00
KATO Takenori
9ffb74afa4 Another(better) way to support Access/NOTE N98(PC-98) without any effects
for other Access/PC series.

Submitted by:	Chiharu Shibata <chi@bd.mbn.or.jp>
1998-12-31 03:21:14 +00:00
Kazutaka YOKOTA
13e05026dd Make the VESA KLD module work! 1998-12-30 11:21:08 +00:00
Tim Vanderhoek
dea9268b70 Silence -Wtrigraph.
Submitted by:	Bradley Dunn <bradley@dunn.org>  (pr: kern/8817)
1998-12-30 00:37:44 +00:00
KATO Takenori
64f6f1fa7e CAM support.
Submitted by:	NOKUBI Hirotaka <hnokubi@yyy.or.jp> and
             	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1998-12-28 12:46:55 +00:00
Søren Schmidt
184d92210a Fix the move of the ulaw.h file.. 1998-12-27 20:09:31 +00:00
Søren Schmidt
28706d37a7 Fix breakage by cleanup. 1998-12-27 17:12:02 +00:00
Søren Schmidt
50bac46f45 Pre 3.0 branch cleanup sos#2: sound
Superceded by the snd driver...
1998-12-27 14:21:37 +00:00
Søren Schmidt
fe43354884 Pre 3.0 branch cleanup sos#1: wcd
Superceded by acd driver...
1998-12-27 13:55:48 +00:00
Poul-Henning Kamp
fc47545ec3 Pre 3.0 branch cleanup casualty #6: ft 1998-12-27 13:40:57 +00:00
Poul-Henning Kamp
11ceeec231 Pre 3.0 branch cleanup casualty #5: nca, sea, wds, uha
No CAM drivers available.  If somebody CAMifies one of these, they
will be welcome back in the tree
1998-12-27 13:06:44 +00:00
Poul-Henning Kamp
9034de81c2 Pre 3.0 branch cleanup casualty #4: pcvt 1998-12-27 12:52:46 +00:00
Poul-Henning Kamp
e86310b905 Pre 3.0 branch cleanup casualty #3: 3c505 ethernet support 1998-12-27 12:44:57 +00:00
Poul-Henning Kamp
36b2d2c26c Pre 3.0 branch cleanup casualty #2: Transputer support 1998-12-27 12:40:07 +00:00
Poul-Henning Kamp
65d9f1deb2 Pre 3.0 branch cleanup casualty #1: DSI_SOFT_MODEM support. 1998-12-27 12:35:48 +00:00
Bruce Evans
223f865ada Flush the fifos at the correct place in cyopen(). Various things
in cyopen() were done in a different order than in sioopen(), partly
to (ab)use a side effect of comparam() and partly because I didn't
understand what the reset was doing (it flushes the fifos).  This
turned out to be more than a cosmetic problem.  Flushing the fifos
quite late is good for discarding input that arrived while the line
state was being initialized, and in the cy driver it also seems to
reduce a problem with input that arrived long ago during the previous
close (the UART loses sync too easily and for too long).
1998-12-24 14:17:57 +00:00
Foxfair Hu
87fcd9d279 Correct the wrong PCI-IDE probing on AcerLabs Aladdin-V chipset. It won't
change the original code but add an extra option "ALI_V" to check the
precise IDE port.(especially, secondary) Use the same option "ALI_V" on
the kernel config file to prevent generic DMA check causes wrong result.
(It seems buggy even on PIIX4 chipset, and I don't know when this bug start)

Should I add the option "ALI_V" into /sys/i386/conf/LINT ?
1998-12-24 06:30:21 +00:00
Mike Smith
f56eb43ab6 Don't leave the CDROM tray locked if an attempt to mount it is made and
the drive is actually empty.

Submitted by:	Ben Smithurst <ben@scientia.demon.co.uk>
1998-12-23 09:07:40 +00:00
Justin T. Gibbs
b2608b2c73 Staticize the overrun buffer so that they are not shared between
cards of different bus types as each bus type may have a different
bus mapping.

Submitted by:	Eivind Eklund <eivind@yes.no>
1998-12-22 18:14:15 +00:00
Joerg Wunsch
082004e119 As promised, cleanup the #if __FreeBSD_version mess. 1998-12-21 18:11:10 +00:00
Joerg Wunsch
8194a57215 This is my first cut on a driver for the RealTek RTL 8002 pocket
ethernet driver.

The BUGS section is still impressive, but the driver seems to work for
me now.  Disclaimer: i haven't been able to test this under -current
so far (but it compiles, and the notebook it's intended for can now be
updated to -current more easy than before).  Don't be afraid of the
many #ifdefs on __FreeBSD_version in the imported file; i want them in
the repository on the vendor-branch so other people can also manually
integrate it into older systems.  I'll clean it up on the -current
branch in a followup commit.  The vendor-banch version right now
supports systems back to 2.2R.

This driver should be layered upon ppc(4), but i currently have no
idea how to do this.

Eventually i'll further develop the driver to also support the more
modern RTL 8012 success, which seems to be present in a number of
cheap pocket ethernet adapters these days.  Right now, i doubt it will
run with the 8012 without any changes.

Finally a big Thanks! to RealTek for promptly providing me with
documentation and with the source code for the 8012 pocket driver upon
request.  I wish all vendors were that cooperative!.
1998-12-21 18:01:15 +00:00
Bruce Evans
3bc124d470 Wait for channel commands to complete after issuing the commands.
The optimisation of only waiting before issuing new commands is
obviously invalid in general and it caused many errors in NIST-PCTS.
I think the errors were mostly for characters sent with the wrong
parity, etc., after a half complete tcsetattr().

Use microtime() instead of a magic loop count to limit the wait.
The wait is a busy-wait :-( and normally takes about 500 usec.
1998-12-19 16:28:57 +00:00
Bruce Evans
ead8747a8c Removed unused (slightly wrong) stub functions.
Fixed some staticization obfuscations.
1998-12-18 18:07:10 +00:00
Bruce Evans
747c608e8d Flush the tx fifo in cystop(). Now ttyflush() (and thus tcflush(3))
almost works properly.  Unfortunately, there is no way to flush
the rx fifo without resetting the channel, which also flushes the
tx fifo.  We avoid resetting even when both fifos need to be flushed,
since resetting seems to cause the rx to lose sync if it is done
while data is arriving.

Reminded by:	NIST-PCTS
1998-12-17 19:23:09 +00:00
Bruce Evans
f9828cced4 Fixed handling of BREAK in input. BREAK was not being converted into an
escape sequence in the `-ignbrk -brkint parmrk' case.

Found by:	NIST-PCTS
1998-12-17 18:43:08 +00:00
Bruce Evans
7cfc9b133e Oops, this should have been in the previous commit (ensure atomic update
of com->cor[1]).
1998-12-17 18:18:06 +00:00
Bruce Evans
657365cdd7 Implemented sending of BREAKs. This is quite complicated because the
hardware is interrupt-driven to a fault and sending a BREAK requires
mode switching.  Always running in the BREAK-capable mode as in PR 8318
would double the overhead for sending \0's.

Reminded by:	PR 8318
1998-12-17 17:40:13 +00:00
Poul-Henning Kamp
11749a2453 Straigthen out the use of the tls and tlf callbacks.
Not tested on the if_sr, if_cx and if_ar drivers, but
expected to work just the same as it used to.

Any users of these drivers (or even better: donors
of hardware for them) please contact phk@freebsd.org
so we can test the next batch of changes to if_sppp.
1998-12-16 18:42:38 +00:00