Can someone tell me where am335x-pru0-fw and am335x-pru1-fw come from or when they get loaded? I’m trying to load my own firmware into the pru’s on boot via systemd, and it’s not working. I can do it manually, but on boot it seems to load this default firmware from somewhere. Or, is it better that I rename my pru firmware to these names and put it in some magical place so it is automatically loaded?

I assume you have it copied under /lib/firmware/ ?

Also just run:

sudo /opt/scripts/tools/developers/

This will update the initramfs so your versions are included..



My firmware for the PRUs is in /lib/firmware, but it has different names. It is unclear to me whether a mechanism exists in the PocketBeagle for it to automatically load firmware into the PRUs or whether I need to create my own service. I have been, until today, loading them manually. If my systemd service waits until generic-board-setup is complete, then it loads my firmware. I can, of course, rename my firmware files. When I do a search for am335x-pru0-fw I don’t find anything. To reduce boot time, I have deleted the initrd.

There is a default name specified in the device-tree..

am335x-pru0-fw and am335x-pru1-fw

As long as it's called that, a copy saved in teh initramfs, it'll get
auto-loaded on bootup..

We don't ship any default firmware.