summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2018-04-26imx6ul: opos6ul: add SPL_DM supportSébastien Szymanski
Since commit commit 152038ea1886 ("i.MX6UL: icore: Add SPL_OF_CONTROL support") the OPOS6UL board doesn't boot anymore. Adding SPL_DM support makes the board boot again. Fixes: commit 152038ea1886 ("i.MX6UL: icore: Add SPL_OF_CONTROL support") Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
2018-04-26warp7: Add support for automated secure boot.scr verificationBryan O'Donoghue
This patch adds support for verifying a signed boot.scr. With this in place it's possible for run-time Linux to update boot.scr to set different variables such as switching between different boot partitions, pointing to different kernels etc and for u-boot to verify these changes via the HAB prior to executing the commands contained in boot.scr. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Tested-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-26warp7: hab: Set environment variable indicating IVT offsetBryan O'Donoghue
This patch introduces the environment variable ivt_offset. When we define a load address for Linux or DTB or any file the IVT associated with that file is prepended. We extract the actual load addresses from u-boot.cfg and feed these values into the code-signing process - hence we want u-boot to have the real load addresses exported in uboot.cfg. ivt_offset represents the addition or subtraction from the load address that must happen to find an IVT header. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Tested-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-26warp7: add warp7_auth_or_failBryan O'Donoghue
Doing secure boot on the WaRP7 using a common image format and the same variable to represent the base address for each call means we can reduce down the command to a single environment command. This patch adds warp7_auth_or_fail as a wrapper around "hab_auth_img_or_fail ${hab_ivt_addr} ${filesize} 0". Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Tested-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-26warp7: Define the name of a signed boot-script fileBryan O'Donoghue
We need to know the name of a signed boot-script, its better to have a separate variable for this then to simply append some fixed string to an existing image name. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Tested-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-26warp7: select uuid partition based on rootpartBryan O'Donoghue
Assigning the UUID discovery path to a tweakable environment variable means that later steps in the boot process - particularly a boot script can change the target root partition of a particular Linux boot. Retargeting the rootfs is an important feature when doing ping/pong upgrades allowing a boot script to select ping or pong as necessary without reprogramming the bootloader. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Tested-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-26warp7: Make CONFIG_SYS_FDT_ADDR a defineBryan O'Donoghue
In order to sign images with the IMX code-signing-tool (CST) we need to know the load address of a given image. The best way to derive this load address is to make it into a define - so that u-boot.cfg contains the address - which we can then parse when generating the IMX CST headers. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Reviewed-by: Ryan Harkin <ryan.harkin@linaro.org> Tested-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-26warp7: Specify CONFIG_OPTEE_LOAD_ADDRBryan O'Donoghue
In order to sign images with the IMX code-signing-tool (CST) we need to know the load address of a given image. The best way to derive this load address is to make it into a define - so that u-boot.cfg contains the address - which we can then parse when generating the IMX CST headers. This patch makes the OPTEE_LOAD_ADDR available via u-boot.cfg for further parsing by external tools. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Reviewed-by: Ryan Harkin <ryan.harkin@linaro.org> Tested-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-26warp7: hab: Set environment variable indicating HAB enableBryan O'Donoghue
This patch adds an environment variable called "hab_enabled" which gets set to a boolean status indicating whether HAB is enabled or not. Subsequent patches can use this environment variable to determine if its necessary to run a given binary through the hab_auth_img console command. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Tested-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-26imximage: Specify default IVT offset in IMX imageBryan O'Donoghue
This patch adds BOOTROM_IVT_HDR_OFFSET at 0xC00. The BootROM expects to find the IVT header at a particular offset in an i.MX image. Defining the expected offset of the IVT header in the first-stage BootROM image format is of use of later stage authentication routines where those routines continue to follow the first-stage authentication layout. This patch defines the first stage offset which later patch make use of. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Cc: Utkarsh Gupta <utkarsh.gupta@nxp.com> Cc: Breno Lima <breno.lima@nxp.com> Cc: Fabio Estevam <fabio.estevam@nxp.com> Tested-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-26warp7: include/configs: use generic fs commands in CONFIG_EXTRA_ENV_SETTINGSPierre-Jean TEXIER
use the generic filesystem command 'load' rather than 'fatload' to avoid per-fs specific commands. Signed-off-by: Pierre-Jean TEXIER <texier.pj2@gmail.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Acked-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
2018-04-24Merge git://git.denx.de/u-boot-videoTom Rini
2018-04-23Merge tag 'signed-efi-2018.05' of git://github.com/agraf/u-bootTom Rini
Patch queue for efi - 2018-04-23 Some last minute fixes for 2018.05. Most of them are minor fixes. On top we have some functional improvements for the device path logic which should also help us be more compatible.
2018-04-23efi_loader: complete EFI_DEVICE_PATH_UTILITIES_PROTOCOLHeinrich Schuchardt
The missing services of the EFI_DEVICE_PATH_UTILITIES_PROTOCOL are implemented. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-23efi_loader: correcty determine total device path lengthHeinrich Schuchardt
Device paths may consist of multiple instances. Up to now we have only considered the size of the first instance. For the services of the EFI_DEVICE_PATH_UTILITIES_PROTOCOL in most cases the total length of the device path is relevant. So let's rename efi_dp_size() to efi_dp_instance_size() and create a new function efi_dp_size() that calculates the total device path length. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-23efi_loader: implement CreateDeviceNodeHeinrich Schuchardt
Implement the CreateDeviceNode service of the device path utility protocol. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-23efi_selftest: do not execute test if setup failedHeinrich Schuchardt
Executing a test after failed setup may lead to unexpected behavior like an illegal memory access. So after a setup failure we should skip to teardown. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-23log: fix typo LOGL_EFIHeinrich Schuchardt
According to the documentation the EFI log category is called LOGC_EFI. All other categories start with LOGC_. So let's fix it. Fixes: 1973b381a1b3 ("log: add category LOGC_EFI") Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-23Merge git://git.denx.de/u-boot-uniphierTom Rini
2018-04-24ARM: uniphier: move SPL stack addressMasahiro Yamada
Currently, the address region, 0xf8000 - 0x100000, is used for SPL stack for the 32bit SoCs. Because the U-Boot proper image starts from 0x70000, the maximum size of the U-Boot proper image is 544KB (0x70000 - 0xf8000) for the NOR boot mode. Now uniphier_v7_defconfig is almost hitting this size limit. Changing CONFIG_SPL_STACK can raise the size limit with less impact. With this, the size limit will increase to 576KB (0x70000 - 0x100000). If we need to increase it even more, we would be able to change CONFIG_SYS_UBOOT_BASE at the cost of the flashing command changes. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2018-04-24ARM: uniphier: select a correct mmc device before flashing imagesMasahiro Yamada
Some boards support an SD card and an eMMC device at the same time. Since both belong to 'mmc', they are identified by a device number. When the device number of the eMMC is 1 instead 0, "mmc dev" command must be performed to switch the target device before flashing images. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2018-04-24ARM: uniphier: increase CONFIG_SYS_MONITOR_LENMasahiro Yamada
With the recent changes, the size of the U-Boot proper image for uniphier_v7_defconfig exceeded the current limit, 512KB, then SPL fails to load the whole of the U-Boot proper. Increase the size. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2018-04-23arm: zynq: Make ENV_SIZE and ENV_OFFSET optional via board fileMichal Simek
Boards have an option to rewrite variable locations in their own board files. This is necessary for qspi and nand configurations where boot image can be bigger then 896k(current limit). Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-04-21ARM: rmobile: Update E2 SilkMarek Vasut
The E2 Silk port was broken since some time. This patch updates the E2 Silk port to use modern frameworks, DM, DT probing, SPL for the preloading and puts it on par with the M2 Porter board. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> --- NOTE: The port is missing support for I2C1 for DA9063 reset, since the I2C driver needs to be converted to DM and DT probing. That's not an issue for this patch though, since the reset was broken on Silk since forever.
2018-04-21mmc: sh_mmcif: Migrate configs to CONFIG_SH_MMCIFMarek Vasut
Migrate the U-Boot configs to Kconfig CONFIG_SH_MMCIF . Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Cc: Jaehoon Chung <jh80.chung@samsung.com>
2018-04-18Merge git://git.denx.de/u-boot-shTom Rini
2018-04-17Merge git://git.denx.de/u-boot-socfpgaTom Rini
2018-04-17reset: fix bulk API when DM_RESET is disabledNeil Armstrong
In the commit "reset: Add get/assert/deassert/release for bulk of reset signals" the disabled reset_release_bulk() and reset_get_bulk() used the wrong struct clk_bulk instead of struct reset_ctl_bulk. Fixes: 0c28233903b5 ("reset: Add get/assert/deassert/release for bulk of reset signals") Reported-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-04-17ARM: rmobile: Update M2 KoelschMarek Vasut
The M2 Koelsch port was broken since some time. This patch updates the M2 Koelsch port to use modern frameworks, DM, DT probing, SPL for the preloading and puts it on par with the M2 Porter board. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
2018-04-17configs: socfpga: convert i2c to dmDinh Nguyen
Enable DM I2C driver on SoCFPGA platforms. Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
2018-04-17ARM64: stratix10: add reset manager includesDinh Nguyen
Pulled from linux v4.16-rc4. Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
2018-04-17ARM: rmobile: Enable RPC QSPI on R8A77970 V3M EagleMarek Vasut
Enable the RPC QSPI driver on R8A77970 V3M Eagle and configure the environment layout to match that used by old U-Boot. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
2018-04-16env: Relocate env drivers if manual reloc is requiredSiva Durga Prasad Paladugu
Relocate env drivers if manual relocation is enabled. This patch fixes the issue of u-boot hang incase if env is present in any of the flash devices. Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-04-16bootvx: x86: Assign bootaddr based on kernel memory baseBin Meng
On VxWorks x86 its bootline address is at a pre-defined offset @ 0x1200. If 'bootaddr' is not passed via environment variable, we assign its value based on the kernel memory base address. Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2018-04-16bootvx: x86: Make VxWorks EFI console driver happyBin Meng
When booting from EFI BIOS, VxWorks bootloader stores the EFI GOP framebuffer info at a pre-defined offset @ 0x6100. When VxWorks kernel boots up, its EFI console driver tries to find such a block and if the signature matches, the framebuffer information will be used to initialize the driver. However it is not necessary to prepare an EFI environment for VxWorks's EFI console driver to function (eg: EFI loader in U-Boot). If U-Boot has already initialized the graphics card and set it to a VESA mode that is compatible with EFI GOP, we can simply prepare such a block for VxWorks. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-04-16elf: Add ELF64 related structure definesBin Meng
This adds ELF header, program header and section header structure defines for the 64-bit ELF image. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-04-16elf: Clean up the ELF header fileBin Meng
Fix various style violations in elf.h - use correct comment format if the comment fits in just one line - remove the ending period for the one-line comment - use tab for the indention instead of space - put the opening brace at the same line of a typedef/union - remove <name> in a 'typedef struct' for consistency Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
2018-04-16vxworks: x86: Rename e820info to e820_infoBin Meng
This changes 'struct e820info' to 'struct e820_info' to conform with the coding style. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
2018-04-16bootvx: x86: Explicitly clear the bootloader image sizeBin Meng
VxWorks bootloader stores its size at a pre-defined offset @ 0x5004. Later when VxWorks kernel boots up and system memory information is retrieved from the E820 table, the bootloader size will be subtracted from the total system memory size to calculate the size of available memory for the OS. Explicitly clear the bootloader image size otherwise if memory at this offset happens to contain some garbage data, the final available memory size for the kernel is insane. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-04-16bootvx: x86: Prepare e820 related stuff from the given kernel memory base ↵Bin Meng
address At present two environment variables 'e820data'/'e820info' are required to boot a VxWorks x86 kernel, but this is superfluous. The offset of these two tables are actually at a fixed offset from the kernel memory base address and we can provide the kernel memory base address to U-Boot via only one variable 'vx_phys_mem_base'. Note as it name indicates, the physical address should be provided. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
2018-04-15Merge git://git.denx.de/u-boot-imxTom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2018-04-15Merge git://git.denx.de/u-boot-netTom Rini
2018-04-15mx31ads: DeleteTom Rini
This platform has been marked as orphaned since September 2013, remove. Signed-off-by: Tom Rini <trini@konsulko.com>
2018-04-15imx31_phycore: DeleteTom Rini
This platform has been marked as orphaned since September 2013, remove. Signed-off-by: Tom Rini <trini@konsulko.com>
2018-04-15pico-imx7d: Replace fatload commandVanessa Maegima
Replace fatload with the fs generic loading interface ('load' command). Signed-off-by: Vanessa Maegima <vanessa.maegima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-15imx: board: Add support for the K+P's kp_imx6q_tpc boardLukasz Majewski
This commit provides support for Kieback & Peter GmbH IMX6Q based TPC board. U-boot console output: U-Boot SPL 2018.05-rc1-00005-g631e2d01fd (Apr 04 2018 - 21:16:24 +0200) Trying to boot from MMC1 U-Boot 2018.05-rc1-00005-g631e2d01fd (Apr 04 2018 - 21:16:24 +0200) CPU: Freescale i.MX6Q rev1.5 996 MHz (running at 792 MHz) CPU: Extended Commercial temperature grade (-20C to 105C) at 37C Reset cause: POR Board: K+P KP_IMX6Q_TPC i.MX6Q Watchdog enabled I2C: ready DRAM: 2 GiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 Loading Environment from MMC... OK In: serial Out: serial Err: serial Net: FEC [PRIME] Autoboot in 3 seconds
2018-04-15board: ge: bx50v3: enable backlight on demandIan Ray
Enable display backlight only if a message needs to be displayed. The kernel re-initializes the backlight, which results in some unwanted artifacts. Signed-off-by: Ian Ray <ian.ray@ge.com> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
2018-04-15imximage: Encase majority of header in __ASSEMBLY__ declarationBryan O'Donoghue
Subsequent patches will want to include imageimage.h but in doing so include it on an assembly compile path causing a range of compile errors. Fix the errors pre-emptively by encasing the majority of the declarations in imximage.h inside an ifdef __ASSEMBLY__ block. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Cc: Utkarsh Gupta <utkarsh.gupta@nxp.com> Cc: Breno Lima <breno.lima@nxp.com> Cc: Fabio Estevam <fabio.estevam@nxp.com> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Tested-by: Breno Lima <breno.lima@nxp.com>
2018-04-15warp7: Set u-boot serial# based on OTP valueBryan O'Donoghue
u-boot has a standard "serial#" environment variable that is suitable for storing the iSerial number we will supply via the USB device descriptor. serial# is automatically picked up by the disk subsystem in u-boot - thus providing a handy unique identifier in /dev/disk/by-id as detailed below. Storing the hardware serial identifier in serial# means we can change the serial# if we want before USB enumeration - thus making iSerial automatic via OTP but overridable if necessary. This patch reads the defined OTP fuse and sets environment variable "serial#" to the value read. With this patch in place the USB mass storage device will appear in /dev/disk/by-id with a unique name based on the OTP value. For example /dev/disk/by-id/usb-Linux_UMS_disk_0_WaRP7-0xf42400d3000001d4-0:0 Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Rui Miguel Silva <rui.silva@linaro.org> Cc: Ryan Harkin <ryan.harkin@linaro.org> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-04-13ARM: rmobile: Convert TPL to SPLMarek Vasut
There is currently no use for building the SPL anymore, since the SPI loader can easily be replaced by TPL and TPL does load U-Boot directly. Upgrade TPL to SPL and replace what used to be SPL with it. This way we build the U-Boot sources only twice, not thrice. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>