Using PLATFORM=k3 can leads to a runtime boot crash on some K3 SoC (e.g.
j721e) because the optee flavor is missing.
We could use BR2_TARGET_OPTEE_OS_PLATFORM=k3 and
BR2_TARGET_OPTEE_OS_PLATFORM_FLAVOR=am64x but we actually can use
BR2_TARGET_OPTEE_OS_PLATFORM=k3-am64x as explained in the optee-os
Makefile [1]:
# If $(PLATFORM) is defined and contains a hyphen, parse it as
# $(PLATFORM)-$(PLATFORM_FLAVOR) for convenience
This is how meta-ti set the optee-os platform:
meta-ti]$ git grep OPTEEMACHINE
meta-ti-bsp/conf/machine/am437x-hs-evm.conf:OPTEEMACHINE = "ti-am43xx"
meta-ti-bsp/conf/machine/am57xx-hs-evm.conf:OPTEEMACHINE = "ti-am57xx"
meta-ti-bsp/conf/machine/beagleplay.conf:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/dra7xx-hs-evm.conf:OPTEEMACHINE = "ti-dra7xx"
meta-ti-bsp/conf/machine/include/am62axx.inc:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/include/am62pxx.inc:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/include/am62xx.inc:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/include/am64xx.inc:OPTEEMACHINE = "k3-am64x"
meta-ti-bsp/conf/machine/include/am65xx.inc:OPTEEMACHINE = "k3-am65x"
meta-ti-bsp/conf/machine/include/j7200.inc:OPTEEMACHINE = "k3-j721e"
meta-ti-bsp/conf/machine/include/j721e.inc:OPTEEMACHINE = "k3-j721e"
meta-ti-bsp/conf/machine/include/j721s2.inc:OPTEEMACHINE = "k3-j784s4"
meta-ti-bsp/conf/machine/include/j722s.inc:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/include/j784s4.inc:OPTEEMACHINE = "k3-j784s4"
meta-ti uses the OPTEEMACHINE to set optee-os platform [2].
[1] https://github.com/OP-TEE/optee_os/blob/4.0.0/Makefile#L37
[2] https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-security/optee/optee-os.inc?h=4.0.3#n23
Suggested-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit fde806f822)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Using PLATFORM=k3 can leads to a runtime boot crash on some K3 SoC (e.g.
j721e) because the optee flavor is missing.
We could use BR2_TARGET_OPTEE_OS_PLATFORM=k3 and
BR2_TARGET_OPTEE_OS_PLATFORM_FLAVOR=am62x but we actually can use
BR2_TARGET_OPTEE_OS_PLATFORM=k3-am62x as explained in the optee-os
Makefile [1]:
# If $(PLATFORM) is defined and contains a hyphen, parse it as
# $(PLATFORM)-$(PLATFORM_FLAVOR) for convenience
This is how meta-ti set the optee-os platform:
meta-ti]$ git grep OPTEEMACHINE
meta-ti-bsp/conf/machine/am437x-hs-evm.conf:OPTEEMACHINE = "ti-am43xx"
meta-ti-bsp/conf/machine/am57xx-hs-evm.conf:OPTEEMACHINE = "ti-am57xx"
meta-ti-bsp/conf/machine/beagleplay.conf:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/dra7xx-hs-evm.conf:OPTEEMACHINE = "ti-dra7xx"
meta-ti-bsp/conf/machine/include/am62axx.inc:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/include/am62pxx.inc:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/include/am62xx.inc:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/include/am64xx.inc:OPTEEMACHINE = "k3-am64x"
meta-ti-bsp/conf/machine/include/am65xx.inc:OPTEEMACHINE = "k3-am65x"
meta-ti-bsp/conf/machine/include/j7200.inc:OPTEEMACHINE = "k3-j721e"
meta-ti-bsp/conf/machine/include/j721e.inc:OPTEEMACHINE = "k3-j721e"
meta-ti-bsp/conf/machine/include/j721s2.inc:OPTEEMACHINE = "k3-j784s4"
meta-ti-bsp/conf/machine/include/j722s.inc:OPTEEMACHINE = "k3-am62x"
meta-ti-bsp/conf/machine/include/j784s4.inc:OPTEEMACHINE = "k3-j784s4"
meta-ti uses the OPTEEMACHINE to set optee-os platform [2].
[1] https://github.com/OP-TEE/optee_os/blob/4.0.0/Makefile#L37
[2] https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-security/optee/optee-os.inc?h=4.0.3#n23
Suggested-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit f68c45f733)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Update U-Boot to version 2024.01 and kernel to 6.6.12.
In kernel 6.6 the arm32 i.MX device trees were placed into the
nxp/imx kernel directory, so adapt accordingly.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This patch adds support for the AVNET RZBoard V2L.
The board support creates a bootable sd card image. The board is
shipped with a u-boot inside its eMMC. The board support uses this
u-boot and does not build and deploy a u-boot onto the sd card.
Instead the sd card only contains a uEnv.txt, a kernel image and the
rootfs.
Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The package/busybox/busybox-minimal.config is the default configuration
for MMU-less systems, so the setting is redundant and can be removed
without effect.
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The defconfig choice is the default one, so it is redundant and can be
removed without effect.
Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Commit 6b2329bb80 ("configs/ti_am64x_sk: new defconfig") forgot to
specify the Linux kernel version, so do that now.
When the defconfig was added, the default version was 6.4.x, so use
version 6.4.16.
Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Commit 4b8fddb060 ("configs/ti_am62x_sk: new defconfig) forgot to
specify the Linux kernel version, so do that now.
When the defconfig was added, the default version was 6.4.x, so use
version 6.4.16.
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
[Romain:
use BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_4 as suggested
by Giulio Benetti]
Signed-off-by: Romain Naour <romain.naour@smile.fr>
uImage is almost deprecated so let's switch to zImage. Let's also bump
Linux version to 6.1.44, U-Boot to 2023.07 and remove
BR2_TARGET_UBOOT_NEEDS_PYTHON3 since it's selected by
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT.
Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The custom kernel used for the Rock5B features an FIQ debug
interface which is enabled by default. As it is not needed, it is
disabled. The documentation features instructions on how to
re-enable it, if it is needed.
Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The assumption is that updates to the stable branch should not break anything,
so we use the latest LTS rather than a specific version.
Signed-off-by: Marleen Vos <marleen.vos@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The assumption is that updates to the stable branch should not break anything,
so we use the latest LTS rather than a specific version.
Signed-off-by: Marleen Vos <marleen.vos@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
- v2.6 changes to FIP instead of SSBL boot.
- This requires switching to u-boot.bin in U-Boot, and using that
instead of .stm32 in ATF.
- fiptool expects dtb to be split off from u-boot.bin, so need custom
u-boot-nodtb.bin in addition to u-boot.dtb.
Caveat: this is perhaps not really obligatory, but the ATF
documentation explains it like that.
- The partition must be named fip (while it must be named ssbl for
SSBL boot).
- Since the partition name is set in the common template, all
defconfigs using that template must be bumped in a single commit
- ATF now produces both fip.bin and <boardname>.stm32, so fip.bin has
been added to the configs
- While we're at it, add the structuring comments to
avenger96_defconfig similar like the other defconfigs
Signed-off-by: Marleen Vos <marleen.vos@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Bump qemu_arm_ebbr_defconfig and qemu_aarch64_ebbr_defconfig in sync:
- Bump Linux to v6.6.11
- Bump U-Boot to 2024.01
- Bump TF-A to v2.10
While at it, adapt Qemu command line arguments to avoid a warning when
disabling ACPI.
Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
Cc: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Commit 78e8f383 "configs/imx8mmpico: bump bsp components to version
tn-kirkstone_5.15.71-2.2.0" bumped components, but forgot to add
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y.
This commit adds it to the defconfig to fix the build.
Fixes:
- https://gitlab.com/buildroot.org/buildroot/-/jobs/5858180248
In file included from tools/imagetool.h:24,
from tools/aisimage.c:7:
include/image.h:1166:12: fatal error: openssl/evp.h: No such file or directory
1166 | # include <openssl/evp.h>
| ^~~~~~~~~~~~~~~
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Also adjust the include path for the device tree. Since Linux 6.5-rc1
(724ba67515 "ARM: dts: Move .dts files to vendor sub-directories"),
sama5d31.dtsi lives in the microchip subdirectory.
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Bump version of Linux to 6.6.14 and U-Boot to 2024.01
and also use upstream configs and dts.
Signed-off-by: Ludwig Kormann <ludwig.kormann@ict42.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Even though Northstart platform support is well upstreamed it may always
happen that some kernel change affects/breaks something. It's a good
practice to specify fixed versions for kernel & Linux headers.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Starting with kernel release v6.5 ARM DTS files are placed in vendor
subdirectories (Linux commit 724ba6751532 ("ARM: dts: Move .dts files to
vendor sub-directories")).
This fixes:
make[3]: *** No rule to make target 'arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dtb'. Stop.
make[2]: *** [Makefile:1384: bcm4708-smartrg-sr400ac.dtb] Error 2
make[3]: *** No rule to make target 'arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dtb'. Stop.
make[2]: *** [Makefile:1384: bcm47094-luxul-xwr-3150-v1.dtb] Error 2
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This defconfig enables edk2 UEFI shell and grub2 riscv64-efi boot
of a Linux Kernel.
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
The linux defconfig 'bb.org_defconfig' is the best for beagleboard.
To load compressed kernel modules, kmod and xz packages are needed
because busybox doesn't support it.
Bump U-Boot to version 2023.10. The uboot-tools package is no need.
Tested on beaglebone black.
[1] https://github.com/beagleboard/linux/releases/tag/6.1.46-ti-r13
Signed-off-by: Scott Fan <fancp2007@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Commit d344ffe624 (configs/rock5b: add hash for custom uboot)
explicitly noted that the kernel was retrieved from a git-clone, so the
sha1 of the commit was enough to get what we expect.
However, that does not account for the fact that the upstream repository
can disapear or be temporarily unavailable (maliciously or not). In that
case, the kernel archive will be looked up on the backup mirror.
In that case, the download is via wget over https, which protects the
transport, but does not guarantee that the remote server serves the
expected archive.
The hash file was dropped when d344ffe624 was applied; restore it.
Since the defconfig now has hashes for all its downloads, enforce
checking hashes.
Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Let's also enable NXP firmware package to let latest SDMA firmware to be
loaded. To achieve this we also need to enable dynamic eudev to let it to
load the firmware as it is requested early before the rootfs is mounted.
Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
[Peter: explain why eudev is needed]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Let's also enable NXP firmware package to let latest SDMA firmware to be
loaded. To achieve this we also need to enable dynamic eudev to let it
load the firmware as it is requested early before the rootfs is mounted.
Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
[Peter: explain why eudev is needed]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The zynq_qmtech_defconfig has not been maintained for 3 years, and is now
using a very out of date u-boot and Linux kernel. Since there are 4 other
zynq7000 defconfigs available in buildroot and Julien no longer has a
functional board, drop the defconfig.
Signed-off-by: Neal Frager <neal.frager@amd.com>
Acked-by: Julien Olivain <ju.o@free.fr>
[Peter: reword commit message]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>