Accessing M4F on BeaglePlay

Just booted my new BeaglePlay and checking things out.

I can see the 2 PRUSS available in /sys/class/remoteproc however don’t see the M4F MCU?

Digging around, I see in /opt/source there is a k3-am62-mcu.dtsi file available that references the MCU, however not sure how to “apply” it?

Any ideas?

You’ll need to git pull on that directory, i just pushed the BeaglePlay public changes last night…

@Nishanth_Menon worked on openocd support for the m4: Commits · nmenon/openocd · GitHub

I forget where he posted building and running directions on the M4.

Regards,

1 Like

Thanks @RobertCNelson

I did a pull and see lots of changes to k3-am625-beagleplay.dts

can you remind me how to apply this? I know there is a Make command somewhere…

cd /opt/source/<dtb dir>
make
sudo make install_arm64

sudo reboot

Regards,

https://review.openocd.org/c/openocd/+/7091/4 - I have been deliquent in getting the review comments incorportated and posting an update … will try to do it soon (timeframe subject to “mainjob” loads)

I had been working on GitHub - nmenon/bbai64_cortex-r5_example at cortex-m4f though I have’nt had time to finish it up… :frowning: But see the usage here: bbai64_cortex-r5_example/Makefile at cortex-m4f · nmenon/bbai64_cortex-r5_example · GitHub → been sometime before i got distracted… but probably is a good starting point.

Completed, but still nothing in remoteproc M4F related. Do I need to adjust something in extlinux.conf?

Here is beagle-version output.

eeprom:[BEAGLEPLAY-A0-02007801030101640623001478SSSS]
model:[BeagleBoard.org_BeaglePlay]
dogtag:[BeagleBoard.org Debian Bullseye Xfce Image 2023-02-04]
bootloader:[/dev/mmcblk0boot0]:[tiboot3.bin]:[U-Boot SPL 2021.01-gb248392d (Jan 04 2023 - 19:38:45 +0000)]
bootloader:[/dev/mmcblk0]:[/boot/firmware/tiboot3.bin]:[U-Boot SPL 2021.01-gb248392d (Jan 04 2023 - 19:38:45 +0000)]
bootloader:[/dev/mmcblk0]:[/boot/firmware/tispl.bin]:[U-Boot SPL 2021.01-gb248392d (Jan 04 2023 - 19:38:45 +0000)]
bootloader:[/dev/mmcblk0]:[/boot/firmware/u-boot.img]:[U-Boot 2021.01-gb248392d (Jan 04 2023 - 19:38:45 +0000)]
kernel:[5.10.162-ti-arm64-r96]
nodejs:[v12.22.12]
pkg check: to individually upgrade run: [sudo apt install --only-upgrade <pkg>]
pkg:[bb-u-boot-sk-am62]:[2021.01.20230302.1-0~bullseye+20230302]
pkg:[bb-customizations]:[1.20230309.0-0~bullseye+20230309]
pkg:[bb-usb-gadgets]:[1.20230216.0-0~bullseye+20230216]
pkg:[bb-wl18xx-firmware]:[1.20221220.0-0~bullseye+20221220]
cmdline:[root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait net.ifnames=0 quiet]
dmesg | grep remote
[    3.939127] remoteproc remoteproc0: 30074000.pru is available
[    3.939766] remoteproc remoteproc1: 30078000.pru is available
dmesg | grep pru
[    3.939127] remoteproc remoteproc0: 30074000.pru is available
[    3.939766] remoteproc remoteproc1: 30078000.pru is available
dmesg | grep pinctrl-single
[    1.611999] pinctrl-single 4084000.pinctrl: 34 pins, size 136
[    1.612551] pinctrl-single f4000.pinctrl: 171 pins, size 684
dmesg | grep gpio-of-helper
lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
lspci
END

You are correct. I just looked at the code and realized that after bringing m4f, somewhere down the line of development I had disabled m4f :frowning: and that got into the production image. will try and see about getting a fix over to Robert real soon unless someone beats me to it… :smiley:

No worries. Thanks @Nishanth_Menon !

or if things are’nt yet synced up: gist:93f4699644bd7d5c2fd852db1be1923e · GitHub (see Steps to modify and build device tree for BeaglePlay - YouTube for example → to build and install)

I used am62xx « ti-ipc - processor-firmware/ti-linux-firmware - Consolidated central location of various TI firmware source and binary projects hosted previously in various locations. firmware for testing. I copied the firmware to /lib/firmware

Thanks for this, watched the video and looks good so far.

@RobertCNelson hasn’t accepted the patch yet, but I know those guys are busy with Munich so will wait a few days for everything to get synced.

1 Like

Sorry for the delay, Travel/Weather with Embedded World this year, was a mess…

Merge: Commits · v5.10.x-ti-unified · BeagleBoard.org / BeagleBoard-DeviceTrees · GitLab

Tagging as 5.10.162-ti-arm64-r97

Regards,

1 Like

No worries! Hope you enjoyed your beer and sausages in Germany!

Btw, just updated and works fine.

1 Like

awesome. I have been playing with some baremetal code for m4f in the meanwhile…
Rust baremetal code on beagleplay / AM62x M4F · GitHub i will keep it updated as my story progresses…

1 Like