summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2020-01-07common: Add a noisy assert()Simon Glass
Some U-Boot code uses BUG_ON() and WARN_ON() macros. These use __FILE__ which can include quite a large path, depending on how U-Boot is built. The existing assert() is only checked if DEBUG is enabled. Add a new one which is always checked, and prints a (smaller) error in that case. Signed-off-by: Simon Glass <[email protected]>
2020-01-07efi_rng_protocol: Install the efi_rng_protocol on the root nodeSughosh Ganu
Install the EFI_RNG_PROTOCOL implementation for it's subsequent use by the kernel for features like kaslr. Signed-off-by: Sughosh Ganu <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2020-01-07efi: qemu: arm64: Add efi_rng_protocol implementation for the platformSughosh Ganu
Add support for the EFI_RNG_PROTOCOL routines for the qemu arm64 platform. EFI_RNG_PROTOCOL is an uefi boottime service which is invoked by the efi stub in the kernel for getting random seed for kaslr. The routines are platform specific, and use the virtio-rng device on the platform to get random data. The feature can be enabled through the following config CONFIG_EFI_RNG_PROTOCOL Signed-off-by: Sughosh Ganu <[email protected]> Changed SPDX header to use /* instead of //. Reviewed-by: Heinrich Schuchardt <[email protected]>
2020-01-07virtio: rng: Add a random number generator(rng) driverSughosh Ganu
Add a driver for the virtio-rng device on the qemu platform. The device uses pci as a transport medium. The driver can be enabled with the following configs CONFIG_VIRTIO CONFIG_DM_RNG CONFIG_VIRTIO_PCI CONFIG_VIRTIO_RNG Signed-off-by: Sughosh Ganu <[email protected]>
2020-01-07dm: rng: Add random number generator(rng) uclassSughosh Ganu
Add a uclass for reading a random number seed from a random number generator device. Signed-off-by: Sughosh Ganu <[email protected]> Reviewed-by: Patrice Chotard <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-01-07image: Add IH_OS_EFI for EFI chain-load bootCristian Ciocaltea
Add a new OS type to be used for chain-loading an EFI compatible firmware or boot loader like GRUB2, possibly in a verified boot scenario. Bellow is sample ITS file that generates a FIT image supporting secure boot. Please note the presence of 'os = "efi";' line, which identifies the currently introduced OS type: / { #address-cells = <1>; images { efi-grub { description = "GRUB EFI"; data = /incbin/("bootarm.efi"); type = "kernel_noload"; arch = "arm"; os = "efi"; compression = "none"; load = <0x0>; entry = <0x0>; hash-1 { algo = "sha256"; }; }; }; configurations { default = "config-grub"; config-grub { kernel = "efi-grub"; signature-1 { algo = "sha256,rsa2048"; sign-images = "kernel"; }; }; }; }; Signed-off-by: Cristian Ciocaltea <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2020-01-07efi_loader: define all known warning status codesHeinrich Schuchardt
Of all warning status codes up to now only EFI_WARN_DELETE_FAILURE is defined. The patch adds the missing definitions for later usage. Signed-off-by: Heinrich Schuchardt <[email protected]>
2020-01-07efi_loader: Add guidcpy functionSughosh Ganu
Add guidcpy function to copy the source guid to the destination guid. Use this function instead of memcpy for copying to the destination guid. Signed-off-by: Sughosh Ganu <[email protected]> Use void * instead of efi_guid_t * for arguments to allow copying unaligned GUIDs. The GUIDs of configuration tables are __packed. Signed-off-by: Heinrich Schuchardt <[email protected]>
2020-01-07part: efi: comment for GPT_HEADER_SIGNATURE_UBOOTHeinrich Schuchardt
Add a comment indicating that the value of GPT_HEADER_SIGNATURE_UBOOT equals the ASCII string 'EFI PART'. Signed-off-by: Heinrich Schuchardt <[email protected]>
2020-01-07efi_loader: export efi_install_fdt()Heinrich Schuchardt
Use a pointer to addressable memory instead of a "physical" address in the virtual address space of the sandbox to efi_install_fdt(). Export the efi_install_fdt() function. Signed-off-by: Heinrich Schuchardt <[email protected]>
2020-01-07efi_loader: carve out efi_run_image()Heinrich Schuchardt
Provide public function efi_run_imager() which can be used to run an UEFI image from memory. Signed-off-by: Heinrich Schuchardt <[email protected]>
2020-01-07efi_loader: pass address to efi_install_fdt()Heinrich Schuchardt
As part of moving the parsing of command line arguments to do_bootefi() call efi_install_fdt() with the address of the device tree instead of a string. If the address is EFI_FDT_USE_INTERNAL (= 0), the internal device tree is used. Signed-off-by: Heinrich Schuchardt <[email protected]>
2020-01-07include: pe.h: add signature-related definitionsAKASHI Takahiro
The index (IMAGE_DIRECTORY_ENTRY_SECURITY) in a table points to a region containing authentication information (image's signature) in PE format. WIN_CERTIFICATE structure defines an embedded signature format. Those definitions will be used in my UEFI secure boot patch. Signed-off-by: AKASHI Takahiro <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2020-01-07cmd_ut: add a parameter prefix to the function cmd_ut_categoryPhilippe Reynes
There is black magic in the file conftest.py that list all the test unit. Then, all those test unit are called in pytest. This call is done with the end of the name (for example checksum if the full name is bloblist_test_checksum). The result is that only test for dm are really executed. by pytest, all others tests are listed but never executed. This behaviour happens because the dm test unit only check the end of the name and others tests checks the full name. To fix this issue, I've added a prefix to the function cmd_ut_category, and this prefix is removed when looking for the unit test. Signed-off-by: Philippe Reynes <[email protected]> Tested-by: Heinrich Schuchardt <[email protected]>
2020-01-07remoteproc: elf_loader: Add elf resource table load supportFabien Dessenne
Add rproc_elf_load_rsc_table(), which searches for a resource table in an elf64/elf32 image, and if found, copies it to device memory. Add also the elf32 and elf64 variants of this API. Add a test for this. Signed-off-by: Fabien Dessenne <[email protected]> Acked-by: Patrick Delaunay <[email protected]> Reviewed-by: Lokesh Vutla <[email protected]>
2020-01-07include: board: provide empty stubs when the BOARD option is not selectedJean-Jacques Hiblot
Useful to avoid #ifdef throughout the code that uses the board driver API. Signed-off-by: Jean-Jacques Hiblot <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-01-07drivers: board: Add get_fit_loadable()Jean-Jacques Hiblot
This function will be used by the SPL to get the names of images to load from the FIT. This allows to load different images based on runtime HW detection. Signed-off-by: Jean-Jacques Hiblot <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-01-07configs: meson64: enable GIC support for G12A/G12BAnand Moon
Enable GIC support for G12A/G12B platform. Signed-off-by: Anand Moon <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Signed-off-by: Neil Armstrong <[email protected]>
2020-01-07Merge tag 'u-boot-imx-20200107' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx New for 2020.04 --------------- - New boards Embedded Artists COM board Xea Board - Switch to DM: Aristainetos boards Toradex colibri (DM_ETH) iCubox GE bx50v3 mx7dsabre (DM_ETH) cx9020 - New features: Bootaux with elf files Default SYS_THUMB_BUILD for i.MX6/7 - Fixes: DHCOM i.MX6 PDK Engicam i.MX8M tools (imx8m_image) Travis: https://travis-ci.org/sbabic/u-boot-imx/builds/633679664
2020-01-07Merge tag 'u-boot-atmel-2020.04-a' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-atmel First set of u-boot-atmel features for 2020.04 cycle This feature set is a patch series from Tudor Ambarus which includes parsing of the spi flash SFDP parser for SST flashes, and using those tables to retrieve unique saved per device MAC address. This is then used as base mac address on the SAMA5D2 Wireless SOM EK board.
2020-01-07configs: socfpga: fix building Stratix10 and AgilexSimon Goldschmidt
This fixes a merge error that accidentally left CONFIG_MTD_DEVICE active by removing it from the config file. Signed-off-by: Simon Goldschmidt <[email protected]>
2020-01-07arm: socfpga: agilex: Enable Agilex SoC buildLey Foon Tan
Add build support for Agilex SoC. Signed-off-by: Ley Foon Tan <[email protected]> Reviewed-by: Simon Goldschmidt <[email protected]>
2020-01-07configs: socfpga: Move Stratix10 and Agilex common CONFIGsLey Foon Tan
Move Stratix10 and Agilex common CONFIGs to socfpga_soc64_common.h. Signed-off-by: Ley Foon Tan <[email protected]> Reviewed-by: Simon Goldschmidt <[email protected]>
2020-01-07clk: agilex: Add clock driver for AgilexLey Foon Tan
Add clock manager driver for Agilex. Provides clock initialization and get_rate functions. agilex-clock.h is from Linux commit ID cd2e1ad12247. Signed-off-by: Chee Hong Ang <[email protected]> Signed-off-by: Ley Foon Tan <[email protected]> Reviewed-by: Simon Goldschmidt <[email protected]>
2020-01-07dfu: Add optional timeout parameterAndy Shevchenko
When the `dfu` command is called from the U-Boot environment, it now accepts an optional parameter that specifies a timeout (in seconds). If a DFU connection is not made within that time the `dfu` command exits (as it would if Ctrl+C was pressed). If the timeout is left empty or being zero the `dfu` command behaves as it does now. This is useful for allowing U-Boot to check to see if anything wants to upload new firmware before continuing to boot. The patch is based on the commit https://github.com/01org/edison-u-boot/commit/5e966ccc3c65c18c9783741fa04e0c45e021780c by Sebastien Colleur, which has been heavily reworked due to U-Boot changes in the past. Signed-off-by: Brad Campbell <[email protected]> Signed-off-by: Andy Shevchenko <[email protected]>
2020-01-07dfu: Drop unused prototype of dfu_trigger_reset()Andy Shevchenko
After the commit 1cc03c5c53c0 ("dfu: Provide means to find difference between dfu-util -e and -R") the dangling ptototype appeared. Remove it here. Fixes: 1cc03c5c53c0 ("dfu: Provide means to find difference between dfu-util -e and -R") Cc: Lukasz Majewski <[email protected]> Cc: Stephen Warren <[email protected]> Signed-off-by: Andy Shevchenko <[email protected]> Acked-by: Lukasz Majewski <[email protected]>
2020-01-07video: meson: Drop unnecessary header includesSimon Glass
These files should not be included in meson header files. Drop them and tidy up the affected C files. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Anatolij Gustschin <[email protected]> Acked-by: Neil Armstrong <[email protected]> Signed-off-by: Neil Armstrong <[email protected]>
2020-01-07configs: imx6-engicam: Drop fec phy address and modeMichael Trimarchi
Now all the fec related phy properties are now accessible via dts. So drop the explicit config items from common config file, imx6-engicam.h Signed-off-by: Michael Trimarchi <[email protected]> Signed-off-by: Jagan Teki <[email protected]>
2020-01-07imx8mm_evk: Adjust the environment for booting a mainline kernelFabio Estevam
Adjust the environment for booting a mainline kernel by default. Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2020-01-07colibri_imx7: migrate to DM_ETHIgor Opaniuk
Migrate to DM_ETH and remove hardcoded pinmux configuration. Signed-off-by: Igor Opaniuk <[email protected]> Reviewed-by: Oleksandr Suvorov <[email protected]>
2020-01-07apalis_imx6: migrate to DM_ETHIgor Opaniuk
Migrate to DM_ETH and remove hardcoded pinmux configuration. Signed-off-by: Igor Opaniuk <[email protected]> Reviewed-by: Oleksandr Suvorov <[email protected]>
2020-01-07colibri_imx6: migrate to DM_ETHIgor Opaniuk
Migrate to DM_ETH and remove hardcoded pinmux configuration. Signed-off-by: Igor Opaniuk <[email protected]> Reviewed-by: Oleksandr Suvorov <[email protected]>
2020-01-07mx7dsabre: Convert to distroboot supportJoris Offouga
Signed-off-by: Joris Offouga <[email protected]>
2020-01-07mx7dsabre: Enable DM_ETHJoris Offouga
Also sync device tree with v5.5-rc1 Signed-off-by: Joris Offouga <[email protected]>
2020-01-07mx7ulp: Add support for Embedded Artists COM boardFabio Estevam
The Embedded Artists COM board is based on NXP i.MX7ULP. It has a BD70528 PMIC from Rohm with discrete DCDC powering option and improved current observability (compared to the existing NXP i.MX7ULP EVK). Add the initial support for the board. Signed-off-by: Fabio Estevam <[email protected]>
2020-01-07colibri_vf: add update_uboot wrapperIgor Opaniuk
Add universal update_uboot wrapper that helps to update U-Boot image on internal storage. Usage example: > tftpboot ${loadaddr} ${board_name}/u-boot-nand.imx > run update_uboot Signed-off-by: Igor Opaniuk <[email protected]>
2020-01-07colibri-imx6ull: add update_uboot wrapperIgor Opaniuk
Add universal update_uboot wrapper that helps to update U-Boot image on internal storage. Usage example: > tftpboot ${loadaddr} ${board_name}/u-boot-nand.imx > run update_uboot Signed-off-by: Igor Opaniuk <[email protected]>
2020-01-07colibri_imx6: add update_uboot wrapperIgor Opaniuk
Add universal update_uboot wrapper that helps to update U-Boot image on internal storage. > tftpboot ${loadaddr} ${board_name}/u-boot.img > run update_uboot > tftpboot ${loadaddr} ${board_name}/SPL > run update_spl Signed-off-by: Igor Opaniuk <[email protected]>
2020-01-07apalis_imx6: add update_uboot wrapperIgor Opaniuk
Add universal update_uboot wrapper that helps to update U-Boot image on internal storage. Usage example: > tftpboot ${loadaddr} ${board_name}/u-boot.img > run update_uboot > tftpboot ${loadaddr} ${board_name}/SPL > run update_spl Signed-off-by: Igor Opaniuk <[email protected]>
2020-01-07colibri_imx7: add update_uboot wrapperIgor Opaniuk
Add universal update_uboot wrapper that helps to update U-Boot image on internal storage. Usage example: > tftpboot ${loadaddr} ${board_name}/u-boot-dtb.imx > run update_uboot Signed-off-by: Igor Opaniuk <[email protected]>
2020-01-07imx: cx9020: use distro bootSteffen Dirkwinkel
We switch from custom boot commands relying on uEnv.txt to distro boot. This removes the automatic fpga bitstream loading in favor of loading bitstreams via custom bootscripts (boot.scr) or after booting the kernel. Acked-by: Patrick Bruenn <[email protected]> Signed-off-by: Steffen Dirkwinkel <[email protected]>
2020-01-07imx: cx9020: enable vidconsole by defaultSteffen Dirkwinkel
Acked-by: Patrick Bruenn <[email protected]> Signed-off-by: Steffen Dirkwinkel <[email protected]>
2020-01-07imx: cx9020: migrate cx9020 to CONFIG_DM_ETHSteffen Dirkwinkel
Acked-by: Patrick Bruenn <[email protected]> Signed-off-by: Steffen Dirkwinkel <[email protected]>
2020-01-07arm: imx6: cm_fx6: Enable DM SPI and SPI_FLASH, fix SPL build errorsSuniel Mahesh
Enable driver model for SPI and SPI_FLASH to remove the following compile warning on CM-FX6 SOM: ===================== WARNING ====================== This board does not use CONFIG_DM_SPI_FLASH. Please update the board to use CONFIG_SPI_FLASH before the v2019.07 release. ==================================================== This change introduced SPL build error as shown: In file included from include/common.h:47:0, from drivers/mtd/spi/sf_probe.c:10: drivers/mtd/spi/sf_probe.c: In function 'spi_flash_std_probe': drivers/mtd/spi/sf_probe.c:149:54: error: dereferencing pointer to incomplete type 'struct dm_spi_slave_platdata' scripts/Makefile.build:278: recipe for target 'spl/drivers/mtd/spi/sf_probe.o' failed make[3]: *** [spl/drivers/mtd/spi/sf_probe.o] Error 1 scripts/Makefile.build:432: recipe for target 'spl/drivers/mtd/spi' failed make[2]: *** [spl/drivers/mtd/spi] Error 2 Disabling DM for SPI support(SPI and SF) in SPL resolves the issue. Target was compile tested, build was clean. Signed-off-by: Suniel Mahesh <[email protected]>
2020-01-07ARM: imx6: DHCOM i.MX6 PDK: Enable sysreset driver and wdt commandClaudius Heine
The SPL does not have DM enabled and therefor still needs to use the hardware watchdog interface provided by the imx-watchdog driver. Fixes: broken reset command after f2929d11a639 ("watchdog: imx: Use immediate reset bits for expire_now") Signed-off-by: Claudius Heine <[email protected]>
2020-01-07mx6cuboxi: enable OF_CONTROL with DM_MMC and DM_USBBaruch Siach
Make first step in DT/DM migration. Enable OF_CONTROL only for the main U-Boot image for now. Remove mmc_init_main() because board_mmc_init() is not called when DM_MMC is enabled. DM_MMC requires DM_GPIO for card-detect to work. That in turn makes gpio request mandatory. Add code to request/free gpios in platform code. MMC devices are now numbered according to DT. The SD card is 1, and eMMC is 2. Account for that in board_mmc_get_env_dev(), BOOT_TARGET_DEVICES, and has_emmc(). DM_MMC requires BLK. However, the (BLK && !DM_USB) combination disables USB_STORAGE. Enable DM_USB to preserve USB functionality. Add also DM_REGULATORS for the USB power controller. This allows us to drop board_ehci_hcd_init() and setup_usb(). Runtime selection of DT is necessary because of the i.MX6QD vs i.MX6SDL incompatibility. DT selection does not rely on GPIOs, since DM_GPIO depends on DT. Instead, we take one "fully featured" DT of each variant. That should be enough to boot from both SD card and eMMC. Since we don't select the exact DT, override the generic show_board_info() that shows the selected DT 'model' field. Signed-off-by: Baruch Siach <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2020-01-07dt-bindings: add imx-audmux macro definitionsBaruch Siach
Import fsl-imx-audmux.h from Linux as of v5.4-rc6. The header is unchanged since v4.18. That would make it easier to import DT files that depend on imx-audmux definitions from the kernel tree. Signed-off-by: Baruch Siach <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2020-01-07board: ge: pass rtc_status via device treeIan Ray
Pass rtc_status via the device tree, instead of on kernel command line. Additionally, the 2038 mitigation is reported, if applied successfully. Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Robert Beckett <[email protected]>
2020-01-07board: ge: bx50v3: Enable DM for PCI and ethernetDenis Zalevskiy
DM for PCI pulls DM for ethernet that also needs other changes described below to build u-boot and keep existing functionality - ability to update MAC addresses of FEC ethernet adapter and I210 adapter connected to the Marvell switch. - fec_mxc driver with DM needs PHYLIB; - configuration items are moved from ge_bx50v3.h to ge_bx50v3_defconfig; - FEC is marked as eth0 because it is always present, so indices changed: I210 are still probed in the same order; - board_eth_init() was used by legacy ethernet, setup for enet iomux and pcie is moved to the board_late_init(); - pci_init() is called from the board_late_init() to initiate PCI bus probing, so I210 devices are propagated to the device tree; Signed-off-by: Denis Zalevskiy <[email protected]> [Describe PHY reset in device tree] Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Robert Beckett <[email protected]>
2020-01-07board: ge: bx50v3: Fix message output to video consoleIan Ray
Use vidconsole for output to the LCD, now that DM_VIDEO is used. Write white text on a black background, like before migrating to DM_VIDEO. Signed-off-by: Ian Ray <[email protected]> Signed-off-by: Robert Beckett <[email protected]>