summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2020-12-03efi_loader: capsule: add memory range capsule definitionsAKASHI Takahiro
Memory range capsule gives us a way to notify that some memory regions should be left untouched across the next reset. See UEFI specification, section 8.5.3. Since how we should handle this kind of capsule is totally up to the system, no implementation will be added in this commit. Signed-off-by: AKASHI Takahiro <[email protected]>
2020-12-03efi_loader: capsule: add capsule_on_disk supportAKASHI Takahiro
Capsule data can be loaded into the system either via UpdateCapsule runtime service or files on a file system (of boot device). The latter case is called "capsules on disk", and actual updates will take place at the next boot time. In this commit, we will support capsule on disk mechanism. Please note that U-Boot itself has no notion of "boot device" and all the capsule files to be executed will be detected only if they are located in a specific directory, \EFI\UpdateCapsule, on a device that is identified as a boot device by "BootXXXX" variables. Signed-off-by: AKASHI Takahiro <[email protected]>
2020-12-03efi_loader: define UpdateCapsule apiAKASHI Takahiro
In this commit, skeleton functions for capsule-related API's are added under CONFIG_EFI_UPDATE_CAPSULE configuration. Detailed implementation for a specific capsule type will be added in the succeeding patches. Signed-off-by: AKASHI Takahiro <[email protected]>
2020-12-03efi_loader: Introduce eventlog support for TCG2_PROTOCOLIlias Apalodimas
In the previous patches we only introduced a minimal subset of the EFI_TCG2_PROTOCOL protocol implementing GetCapability(). So let's continue adding features to it, introducing the GetEventLog() and HashLogExtendEvent() functions. In order to do that we first need to construct the eventlog in memory, specifically in EFI_BOOT_SERVICES_DATA memory and a configuration table from EFI_ACPI_MEMORY_NVS. U-Boot won't currently add any events to the log or measure any components, but will expose the necessary EFI APIs for applications to do so. Signed-off-by: Ilias Apalodimas <[email protected]>
2020-12-03tpm: Add tpm2 headers for TCG2 eventlog supportIlias Apalodimas
A following patch introduces support for the EFI_TCG2_PROTOCOL eventlog management. Introduce the necessary tpm related headers Signed-off-by: Ilias Apalodimas <[email protected]>
2020-12-03tpm: use more than sha256 on pcr_extendIlias Apalodimas
The current tpm2_pcr_extend is hardcoded using SHA256. Let's make the actual command to the TPM2 configurable so we can support a wider range of algorithms and keep the current command line as-is i.e limited to SHA256 only Signed-off-by: Ilias Apalodimas <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-12-02km/common: remove CONFIG_MTD_CONCATHolger Brunck
This was used for a board which is not supproted anymore and can therefore be dropped. CC: Stefan Roese <[email protected]> Signed-off-by: Holger Brunck <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2020-12-02remove obsolete option CONFIG_JFFS2_CMDLINEHolger Brunck
This option is obsolete since 2009 and can be removed globally. CC: Stefan Roese <[email protected]> Signed-off-by: Holger Brunck <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2020-12-02log: typos in include/log.hHeinrich Schuchardt
Correct several typos. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-12-02global_data: Fix comment for dm_driver_rtSimon Glass
This comment is in the wrong format, so reports an error with 'make htmldocs'. Fix it. Fixes: a294ead8d25 ("dm: Use an allocated array for run-time device info") Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2020-12-02log: Fix comment for LOGC_BOOTSimon Glass
This comment is in the wrong format, so reports an error with 'make htmldocs'. Fix it. Fixes: b73d61a5565 ("x86: zimage: Add a little more logging") Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2020-12-02linux/compat.h: Remove debug() from spin_lock_irqsave()Andy Shevchenko
It seems nobody tested the debug() option in spin_lock_irqsave(). Currently, when #define DEBUG, it spoils the compiler with In file included from drivers/usb/dwc3/gadget.c:18: drivers/usb/dwc3/gadget.c: In function ‘dwc3_gadget_set_selfpowered’: include/log.h:235:4: warning: ‘flags’ is used uninitialized in this function [-Wuninitialized] 235 | printf(pr_fmt(fmt), ##args); \ | ^~~~~~ drivers/usb/dwc3/gadget.c:1347:17: note: ‘flags’ was declared here 1347 | unsigned long flags; | ^~~~~ and so on... Drop useless debug() call to make compiler happy. Fixes: 0c06db598367 ("lib, linux: move linux specific defines to linux/compat.h") Cc: Heiko Schocher <[email protected]> Cc: Tom Rini <[email protected]> Signed-off-by: Andy Shevchenko <[email protected]> Reviewed-by: Oleksandr Andrushchenko <[email protected]> Reviewed-by: Heiko Schocher <[email protected]>
2020-12-01km/arm: coding style clean upHolger Brunck
Address most of the checkpatch issues we found in km_arm and common km code. CC: Stefan Roese <[email protected]> CC: Valentin Longchamp <[email protected]> Signed-off-by: Holger Brunck <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2020-12-01hush: Remove default CONFIG_SYS_PROMPT_HUSH_PS2 setting from board filesPatrick Delaunay
There is no reason to define default option for this macro which is already done in common/cli_hush.c. 87 #ifndef CONFIG_SYS_PROMPT_HUSH_PS2 88 #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 89 #endif Signed-off-by: Patrick Delaunay <[email protected]> Acked-by: Oleksandr Andrushchenko <[email protected]>
2020-12-01setexpr: Add some tests for buffer overflow and backrefSimon Glass
Add tests to check for buffer overflow using simple replacement as well as back references. At present these don't fully pass. Signed-off-by: Simon Glass <[email protected]>
2020-12-01command: Add constants for cmd_get_data_size string / errorSimon Glass
At present these values are open-coded in a few places. Add constants so the meaning is clear. Also add a comment to cmd_get_data_size() Signed-off-by: Simon Glass <[email protected]>
2020-12-01test: Add some tests for setexprSimon Glass
This command currently has no tests. Add some for basic assignment and the integer operations. Note that the default size for setexpr is ulong, which varies depending on the build machine. So for sandbox on a 64-bit host, this means that the default size is 64 bits. Signed-off-by: Simon Glass <[email protected]>
2020-11-29Merge tag 'mmc-2020-11-29' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-mmc - mmc minor update for better debug and error check - fsl_esdhc sysctl set and make sure delay check for HS400
2020-11-29lib/efi_loader: fix ABI in efi_mm_communicate_headerEtienne Carriere
Pack struct efi_mm_communicate_header as done in EDK2 as seen in release 201808 [1]. If not packed sizeof() for the structure adds 4 additional bytes on 32bit targets which breaks the ABI. Link: [1] https://github.com/tianocore/edk2/blob/edk2-stable201808/MdePkg/Include/Protocol/MmCommunication.h#L21 Fixes: 23a397d2e2fb ("efi_loader: Add headers for EDK2 StandAloneMM communication") Signed-off-by: Etienne Carriere <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2020-11-28mmc: fsl_esdhc: make sure delay chain locked for HS400Yangbo Lu
For eMMC HS400 mode, the DLL reset is a required step for mmc rescan. This step has not been documented in reference manual, but the RM will be fixed sooner or later. In previous commit to support eMMC HS400, db8f936 mmc: fsl_esdhc: support eMMC HS400 mode the steps to configure DLL could be found in commit message, 13. Set DLLCFG0[DLL_ENABLE] and DLLCFG0[DLL_FREQ_SEL]. 14. Wait for delay chain to lock. these would be fixed as, 13. Set DLLCFG0[DLL_ENABLE] and DLLCFG0[DLL_FREQ_SEL]. 13.1 Write DLLCFG0[DLL_RESET] to 1 and wait for 1us, then write DLLCFG0[DLL_RESET] 14. Wait for delay chain to lock. This patch is to add the step of DLL reset, and make sure delay chain locked for HS400. Fixes: db8f93672b42 ("mmc: fsl_esdhc: support eMMC HS400 mode") Signed-off-by: Yangbo Lu <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2020-11-25reset: stm32: Add support of MCU HOLD BOOTPatrick Delaunay
Handle the register RCC_MP_GCR without SET/CLR registers but with a direct access to bit BOOT_MCU: - deassert => set the bit: The MCU will not be in HOLD_BOOT - assert => clear the bit: The MCU will be set in HOLD_BOOT With this patch the RCC driver handles the MCU_HOLD_BOOT_R value added in binding stm32mp1-resets.h Cc: Fabien DESSENNE <[email protected]> Cc: Arnaud POULIQUEN <[email protected]> Signed-off-by: Patrick Delaunay <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2020-11-22usb: dwc2: add "u-boot,force-vbus-detection" for stm32Patrick Delaunay
On some board, the ID pin is not connected so the B session must be overridden with "u-boot,force_b_session_valid" but the VBus sensing must continue to be handle. To managed it, this patch adds a new DT field "u-boot,force-vbus-detection" to use with "u-boot,force_b_session_valid" Signed-off-by: Patrick Delaunay <[email protected]>
2020-11-21Merge tag 'efi-2021-01-rc3-2' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-efi Pull request for UEFI sub-system for efi-2021-01-rc3 (2) The parameter check for UEFI service GetNextVariableName() is corrected. The dependencies of CONFIG_DFU_TFTP are simplified. The set of supported hash algorithms reported by the EFI_TCG2_PROTOCOL is corrected.
2020-11-21efi_loader: tcg2 protocol updatesIlias Apalodimas
On pull reuqest https://lists.denx.de/pipermail/u-boot/2020-November/432735.html V4 of the patchset was sent instead of the v5. This is the v4->v5 missing diff Signed-off-by: Ilias Apalodimas <[email protected]>
2020-11-20microblaze: Detect NOR flash based on DTMichal Simek
Remove fixed configuration and detect flash based on DT. Also increase amount of flash sectors to 2048 because on kc705 flash has 1027 sectors. Bank # 1: CFI conformant flash (16 x 16) Size: 128 MB in 1027 Sectors Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x8962 Erase timeout: 4096 ms, write timeout: 2 ms Buffer write timeout: 5 ms, buffer size: 1024 bytes Signed-off-by: Michal Simek <[email protected]>
2020-11-20microblaze: Unify of setting for SPL_NOR/XIP supportMichal Simek
XIP is not enabled in SPL. SPL_NOR is enabled but any macro setting with using SYS_FLASH_BASE are wrong because it is not aligned with DM. That's why change these macro and align them with TEXT_BASE macro. Information should be find at run time based on DT but implementation is not done yet. Signed-off-by: Michal Simek <[email protected]>
2020-11-20microblaze: Remove CONFIG_SYS_FDT_SIZEMichal Simek
CONFIG_SYS_FDT_SIZE is not use anywhere that's why remove it. Signed-off-by: Michal Simek <[email protected]>
2020-11-20microblaze: Get rid of xparameters.hMichal Simek
There is no need to use this file anymore. Include it in main config file and simplify logic based on it. Signed-off-by: Michal Simek <[email protected]>
2020-11-20microblaze: Simplify cache handlingMichal Simek
Enable caches by default. For now just simplify config file but it should be read from DT or PVRs. Signed-off-by: Michal Simek <[email protected]>
2020-11-20microblaze: Clean config file from ifdef messMichal Simek
A lot of configs has been moved to Kconfig and it ends up in ifdef mess with no bodies. That's why remove all of them. Signed-off-by: Michal Simek <[email protected]>
2020-11-19fs/squashfs: implement exists() functionRichard Genoud
This permits to find a file and use the distro_bootcmd Reviewed-by: Joao Marcos Costa <[email protected]> Signed-off-by: Richard Genoud <[email protected]>
2020-11-19km/ppc: use Kconfig for MEMTEST configurationHolger Brunck
Also change back SYS_MEMTEST_END to 0x00f00000. 0xe00000 was wrong and introduced due to the global Kconfig migration of this option in u-boot. CC: Heiko Schocher <[email protected]> CC: Tom Rini <[email protected]> Signed-off-by: Holger Brunck <[email protected]>
2020-11-19km: replace hardcoded address for imported environmentMatteo Ghidoni
Instead of using an hard coded address, make use of an already defined address for importing the environment for ramfs and nfs boot. This allows boards having different mapping to use the same code. CC: Heiko Schocher <[email protected]> CC: Tom Rini <[email protected]> Signed-off-by: Matteo Ghidoni <[email protected]> Signed-off-by: Holger Brunck <[email protected]>
2020-11-17sunxi: DT: A64: update device tree filesSamuel Holland
Import updated device trees from Linux tag v5.9. This picks up new hardware (PinePhone, PineTab); and it drops the U-Boot specific DTSI files for the Pinebook and the Teres-I, since the ANX6345 bridge is now supported upstream. A couple of headers needed updates for recently-added hardware support. Acked-by: Maxime Ripard <[email protected]> Signed-off-by: Samuel Holland <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2020-11-16Merge tag 'ti-v2021.01-rc3' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-ti - Fix Nokia RX-51 boot issues - Fix CONFIG_LOGLEVEL on K3 devices - Add phyBOARD REGOR support
2020-11-15Nokia RX-51: Remove old comments from configs/nokia_rx51.h filePali Rohár
These comments are relict for old, now removed config options. So remove these obsoleted comments too. Signed-off-by: Pali Rohár <[email protected]>
2020-11-15Nokia RX-51: Convert to CONFIG_DM_I2CPali Rohár
Use twl4030_i2c_read(), i2c_get_chip_for_busnum() and remove CONFIG_SYS_I2C. Signed-off-by: Pali Rohár <[email protected]>
2020-11-15power: twl4030: Add twl4030_i2c_read() functionPali Rohár
Function twl4030_i2c_read() is like twl4030_i2c_read_u8() but instead of single value it rather returns array of values. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2020-11-14efi_loader: Add basic EFI_TCG2_PROTOCOL supportIlias Apalodimas
Since U-boot EFI implementation is getting richer it makes sense to add support for EFI_TCG2_PROTOCOL taking advantage of any hardware TPM available on the device. This is the initial implementation of the protocol which only adds support for GetCapability(). It's limited in the newer and safer TPMv2 devices. Signed-off-by: Ilias Apalodimas <[email protected]> Acked-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2020-11-14tpm: Add some headers from the specIlias Apalodimas
A following patch introduces EFI_TCG2_PROTOCOL. Add the required TPMv2 headers to support it. Signed-off-by: Ilias Apalodimas <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-11-14efi_selftest: keep devices in ExitBootServices()Heinrich Schuchardt
When calling ExitBootServices during out unit tests we should not detach devices as we need console output for runtime tests. Fixes: 529441ca89b1 ("efi_loader: Disable devices before handing over control") Signed-off-by: Heinrich Schuchardt <[email protected]>
2020-11-06Merge tag 'dm-pull5nov20' of git://git.denx.de/u-boot-dmTom Rini
patman status subcommand to collect tags from Patchwork patman showing email replies from Patchwork sandbox poweroff command minor fixes in binman, tests
2020-11-06Merge tag 'u-boot-amlogic-20201105' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-amlogic - meson64_android: don't show logo on ROM USB boot - doc: update support matrix and fix vim3/l build instructions - meson64: relocate config_distro_bootcmmd header
2020-11-06Merge https://gitlab.denx.de/u-boot/custodians/u-boot-x86Tom Rini
- Add a new SMBIOS parser and enable it when booting from coreboot - Fix up various driver names to avoid dtoc warnings - Fully enable ACPI support on Google Chromebook Coral - Add a way to set SMBIOS properties using the devicetree - Update existing boards to use devicetree for SMBIOS using a new default sysinfo driver
2020-11-06x86: Pass an ofnode into each SMBIOS functionSimon Glass
As a first step to obtaining SMBIOS information from the devicetree, add an ofnode parameter to the writing functions. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2020-11-06board: Rename uclass to sysinfoSimon Glass
This uclass is intended to provide a way to obtain information about a U-Boot board. But the concept of a U-Boot 'board' is the whole system, not just one circuit board, meaning that 'board' is something of a misnomer for this uclass. In addition, the name 'board' is a bit overused in U-Boot and we want to use the same uclass to provide SMBIOS information. The obvious name is 'system' but that is so vague as to be meaningless. Use 'sysinfo' instead, since this uclass is aimed at providing information on the system. Rename everything accordingly. Note: Due to the patch delta caused by the symbol renames, this patch shows some renamed files as being deleted in one place and created in another. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2020-11-06x86: zimage: Add a little more loggingSimon Glass
Add logging for each part of the boot process, using a new Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]> Reviewed-by: Igor Opaniuk <[email protected]>
2020-11-06x86: Boot coral into Chrome OS by defaultSimon Glass
Add a script to boot Chrome OS from the internal MMC. This involved adding a few commands and options. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2020-11-06acpi: Don't reset the tables with every new generationSimon Glass
At present if SSDT and DSDT code is created, only the latter is retained for examination by the 'acpi items' command. Fix this by only resetting the list when explicitly requested. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2020-11-06x86: Allow putting some tables in the bloblistSimon Glass
At present all tables are placed starting at address f0000 in memory, and can be up to 64KB in size. If the tables are very large, this may not provide enough space. Also if the tables point to other tables (such as console log or a ramoops area) then we must allocate other memory anyway. The bloblist is a nice place to put these tables since it is contiguous, which makes it easy to reserve this memory for linux using the 820 tables. Add an option to put some of the tables in the bloblist. For SMBIOS and ACPI, create suitable pointers from the f0000 region to the new location of the tables. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]> [bmeng: squashed in http://patchwork.ozlabs.org/project/uboot/patch/ 20201105062407.1.I8091ad931cbbb5e3b6f6ababdf3f8d5db0d17bb9@changeid/] Signed-off-by: Bin Meng <[email protected]>