summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2023-12-11libfdt: Fix invalid version warningMichal Suchanek
python does not like the u-boot- prefix in the version, drop it. /usr/lib/python3.10/site-packages/setuptools/dist.py:544: UserWarning: The version specified ('u-boot-2022.10') is an invalid version, this may not work as expected with newer versions of setuptools, pip, and PyPI. Please see PEP 440 for more details. Signed-off-by: Michal Suchanek <msuchanek@suse.de> Reviewed-by: Simon Glass <sjg@chromium.org> Upstream-Status: Backport [c977b184350479b8c43a0e002eaf2b13b510ba4f] The update of python setuptools from 68.2.2 to 69.0.2 in current OE master now fails the build without this fix. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2022-04-18MA-18634-1 Android: refine config dependencyJi Luo
Refine the dependency of some configs to make it easier to add/modify android config files. Test: builds. Change-Id: Iccb044dadc7ce1e0b839bf83e2e9157e718f286c Signed-off-by: Ji Luo <ji.luo@nxp.com> (cherry picked from commit 86f4f99a367bbc0ef99d4ab2a0b4078babfbfbd2) (cherry picked from commit 8f3e86b52a27948ba1be1d93dae5e5a4c8a73a0a) (cherry picked from commit ff17b410ea60f6450c2ef9342a5b9e55e1929470)
2022-04-18MA-13050-5 [Android] support evs on mek-8qxp boardJi Luo
camera sometime can't been open once run M4 image. ISI-CH0 probe funtion is not called when meet issue. The root cause is: M4 image set assign resource SC_R_ISI_CH0 into m4 partition when open camera in m4 side. Uboot will call update_fdt_with_owned_resources to check the pd in current dts node. it will call sc_rm_is_resource_owned to check the pd whether in other partition, if yes, it will delete the dts node. uboot delete isi_0 node whose pd is SC_R_ISI_CH0. add CONFIG_SKIP_RESOURCE_CHECKING to skip checking resource when load dtb. Change-Id: Iaf9a5eda07074c45c15c43f23cb6ad6b5a77de47 Signed-off-by: zhang sanshan <sanshan.zhang@nxp.com> (cherry picked from commit: bd0682f5b3208525363690d446bc86da15a43120) (cherry picked from commit: 11126b31964eabdd321cdbc284e0abccfc6af9cd)
2022-04-18MA-14916-4 support dual bootloader for imx8m/imx8qJi Luo
This commit enables dual bootloader feature for imx8m/imx8q, but as commit 'a2018ab' already brings in some dual bootloader codes when enabling fastboot support, so this commit won't be a complete and standalone patch to introduce the dual bootloader feature. This commit will do the following: 1. clean up dual bootloader flow and add missing implementation. 2. Merge the dual bootloader entry for fit and container to one function 'mmc_load_image_raw_sector_dual_uboot'. Change-Id: Ic9410a48092cc05de599dd897fc912177e2a1fe1 Signed-off-by: Ji Luo <ji.luo@nxp.com> (cherry picked from commit d00da7c6e2d3b0ed5f3f93eb98d841d1b7a114ca)
2022-04-06LFU-219 crypto/fsl: iMX8M: Disable CAAM JR0 in SPL and UbootGaurav Jain
JRO is reserved in ATF for use by HAB(secure boot) and not released to non secure(NS). CAAM crypto operation are failing when use JR0 in uboot. when DM is enabled set the status of JR0 as disabled in device tree, so JR0 is not initialized. JR1 is initialized in SPL and Uboot. when DM is not enabled SEC job ring address is defined with JR1 offset(0x2000). Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Reviewed-by: Franck LENORMAND <franck.lenormand@nxp.com> (cherry picked from commit ed618ce6a95b51ec30f37311d374f9178e0cc44c)
2022-04-06MLK-25346: Add support for cockpit on i.MX8QM MEK boardNitin Garg
This allows the u-boot to be built separately for different clusters (A53 or A72) on i.MX8QM. Signed-off-by: Seb Fagard <sebastien.fagard@nxp.com> Signed-off-by: Fabrice Goucem <fabrice.goucem@nxp.com> Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Signed-off-by: Nitin Garg <nitin.garg@nxp.com> (cherry picked from commit edb54f88b014bdd0379370678d54de60e3962b38) (cherry picked from commit e8ec7faa4cb53461da3c397ee3d95fc4a82a5d21) (cherry picked from commit f0f26c2b9a13467879e31aadca9d9cd596d50dab) (cherry picked from commit 8c7819c39f870648a40bce6dcda44c6065b508f0)
2022-04-06MLK-23110-1 usb: Decouple the CI_UDC DM gadget driver with EHCI MX6 driverYe Li
On 2019.04 SPL, we enabled DM gadget driver for QM/QXP to support dual USB ports. The CI_UDC DM gadget driver will call init function inside EHCI mx6 driver, so when building SPL on iMX8QM/QXP with CI UDC enabled, we have to enable usb host driver as well, and this introduces about more than 40KB size to SPL. Move the common codes to a independent file, so that both host driver and gadget driver can call it, then decouple the host and gadget driver. Note: the patch only applies to ci_udc gadget DM driver. For non-DM gadget driver, it still depends ehci host interfaces. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 1afed171a77b4c95cd4ea76f29d5a0a6bb199820) (cherry picked from commit 6680499ca4d3a740df5c0aa5a5e66f6d93f827fb) (cherry picked from commit f1fc6faa99e66ceb801503db28b3ce8fc01c4138) (cherry picked from commit 89d47b48f0f598ef080bc99385f831c698ca7c98) (cherry picked from commit 937de0f31667e89e7b4250b233c1fd8da3412d24)
2022-04-06MLK-21854-1 imx: Add uuu relevant environmentYe Li
Add the uuu environment to each board, when booting from USB, the u-boot will use them by default Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit e36e653ca2f5b0e879d84925219455790acaf2d2) (cherry picked from commit c5b1c86f07f4e99e4df9ce7b65e01f31aefc770a) (cherry picked from commit 7a40904525aba68346fb5f553682c71f89302c49) (cherry picked from commit 70dd923d283538219c3a7a33af02465c1aa0e3b5)
2022-04-06MLK-18591-3 android: Add FSL android fastboot supportYe Li
Porting the FSL android fastboot features from imx u-boot v2018.03 to support all SoCs: imx6/imx7/imx7ulp/imx8/imx8m. The UUU commands like UCmd and ACmd are also added. Users need set CONFIG_FASTBOOT_UUU_SUPPORT=y to enable the feature. Signed-off-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 65120b06a7f750b9b1a6e0db3d2082cc7088d5a8) (cherry picked from commit 9b149c2a28829fe7017f83981d634157bc31cc94) (cherry picked from commit 9f99e9de1d37e9f6c02c1b27348ea3dcdab94569) (cherry picked from commit 6ae1c043431a4987f563026b179b33945a5880ee) (cherry picked from commit 806c9ba15e8742a23b1b9147d9b85219133b6f10) (cherry picked from commit 1357b84595d617f6ebc09f23e7b9d14b080f8048)
2022-04-06MLK-18152-2 mx6sxsabresd: Update board codes to align with v2020.04Ye Li
Add emmc support which needs board rework. Add I2C2. Update DM PMIC settings and LDO bypass support. Add BMODE support. Add LVDS and LCD splash screen support Add PCI power and reset GPIO and disable PCI at default. Update QSPI settings for QSPI boot and M4 fastup. Update environment settings Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit e74716b6e78f016226dc9f800b04574f545d9367) (cherry picked from commit f3dd07286dc39d3028deaedf5dc1668929cbfd29) (cherry picked from commit 462883d1a88e59fd2b854c3f751e75a329fad500) (cherry picked from commit 2a7b7f9dc55412860b040959b06e11bfaab574b9) (cherry picked from commit 67b5e672e457523ea40a58f73a977026cff2a05e)
2022-04-06MLK-12527-1 mxc_keyb: Add MXC keyboard driverYe Li
The i.MX6SL EVK needs this driver in android fastboot support. Add this driver to u-boot. To use the driver, user must define: CONFIG_MXC_KPD Enable the driver CONFIG_MXC_KEYMAPPING Key mapping matrix CONFIG_MXC_KPD_COLMAX The column size of key mapping matrix CONFIG_MXC_KPD_ROWMAX The row size of the key mapping matrix Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 5096e572667ff41217deb4ba9b1bd15e93fa6b59) (cherry picked from commit e84160eaf5c057da45a227039c6f8a7911f43a82) (cherry picked from commit 7f8757016e97adeacba256bd0cb6ad8882f6a51e) (cherry picked from commit 79f5e8a3cc9bb1460dd06fa4909ff200d147377c) (cherry picked from commit d62830ee536b70d2ac75a6ac692c67ee151d65e2) (cherry picked from commit ed7eed7a3fd615628032a04e5d4d58f488cc983e) (cherry picked from commit 2ab81ace60b3bf7521b0ca3ba4defd8d8fc62689)
2022-04-06ENGR00315894-81 gis: Add gis moduleYe.Li
Add gis module, current gis is support vadc input. Add power down function to lcdif driver. Signed-off-by: Sandor Yu <R01008@freescale.com> Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit a007b00dd8ef9f773dfdebef0b1deb0990281793) (cherry picked from commit a31dcdafb0963381e7213c59f79a340ef27ec2e2) (cherry picked from commit 02dfe2e4af5f51d39a51542fb0e81f93faf505bc) (cherry picked from commit a8e94954d8ccc44c41d77a5e356d6a99b3d45649) (cherry picked from commit 0864a17afbc93fed72273c7d7d3be0fc8681e794) (cherry picked from commit 20918f8e062111ca11bc9e3b82732145792c87c2) (cherry picked from commit eb335355b9563c74ef0f54259439e6f2b57a3167) (cherry picked from commit 6aa9553cab564f2cbe7ed43f51f4d966282c7f54) (cherry picked from commit 1dbc8d32fba24bc85a41037f763203ef5550fc4d)
2022-04-06MLK-18147-2 mx6sabreauto/sabresd: Update mx6dq/dqp/dl/s sabre boards codesYe Li
Porting the mx6dq/dqp/dl/s sabresd and sabreauto codes from v2018.03 The major change is moving back to non-SPL mode for sabre boards. which means all old things like DCD, plugin are added back for each platform. This inherits the way used in v2018.03 Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 3a3a0f07c85b0ae86b18709445206db0310c3b63) (cherry picked from commit 90b86014f70f44db3b18e96b2643a57a0a6f92a3) (cherry picked from commit 2660660f213e117c3445ba6f18e78d44df1683bc) (cherry picked from commit 7e4494e316fd48aad0cee22f45722147ff1f6dcd) (cherry picked from commit b29f22f4314bc67305e1533ba21ddaa67aa8df49)
2022-04-06MLK-18654-3 spl: Un-define the DM USB for SPLYe Li
Since we don't support DM in SPL, undefine the DM USB in SPL build, so it can use non-DM USB driver. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 1e02825ab852f31111b875af9b84f82a974df64c) (cherry picked from commit 62efea1e99a02fc282d0a22c36fddb1b14a09612) (cherry picked from commit 8a44b2ce1cc80e9c28625b84a7db00c75880b70f) (cherry picked from commit d2714bf8a344a27d48ba272609617a5502901d94)
2022-04-06MLK-23574-13 usb: gadget: Add the cadence USB3 gadget driverSherry Sun
This driver is ported from NXP i.MX U-Boot version imx_v2019.04 and some changes have also been made to adapt to U-Boot. Add the Cadence USB3 IP(CDNS3) driver for the gadget (device mode). The CDNS3 gadget driver support DM mode. CONFIG_DM_USB_GADGET should be enabled when use this driver. Signed-off-by: Sherry Sun <sherry.sun@nxp.com> Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 09d22730a9b022dd6354740d46c6fa155553bbd0) (cherry picked from commit 7069c6cc75111ff35b61278e768abcd7cb2b6cb1)
2022-04-06MLK-23574-11 usb: cdns3: remove upstream cadence USB3 driverYe Li
Upstream version is an initial version, it can't be used directly. We will use downstream version instead. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit a956dfbc2a09a53c6a7a143ffdd807735526017b) (cherry picked from commit 59681eeda696cc1345b836e9ee6ae7f61c031365)
2022-02-25scripts: Makefile.lib: generate dsdt_generated.c instead of dsdt.cPhilippe Reynes
There is a conflict between the static file lib/acpi/dsdt.c and the file dsdt.c generated dynamicaly by scripts/Makefile.lib. When a mrproper is done, the static file dsdt.c is removed. If a build with acpi enabled is launched after, the following error is raised: CC lib/acpi/acpi_table.o make[2]: *** No rule to make target 'lib/acpi/dsdt.asl', needed by 'lib/acpi/dsdt.c'. Stop. scripts/Makefile.build:394: recipe for target 'lib/acpi' failed To avoid such error, the generated file is named dsdt_generated.c instead of dstdt.c. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> Tested-by: Heiko Thiery <heiko.thiery@gmail.com>
2022-02-23Merge tag 'dm-pull-22222' of https://gitlab.denx.de/u-boot/custodians/u-boot-dmTom Rini
binman fixes/improvements to FIT generator binman SPL fixes moveconfig support regex matches
2022-02-22scripts: dtc: libfdt: fdt_ro.c: always define fdt_check_fullPhilippe Reynes
On some configs (like stm32mp15_dhcom_basic_defconfig), if configs SPL_LOAD_FIT_FULL and SPL_FIT_FULL_CHECK are enabled. Then the compilatio fails with the following error: arm-linux-gnueabi-ld.bfd: boot/image-fit.o: in function `fit_check_format': <PATH>/uboot/u-boot-stm/boot/image-fit.c:1641: undefined reference to `fdt_check_full' scripts/Makefile.spl:509: recipe for target 'spl/u-boot-spl' failed This issue happens because the function fdt_check_full is only defined if "!defined(FDT_ASSUME_MASK) || FDT_ASSUME_MASK != 0xff". But this function may be called even if this condition are not verified. To avoid this issue, the function fdt_check_full is always defined. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-02-14scripts: setlocalversion: remove quotes around localversion from configNikita Maslov
After replacing of include/config/auto.conf sourcing with extraction of CONFIG_LOCALVERSION, resulting version string contains quotes around localversion part which are always present in auto.conf (even if localversion is empty). This patch fixes this script to remove quotes. Signed-off-by: Nikita Maslov <wkernelteam@gmail.com> Cc: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Cc: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-02-11Merge tag 'efi-2022-04-rc2-4' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request for efi-2022-04-rc2-4 Documentation: * mkeficapsule man-page UEFI changes: * add support for signing images to mkeficapsule * add support for user define capsule GUID * adjust unit tests for capsules * fix UEFI image signature validation in case of multiple signatures
2022-02-11test/py: Add test case for mkimage -o argumentJan Kiszka
Stress the '-o algo_name' argument of mkimage by expanding the vboot test. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Reviewed-by: Simon Glass <sjg@chromium.org> [trini: Update scripts/pylint.base]
2022-02-10common: drop CONFIG_SYS_RESET_ADDROvidiu Panait
There are no boards that define CONFIG_SYS_RESET_ADDR, so drop the remaining comments referencing it and also the config_whitelist.txt entry. Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com> Reviewed-by: Stefan Roese <sr@denx.de> Acked-by: thomas@wytron.com.tw
2022-02-10powerpc: mpc8xx: drop CONFIG_SYS_RESET_ADDRESSOvidiu Panait
There are no boards that define CONFIG_SYS_RESET_ADDRESS, so drop the associated mpc8xx code that checks for it. Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com> Reviewed-by: Stefan Roese <sr@denx.de> Acked-by: Christophe Leroy <christophe.leroy@csgroup.eu>
2022-02-10Merge tag 'dm-pull-8feb22-take3' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-dm patman snake-case conversion binman fit improvements ACPI fixes and making MCFG available to ARM [trini: Update scripts/pylint.base] Signed-off-by: Tom Rini <trini@konsulko.com>
2022-02-09patman: Update with new pylint scoresSimon Glass
Update the new baseline since various scores have improved. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-02-09dts: automatically build necessary .dtb filesRasmus Villemoes
When building for a custom board, it is quite common to maintain a private branch which include some defconfig and .dts files. But to hook up those .dts files requires modifying a file "belonging" to upstream U-Boot, the arch/*/dts/Makefile. Forward-porting that branch to a newer upstream then often results in a conflict which, while it is trivial to resolve by hand, makes it harder to have a CI do "try to build our board against latest upstream". The .config usually includes information on precisely what .dtb(s) are needed, so to avoid having to modify the Makefile, simply add the files in (SPL_)OF_LIST to dtb-y. A technicality is that (SPL_)OF_LIST is not always defined, so rework the Kconfig symbols so that (SPL_)OF_LIST is always defined (when (SPL_)OF_CONTROL), but only prompted for in the cases which used to be their "depends on". nios2 and microblaze already have something like this in their dts/Makefile, and the rationale in commit 41f59f68539 is similar to the above. So this simply generalizes existing practice. Followup patches could remove the logic in those two makefiles, just as there's potential for moving some common boilerplate from all the arch/*/dts/Makefile files to the new scripts/Makefile.dts. Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-02-09configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py and update scripts/pylint.base Signed-off-by: Tom Rini <trini@konsulko.com>
2022-02-09Convert CONFIG_SCSI_AHCI_PLAT et al to KconfigSimon Glass
This converts the following to Kconfig: CONFIG_SCSI_AHCI_PLAT CONFIG_SYS_SCSI_MAX_SCSI_ID CONFIG_SYS_SCSI_MAX_LUN CONFIG_SYS_SATA_MAX_DEVICE Drop CONFIG_SCSI for everything except the sandbox build. We only need one build for tests. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
2022-02-09scsi: Drop CONFIG_SYS_SCSI_MAX_DEVICESimon Glass
This is defined based on two other CONFIGs for all boards except sandbox and durian. For sandbox the value does not matter. For durian the value seems excessive. Drop the option completely, to simplify configuration and reduce the number of things we need to convert to Kconfig. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
2022-02-09Convert CONFIG_REMAKE_ELF to KconfigAlper Nebi Yasak
This converts the following to Kconfig: CONFIG_REMAKE_ELF Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
2022-02-09Drop CONFIG_SYS_PIO_MODESimon Glass
This option is not used in U-Boot. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
2022-02-09Convert CONFIG_SYS_IDE_MAXBUS et al to KconfigSimon Glass
This converts the following to Kconfig: CONFIG_SYS_IDE_MAXBUS CONFIG_SYS_IDE_MAXDEVICE CONFIG_SYS_ATA_BASE_ADDR CONFIG_SYS_ATA_STRIDE CONFIG_SYS_ATA_DATA_OFFSET CONFIG_SYS_ATA_REG_OFFSET CONFIG_SYS_ATA_ALT_OFFSET CONFIG_SYS_ATA_IDE0_OFFSET CONFIG_SYS_ATA_IDE1_OFFSET CONFIG_ATAPI CONFIG_IDE_RESET Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
2022-02-08kconfig: Add support for conditional valuesSimon Glass
At present if an optional Kconfig value needs to be used it must be bracketed by #ifdef. For example, with this Kconfig setup: config WIBBLE bool "Support wibbles, the world needs more wibbles" config WIBBLE_ADDR hex "Address of the wibble" depends on WIBBLE then the following code must be used: #ifdef CONFIG_WIBBLE static void handle_wibble(void) { int val = CONFIG_WIBBLE_ADDR; ... } #endif static void init_machine() { ... #ifdef CONFIG_WIBBLE handle_wibble(); #endif } Add a new IF_ENABLED_INT() to help with this. So now it is possible to write, without #ifdefs: static void handle_wibble(void) { int val = IF_ENABLED_INT(CONFIG_WIBBLE, CONFIG_WIBBLE_ADDR); ... } static void init_machine() { ... if (IS_ENABLED(CONFIG_WIBBLE)) handle_wibble(); } The value will be CONFIG_WIBBLE_ADDR if CONFIG_WIBBLE is defined and will produce a build error if not.. This allows us to reduce the use of #ifdef in the code, ensuring that the compiler still checks the code even if it is not ultimately used for a particular build. Add a CONFIG_IF_ENABLED_INT() version as well. If an attempt is made to use a value that does not exist (i.e. when the conditional is not enabled), an error about a non-existing function is generated, e.g.: common/bloblist.c:447: undefined reference to `invalid_use_of_IF_ENABLED_INT' Signed-off-by: Simon Glass <sjg@chromium.org>
2022-02-03scripts/checkpatch.pl: Resync with v5.16Simon Glass
This resyncs us with the version found in v5.16 of the Linux kernel with the following exceptions: - Keep our u-boot specific tests / code area. - Change the location of checkpatch.rst - Drop the "use strscpy" test as we don't have that, but do have strlcpy and want that used now. - Keep debug/printf in the list for $logFunctions This also syncs the spdxcheck.py tool and all the associated documentation. S Signed-off-by: Simon Glass <sjg@chromium.org>
2022-02-03scripts: Makefile: also clean subdir dtcPhilippe Reynes
Since commit 93b196532254 ("Makefile: Only build dtc if needed"), the sub directory scripts/dtc is never cleaned. Adds the directory dtc to subdir to always clean it. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-01-31pylint: Adjust how the output is producedSimon Glass
The current Makefile rule requires there to be a 'Module' line in the pylint output, like this: ************* Module binman.fip_util This line only appears if pylint has some comments about the module. We cannot rely on it for naming. Update the code to instead use the filename as the identifier for each score, so rather than: multiplexed_log 7.49 we output: test_multiplexed_log.py 7.20 It is still easy to see which file the score relates to. In fact the new naming is nicer since the full subdirectories are shown. The avoids the problem where a module name is not produced, and the output gets out of sync. Regenerate pylint.base so we can start from the current baseline. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-01-25introduce CONFIG_DEVICE_TREE_INCLUDESRasmus Villemoes
The build system already automatically looks for and includes an in-tree *-u-boot.dtsi when building the control .dtb. However, there are some things that are awkward to maintain in such an in-tree file, most notably the metadata associated to public keys used for verified boot. The only "official" API to get that metadata into the .dtb is via mkimage, as a side effect of building an actual signed image. But there are multiple problems with that. First of all, the final U-Boot (be it U-Boot proper or an SPL) image is built based on a binary image, the .dtb, and possibly some other binary artifacts. So modifying the .dtb after the build requires the meta-buildsystem (Yocto, buildroot, whatnot) to know about and repeat some of the steps that are already known to and handled by U-Boot's build system, resulting in needless duplication of code. It's also somewhat annoying and inconsistent to have a .dtb file in the build folder which is not generated by the command listed in the corresponding .cmd file (that of course applies to any generated file). So the contents of the /signature node really needs to be baked into the .dtb file when it is first created, which means providing the relevant data in the form of a .dtsi file. One could in theory put that data into the *-u-boot.dtsi file, but it's more convenient to be able to provide it externally: For example, when developing for a customer, it's common to use a set of dummy keys for development, while the consultants do not (and should not) have access to the actual keys used in production. For such a setup, it's easier if the keys used are chosen via the meta-buildsystem and the path(s) patched in during the configure step. And of course, nothing prevents anybody from having DEVICE_TREE_INCLUDES point at files maintained in git, or for that matter from including the public key metadata in the *-u-boot.dtsi directly and ignore this feature. There are other uses for this, e.g. in combination with ENV_IMPORT_FDT it can be used for providing the contents of the /config/environment node, so I don't want to tie this exclusively to use for verified boot. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Fix doc formatting error (make htmldocs) Signed-off-by: Simon Glass <sjg@chromium.org>
2022-01-25acpi: Allow include files within the board directorySimon Glass
Some .asl files include others using the iasl 'include' directive. This needs to be able to find the files referenced. For an out-of-tree build the source directory is not the current directory. Moreover, U-Boot preprocesses the input file and puts the result in the output directory. So iasl does not know where the real source file came from. Add a -I option to produce the correct behaviour. We could add an option to not preprocess the .asl source, but for now that seems unnecessary. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-01-24configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2022-01-24Makefile: Add a pylint checker to the buildSimon Glass
At present the Python code in U-Boot is somewhat inconsistent, with some files passing pylint quite cleanly and others not. Add a way to track progress on this clean-up, by checking that no module has got any worse as a result of changes. This can be used with 'make pylint'. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Re-generate pylint.base]
2022-01-21Convert CONFIG_AT91_EFLASH to KconfigPatrick Delaunay
This converts the following to Kconfig: CONFIG_AT91_EFLASH Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de> Acked-by: Eugen Hristev <eugen.hristev@microchip.com>
2022-01-21configs: Migrate CONFIG_SYS_MAX_FLASH_BANKS to KconfigPatrick Delaunay
Use moveconfig.py script to convert define CONFIG_SYS_MAX_FLASH_BANKS and CONFIG_SYS_MAX_FLASH_BANKS_DETECT to Kconfig and move these entries to defconfigs. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de> [trini: Re-switch to IS_ENABLED check in spi-nor-core.c, re-run migration] Signed-off-by: Tom Rini <trini@konsulko.com>
2022-01-21spl: Convert SYS_MMCSD_RAW_MODE_KERNEL_SECTOR to KconfigAlexandru Gagniuc
Falcon mode is very useful in improving boot speed. A question that Falcon mode asks is "Where do I look for the kernel". With MMC boot media, the correct answer is CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR. The scope of this patch is to move this to Kconfig. It is possible for a system to support Falcon mode from NOR but not MMC. In that case, mmc_load_image_raw_os() would not be used. To address this, conditionally compile mmc_load_image_raw_os() when SPL_FALCON_BOOT_MMCSD, instead of SPL_OS_BOOT. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> [trini: Move spl_start_uboot to its own guard in spl_mmc.c, rerun migration] Signed-off-by: Tom Rini <trini@konsulko.com>
2022-01-21Convert CONFIG_TIMESTAMP to KconfigSimon Glass
This converts the following to Kconfig: CONFIG_TIMESTAMP Signed-off-by: Simon Glass <sjg@chromium.org>
2022-01-21Convert CONFIG_UDP_CHECKSUM to KconfigSimon Glass
This converts the following to Kconfig: CONFIG_UDP_CHECKSUM Signed-off-by: Simon Glass <sjg@chromium.org>
2022-01-20Merge tag 'doc-2022-04-rc1' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request doc-2022-04-rc1 Replace @return by Return: in code comments.
2022-01-19doc: replace @return by Return:Heinrich Schuchardt
Sphinx expects Return: and not @return to indicate a return value. find . -name '*.c' -exec \ sed -i 's/^\(\s\)\*\(\s*\)@return\(\s\)/\1*\2Return:\3/' {} \; find . -name '*.h' -exec \ sed -i 's/^\(\s\)\*\(\s*\)@return\(\s\)/\1*\2Return:\3/' {} \; Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2022-01-19Merge tag 'xilinx-for-v2022.04-rc1' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-microblaze Xilinx changes for v2022.04-rc1 gpio: - Add modepin driver net: - Save random mac addresses to eth variable zynqmp gem: - Add support for mdio bus DT description - Add support for reset and SGMII phy configuration - Reduce timeout for MDIO accesses zynqmp clk: - Fix clock handling for gem and usb phy: - Add zynqmp phy/serdes driver serial: - Add one missing compatible string microblaze: - Symbol alignement - SPL fixups - Code cleanups zynqmp: - Various dt changes, DP pre-reloc, gem resets, gem clocks - Switch SOM to shared psu configuration - Move dcache handling to firmware driver - Workaround gmii2rgmii DT description issue - Enable broadcasts again - Change firmware enablement logic - Small adjustement in firmware driver versal: - Support new mmc@ DT nodes - Fix run time variable handling - Add missing I2C_PMC ID for power domain
2022-01-14checkpatch: report ERROR only on disabling of fdt and initrd relocationHou Zhiqiang
Let the check pass when patches have these patterns in their context. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>