device-tree on BeagleBone Black (enabling UART)

Kristoff kristoff at skypro.be
Sun Feb 7 10:31:40 UTC 2021


Hi Daniel,



Thank you for the very fast reply!


(inline comments)


On 7/02/2021 1:10 a.m., Daniel O'Connor wrote:
>> On 7 Feb 2021, at 10:28, Kristoff <kristoff at skypro.be> wrote:
>> I am running FreeBSD 12.1 on a beaglebone black. As I want to use it for a time-server (i.e. connect it to a GPS), I want to enable an additional UART (and also a pps gpio-pin, I guess).
> I have done this, although my kernel is..
> FreeBSD gps 13.0-CURRENT FreeBSD 13.0-CURRENT #2 41a4c010326-c262109(master)-dirty: Mon Sep  9 10:05:18 ACST 2019     darius at midget.dons.net.au:/usr/obj/arm-src/arm.armv7/sys/GENERIC  arm


OK, 12.1 just happens to be the version I had installed after playing 
around with different releases.

I'll install 13.0 on the BBB.


> I applied some fixes which have since been committed.
>
>> I have been trying to create a DTS-overlay file for this, but for some reason, I do not get this OK.
>> The overlay file (see below) I use is below.
>> Some remarks:
>> - I compile the blob with dtc, copy the file to /boot/DTB and modify /boot/loader.conf
>> I guess this is correct?
> I never got an overlay working so I modified am335x-boneblack.dts manually..

Thx!

I found some posts from people who converted the .dtb to .dts and 
modified it overthere, but I wanted to do this the proper way.

What is strange is that certain device-tree overlay's do work. I found 
one for the pruss blocks in the am3358 and that one does seams to work.

(small side-line question: is there application-level support for the 
pruss blocks in the BBB on freebsd?)

Thanks for the change-files. I'll examine them and try them out.



> If you load am335x_dmtpps.ko it then shows up as /dev/dmtpps, I then have these symlinks:
> lrwxr-xr-x  1 root  wheel  5  3 Jan 04:01 /dev/gps0 -> cuau2
> lrwxr-xr-x  1 root  wheel  6  3 Jan 04:01 /dev/gpspps0 -> dmtpps
> And ntpd.conf has:
> # NMEA on /dev/gps0 at 9600 baud, process GPGGA only (offset is time2)
> # PPS on /dev/gpspps0 (offset is time1, PPS enabled by flag1)
> server 127.127.20.0 mode 0x12 minpoll 4 maxpoll 4
> fudge  127.127.20.0 time1 0.000 time2 0.332 flag1 1 stratum 0 refid GPS
>
> [gps 0:08] ~ >ntpq -nc pe
>       remote           refid      st t when poll reach   delay   offset  jitter
> ==============================================================================
> o127.127.20.0    .GPS.            0 l    5   16  377    0.000    0.028   0.004

Thx.


> My GPS engine is a u-Blox NEO-M8T (from https://www.gnss.store/gnss-gps-modules/45-ublox-neo-m8t-time-raw-receiver-board-with-sma-rtk-ready.html)

It's the same one I have.


I really like that chip as you can use it to receive the raw packets as 
transmitted by the satellites!
I have also used to inject dgps signals (as received by  the maritime 
dgps transmittors with a rtlsdr and some gnuradio) into it and the chip 
does use to them to increase correct the GPS signals.


Thanks for the help!



Cheerio! Kr. Bonne



More information about the freebsd-arm mailing list