sommerfeld
91178eae70
Add missing '&& defined(COM_MPLOCK)'
2000-09-26 14:12:42 +00:00
sommerfeld
6a71867356
Add `COM_MPLOCK' option to use a device-instance-specific spinlocks
...
when running at splserial(). This is a temporary measure (until
there's a MP-safe interrupt handling structure); until then, it should
be used when MULTIPROCESSOR and IPL_SERIAL > IPL_SCHED.
2000-09-23 17:17:11 +00:00
eeh
d651adf44a
paddr_t -> bus_addr_t.
2000-09-22 14:46:38 +00:00
eeh
56cf963264
Support for SPARC machines with `su' devices.
2000-09-21 23:27:32 +00:00
toshii
faf55ac40c
Change tiocm_to_{com,zs}'s second argument to u_long to match with
...
the type in their caller.
2000-09-17 22:07:39 +00:00
sommerfeld
8f5586c98f
Avoid calling tsleep when running above splhigh()
2000-08-18 13:22:39 +00:00
jeffs
e97c2066ab
Add options DDB_BREAK_CHAR. This overrides break on the serial console
...
break character with the supplied one. This is useful for cases where
break is hard to generate, or you are connected to a PC that "sends"
breaks when power cycled. For this mode in com, interpret break char
in the polling section, which allows entry into the debugger before
the tty is opened. Only supported in the com driver currently.
2000-08-03 00:30:47 +00:00
thorpej
cb450cc444
Use device_lookup().
2000-07-06 01:47:34 +00:00
thorpej
b29178acf3
Remove unnecessary junk on #undef line that some C preprocessors
...
get cranky about.
2000-05-03 19:19:04 +00:00
simonb
9e370d4402
Delete redundant decl of com_attach_subr(), it's in comvar.h.
2000-03-30 02:04:30 +00:00
thorpej
fc96443d15
New callout mechanism with two major improvements over the old
...
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
resource allocation.
- Insertion and removal of callouts is constant time, important as
this facility is used quite a lot in the kernel.
The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
thorpej
a183d34f04
- Implement cnbell() -- ring the console bell. The cn_bell entrypoint
...
is optional.
- Add cn_bell to statically allocated consdevs as appropriate.
2000-03-06 21:36:05 +00:00
jonathan
e9a4467c58
Fix thinko in previous revision: it wouldn't catch deassert.
...
Revert the code inside the new test to the previous-but-one revision.
2000-02-07 02:17:18 +00:00
jonathan
2da22cf2c5
Check for DCD status change interrupts which signal PPS events, even
...
if the line discipline is ignoring carrier (e.g., via comparam()'s
setting of sc->sc_msr_mask). Move PPS timestamp outside the normal
status-change processing, and ignore sc_msr_mask when testing
for PPS events.
2000-02-06 23:23:37 +00:00
soda
3d14a7c591
kluge to make this work with NEC M403 (arc/magnum).
2000-01-23 21:06:01 +00:00
drochner
b95651b752
set carrier early if used as console or kgdb line, fixes PR kern/6547
...
by Andreas Gustafsson, gson@iengines.com
1999-12-21 11:04:36 +00:00
sommerfeld
17d170b1ca
defopt COM_DEBUG, COM_HAYESP, and COM16650
1999-11-22 03:53:38 +00:00
jonathan
0588cdfc88
Update user-level PPS-API to match -05 draft.
...
Change PPS_<xxx> ioctls to PPS_IOC_<xxx>.
1999-11-04 05:33:58 +00:00
jonathan
b31080319e
Fix nanosecond/microsecond botch in PPSAPI:
...
remove bogus TIMESPEC_TO_TIMEVAL() after applying any {assert,clear} offset.
1999-10-15 06:16:15 +00:00
ross
4b0326d939
Get rid of delay() in com_common_putc() because the Shark delay() is borked
...
and can't be called until after the timers are setup. (It should not use
a timer, or it should have a fallback algorithm.)
1999-04-19 19:27:31 +00:00
thorpej
552465011e
Revert revision 1.159. The correct answer was not to re-break the
...
serial console support, but rather to fix the Shark delay().
1999-04-18 22:02:47 +00:00
mrg
833fb0ac7f
back date this file to version 1.155 which works on the shark.
1999-03-31 12:44:04 +00:00
mycroft
f487bc59aa
Nuke bogus extra variable, too.
1999-03-29 13:40:41 +00:00
mycroft
85ad0d175c
Fix bogons in previous change:
...
* The fact that IIR_NOPEND was not set on entry does *not* mean that no
transmission was in progress. Besides, we don't want to throw away receive
interrupts either.
* In the !clearirq case, we didn't splx().
1999-03-29 13:21:15 +00:00
ross
6a228da053
Mods to com_common_putc(). When doing kprintf() or kgdb output:
...
1. don't clear the irq unless it was clear before transmitting
2. also do various bus_space_barrier() ops
Stops console from freezing when kprintf interrupts tty driver output.
1999-03-29 10:01:39 +00:00
explorer
3ebb419571
Update to slightly altered rnd_attach_source() api
1999-02-28 17:08:05 +00:00
drochner
525932e022
make the probe stricter to catch cases where the chipset doesn't pull
...
the data lines to "high" for not-existant devices
1999-02-12 12:45:48 +00:00
mycroft
0c7afe477d
Separate the tiocm code into functions, like the z8530 code, and fix the same
...
DTR bug.
1999-02-03 23:57:27 +00:00
mycroft
9be96dda95
Fix an inconsistency: PPS was turned off on first open, but the mode may have
...
still claimed it was enabled.
1999-02-03 23:22:11 +00:00
mycroft
535f59cc81
Slight redux in PPS code.
1999-02-03 23:20:33 +00:00
drochner
a7f50b8178
Debugger() -> console_debugger() to honour the ddb_fromconsole sysctl
1999-01-26 17:08:37 +00:00
thorpej
3e086bd63d
Add support for detaching "com" instances.
1998-11-18 23:58:52 +00:00
is
95807e512a
Garbage collect unused 3rd parameter to comprobe1().
1998-09-16 21:30:58 +00:00
thorpej
d1fba4e7e5
Don't use M_WAITOK to allocate the ring buffer; we could be in interrupt
...
context. Reported by Lennart Augustsson.
1998-09-09 05:17:53 +00:00
mycroft
d07b3639a4
Assign my copyrights to TNF.
1998-08-15 17:47:15 +00:00
jonathan
466e784ee1
defopt DDB.
1998-07-04 22:18:13 +00:00
jonathan
bbc2d1522a
PPS support from April, reworked and extended to match the PPS-API
...
Internet Draft (draft-mogul-pps-api-02.txt).
1998-06-10 12:06:23 +00:00
mycroft
2bb5067e13
Move the code to wait for carrier on a tty into a common function, since it
...
depends only on device-independent state bits.
Implement SunOS-style `dialout' devices.
1998-03-22 00:55:37 +00:00
mycroft
16566cda09
Remove a bogus initializer.
1998-03-21 04:27:58 +00:00
mycroft
2ada4b4af1
Replace TS_WOPEN with t_wopen, per mail on tech-kern.
1998-03-21 04:02:47 +00:00
ross
081231b1ad
Add dummy }} after comsoft() to keep ctags(1) bashing on.
1998-02-25 08:32:35 +00:00
enami
e12f85fbc1
Disable the device if we fail to open and nobody else has the device open.
...
(Thanks Charles and Marc for your advices).
1998-02-22 05:09:58 +00:00
mycroft
11b3fea04a
Fix bonehead error in previous change.
1998-02-22 03:24:58 +00:00
mycroft
84a72d6ff4
Remove stray label from last change.
1998-02-19 09:33:33 +00:00
mycroft
06ec9f646f
Arrange to call com_break() and com_modem() at splserial().
...
It's simpler this way. Really.
1998-02-19 09:23:38 +00:00
thorpej
5fe6759646
Fix serial console support, which was broken by the previous revision:
...
- In the console getc routine, block until a character becomes ready
(no, really, we mean it). This routine should _never_ time out.
- In the console putc routine, if the UART has trouble, do NOT proceed
to print a diagnostic message, which would recursively invoke the
console putc routine ad nauseum.
1998-02-09 10:22:45 +00:00
enami
9d13bc6e0e
Restore system priority level before return from comopen().
1998-02-06 03:25:34 +00:00
cgd
9bffcfef75
change #ifdefs keying on "alpha" to key on "__NO_SOFT_SERIAL_INTERRUPT"
...
instead, and define that on NetBSD/alpha and NetBSD/arm32.
1998-02-02 23:01:02 +00:00
cgd
c2f42b2213
Implement a flag to indicate that the driver attached correctly.
...
This is useful in the case where an attachment's probe routine
verifies that there is indeed hardware present but something goes
"wrong" in the attach causing the device to be unusable. (Without
keeping track of this, in that case incorrect ports could be
accessed or uninitted pointers could be deferenced on open or at
other times.)
1998-02-02 22:54:55 +00:00
marc
1d4b77e754
split com_attach_subr into attach stuff and per-open initialization stuff
...
add timeouts to all splserial() while loops so bugs elsewhere don't cause
the com driver to wedge the machine
add power management support
1998-02-01 23:33:01 +00:00