Re: 921Kbps on Linux: is it possible ?!?!

tytso@mit.edu
Wed, 14 Oct 1998 03:10:11 -0400


Date: Tue, 13 Oct 1998 10:55:30 -0700 (PDT)
From: Linux Lists <lists@cyclades.com>

I've noticed that in the linux/include/asm/termbits.h there is no
definition for a baud rate of 921.6Kbps (it only goes up to 460.8Kbps).
Therefore, it's not possible to use setserial to set a serial port to this
speed ... is it ?!?!

The definition of termbits is so that program can directly specify a
speed using the POSIX standard interfaces. Yes, it's true that right
now there isn't a termbits assignment for 921.6 kbps. Given that very
few boards, and even fewer peripherals, actually support such a speed, I
haven't bothered to add it. Note that if we do need to add it, both kernel
support and libc support are required.

So in the meantime people have traditionally set higher speeds using
setserial to replace the speed used by 38400 baud. This is an
unmitigated hack, but it's sometimes necessary while waiting for libc
and all of the relevant application programs to support the new speed.

Setserial doesn't currently support 921.6kbps because the relevant
structure in serial.h doesn't support 921.6kbps. Again, this is mainly
because for most things it's pointless.

If you really have a board which can really support 921kbps, and you're
convinced it's really useful, we can start expanding the kernel
structures and expanding libc support for it. But it's hard for me to
see the point.....

My question is: do we need to add support to 921.6Kbps in the termbits.h
file or is there another way to set this speed on a serial port ?!?!

Well, if you have a custom driver, you can use some other ways of
setting this speed that is hardware specific. (Say, like a new ioctl.)
But in order to do things right, yes, we'd have to extend the
definitions in the termbits structgure.)

- Ted

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/