summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-02-15cmd: bmp: Make integer-to-pointer cast platform, independentAdam Heinrich
This patch fixes the int-to-pointer-cast warning on aarch64. Signed-off-by: Adam Heinrich <adam@adamh.cz> Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Matthias Brugger <mbrugger@suse.com>
2019-02-15doc: imx: habv4: Move encrypted boot guideBreno Matheus Lima
All guides are currently located at doc/imx/habv4/guides/ directory. Move encrypted_boot.txt document to guides directory. Signed-off-by: Breno Lima <breno.lima@nxp.com>
2019-02-15doc: imx: habv4: Add Secure Boot guide for i.MX6 and i.MX7 SPL targetsBreno Matheus Lima
The current U-Boot implementation includes SPL targets for some NXP development boards: - mx6sabreauto_defconfig - mx6sabresd_defconfig - mx6ul_14x14_evk_defconfig - mx6ul_9x9_evk_defconfig Add additional steps needed to completly secure the bootloader image. Signed-off-by: Breno Lima <breno.lima@nxp.com>
2019-02-15doc: imx: habv4: Add Secure Boot guide for i.MX6 and i.MX7 non-SPL targetsBreno Matheus Lima
Add HABv4 documentation for non-SPL targets covering the following topics: - How to sign an securely boot an u-boot-dtb.imx image. - How to extend the root of trust for additional boot images. - Add 3 CSF examples. - Add IVT generation script example. Reviewed-by: Ye Li <ye.li@nxp.com> Reviewed-by: Utkarsh Gupta <utkarsh.gupta@nxp.com> Signed-off-by: Breno Lima <breno.lima@nxp.com>
2019-02-15doc: imx: habv4: Add HABv4 introductionBreno Matheus Lima
The HABv4 is supported in i.MX50, i.MX53, i.MX6, i.MX7, series and i.MX 8M, i.MX8MM devices. Add an introductory document containing the following topics: - HABv4 Introduction - HABv4 Secure Boot - HABv4 Encrypted Boot - HAB PKI tree generation - HAB Fast Authentication PKI tree generation - SRK Table and SRK Hash generation Reviewed-by: Ye Li <ye.li@nxp.com> Reviewed-by: Utkarsh Gupta <utkarsh.gupta@nxp.com> Signed-off-by: Breno Lima <breno.lima@nxp.com>
2019-02-15doc: imx: habv4: Remove extra hab directory for a cleaner documentation ↵Breno Matheus Lima
structure There is no need to have an extra hab directory under doc/imx/. Habv4 and AHAB documentation can be added directly in doc/imx/ for a cleaner documentation structure. Signed-off-by: Breno Lima <breno.lima@nxp.com>
2019-02-15ARM: dts: imx6ul-lite*: add DTS files for liteSOM and liteboardMarcin Niestroj
Import liteSOM and liteboard dts files from Linux v4.20. They will be used after transition to driver model and device-tree based boot. Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2019-02-15MTD: nand: mxs_nand: Allow driver to auto setup ECC in SPLAdam Ford
The initialization of the NAND in SPL hard-coded ecc.bytes, ecc.size, and ecc.strength which may work for some NAND parts, but it not appropriate for others. With the pending patch "mxs_nand: Fix BCH read timeout error on boards requiring ECC" the driver can auto configure the ECC when these entries are blank. This patch has been tested in NAND flash with oob 64 and oob 128. Signed-off-by: Adam Ford <aford173@gmail.com> Tested-by: Jörg Krause <joerg.krause@embedded.rocks> Acked-by: Tim Harvey <tharvey@gateworks.com> Tested-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15net: dm: fec: Fix regulator enable when using DM_REGULATORAdam Ford
When DM_REGULATOR is enabled, the driver attempts to call regulator_autoset() which expects the regulators to be on at boot and/or always on and fails if they are not true. For a more generic approach, this patch just calls regulator_set_enable() which shouldn't have such restrictions. Fixes: ad8c43cbcafb ("net: dm: fec: Support the phy-supply binding") Signed-off-by: Adam Ford <aford173@gmail.com> Tested-by: Martin Fuzzey <martin.fuzzey@flowbird.group> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
2019-02-15ARM: imx6q_logic: Correct phy fixup for broken ethernetAdam Ford
The Ethernet has been broken for some time. This patch unifies this board with a few others that use a similar approach to enabling phy. This fixes ar8031 Ethernet controller so it works. Signed-off-by: Adam Ford <aford173@gmail.com>
2019-02-15ARM: imx6q_logic: Enable SPL Booting from NANDAdam Ford
This patch fixes a few values that were incorrect, and this now lets SPL boot from NAND. Signed-off-by: Adam Ford <aford173@gmail.com>
2019-02-15MTD: NAND: mxs_nand_init_dma: Make mxs_nand_init_dma staticAdam Ford
mxs_nand_init_dma is only referenced from mxs_nand.c. It's not referenced in any headers or outside code, so this patch defines it as static. Signed-off-by: Adam Ford <aford173@gmail.com>
2019-02-15MTD: mxs_nand: Fix BCH read timeout error on boards requiring ECCAdam Ford
The LogicPD board uses a Micron Flash with ECC. To boot this from SPL, the ECC needs to be correctly configured or the BCH engine times out. Signed-off-by: Adam Ford <aford173@gmail.com> Acked-by: Stefan Agner <stefan.agner@toradex.com> Tested-by: Jörg Krause <joerg.krause@embedded.rocks> Acked-by: Tim Harvey <tharvey@gateworks.com> Tested-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15ddr: vybrid: Add calibration code to memory controler's (DDRMC) setup codeLukasz Majewski
This patch extends the vf610 DDR memory controller code to support SW leveling. Signed-off-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Stefan Agner <stefan.agner@toradex.com>
2019-02-15ddr: vybrid: Provide code to perform on-boot calibrationLukasz Majewski
This patch provides the code to calibrate the DDR's DQS to DQ signals (RDLVL). It is based on: VFxxx Controller Reference Manual, Rev. 0, 10/2016, page 1600 10.1.6.16.4.1 "Software Read Leveling in MC Evaluation Mode" and NXP's community thread: "Vybrid: About DDR leveling feature on DDRMC." https://community.nxp.com/thread/395323 Signed-off-by: Lukasz Majewski <lukma@denx.de>
2019-02-15ddr: vybrid: Add DDRMC calibration related registers (DQS to DQ)Lukasz Majewski
This commit provides extra defines needed for DDR memory controller calibration (read leveling performing). Signed-off-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Stefan Agner <stefan.agner@toradex.com>
2019-02-14Merge branch 'master' of git://git.denx.de/u-boot-sunxiTom Rini
- MMC CD pin fix on Orangepi Zero plus - SPI boot for Olinuxino Lime2-eMMC boards - Change in dram frequnecy for tbs_a711
2019-02-14arm64: zynqmp: Remove board config filesMichal Simek
All options have been moved to Kconfig and there is no need to have board header files. Mini configurations require them that's why they are still there. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: zynqmp: Remove SPD related configurationsMichal Simek
SPD autodetection hasn't been enabled that's why there is zero size difference if that options are enabled/disabled. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: zynqmp: Fix logic around CONFIG_ZYNQ_SDHCIMichal Simek
Replace SDHCI controller listing by Kconfig symbol to let SPL know that this board is using multiple SDHCIs controllers. Kconfig help message should explain why this is needed. Origin symbols were used in full u-boot but with moving to distro boot this was fixed already. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14xilinx: common: Remove !DM_i2C code for reading mac from eepromMichal Simek
All platforms are converted to DM_I2C that's why there is no reason to keep this code here. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2019-02-14i2c: Remove ancient zynq_i2c driverMichal Simek
This driver is replaced by drivers/i2c/i2c-cdns.c DM based driver. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Acked-by: Heiko Schocher <hs@denx.de>
2019-02-14arm64: zynqmp: Remove addresses for i2c controllersMichal Simek
All platforms have been converted to DM that's why there is no reason to keep addresses in headers. They are all read from DT now. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2019-02-14arm64: zynqmp: Switch all platforms to DM_I2CMichal Simek
CONFIG_PCA953X is not needed because of PCA953X is integrated in gpio subsystem already. That's why also remove CMD_PCA953X which is only for this driver. zcu102/zcu104-revC/zcu106/zcu111 contain links to eeprom which stores MAC address. DM_I2C is not enabled for the whole SoC because it increase size for mini configurations and there is no I2C symbol present to setup dependencies. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2019-02-14ARM: zynq: Remove addresses for i2c controllersMichal Simek
All platforms have been converted to DM that's why there is no reason to keep addresses in headers. They are all read from DT now. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2019-02-14ARM: zynq: Convert dlc20 and zc70x board to DM_I2CMichal Simek
All these board have also eeprom enabled that's why it is also enabled via defconfig. There is also no need to have zc70x specific config file that's why also remove it. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2019-02-14ARM: zynq: Convert Syzygy to DM_I2CMichal Simek
Boards have only one controller enabled that's why move to DM_I2C is easy. Add also i2c alias for not to be shown as i2c bus -1 because alias doesn't exist. Config file points to MAC stored in eeprom but it is not listed that's why I have added 24c08 part. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2019-02-14arm64: versal: Add mini configuration for VersalSiva Durga Prasad Paladugu
This patch adds new mini target for versal. This configuration is very minimal in size which runs from OCM. It contains support for mtest which can be used for running DDR memory tests. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: versal: Move IOU_SWITCH_DIVISOR0 to KconfigMichal Simek
Move hardcoded IOU_SWITCH_DIVISOR0 to Kconfig to be able to set it up for different platforms. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: versal: Remove one level of indentation in board_early_init_r()Michal Simek
Simplify code indentation. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: versal: Define distro boot commnads for qspi ospi and mmcSiva Durga Prasad Paladugu
This patch adds distro boot commands for qspi, ospi and mmc. The distro boot commands now reads the script from flash offset of 63.5MB for qspi and ospi and executes it. For mmc its same as generic distro boot command. As either one of the qspi or ospi can exist on hardware, defined a single distroboot command as xspi that works for both. Setup default location via script_offset_f to 63.5MB to match the most xilinx reference boards for qspi, ospi for now. 512kB allocated space for script size (script_size_f) should be more than enough to cover custom boot logic. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: versal: Disable showing information about consoleMichal Simek
There is no need to see this info. It is just wasting of space/time. It saves 308Bytes. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm: zynq: Update boot_targets based on bootmodeSiva Durga Prasad Paladugu
Update boot_targets based on bootmode to run corresponding distroboot command first. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm: zynq: Define distro boot commnads for qspi, nand and norSiva Durga Prasad Paladugu
This patch adds distro boot commands for qspi, nand and nor. The distro boot commands now reads the script from flash offset of 15.75MB and executes it. Setup default location via script_offset_f to 15.75MB to match the most xilinx reference boards for qspi, nand and set the same using script_offset_nor to 0xE2EC0000 for nor. 256kB allocated space for script size (script_size_f) should be more than enough to cover custom boot logic. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14spi: zynqmp_gqspi: Enable versal compatible stringMichal Simek
Trivial patch. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: versal: Add mini eMMC configurationSiva Durga Prasad Paladugu
This patch adds mini eMMC configuration which has only emmc0 and emmc1 functionalities and can run from small amount of memory. This is required for memory constraint devices. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: versal: Enable different ethernet phy for virt platformMichal Simek
This platform is going to become generic that's why it is necessary also enable different PHY vendors. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: versal: Add new Kconfig SYS_MEM_RSVD_FOR_MMUSiva Durga Prasad Paladugu
This patch adds new config option which is used for reserving a specific memory for MMU Table and in this case we are using TCM for that purpose. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14ARM: zynq: Convert Antminer to OF_SEPARATEMichal Simek
Convert board from OF_EMBED to OF_SEPARATE. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14xilinx: common: Add support for DM_I2C zynq_board_read_rom_ethaddr()Michal Simek
It is much easier to point to eeprom which stores information like MAC address directly via DT. eeprom which contains this information is pointed by /chosen/xlnx,eeprom parameter. For example: chosen { bootargs = "earlycon"; stdout-path = "serial0:115200n8"; + xlnx,eeprom = &eeprom; }; Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14xilinx: Move zynq_board_read_rom_ethaddr to shared locationMichal Simek
Zynq and ZynqMP are sharing similar code and there is no reason to do code duplication. Move zynq_board_read_rom_ethaddr() to common file for easier conversion to DM. Use ZynqMP version that's why also add CONFIG_ZYNQ_EEPROM_BUS to Syzygy which is only one Zynq board which is using this feature. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14arm64: zynqmp: Define distro boot commnads for qspi and nandSiva Durga Prasad Paladugu
This patch adds distro boot commands for qspi and nand. The distro boot commands now reads the script from flash offset of 63.5MB and executes it. Setup default location via script_offset_f to 63.5MB to match the most xilinx reference boards. 512kB allocated space for script size (script_size_f) should be more than enough to cover custom boot logic. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-14ARM: zynq: Run distribution boot commands firstMichal Simek
This patch is doing two things. 1. Exchanging order of boot commands. distro_bootcmd is run first followed by Xilinx boot command. 2. Remove CONFIG_BOOTCOMMAND from configs (and follow mainline) by creating Xilinx distribution bootcommand and wiring it as the last bootcommand. QSPI, NAND distribution boot command will be added later. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-02-13Merge tag 'signed-efi-next' of git://github.com/agraf/u-bootTom Rini
Patch queue for efi - 2019-02-13 Goodness this time around: - HII protocol, finally allows us to run the UEFI Shell! (experimantal, disabled by default) - efi selftest now available on Cortex-M - NVMe support for distro boot - Lots of code cleanup
2019-02-13efi_loader: fix EFI_FILE_PROTOCOL.GetInfo()Heinrich Schuchardt
We check the existence of files with fs_exist(). This function calls fs_close(). If we do not set the active block device again fs_opendir() fails and we do not set the flag EFI_FILE_DIRECTORY. Due to this error the `cd` command in the EFI shell fails. So let's add the missing set_blk_dev(fh) call. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2019-02-13lib: vsprintf: avoid overflow printing UTF16 stringsHeinrich Schuchardt
We have to ensure while printing UTF16 strings that we do not exceed the end of the print buffer. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Alexander Graf <agraf@suse.de>
2019-02-13efi_loader: Make HII a config optionAlexander Graf
Heinrich ran into issues with HII and iPXE which lead to #SErrors on his Odroid-C2 system. We definitely do not want to regress just yet, so let's not expose the HII protocols by default. Instead, let's make it a config option that people can play with This way, we can stabilize the code in tree without breaking any users. Once someone figures out, why this breaks iPXE (probably a NULL dereference), we can enable it by default. Reported-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de> --- v1 -> v2: - Remove HII selftest as well v2 -> v3: - Make config option
2019-02-13arm: Leave smccc calls in .text when efi_loader=nAlexander Graf
Commit 81ea00838c6 ("efi_loader: PSCI reset and shutdown") put the SMCCC assembly code into the efi specific code section. This is wrong when we do not have EFI_LOADER enabled, as that strips efi runtime sections from the output binary Reported-by: Michal Simek <monstr@monstr.eu> Reported-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Tested-by: Michal Simek <monstr@monstr.eu> Fixes: 81ea00838c6 ("efi_loader: PSCI reset and shutdown") Signed-off-by: Alexander Graf <agraf@suse.de>
2019-02-13efi_loader: debug output for HII protocolsHeinrich Schuchardt
For correct indention use EFI_PRINT() instead of debug(). For printing efi_uintn_t or size_t use the %zu or %zx format code. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2019-02-13efi_selftest: fix HII testsHeinrich Schuchardt
efi_st_printf() does not support format code %ld. Anyway the format code for size_t would be %zu which isn't supported either. We do not want any divisions to avoid invalid references to integer arithmetic routines, cf. https://gcc.gnu.org/onlinedocs/gccint/Integer-library-routines.html. As a simple remedy remove the noisy messages from the output. They are not relevant for automated testing. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>