BeagleBone AI
Dr. Rolf Jansen
freebsd at cyclaero.com
Sun May 31 18:51:02 UTC 2020
> Am 30.05.2020 um 15:09 schrieb Oskar Holmlund <oskar.holmlund at yahoo.com>:
>
> Hello Rolf,
>
>> Den lördag 30 maj 2020 04:22:12 CEST, Dr. Rolf Jansen <freebsd at cyclaero.com> skrev:
>>
>> ...
>>
>> First Question:
>>
>> What modern SBC with more than 1 I²C bus and which can run FreeBSD 13++ would you suggest?
>>
>> ...
>>
>> Two more Questions:
>>
>> Is it reasonable to assume that FreeBSD would run on a BBAI in the future, let’s say in 2 to 3 years?
>>
>> Perhaps I could help porting FreeBSD to a BBAI. What would be the general steps?
>>
>>
>> Many thanks in advance for any suggestions, advices and clarifications.
>>
>> Best regards
>>
>> Rolf
>
> I'm also into industrial embedded systems, we currently use am3358 and in our roadmap we have a plan to use am57xx in the future. We build our own custom hardware and dont use Beaglebone* in the products.
>
> First question; have a quick look at the hardware documentation from the SoCs vendor listed insys/arm and sys/arm64. If you like the structure of the documentation talk to the vendor and see if you can get the product life time your project needs, do the support organisation give some kind of design review of schematics...do the support organisation "know" something about the BSDs? :)
> I think its good if you can fix problems in the future on your own due to the lack of manpower in freebsd at arm as both Ian Lepore and Emmanuel Vadot has pointed out several times.
>
> Steps to get AM57xx SoCs to work:
> 1 Print the schematics and parts of the documentation ( https://www.ti.com/lit/ug/spruhz6l/spruhz6l.pdf ) on paper.
> 2 Find marking pens.
> 3 Build & boot u-boot - probably easy check out ports/sysutils/u-boot-* change model/board_config maybe some patches are needed.
> 4 Dive into the devicetree (moving target and not always correct) and understand the concept. The relationship between different parts of the system and the documentation, find the registers & bits you need and issue read/write (maybe some glue are needed aswell).
> 5 Write new/rewrite drivers.
> 6 goto (4)
>
> It will probably take a year or two to have stable support for am57xx. If you have time to work on making freebsd boot on BBAI it will be great - maybe we can get it done in 6 months ? :)
>
> I will put up an initial proposal for am335x clock on reviews.freebsd.org as soon as my account has been approved. Head boots and i have tested most of the function except PRUs.
> I assume am57xx/dra7xx have some new type of clock/dpll but it should not be too hard to add.
Oskar, Thank you very much for your reply. I looked into sys/arm and sys/arm64, however, I cannot easily figure out the responses of my two main concerns, namely number of supported I²C busses (and its speed) and what’s the future of the board (next 5 years or so).
The ARM board will be build into a rugged housing, together with the other components. In this respect the beauty of the BeagleBone series would be, that we may start with the BeagleBone Black and in the future replace this with the BeagleBone AI without needing to change anything in the housing, even the I²C pins are at the same place, and the BBAI could even serve as a replacement part for BBB systems which are already shipped to customers. The mechanical compatibility alone is quite appealing, isn’t it?
I will have a closer look at the Pine boards, though. In the specs I see only 1 I²C bus. John-Mark Gurney told in another message, that there are lots more. If this turns out to be true, then these would be worth a serious consideration.
Anyway, I take form our discussion, that the BeagleBone AI would be an option in future, albeit a lot of work needs to be done.
Best regards
More information about the freebsd-arm
mailing list