aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2022-11-22Merge tag 'dm-pull-22nov22' of ↵WIP/22Nov2022Tom Rini28-1404/+1981
https://source.denx.de/u-boot/custodians/u-boot-dm buildman /binman improvements for handling missing blobs fix for long-standing image.h warning minor fixes
2022-11-22test: Disable part of the setexpr test for nowSimon Glass1-1/+5
This fails in CI for unknown reasons. Disable the last assert for now. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22test: cmd: fdt: Add fdt get value test caseMarek Vasut1-0/+53
Add test case for 'fdt get value' sub command. The test case can be triggered using: " ./u-boot -d u-boot.dtb -c 'ut fdt' " Acked-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Signed-off-by: Marek Vasut <marex@denx.de>
2022-11-22cmd: fdt: Fix iteration over elements above index 1 in fdt getMarek Vasut1-3/+6
Always increment both the iterator and pointer into the string property value by length of the current element + 1 (to cater for the string delimiter), otherwise the element extracted from the string property value would be extracted from an offset that is multiple of the length of the first element, instead of sum of element lengths until select index. This fixes 'fdt get value' operation for index above 1 (counting from index 0). Acked-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Fixes: 13982ced2cc ("cmd: fdt: Add support for reading stringlist property values") Signed-off-by: Marek Vasut <marex@denx.de>
2022-11-22sandbox: Move the capsule GUID declarations to board fileSughosh Ganu2-13/+13
The sandbox config file is to be removed. Move the GUID declarations needed for capsule update functionality to the board file where they are used. Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-11-22sandbox: check lseek return value in handle_ufi_commandHeinrich Schuchardt1-3/+7
Invoking lseek() may result in an error. Handle it. Addresses-Coverity-ID: 376212 ("Error handling issues (CHECKED_RETURN)") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2022-11-22binman: Add documentation for the command line argsSimon Glass1-1/+299
Add command-line documentation for binman. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22buildman: Add --allow-missing flag to allow missing blobsTom Rini9-8/+197
Add a new flag to buildman so that we will in turn pass BINMAN_ALLOW_MISSING=1 to 'make'. Make use of this flag in CI. Allow the settings file to control this. Cc: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22buildman: Reinstate removal of temp output dir in testsSimon Glass1-1/+1
This was dropped my mistake. Reinstate it. Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: d829f1217c6 ("bulidman: Add support for a simple build")
2022-11-22buildman: Ensure config_fname is initedSimon Glass1-0/+1
Init this variable at the top level since it is a global. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22global: Do not default to faking missing binaries for buildmanTom Rini1-2/+2
While it is possible and documented on how to re-run buildman to replace faked required binary files after the fact, this behavior ends up being more confusing than helpful in practice. Switch to requiring BINMAN_ALLOW_MISSING=1 to be passed on the 'make' line to enable this behavior. Cc: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22binman: Add a separate section about environment variablesSimon Glass1-0/+30
These are documented in various several sections. Add a new section that mentions them all in one place so it is easier to see what environment variables can be used to control U-Boot's use of binman. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2022-11-22buildman: Detect binman reporting missing blobsSimon Glass1-1/+5
Buildman should consider a build as a success (with warnings) if missing blobs have been dealt with by binman, even though buildman itself returns and error code overall. This is how other warnings are dealt with. We cannot easily access the 103 exit code, so detect the problem in the output. With this change, missing blobs result in an exit code of 101, although they still indicate failure. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22buildman: Drop mention of old architecturesSimon Glass2-19/+1
Support for some architectures has been removed since buildman was first written. Also all toolchains are now available at kernel.org so we don't need the links, except for arc where the kernel.org toolchain fails to build all boards. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22buildman: Update the default settings fileSimon Glass2-0/+5
The settings file omits a few lines which are useful for getting every board building. Add these and update the documentation tool. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22buildman: Update the arc toolchainSimon Glass1-1/+4
There is one on kernel.org but it does not build the hsdk_4xd board. Add a link to one which does. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22buildman: Drop mention of MAKEALLSimon Glass1-110/+0
This script was removed about 6 years ago so most people should be aware that it is not needed anymore. Drop mention of it. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22buildman: Convert documentation to rSTSimon Glass7-1353/+1413
Convert the buildman documentation to rST format and include it in the 'build' section. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Quentin Schulz <foss+uboot@0leil.net>
2022-11-22binman: Use an exit code when blobs are missingSimon Glass4-4/+51
At present binman returns success when told to handle missing/faked blobs or missing bintools. This is confusing since in fact the resulting image cannot work. Use exit code 103 to signal this problem, with a -W option to convert it to a warning. Rename the flag to --ignore-missing since it controls bintools also. Add documentation about exit codes while we are here. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22doc: Correct the path to the Makefile documentationSimon Glass1-1/+1
This is out-of-date now. Fix it. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22Makefile: Correct the binman ruleSimon Glass1-7/+4
This currently uses if_changed on a phony target. Use a real file as the target and add FORCE at the end, as required. Drop the 'inputs' phony since it is not needed. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22image: Correct strncpy() warning with image_set_name()Simon Glass1-1/+7
gcc 12 seems to warn on strncpy() as a matter of course. Rewrite the code a different way to do the same thing, to avoid the warning. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-11-22Revert "binman: btool: gzip: fix packer name so that binary can be found"Quentin Schulz1-1/+1
This reverts commit daa2da754afe1bac777f6cb0f05233e0de7b325d. This commit is not needed anymore since the btool_ prefix is automatically stripped by bintool. Cc: Quentin Schulz <foss+uboot@0leil.net> Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-11-22binman: bintool: remove btool_ prefix from btool namesQuentin Schulz2-2/+3
The binary is looked on the system by the suffix of the packer class. This means binman was looking for btool_gzip on the system and not gzip. Since a btool can have its btool_ prefix missing but its module and binary presence on the system appropriately found, there's no need to actually keep this prefix after listing all possible btools, so let's remove it. This fixes gzip btool by letting Bintool.find_bintool_class handle the missing prefix and still return the correct class which is then init with gzip name instead of btool_gzip. Additionally, there was an issue with the cached module global variable. The variable only stores the module and not the associated class name when calling find_bintool_class. This means that when caching the module on the first call to find_bintool_class, class_name would be set to Bintoolbtool_gzip but the module_name gzip only, adding the module in the gzip key in the module dictionary. When hitting the cache on next calls, the gzip key would be found, so its value (the module) is used. However the default class_name (Bintoolgzip) is used, failing the getattr call. Instead, let's enforce the same class name: Bintool<packer>, whatever the filename it is contained in. Cc: Quentin Schulz <foss+uboot@0leil.net> Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-11-22Merge tag 'xilinx-for-v2023.01-rc3' of ↵Tom Rini31-74/+468
https://source.denx.de/u-boot/custodians/u-boot-microblaze Xilinx changes for v2023.01-rc3 microblaze: - Enable 32 bit addressing mode for SPIs zynq: - Minor DT fixes (PL clock enabling) zynqmp: - Disable watchdog by default - Remove unused xlnx,eeprom chosen support - Add missing symlink for vck190 SC revB - Use mdio bus with ethernet-phy-id description versal: - Add mini qspi/ospi configuration versal-net: - Add soc driver - Fix Kconfig entry for SOC - Fix loading address location for MINI configuration - Disable LMB for mini configuration net: - Fix ethernet-phy-id usage in the code pinctrl: - Revert high impedance/output enable support timer: - Fix timer relocation for Microblaze - Fix timer wrap in 32bit Xilinx timer driver
2022-11-22arm64: versal: Add octal spi flash mini u-boot configurationAshok Reddy Soma4-0/+166
Add configuration file for mini u-boot configuration which runs on a smaller footprint from on chip memory(OCM). This configuration has required CONFIG's enabled to support octal spi flash and uses DCC terminal for console output. Add required dts for octal spi flash mini u-boot configuration. Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com> Link: https://lore.kernel.org/r/20221116141155.14788-4-ashok.reddy.soma@amd.com Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22spi: cadence-qspi: Fix compilation error in mini u-boot flash resetAshok Reddy Soma1-2/+2
When cadence_qspi_versal_flash_reset() function is called in mini u-boot where there is no firmware support, it is missing defines for macro's BOOT_MODE_POR_0 & BOOT_MODE_POR_1. Remove them and replace with already define macro's which have same values as these. Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com> Link: https://lore.kernel.org/r/20221116141155.14788-3-ashok.reddy.soma@amd.com Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22arm64: versal: Add qspi flash mini u-boot configurationAshok Reddy Soma4-0/+164
Add configuration file for mini u-boot configuration which runs on a smaller footprint from on chip memory(OCM). This configuration has required CONFIG's enabled to support qspi flash and uses DCC terminal for console output. Add required dts files for qspi mini configuration. Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com> Link: https://lore.kernel.org/r/20221116141155.14788-2-ashok.reddy.soma@amd.com Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22qspi: versal-net: Add condition for tapdelay registerAshok Reddy Soma1-1/+2
Add CONFIG_ARCH_VERSAL_NET to select tapdelay register for versal-net. Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com> Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/2500dd688214e2ec2d54ed3fabbfee0b1ca861a6.1668613229.git.michal.simek@amd.com
2022-11-22soc: xilinx: versal-net: Add soc_xilinx_versal_net driverMichal Simek6-0/+95
Add soc_xilinx_versal_net driver to identify the family & revision of versal-net SoC. Add Kconfig option CONFIG_SOC_XILINX_VERSAL_NET to enable/disable this driver. To enable this driver by default, add this config to xilinx_versal_net_virt_defconfig file. This driver will be probed using platdata U_BOOT_DEVICE structure which is specified in mach-versal-net/cpu.c. Signed-off-by: Michal Simek <michal.simek@amd.com> Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com> Link: https://lore.kernel.org/r/613d6bcffd9070f62cf348079ed16c120f8fc56f.1668612993.git.michal.simek@amd.com
2022-11-22xilinx: versal-net: Disable LMB for mini configurationMichal Simek1-0/+1
There is no reason to have LMB enabled on mini configuration because it is only consuming space that's why disable it. Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/47067c87b6b2e7600d3c2808e7d0aa6fe82aa1fe.1668612795.git.michal.simek@amd.com
2022-11-22arm64: zynqmp: Describe TI phy as ethernet-phy-id with reset on zcu106Michal Simek1-6/+13
zcu106 also connects ethernet phy reset via tca6416 chip as is done on other evaluation boards. That's why describe this connection to make sure that ethernet phy is reset before it's use. Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/21ccd672b799b5858021f6059098a1247c311fae.1668596358.git.michal.simek@amd.com
2022-11-22xilinx: versal-net: Fix SYS_LOAD_ADDR to point to OCMMichal Simek1-1/+1
Versal NET mini U-Boot configuration is used for memory testing that's why load address can't be really placed in memory which doesn't need to work that's why move it to start of OCM which is the same memory which U-Boot is running from. Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22xilinx: versal-net: Fix incorrect platform name in KconfigMichal Simek1-1/+1
Fix incorrect name used in entry description. Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22arm64: zynqmp: Create vck190 spl link for revBMichal Simek1-0/+1
vck190 system controller low level setup is the same for revB that's why also create symlink to revA. Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22net: phy: Fix ethernet-phy-id <dot> in the codeMichal Simek1-2/+2
Use dot instead of comma. The fix doesn't affect anything but it is good to be aligned with used pattern. The first is used only for string size calculation and the second change is in the comment. Fixes: db681d4929ca ("net: phy: Add new read ethernet phy id function") Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22ARM: zynq: DT: Enable all FCLKs by defaultChristian Kohn1-1/+1
The fclk-enable property is set to 0 which disables all FCLKs. Enable all FCLKs so they can be used as clock sources in the programmable logic. Signed-off-by: Christian Kohn <christian.kohn@xilinx.com> Acked-by: Soren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/b1308dc1f14f8eb24662019f7376c959e5e763b8.1665567031.git.michal.simek@amd.com
2022-11-22timer: xilinx-timer: use timer_conv_64() to fix timer wrap aroundOvidiu Panait1-1/+1
Current xilinx_timer_get_count() implementation does not take into account the periodic 32-bit wrap arounds, as it directly returns the 32-bit counter register value. The roll-overs cause problems in the upper timer layers, as generic timer code expects an incrementing 64-bit value from get_count() to work correctly. Add the missing 64-bit up-conversion to fix random hangs/delays in __udelay(). Fixes: a36d86720f ("microblaze: Convert axi timer to DM driver") Signed-off-by: Ovidiu Panait <ovpanait@gmail.com> Reviewed-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/20221012053656.1492457-3-ovpanait@gmail.com Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22timer-uclass: relocate ops pointers for CONFIG_NEEDS_MANUAL_RELOCOvidiu Panait1-0/+14
Relocate timer_ops pointers when CONFIG_NEEDS_MANUAL_RELOC is enabled. The (gd->flags & GD_FLG_RELOC) check was added to make sure the reloc_done logic works for drivers that use DM_FLAG_PRE_RELOC. Signed-off-by: Ovidiu Panait <ovpanait@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Link: https://lore.kernel.org/r/20221012053656.1492457-2-ovpanait@gmail.com Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22timer-uclass: add timer_get_ops() macroOvidiu Panait2-1/+3
Align timer uclass with the other subsystems and provide a timer_get_ops() convenience macro. Using this instead of the generic device_get_ops() also prevents -Wdiscarded-qualifiers warnings when used with non-const variables. Signed-off-by: Ovidiu Panait <ovpanait@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Link: https://lore.kernel.org/r/20221012053656.1492457-1-ovpanait@gmail.com Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22xilinx: common: Remove zynq_board_read_rom_ethaddr()Venkatesh Yadav Abbarapu4-47/+0
Removing the zynq_board_read_rom_ethaddr() function as xlnx,eeprom is not used anymore. As all board dts to use nvmem alias instead of xlnx,eeprom. Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com> Link: https://lore.kernel.org/r/20221017094818.17996-1-venkatesh.abbarapu@amd.com Signed-off-by: Michal Simek <michal.simek@amd.com>
2022-11-22Revert "pinctrl: zynqmp: Add support for output-enable and bias-high-impedance"Michal Simek1-9/+0
This reverts commit 123462e5e534d6e17b1b7d2006734bbe54b03e0a. On systems with older PMUFW using these pinctrl properties can cause system hang because there is missing feature autodetection. When it is implemented support for these two properties should go back. Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/c2900319ea80484f21692997f296269aee701c1f.1665659138.git.michal.simek@amd.com
2022-11-22arm64: zynqmp: Disable watchdog by default for virt platformMichal Simek1-2/+0
Disable watchdog based on request in past that not all Linux rootfs have proper utilities ready to service it. Enable it if your rootfs have proper watchdog handling. Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/62dfc08f32635abee42feab26aaa9efed52134c0.1665567328.git.michal.simek@amd.com
2022-11-22microblaze: Make extended addressing support defaultT Karthik Reddy1-0/+1
Axi qspi controller supports 32-bit & 24-bit addressing modes for micron, macronix & spansion flash parts. But for winbond flashes it only supports 24-bit addressing mode. Enable CONFIG_SPI_FLASH_BAR to use extended addressing mode to make 32-bit addressing mode work on all flashes. Signed-off-by: T Karthik Reddy <t.karthik.reddy@xilinx.com> Acked-by: Ashok Reddy Soma <ashok.reddy.soma@xilinx.com> Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/f3864966c8ddd766a1702ad61b0e008a1f57462f.1665565423.git.michal.simek@amd.com
2022-11-22Merge tag 'efi-2023-01-rc2-2' of ↵Tom Rini10-128/+653
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request for efi-2023-01-rc2-2 UEFI: * add UEFI Secure Boot Key enrollment interface to eficonfig command * fix buffer underflow in FatToStr() implementation
2022-11-22Merge https://source.denx.de/u-boot/custodians/u-boot-watchdogTom Rini3-11/+7
- watchdog: designware: make reset really optional (Quentin) - watchdog: Drop GD_FLG_WDT_READY (Stefan)
2022-11-22eficonfig: add "Show Signature Database" menu entryMasahisa Kojima1-0/+235
This commit adds the menu-driven interface to show the signature list content. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2022-11-22eficonfig: add UEFI Secure Boot Key enrollment interfaceMasahisa Kojima4-0/+275
This commit adds the menu-driven UEFI Secure Boot Key enrollment interface. User can enroll PK, KEK, db and dbx by selecting file. Only the signed EFI Signature List(s) with an authenticated header, typically '.auth' file, is accepted. To clear the PK, KEK, db and dbx, user needs to enroll the null key signed by PK or KEK. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2022-11-22eficonfig: use protocol interface for file selectionMasahisa Kojima1-6/+7
EFI_SIMPLE_FILE_SYSTEM_PROTOCOL is not always provided by U-Boot. Use protocol interface functions instead of U-Boot internal functions. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
2022-11-22eficonfig: expose eficonfig_create_device_path()Masahisa Kojima2-9/+13
Following commits are adding support for UEFI variable management via the eficonfig menu. Those functions needs to use eficonfig_create_device_path() to construct the full device path from device path of the volume and file path, so move it out of their static declarations. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>