summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-06-11ARM: dts: imx: dh-imx6: Import DHCOM iMX6 PDK2 DTs from LinuxMarek Vasut
Import DHCOM iMX6 PDK2 device tree from Linux 5.1.1 b724e9356404 . Enable DT control in full U-Boot . Signed-off-by: Marek Vasut <marex@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Ludwig Zenz <lzenz@dh-electronics.com> Cc: Stefano Babic <sbabic@denx.de>
2019-06-11Revert "drivers/crypto/fsl: assign job-rings to non-TrustZone"Breno Matheus Lima
Commit 22191ac35344 ("drivers/crypto/fsl: assign job-rings to non-TrustZone") breaks HABv4 encrypted boot support in the following i.MX devices: - i.MX6UL - i.MX7S - i.MX7D - i.MX7ULP For preparing a HABv4 encrypted boot image it's necessary to encapsulate the generated DEK in a blob. In devices listed above the blob generation function takes into consideration the Job Ring TrustZone ownership configuration (JROWN_NS) and can be only decapsulated by the same configuration. The ROM code expects DEK blobs encapsulated by the Secure World environments which commonly have JROWN_NS = 0. As U-Boot is running in Secure World we must have JROWN_NS = 0 so the blobs generated by dek_blob tool can be decapsulated by the ROM code. Job-rings assignment is now handled in OP-TEE OS, this commit can be safely reverted. https://github.com/OP-TEE/optee_os/pull/2986 This reverts commit 22191ac353445ad8fafc5a78aefcd94e78963041. Signed-off-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com> Acked-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
2019-06-11config: Update KP's imx53 HSC config to pass key pressed informationLukasz Majewski
The information about pressed key is relevant in performing correct update and recovery scenarios via USB pendrive. This commit modifies envs to provide it. Signed-off-by: Lukasz Majewski <lukma@denx.de>
2019-06-11config: Update KP's imx53 HSC config to support SWUpdateLukasz Majewski
This commit updates envs responsible for using USB pendrive as a SWUpdate based tool for recovery and update. Signed-off-by: Lukasz Majewski <lukma@denx.de>
2019-06-11imx: Use a convenient default value for SYS_MALLOC_F_LENFabio Estevam
Commit 3a7c45f6a772 ("simple-bus: add DM_FLAG_PRE_RELOC flag to simple-bus driver") causes some i.MX boards that were converted to DM, such as warp7, to fail to boot. As explained by Lukas Auer: "With the patch, U-Boot probes the drivers for devices under simple-bus device tree nodes in the pre-relocation device model. The default value of CONFIG_SYS_MALLOC_F_LEN (0x400) leaves U-Boot with not enough memory to do this, causing it to hang." Fix this problem by providing a convenient default value for CONFIG_SYS_MALLOC_F_LEN. Reported-by: Pierre-Jean Texier <pjtexier@koncepto.io> Suggested-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Signed-off-by: Fabio Estevam <festevam@gmail.com> Tested-by: Pierre-Jean Texier <pjtexier@koncepto.io> Tested-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Reviewed-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by: Peng Fan <peng.fan@nxp.com> Tested-by: Heiko Schocher <hs@denx.de>
2019-06-11opos6uldev: don't call enable_lcdif_clockSébastien Szymanski
The mxsfb driver already calls enable_lcdif_clock. Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-06-11opos6ul: set REFSEL and REFR fieldsSébastien Szymanski
Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
2019-06-11imx: hab: Increase CSF_SIZE for i.MX6 and i.MX7 devicesBreno Matheus Lima
In certain i.MX devices the encrypted boot image is failing to boot. According to AN12056 "Encrypted Boot on HABv4 and CAAM Enabled Devices" it's necessary to pad CSF to 0x2000 and append DEK blob. In this case the total image size in boot data structure must cover the entire binary otherwise the dek_blob won't be copied to memory and image won't be decrypted. Increase CSF_SIZE to 0x4000 to avoid such issue when booting encrypted boot images. Signed-off-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-06-11colibri-imx6ull: fix usb host modeMarcel Ziswiler
This fixes an issue with USB host mode. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2019-06-11ARM: imx: apalis_imx6: Drop ad-hoc SATA bindingMarek Vasut
Drop the ad-hoc AHCI binding code, this is superseded by CONFIG_DWC_AHSATA_AHCI=y resp. drivers/ata/dwc_ahsata.c Signed-off-by: Marek Vasut <marex@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Marcel Ziswiler <marcel.ziswiler@toradex.com> Cc: Max Krummenacher <max.krummenacher@toradex.com> Cc: Stefan Agner <stefan.agner@toradex.com> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2019-06-11regulator: bd71837: copy the bd71837 pmic driver from NXP imx u-bootMatti Vaittinen
https://source.codeaurora.org/external/imx/uboot-imx cherry picked, styled and merged commits: - MLK-18387 pmic: Add pmic driver for BD71837: e9a3bec2e95a - MLK-18590 pmic: bd71837: Change to use new fdt API: acdc5c297a96 Signed-off-by: Ye Li <ye.li@nxp.com> Signed-off-by: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2019-06-11colibri_imx7: migrate usb to driver modelIgor Opaniuk
Migrate USB to Driver Model (CONFIG_DM_USB=y). Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2019-06-11configs: imx6-engicam: Update the recoveryboot settingJagan Teki
Since recovery boot on mmc can get the mmcpart and mmcroot dynamically, drop the static definitions and handle it properly. Tested-by: Shyam Saini <shyam.saini@amarulasolutions.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-11toradex apalis/colibri: extend CONFIG_SYS_MALLOC_F_LENIgor Opaniuk
Extend size of the malloc() pool for use before relocation, from 0x400 (default one) to 0x2000 (CONFIG_SYS_MALLOC_F_LEN=0x2000), as adding of DM_FLAG_PRE_RELOC flag to simple-bus driver introduced a regression on multiple boards, because of more intensive usage of malloc() pool and therefore a broken boot as the size of pool isn't sufficient. Fixes: 3a7c45f6a7 ("simple-bus: add DM_FLAG_PRE_RELOC flag to simple-bus") Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2019-06-11apalis_imx6: add device tree to makefileMarcel Ziswiler
Add device tree to Makefile to avoid newly introduced error: Device Tree Source is not correctly specified. Please define 'CONFIG_DEFAULT_DEVICE_TREE' or build with 'DEVICE_TREE=<device_tree>' argument make[1]: *** [dts/Makefile:28: arch/arm/dts/imx6-apalis.dtb] Error 1 make: *** [Makefile:1009: dts/dt.dtb] Error 2 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2019-06-11apalis/colibri imx6: provide proper fdtfile valueIgor Opaniuk
Provide proper fdtfile env variable value before invoking distro_bootcmd command. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2019-06-11ARM: dts: i.MX6ULL: U-Boot specific dts for u-boot, dm-splParthiban Nallathambi
u-boot,dm-spl property is specific to U-Boot, so created one for i.MX6ULL platforms. Signed-off-by: Parthiban Nallathambi <parthitce@gmail.com>
2019-06-11power: pfuze100: Fix off by one error in voltage table handlingTrent Piepho
The code that sets a regulator by looking up the voltage in a table had an off by one error. vsel_mask is a bitmask, not the number of table entries, so a vsel_mask value of 0x7 indicates there are 8, not 7, entries in the table. Cc: Peng Fan <Peng.Fan@freescale.com> Cc: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Trent Piepho <tpiepho@impinj.com>
2019-06-11mx7ulp: Add common plugin codes for mx7ulpYe Li
Add common plugin codes to call ROM's hwcnfg_setup and generate IVT2 header. Signed-off-by: Ye Li <ye.li@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-06-11board: toradex: add colibri imx8qxp 2gb wb it v1.0b module supportMarcel Ziswiler
This commit adds initial support for the Toradex Colibri iMX8QXP 2GB WB IT V1.0B module. Unlike the V1.0A early access samples exclusively booting from SD card, they are now strapped to boot from eFuses which are factory fused to properly boot from their on-module eMMC. U-Boot supports either booting from the on-module eMMC or may be used for recovery purpose using the universal update utility (uuu) aka mfgtools 3.0. Functionality wise the following is known to be working: - eMMC and MMC/SD card - Ethernet - GPIOs - I2C Unfortunately, there is no USB functionality for the i.MX 8QXP as of yet. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2019-06-11imx: fix building for i.mx8 without splMarcel Ziswiler
Building with Travis CI complained and stopped with the following error: +cc1: fatal error: opening output file spl/u-boot-spl.cfgout: No such file or directory +compilation terminated. This fixes commit caceb739ea07 ("imx: build flash.bin for i.MX8") which took SPL being enabled on i.MX8 for granted. Reported-by: Stefano Babic <sbabic@denx.de> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2019-06-11ARM: imx6logic: Stop overwriting fdt_file if manually setAdam Ford
The board file uses the processor type to determine what dtb file is set. Unfortunately, if the user wants to manually set this, it get gets overwritten upon boot. This patch adds a check to see if the value is already set and only changes it if the value is empty. Signed-off-by: Adam Ford <aford173@gmail.com>
2019-06-10Prepare v2019.07-rc4Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-06-10efi_loader: implement event queueHeinrich Schuchardt
Up to now we have only been using a flag queued for events. But this does not satisfy the requirements of the UEFI spec. Events must be notified in the sequence of decreasing TPL level and within a TPL level in the sequence of signaling. Implement a queue for signaled events. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-06-10efi_selftest: correct event group testHeinrich Schuchardt
If any member of the event group is signaled, all members must be set to signaled and their notification functions have to be queued. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-06-10efi_loader: event signaling in ExitBootServicesHeinrich Schuchardt
ExitBootServices() has to stop timer related activity before calling the events of the EFI_EVENT_GROUP_EXIT_BOOT_SERVICES event group. But our current implementation was stopping all other events. All events have to observe the task priority level. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-06-10efi_loader: SignalEvent for event in signaled stateHeinrich Schuchardt
If an event is already in the signaled state, SignalEvent should not queue the notification function but simply return EFI_SUCCESS. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-06-10efi_loader: RegisterProtocolNotify event signalingHeinrich Schuchardt
In a following patch efi_signal_event() will only queue an event if it is not signaled. Set the is_signaled status to false before signaling the event. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-06-10Merge branch 'master' of git://git.denx.de/u-boot-spiTom Rini
- mpc8xxx spi driver fixes (Mario) - mpc8xxx spi dm conversion (Mario, Jagan) - SPI DM Migration update (Jagan)
2019-06-10Merge tag 'video-updates-for-2019.07-rc3' of git://git.denx.de/u-boot-videoTom Rini
- mxsfb DM_VIDEO conversion - splash fix for DM_VIDEO configurations - meson HDMI fix for boards without hdmi-supply regulator
2019-06-10Merge tag 'u-boot-atmel-fixes-2019.07-a' of git://git.denx.de/u-boot-atmelTom Rini
First set of u-boot-atmel fixes for 2019.07 cycle
2019-06-10dm: MIGRATION: Update migration status for SPIJagan Teki
Now, we have few driver are fully converted into dm and few are partially converted. So, update the migration status accordingly. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Convert to DMJagan Teki
Support DM in the MPC8xxx SPI driver, and remove the legacy SPI interface. Signed-off-by: Mario Six <mario.six@gdsys.cc> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Use get_timerMario Six
The comment before the transmission loop in conjunction with the definition of SPI_TIMEOUT as 1000 implies that the loop is supposed to have a timeout value of 1000 ms. But since there is no mdelay(1) or similar in the loop body, the loop just runs 1000 times, without regard for the time elapsed. To correct this, use the standard get_timer functionality to properly time out the loop after 1000 ms. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Fix if checkMario Six
Decreasing the bit length and increasing the write data pointer should be done when there are more than 32 bit of data, not 16 bit. This did not produce incorrect behavior, because the only time where the two checks produce different outcomes is the case of 16 < bitlen < 32, and in this case the subsequent transmission is the last one regardless, hence the additional bit length decrease and write data pointer increase has no effect anyway. Still, the correct check is the check for "bitlen > 32", so correct this behavior. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Re-order transfer setupMario Six
Minize the time the adapter is disabled (via SPI_MODE_EN clearing/setting) to just the character length setting, and only set up the temporary data writing variable right before we need it, so there is a more clear distinction between setting up the SPI adapter, and setting up the data to be written. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Document LEN setting betterMario Six
Instead of having a table right before the code implementing the length setting for documentation, have inline comments for the if branches actually implementing the length setting described table's entries (which is readable thanks to the set_char_len function). Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Rename variableMario Six
The variable "char_size" holds the number of bits to be transferred in the current loop iteration. A better name would be "xfer_bitlen", which we rename this variable to. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Make code more readableMario Six
Introduce the to_prescale_mod and set_char_len inline functions to make the code more readable. Note that the added "if (bitlen > 16)" check does not change the semantics of the current code, and hence only preserves the current error (this will be fixed in a later patch in the series). Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Reduce scope of loop variablesMario Six
The transmission loop starts with setting some variables, which are only used inside the loop. Reduce the scope to the loop to make the declaration and initialization of these variables coincide. In the case of char_size this also always initializes the variable immediately with the final value actually used in the loop (instead of the placeholder value 32). Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Simplify logic a bitMario Six
We do nothing in the loop if the "not empty" event was not detected. To simplify the logic, check if this is the case, and skip the execution of the loop early to reduce the nesting level and flag checking. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Get rid of is_readMario Six
Get rid of the is_read variable, and just keep the state of the "not empty" and "not full" events in two boolean variables within the loop body. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Simplify ifMario Six
Instead of having a nested if block, just have two branches within the overarching if block to eliminate one nesting level. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Use IO accessorsMario Six
Accesses to the register map are currently done by directly reading and writing the structure. Switch to the appropriate IO accessors instead. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Replace defines with enumsMario Six
Replace pre-processor defines with proper enums, and use the BIT macro where applicable. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Fix function names in stringsMario Six
Replace the function name with a "%s" format string and the __func__ variable in debug statements (as proposed by checkpatch). Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Fix space after castMario Six
Fix all "superfluous space after case" style errors. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Rename camel-case variablesMario Six
There are three variables that have camel-case names, which is not the preferred naming style. Give those variables more compliant names instead. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Fix commentsMario Six
There are some comments on the same line as the code they document. Put comments above the code lines they document, so the line length is not unnecessarily increased. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-06-10spi: mpc8xxx: Use short type namesMario Six
The function signatures in the driver are quite long as is. Use short type names (uint etc.) to make them more readable. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>