Since the kernel branches could theoretically drift apart, we need to
track the PV of the kernel on the RT branch for the ARM32 platforms as
well.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
As ti-librpmsg-dma depends on ti-rpmsg-char, which is only compatible
with K3 platforms, ti-librpmsg-dma should also have the same limitations.
This resolves yocto-check-layer failure:
ERROR: Nothing PROVIDES 'ti-rpmsg-char' (but .../ti-librpmsg-dma_1.0.bb DEPENDS on or otherwise requires it)
ti-rpmsg-char was skipped: incompatible with machine qemux86-64 (not in COMPATIBLE_MACHINE)
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
While all ARM64 devices use the same branch for RT and non-RT builds,
the ARM32 devices have a separate branch for RT Kernel which is
"ti-rt-linux-6.12.y-arm32". Update the BRANCH and SRCREV for ARM32
devices for RT builds.
Signed-off-by: Beleswar Padhi <b-padhi@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
The U-Boot config fragment used to enable falcon mode was renamed from
'am62x_r5_falcon.config' to the more generic 'k3_r5_falcon.config' when
adapting upstream patches to ti-u-boot[1].
Therefore this patch fixes the same in meta-ti.
[1]: 90d2e960b4c at ti-u-boot-2025.01-next
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
The gitpkgv class we are using to set UBOOT_VERSION is located in
meta-openembedded. We do not want to depend on meta-openembedded to
keep meta-ti-bsp as light as possible, and the naming of UBOOT_VERSION
is not a requirement, just a nice to have. Dynamic layers allow us to
use the class if it is available in the build, but not require it.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
We would like to know the git commit for the build by looking at the
filenames of u-boot files. Include the value for PKGV in the names of
the files instead of PV.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
This hides issues like missing flags that will cause issues for folks who
build or re-build the kernel outside the Yocto environment. It is better
to find these issues and fix them at the source in the Linux makefile,
not mask issues here.
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
This file uses both spaces and tabs in different functions which
needs fixed at some point. For now at least make sure they are
consistent within the same function.
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Looks to be left over from long ago, now completely unneeded.
Remove it and fix some comments while here.
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Minor comment changes, fix versions listed for some items.
Signed-off-by: Andrew Davis <afd@ti.com>
Reviewed-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
This was used when the DT_VENDOR_PREFIX was different between supported
BSP versions. All supported now use the new prefix so drop this var.
Signed-off-by: Andrew Davis <afd@ti.com>
Reviewed-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
Remove support for the v6.1 TI and Beagle BSPs. This was originally
split into meta-ti-bsp and meta-beagle changes, but there are some
hidden interdependencies that made that more painful than needed.
Remove v6.1 support from both BSP layers here.
This includes packages specific to those BSPs:
- TI and BB.org v6.1 Linux kernel
- TI and BB.org 2023.04 U-Boot
- Rogue GPU driver 23.3 and Mesa 22.3.5
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
We were waiting on a patch [1] to make it to master. Now that it has, move
to point the SRCREV to the latest commit.
[1] b1bca91e93
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
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>