Commit Graph

52 Commits

Author SHA1 Message Date
atatat 31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
wiz 1fd7eeefcd "than" instead of "then". 2001-11-21 19:14:19 +00:00
wiz a9356936b4 seperate -> separate 2001-07-22 13:33:58 +00:00
wiz 0a600be867 receive, not recieve 2001-06-12 15:17:10 +00:00
lukem d84d2c6c85 add missing #include "opt_kgdb.h" 2001-05-30 15:24:23 +00:00
scw 2963ff5c58 Add `l_poll' to `struct linesw' and provide an xxxpoll() entry point
in each tty driver to indirect through it.

This allows tty line-disciplines to handle poll(2) system calls.
2001-05-02 10:32:08 +00:00
matthias 172ba55ce5 Make it work again after the linediscipline changes. 2000-12-19 16:23:57 +00:00
eeh 8c3f6a0d10 Adapt to new line discipline scheme. 2000-11-02 00:37:56 +00:00
matthias 0688add8e8 Take care of prototype changes for console probe and console getc. 2000-07-14 08:18:49 +00:00
jonathan 466e784ee1 defopt DDB. 1998-07-04 22:18:13 +00:00
matthias 28b0f7408b Make this compile again after the changes to the tty subsystem. 1998-03-30 20:10:26 +00:00
thorpej 2d53e59a47 Update for changes to config. 1998-01-12 19:51:03 +00:00
phil b34ae4f929 Get TRUE and FALSE defined again. 1997-10-22 03:35:56 +00:00
matthias 5a23a56e6b * Apply a fix from Ian Dall to reduce system load and fifo/silo overflows
when running at high speeds. This works by using hardware RTS again and
  using the receive fifo threshold as well as the transmit fifo provided
  by the sc26c92.
1997-04-21 16:16:16 +00:00
matthias 821b15ab3b * Add some missing casts to make this compile with -Werror when KGDB is
defined.
1997-04-01 16:31:53 +00:00
matthias b49a214439 * Don't reference NSCN.
* Use machine/conf.h not sys/conf.h to get the prototypes for the
  scn cdev functions.
* Include <sys/kgdb.h> to get prototypes for kgdb_connect and kgdb_attach.
* Add missing prototypes for some functions.
* Make ddb work before the console was opend. Thank's to Ian Dall
  for this change. His comment:
	Also, ddb doesn't work if a break is set before the console
	is opened. That is because DTR and RTS are not asserted. It
	would probably work if the console is wired to ingnore DTR
	or RTS. The change below is probably not very correct.
	Proabably the state of DTR and RTS should be saved and DTR
	and RTS asserted on the start of a polled serial input and
	the saved values restored on exiting polled input
* Remove unused function scn_ei.
1997-03-20 12:03:03 +00:00
matthias c6d2740564 Integrate Phil Budne's latest changes to the scn driver. From his README:
* Uses Counter/Timer dynamicly for rate generation; You can
	  have both 19200 and 38400 on one duart, and 57600 on another!
	* Improved scninfo program to dump driver internal information.
	  implemented counters for parity err, framing err, break
	* Delays changes until transmitter idle to avoid "glitches"
	* Cleaned up scn_softc member names
	* Untested support for sc26c92 (I don't yet have any to test with);
	  + Will use alternate rate tables (include 115.2kbps and 230.4kbps)
	  + Will raise FIFO rx interrupt threshold and watchdog timer
	    at higher rates.
	  + Unknown (to me) how fast pc532 MC145406 driver chips can go

	NOTE: It seems like it may be a BAD idea to use a sc26c92 as
	a console port for now; the PROM doesn't know to reset the
	chip back to scn2692 mode!!
1997-03-13 10:24:14 +00:00
matthias bda3351fc0 Some cosmetic changes. 1997-03-01 09:50:44 +00:00
matthias f3cdc89574 * Use Phil Budne's full name in the copyright header.
* Define RECOVER to something faster.
* Check for a valid softc in scnsoft. When there is
  a "hole" (e.g. you have scn0,scn1, scn4, scn5) the
  old code would panic. Thank's to Phil Budne for
  finding and fixing this bug.
1997-02-08 09:34:31 +00:00
matthias 47fe16475c * Use confargs in probe and attach routines.
* Irq and address are now printed by mbprint.
1997-01-11 10:58:12 +00:00
matthias b080d4fea0 * Match functions take a "struct cfdata *" as their second argument.
* intr_establish now takes *two* ipls. One at which the handler should run,
  and one in which the interrupt should get blocked.

All the following changes were provided by Ian Dall:
* Remove SCN_HSOFT. Now that the pc532's software interrupt system is running
  from int14, this won't work anymore.
* Add code to detect uart type (SCN2681, SCC2692 or SCC26C92).
* Cleanup my RECOVER mess. Thank's to Ian Dall for reading the datasheet
  and removing all the unnecessary RECOVERs.
* Cleanup scnrxintr.
* Implement scnhiwflow.
* Do not use automatic RTS. This and scnhiflow and some changes to the
  interrupt system suggested by Ian fix the scn overrun problem at 57600
  baud.
1996-12-23 08:37:07 +00:00
matthias a0117d39dd * Prototyping tweaks.
* Real probe code added.
* Duart info is now allocated only for devices that are present.
* Added IO-Recovery delays for 30mhz systems.
* Removed a few potential NULL-pointer references.
1996-11-24 13:32:53 +00:00
matthias 2336fbd2c6 * Phil Budne's much improved scn driver. 1996-10-23 07:52:35 +00:00
christos e37692f04d backout previous kprintf change 1996-10-13 03:29:05 +00:00
christos 848c9d8f02 printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:39:22 +00:00
mycroft b3eac79b64 tty stop functions really should return void, not int, and certainly not both. 1996-09-02 06:43:16 +00:00
thorpej 77abd102b7 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:38:52 +00:00
mycroft 9d9a70a5a2 Fix #includes. 1996-02-02 18:05:36 +00:00
phil 54df7b2130 Updating DELAY and scncnputc. 1996-02-01 02:37:15 +00:00
phil 49d37e3c5d Update to current state. No major changes. 1996-01-25 19:50:39 +00:00
phil 03fa08025b Major update: Many changes from Matthias Pfaller.
* conf/DEFAULT: new file, default install kernel
* conf/INSTALL: +MSDOSFS, +NO_INLINE_SPLX, +RD_SIZE=2mb, +scn4/5
* conf/KLONDIKE: cosmetic changes
* conf/STEELHEAD: cosmetic changes
* conf/files.pc532: rd got a file of it's own
* dev/lpt.c: changes to support lower interrupt latency, packet input/output
  is now done at spl0
* dev/ncr.c: changes to support the most recent atari version of the ncr5380
  driver
* dev/ncr5380.c, dev/ncr5380reg.h: upgraded to most recent atari version,
  memcpy -> bcopy.
* dev/rd.c: ramdisk driver
* dev/scn.c: by patching scndefaultrate, the kernel's default baud rate can
  be changed with gdb
* include/psl.h: struct iv now protected by !LOCORE && _KERNEL
  inlining of splx can be prevented with new kernel option NO_INLINE_SPLX
  splx_di is like splx but leaves processor interrupts disabled
* pc532/autoconf.c: cosmetic changes
* pc532/conf.c: with rd entries
* pc532/intr.c: changes to support splx_di
* pc532/locore.s: ramdisk is no longer initialized
  not splx, but rett is now used to reenable CPU interrupts when leaving the
  interrupt service routine. This is necessary to prevent recursive interrupts.
* pc532/sys_machdep.c: memcpy -> bcopy
* pc532/mem.c: moved ramdisk to dev/rd.c
* stand/Makefile: boot is now loaded at 0x3eb800 instead of 0x363800
  Use current form of libsa and libkern.
* stand/inflate.c: emit twiddle every 8k and not every 1k
* stand/rd.c: ramdisk starts at 0x288000
1995-09-26 20:15:57 +00:00
phil f9399fadc7 add option CON_BRK_PANIC to be able to force a panic by 3 consecutive
breaks without any input on the console port.
1995-08-30 23:51:40 +00:00
phil 3564c1fcc2 More changes to ncr driver to try to get it working. (From Matthias Pfaller) 1995-08-29 22:44:27 +00:00
phil 47ff5d6b3d More changes to the "new" ncr interrupt driven scsi driver (from M. Pfaller)
Bring back the old polled driver until a kernel built with the interrupt
driven one is stable enough for production use.
1995-08-25 07:30:33 +00:00
phil a8674363a7 Replacement of the NCR driver by the Leo Weppelman NCR driver as
ported by Matthias Pfaller (Thanks to both!) and a RCS id.
1995-06-09 04:36:14 +00:00
phil 29db7c74b1 Changes from Matthias Pfaller: lpt driver changes, clock code similar
to i386, interrupts from static table to dynamic table, other small
fixes (locore.s byte operates -> double operands ...)
1995-05-16 07:30:30 +00:00
phil 83e651c4c4 scntty & reorg using softc stuff. 1995-04-27 07:18:02 +00:00
phil c42a783b23 Add scncnpollc. 1995-04-21 18:36:32 +00:00
mycroft 7e450d5085 device.h is defunct. 1995-04-10 07:50:42 +00:00
phil 8579e47846 move nncr.c -> ncr.c, nscn.c -> scn.c 1995-01-19 07:03:35 +00:00
cgd dafacba9d5 new RCS ID format. 1994-10-26 08:23:50 +00:00
phil 7d7d0eedfe moved pc532/pc532/icu.h to pc532/include. 1994-05-17 17:29:34 +00:00
phil 8c0d7c128f Squash! Got that bug!
scn.c -- removing debugging on line 1
scnreg.h -- don't turn off the other line's interrupts!!
1994-04-21 22:31:32 +00:00
phil 6c6a8ee7de minor clean up. 1994-04-19 17:10:34 +00:00
phil 08cc626223 first (incomplete) attempt to get cts/rts working 1994-04-17 07:52:15 +00:00
phil 130bf68fa5 ncr: try to get it to recognize slower devices
scn: mode it closer to i386 version
1994-03-22 00:15:21 +00:00
phil 92f7fca836 Allowing pseudo_dma and cosmetic changes. 1994-03-10 21:35:48 +00:00
phil 28a4cae003 Changes to add a real console driver. 1994-03-08 19:47:51 +00:00
phil e082e0b31d Changes to get the first working scsi driver (ncr.c) for the pc532. 1994-02-23 07:59:03 +00:00
phil d3751424a3 New snapshot of the dp files, scn changes due to change in ttioctl call. 1994-02-21 06:43:27 +00:00