summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-02-16efi_loader: documentation of image loaderHeinrich Schuchardt
- Add missing function descriptions. - Update existing function descriptions to match Sphinx style. - Add lib/efi_loader/efi_image_loader.c to the input files for Sphinx generated documentation. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_loader: clean up bootefi_test_prepare()Heinrich Schuchardt
Free resources upon failure. Correct the function description. As there is no need for any special address in the dummy memory device path passed via the EFI_LOADED_IMAGE_PROTOCOL simply use 0 as address. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_loader: fix EFI entry countingHeinrich Schuchardt
`bootefi selftest` fails on qemu-x86_defconfig if efi_selftest() is not invoked using EFI_CALL(). Likewise we call the entry point of EFI payloads with EFI_CALL(efi_start_image()). entry_count indicates if we are in U-Boot (1) or in EFI payload code (0). As we start in U-Boot code the initial value has to be 1. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_loader: use efi_start_image() for bootefiHeinrich Schuchardt
Remove the duplicate code in efi_do_enter() and use efi_start_image() to start the image invoked by the bootefi command. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_loader: set entry point in efi_load_pe()Heinrich Schuchardt
Up to now efi_load_pe() returns the entry point or NULL in case of an error. This does not allow to return correct error codes from LoadImage(). Let efi_load_pe() return a status code and fill in the entry point in the corresponding field of the image object. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_loader: LoadImage: always allocate new pagesHeinrich Schuchardt
If we want to properly unload images in Exit() the memory should always be allocated in the same way. As we allocate memory when reading from file we should do the same when the original image is in memory. A further patch will be needed to free the memory when Exit() is called. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_loader: error handling in efi_setup_loaded_image()Heinrich Schuchardt
In case of an error we should set the returned pointers to NULL. This ensures that an illegal free does not occur even if the caller calls free() for the handles. If protocols cannot be installed, release all resources. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16test: adjust names of Unicode test functionsHeinrich Schuchardt
In test/py/conftest.py the assumption is made that for if a test is called with `ut unicode` the test function name starts with 'unicode_test_'. As the Unicode tests did not follow this naming scheme they were not executed by `make tests`. Rename the Unicode test functions. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16lib/vsprintf: print '?' for illegal Unicode sequenceHeinrich Schuchardt
Commit 0e66c10a7d80 ("lib: vsprintf: avoid overflow printing UTF16 strings") broke the Unicode unit tests: an illegal UTF16 code point should be printed as '?'. Fixes: 0e66c10a7d80 ("lib: vsprintf: avoid overflow printing UTF16 strings") Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_selftest: LoadImage from file device pathHeinrich Schuchardt
Provide a unit test that calls LoadImage() with a file device path and executes the application via StartImage(). Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_loader: comments for efi_file_from_path()Heinrich Schuchardt
Add more comments for efi_file_from_path(). Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_loader: efi_dp_split_file_path() error handlingHeinrich Schuchardt
If the path passed to efi_dp_split_file_path() does not contain a reference to a file it returns EFI_OUT_OF_RESOURCES. This does not properly indicate the kind of the problem that occurred. Return EFI_INVALID_PARAMETER instead. Update function description. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-16efi_selftest: fix memory allocation in HII testsHeinrich Schuchardt
In efi_selftest we are in EFI land. We cannot call U-Boot library functions malloc() and free() but should use the boot time services instead. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Alexander Graf <agraf@suse.de>
2019-02-16efi_selftest: do not use efi_free_pool()Heinrich Schuchardt
In efi_selftest we are in EFI land. We should not use U-Boot library functions but boot time services for memory management. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Alexander Graf <agraf@suse.de>
2019-02-16Merge tag 'u-boot-imx-2019-02-16' of git://git.denx.de/u-boot-imxTom Rini
u-boot-imx-2019-02-16 --------------------- - vhybrid: add calibration - gw_ventana: fixes - Improve documentation for Secure Boot (HABv4) - Fix Marvell Switch - MX6 Sabre, switch to DM - Fixes for NAND
2019-02-15Merge tag 'xilinx-for-v2019.04-rc2' of git://git.denx.de/u-boot-microblazeTom Rini
Xilinx changes for v2019.04-rc2 xilinx: - Start to use distro boot commands first - Setup fdtfile on ZynqMP - Move mac addr eeprom read to common location - Convert to OF_SEPARATE - Switch all board to DM_I2C - Some DT syncs i2c: - Remove !DM_I2C zynq driver versal: - Enable some more features - Add mini configurations
2019-02-15Merge tag '2019.01-next' of https://github.com/mbgg/u-bootTom Rini
- add compute module 3+ - fix 64 bit warning in bmp command
2019-02-15imx: cpu.c: give access to reset cause in splMax Krummenacher
This makes get_imx_reset_cause() accessible in SPL, but keeps the SRSR register content intact so that U-Boot proper can evaluated the reset_cause again should this be needed. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2019-02-15imx: serial_mxc: disable ri and dcd irq in dte modeMax Krummenacher
If the UART is used in DTE mode the RI and DCD bits in UCR3 become irq enable bits. Both are set to enabled after reset and both likely are pending. Disable the bits to prevent an interrupt storm when Linux enables the UART interrupts. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2019-02-15ARM: dts: i.MX6Q, i.MX6QDL: fix address/size-cells warningsMarcel Ziswiler
This fixes the following warnings: arch/arm/dts/imx6-apalis.dtb: Warning (avoid_unnecessary_addr_size): /clocks: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property arch/arm/dts/imx6-apalis.dtb: Warning (avoid_unnecessary_addr_size): /soc/aips-bus@02100000/mipi@021e0000: unnecessary #address-cells/ #size-cells without "ranges" or child "reg" property arch/arm/dts/imx6-apalis.dtb: Warning (avoid_unnecessary_addr_size): /soc/ipu@02400000/port@2: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property arch/arm/dts/imx6-apalis.dtb: Warning (avoid_unnecessary_addr_size): /soc/ipu@02400000/port@3: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property arch/arm/dts/imx6-apalis.dtb: Warning (avoid_unnecessary_addr_size): /soc/ipu@02800000/port@2: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property arch/arm/dts/imx6-apalis.dtb: Warning (avoid_unnecessary_addr_size): /soc/ipu@02800000/port@3: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2019-02-15imx: ventana: fix usage of dt paths with leading 0s (Linux 4.15+)Tim Harvey
device-tree paths should never be used that reference node addresses making an assumption about leading zeros. They should not be there per the device-tree specification however they have been there until Linux 4.15 when they were removed via kernel commit 8dccafaa281aa1d240a58bbcdff338aec114a021. This fixes various issues which will occur when using Linux 4.15+ that are being fixed up on a per model per PCB revision basis such as: - enabling MMC UHS-I on board revisions that support it - enabling PWM based on hwconfig - fixing PCIe reset on GW552x - removing cpu external watchdog reset on boards that do not support it - populate PCI dt nodes based on PCI scan in order to fix GW16082 interrupt mapping and inject MAC address for PCI based GbE Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: gw5904/gw5909: disable RS485Tim Harvey
The GW5904/GW5909 have a SP33E multi-protocol serial transceiver which we want to configure to RS232 by default (by de-asserting RS485_EN) Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: add support for GW5901/GW5902Tim Harvey
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: add support for GW5909Tim Harvey
The GW5909 is a small single board computer based on the i.MX6DL SoC with the same peripheral set as the GW5904 but with half the DRAM loaded and an additional RS232 transceiver off UART2. Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: add support for GW5908Tim Harvey
The GW5908 is a small single board computer based on the i.MX6DL SoC with the same peripheral set as the GW530x but with 1GiB density DRAM (64bit 512MiB). Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: add support for GW5907Tim Harvey
The GW5907 is a small single board computer based on the i.MX6DL SoC with the following peripheral set: - DDR3 memory (512MB default) - 1x GigE (i.MX6 FEC) - Gateworks System Controller Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: add support for GW5906Tim Harvey
The GW5906 is a GW552x with mechanical and power supply connector differences. Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: add i2c detect for all LVDS displaysTim Harvey
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: skip nand init for nandless boardsTim Harvey
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: add support for Z101WX01 LVDS displayTim Harvey
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: add support for GW5905Tim Harvey
The GW5905 is single-board tablet computer based on the i.MX6 SoC with the following peripheral set: - eMMC flash (boot device) - microSD expansion - LVDS display connector for off-board 3D+1C with PWM backlight and I2C based touch controller - MIPI camera connector supporting the TRULY CM8487-B500SA-E (OV5640) - ublox EMMY-W1 WiFi/Bluetooth/NFC module (SDIO/UART) - ublox ZOE-M8Q GPS - LSM9DS1 9-DOF IMU - 1x 1-lane miniPCIe socket with USB 2.0 - Gateworks System Controller - Audio jack with TLV320AIC Audio Codec, Speaker AMP and TSA227E Headphone detect - MAX8607 3-mode LED camera flash - DECT ULE module - FUSB302 USB-C PD and ISL9238 Battery charger Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: remove setup of I2C3 from SPLTim Harvey
Do not setup I2C3 in the SPL for Ventana as some devices on that bus (aic3x codecs) can hang the bus causing i2c_setup to spin endlessly until they are put into reset. Removing the setup of I2C3 from the SPL allows the board-specific GPIO to be configured to take care of putting codecs in reset prior to U-Boot setting up I2C3. Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: do not iomux UART1Tim Harvey
The only UART that is garunteed on Ventana boards is UART2 (serial-console). Remove UART1 pinmux as that it is not consistent across all Ventana boards and U-Boot doesn't need it. Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15imx: ventana: mv88e61xx change LED configurationTim Harvey
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2019-02-15configs: mx6sabresd: Reduce SPL size by disabling DOS, EXT and EFI supportAbel Vesa
With DM and FIT enabled in SPL, there is an sram overflow. By disabling CONFIG_SPL_DOS_PARTITION, CONFIG_SPL_EXT_SUPPORT and CONFIG_SPL_EFI_PARTITION, we get to keep the 'one binary to fit all' for imx6[q|qp|dl] on sabresd since the final SPL image is now under 64KB. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15board: mx6sabresd: Remove the enet reset gpio handlingAbel Vesa
Rely on the phy-reset-gpios which is set in imx6qdl-sabresd dtsi and get rid of the enet reset gpio handling from the board file. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15board: mx6sabresd: Remove non-DM codeAbel Vesa
Since the mx6sabreauto has DM support, remove the unused non-DM code from mx6sabresd board file. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15configs: mx6sabresd: Add DM_SPI_FLASH necessary configsAbel Vesa
Enable all neceassary configs to support DM_SPI_FLASH on mx6sabresd. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15board: mx6sabreauto: Remove the non-DM codeAbel Vesa
Since the mx6sabreauto has DM support, remove the unused non-DM code from mx6sabreauto board file. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15configs: mx6sabreauto: Add DM_SPI_FLASH necessary configsAbel Vesa
Enable all neceassary configs to support DM_SPI_FLASH on mx6sabreauto. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15mx6sabreauto: Add DM_GPIO supportAbel Vesa
Add the DM_GPIO related config for mx6sabreauto. Also add the gpio request calls. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15mx6sabresd: Add DM_GPIO supportAbel Vesa
Add the DM_GPIO related config for mx6sabresd. Also add the gpio request calls. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15configs: mx6sabresd: Add SPL FIT and DM supportAbel Vesa
Enable all the necessary configs for SPL DM and FIT support for mx6sabresd. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15configs: mx6sabreauto: Add SPL FIT and DM supportAbel Vesa
Enable all the necessary configs for SPL DM and FIT support for mx6sabreauto. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-02-15arm: dts: Update all the dts[i] files for imx6[q|qp|dl] sabre[auto|sd]Abel Vesa
Update all the dts[i] files for imx6[q|qp|dl] sabre[auto|sd] to the ones from kernel v4.20 (commit 8fe28cb58bcb2). Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Lukasz Majewski <lukma@denx.de>
2019-02-15arm: dts: Add all the imx6[q|qp|dl] sabre[auto|sd] u-boot dts[i] filesAbel Vesa
This allows us to keep the basic dts[i] files up-to-date with the ones in kernel, but at the same time allowing the u-boot to add its own properties to the existing nodes. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Lukasz Majewski <lukma@denx.de>
2019-02-15board: mx6sabreauto: Add board_fit_config_name_match to support FIT in SPLAbel Vesa
This matches one of the following three boards (or fails): - imx6q-sabreauto - imx6qp-sabreauto - imx6dl-sabreauto Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Lukasz Majewski <lukma@denx.de>
2019-02-15board: mx6sabresd: Add board_fit_config_name_match to support FIT in SPLAbel Vesa
This matches one of the following three boards (or fails): - imx6q-sabresd - imx6qp-sabresd - imx6dl-sabresd Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Lukasz Majewski <lukma@denx.de>
2019-02-15mmc: fsl_esdhc: Fix DM_REGULATOR ifdefs for SPL buildsAbel Vesa
Since the fsl_esdhc will also be used by SPL, make the preprocessor switches more generic to allow any kind of build. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Lukasz Majewski <lukma@denx.de>
2019-02-15configs: imx6sabreauto: Add DM_USB supportAbel Vesa
Add the DM support for USB. For that, DM_REGULATOR is needed. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>