summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-07-23binman: Fix up the _DoTestFile() function -u argumentSimon Glass
This should be -u, not -up, since we don't need to preserve the output directory in this case. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Support ELF files for TPLSimon Glass
We currenty support using the ELF file in U-Boot proper and SPL, but not TPL. Add this as it is useful both with sandbox and for CBFS to allow adding TPL as a 'stage'. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Correct comment in u_boot_spl_elfSimon Glass
This comment mentions the wrong default filename. Fix it. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Use tools compression function for blob handlingSimon Glass
Avoid duplicate code here by using the new compression function in the tools module. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Drop unnecessary debug handlingSimon Glass
The -D option enables debug mode, but we only need to add -D to the command line once. Drop the duplicate code. Also drop the comment about enabling debugging since this can be done with -D. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Use the tools.Decompress methodSimon Glass
Update the compression test to use the tools module to decompress the output data. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23patman: Add functions to compress and decompress dataSimon Glass
Add utility functions to compress and decompress using lz4 and lzma algorithms. In the latter case these use the legacy lzma support favoured by coreboot's CBFS. No tests are provided as these functions will be tested by the CBFS tests in a separate patch. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Allow text directly in the nodeSimon Glass
At present text entries use an indirect method to specify the text to use, with a label pointing to the text itself. Allow the text to be directly written into the node. This is more convenient in cases where the text is constant. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Update entry.SetOffsetSize to be optionalSimon Glass
At present this function always sets both the offset and the size of entries. But in some cases we want to set only one or the other, for example with the forthcoming ifwi entry, where we only set the offset. Update the function to handle this. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Don't assume there is an ME regionSimon Glass
At present having a descriptor means that there is an ME (Intel Management Engine) entry as well. The descriptor provides the ME location and assumes that it is present. For some SoCs this is not true. Before providing the location of a potentially non-existent entry, check if it is present. Update the comment in the ME entry also. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Assume Intel descriptor is at the start of the imageSimon Glass
At present binman requires that the Intel descriptor has an explicit offset. Generally this is 0 since the descriptor is at the start of the image. Add a default to handle this, so users don't need to specify the offset. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Ensure that coverage has access to site packagesSimon Glass
Code coverage tests fail on binman due to dist-packages being dropped from the python path on Ubuntu 16.04. Add them in so that we can find the elffile module, which is required by binman. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Add a function to decode an ELF fileSimon Glass
Add a function which decodes an ELF file, working out where in memory each part of the data should be written. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Add a function to create a sample ELF fileSimon Glass
It is useful to create an ELF file for testing purposes, with just the right attributes used by the test. Add a function to handle this, along with a test that it works correctly. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Detect skipped testsSimon Glass
If tests are skipped we should ideally exit with an error, since there may be a missing dependency. However at present this is not desirable since it breaks travis tests. For now, just report the skips. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Use a better error for missing Intel descriptorSimon Glass
FD is a bit confusing so write this out in full. Also avoid splitting the string so that people can grep for the error message more easily. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Tidy up help for --indirSimon Glass
The current help is confusing. Adjust it to indicate what the flag actually does. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Add missing comments toentrySimon Glass
At present GetOffsets() lacks a function comment. Add one. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Add missing comments to bsectionSimon Glass
Some functions lack comments in this file. Add comments to cover this functionality. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Add a --toolpath option to set the tool search pathSimon Glass
Sometimes tools used by binman may not be in the normal PATH search path, such as when the tool is built by the U-Boot build itself (e.g. mkimage). Provide a way to specify an additional search path for tools. The flag can be used multiple times. Update the help to describe this option. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23patman: Add a way to set the search path for toolsSimon Glass
Sometimes tools can be located by looking in other locations. Add a way to direct the search. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Add coverage tools info for Python 3Simon Glass
Test coverage with Python 3 requires a new package. Add details about this. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Correct two typos in function names in ftestSimon Glass
Two functions have incorrect names. Fix them. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23binman: Fix comment in bsection.GetEntries()Simon Glass
This comment is out of date as it does not correctly describe the return value. Fix it. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23tools: Drop duplicate raise_on_error argumentSimon Glass
If kwargs contains raise_on_error then this function generates an error due to a duplicate argument. Fix this. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23cbfs: Rename checksum to attributes_offsetSimon Glass
It seems that this field has been renamed in later version of coreboot. Update it. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23cbfs: Add an enum and comment for the magic numberSimon Glass
This field is not commented in the original file. Add a comment. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23x86: Add ifwitool for Intel Integrated Firmware ImageSimon Glass
Some Intel SoCs from about 2016 boot using an internal microcontroller via an 'IFWI' image. This is a special format which can hold firmware images. In U-Boot's case it holds u-boot-tpl.bin. Add this tool, taken from coreboot, so that we can build bootable images on apollolake SoCs. This tool itself has no tests. Some amount of coverage will be provided by the binman tests that use it, so enable building the tool on sandbox. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-07-23Merge tag 'u-boot-stm32-20190723' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-stm - add rtc driver for stm32mp1 - add remoteproc driver for stm32mp1 - use kernel qspi compatible string for stm32
2019-07-23Merge tag 'rockchip-for-v2019.07-2' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-rockchip - rk3399 sdhci driver fixup - TPL BANNER fixup
2019-07-22rockchip: TPL banner should depend on CONFIG_TPL_BANNER_PRINTChris Webb
The generic code in common/spl/spl.c allows TPL/SPL banners to be silenced by unsetting CONFIG_TPL_BANNER_PRINT or CONFIG_SPL_BANNER_PRINT respectively. However, arch/arm/mach-rockchip/tpl.c prints this banner unconditionally. Fix the rockchip-specific tpl.c so that the TPL banner depends on CONFIG_TPL_BANNER_PRINT in the same way as the generic code. Signed-off-by: <chris@arachsys.com> Reviewed-by: Kever Yang <Kever.yang@rock-chips.com>
2019-07-22rockchip: Fix TPL build without CONFIG_TPL_SERIAL_SUPPORTChris Webb
If CONFIG_DEBUG_UART is set but CONFIG_TPL_SERIAL_SUPPORT is not, the serial output should be available in SPL and full U-Boot, but not built in TPL. However, the rockchip tpl.c instead fails to compile with undefined references to the debug UART. Instead, initialise the debug UART and print the TPL banner only if both CONFIG_DEBUG_UART and CONFIG_TPL_SERIAL_SUPPORT are set. Signed-off-by: <chris@arachsys.com> Reviewed-by: Kever Yang <Kever.yang@rock-chips.com>
2019-07-22rtc: Add rtc driver for stm32mp1Patrick Delaunay
Add support of STM32MP1 rtc driver. Enable it for basic and trusted configurations. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
2019-07-22clk: stm32mp1: Add RTC clock entryPatrick Delaunay
Add RTCAPB and RTC clock support. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com> Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
2019-07-22doc: device-tree-bindings: alignment with v5.2-rc6 for spi-stm32-qspi.txtPatrice Chotard
Align doc/device-tree-bindings/spi/spi-stm32-qspi.txt with kernel v5.2-rc6 Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2019-07-22spi: stm32_qspi: Remove "st, stm32-qspi" compatible stringPatrice Chotard
"st,stm32-qspi" is no more used, remove it. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2019-07-22ARM: dts: stm32: Use kernel qspi compatible string for ↵Patrice Chotard
stm32f469-disco-uboot.dtsi For STM32 QSPI driver, "st,stm32-qspi" compatible string was first introduced in U-boot. But later in kernel side, "st,stm32f469-qspi" was used. To simplify, align U-boot QSPI compatible string with kernel one. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2019-07-22ARM: dts: stm32: Use kernel qspi compatible string for stm32f7-uboot.dtsiPatrice Chotard
For STM32 QSPI driver, "st,stm32-qspi" compatible string was first introduced in U-boot. But later in kernel side, "st,stm32f469-qspi" was used. To simplify, align U-boot QSPI compatible string with kernel one. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2019-07-22configs: stm32mp15: enable stm32 remoteprocPatrick Delaunay
Activate the remote processor support for stm32mp15 configs. Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
2019-07-22MAINTAINERS: Add stm32 remoteproc driverFabien Dessenne
Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
2019-07-22remoteproc: Introduce STM32 Cortex-M4 remoteproc driverFabien Dessenne
This patch introduces support of Cortex-M4 remote processor for STM32 MCU and MPU families. Signed-off-by: Loic Pallardy <loic.pallardy@st.com> Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
2019-07-22remoteproc: add elf file load supportFabien Dessenne
The current implementation supports only binary file load. Add helpers to support ELF32 format (sanity check, and load). Note that since an ELF32 image is built for the remote processor, the load function uses the device_to_virt ops to translate the addresses. Implement a basic translation for sandbox_testproc. Add related tests. Test result: => ut dm remoteproc_elf Test: dm_test_remoteproc_elf: remoteproc.c Test: dm_test_remoteproc_elf: remoteproc.c (flat tree) Failures: 0 Signed-off-by: Loic Pallardy <loic.pallardy@st.com> Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2019-07-22remoteproc: add device_to_virt opsFabien Dessenne
Introduce the device_to_virt function to allow translation between device address (remote processor view) and virtual address (main processor view). Signed-off-by: Loic Pallardy <loic.pallardy@st.com> Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2019-07-22remoteproc: fix function headersFabien Dessenne
Add full function comment headers. Fix rproc_is_initialized() return value description. Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2019-07-22dm: core: Introduce xxx_translate_dma_address()Fabien Dessenne
Add the following functions to translate DMA address to CPU address: - dev_translate_dma_address() - ofnode_translate_dma_address() - of_translate_dma_address() - fdt_translate_dma_address() These functions work the same way as xxx_translate_address(), with the difference that the translation relies on the "dma-ranges" property instead of the "ranges" property. Add related test. Test report: => ut dm fdt_translation Test: dm_test_fdt_translation: test-fdt.c Test: dm_test_fdt_translation: test-fdt.c (flat tree) Failures: 0 Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
2019-07-21Merge tag 'rockchip-for-v2019.07' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-rockchip - rk3399 lpddr4 support - rk3399-rock960 board support improvement - Eliminate pyelftools dependency by make_fit_atf.py - clean up rockchip dts to use -u-boot.dtsi - use ARM arch/generic timer instead of rk_timer - clean up Kconfig options for board support
2019-07-20rockchip: sdhci: Fix sdhci mmc driver probe abortKever Yang
This patch fix mmc driver abort caused by below patch: 3d296365e4 mmc: sdhci: Add support for sdhci-caps-mask After the patch sdhci_setup_cfg() access to host->mmc->dev, so we have to do init before make the call to the function() Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2019-07-20rockchip: Remove obsolete references to pyelftoolsChris Webb
make_fit_atf.py no longer requires pyelftools, and nothing else in the rockchip build requires it either, so remove references to installing it from the documentation. Signed-off-by: Chris Webb <chris@arachsys.com> Reviewed-by: Kever Yang <Kever.yang@rock-chips.com>
2019-07-20rockchip: make_fit_atf.py: Eliminate pyelftools dependencyChris Webb
make_fit_aft.py depends on the non-standard library pyelftools to pull out PT_LOAD segments from ELF files. However, this is as easy to do manually, without imposing the extra dependency on users. Structures in the ELF file are unpacked into variables named to exactly match the ELF spec to ensure the destructuring code is reasonably self-documenting. Signed-off-by: Chris Webb <chris@arachsys.com> Reviewed-by: Andy Yan <andy.yan@rock-chips.com> Reviewed-by: Kever Yang <Kever.yang@rock-chips.com>
2019-07-20rockchip: enable rk322x TPL_BOOTROM_SUPPORT in KconfigKever Yang
The TPL_BOOTROM_SUPPORT is needed for boot from bootrom like other storages. Signed-off-by: Kever Yang <kever.yang@rock-chips.com>