Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 09 Feb 2018 09:26:38 -0700
From:      Ian Lepore <ian@freebsd.org>
To:        Daniel Braniss <danny@cs.huji.ac.il>
Cc:        "freebsd-arm@freebsd.org" <arm@freebsd.org>
Subject:   Re: solved, was Re: serial on neopi neo
Message-ID:  <1518193598.32585.138.camel@freebsd.org>
In-Reply-To: <F5F9D109-7CDB-40B0-94C2-AA675ACDF834@cs.huji.ac.il>
References:  <0291231B-F939-4EB9-BD20-AD32B8E768D2@cs.huji.ac.il> <D092D702-D0C8-431F-A727-27674FF5E7AB@cs.huji.ac.il> <421A858F-AC30-4BE5-8641-E7C8DDDA0493@cs.huji.ac.il> <1518191674.32585.136.camel@freebsd.org> <F5F9D109-7CDB-40B0-94C2-AA675ACDF834@cs.huji.ac.il>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 2018-02-09 at 18:14 +0200, Daniel Braniss wrote:
> 
> > 
> > On 9 Feb 2018, at 17:54, Ian Lepore <ian@freebsd.org> wrote:
> > 
> > On Fri, 2018-02-09 at 12:28 +0200, Daniel Braniss wrote:
> > > 
> > > 
> > > > 
> > > > 
> > > > On 9 Feb 2018, at 12:02, Daniel Braniss <danny@cs.huji.ac.il>
> > > > wrote:
> > > > 
> > > > 
> > > > 
> > > > > 
> > > > > 
> > > > > On 8 Feb 2018, at 17:30, Daniel Braniss <danny@cs.huji.ac.il>
> > > > > wrote:
> > > > > 
> > > > > hi,
> > > > > after fiddling with the dts file (with the help from Milo), I
> > > > > got
> > > > > 2 serial ports to work(apart from the /dev/ttyu0),
> > > > > but not together! ie, if i try each one individually all is
> > > > > ok,
> > > > > but once I open both of them, only
> > > > > /dev/ttyu1 works, /dev/ttyu2 hangs (i have yet to see if its
> > > > > the
> > > > > output or input)
> > > > > 
> > > > > any ideas?
> > > > I have!
> > > > 
> > > > I’m using the ‘what i thought’ unused pins (CTS/RTS) to drive
> > > > some
> > > > leds!
> > > > 
> > > > I do set, via tcsetattr(3) to ignore these (ie no modem, no
> > > > flow
> > > > control) but it seems the driver is ignoring this.
> > > > how can I tell the serial/uart to ignore them?
> > > was sent out too early!
> > > 
> > > doing a cfmakeraw(3) is what screwed me up!
> > > now all is ok!
> > That's strange, because I was about to reply to the prior mail
> > suggesting you start with a cfmakeraw() before tcsetattr().  I
> > always
> > start with makeraw then set just the things I want, like:
> > 
> >     tcgetattr(fd, &t);
> >     cfmakeraw(&t);
> >     t.c_iflag &= ~(IXON | IXOFF | IXANY);
> >     t.c_cflag &= ~(PARENB | CSTOPB | CSIZE | CRTSCTS);
> >     t.c_cflag |= CLOCAL | CREAD | CS8;
> >     cfsetspeed(&t, whatever);
> >     tcwriteattr(fd, TCSANOW, &t);
> > 
> > -- Ian
> thats what I had, but did not clear the CRTSCTS, so what I do now,
> without the tcgetattr, and just set what I need
> 	bzero(&t, sizeof(t));
> 	t.c_flag = CS8 | CLOCAL | CREAD;
> 	t.c_iflag = IGNPAR;
> 	cfsetspeed(…)
> 	tcsetattr(fd, TCSANOW, &t);
> 
> actually it was the tcgetattr and not really the cfmakeraw :-)
> 
> danny
> 

Without the makeraw you're going to get canonicalized input processing,
maybe not what you want/need.

-- Ian



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