mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-01 21:23:51 -09:00
b59d64c50d3d8bd486ac72a4c71bc3a9dd08e420
Add a package which deploys the NXP MC (Management Complex) firmware to the target. This is necessary for NXP DPAA2 SoCs (LS1088A, LS2080A, LS2088A, LX2160A). The MC firmware is deployed by default to the $O/images/ folder, where it can be used by post-build scripts. Additionally, if BR2_PACKAGE_QORIQ_MC_BINARY_TARGET_INSTALL_PATH is specified and if the board mcinitcmd is written as such as to pick it up, it is optionally deployed to the filesystem. The API exposed by the MC firmware respects backwards compatibility principles, which means that the latest firmware version can always be (and should always be) used on a platform, irrespective of the Linux, U-Boot, RCW and restool versions, even though the latest features might not be used by older API consumers. In terms of forwards compatibility, old MC firmware versions can be used as long as the qoriq-restool package is built with a MC_VERSION_COMPATIBLE variable (located in its Makefile, signifying "minimum compatible version") older than, or equal to it. If the use of qoriq-restool is not desired (networking objects are statically created by the DPL), old MC firmware versions are supported by U-Boot and the Linux kernel with a limited feature set. Thus, it is still possible to an extent to use firmware versions older than MC_VERSION_COMPATIBLE. According to the upstream maintainer, the latest MC firmware version is identified by the fact that it is always located at the HEAD of the "master" branch: https://lore.kernel.org/buildroot/482493f17e63d2b4cb285b50049ed8e6@free.fr/T/#m62c3ec04ba546ac9b0a194d13bc35fedeaa9deb0 Currently, the latest MC firmware version is 10.39.0. This version should be in sync with the qoriq-mc-utils package. At this stage, the latest lf-6.12.3-1.0.0 NXP BSP has qoriq-restool with an MC_VERSION_COMPATIBLE='10.32.0', which means that it supports this MC firmware version. https://github.com/nxp-qoriq/restool/blob/lf-6.12.3-1.0.0/Makefile#L23 Note that the MC firmware also used to be distributed through linux-firmware: https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/dpaa2/mc?h=20250311 I don't know what was the reason for doing that, but it stopped being updated and the versions there are quite old. Signed-off-by: Vladimir Oltean <olteanv@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
…
…
…
Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation. The documentation can be found in docs/manual. You can generate a text document with 'make manual-text' and read output/docs/manual/manual.text. Online documentation can be found at http://buildroot.org/docs.html To build and use the buildroot stuff, do the following: 1) run 'make menuconfig' 2) select the target architecture and the packages you wish to compile 3) run 'make' 4) wait while it compiles 5) find the kernel, bootloader, root filesystem, etc. in output/images You do not need to be root to build or run buildroot. Have fun! Buildroot comes with a basic configuration for a number of boards. Run 'make list-defconfigs' to view the list of provided configurations. Please feed suggestions, bug reports, insults, and bribes back to the buildroot mailing list: buildroot@buildroot.org You can also find us on #buildroot on OFTC IRC. If you would like to contribute patches, please read https://buildroot.org/manual.html#submitting-patches
Description
Languages
Makefile
62.6%
Python
18.8%
C
8.5%
Shell
6.2%
PHP
1.4%
Other
2.1%