Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 3 Feb 2013 10:22:13 -0800
From:      Tim Kientzle <tim@kientzle.com>
To:        Iain Young <iain@g7iii.net>
Cc:        freebsd-arm@freebsd.org, Ian Lepore <ian@freebsd.org>
Subject:   Re: Beaglebone Serial Ports
Message-ID:  <2D47C68A-2891-48C5-805C-7A0438EF31D4@kientzle.com>
In-Reply-To: <510E5954.7000303@g7iii.net>
References:  <510CE8E0.9070102@g7iii.net> <1359818003.93359.381.camel@revolution.hippie.lan> <66029B5F-2A19-4683-B589-814932E156A2@kientzle.com> <510E5954.7000303@g7iii.net>

next in thread | previous in thread | raw e-mail | index | archive | help

On Feb 3, 2013, at 4:34 AM, Iain Young wrote:

> On 02/02/13 20:03, Tim Kientzle wrote:
>>=20
>> On Feb 2, 2013, at 7:13 AM, Ian Lepore wrote:
>>=20
>>> On Sat, 2013-02-02 at 10:22 +0000, Iain Young wrote:
>>>> Hi Folks,
>>>>=20
>=20
>> It should just be a matter of updating the DTS file with
>> additional UART entries and updated pinmux.
>>=20
>> Unfortunately, the current BeagleBone builds use a compiled-in
>> device tree, so you'll have to edit the DTS file at
>>    sys/boot/fdt/dts/beaglebone.dts
>> and then rebuild the kernel.
>=20
> Thanks both, you gave me the exact hints to go look in the right
> place.
>=20
> I already have a partial patch written, after I found the register
> addresses and interrupts in a linux dmesg output :)

The Linux DTS is a useful reference as well.

> Is it appropriate to post small(ish) patches here ?

Of course.  As far as possible, I would like for the DTS
to include as much detail as possible about the
board and it's facilities -- even if the driver support isn't
yet complete -- and look for other ways of
enabling/disabling those facilities at runtime.  (Other
than editing the DTS file.)

> It'll probably be next weekend before I get the chance to test it,
> as it seems I am lacking dtc, so need to buildworld (according to
> the great google...), but the 8 Gig card isn't due here for a few
> days.
>=20
> Tim, I've already grabbed your 8G image with the fixed cpsw
> driver, so I will test that at the same time.
>=20
>> I'd like to move that out of the kernel; the loader already
>> has logic to load a DTS file and pass it to the kernel,
>> it should just need some tinkering with loader.rc to get
>> it working.  That would make it a lot easier to tweak
>> settings on a per-system basis without having to rebuild
>> the kernel.
>>=20
>>> According to the datasheet all the onboard uarts should be supported =
by
>>> our standard uart driver (but only uart1 has all the modem-control =
lines
>>> wired).
>=20
> Only by default. We just need to set the pinmux appropriately to gain
> access to CTS and RTS for UARTS 1 thru 5. UART3 only has CTS and RTS
> exposed, no TX or RX, but then that still has it's uses for things
> like PPS and testing MSF receivers prior to looking at GPIO interrupts
> :)
>=20
> =
http://www.jerome-bernard.com/blog/2012/06/04/beaglebone-serial-ports-and-=
xbees/ has a list of which serial ports are mapped to which pins,
> and the pinmux mode they need in order to access them.

The definitive references are:

 * TI document sprs717e.pdf is the data sheet for the processors with =
full pinout information, including pinmux settings.  You'll need to know =
that the BeagleBone uses the 'ZCZ' package (different packages have =
slightly different pinouts).  For TI documents, the last letter is the =
revision (I have sprs717d here); they update them every couple of =
months.

     http://www.ti.com/lit/ds/sprs717e/sprs717e.pdf

 * BeagleBone SRM includes schematics for the board and pinouts for the =
expansion headers.

  =
http://beagleboard.org/static/beaglebone/latest/Docs/Hardware/BONE_SRM.pdf=


 * TI document spruh73g.pdf is the Technical Reference Manual for the =
SoC. 4500 pages documenting every subsystem; guaranteed to help with =
your insomnia. ;-)

   http://www.ti.com/lit/ug/spruh73g/spruh73g.pdf





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2D47C68A-2891-48C5-805C-7A0438EF31D4>