Arun Cheriyan
Arun Cheriyan

Reputation: 23

buildroot defconfig for pocketBeagle is not working

I have a pocketbeagle board and I was trying to build an os image for it using buildroot. so I downloaded the latest buildroot, there was no defconfig file for pocketbeagle. so decided to use beaglebone_defconfig. The build was successful but when I try to boot the pocketbeagle with this image it is continuously printing this message on the uart console:

Could not initialize timer (err -19)
Could not initialize timer (err -19)
Could not initialize timer (err -19)
Could not initialize timer (err -19)
Could not initialize timer (err -19)
Could not initialize timer (err -19)

I think this message is coming from uboot.

This is the steps I used to build the image:

cd buildroot-2021.02.10
make beaglebone_defconfig
make

do I need to apply some patch? or is it because of some other issue? also tried with the buildroot available in beagleboard github repo.

Upvotes: 0

Views: 412

Answers (1)

nemesis
nemesis

Reputation: 150

Obviously there are differences in the 2 boards. Your build would succeed but wont run on pocket beagle because it is not meant to run on it.

specifications pocket beagle Beagle bone
SoC OSD3358-SM AM3358/9
CPU Sitara AM3358 M Cortex-A8 Cortex-A8 + Dual PRU (200 MHz)
Frq (MHz) 1000 720

To build BSP for pocket beagle follow below steps,

  1. In Target options – Change Target architecture to ARM (little endian) – Change Target architecture variant to Cortex-A8

  2. In Build options, set global patch directories to board/e-ale/pocketbeagle/patches/. This will allow you to put patches for Linux, U-Boot other packages in subdirectories of board/e-ale/pocketbeagle/patches/.

  3. Toolchain - you can use external or internal.

  4. In Kernel – Enable the Linux kernel, obviously! – Choose Custom version as the Kernel version – Choose 4.14.24 as Kernel version – Patches will already be applied to the kernel, thanks to us having defined a global patch directory above. – Choose omap2plus as the Defconfig name – We’ll need the Device Tree of the PocketBeagle, so enable Build a Device Tree Blob (DTB) – And use am335x-pocketbeagle as the Device Tree Source file names

  5. Target packages - as per your requirement.

  6. In Filesystem images, enable ext2/3/4 root filesystem, select the ext4 variant.

  7. In Bootloaders, enable U-Boot, and in U-Boot: – Switch the Build system option to Kconfig: use U-Boot – Use a Custom version of value 2018.01. – Use am335x_pocketbeagle as the Board defconfig

As you have noticed, in the configuration, you have referenced board/e-ale/pocketbeagle/ patches as a directory containing patches for various packages. We now need to add the U-Boot and Linux patches that add support for the PocketBeagle, which are not upstream. Use patches, and just copy it to board/e-ale/pocketbeagle so that you get the following directory hierarchy: directory

Then build the BSP and run on your device.

source

Upvotes: 1

Related Questions