Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Dec 1997 03:58:07 +0000
From:      Jeremy McMillan <aphor@horizon.ppp.ripco.net>
To:        freebsd-isdn@FreeBSD.ORG
Subject:   Serial UARTs for ISDN "modems"
Message-ID:  <3495FC4E.21738365@horizon.ppp.ripco.net>

next in thread | raw e-mail | index | archive | help
On FreeBSD support for ISDN... There are reasons to choose the serial interface
ISDN TA (which people like to call 'ISDN modems') over a router or an internal TA
card, but there are limitations imposed by the FreeBSD serial i/o device code.

Peter Haight wrote:

> Of course, there are few, if any, internal TAs supported by FreeBSD and they
> are all way more expensive than the modem I bought as part of a package deal
> with the ISDN line. Of course routers are the most expensive option. My
> parents have a Cisco ISDN  router which was a pain in the rear to setup
> because we wanted to use it with two different ISPs (one for work and one for
> recreation) and it doesn't seem like it was really designed to do that.
>
> I think the serial ISDN modem is nice. It was really easy to setup and after
> buying the serial card it will have only run me $150.



> >This is a response to a question not specific to FreeBSD or ISDN, but is more
> >about connecting high-speed serial devices (in gerneral) to PCs.
>
> True, but I was also asking whether there would be any problems with using a
> 16750 UART with FreeBSD. I'm guessing that the speedup is transparent to the
> OS, but I want to confirm.
>
> For example, I'm not sure whether ppp will work at a set speed of 230400. I
> tried it, but when I sent the AT command that forced the modem to 230400
> speed, I was unable to communicate with it any more. I'm assuming that this
> is because it is ridiculous to ask a 16450 to do that.

If you have questions about open systems, I like to go to the source. What a
luxury!

>From /usr/src/sys/i386/isa/sio.c

> /*
>  * Serial driver, based on 386BSD-0.1 com driver.
>  * Mostly rewritten to use pseudo-DMA.
>  * Works for National Semiconductor NS8250-NS16550AF UARTs.
>  * COM driver, based on HP dca driver.
>  *
>  * Changes for PC-Card integration:
>  *      - Added PC-Card driver table and handlers
>  */
>

 which further specifies:

> static  struct speedtab comspeedtab[] = {
>         { 0,            0 },
>         { 50,           COMBRD(50) },
>         { 75,           COMBRD(75) },
>         { 110,          COMBRD(110) },
>         { 134,          COMBRD(134) },
>         { 150,          COMBRD(150) },
>         { 200,          COMBRD(200) },
>         { 300,          COMBRD(300) },
>         { 600,          COMBRD(600) },
>         { 1200,         COMBRD(1200) },
>         { 1800,         COMBRD(1800) },
>         { 2400,         COMBRD(2400) },
>         { 4800,         COMBRD(4800) },
>         { 9600,         COMBRD(9600) },
>         { 19200,        COMBRD(19200) },
>         { 38400,        COMBRD(38400) },
>         { 57600,        COMBRD(57600) },
>         { 115200,       COMBRD(115200) },
>         { -1,           -1 }
>

I don't know what happens if you try to specify -1 for your serial port speed, but
the other choices seem obvious enough. Now each B channel will allow 64Kbps
(65536bps), and hardware compression will get you twice that for data like long
text transmissions. Most TA's are now (1997-98) dual B channel models, meaning the
demand for through put on a serial port can reach about 262144bps.  Source files
(sio.c) seem to limit FreeBSD's compatibility.

Since raw DCE data rates of paired B channels can reach 131072bps, and the serial
port's limit is 115200bps, there's an obvious bottleneck going on here. As for
using faster hardware: 16750UARTs may or may not function like 16550UARTs to
FreeBSD, and even if they do, the software doesn't expllicitly support dual B ISDN
at full blast with a serial TA.

If you use a 16550 at 115200bps, then turn off the data compression in your TA,
and use software compression like PPP's VJ compression. Then you will probably be
able to squeak by.  16450s won't go fast enough, and we need to ask the experts
whether the device code will support a 16750UART.

My guess is "not really".
---
Jeremy McMillan  | Finger for PGP
Pursuant to US Code, Title 47, Chapter 5, Subchapter II, '227,
any and all unsolicited commercial E-mail sent to this address
is subject to a download and archival fee in the amount of $500
US.  E-mailing denotes acceptance of these terms.





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3495FC4E.21738365>