Yocto on BeaglePlay

Is there any Yocto support for the BeaglePlay?
Is anyone working on it?
I’ll be happy to “play” with it, if no one else is already looking into it.

Its on my list.

Been working on getting poky dialed in and producing a bootable image for the BBB. At this point it is all new ground for me, do have a working image. Did build a stable remote build server for Kirkstone on Ubuntu 20.04 LTS server. Tried many configurations and this latest route using a dedicated build server works good, at least in our situation it is the best solution.

My thoughts are to use Kirkstone since it is LTS until 2024.

Cool, please link you repo/layer/whatever here, if you manage to get it running.
Maybe next week I’ll have some time to take a look myself as well.

I will clean up my cherrytree notes on what has been done so far and post it later this week.

1 Like

In TI’s meta-ti, start with the SK-AM62 board define, then copy the kernel config for the bbai64, this will give you the BeaglePlay device tree, and update u-boot for: Files · v2021.01-ti-BeaglePlay-Release · BeagleBoard.org / u-boot · GitLab

Regards,

4 Likes

[master/kirkstone][PATCH 4/5] machine: beagleplay: add new BeaglePlay platform - Denys Dmytriyenko FYI

4 Likes

One thing to note is that the current build stops in GRUB. Something seems to regenerate/modify the grub.cfg in the image, and set the timeout to None, which means the board won’t proceed booting until you press Enter.

Didn’t manage to find the reason yet.

Otherwise, the machine in meta-ti as mentioned by @Nishanth_Menon seems to build and work fine.

1 Like

What versions did you checkout?

@foxsquirrel

kirkstone HEAD of poky, meta-arm, meta-openembedded and meta-ti.

1 Like

Thank you, I will have to go back to that version. mickledore and langsdale are now getting python parsing errors.

Here is the the error with mickledore

fred@eng12:~/build-bp1$ bitbake-layers add-layer ~/meta-arm/meta-arm
NOTE: Starting bitbake server...
ERROR: Unable to parse /home/fred/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py
Traceback (most recent call last):
  File "/home/fred/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py", line 192, in feeder(lineno=21, s='addpylib ${LAYERDIR}/lib oeqa', fn='/home/fred/meta-arm/meta-arm/conf/layer.conf', statements=[<bb.parse.ast.DataNode object at 0x7f25c9274b80>, <bb.parse.ast.DataNode object at 0x7f25c9277c40>, <bb.parse.ast.DataNode object at 0x7f25c9164df0>, <bb.parse.ast.DataNode object at 0x7f25c91657e0>, <bb.parse.ast.DataNode object at 0x7f25c8fce1d0>, <bb.parse.ast.DataNode object at 0x7f25c8fce830>, <bb.parse.ast.DataNode object at 0x7f25c8fceaa0>, <bb.parse.ast.DataNode object at 0x7f25c8fce9e0>]):
     
    >    raise ParseError("unparsed line: '%s'" % s, fn, lineno);
     
bb.parse.ParseError: ParseError at /home/fred/meta-arm/meta-arm/conf/layer.conf:21: unparsed line: 'addpylib ${LAYERDIR}/lib oeqa'

ERROR: Parse failure with the specified layer added, exiting.

@foxsquirrel with yocto/kirkstone/beagleplay build, are you able to use UART5 on the mikrobus? I find that the uart is detected, but the device node is not created.

Sorry, we don’t use any of the mikrobus stuff.

If mikrobus has a yocto layer you would have to add it to your build if you want to use their stuff. The TI layers don’t have any support for mikrobus in them, that i am aware of.

@foxsquirrel The UART5 rx/tx is just routed straight out on the mikrobus pins, so it should work just on its own. On your board/distro are you able to have the UART5 available on a dev/ttyS node?

I get this in dmesg, but the ttyS3 node is not created.
2850000.serial: ttyS3 at MMIO 0x2850000 (irq = 30, base_baud = 3000000) is a 8250 main_uart5: serial@2850000 { serial serial0: tty port ttyS3 registered

You will need to modify your device tree. Sorry, not much more specific help on this I am working on some other stuff and don’t have BP up and running to verify anything. With out an actual board live it is all just a guess.

Yeah… I also tried to look into the dts files… not sure the irq numbers maps correctly, the rest looks somehow ok, but I need to find out what prevents the ttyS3 node to be created.

Might look into the AM62 evm build and start from scratch with the device tree and what ever else. I seem to believe they installed a special driver or something to recognize the click boards. Maybe @RobertCNelson can get this topic on track. That might turn into a can of worms too, pretty sure we did some work with the AM62 using Kirkstone TI layers on that board and know that it will boot.

I’m curious if anyone can offer me some help. I’ve built a base image for beagleplay using yocto, but I’m not getting any output from hdmi.

I have a pretty bare-bones build on github that outputs an image that boots from sd card. I’d like to get a browser running (creating a kiosk eventually) but I’m not even getting boot-up info on my screen.

Any thoughts? Here’s the repo:

It does not look like you have all the meta-layers you need.

Source your build:

$bitbake-layers show-layers

Make sure your dtb has video turned on.
I am going by past memory, so this might not be the entire story.

We are not testing BP anymore so I don’t have the exact config in front of me. Do recall that you will need at least core-image-base. Since you are building a kiosk do core-image-weston and besure to add meta-layers for weston and the ini files. You will also need systemd enabled.

I am trying to build the beagleplay.conf core-image-minimal image from meta-ti (yocto/branch kirkstone).
The image boots up, USR LED0 flashes but the serial console or eth0 does not come up. It is like something hangs, preventing the system to come into runlevel 5.

Any ideas what could be the problem?

What is your MACHINE=?

$bitbake core-image-base