[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1156441293.3007.184.camel@localhost.localdomain>
Date: Thu, 24 Aug 2006 18:41:33 +0100
From: Alan Cox <alan@...rguk.ukuu.org.uk>
To: Krzysztof Halasa <khc@...waw.pl>
Cc: David Woodhouse <dwmw2@...radead.org>,
Stuart MacDonald <stuartm@...necttech.com>,
linux-serial@...r.kernel.org,
"'LKML'" <linux-kernel@...r.kernel.org>
Subject: Re: Serial custom speed deprecated?
Ar Iau, 2006-08-24 am 18:27 +0200, ysgrifennodd Krzysztof Halasa:
> David Woodhouse <dwmw2@...radead.org> writes:
>
> >> If custom speeds are deprecated, what's the new method for setting
> >> them? Specifically, how can the SPD_CUST functionality be accomplished
> >> without that flag? I've checked 2.5.64 and 2.6.17, and don't see how
> >> it is possible.
> >
> > We need a way to set the baud rate as an _integer_ instead of the Bxxxx
> > flags.
>
> Does that mean that standard things like termios will use:
> #define B9600 9600
> #define B19200 19200
That would have been very smart when Linus did Linux 0.12, unfortunately
he didn't and we've also got no spare bits. Worse still if we exported
them that way glibc has now way to map new speeds onto the old ones for
applications.
The speed_t values in the termios struct are also Bfoo encoded so it
turns out don't help.
At this point I think we need
- An ioctl to set/get the actual baud rate input/output
- Some kind of termios flag to indicate they are being used (as we have
CBAUDEX now). [We could "borrow" the 4Mbit one and dual use it IMHO]
For drivers tty_get_baud_rate would return the actual speed as before.
We would need a driver ->set_speed method for the cases where
- ioctl is called to set specific board rate
- OR termios values for tty speed change
- While we are at it we might want to make ->set_termios also allowed to
fail
[and if you had no ->set_speed method non standard speeds would be
refused by the tty layer for back compat]
Anyone got any problems with this before I go and implement it ?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists