Building and booting the the Chalandi Pocketbeagle 2 nosdk bare metal code
Building on Ubuntu.
Follow the instructions in the README.md file.
You will need a version of GNU binutils 2.39 or greater. You can check what you have by doing this command: ld -v.
If you have an older version and cannot upgrade, then remove this line “-Wl,–no-warn-rwx-segments” from the makefile.
Build the 3 applications.
Copy the “.bin” files from the Output directory to the Tools/sd_card directory.
The names of the files that are built have an underscore before the “baremetal” word.
In the config.txt file located in the sd_card directory the lines for the m4f and r5f file names are missing that underscore.
Edit the config file to add the underscore or change the file names to match the names in the config.txt file.
NOTE: The binary file names cannot be longer then 29 charactors.
Format a sdcard as FAT32 with a Bootable partition.
Copy the sd-card directory files to the sdcard’s bootable partition. There are 5 file (tiboot3.bin, config.txt, a53*.bin, m4f*.bin and r5f*.bin).
Put the sdcard into the pocketbeagle 2 with the contacts facing the board.
Apply power to the board.
If you have a FTDI or Raspberry pi debug probe connected to the board’s 3 pin JST-SH connector, you will see some output from the SBL.
Once loaded you will see the 4 LEDS on the board flashing.
A minor issue:
The Clean.sh does not do anything.
Edit the Clean.sh file and add the following line before the make clean export CORE_FAMILY=${1,}
and add the following line to the makefile just after the CLEAN: line 303
@$(if $(filter $(CORE_FAMILY),$(ALLOWED_CORES)),$(error Error: the Entered CORE_FAMILY ‘$(CORE_FAMILY)’ is not supported! Allowed values are: $(ALLOWED_CORES)))$
NOTE: There needs to be a real tab in front of the above line.