Re: Serial Port Configuration does not work

From: Boris Samorodov <bsam_at_ipt.ru>
Date: Mon, 12 Sep 2011 09:33:37 +0400
On Sun, 11 Sep 2011 13:02:58 +0200 Jilles Tjoelker wrote:
> On Tue, Sep 06, 2011 at 04:29:51PM +0400, Boris Samorodov wrote:

> > the port does not work as expected (at least as per The Handbook,
> > 26.2.5 Serial Port Configuration). Nether "init" nor "lock"
> > devices can be used:
> > -----
> > # uname -a
> > FreeBSD host1.ipt.ru 9.0-BETA2 FreeBSD 9.0-BETA2 #14 r225395: Mon
> > Sep 5 18:10:43 MSK 2011 bsam_at_bb.ipt.ru:/usr/obj/usr/src/sys/HOSTS
> > i386
> > # ls -l /dev/ttyu5*
> > crw-------  1 root  wheel    0,  56 Sep  5 18:50 /dev/ttyu5
> > crw-------  1 root  wheel    0,  57 Sep  5 18:50 /dev/ttyu5.init
> > crw-------  1 root  wheel    0,  58 Sep  5 18:50 /dev/ttyu5.lock
> > # stty -f /dev/ttyu5.init 57600
> > stty: /dev/ttyu5.lock isn't a terminal
> > # stty -f /dev/ttyu5.lock cs7
> > stty: /dev/ttyu5.lock isn't a terminal
> > -----

> It looks like r223722, while introducing the ability to issue
> device-specific ioctls on init and lock devices, broke the ability to
> issue generic ioctls, with the exception of TIOCSETA. (However, stty
> will not do much if it cannot do TIOCGETA.)

> Try this patch and report if it works:

> diff --git a/sys/kern/tty.c b/sys/kern/tty.c
> index ce49f97..3721888 100644
> --- a/sys/kern/tty.c
> +++ b/sys/kern/tty.c
> _at__at_ -777,6 +777,7 _at__at_ ttyil_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int fflag,
>  	error = ttydevsw_cioctl(tp, dev2unit(dev), cmd, data, td);
>  	if (error != ENOIOCTL)
>  		goto done;
> +	error = 0;
>  
>  	switch (cmd) {
>  	case TIOCGETA:

Thanks Jilles! That did it:
-----
% sudo stty -f /dev/ttyu4
speed 9600 baud;
lflags: echoe echoke echoctl
oflags: tab0
cflags: cs8 -parenb

% sudo stty -f /dev/ttyu4.init 1200 cs7

% sudo stty -f /dev/ttyu4
speed 1200 baud;
lflags: echoe echoke echoctl
oflags: tab0
cflags: cs7 -parenb
-----

-- 
WBR, Boris Samorodov (bsam)
Research Engineer, http://www.ipt.ru Telephone & Internet SP
FreeBSD Committer, http://www.FreeBSD.org The Power To Serve
Received on Mon Sep 12 2011 - 03:33:41 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:17 UTC