summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-02-19elf: fix cache flushing in 'bootelf -p' commandKurban Mallachiev
Currently there are two problems in 'bootelf -p' (load elf by segments) command: - bss section is not flushed, so booted elf can have non zero values in bss; - at least on ARM there are 'CACHE: Misaligned operation at range...' warnings Use p_memsz instead of p_filesz during cache flushing for elf segment. p_filesz doesn't include zero initialized memory (e.g. bss section), which also should be flushed. Align these cache flushes to line boundaries. Signed-off-by: Kurban Mallachiev <mallachiev@ispras.ru>
2019-02-19board/BuR/brxre1: convert do DMHannes Schmelzer
This commit converts the brxre1 board to DM, for this we have todo following things: - add a devicetree-file for this board - drop all obsolete settings from board header-file - use dm_i2c_xxx calls for read/write to the resetcontroller - request gpios before operate them Serues-cc: trini@konsulko.com Signed-off-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com>
2019-02-19dm: scsi: report correct device numberHeinrich Schuchardt
Before the patch scsi would report the same device number for all SCSI devices, e.g. Device 0: (1:0) Vendor: ATA Prod.: Crucial_CT128M55 Rev: MU01 Type: Hard Disk Capacity: 122104.3 MB = 119.2 GB (250069680 x 512) Device 0: (1:0) Vendor: ATA Prod.: Rev: Type: Hard Disk Capacity: not available With the patch the same device number is reported as is used in scsi_read(): Device 0: (1:0) Vendor: ATA Prod.: Crucial_CT128M55 Rev: MU01 Type: Hard Disk Capacity: 122104.3 MB = 119.2 GB (250069680 x 512) Device 1: (1:0) Vendor: ATA Prod.: Rev: Type: Hard Disk Capacity: not available Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-02-19tpm: simplify: tpm_set_global_lock()Heinrich Schuchardt
When in pack_byte_string() memcpy() is called for size 0 the source buffer address has no relevance. So we can use NULL here. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2019-02-18Merge branch 'master' of git://git.denx.de/u-boot-socfpgaTom Rini
- Misc Gen5 fixes - stratix10 bugfix - dwmmc bugfix
2019-02-18Prepare v2019.04-rc2Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-02-18configs: Enable CONFIG_BLK in am57xx_evm and am57xx_hs_evmJean-Jacques Hiblot
Enable CONFIG_DM_SCSI and CONFIG_BLK. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2019-02-18configs: k2g_evm: Enable CONFIG_BLKJean-Jacques Hiblot
CONFIG_BLK can be safely enabled as DM_MMC and DM_USB are already enabled. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com> Tested-by: Vignesh R <vigneshr@ti.com>
2019-02-18efi_loader: Swap roles with HeinrichAlexander Graf
Heinrich is going to take over maintainership of the efi_loader tree going forward. To ensure that I will still receive review mails at least, add me as reviewer with a stable email address. Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2019-02-18rpi: Make Matthias maintainerAlexander Graf
Matthias Brugger agreed to take over maintainership from me for the Raspberry Pi tree. Add him to the MAINTAINERS file instead. Signed-off-by: Alexander Graf <agraf@suse.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2019-02-18board/BuR/brppt1: fix ethernet support on brppt1 boardsHannes Schmelzer
The commit 1bac199e8c87 ("configs: Resync with savedefconfig") did remove ethernet driver from following boards defconfig: - brppt1_mmc - brppt1_nand - brppt1_spi With this commit we add ethernet and responsible phy support again. Signed-off-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com>
2019-02-18Merge tag 'efi-2019-04-rc2' of https://github.com/xypron2/u-bootTom Rini
The patches fix multiple errors. Mentionable are: - EFI unit tests (bootefi selftest) can run on i386. - `make tests` executes the Unicode unit tests. The LoadImage patch is preparing for further rework to be delivered in v2019.07.
2019-02-18ARM: socfpga: stratix10: Return valid error code from FPGA driverAng, Chee Hong
This patch prevent the Stratix 10 FPGA driver incorrectly return the transaction ID as the mailbox error code. It should always return the actual mailbox error code from SDM firmware. Signed-off-by: Ang, Chee Hong <chee.hong.ang@intel.com>
2019-02-18mmc: dwmmc: Poll for iDMAC TX/RX interruptLey Foon Tan
Poll for iDMAC TX/RX interrupt before disable DMA. This to prevent disable DMA before data is transfer completed. Signed-off-by: Ley Foon Tan <ley.foon.tan@intel.com>
2019-02-18arm: socfpga: gen5: remove hacked ETH RST handlingSimon Goldschmidt
The 'dwmac_socfpga' ETH driver can now get the MACs out of reset via the socfpga reset driver and can set PHY mode via syscon. This means we can now remove the ad-hoc code to do this from arch/arm/mach-socfpga. Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2019-02-18arm: socfpga: gen5 enable designware_socfpgaSimon Goldschmidt
Enable the socfpga specific designware ethernet driver by default for socfpga by implying it when enabling CONFIG_ETH_DESIGNWARE for a MACH_SOCFPGA config. This is required to remove the hacky reset and phy mode handling in arch/arm/mach-socfpga. Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2019-02-18net: designware: socfpga: adapt to Gen5Simon Goldschmidt
This driver was written for Arria10, but it applies to Gen5, too. The main difference is that Gen5 has 2 MACs (Arria10 has 3) and the syscon bits are encoded in the same register, thus an offset is needed. This offset is already read from the devicetree, but for Arria10 it is always 0, which is probably why it has been ignored. By using this offset when writing the phy mode into the syscon regiter, we can use this driver to set the phy mode for both of the MACs on Gen5. Since the PHY mode bits in sysmgr are the same even for Stratix10, let's drop the detection of the sub-mach by checking compatible version and just use the same code for all FPGAs. To work correctly, this driver depends on SYSCON and REGMAP, so select those via Kconfig when it is enabeld. Tested on socfpga_socrates (where the 2nd MAC is connected, so a shift offset is required). Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2019-02-16Merge tag 'video-for-2019.04-rc2' of git://git.denx.de/u-boot-videoTom Rini
- sunxi display DDC probe fallback - support 24bpp BMP files on 16bpp displays
2019-02-16Merge branch 'master' of git://git.denx.de/u-boot-shTom Rini
- Various MMC fixes
2019-02-16mmc: tmio: sdhi: Configure DT2FF register for HS400 modeMarek Vasut
The DT2FF register must be configured differently for HS400 mode and for HS200/SDR104 mode. Configure the DT2FF register according to the recommended datasheet settings for each mode. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
2019-02-16mmc: tmio: Configure HOST_MODE WMODE according to bus widthMarek Vasut
Set the HOST_MODE register WMODE bit according to the SDHI bus width, that is 0 for 64bit bus and 1 for 16/32bit bus. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
2019-02-16mmc: Downgrade SD/MMC from UHS/HS200/HS400 modes before bootMarek Vasut
Older kernel versions or systems which do not connect eMMC reset line properly may not be able to handle situations where either the eMMC is left in HS200/HS400 mode or SD card in UHS modes by the bootloader and may misbehave. Downgrade the eMMC to HS/HS52 mode and/or SD card to non-UHS mode before booting the kernel to allow such older kernels to work with modern U-Boot. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Tom Rini <trini@konsulko.com>
2019-02-16efi_loader: do not miss last relocation blockHeinrich Schuchardt
If the last block in the relocation table contains only a single relocation, the current coding ignores it. Fix the determination of the end of the relocation table. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
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>