summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-11-17crypto: aspeed: Add AST2600 HACE supportJohnny Huang
Hash and Crypto Engine (HACE) is designed to accelerate the throughput of hash data digest, and symmetric-key encryption. Signed-off-by: Johnny Huang <[email protected]> Signed-off-by: Chia-Wei Wang <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-11-17clk: ast2600: Add YCLK control for HACEJoel Stanley
Add YCLK enable for HACE, the HW hash engine of ASPEED AST2600 SoCs. Signed-off-by: Joel Stanley <[email protected]> Signed-off-by: Chia-Wei Wang <[email protected]>
2021-11-17aspeed: ast2600: Enlarge SRAM sizeChia-Wei Wang
The AST2600 SRAM has been extended to 88KB since A1 chip revision. This patch updates the SRAM size to offer more space for early stack/heap use. Signed-off-by: Chia-Wei Wang <[email protected]> Reviewed-by: Joel Stanley <[email protected]>
2021-11-17image: fit: Fix parameter name for hash algorithmChia-Wei Wang
Fix inconsistent function parameter name of the hash algorithm. Signed-off-by: Chia-Wei Wang <[email protected]> Fixes: 92055e138f2 ("image: Drop if/elseif hash selection in calculate_hash()") Reviewed-by: Joel Stanley <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-11-17mmc: mtk-sd: implement waiting for DAT0 line stateJulien Masson
With the recent changes on mmc driver, we saw that the boot is ~5 secs longer compared to v2021.07 on mediatek platforms. This regression is seen during mmc_init and caused by the following patch [1]. Indeed since we did not support poll dat0, we fulfilled the condition of [1] and a delay of 500 ms was added for every __mmc_switch call. By adding the support of wait_dat0(), we now don't need to mdelay during mmc_init anymore. [1]: https://patchwork.ozlabs.org/project/uboot/patch/[email protected]/ Signed-off-by: Julien Masson <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2021-11-17rk3399: Don't enable the debug UART if there is no driverSimon Glass
Some boards do not enable SPL_SERIAL so cannot use the debug UART. Add this condition to the code and drop use of the preprocessor while we are here. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Philipp Tomsich <[email protected]>
2021-11-17arm: qemu: Enable the debug UARTSimon Glass
Enable this to permit early debugging. Due to the way qmeu works, the input clock can be zero and things still work. Signed-off-by: Simon Glass <[email protected]>
2021-11-17arm: Init the debug UARTSimon Glass
At present we don't init the debug UART in the generic ARM code, but instead leave it to individual machines to handle. This is not the way it is supposed to work. Add the required init to the crt files. This ensures that the UART is available as early as possible and that the announcement appears when it should, if enabled. Signed-off-by: Simon Glass <[email protected]>
2021-11-17arm: Fix some inconsistent debug-UART CONFIG optionsSimon Glass
A few boards enable CONFIG_DEBUG_UART_BOARD_INIT but do not define the required init function. Fix this by disabling the debug UART. With snow the debug UART is enabled but the driver CONFIG is not. Fix this too. Signed-off-by: Simon Glass <[email protected]>
2021-11-17pci: Add standard PCIe ECAM macrosPali Rohár
Lot of PCIe controllers are using ECAM addressing. So add common ECAM macros into U-Boot's pci.h header file which can be suitable for most PCI controller drivers. Replace custom ECAM address macros in every PCI controller driver by new ECAM macros from U-Boot's pci.h header file. Similar macros are defined also in Linux kernel. There is a small difference between Linux and these new U-Boot macros. U-Boot's PCIE_ECAM_OFFSET() takes device and function numbers in separate arguments. Linux's PCIE_ECAM_OFFSET() takes device and function numbers encoded in one argument. The reason is that U-Boot's PCI_DEVFN() macro is different than Linux's PCI_SLOT() macro. So having device and function numbers in separate arguments makes code more straightforward. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-11-17pinctrl: Add Apple pinctrl driverMark Kettenis
This driver supports both pin muxing and GPIO support for the pin control logic found on Apple SoCs. Signed-off-by: Mark Kettenis <[email protected]>
2021-11-17aspeed: AST2600 Pinctrl DriverRyan Chen
This driver uses Pinctrl framework and is compatible with the Linux driver for AST2600. Signed-off-by: Ryan Chen <[email protected]> Signed-off-by: Dylan Hung <[email protected]>
2021-11-17drivers: tpm: atmel_twi: fix printf specifier compile warningMathew McBride
%d was being used as the specifier for size_t, leading to a compiler warning Signed-off-by: Mathew McBride <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2021-11-17drivers: tpm: atmel_twi: implement get_desc operationMathew McBride
Without get_desc, the tpm command will not provide a description of the device in 'tpm device' or 'tpm info'. Due to the characteristics of the Atmel TPM it isn't possible to determine certain attributes (e.g open/close status) without using the TPM stack (compare Infineon and ST TPM drivers), so just print out the chip model and udevice name as the identifier. Signed-off-by: Mathew McBride <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2021-11-17drivers: tpm: atmel_twi: do not use an offset byteMathew McBride
This driver was broken due to an empty offset byte being prepended at the start of every transmission. The hardware does not mimic an EEPROM device with registers so an offset byte is not required. Signed-off-by: Mathew McBride <[email protected]> Acked-by: Ilias Apalodimas <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2021-11-17drivers: tpm: atmel_twi: drop non-DM_I2C compatibilityMathew McBride
There are no users of this driver without DM_I2C Signed-off-by: Mathew McBride <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2021-11-17cmd: tpm-v1: fix load_key_by_sha1 compile errorsMathew McBride
This command is not compiled by default and has not been updated alongside changes to the tpmv1 API, such as passing the TPM udevice to the relevant functions. Signed-off-by: Mathew McBride <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2021-11-17cmd: tpm-v1: fix compile error in TPMv1 list resources commandMathew McBride
This command is not compiled by default and was not updated to pass the udevice to tpm_get_capability. Signed-off-by: Mathew McBride <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2021-11-16Merge branch '2021-11-16-env-rework' into nextTom Rini
To quote Simon: One barrier to completing the 7-year-long Kconfig migration is that the default environment is implemented using ad-hoc CONFIG options. At present U-Boot environment variables, and thus scripts, are defined by CONFIG_EXTRA_ENV_SETTINGS. It is not really feasible to move the environment to Kconfig as it is hundreds of lines of text in some cases. Even considering the current situation, it is painful to add large amounts of text to the config-header file and dealing with quoting and newlines is harder than it should be. It would be better if we could just type the script into a text file and have it included by U-Boot. This is already supported by the CONFIG_USE_DEFAULT_ENV_FILE feature. But that does not support use of CONFIG options or comments, so is best suited for use by other build systems wanting to define the U-Boot environment. Add a feature that brings in a .env file associated with the board config, if present. To use it, create a file board/<vendor>/<board>.env or use CONFIG_ENV_SOURCE_FILE to set a filename. The environment variables should be of the form "var=value". Values can extend to multiple lines. This series converts the existing environment documentation to rST and updates it to explain how to use this.
2021-11-16bootm: Tidy up use of autostart env varSimon Glass
This has different semantics in different places. Go with the bootm method and put it in a common function so that the behaviour is consistent in U-Boot. Update the docs. To be clear, this changes the way that 'bootelf' and standalone boot work. Before, if autostart was set to "fred" or "YES", for example, they would consider that a "yes". This may change behaviour for some boards, but the only in-tree boards which mention autostart use "no" to disable it, which will still work. Signed-off-by: Simon Glass <[email protected]> Suggested-by: Wolfgang Denk <[email protected]>
2021-11-16sandbox: Update the test MAC/IP addressesSimon Glass
These conflict with real-word addresses. Use locally administered MAC addresses and a suitable IPv4 address from 192.0.2.0/24 (TEST-NET-1). Signed-off-by: Simon Glass <[email protected]> Suggested-by: Alexander Dahl <[email protected]>
2021-11-16doc: Improve environment documentation furtherSimon Glass
Make various other updates suggested during review of the rST conversion. Signed-off-by: Simon Glass <[email protected]> Suggested-by: Heinrich Schuchardt <[email protected]>
2021-11-16doc: Improve environment documentationSimon Glass
Make various updates suggested during review of the rST conversion. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Marek Behún <[email protected]> Suggested-by: Wolfgang Denk <[email protected]>
2021-11-16doc: Mention CONFIG_DEFAULT_ENV_FILESimon Glass
Add mention of this option since it does a similar thing to the text environment. Signed-off-by: Simon Glass <[email protected]> Suggested-by: Rasmus Villemoes <[email protected]> Reviewed-by: Marek Behún <[email protected]>
2021-11-16sandbox: Use a text-based environmentSimon Glass
Use a text file for the environment instead of the #define settings. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Marek Behún <[email protected]>
2021-11-16env: Allow U-Boot scripts to be placed in a .env fileSimon Glass
At present U-Boot environment variables, and thus scripts, are defined by CONFIG_EXTRA_ENV_SETTINGS. It is painful to add large amounts of text to this file and dealing with quoting and newlines is harder than it should be. It would be better if we could just type the script into a text file and have it included by U-Boot. Add a feature that brings in a .env file associated with the board config, if present. To use it, create a file in a board/<vendor> directory, typically called <board>.env and controlled by the CONFIG_ENV_SOURCE_FILE option. The environment variables should be of the form "var=value". Values can extend to multiple lines. See the README under 'Environment Variables:' for more information and an example. In many cases environment variables need access to the U-Boot CONFIG variables to select different options. Enable this so that the environment scripts can be as useful as the ones currently in the board config files. This uses the C preprocessor, means that comments can be included in the environment using /* ... */ Also support += to allow variables to be appended to. This is needed when using the preprocessor. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Marek Behún <[email protected]> Tested-by: Marek Behún <[email protected]>
2021-11-16doc: Move environment documentation to rSTSimon Glass
Move this from the README to rST format. Drop i2cfast since it is obviously obsolete and breaks the formatting. Other changes and improvements are in a following patch. Signed-off-by: Simon Glass <[email protected]> Acked-by: Marek Behún <[email protected]>
2021-11-16sandbox: Drop distro_bootSimon Glass
This is a complicated set of #defines and it is painful to convert to a text file. We can (once pending patches are applied) provide the same functionality with bootmethod. Drop this for sandbox to allow conversion to a text-file environment. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Marek Behún <[email protected]>
2021-11-16Merge branch '2021-11-15-assorted-fixes'Tom Rini
- Rename "tqc" to "tq" and related updates - Assorted minor ARM updates, build updates and documentation updates
2021-11-16Merge tag 'xilinx-for-v2022.01-rc3' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-microblaze Xilinx changes for v2022.01-rc3 sdhci: - Fix emmc mini case with missing firmware interface zynqmp: - Restore JTAG interface if required - Allow overriding board name - Add support for DLC21 - Fix one fallthrought statement description - Use config macro instead of name duplication - Save multiboot to variable firmware: - Handle ipi_req errors better - Use local buffer in case user doesn't need it instead of NULL/0 location spi: - gqsi: Fix write issue at low frequencies net: - gem: Disable broadcasts
2021-11-15image: Explicitly declare do_bdinfo()Andy Shevchenko
Compiler is not happy: common/image-board.c: In function ‘boot_get_kbd’: common/image-board.c:902:17: warning: implicit declaration of function ‘do_bdinfo’ [-Wimplicit-function-declaration] 902 | do_bdinfo(NULL, 0, 0, NULL); | ^~~~~~~~~ Move the forward declaration to a header. Signed-off-by: Andy Shevchenko <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-11-15usb: doc: Fix spelling issues in README.usbAndy Shevchenko
Fix spelling issues in README.usb. Signed-off-by: Andy Shevchenko <[email protected]>
2021-11-15arm: Fix bad memcpy.S str8w macro argument countPierre-Clément Tosi
Remove the extra (empty) argument passed to str8w, causing the following error: <instantiation>:40:47: error: too many positional arguments str8w r0, r3, r4, r5, r6, r7, r8, r9, ip, , abort=19f ^ u-boot/arch/arm/lib/memcpy.S:240:5: note: while in macro instantiation 17: forward_copy_shift pull=16 push=16 ^ Note: no functional change intended. Fixes: d8834a1323af ("arm: Use optimized memcpy and memset from linux") Signed-off-by: Pierre-Clément Tosi <[email protected]>
2021-11-15configs: synquacer: Fix dfu_alt_info to use nor1Masami Hiramatsu
Fix dfu_alt_info to use nor1 instead of the device name. This reverts a part of commit 59bd18d4c4d7 ("configs: synquacer: Remove mtdparts settings and update DFU setting") because the commit a4f2d8341455 ("mtd: spi: nor: force mtd name to "nor%d"") changed the mtd device naming scheme to nor%d. Signed-off-by: Masami Hiramatsu <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2021-11-15makefile: add missing semicolonsAngelo Dureghello
On some distributions, as Debian GNU 11, this targets fails with errors. Signed-off-by: Angelo Dureghello <[email protected]>
2021-11-15board: tq: fix spelling of "TQ-Systems"Matthias Schiffer
"TQ-Systems" is written with a dash. Signed-off-by: Matthias Schiffer <[email protected]>
2021-11-15board: rename "tqc" vendor to "tq"Matthias Schiffer
The subdivision name "TQ Components" hasn't been in use for a long time. Rename the vendor directory to "tq", which also matches our Device Tree vendor prefix. Signed-off-by: Matthias Schiffer <[email protected]>
2021-11-15arm64: relocate-rela: Add support for ld.lldAlistair Delva
Cap end of relocations by the binary size. Linkers like to insert some auxiliary sections between .rela.dyn and .bss_start. These sections don't make their way to the final binary, but reloc_rela still tries to relocate them, resulting in attempted read past the end of file. When linking U-Boot with ld.lld, the STATIC_RELA feature (enabled by default on arm64) breaks the build. After this patch, U-Boot can be linked successfully with and without CONFIG_STATIC_RELA. Originally-from: Elena Petrova <[email protected]> Signed-off-by: Alistair Delva <[email protected]> Cc: David Brazdil <[email protected]> Cc: Scott Wood <[email protected]> Cc: Tom Rini <[email protected]>
2021-11-15Prepare v2022.01-rc2v2022.01-rc2Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2021-11-15usb: Make USB_MUSB_PIO_ONLY selected by USB_MUSB_SUNXISamuel Dionne-Riel
This ensures the USB_MUSB_PIO_ONLY config is set to an apppropriate value from the changes enabling USB_MUSB_GADGET does. Namely, USB_MUSB_PIO_ONLY default to =y on USB_MUSB_SUNXI being y. Signed-off-by: Samuel Dionne-Riel <[email protected]>
2021-11-15xilinx: zynqmp: fix ZYNQMP_RESTORE_JTAG checkRicardo Salveti
Config check should be done without the SPL_ prefix. Signed-off-by: Ricardo Salveti <[email protected]> Reviewed-by: Oleksandr Suvorov <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2021-11-14Dockerfile, CI: Update to latest "focal" tagTom Rini
Signed-off-by: Tom Rini <[email protected]>
2021-11-14Dockerfile: build swtpmHeinrich Schuchardt
For testing the TPM drivers and the EFI_TCG2_PROTOCOL we need the tool swtpm. Once we move to Ubuntu Impish we can take libtpms from package libtpms-dev. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-11-13Merge tag 'dm-pull-13nov21' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-dm env tidy-ups test fixes binman fixes and ELF enhancements
2021-11-13Merge tag 'efi-2022-01-rc2-2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request for efi-2022-01-rc2-2 UEFI: * fix measurement of BootOrder variable for TCG2 protocol TPM: * TIS mmio driver. This driver supports QEMU's emulated TPM.
2021-11-13binman: Fix replace subcommand help and commentsJan Kiszka
Fix some copy&paste artifacts. Signed-off-by: Jan Kiszka <[email protected]>
2021-11-13bootstage: Differentiate boot progress kconfig entriesJan Kiszka
Both U-Boot proper and SPL entries were using the same description. Fixes: b55881dd ("bootstage: Add SPL support") Signed-off-by: Jan Kiszka <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-11-13sandbox: fix sandbox_wdt_expire_now()Heinrich Schuchardt
With CONFIG_SYSRESET_WATCHDOG=y the sandbox can use a watchdog based system reset. To make this work calling sandbox_wdt_expire_now() must lead to a reset. With this change we can test the development suggested in [PATCH 0/4] Improved sysreset/watchdog uclass integration https://lists.denx.de/pipermail/u-boot/2021-August/458656.html Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-11-13test/dm: fix watchdog testHeinrich Schuchardt
For successful execution of the watchdog test we need both the GPIO as well as the SANDBOX watchdog. Avoid a build failure for CONFIG_WDT_GPIO=n. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-11-13Makefile: Correct TPL rule for OF_REALSimon Glass
Correct an error in the tpl-dtb parameter to binman. At present the TPL rule follows SPL but this is not correct, if TPL uses of-platdata, for example. Fixes: f99cbe4e867 ("fdt: Update Makefile rules with the new OF_REAL Kconfig") Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>