public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: "Marko Mäkelä" <marko.makela@iki.fi>
To: Robert Nelson <robertcnelson@gmail.com>
Cc: Randolph Sapp <rs@ti.com>,
	Erik Welsh <Erik.Welsh@octavosystems.com>,
	Anshul Dalal <anshuld@ti.com>,
	bb@ti.com, nm@ti.com, trini@konsulko.com, afd@ti.com,
	u-boot@lists.denx.de
Subject: Re: [PATCH 2/3] k3-am62-pocketbeagle2: add initial board support
Date: Sun, 29 Mar 2026 20:13:57 +0300	[thread overview]
Message-ID: <acld1cniWiqp9dxB@kehys.lan> (raw)
In-Reply-To: <CAOCHtYhN42myMkq9zTUM2ETMP6oBA4mBAzPsYcOqVRG=ZskgfQ@mail.gmail.com>

Hi Robert,

Sat, Mar 28, 2026 at 11:39:00AM -0500, Robert Nelson wrote:
>Side note, here's my ci builder for u-boot.. :
>https://github.com/beagleboard/u-boot-pocketbeagle2

Thank you. I see that the build_u-boot.sh is fetching trusted-firmware-a 
from a different source than I am (see below).

>For debug, if you have access to them, grab the Raspberry PI debug 
>cable: 
>https://www.digikey.com/en/products/detail/raspberry-pi/SC0889/17877576 
>and they are available globally..

Yesterday, a friend gave me an adapter cable that allows me to use an 
existing 3.3V compatible USB UART adapter.

When using the pristine PocketBeagle 2 MicroSD card image, I will get 
some messages from U-boot, followed by the console output from the Linux 
kernel and finally from the Debian user space.

With any of my self-built images, the SPL is unable to start the 64-bit 
U-boot:

U-Boot SPL 2026.01 (Mar 29 2026 - 15:56:33 +0000)
SYSFW ABI: 4.0 (firmware rev 0x000c '12.0.2--v12.00.02 (Clever Cat)')
Changed A53 CPU frequency to 1400000000Hz (T grade) in DT
SPL initial stack usage: 13416 bytes
Trying to boot from MMC2
Authentication passed
Authentication passed
Authentication passed
Authentication passed
Authentication passed
Starting ATF on ARM64 core...

I had a working build script for the phyBOARD Lyra, which I have 
slightly modified for this experiment. I have a build container that was 
set up some months ago, as follows:

FROM debian:latest

RUN apt update&&apt install -y build-essential bc flex bison libssl-dev kmod \
binutils-multiarch gcc-aarch64-linux-gnu gcc-arm-linux-gnueabihf \
python3 python3-setuptools python3-dev python3-cryptography \
python3-pyelftools python3-yaml yamllint python3-jsonschema swig gnutls-dev

I set up source directories like this:

[ -d u-boot ] ||
     git clone --depth=1 -b master https://source.denx.de/u-boot/u-boot.git \
         u-boot
[ -d trusted-firmware-a ] ||
     git clone --depth=1 -b master \
         https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/ \
         trusted-firmware-a
[ -d optee_os ] ||
     git clone --depth=1 -b master https://github.com/OP-TEE/optee_os.git \
         optee_os
[ -d ti-linux-firmware ] ||
     git clone --depth=1 -b ti-linux-firmware \
         https://git.ti.com/git/processor-firmware/ti-linux-firmware.git \
         ti-linux-firmware

Initially, I used some older checkouts of the other components.  
Updating them to the latest did not make any difference: the SPL was 
able to start up also with the older snapshots.

Here are the git revisions that I used of the above directories:

u-boot: your ef03e35488377a32cdd4f76d1a03ef7f60c798ef
trusted-firmware-a: 8dae0862c502e08568a61a1050091fa9357f1240 (Mar 23)
optee_os: 1c0c7c06563e9be0ebc55b47cdb71422b02906a6 (Mar 23)
ti-linux-firmware: 12.00.00.07 (Mar 20)

For podman run, I am bind-mounting the source directory tree using the 
:O (overlay) option. So, even though I appear to run "in-source" build, 
the original source directories outside the container will remain 
unchanged. The files tiboot3.bin, tispl.bin, and u-boot.img are 
generated by running the following commands inside the container:

make -j$(nproc) -C trusted-firmware-a CROSS_COMPILE=aarch64-linux-gnu- \
ARCH=aarch64 PLAT=k3 SPD=opteed TARGET_BOARD=lite

make -j$(nproc) -C optee_os CROSS_COMPILE=arm-linux-gnueabihf- \
CROSS_COMPILE64=aarch64-linux-gnu- CFG_ARM64_core=y CFG_WITH_SOFTWARE_PRNG=y \
PLATFORM=k3-am62x

cd u-boot
make am62_pocketbeagle2_r5_defconfig &&
make -j$(nproc) CROSS_COMPILE=arm-linux-gnueabihf- \
BINMAN_INDIRS=$(pwd)/../ti-linux-firmware &&

make am62_pocketbeagle2_a53_defconfig &&
make -j$(nproc) CROSS_COMPILE=aarch64-linux-gnu- \
BINMAN_INDIRS=$(pwd)/../ti-linux-firmware \
BL31=$(pwd)/../trusted-firmware-a/build/k3/lite/release/bl31.bin \
TEE=$(pwd)/../optee_os/out/arm-plat-k3/core/tee-raw.bin

Based on reviewing your build script, I revised the above by adding 
TFA_EXTRA_ARGS=K3_USART_0x6 to trusted-firmware-a and 
CFG_CONSOLE_UART=0x6 to optee_os, but they made no difference.  
Furthermore, I replaced tee-raw.bin with tee-pager_v2.bin: no change.

What am I doing wrong here?

With best regards,

	Marko

  reply	other threads:[~2026-03-29 17:14 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-17 22:37 [PATCH 0/3] k3-am62-pocketbeagle2: add board and variant support rs
2026-03-17 22:37 ` [PATCH 1/3] arm: mach-k3: am62: add &main_uart6 to clock and pwr tree rs
2026-03-17 22:37 ` [PATCH 2/3] k3-am62-pocketbeagle2: add initial board support rs
2026-03-20  9:29   ` Anshul Dalal
2026-03-20 15:32     ` Robert Nelson
2026-03-23 19:37       ` Randolph Sapp
2026-03-23 19:46         ` Robert Nelson
2026-03-26  0:34           ` Randolph Sapp
2026-03-26 23:23             ` Randolph Sapp
2026-03-27 14:25               ` Marko Mäkelä
2026-03-27 14:53                 ` Robert Nelson
2026-03-27 19:15                   ` Marko Mäkelä
2026-03-28  8:18                     ` Marko Mäkelä
2026-03-28 16:39                       ` Robert Nelson
2026-03-29 17:13                         ` Marko Mäkelä [this message]
2026-03-30 14:41                           ` Robert Nelson
2026-03-30 23:57               ` Randolph Sapp
2026-03-31 16:13                 ` Robert Nelson
2026-03-31 22:54                   ` Randolph Sapp
2026-03-17 22:38 ` [PATCH 3/3] k3-am62-pocketbeagle2: add support for 1GB variant rs
2026-03-20 10:10   ` Anshul Dalal
2026-03-20 15:26     ` Robert Nelson
2026-03-23 18:38       ` Randolph Sapp

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=acld1cniWiqp9dxB@kehys.lan \
    --to=marko.makela@iki.fi \
    --cc=Erik.Welsh@octavosystems.com \
    --cc=afd@ti.com \
    --cc=anshuld@ti.com \
    --cc=bb@ti.com \
    --cc=nm@ti.com \
    --cc=robertcnelson@gmail.com \
    --cc=rs@ti.com \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox