Commit Graph

77608 Commits

Author SHA1 Message Date
Neal Frager
47f4e3810c configs/versal_*: move to external Bootlin stable toolchain
This moves the versal defconfigs to the Bootlin glibc stable external toolchain
as per[1].

[1]: https://elinux.org/Buildroot:DeveloperDaysELCE2024#Rules_for_defconfigs

This patch has been run-tested on the vek280 evaluation board.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-10 23:49:53 +02:00
Neal Frager
dd3ef91486 configs/zynq_*: move to external Bootlin stable toolchain
This moves the zynq defconfigs to the Bootlin glibc stable external toolchain
as per[1].

[1]: https://elinux.org/Buildroot:DeveloperDaysELCE2024#Rules_for_defconfigs

This patch has been run-tested on the zc702 evaluation board.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-10 23:49:48 +02:00
Neal Frager
4e0ce46594 configs/zynqmp_*: move to external Bootlin stable toolchain
This moves the zynqmp defconfigs to the Bootlin glibc stable external toolchain
as per[1].

[1]: https://elinux.org/Buildroot:DeveloperDaysELCE2024#Rules_for_defconfigs

This patch has been run-tested on the zcu106 evaluation board.
This patch has been run-tested on the kv260 starter kit.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-10 23:49:43 +02:00
Neal Frager
ac35596c5a boot/xilinx-embeddedsw: bump default to xilinx_v2025.1
Now that all zynqmp and versal defconfigs have bumped to version
xilinx_v2025.1, the xilinx-embeddedsw default version can also be bumped
to xilinx_v2025.1.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-10 23:49:38 +02:00
Neal Frager
e136bb9fa0 boot/xilinx-prebuilt: bump default to xilinx_v2025.1
Now that all versal defconfigs have been bumped to xilinx_v2025.1, this patch
bumps the xilinx-prebuilt default version to xilinx_v2025.1.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:41:50 +02:00
Neal Frager
b6a1582b8e configs/versal_vpk180_defconfig: bump to xilinx-v2025.1
This patch bumps the versal_vpk180_defconfig to xilinx-v2025.1 which includes
the following updates:

- ATF v2.12
- Linux v6.12.10
- PLM xilinx_v2025.1
- PSMFW xilinx_v2025.1
- U-Boot v2025.01

The Xilinx specific Linux 6.12 patch has been added to this defconfig:
board/xilinx/linux_6.12/patches/linux/0001-include-uapi-linux-xlnx-ai-engine.h-fix-CONFIG_XILIN.patch

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:41:30 +02:00
Neal Frager
d6683c6d1f configs/versal_vck190_defconfig: bump to xilinx-v2025.1
This patch bumps the versal_vck190_defconfig to xilinx-v2025.1 which includes
the following updates:

- ATF v2.12
- Linux v6.12.10
- PLM xilinx_v2025.1
- PSMFW xilinx_v2025.1
- U-Boot v2025.01

The Xilinx specific Linux 6.12 patch has been added to this defconfig:
board/xilinx/linux_6.12/patches/linux/0001-include-uapi-linux-xlnx-ai-engine.h-fix-CONFIG_XILIN.patch

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:39:20 +02:00
Neal Frager
a63081b5f8 configs/versal_vek280_defconfig: bump to xilinx-v2025.1
This patch bumps the versal_vek280_defconfig to xilinx-v2025.1 which includes
the following updates:

- ATF v2.12
- Linux v6.12.10
- PLM xilinx_v2025.1
- PSMFW xilinx_v2025.1
- U-Boot v2025.01

The Xilinx specific Linux 6.12 patch has been added to this defconfig:
board/xilinx/linux_6.12/patches/linux/0001-include-uapi-linux-xlnx-ai-engine.h-fix-CONFIG_XILIN.patch

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:37:57 +02:00
Neal Frager
c7cdc2c7d7 boot/xilinx-prebuilt: add support for xilinx_v2025.1
This patch adds support for version xilinx_v2025.1 without changing the
default version.  This way, the zynqmp and versal defconfigs can bump
individually from xilinx_v2024.2 to xilinx_v2025.1.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:36:37 +02:00
Neal Frager
ad327ba29e package/bootgen: Re-apply fix build on machines with modern flex
With bootgen 2025.1, the directory structure was re-done.  In the process of
doing this, the source files in the bisonflex directory lost the fix below
which had been applied on an earlier version of bootgen for the issue below.

Bootgen embeds an old version of flex, but uses the system include syntax
(#include <>) to reference it, causing conflicts on systems with the
development headers for a modern flex version installed, leading to build
issues like:

../bisonflex/bif.yy.cpp: In member function 'virtual int BIF::FlexScanner::yylex()':
../bisonflex/bif.yy.cpp:1608:18: error: no match for 'operator=' (operand types are 'std::istream' {aka 'std::basic_istream'} and 'std::istream*' {aka 'std::basic_istream*'})

Fix it by using normal local #include statements by:

sed -i 's/<FlexLexer.h>/"FlexLexer.h"/g' *

This patch re-adds the patch to fix this to buildroot.

Fixes: https://autobuild.buildroot.org/results/056384322246877253cd8d0781717ce495cbe769/
Upstream: patch submitted to AMD internal jira process

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-By: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:33:14 +02:00
Neal Frager
0ef3504f49 board/zynqmp: remove zynqmp u-boot binman patches
Now that all zynqmp boards have bumped to xilinx_v2025.1, the zynqmp u-boot
binman patches can be removed.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:31:22 +02:00
Neal Frager
f2d23b3cf0 configs/zynqmp_zcu106_defconfig: bump to xilinx-v2025.1
This patch bumps the zynqmp_zcu106_defconfig to xilinx-v2025.1 which
includes the following updates:

- ATF v2.12
- Linux v6.12.10
- PMUFW xilinx_v2025.1
- U-Boot v2025.01

The Xilinx specific Linux 6.12 patch has been added to this defconfig:
board/xilinx/linux_6.12/patches/linux/0001-include-uapi-linux-xlnx-ai-engine.h-fix-CONFIG_XILIN.patch

The zynqmp specific u-boot binman patches are also included with the
xilinx-v2025.1 release tag, so these patches can also be removed.

The following patches have thus been removed from the defconfig:
board/zynqmp/patches/uboot/*

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:30:44 +02:00
Neal Frager
4b095dcf93 configs/zynqmp_zcu104_defconfig: bump to xilinx-v2025.1
This patch bumps the zynqmp_zcu104_defconfig to xilinx-v2025.1 which
includes the following updates:

- ATF v2.12
- Linux v6.12.10
- PMUFW xilinx_v2025.1
- U-Boot v2025.01

The Xilinx specific Linux 6.12 patch has been added to this defconfig:
board/xilinx/linux_6.12/patches/linux/0001-include-uapi-linux-xlnx-ai-engine.h-fix-CONFIG_XILIN.patch

The zynqmp specific u-boot binman patches are also included with the
xilinx-v2025.1 release tag, so these patches can also be removed.

The following patches have thus been removed from the defconfig:
board/zynqmp/patches/uboot/*

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:28:31 +02:00
Neal Frager
26528569d3 configs/zynqmp_zcu102_defconfig: bump to xilinx-v2025.1
This patch bumps the zynqmp_zcu102_defconfig to xilinx-v2025.1 which
includes the following updates:

- ATF v2.12
- Linux v6.12.10
- PMUFW xilinx_v2025.1
- U-Boot v2025.01

The Xilinx specific Linux 6.12 patch has been added to this defconfig:
board/xilinx/linux_6.12/patches/linux/0001-include-uapi-linux-xlnx-ai-engine.h-fix-CONFIG_XILIN.patch

The zynqmp specific u-boot binman patches are also included with the
xilinx-v2025.1 release tag, so these patches can also be removed.

The following patches have thus been removed from the defconfig:
board/zynqmp/patches/uboot/*

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:26:34 +02:00
Neal Frager
1106a1006b board/zynqmp/kria: remove kria specific u-boot patch
Now that all 3 zynqmp_kria defconfigs have bumped to xilinx_v2025.1, the kria
specific u-boot patch can be removed.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 21:25:03 +02:00
Neal Frager
6c95df7404 configs/zynqmp_kria_kr260_defconfig: bump to xilinx-v2025.1
This patch bumps the zynqmp_kria_kr260_defconfig to xilinx-v2025.1 which
includes the following updates:

- ATF v2.12
- Linux v6.12.10
- PMUFW xilinx_v2025.1
- U-Boot v2025.01

The Xilinx specific Linux 6.12 patch has been added to this defconfig:
board/xilinx/linux_6.12/patches/linux/0001-include-uapi-linux-xlnx-ai-engine.h-fix-CONFIG_XILIN.patch

The kria specific u-boot patch is no longer necessary, as it is
included with the xilinx-v2025.1 release tag.

The following patch has thus been removed from the defconfig:
board/zynqmp/kria/patches/uboot/0001-video-zynqmp-add-support-for-reset.patch

The zynqmp specific u-boot binman patches are also included with the
xilinx-v2025.1 release tag, so these patches can also be removed.

The following patches have thus been removed from the defconfig:
board/zynqmp/patches/uboot/*

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 20:32:58 +02:00
Neal Frager
95d9900266 configs/zynqmp_kria_kd240_defconfig: bump to xilinx-v2025.1
This patch bumps the zynqmp_kria_kd240_defconfig to xilinx-v2025.1 which
includes the following updates:

- ATF v2.12
- Linux v6.12.10
- PMUFW xilinx_v2025.1
- U-Boot v2025.01

The Xilinx specific Linux 6.12 patch has been added to this defconfig:
board/xilinx/linux_6.12/patches/linux/0001-include-uapi-linux-xlnx-ai-engine.h-fix-CONFIG_XILIN.patch

The kria specific u-boot patch is no longer necessary, as it is
included with the xilinx-v2025.1 release tag.

The following patch has thus been removed from the defconfig:
board/zynqmp/kria/patches/uboot/0001-video-zynqmp-add-support-for-reset.patch

The zynqmp specific u-boot binman patches are also included with the
xilinx-v2025.1 release tag, so these patches can also be removed.

The following patches have thus been removed from the defconfig:
board/zynqmp/patches/uboot/*

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 20:31:00 +02:00
Neal Frager
7f0a8fc51e configs/zynqmp_kria_kv260_defconfig: bump to xilinx-v2025.1
This patch bumps the zynqmp_kria_kv260_defconfig to xilinx-v2025.1 which
includes the following updates:

- ATF v2.12
- Linux v6.12.10
- PMUFW xilinx_v2025.1
- U-Boot v2025.01

The Xilinx specific Linux 6.12 patch has been added to this defconfig:
board/xilinx/linux_6.12/patches/linux/0001-include-uapi-linux-xlnx-ai-engine.h-fix-CONFIG_XILIN.patch

The kria specific u-boot patch is no longer necessary, as it is
included with the xilinx-v2025.1 release tag.

The following patch has thus been removed from the defconfig:
board/zynqmp/kria/patches/uboot/0001-video-zynqmp-add-support-for-reset.patch

The zynqmp specific u-boot binman patches are also included with the
xilinx-v2025.1 release tag, so these patches can also be removed.

The following patches have thus been removed from the defconfig:
board/zynqmp/patches/uboot/*

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 20:26:55 +02:00
Neal Frager
b52ff3766a boot/xilinx-embeddedsw: add support for xilinx_v2025.1
This patch adds support for version xilinx_v2025.1 without changing the
default version.  This way, the zynqmp and versal defconfigs can bump
individually from xilinx_v2024.2 to xilinx_v2025.1.

In addition, new software apps were added to the Xilinx/embedddedsw repo.
While they do not change the buildroot xilinx-embeddedsw boot package, the
version xilinx_v2025.1 has a new license.txt file.  For this reason, this
patch adds a hash file for the xilinx_v2025.1 version, so that both the
default xilinx_v2024.2 and xilinx_v2025.1 versions will have independent
hashes for their license.txt files.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 20:23:29 +02:00
Neal Frager
8297f41ded configs/zynq_zed_defconfig: bump to xilinx-v2025.1
This patch bumps the zynq_microzed_defconfig to xilinx-v2025.1 which includes
the following updates:

- Linux v6.12.10
- U-Boot v2025.01

The xilinx-v2025.1 Linux 6.12.10 release tag requires a patch to fix a
leak of the Kconfig CONFIG_XILINX_AIE, so this patch is now included.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 20:21:07 +02:00
Neal Frager
6e85aeb0dd configs/zynq_microzed_defconfig: bump to xilinx-v2025.1
This patch bumps the zynq_microzed_defconfig to xilinx-v2025.1 which includes
the following updates:

- Linux v6.12.10
- U-Boot v2025.01

The xilinx-v2025.1 Linux 6.12.10 release tag requires a patch to fix a
leak of the Kconfig CONFIG_XILINX_AIE, so this patch is now included.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 20:21:07 +02:00
Neal Frager
b2b10df23f configs/zynq_zc706_defconfig: bump to xilinx-v2025.1
This patch bumps the zynq_zc706_defconfig to xilinx-v2025.1 which includes
the following updates:

- Linux v6.12.10
- U-Boot v2025.01

The xilinx-v2025.1 Linux 6.12.10 release tag requires a patch to fix a
leak of the Kconfig CONFIG_XILINX_AIE, so this patch is now included.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 20:21:07 +02:00
Neal Frager
7794d36c06 configs/zynq_zc702_defconfig: bump to xilinx-v2025.1
This patch bumps the zynq_zc702_defconfig to xilinx-v2025.1 which includes
the following updates:

- Linux v6.12.10
- U-Boot v2025.01

The xilinx-v2025.1 Linux 6.12.10 release tag requires a patch to fix a
leak of the Kconfig CONFIG_XILINX_AIE, so this patch is now included.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 20:21:07 +02:00
Neal Frager
93c4e7bdbf board/xilinx: add xilinx_v2025.1 support
Add hashes for xilinx_v2025.1 release.

xilinx_v2025.1 release includes:
 - atf 2.12
 - linux 6.12.10
 - uboot 2025.01

In addition, the xilinx_v2025.1 linux kernel release tag has a Kconfig leak
of the CONFIG_XILINX_AIE option.  This patch adds a patch that is specific to
the Xilinx Linux 6.12.10 release which fixes the problem by moving the changes
implemented by the CONFIG_XILINX_AIE option from the exposed uapi header file
to the Linux internal header file.

The patch has been added to the board/xilinx/linux_6.12/patches directory, so
that it will only be applied when a user specifies they wish to build the
xilinx_v2025.1 release or they use a defconfig that has migrated to this
release.

Since the header file that causes the issue is not yet mainline, this patch
has been "upstreamed" to the Xilinx linux-xlnx repo via the AMD internal jira
process.

Upstream: internal AMD jira process

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
[Julien: fix check-package errors:
 - remove numbering in patch subject
 - add "Upstream:" tag in patch
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 20:21:07 +02:00
Neal Frager
f91854dfaf package/xilinx-fpgautil: bump to xlnx-rel-v2025.1
This patch bumps the xilinx-fpgautil package to version xlnx-rel-v2025.1.

Signed-off-by: Neal Frager <neal.frager@amd.com>
[Luca: Build-tested for ARM32]
Tested-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 19:46:59 +02:00
Neal Frager
053b0c9f66 boot/xilinx-embeddedsw: remove support for xilinx vendor name
This patch removes the support for the microblazeel-xilinx-elf arch tuple.
Users will now get an error message telling them to change their configuration
to the microblazeel-buildroot-elf arch tuple.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 19:29:01 +02:00
Neal Frager
b55e05f858 configs/{versal,zynqmp}_*: migrate to microblazeel-buildroot-elf tuple
This patch migrates all the versal and zynqmp defconfigs to use the
microblazeel-buildroot-elf arch tuple for the toolchain-bare-metal-buildroot
toolchain.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 19:27:35 +02:00
Neal Frager
147ec434eb toolchain/toolchain-bare-metal-buildroot: rename example vendor to buildroot
Now that xilinx-embeddedsw is compatible with the toolchain vendor buildroot,
this patch modifies the toolchain-bare-metal-buildroot help example to use
the microblazeel-buildroot-elf tuple.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 19:23:57 +02:00
Neal Frager
8ef4703687 boot/xilinx-embeddedsw: rename toolchain vendor to buildroot
This patch renames the bare-metal toolchain vendor used by the
xilinx-embeddedsw package from Xilinx to Buildroot to be consistent with all
other toolchains built by Buildroot.

To build the Microblaze applications available with the xilinx-embeddedsw
package, the following config is now needed:

BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf"

This change keeps backwards compatibility for users already using the
following architecture tuple:

BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-xilinx-elf"

Either vendor name is now valid, but there is a warning message to use the
Buildroot vendor name, and the support for the "microblazeel-xilinx-elf"
tuple will be removed once all zynqmp and versal defconfigs have migrated.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 19:23:53 +02:00
Neal Frager
526522a021 boot/xilinx-prebuilt: install pld.pdi to target
With the Versal Segmented Configuration, it is possible to load a PL bitstream
at run-time using the Linux fpgautil application.  Whenever Segmented
Configuration is used, both the boot.pdi and pld.pdi files will be available
to Buildroot.  For this reason, this patch improves the user experience by
installing the pld.pdi file to the target file system for run-time loading
whenever Versal Segemented Configuration is used.

If the fpgautil application is available in the target file system, it can
be used for loading the pld.pdi using the target command below.

fpgautil -b /lib/firmware/xilinx/*_pld.pdi

The source code for the fpgautil application can be found here:
https://github.com/Xilinx/meta-xilinx/blob/master/meta-xilinx-core/recipes-bsp/fpga-manager-script/files/fpgautil.c

Along with usage details:
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/1188397412/Solution+Versal+PL+Programming

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 19:02:48 +02:00
Neal Frager
3ee8569037 board/versal: change pdi filename to boot.pdi
With the Segmented Configuration, the Versal PDI files will have new names:
<design>_boot.pdi - Minimal DDR and PS config for booting
<design>_pld.pdi - Remainder of FPGA design to be loaded at run-time

Since this will be the new default, this patch aligns the Buildroot file
naming by replacing the obscure vpl_gen_fixed.pdi filename with a simpler
boot.pdi filename.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 19:02:43 +02:00
Neal Frager
a0a92928db boot/xilinx-prebuilt: add segmented config support
AMD has created a new segmented configuration for Versal products.  It splits
the Vivado hardware design into two PDI files, one containing the minimal
required configuration for the DDR and booting the processors, and a second PDI
file which contains the rest of the FPGA design and can be loaded at run-time
via U-boot or Linux.

The file names generated when using the Vivado Segmented Configuration are as
follows:

<design>_boot.pdi - Minimal DDR and PS config for booting
<design>_pld.pdi - Remainder of FPGA design to be loaded at run-time

Since two PDI files will be included in the XSA file when using Segmented
Configuration, the xilinx-prebuilt package needs to be updated to support
this feature.

For Buildroot purposes, the <design>_boot.pdi is the file that needs to be
included in the boot.bin for booting the processors, so this patch checks
for a file named *boot*.pdi which will indicate that Segmented Configuration
is being used and will make sure to use the <design>_boot.pdi file and not
the <design>_pld.pdi file when generating the boot.bin image.

If no pdi files contain the word "boot" in the filename, it can be assumed
that Segmented Configuration is not being used, so the single file *.pdi
method is the appropriate one for this case, and this patch is thus
backwards compatible with prior designs not using Segmented Configuration.

Also, Segmented Configuration is going to become the default mode for Versal
products, so the xilinx-prebuilt github location will also soon have two PDI
files for each board.  For this reason, this patch is also handling Segmented
Configuration for files downloaded from the xilinx-prebuilt repo.

For further information about the AMD Segmented Configuration, please see the
github tutorial below.

https://github.com/Xilinx/Vivado-Design-Tutorials/tree/2024.2/Versal/Boot_and_Config/Segmented_Configuration

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 19:02:38 +02:00
Neal Frager
6646d0b90f boot/xilinx-prebuilt: change versal pdi file permissions
The versal vpl_gen_fixed.pdi file is not a target executable, so the file
permissions should be 644 instead of 755.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 19:02:33 +02:00
Andy Yan
51fc2f3846 configs/coolpi_4b: new defconfig
CoolPi 4B is a rk3588s based SBC[0].
Specification:
- Rockchip RK3588S
- LPDDR4 2/4/8/16 GB
- TF scard slot
- eMMC 8/32/64/128 GB module
- Gigabit ethernet drived by PCIE with RTL8111HS
- HDMI Type D out
- Mini DP out
- USB 2.0 Host x 2
- USB 3.0 OTG x 1
- USB 3.0 Host x 1
- WIFI/BT module AIC8800
- 40 pin header

[0] https://www.cool-pi.com/product/cp4b/

Signed-off-by: Andy Yan <andyshrk@163.com>
[Julien:
 - add missing BR2_GLOBAL_PATCH_DIR and hash files
 - add missing BR2_TARGET_UBOOT_NEEDS_GNUTLS
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-09 18:06:23 +02:00
Kadambini Nema
e9227311d9 package/gcc: update to 14.3.0
Release announcement:
https://gcc.gnu.org/pipermail/gcc-announce/2025/000186.html

List of bugs which were resolved in 14.3.0:
https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=14.3

Drop upstream patch 0003-libquadmath-Fix-up-libquadmath-math-sqrtq.c-compilat.patch
https://gcc.gnu.org/cgit/gcc/commit/?id=3fe5720430a9ba61ed7562aac4d758cc77d49a28

Signed-off-by: Kadambini Nema <kadambini.nema@gmail.com>
[Julien:
 - rebase on branch next
 - fix patch 0003 upstream merge URL
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-08 16:21:21 +02:00
Kadambini Nema
0b8b72d2fe package/gcc: update to 13.4.0
Release announcement:
https://gcc.gnu.org/pipermail/gcc-announce/2025/000187.html

Changelog:
https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=13.4

Signed-off-by: Kadambini Nema <kadambini.nema@gmail.com>
[Julien: fix check-package error by fixing .checkpackageignore entry]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-08 16:14:38 +02:00
Kadambini Nema
26c4821638 package/diffutils: bump version to 3.12
Release notes:
Version 3.12 - https://lists.gnu.org/archive/html/info-gnu/2025-04/msg00005.html
Version 3.11 - https://lists.gnu.org/archive/html/info-gnu/2025-02/msg00003.html

Fix the following error seen during cross-compilation error by assuming that
strcasecmp function is always available.
- "configure: error: cannot run test program while cross compiling"

Signed-off-by: Kadambini Nema <kadambini.nema@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-08 15:43:17 +02:00
Kadambini Nema
992cea79eb package/valgrind: bump to version 3.25.1
Release notes:
https://sourceware.org/git/?p=valgrind.git;a=blob;f=NEWS;h=741329a681708fb01f6451e775471fbbe13904f7;hb=4441567fbec8c263e1624b49ba86572d4cccfccd

Signed-off-by: Kadambini Nema <kadambini.nema@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-08 15:38:31 +02:00
Kadambini Nema
66dc76de82 package/libusb: bump version to 1.0.29
Release notes:
https://github.com/libusb/libusb/releases/tag/v1.0.29

Changelog:
https://github.com/libusb/libusb/blob/v1.0.29/ChangeLog#L4

Signed-off-by: Kadambini Nema <kadambini.nema@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-08 15:36:04 +02:00
Kadambini Nema
e0a7ddecbe package/vnstat: bump version to 2.13
Release notes:
https://github.com/vergoh/vnstat/releases/tag/v2.13
https://github.com/vergoh/vnstat/releases/tag/v2.12

Signed-off-by: Kadambini Nema <kadambini.nema@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-08 15:34:38 +02:00
Kadambini Nema
c87d34badb package/libgit2: bump version to 1.9.1
Release notes:
https://github.com/libgit2/libgit2/releases/tag/v1.9.1

Signed-off-by: Kadambini Nema <kadambini.nema@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-08 15:29:31 +02:00
Kadambini Nema
eb21ab5c71 package/whois: bump to version 5.6.2
Changelog:
https://github.com/rfc1036/whois/blob/v5.6.2/debian/changelog

Signed-off-by: Kadambini Nema <kadambini.nema@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-08 15:27:59 +02:00
El Mehdi YOUNES
22798b5978 support/testing: add runtime test for Mesa3D Rusticl
This test verifies that clinfo correctly detects the rustiCL platform
and llvmpipe as device.

We check:
  - exit code,
  - Platform name matches rusticl,
  - Device name matches llvmpipe.

Signed-off-by: El Mehdi YOUNES <elmehdi.younes@smile.fr>
[Julien:
 - rename file to test_mesa3d.py
 - add Medhi in DEVELOPERS for this test file
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-07 22:47:35 +02:00
El Mehdi YOUNES
fc7c7d74aa package/mesa3d: add RustiCL support
RustiCL is an OpenCL implementation written entirely in
RUST and integrated into Mesa3D. It enables the use of OpenCL
programs on top of existing Gallium drivers. RustiCL is a
modern and maintainable replacement for the old C-implemention
Clover.

To build Rusticl in Mesa3D, the following components are required:

  - host-rustc (Rust compiler)
  - host-rust-bindgen (for generating bindings)
  - spirv-tools
  - spirv-llvm-translator (providing libLLVMSPIRVLib.so matching the LLVM version)
  - LLVM built with libclc and -DLLVM_ENABLE_DUMP=ON
  - Mesa headers via mesa-clc-bundle-headers=enabled
  - There is a known meson bug and in order to fix it we set -Drust_std=2021, see:
    https://docs.mesa3d.org/rusticl.html#known-issues
    https://github.com/mesonbuild/meson/issues/10664

More details in the Mesa documentation:
https://docs.mesa3d.org/rusticl.html

Rusticl is the provider of OpenCL in Buildroot.
However, Mesa does not provide the `libOpenCL.so` library itself.
We therefore depend on the `opencl-icd-loader` package to
install this loader in the toolchain sysroot, so that other
OpenCL-dependent packages can build and link against it.

Without the ICD loader, only `libRustiOpenCL.so` is available and
tools like `clinfo` or `clpeak` fail.

- 'Dmesa-clc-bundle-headers=enabled' ensures that the OpenCL header
   files are bundled and available in the target. Without this,
   runtime compilation of OpenCL kernels via clpeak or clinfo fails
   with:
	fatal error: 'opencl-c-base.h' file not found

see 3619611b31

We add a Rust compiler override to Meson to use Buildroot’s
host Rust toolchain using MESA3D_MESON_EXTRA_BINARIES.
Rusticl requires Meson to invoke rustc with the correct target and linker:
    * 'rust=['$(HOST_DIR)/bin/rustc','--target=$(RUSTC_TARGET_NAME)']'
    * 'rust_ld='$(TARGET_CROSS)gcc''
Another solution was proposed to set rust and rust_ld globally in
cross-compilation.conf, we prefer to define them locally within mesa
for now to ensure precise control over the rust toolchain behavior
during the Mesa build.

see https://lore.kernel.org/buildroot/ZcOeEMfwX4XlRXO7@landeda/

Currently, we should always use RUSTICL_ENABLE= driver to use rusticl.
More information:
https://docs.mesa3d.org/envvars.html#envvar-RUSTICL_ENABLE

Signed-off-by: El Mehdi YOUNES <elmehdi.younes@smile.fr>
[Julien: add references to meson bug]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-07 22:47:25 +02:00
El Mehdi YOUNES
d2a82364ac package/opencl-icd-loader: new package
This adds the OpenCL installable client driver (ICD) loader
which provides the 'libOpenCL.so' shared library needed to
run OpenCL programs.

Mesa3D can offer opencl implementations (such as rusticl),
but it does not provide 'libOpenCL.so'.

Without it, programs like 'clinfo' fail to build not
finding 'libOpenCL.so'.

see:
https://github.com/KhronosGroup/OpenCL-ICD-Loader

Signed-off-by: El Mehdi YOUNES <elmehdi.younes@smile.fr>
[Julien: add Medhi in DEVELOPERS for this package]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-07 21:44:36 +02:00
El Mehdi YOUNES
dba2912be3 package/opencl-headers: new package
Add the "opencl-headers" package to install the OpenCL C API headers,
which are required at build time by consumers such as
opencl-icd-loader.

While Mesa provides these headers internally, they are not installed
by default since clover and opencl-gallium are deprecated and will
be removed starting from mesa 25.2

And since we should install them manually from mesa, it is better
use external headers. This ensures these headers are always
available and up-to-date independently from those provided by Mesa,
folowing the same logic used for "opencl-clhpp".

see:
https://github.com/KhronosGroup/OpenCL-ICD-Loader#dependencies
https://gitlab.freedesktop.org/mesa/mesa/-/tree/main/include/CL
https://github.com/KhronosGroup/OpenCL-Headers
5844dea316 (feedf4d0444f717d7227468a9529c2cf9740b6fd)

Signed-off-by: El Mehdi YOUNES <elmehdi.younes@smile.fr>
[Julien: add Medhi in DEVELOPERS for this package]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-07 21:39:20 +02:00
El Mehdi YOUNES
2f4a922376 package/opencl-clhpp: bump version to v2024.10.24
Bump opencl-clhpp to the latest version "v2024.10.24".

https://github.com/KhronosGroup/OpenCL-CLHPP/releases/tag/v2024.10.24

Signed-off-by: El Mehdi YOUNES <elmehdi.younes@smile.fr>
[Julien: reword commit title to include the version name]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-07 21:25:31 +02:00
Brandon Maier
c01b9e7641 package/bats-core: update to 1.12.0
Release notes: https://github.com/bats-core/bats-core/releases/tag/v1.12.0

Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-06 21:58:34 +02:00
Thomas Devoogdt
e0bd9bafb4 package/fluent-bit: bump to 4.0.3
News:
- https://fluentbit.io/announcements/v4.0.3/

Other remarks:
- Dropped 0003-lib-miniz-only-require-a-C-compiler.patch
  as it is upstream. [1]

- Added msgpack-c as a system dependency since this has been
  added to buildroot.

- Added sqlite as system dependency as it can't really be
  disabled otherwise due to an upstream compile bug. [2]

- Sorted the config entries while at it.

[1] https://github.com/fluent/fluent-bit/pull/10315
[2] https://github.com/fluent/fluent-bit/issues/9757

Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-06 21:52:33 +02:00
Thomas Devoogdt
110cd92932 package/msgpack-c: add new package
MessagePack ships both in a C++ and a C variant. Add the latter to
Buildroot. This will be used by fluent-bit.

Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
[Julien:
 - switch homepage URL to use https
 - add a note in package/msgpack{,-c}/Config.in to clarify C/C++
   variants
]
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-06-06 21:50:28 +02:00