| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
Switch all kernel recipes and K3 based platforms to use the new
FIT image wrapper functionality.
Update FIT default DTB entry to not contain vendor dubdir, as it
is now handled through a conf prefix.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
Since ti-u-boot supports HS-SE variant builds[1],
Add support in the machine configurations to package this
HS-SE variant tiboot3 binary in the built images.
[1]: https://git.ti.com/cgit/ti-u-boot/ti-u-boot/commit/?h=ti-u-boot-2025.01&id=75602edad16c840b2611afb9fc0e2718c026bb8a
Signed-off-by: Telukula Jeevan Kumar Sahu <j-sahu@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A recent set of changes on oe-core has dramatically revamped the
fitimage generation code. It is initially unclear how to fold those
change into our flow, so in the short term we will copy the previous
versions of the kernel bbclass files from a commit before [1] any
changes to the class files.
As soon as we figure it out, these files will be removed. This just
help unblock anyone trying to build on master including meta-ti-bsp.
[1] https://git.openembedded.org/openembedded-core/commit/?id=fdb0a51598156f99aa91f7495d7eada92a459e97
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 GP variant of AM62A SoC was only used internally
for initial device bring-up and is not publicly available.
Hence, drop it from IMAGE_BOOT_FILES to ensure
tiboot3-am62ax-gp-evm.bin is not packaged inside vfat boot
partition of wic image
Signed-off-by: Chirag Shilwant <c-shilwant@ti.com>
Reviewed-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
MACHINE_FEATURE gc320, already gets set on omap-a15.inc. But ti-bsp.inc file,
removes the feature. So, remove that portion of functionality from ti-bsp, in
order to allow the building of gc320 in kernel 6.12.
Signed-off-by: Antonios Christidis <a-christidis@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The new out of tree module ti-vxe-vxd-driver is only for the 6.12 kernel
and later. Since we support multiple BSPs we need to correctly wrap
this addition behind some additional logic that can make sure to not
include it for the 6.1 and 6.6 kernel builds where the module is still
in the tree.
Additionally, fix up the beaglebone-ai64 since it includes the j721e.inc
file and will need to clear this variable for its BSPs as well.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
IMG codec drivers reside only on the J721e SoC. Ensure that the drivers
are being built when building SDK.
Signed-off-by: Brandon Brnich <b-brnich@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
All K3 SoCs utilize the binman packaging tools in U-Boot to package
and sign the different boot firmware components needed to boot the
various security variants of K3 platform. Disable UBOOT_SIGN_ENABLE
to simplify the build
Signed-off-by: Bryan Brattlof <bb@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Bump the source revision to allow this module to work on kernel 6.12.
Originally this was going to be a separate branch, but considering the
bsp selector logic, this makes just as much sense.
Also enable the sgx driver in the ti_6.12 bsp selector.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
- Add machine configuration for am62lxx-evm
- Add TFA, OPTEE, firmware & u-boot overrides
Signed-off-by: Chirag Shilwant <c-shilwant@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
Since this is new logic is in place, switch the k6.6 and k6.12 configs
to use these new libraries. Do not enable GFX on 6.12 just yet. Still
need some kernel patches on the SGX side.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
All current K3 devices use either A53 or A72. Use the compile tune
configuration specific for these to allow the compiler to make
better optimizations.
Default tune here is weakly set to a lowest common denominator of
aarch64, as before, which is a recommended behavior for a BSP layer.
This allows for greater binary reuse (packages, sstate, etc.) across
different platforms of the same architecture in multi-BSP environments.
At the same time, since all the correct tunes are now configured for
K3 devices, one can elevate compiler optimization levels either from
local.conf or own Distro configuration on a per-SoC or per-device
basis, like so:
DEFAULTTUNE:k3 = "armv8a-crc"
DEFAULTTUNE:j721e = "cortexa72-cortexa53"
DEFAULTTUNE:beagleplay = "cortexa72-cortexa53"
Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Like we do with GPU support, GC320 support is conditional on the
kernel we are building and so should be disabled here for kernels
on which it is not functional yet.
We can then remove these disabling lines as the driver is updated
for each supported kernel, instead of blanket disabling in the
distro layer as done currently.
Signed-off-by: Andrew Davis <afd@ti.com>
|
|
|
|
|
|
|
|
|
| |
This was used when the kernel had a different configuration for
the testing kernel. This has not been the case since v5.10 so
drop the systest kernel package as it will be the same as the
normal kernel package now.
Signed-off-by: Andrew Davis <afd@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We are moving to 6.12 to be our new LTS, so we are switching the default
BSP to that. You can still access the 6.6 kernel if you need to by using
the BSP system and setting TI_PREFERRED_BSP = "ti-6_6" in your
local.conf.
Current known issues:
- Hardware graphics is disabled until we get a patch that updates the
patches to work with the 6.12 kernel. Falling back to software
rendering.
- am62xxsip-evm and j742s2-evm are not supported in the 2025.01 u-boot
yet. They will fail to build until the u-boot recipe is updated to
point to a commit that fixes their support.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
| |
We are moving to 2025.01 for the next LTS, so rename the previous ltsprep
recipe and update it.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
Updated the value(s) for:
am65xx-evm: KERNEL_DEVICETREE
j722s-evm: KERNEL_DEVICETREE
linux-ti-mainline: PV,SRCREV
Signed-off-by: LCPD Automation Script <lcpdbld@list.ti.com>
|
|
|
|
|
|
|
| |
Define "bb_org" default BSP settings in meta-beagle layer that all Beagle
platforms will use.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
|
|
|
|
|
|
|
|
|
|
| |
Early Boot of remote processors is supported at the SPL stage of the
bootloader. Currently, SPL looks for the remoteproc firmwares in the
boot partition.
Therefore, add the rproc firmware to the boot partition of wic images.
Signed-off-by: Aniket Limaye <a-limaye@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
Bump versions of mesa-pvr and ti-sgx-ddk-km to support SGX with kernel
6.6 and the same version of mesa rogue is using.
Enable SGX by default in the 6.6 BSP provider section logic.
Signed-off-by: Randolph Sapp <rs@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
| |
PREFERRED_VERSION matches against the PV in the recipe, not against the
file name. With the upcoming 6.12, the 6.1 kernel version string was a
little too loose. The "6.1%" could glob onto the 6.12 recipe. Take
this time to also clean up a couple of the other versions and narrow
them down.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
Our upstream testing needs to point to both master and master-next and
we need two different recipes to track that. This recipe mirrors the
linux-ti-next recipe and points to the master-next branch for the latest
bleeding edge changes.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updated the value(s) for:
am57xx-evm: KERNEL_DEVICETREE
am62axx-evm: KERNEL_DEVICETREE
am62pxx-evm: KERNEL_DEVICETREE
am62xx-evm: KERNEL_DEVICETREE
am62xx-lp-evm: KERNEL_DEVICETREE
am68-sk: KERNEL_DEVICETREE
am69-sk: KERNEL_DEVICETREE
beagleplay: KERNEL_DEVICETREE
am64xx-evm: KERNEL_DEVICETREE
am65xx-evm: KERNEL_DEVICETREE
am335x-evm: KERNEL_DEVICETREE
am437x-evm: KERNEL_DEVICETREE
j7200-evm: KERNEL_DEVICETREE
j721e-evm: KERNEL_DEVICETREE
j721e-sk: KERNEL_DEVICETREE
j721s2-evm: KERNEL_DEVICETREE
j722s-evm: KERNEL_DEVICETREE
j784s4-evm: KERNEL_DEVICETREE
linux-ti-mainline: PV,SRCREV
Signed-off-by: LCPD Automation Script <lcpdbld@list.ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
We were missing controlling the versions for linux-ti-staging-rt and
linux-ti-staging-systest using the BSP framework. Since the
PREFERRED_VERSION is not tied to the virtual/kernel we need two
additional settings for those alternate kernel package names.
For BSPs that do not have the -rt and -systest recipes then the two
new variable settings should effectively be ignored and cause no issues.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
| |
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
| |
Add new BSP for the 6.12 kernel and u-boot 2024.10 versions.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- While implementing k3.inc, there was an assumption that all
k3 based TI SOC's would always have a Cortex-R5F core [1]. This
assumption is not true.
- Hence, create a new mc_k3r5 include file & move the multiconfig
dependencies to it. Also, include this file only in those k3 platforms
which needs the R5 multiconfig support.
[1]: https://git.ti.com/cgit/arago-project/meta-ti/commit/conf/machine/include/k3.inc?h=scarthgap&id=f814840465358a6b5429ad20165742ac6e6e6a29
Signed-off-by: Chirag Shilwant <c-shilwant@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updated the value(s) for:
am57xx-evm: KERNEL_DEVICETREE
am62axx-evm: KERNEL_DEVICETREE
am62pxx-evm: KERNEL_DEVICETREE
am62xx-evm: KERNEL_DEVICETREE
am62xx-lp-evm: KERNEL_DEVICETREE
am68-sk: KERNEL_DEVICETREE
am69-sk: KERNEL_DEVICETREE
beagleplay: KERNEL_DEVICETREE
am64xx-evm: KERNEL_DEVICETREE
am65xx-evm: KERNEL_DEVICETREE
am335x-evm: KERNEL_DEVICETREE
am437x-evm: KERNEL_DEVICETREE
j7200-evm: KERNEL_DEVICETREE
j721e-evm: KERNEL_DEVICETREE
j721e-sk: KERNEL_DEVICETREE
j721s2-evm: KERNEL_DEVICETREE
j722s-evm: KERNEL_DEVICETREE
j784s4-evm: KERNEL_DEVICETREE
linux-ti-mainline: PV,SRCREV
Signed-off-by: LCPD Automation Script <lcpdbld@list.ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
Add ti-img-rogue-driver as the preferred provider and enable the gpu
driver in the image.
Signed-off-by: Aniket Limaye <a-limaye@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
- Add A72 and R5 machine configurations for j742s2-evm
- Add firmware overrides.
- Add u-boot overrides.
Signed-off-by: Aniket Limaye <a-limaye@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
| |
As this is still a new platform, the bsp-mainline also does not have the
hs-fs boot files.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
| |
For our upstream testing flow we have the need to have a "next" BSP for
configuring various settings based on building the latest kernel/uboot.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
| |
Adjust IMAGE_BOOT_FILES list as next BSP does not support all combinations
of SR1.0, HS-FS and HS-SE variants.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
Adjust IMAGE_BOOT_FILES list as mainline BSP does not support all combinations
of SR1.0, SR2.0, HS-FS and HS-SE variants.
Suggested-by: Aniket Limaye <a-limaye@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
MACHINE_KERNEL_PR is a remnant of the early OE days and hasn't been
needed for quite some time. Let's finally remove it completely.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
| |
BeaglePlay gains official support from latest TI lts-6.6 baseline, so set
it as the default. Other Beagle platforms will still use BB.org as default.
And these defaults can still be changed with TI_PREFERRED_BSP setting in a
distro config or by end user in the local.conf
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
Adjust IMAGE_BOOT_FILES list as some BSPs do not support all combinations
of SR1.1, SR2.0, HS-FS and HS-SE variants.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
| |
This adds a facility to define multiple supported BSPs with their own
preferences for individual components, as well as lets machine configs
specify conditional configurations for different BSPs.
Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As of commit [1] there will be a separate defconfig to build u-boot
for j721s2-evm and am68-sk.
Hence, introduce new yocto machine configs for am68-sk. This is done
through a new am68.inc file as the am68-sk platform does not support GP.
So j721s2-evm.inc is copied to am68.inc and updated accordingly.
[1]: https://source.denx.de/u-boot/u-boot/-/commit/a96be9b8c05ea835d27f7c9bae03279b8bd5dcf2
Signed-off-by: Aniket Limaye <a-limaye@ti.com>
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
While we are working to finish our kernel migration 6.6, we are falling
aback to software rendering for platforms that do not currently have a
solution for GPU drivers (namely the boards that use SGX).
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
|
|
|
|
|
|
|
| |
Reusing the j784s4.inc file presents problems as the am69-sk platform
does not support GP. So copy the j784s4.inc to am69.inc and update
accordingly.
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|