RS-232 driver for GPIO

Tom Everett tom at khubla.com
Wed May 15 13:40:35 UTC 2013


ok, just one further question.  It was basically guess work that enabled me
to decypher that /dev/ttyu0 (sio0) was bound to uart0.  I presume there
must be some simple way from the command line to query the OS and find out
which hardware devices are bound to which /dev/ entries?


On Wed, May 15, 2013 at 3:29 AM, Aleksandr Rybalko <ray at freebsd.org> wrote:

> On Tue, 14 May 2013 20:24:42 -0600
> Tom Everett <tom at khubla.com> wrote:
>
> > Did you mean 14 &15, or 14 & 16?
> Yeah, right.
>
>
> > ok so given this, I've done some reading.  I'm by no means a FreeBSD
> > expert, so forgive me if I'm completely wrong.  I see this in the FDT:
> >
> > /* UART0 */
> > pins_uart0_a: uart0_a {
> >       broadcom,pins = <14>, <15>;
> >       broadcom,function = "ALT0";
> > };
>
> If you satisfied by single UART, you no need change that.
>
>
> >
> >
> > and this:
> >
> > chosen {
> >               bootargs = "";                  /* Set by VideoCore */
> >               stdin = "uart0";
> >               stdout = "uart0";
> >       };
> >
>
> But that stdin and stdout direct kernel console messages to air by your
> xbee :)
> So you need comment it or set different in/out device.
>
>
> >
> > So I interpret that to mean that uart0 is bound to pins 14, 15, and
> > furthermore that the serial device bound to uart0 is bound to stdin and
> > stdout.  In my /dev/ I see:
> >
> > crw-------   1 root  wheel     0x1f Apr 27 13:42 ttyu0
> > crw-------   1 root  wheel     0x20 Apr 27 21:42 ttyu0.init
> > crw-------   1 root  wheel     0x21 Apr 27 21:42 ttyu0.lock
> > crw-rw----   1 uucp  dialer    0x22 Apr 27 21:42 cuau0
> > crw-rw----   1 uucp  dialer    0x23 Apr 27 21:42 cuau0.init
> > crw-rw----   1 uucp  dialer    0x24 Apr 27 21:42 cuau0.lock
> >
> > So, that is telling me that sio0 is bound to uart0, which is a serial
> > console?
>
> Yep.
>
> >
> > If so, that means that I could use pins 14 & 15 for rs-232, but I would
> > have to chose b/t using those pins to talk to another device (xbee), or a
> > serial console?
>
> if you will disconnect serial console you will have to choose between
> control over network (SSH/telnet/etc) or graphic console (Display with
> HDMI + USB keyboard).
>
> >
> >
> >
> >
> >
> > On Tue, May 14, 2013 at 5:17 PM, Aleksandr Rybalko <ray at freebsd.org>
> wrote:
> >
> > > On Tue, 14 May 2013 12:20:08 -0600
> > > Tom Everett <tom at khubla.com> wrote:
> > >
> > > > ok so the FDT definition would have to be added here?
> > > >
> > > >
> > >
> http://svnweb.freebsd.org/base/head/sys/boot/fdt/dts/bcm2835-rpi-b.dts?view=markup
> > > >
> > >
> > > Yeah, right.
> > >
> > > But I have bad news. Both UARTs can be connected to pairs(tx+rx) 14+16,
> > > 32+33, 40+41 and both UARTs can be connected to any of this pins.
> > > But only 14, 16 and 40(PWM0) wired to ext.pin.
> > >
> > > >
> > > >
> > > > On Tue, May 14, 2013 at 10:24 AM, Aleksandr Rybalko <ray at freebsd.org
> >
> > > > wrote:
> > > >
> > > > > On Tue, 14 May 2013 09:06:44 -0700
> > > > > Adrian Chadd <adrian at freebsd.org> wrote:
> > > > >
> > > > > > ... the r-pi actually has an RS232 port exposed via GPIO. It's
> > > > > > only 3.3v but it's there.
> > > > > >
> > > > > > Someone just needs to write up an SIO driver for it and then put
> > > > > > the GPIO pins in question into RS232 "mode".
> > > > >
> > > > > we have it already :) (console works on uart)
> > > > > only FDT definition is required.
> > > > > And maybe some fixes for boudrate setting and/or format setup
> > > > > (bits/parity/stop bits/etc)
> > > > >
> > > > > >
> > > > > > Yay multi-function GPIO pins!
> > > > > >
> > > > > >
> > > > > >
> > > > > > adrian
> > > > > >
> > > > > >
> > > > > > On 14 May 2013 08:58, Tom Everett <tom at khubla.com> wrote:
> > > > > > > Good morning ARM mailing list.
> > > > > > >
> > > > > > > I've been running FreeBSD on my Pi, and I've now got two XBee
> > > > > > > Pros which I hope to connect.  XBee's communicate over RS-232.
> > > > > > >
> > > > > > > https://www.sparkfun.com/products/8742
> > > > > > >
> > > > > > > I see from the source tree that it was possible to attach the
> > > > > > > iic driver to GPIO pins in software:
> > > > > > >
> > > > > > >
> > > http://svnweb.freebsd.org/base/head/sys/dev/gpio/gpioiic.c?view=markup
> > > > > > >
> > > > > > > I'm wondering, it is possible to connect the FreeBSD serial
> > > > > > > driver for RS-2332 to GPIO in a similar way to how iic was
> > > > > > > connected?
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > A better world shall emerge based on faith and understanding  -
> > > > > > > Douglas MacArthur
> > > > > > > _______________________________________________
> > > > > > > freebsd-arm at freebsd.org mailing list
> > > > > > > http://lists.freebsd.org/mailman/listinfo/freebsd-arm
> > > > > > > To unsubscribe, send any mail to
> > > > > > > "freebsd-arm-unsubscribe at freebsd.org"
> > > > > > _______________________________________________
> > > > > > freebsd-arm at freebsd.org mailing list
> > > > > > http://lists.freebsd.org/mailman/listinfo/freebsd-arm
> > > > > > To unsubscribe, send any mail to
> > > > > > "freebsd-arm-unsubscribe at freebsd.org"
> > > > >
> > > > >
> > > > > --
> > > > > Aleksandr Rybalko <ray at freebsd.org>
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > A better world shall emerge based on faith and understanding  -
> > > > Douglas MacArthur
> > >
> > >
> > > --
> > > Aleksandr Rybalko <ray at freebsd.org>
> > >
> >
> >
> >
> > --
> > A better world shall emerge based on faith and understanding  - Douglas
> > MacArthur
>
> Good luck! And let us know how things is going :)
>
> WBW
> --
> Aleksandr Rybalko <ray at freebsd.org>
>



-- 
A better world shall emerge based on faith and understanding  - Douglas
MacArthur


More information about the freebsd-arm mailing list