This moves all of the platforms back to the main TFA repository, but
still points to the TI fork for the am62lxx platform while we continue
to work on upstreaming the needed patches.
With the the split into two repositories on two branches we need to also
split the LIC_FILES_CHECKSUM into two since the license.rst file is
slightly different between the two branches. The upstream master
version is newer than the current am62l version.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
FIT signing was disabled in the past as it was interfering with multi
DTB usecase in binman, and it was thought that the binman signing being
done is equivalent to UBOOT_SIGN_ENABLE.
Though looking at the sources, UBOOT_SIGN_ENABLE is actually used to
sign the kernel FIT Image instead and the name UBOOT actually specifies
that it's used in tandom with U-boot. During the signing process, mkimage
from U-boot is used to pack the kernel FIT Image and along with that,
one DTB from U-boot is also passed to the mkimage command. The DTB that
gets passed gets the key embedded in it that is used to verify the
kernel FIT image at runtime.
Now this signed DTB is packed in U-boot by triggering a rebuild with
EXT_DTB argument in the U-boot build process. However, this failed as
there was a U-boot bug which was not looking at the packed sources
properly with the multi DTB usecase.
Now that a U-boot fix is available [0], revert that commit which
disabled the FIT signing.
This reverts commit 9656b79cb5.
[0]: https://lore.kernel.org/all/20250626-b4-upstream-fix-icssg-fit-v1-1-95eff1c853a4@ti.com/
Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Since all k3 and legacy platforms share common load addresses for kernel
and initrd in the fitImage, move them to top level ti-soc.inc.
No functional change is intended from this patch.
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
In yocto, the UBOOT_ENTRYPOINT and UBOOT_*LOADADDRESS variables specify
the entry point and load addresses for the kernel image and the DTB when
creating the fitImage[1].
Currently the load address for the kernel is set to 0x81000000 and
0x83000000 for the DTB for all k3 platforms.
However the region 0x80080000 to 0x81880000 is reserved for OPTEE on
am62xxsip-evm, leading to boot failure[2] when using the fitImage.
This patch fixes the issue by changing the addresses to 0x82000000 for
kernel and 0x88000000 for the DTB. This also allows us to load kernel
images > 32MiB in size when not using initrd while also making the
falcon and standard boot addresses consistent.
[1]:
https://docs.yoctoproject.org/ref-manual/variables.html#term-UBOOT_ENTRYPOINT
[2]:
https://raw.githubusercontent.com/ArchUsr64/ti_boot_logs/HEAD/am62xxsip-evm/failures/fitImage_load_addr_issue.log
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
The new kernel dtb for am62x SiP have been merged to ti-linux-kernel as
of f9579207b081 ("arm64: dts: ti: Add support for AM6254xxl SiP SK") on
ti-linux-6.12.y-cicd. This patch modifies FIT_CONF_DEFAULT_DTB to pick
the new dtb instead.
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
CFG_TZDRAM_START in OPTEE defines it's load address and is used to
configure the page tables accordingly.
Due to 512MiB DDR limitation of am62x SiP, the memory map has been
modified with OP-TEE moved to bottom of DDR after atf to 0x80080000,
this requires modifications to the OPTEE's CFG_TZDRAM_START.
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Due to 512MiB DDR limitation of am62x SiP, the memory map has been
modified with OP-TEE moved to bottom of DDR after atf to 0x80080000,
this requires modifications to ATF's BL32_BASE. PRELOADED_BL33_BASE has
also been updated to 0x82000000 to reflect the updated SPL_TEXT_BASE
from u-boot.
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
As of 35df864a0c26 ("configs: add defconfigs for am6254xxl") in
ti-u-boot, new SiP sepcific defconfigs have been added with updated
memory maps and OP-TEE load address. This requires changing the
UBOOT_MACHINE variables inside machine configs for am62xxsip-evm.
Note that AM6254xxl is the OPN for am62x SiP and expands as follows:
AM6254XXL
||||
|||+-- Feature Lookup (L indicates 512MiB of integrated LPDDR4)
||+--- Clock Speed
|+---- Silicon PG Revision
+----- Core configuration (4 indicates A53's in Quad core config)
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Add support for packaging AM64x PRU firmwares separately
Previously, AM64x platforms used the same PRU firmware binaries as
AM65x (the "am65x-sr2-*" files). This patch updates the recipes to
package dedicated AM64x PRU firmware binaries, ensuring that AM64x
devices use the correct firmware files.
The following changes are made:
- Add AM64x-specific firmware binaries to the TARGET lists in the
prueth-fw, pruhsr-fw, pruprp-fw, and prusw-fw recipes.
- Update COMPATIBLE_MACHINE in pruprp-fw to include "am64xx".
- Add new PRU PRP firmware binaries for AM64x, as AM64x now supports
PRP mode.
Signed-off-by: MD Danish Anwar <danishanwar@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Add TAD5212 DAC firmware images for am62dxx-evm to support two DAC
configurations:
- tad5212_01.bin: Configures 1 DAC with stereo channel in i2s mode.
- tad5212_04.bin: Configures 4 DAC with each having stereo channel
support in i2s mode.
Signed-off-by: Vishnu Singh <v-singh1@ti.com>
Signed-off-by: Paresh Bhagat <p-bhagat@ti.com>
Reviewed-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Previously, AM62d build reused AM62a's IPC firmwares. Now that
dedicated AM62d IPC firmwares are being pushed to ti-linux-firmware
repo, package the new IPC firmwares for echo test.
Signed-off-by: Paresh Bhagat <p-bhagat@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Package k3-am62a7-sk-edgeai.dtso for am62dxx-evm image. This overlay is
required for audio analytics for am62dxx-evm.
Signed-off-by: Paresh Bhagat <p-bhagat@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
For AM62L there is no GP and both HS sub-types are supported by the
same TIFS. This means we do not need multiple versions of tiboot3.bin.
So no need to deploy an additional version which is identical to the
default tiboot3.bin already deployed.
Signed-off-by: Andrew Davis <afd@ti.com>
Acked-by: Chirag Shilwant <c-shilwant@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Add configuration files for the new PocketBeagle2 platform.
U-boot support for this platform is still in its own branch.
Adjust U-boot bootcmd, since EFI boot doesn't seem to work.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Upgrade BeagleY-AI platform to 6.12 BSP.
U-boot support for this platform is still in its own branch.
Also adjust U-boot bootcmd, as Distro Boot doesn't fully work yet.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
TI is starting to run an automated checker for all incoming patches to
the mailing list. One of the checks is to scan all of the files in the
repository looking for things that we have flagged as the "right way" of
doing recipes. This file contains a set of exceptions that the checking
script is finding but can be skipped due to manual review.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Usually :append is used to add items to a space separated list. In
those cases the first character of the appended string should be a
space to make sure that the append is correct.
In this case, the space was embedded in the string and not right after
the ". Simple fix is to move the space to the front to be consistent.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Every recipe should have a SUMMARY and that can only be 72 characters at
most. Some of these recipes had DESCRIPTIONS and not SUMMARY, some were
missing the SUMMARY, and some had slightly too long values for the SUMMARY.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
The AM62D SoC is a high-performance Digital Signal Processing (DSP)
device with a quad-core Cortex-A53 cluster, dual Cortex-R5F cores, and
a Cx7 DSP core with Matrix Multiplication Accelerator (MMA). It features
a range of peripherals, including multichannel audio serial ports,
Ethernet, UARTs, SPI, I2C, USB, and more.
This SoC is part of K3-AM62x family, which includes the AM62A and AM62P
variants. While the AM62A and AM62D are largely similar, the AM62D is
specifically targeted for general-purpose DSP applications, whereas the
AM62A focuses on edge AI workloads. A key distinction is that the AM62D
does not include multimedia components such as the video encoder/decoder,
MJPEG encoder, Vision Processing Accelerator (VPAC) for image signal
processing, or the display subsystem. Additionally, the AM62D has a
different pin configuration compared to the AM62A, which impacts embedded
software development.
The EVM board is a low-cost, expandable platform designed for the AM62D2
SoC, having 4GB LPDDR4 RAM, Gigabit Ethernet expansion connectors, audio
jacks, USB ports, and more.
Signed-off-by: Paresh Bhagat <p-bhagat@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
This OP-TEE fTPM is a TA from Microsoft containing the reference
implementation of the TPM 2.0 Specification. As K3 OP-TEE now has the
necessary features supported to run this fTPM, enable it here. This will
serve as an example of using OP-TEE on K3 as a TPM without needing an
external harware TPM.
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
This is an old code base and hasn't been updated in a very long
time. It now fails to compile with gcc-15 (C23 standard). Force
compilation with GNU/C11 standard instead.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
This is an old code base and hasn't been updated in a very long
time. It now fails to compile with gcc-15 (C23 standard). Force
compilation with GNU/C11 standard instead.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
* For AM62P display cluster usecase, we need to pick
"dss_display_share.wkup-r5f0_0.release.strip.out" from ti-linux-firmware [0]
Hence, pick the display cluster firmware only when DISPLAY_CLUSTER_ENABLE is set to 1.
* When DISPLAY_CLUSTER_ENABLE is not set to 1, fallback to pick the "ipc_echo_testb_mcu1_0_release_strip.xer5f"
DM firmware.
[0]: https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/tree/ti-dm/am62pxx?h=11.00.12
Signed-off-by: Chirag Shilwant <c-shilwant@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Firmware, like kernel modules, may be only relevant to a small subset of
hardware. Shipping all firmware for all hardware can waste space. For
this reason modules are split out into packages, and the same should
be done for firmware.
What we do currently is change the content of the package itself based
on what device we are building for. Having a package change content for
each machine means we cannot generate one image that supports multiple
machines, nor host a common machine agnostic package repo.
Instead we can generate different packages for the different firmwares
and only include the firmware packages needed for each machine.
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Firmware here are not built, no need for C compiler nor std libs.
Add INHIBIT_DEFAULT_DEPS=1 and remove the same from all recipes
that include this file.
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
These other machines are not compatible with this recipe, no need to
setup definitions for these.
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Since OE bitbake commit 24772dd2ae6c ("parse/ConfHandler: Add warning for
deprecated whitespace usage"), the current build generates the following
warning (as example):
| WARNING: ...meta-ti/meta-ti-bsp/recipes-ti/ipc/ti-ipc_git.bb:
| meta-ti/meta-ti-bsp/recipes-ti/ipc/ti-ipc_git.bb:2
| has a lack of whitespace around the assignment:
| 'HOMEPAGE="http://processors.wiki.ti.com/index.php/Category:IPC"'
Fix all the warnings.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Since OE bitbake commit 24772dd2ae6c ("parse/ConfHandler: Add warning for
deprecated whitespace usage"), the current build generates the following
warning (as example):
| WARNING: ...meta-ti/meta-ti-bsp/recipes-ti/ipc/ti-ipc_git.bb:
| meta-ti/meta-ti-bsp/recipes-ti/ipc/ti-ipc_git.bb:2
| has a lack of whitespace around the assignment:
| 'HOMEPAGE="http://processors.wiki.ti.com/index.php/Category:IPC"'
Fix all the warnings.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
In falcon mode, ATF jumps straight to the linux kernel which requires a
2MiB aligned load address. Hence this patch changes the ATF jump address
(PRELOADED_BL33_BASE) to a 2MiB aligned value 0x82000000 and the DTB
address (K3_HW_CONFIG_BASE) to 0x88000000.
These values are chosen to be consistent with the addresses used by
u-boot when booting in the normal flow.
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Falcon boot requires tispl_falcon.bin to be on the same filesystem
partition as the fitImage.
This patch creates a new u-boot package called
'u-boot-ti-staging-falcon' that is included in IMAGE_INSTALL when
ti-falcon is enabled which allows us to deploy the required files to
rootfs.
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
ti-falcon.inc configures the following things for enabling falcon boot:
1. Change fitImage class to kernel-fitimage-legacyhs
2. Update kernel and dtb address for falcon boot
3. Disable kernel compression
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
The am62x_r5_falcon.config fragment in u-boot enables falcon boot
support for R5 SPL, this patch enables the config fragment for am62a,
62p, 62x and 62lp evms based on ti-falcon distro override.
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>