6d48a3a8d7
Submitted by: Doug White <dwhite@gdi.uoregon.edu>
535 lines
21 KiB
Text
535 lines
21 KiB
Text
<!-- $Id: serial.sgml,v 1.2 1998-05-19 01:47:43 jkh Exp $ -->
|
|
<!-- The FreeBSD Documentation Project -->
|
|
|
|
<sect>
|
|
<heading>Serial Communications<label id="serial"></heading>
|
|
|
|
<p>This section answers common questions about serial communications
|
|
with FreeBSD. PPP and SLIP are covered in the <ref id="networking"
|
|
name="Networking"> section.
|
|
|
|
<sect1>
|
|
<heading>How do I tell if FreeBSD found my serial ports?</heading>
|
|
|
|
<p>As the FreeBSD kernel boots, it will probe for the serial ports
|
|
in your system for which the kernel was configured. You can
|
|
either watch your system closely for the messages it prints or
|
|
run the command
|
|
|
|
<verb>
|
|
dmesg | grep sio
|
|
</verb>
|
|
|
|
<p>after your system's up and running.
|
|
|
|
<p>Here's some example output from the above command:
|
|
|
|
<verb>
|
|
sio0 at 0x3f8-0x3ff irq 4 on isa
|
|
sio0: type 16550A
|
|
sio1 at 0x2f8-0x2ff irq 3 on isa
|
|
sio1: type 16550A
|
|
</verb>
|
|
|
|
<p>This shows two serial ports. The first is on irq 4, is using
|
|
port address <tt/0x3f8/, and has a 16550A-type UART chip. The
|
|
second uses the same kind of chip but is on irq 3 and is at port
|
|
address <tt/0x2f8/. Internal modem cards are treated just like
|
|
serial ports---except that they always have a modem ``attached''
|
|
to the port.
|
|
|
|
<p>The <tt/GENERIC/ kernel includes support for two serial ports
|
|
using the same irq and port address settings in the above
|
|
example. If these settings aren't right for your system, or if
|
|
you've added modem cards or have more serial ports than your
|
|
kernel is configured for, just reconfigure your kernel. See
|
|
section <ref id="make-kernel" name="about building a kernel"> for
|
|
more details.
|
|
|
|
<sect1>
|
|
<heading>How do I tell if FreeBSD found my modem cards?</heading>
|
|
|
|
<p>Refer to the answer to the previous question.
|
|
|
|
<sect1>
|
|
<heading>I just upgraded to 2.0.5 and my <tt/tty0X/ are missing!</heading>
|
|
|
|
<p>Don't worry, they have been merged with the <tt/ttydX/ devices.
|
|
You'll have to change any old configuration files you have, though.
|
|
|
|
<sect1>
|
|
<heading>How do I access the serial ports on FreeBSD?</heading>
|
|
|
|
<p>The third serial port, <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?sio" name="sio2"> (known as
|
|
COM3 in DOS), is on <tt>/dev/cuaa2</tt> for dial-out devices, and on
|
|
<tt>/dev/ttyd2</tt> for dial-in devices. What's the difference
|
|
between these two classes of devices?
|
|
|
|
<p>You use <tt/ttydX/ for dial-ins. When opening <tt>/dev/ttydX</tt>
|
|
in blocking mode, a process will wait for the corresponding
|
|
<tt/cuaaX/ device to become inactive, and then wait
|
|
for the carrier detect line to go active. When you open the
|
|
<tt/cuaaX/ device, it makes sure the serial port isn't already in
|
|
use by the <tt/ttydX/ device. If the port's available, it
|
|
``steals'' it from the <tt/ttydX/ device. Also, the <tt/cuaXX/
|
|
device doesn't care about carrier detect. With this scheme and
|
|
an auto-answer modem, you can have remote users log in and you
|
|
can still dialout with the same modem and the system will take
|
|
care of all the conflicts.
|
|
|
|
<sect1>
|
|
<heading>How do I enable support for a multiport serial card?</heading>
|
|
|
|
<p>Again, the section on kernel configuration provides information
|
|
about configuring your kernel. For a multiport serial card,
|
|
place an <htmlurl url="http://www.freebsd.org/cgi/man.cgi?sio"
|
|
name="sio"> line for each serial port on the card in the
|
|
kernel configuration file. But place the irq and vector
|
|
specifiers on only one of the entries. All of the ports on the
|
|
card should share one irq. For consistency, use the last serial
|
|
port to specify the irq. Also, specify the <tt/COM_MULTIPORT/
|
|
option.
|
|
|
|
<p>The following example is for an AST 4-port serial card on irq 7:
|
|
|
|
<verb>
|
|
options "COM_MULTIPORT"
|
|
device sio4 at isa? port 0x2a0 tty flags 0x781
|
|
device sio5 at isa? port 0x2a8 tty flags 0x781
|
|
device sio6 at isa? port 0x2b0 tty flags 0x781
|
|
device sio7 at isa? port 0x2b8 tty flags 0x781 irq 7 vector siointr
|
|
</verb>
|
|
|
|
<p>The flags indicate that the master port has minor number 7
|
|
(<tt/0x700/), diagnostics enabled during probe (<tt/0x080/), and
|
|
all the ports share an irq (<tt/0x001/).
|
|
|
|
<sect1>
|
|
<heading>Can FreeBSD handle multiport serial cards sharing irqs?</heading>
|
|
|
|
<p>Not yet. You'll have to use a different irq for each card.
|
|
|
|
<sect1>
|
|
<heading>Can I set the default serial parameters for a port?</heading>
|
|
|
|
<p>The <tt/ttydX/ (or <tt/cuaaX/) device is the regular device
|
|
you'll want to open for your applications. When a process opens
|
|
the device, it'll have a default set of terminal I/O settings.
|
|
You can see these settings with the command
|
|
|
|
<verb>
|
|
stty -a -f /dev/ttyd1
|
|
</verb>
|
|
|
|
<p>When you change the settings to this device, the settings are in
|
|
effect until the device is closed. When it's reopened, it goes
|
|
back to the default set. To make changes to the default set, you
|
|
can open and adjust the settings of the ``initial state'' device.
|
|
For example, to turn on <tt/CLOCAL/ mode, 8 bits, and
|
|
<tt>XON/XOFF</tt> flow control by default for ttyd5, do:
|
|
|
|
<verb>
|
|
stty -f /dev/ttyid5 clocal cs8 ixon ixoff
|
|
</verb>
|
|
|
|
<p>A good place to do this is in <tt>/etc/rc.serial</tt>. Now, an
|
|
application will have these settings by default when it opens
|
|
<tt/ttyd5/. It can still change these settings to its liking,
|
|
though.
|
|
|
|
<p>You can also prevent certain settings from being changed by an
|
|
application by making adjustments to the ``lock state'' device.
|
|
For example, to lock the speed of <tt/ttyd5/ to 57600 bps, do
|
|
|
|
<verb>
|
|
stty -f /dev/ttyld5 57600
|
|
</verb>
|
|
|
|
<p>Now, an application that opens <tt/ttyd5/ and tries to change the
|
|
speed of the port will be stuck with 57600 bps.
|
|
|
|
<p>Naturally, you should make the initial state and lock state
|
|
devices writable only by <tt/root/. The <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?MAKEDEV"
|
|
name="MAKEDEV"> script does <bf/NOT/ do this when it creates the
|
|
device entries.
|
|
|
|
<sect1>
|
|
<heading>How can I enable dialup logins on my modem?</heading>
|
|
|
|
<p>So you want to become an Internet service provider, eh? First,
|
|
you'll need one or more modems that can auto-answer. Your modem
|
|
will need to assert carrier-detect when it detects a carrier and
|
|
not assert it all the time. It will need to hang up the phone
|
|
and reset itself when the data terminal ready (<tt/DTR/) line
|
|
goes from on to off. It should probably use <tt>RTS/CTS</tt>
|
|
flow control or no local flow control at all. Finally, it must
|
|
use a constant speed between the computer and itself, but (to be
|
|
nice to your callers) it should negotiate a speed between itself
|
|
and the remote modem.
|
|
|
|
<p>For many Hayes command-set--compatible modems, this command will
|
|
make these settings and store them in nonvolatile memory:
|
|
|
|
<verb>
|
|
AT &C1 &D3 &K3 &Q6 S0=1 &W
|
|
</verb>
|
|
|
|
<p>See the section <ref id="direct-at" name="on sending AT
|
|
commands"> below for information on how to make these settings
|
|
without resorting to an MS-DOS terminal program.
|
|
|
|
<p>Next, make an entry in <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?ttys" name="/etc/ttys"> for the
|
|
modem. This file lists all the ports on which the operating system will
|
|
await logins. Add a line that looks something like this:
|
|
|
|
<verb>
|
|
ttyd1 "/usr/libexec/getty std.57600" dialup on insecure
|
|
</verb>
|
|
|
|
<p>This line indicates that the second serial port
|
|
(<tt>/dev/ttyd1</tt>) has a modem connected running at 57600 bps
|
|
and no parity (<tt/std.57600/, which comes from the file
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?gettytab"
|
|
name="/etc/gettytab">). The terminal type for this port is
|
|
``dialup.'' The port is ``on'' and is ``insecure''---meaning
|
|
root logins on the port aren't allowed. For dialin ports like
|
|
this one, use the <tt/ttydX/ entry.
|
|
|
|
<p>It's common practice to use ``dialup'' as the terminal type.
|
|
Many users set up in their .profile or .login files a prompt for
|
|
the actual terminal type if the starting type is dialup. The
|
|
example shows the port as insecure. To become root on this port,
|
|
you have to login as a regular user, then <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?su" name="su">'' to
|
|
<tt/root/. If you use ``secure'' then <tt/root/ can login in
|
|
directly.
|
|
|
|
<p>After making modifications to <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?ttys" name="/etc/ttys">, you
|
|
need to send a hangup or <tt/HUP/ signal to the <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?init" name="init"> process:
|
|
|
|
<verb>
|
|
kill -HUP 1
|
|
</verb>
|
|
|
|
<p>This forces the init process to reread <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?ttys" name="/etc/ttys">. The
|
|
init process will then start getty processes on all ``on'' ports.
|
|
You can find out if logins are available for your port by typing
|
|
|
|
<verb>
|
|
ps -ax | grep '[t]tyd1'
|
|
</verb>
|
|
|
|
<p>You should see something like:
|
|
|
|
<verb>
|
|
747 ?? I 0:00.04 /usr/libexec/getty std.57600 ttyd1
|
|
</verb>
|
|
|
|
<sect1>
|
|
<heading>How can I connect a dumb terminal to my FreeBSD box?</heading>
|
|
|
|
<p>If you're using another computer as a terminal into your FreeBSD
|
|
system, get a null modem cable to go between the two serial
|
|
ports. If you're using an actual terminal, see its accompanying
|
|
instructions.
|
|
|
|
<p>Then, modify <htmlurl url="http://www.freebsd.org/cgi/man.cgi?ttys"
|
|
name="/etc/ttys">, like above. For example, if you're hooking up a
|
|
WYSE-50 terminal to the fifth serial port, use an entry like this:
|
|
|
|
<verb>
|
|
ttyd4 "/usr/libexec/getty std.38400" wyse50 on secure
|
|
</verb>
|
|
|
|
<p>This example shows that the port on <tt>/dev/ttyd4</tt> has a
|
|
wyse50 terminal connected at 38400 bps with no parity
|
|
(<tt/std.38400/ from <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?gettytab"
|
|
name="/etc/gettytab">) and <tt/root/ logins are allowed (secure).
|
|
|
|
<sect1>
|
|
<heading>Why can't I run <tt/tip/ or <tt/cu/?</heading>
|
|
|
|
<p>On your system, the programs <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?tip" name="tip"> and <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?cu" name="cu"> are probably
|
|
executable only by <htmlurl url="http://www.freebsd.org/cgi/man.cgi?uucp"
|
|
name="uucp"> and group <tt/dialer/. You can use the group <tt/dialer/
|
|
to control who has access to your modem or remote systems. Just add
|
|
yourself to group dialer.
|
|
|
|
<p>Alternatively, you can let everyone on your system run <tt/tip/
|
|
and <tt/cu/ by typing:
|
|
|
|
<verb>
|
|
# chmod 4511 /usr/bin/cu
|
|
# chmod 4511 /usr/bin/tip
|
|
</verb>
|
|
|
|
<sect1>
|
|
<heading>My stock Hayes modem isn't supported---what can I do?</heading>
|
|
|
|
<p>Actually, the man page for <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?tip" name="tip"> is out of
|
|
date. There is a generic Hayes dialer already built in. Just use
|
|
``<tt/at=hayes/'' in your <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?remote" name="/etc/remote"> file.
|
|
|
|
<p>The Hayes driver isn't smart enough to recognize some of the
|
|
advanced features of newer modems---messages like <tt/BUSY/,
|
|
<tt/NO DIALTONE/, or <tt/CONNECT 115200/ will just confuse it.
|
|
You should turn those messages off when you use <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?tip" name="tip"> (using
|
|
<tt/ATX0&W/).
|
|
|
|
<p>Also, the dial timeout for <tt/tip/ is 60 seconds. Your modem
|
|
should use something less, or else tip will think there's a
|
|
communication problem. Try <tt/ATS7=45&W/.
|
|
|
|
<p>Actually, as shipped <tt/tip/ doesn't yet support it fully. The
|
|
solution is to edit the file <tt/tipconf.h/ in the directory
|
|
<tt>/usr/src/usr.bin/tip/tip</tt> Obviously you need the source
|
|
distribution to do this.
|
|
|
|
<p>Edit the line ``<tt/#define HAYES 0/'' to ``<tt/#define HAYES
|
|
1/''. Then ``<tt/make/'' and ``<tt/make install/''. Everything
|
|
works nicely after that.
|
|
|
|
<sect1>
|
|
<heading>
|
|
How am I expected to enter these AT commands?<label id="direct-at">
|
|
</heading>
|
|
|
|
<p>Make what's called a ``<tt/direct/'' entry in your
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?remote"
|
|
name="/etc/remote"> file. For example, if your modem's hooked
|
|
up to the first serial port, <tt>/dev/cuaa0</tt>, then put in the
|
|
following line:
|
|
|
|
<verb>
|
|
cuaa0:dv=/dev/cuaa0:br#19200:pa=none
|
|
</verb>
|
|
|
|
<p>Use the highest bps rate your modem supports in the br
|
|
capability. Then, type <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?tip" name="tip cuaa0"> and
|
|
you'll be connected to your modem.
|
|
|
|
<p>If there is no <tt>/dev/cuaa0</tt> on your system, do this:
|
|
|
|
<verb>
|
|
# cd /dev
|
|
# ./MAKEDEV cuaa0
|
|
</verb>
|
|
|
|
<p>Or use cu as root with the following command:
|
|
|
|
<verb>
|
|
# cu -l``line'' -s``speed''
|
|
</verb>
|
|
|
|
<p>with line being the serial port (e.g.<tt>/dev/cuaa0</tt>)
|
|
and speed being the speed (e.g.<tt>57600</tt>). When you are done
|
|
entering the AT commands hit <tt>~.</tt> to exit.
|
|
|
|
<sect1>
|
|
<heading>The <tt/@/ sign for the pn capability doesn't work!</heading>
|
|
|
|
<p>The <tt/@/ sign in the phone number capability tells tip to look in
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?phones(5)"
|
|
name="/etc/phones"> for a phone number. But the <tt/@/ sign is
|
|
also a special character in capability files like
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?remote"
|
|
name="/etc/remote">. Escape it with a backslash:
|
|
|
|
<verb>
|
|
pn=\@
|
|
</verb>
|
|
|
|
<sect1>
|
|
<heading>How can I dial a phone number on the command line?</heading>
|
|
|
|
<p>Put what's called a ``<tt/generic/'' entry in your
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?remote"
|
|
name="/etc/remote"> file. For example:
|
|
|
|
<verb>
|
|
tip115200|Dial any phone number at 115200 bps:\
|
|
:dv=/dev/cuaa0:br#115200:at=hayes:pa=none:du:
|
|
tip57600|Dial any phone number at 57600 bps:\
|
|
:dv=/dev/cuaa0:br#57600:at=hayes:pa=none:du:
|
|
</verb>
|
|
|
|
<p>Then you can things like ``<tt/tip -115200 5551234/''. If you
|
|
prefer <htmlurl url="http://www.freebsd.org/cgi/man.cgi?cu"
|
|
name="cu"> over <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?tip" name="tip">, use a
|
|
generic cu entry:
|
|
|
|
<verb>
|
|
cu115200|Use cu to dial any number at 115200bps:\
|
|
:dv=/dev/cuaa1:br#57600:at=hayes:pa=none:du:
|
|
</verb>
|
|
|
|
<p>and type ``<tt/cu 5551234 -s 115200/''.
|
|
|
|
<sect1>
|
|
<heading>Do I have to type in the bps rate every time I do that?</heading>
|
|
|
|
<p>Put in an entry for <tt/tip1200/ or <tt/cu1200/, but go ahead and
|
|
use whatever bps rate is appropriate with the br capability. <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?tip" name="tip"> thinks a good
|
|
default is 1200 bps which is why it looks for a ``<tt/tip1200/'' entry.
|
|
You don't have to use 1200 bps, though.
|
|
|
|
<sect1>
|
|
<heading>I access a number of hosts through a terminal server.</heading>
|
|
|
|
<p>Rather than waiting until you're connected and typing
|
|
``<tt/CONNECT <host>/'' each time, use tip's <tt/cm/
|
|
capability. For example, these entries in
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?remote"
|
|
name="/etc/remote">:
|
|
|
|
<verb>
|
|
pain|pain.deep13.com|Forrester's machine:\
|
|
:cm=CONNECT pain\n:tc=deep13:
|
|
muffin|muffin.deep13.com|Frank's machine:\
|
|
:cm=CONNECT muffin\n:tc=deep13:
|
|
deep13:Gizmonics Institute terminal server:\
|
|
:dv=/dev/cua02:br#38400:at=hayes:du:pa=none:pn=5551234:
|
|
</verb>
|
|
|
|
<p>will let you type ``<tt/tip pain/'' or ``<tt/tip muffin/'' to
|
|
connect to the hosts pain or muffin; and ``<tt/tip deep13/'' to
|
|
get to the terminal server.
|
|
|
|
<sect1>
|
|
<heading>Can tip try more than one line for each site?</heading>
|
|
|
|
<p>This is often a problem where a university has several modem lines
|
|
and several thousand students trying to use them...
|
|
|
|
<p>Make an entry for your university in <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?remote" name="/etc/remote">
|
|
and use <tt>\@</tt> for the <tt/pn/ capability:
|
|
|
|
<verb>
|
|
big-university:\
|
|
:pn=\@:tc=dialout
|
|
dialout:\
|
|
:dv=/dev/cuaa3:br#9600:at=courier:du:pa=none:
|
|
</verb>
|
|
|
|
<p>Then, list the phone numbers for the university in
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?phones"
|
|
name="/etc/phones">:
|
|
|
|
<verb>
|
|
big-university 5551111
|
|
big-university 5551112
|
|
big-university 5551113
|
|
big-university 5551114
|
|
</verb>
|
|
|
|
<p><htmlurl url="http://www.freebsd.org/cgi/man.cgi?tip"
|
|
name="tip"> will try each one in the listed order, then give up. If
|
|
you want to keep retrying, run <tt/tip/ in a while loop.
|
|
|
|
<sect1>
|
|
<heading>Why do I have to hit CTRL+P twice to send CTRL+P once?</heading>
|
|
|
|
<p>CTRL+P is the default ``force'' character, used to tell
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?tip" name="tip">
|
|
that the next character is literal data. You can set the force
|
|
character to any other character with the <tt/~s/ escape, which
|
|
means ``set a variable.''
|
|
|
|
<p>Type ``<tt/~sforce=<single-char>/'' followed by a newline.
|
|
<tt/<single-char>/ is any single character. If you leave
|
|
out <tt/<single-char>/, then the force character is the nul
|
|
character, which you can get by typing CTRL+2 or CTRL+SPACE. A
|
|
pretty good value for <tt/<single-char>/ is SHIFT+CTRL+6,
|
|
which I've seen only used on some terminal servers.
|
|
|
|
<p>You can have the force character be whatever you want by
|
|
specifying the following in your <tt>$HOME/.tiprc</tt>
|
|
file:
|
|
|
|
<verb>
|
|
force=<single-char>
|
|
</verb>
|
|
|
|
<sect1>
|
|
<heading>Suddenly everything I type is in UPPER CASE??</heading>
|
|
|
|
<p>You must've pressed CTRL+A, <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?tip" name="tip"> ``raise
|
|
character,'' specially designed for people with broken caps-lock keys.
|
|
Use <tt/~s/ as above and set the variable ``raisechar'' to something
|
|
reasonable. In fact, you can set it to the same as the force
|
|
character, if you never expect to use either of these features.
|
|
|
|
<p>Here's a sample .tiprc file perfect for Emacs users who need to
|
|
type CTRL+2 and CTRL+A a lot:
|
|
|
|
<verb>
|
|
force=^^
|
|
raisechar=^^
|
|
</verb>
|
|
|
|
<p>The ^^ is SHIFT+CTRL+6.
|
|
|
|
<sect1>
|
|
<heading>How can I do file transfers with <tt/tip/?</heading>
|
|
|
|
<p>If you're talking to another UNIX system, you can send and
|
|
receive files with <tt/~p/ (put) and <tt/~t/ (take). These
|
|
commands run <htmlurl url="http://www.freebsd.org/cgi/man.cgi?cat"
|
|
name="cat"> and <htmlurl url="http://www.freebsd.org/cgi/man.cgi?echo"
|
|
name="echo"> on the remote system to accept and send files. The syntax
|
|
is:
|
|
|
|
<verb>
|
|
~p <local-file> [<remote-file>]
|
|
~t <remote-file> [<local-file>]
|
|
</verb>
|
|
|
|
<p>There's no error checking, so you probably should use another
|
|
protocol, like zmodem.
|
|
|
|
<sect1>
|
|
<heading>How can I run zmodem with <tt/tip/?</heading>
|
|
|
|
<p>First, install one of the zmodem programs from the ports
|
|
collection (such as one of the two from the comms category,
|
|
<htmlurl url="http://www.freebsd.org/cgi/ports.cgi?^lrzsz" name="lrzsz">
|
|
and <htmlurl url="http://www.freebsd.org/cgi/ports.cgi?^rzsz"
|
|
name="rzsz">).
|
|
|
|
<p>To receive files, start the sending program on the remote end.
|
|
Then, press enter and type ``<tt/~C rz/'' (or ``<tt/~C lrz/'' if
|
|
you installed lrzsz) to begin receiving them locally.
|
|
|
|
<p>To send files, start the receiving program on the remote end.
|
|
Then, press enter and type ``<tt/~C sz <files>/'' (or
|
|
``<tt/~C lsz <files>/'') to send them to the
|
|
remote system.
|
|
|
|
<sect1>
|
|
<heading>FreeBSD can't seem to find my serial ports, even when the
|
|
settings are correct.</heading>
|
|
|
|
<p>Motherboards and cards with Acer UARTs do not probe properly under
|
|
the FreeBSD sio probe. Obtain a patch from
|
|
<url url="http://www.lemis.com/serial-port-patch.html"
|
|
name="www.lemis.com"> to fix your problem.
|
|
|
|
</sect>
|
|
|