oweals/u-boot.git
6 years agoconfigs: Migrate CONFIG_NR_DRAM_BANKS
Tom Rini [Thu, 16 Aug 2018 12:16:24 +0000 (08:16 -0400)]
configs: Migrate CONFIG_NR_DRAM_BANKS

We have the following cases:
- CONFIG_NR_DRAM_BANKS was defined, migrate normally
- CONFIG_NR_DRAM_BANKS_MAX was defined and then used for
  CONFIG_NR_DRAM_BANKS after a check, just migrate it over now.
- CONFIG_NR_DRAM_BANKS was very oddly defined on p2771-0000-* (to 1024 +
  2), set this to 8.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoKconfig: Migrate CONFIG_NR_DRAM_BANKS
Ramon Fried [Mon, 13 Aug 2018 22:00:04 +0000 (01:00 +0300)]
Kconfig: Migrate CONFIG_NR_DRAM_BANKS

Move CONFIG_NR_DRAM_BANKS from headers to Kconfig.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
6 years agofdt_support: Use CONFIG_NR_DRAM_BANKS if necessary
Ramon Fried [Mon, 13 Aug 2018 21:35:42 +0000 (00:35 +0300)]
fdt_support: Use CONFIG_NR_DRAM_BANKS if necessary

If CONFIG_NR_DRAM_BANKS is bigger than the default
value (4) define MEMORY_BANKS_MAX as CONFIG_NR_DRAM_BANKS.

Fixes: 2a1f4f1758b5 ("Revert "fdt_support: Use CONFIG_NR_DRAM_BANKS if defined"")
Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
6 years agoCONFIG_SYS_GENERIC_BOARD: Finish migration
Tom Rini [Thu, 16 Aug 2018 20:44:19 +0000 (16:44 -0400)]
CONFIG_SYS_GENERIC_BOARD: Finish migration

While we have long since migrated to CONFIG_SYS_GENERIC_BOARD being
enabled, we had just a few places left that still referenced or defined
it.  Update.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoPrepare v2018.09-rc2 v2018.09-rc2
Tom Rini [Tue, 14 Aug 2018 01:20:57 +0000 (21:20 -0400)]
Prepare v2018.09-rc2

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoconfigs: Resync with savedefconfig
Tom Rini [Tue, 14 Aug 2018 00:05:58 +0000 (20:05 -0400)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoMAINTAINERS: Update STM32MP fragments
Patrice Chotard [Mon, 6 Aug 2018 09:52:23 +0000 (11:52 +0200)]
MAINTAINERS: Update STM32MP fragments

Add new drivers
Add Christophe Kerello and myself as maintainers

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoARM: dts: stm32f4: Fix DT dtc warnings
Patrick Delaunay [Mon, 6 Aug 2018 09:25:42 +0000 (11:25 +0200)]
ARM: dts: stm32f4: Fix DT dtc warnings

This patch fix the following warnings for for stm32f429
evaluation and discovery boards:

unnecessary #address-cells/#size-cells without "ranges" or
child "reg" property

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoARM: dts: stm32mp157: Add ADC DT node
Patrice Chotard [Mon, 6 Aug 2018 07:54:04 +0000 (09:54 +0200)]
ARM: dts: stm32mp157: Add ADC DT node

Add ADC device tree node. This allows to get analog conversions on
stm32mp157.

Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoARM: dts: stm32: remove cd-inverted for stm32f746-disco
Patrice Chotard [Mon, 6 Aug 2018 07:38:18 +0000 (09:38 +0200)]
ARM: dts: stm32: remove cd-inverted for stm32f746-disco

As cd-inverted property is no more used by arm_pl180_mmci driver,
remove it. Update cd-gpios active level accordingly.

Reported-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoARM: dts: stm32: remove cd-inverted for stm32f769-disco
Patrice Chotard [Mon, 6 Aug 2018 07:38:17 +0000 (09:38 +0200)]
ARM: dts: stm32: remove cd-inverted for stm32f769-disco

As cd-inverted property is no more used by arm_pl180_mmci driver,
remove it. Update cd-gpios active level accordingly.

Reported-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoARM: omap3: evm: Enable CONFIG_BLK and misc. cleanup
Derald D. Woods [Mon, 6 Aug 2018 04:51:31 +0000 (23:51 -0500)]
ARM: omap3: evm: Enable CONFIG_BLK and misc. cleanup

This commit enables CONFIG_BLK and removes USB_STORAGE which is awaiting
proper implementation for current U-Boot interfaces. Additionally the
console selection is now handled by Kconfig and no longer needs to be in
the config header. CONFIG_SYS_MALLOC_F_LEN=0x2000 was added to sync with
other boards. CONFIG_SPL_BLK and CONFIG_SPL_DM_MMC are disabled because
they currently do not allow the OMAP3-EVM (OMAP34XX) to actually boot.

Signed-off-by: Derald D. Woods <woods.technical@gmail.com>
6 years agotpm: sandbox: fix wrong assignment with a simplification
Miquel Raynal [Sun, 5 Aug 2018 16:53:07 +0000 (18:53 +0200)]
tpm: sandbox: fix wrong assignment with a simplification

The recv variable in sandbox_tpm2_fill_buf() is a pointer on a pointer
of a char array. It means accessing *recv is the char array pointer
itself while **recv is the first character of that array. There is no
need for such indirection here, so simplify the code.

Simplifying things will make the last assignment right: "*recv = NULL"
is now correct. The issue has been found by the following Coverity
Scan report:

    CID 183371:  Incorrect expression  (UNUSED_VALUE)
    Assigning value "4UL" to "*recv" here, but that stored value is overwritten before it can be used.
    232             *recv += sizeof(rc);
    233
    234             /* Add trailing \0 */
    235             *recv = NULL;

While at simplifying things, use '\0' instead of NULL when adding an
empty char at the end of the buffer.

Reported-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agotpm: sandbox: fix wrong check on pcr_map
Miquel Raynal [Sun, 5 Aug 2018 16:53:06 +0000 (18:53 +0200)]
tpm: sandbox: fix wrong check on pcr_map

The second check on pcr_map in sandbox_tpm2_xfer() is wrong. It should
check for pcr_map not being empty. Instead, it is a pure copy/paste of
the first check which is redundant.

This has been found thanks to a Coverity Scan report:

    CID 183370:  Memory - illegal accesses  (UNINIT)
    Using uninitialized value "pcr_index".
        put_unaligned_be32(tpm->pcr_extensions[pcr_index], recv);

This is because pcr_index is initialized only if the user input is
correct, ie. at least one valid bit is set in pcr_map.

Fix the second check and also initialize pcr_index to 0 (which is
harmless in case of error) to make Coverity Scan happy.

Reported-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoMAINTAINERS: Add more sources to Arch Snapdragon
Ramon Fried [Fri, 3 Aug 2018 17:56:27 +0000 (20:56 +0300)]
MAINTAINERS: Add more sources to Arch Snapdragon

Add scattered driver files around the source tree
that belongs to Snapdragon arch. Not sure why they
were not included in the first place.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
6 years agodb410c: add FIT support
Ramon Fried [Fri, 3 Aug 2018 13:31:02 +0000 (16:31 +0300)]
db410c: add FIT support

1. Add FIT support for DB410c defconfig.
2. Don't overwrite bootargs (they're already
   defined in Linux device tree for DB410c.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
6 years agodb410: alter WLAN/BT MAC address fixup
Ramon Fried [Fri, 3 Aug 2018 13:25:37 +0000 (16:25 +0300)]
db410: alter WLAN/BT MAC address fixup

Change the way MAC address fixup is done:
1. Stop using LK handed device-tree and calculate
   the MAC address our own.
2. Allow overriding the generated MACS with environment variables:
   "wlanaddr" and  "btaddr".

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
6 years agosnapdragon: added MAC generation functions
Ramon Fried [Fri, 3 Aug 2018 13:25:36 +0000 (16:25 +0300)]
snapdragon: added MAC generation functions

Add support for generation of unique MAC address
that is derived from board serial.
Algorithm for generation of MAC taken from LK.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
6 years agosnapdragon: added msm_board_serial() func
Ramon Fried [Fri, 3 Aug 2018 13:25:35 +0000 (16:25 +0300)]
snapdragon: added msm_board_serial() func

This commit adds a function to get the board
serial number.
In snapdragon it's actually the eMMC serial number.

Function added in a new file misc.c that will
include further snapdragon miscellaneous functions.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
6 years agostm32f7: board: Fix memory init
Patrice Chotard [Fri, 3 Aug 2018 11:09:55 +0000 (13:09 +0200)]
stm32f7: board: Fix memory init

Commit 1473b12ad0b3 ("lib: fdtdec: Update ram_base to store ram start
adddress") brings regression on STM32F7 which can't boot.

Use fdtdec_setup_mem_size_base() to setup memory base and size.
Use fdtdec_setup_memory_banksize() to setup memory bank base and size.

Reported-by: Mark Olsson <mark@markolsson.se>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Cc: Mark Olsson <mark@markolsson.se>
Reviewed-by: Vikas Manocha <vikas.manocha@st.com>
6 years agoconfigs: stm32f429-evaluation: Add DISTRO_DEFAULT support
Patrice Chotard [Fri, 3 Aug 2018 09:46:21 +0000 (11:46 +0200)]
configs: stm32f429-evaluation: Add DISTRO_DEFAULT support

Add DISTRO_DEFAULT support to be able to boot on mmc
by default on boot.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32f469-discovery: Add DISTRO_DEFAULT support
Patrice Chotard [Fri, 3 Aug 2018 09:46:20 +0000 (11:46 +0200)]
configs: stm32f469-discovery: Add DISTRO_DEFAULT support

Add DISTRO_DEFAULT support to be able to boot on mmc
by default on boot.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32h743-discovery: Add DISTRO_DEFAULT support
Patrice Chotard [Fri, 3 Aug 2018 09:46:19 +0000 (11:46 +0200)]
configs: stm32h743-discovery: Add DISTRO_DEFAULT support

Add DISTRO_DEFAULT support to be able to boot on
mmc by default on boot.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32h743-evaluation: Add DISTRO_DEFAULT support
Patrice Chotard [Fri, 3 Aug 2018 09:46:18 +0000 (11:46 +0200)]
configs: stm32h743-evaluation: Add DISTRO_DEFAULT support

Add DISTRO_DEFAULT support to be able to boot on mmc
by default on boot.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32f4xx: Remove CONFIG_SYS_RAM_FREQ_DIV
Patrice Chotard [Fri, 3 Aug 2018 09:46:17 +0000 (11:46 +0200)]
configs: stm32f4xx: Remove CONFIG_SYS_RAM_FREQ_DIV

Since commit bfea69ad2793 ("stm32f7: sdram: correct sdram
configuration as per micron sdram"), CONFIG_SYS_RAM_FREQ_DIV
flag is no more used, remove it.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32h7xx: Migrate CONFIG_CMD_CACHE to defconfig
Patrice Chotard [Fri, 3 Aug 2018 09:46:16 +0000 (11:46 +0200)]
configs: stm32h7xx: Migrate CONFIG_CMD_CACHE to defconfig

Remove CONFIG_CMD_CACHE from include/configs/stm32h7xx.h
and enable it in stm32h7xx_defconfig

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32f746-disco: Migrate CONFIG_CMD_CACHE to defconfig
Patrice Chotard [Fri, 3 Aug 2018 09:46:15 +0000 (11:46 +0200)]
configs: stm32f746-disco: Migrate CONFIG_CMD_CACHE to defconfig

Remove CONFIG_CMD_CACHE from include/configs/stm32f746-disco.h
and enable it in stm32f746-disco_defconfig

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32f4xx: Enable ICACHE and DCACHE
Patrice Chotard [Fri, 3 Aug 2018 09:46:14 +0000 (11:46 +0200)]
configs: stm32f4xx: Enable ICACHE and DCACHE

Enable instruction and data caches.
Fix boot_sd command as since commit d409c962169b ("armv7m: disable
 icache before linux booting"), instruction cache is automatically
disable before linux booting. "icache off" from boot_sd command
becomes useless, remove it.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32f429-disco: Remove CONFIG_SYS_RAM_CS
Patrice Chotard [Fri, 3 Aug 2018 09:46:13 +0000 (11:46 +0200)]
configs: stm32f429-disco: Remove CONFIG_SYS_RAM_CS

This flag is not used, remove it.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32fxxx: Remove CONFIG_SYS_CLK_FREQ
Patrice Chotard [Fri, 3 Aug 2018 09:46:12 +0000 (11:46 +0200)]
configs: stm32fxxx: Remove CONFIG_SYS_CLK_FREQ

Since commit aa5e3e22f4d6 ("board: stm32: switch to DM STM32 timer")
SYS_CLK_FREQ is useless, remove it from stm32f4 and stm32f7 boards.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoboard: stm32: use bi_dram[0].start instead of hardcoded value
Patrice Chotard [Fri, 3 Aug 2018 09:46:11 +0000 (11:46 +0200)]
board: stm32: use bi_dram[0].start instead of hardcoded value

Use gd->bd->bi_dram[0].start initialized from DT instead of using
hardcoded CONFIG_SYS_SDRAM_BASE from config file.

Remove unused CONFIG_SYS_RAM_BASE and CONFIG_SYS_SDRAM_BASE defines.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoclk: at91: utmi: add timeout for utmi lock
Eugen Hristev [Fri, 3 Aug 2018 09:10:49 +0000 (12:10 +0300)]
clk: at91: utmi: add timeout for utmi lock

In case the slow clock is not properly configured, the UTMI clock
cannot lock the PLL, because UPLLCOUNT will "wait X slow clock cycles".
In this case U-boot will loop indefinitely.
Added a timeout in this case, to start U-boot even if UTMI clock is
not enabled, so the user can use different media if needed, or investigate.

Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
6 years agoarm: bcm7445: Move config defines to bcm7445.h
Thomas Fitzsimmons [Fri, 27 Jul 2018 03:02:47 +0000 (23:02 -0400)]
arm: bcm7445: Move config defines to bcm7445.h

Move some configuration #defines that do not apply to other bcmstb
boards from bcmstb.h to bcm7445.h.

Signed-off-by: Thomas Fitzsimmons <fitzsim@fitzsim.org>
6 years agoarm: bcm7445: Fix parallel make race condition
Thomas Fitzsimmons [Fri, 27 Jul 2018 02:55:37 +0000 (22:55 -0400)]
arm: bcm7445: Fix parallel make race condition

Move the contents of prior_stage.h into bcmstb.h to prevent a build
failure when bcmstb.h is #include'ed before the asm/arch symbolic link
is present.

Signed-off-by: Thomas Fitzsimmons <fitzsim@fitzsim.org>
6 years agorsa: Fix LibreSSL before v2.7.0
Caliph Nomble [Thu, 26 Jul 2018 02:13:03 +0000 (22:13 -0400)]
rsa: Fix LibreSSL before v2.7.0

Fix LibreSSL compilation for versions before v2.7.0.

Signed-off-by: Caliph Nomble <nomble@palism.com>
Reviewed-by: Jonathan Gray <jsg@jsg.id.au>
6 years agofs: fix typo 'dumm'
Heinrich Schuchardt [Sat, 11 Aug 2018 13:52:14 +0000 (15:52 +0200)]
fs: fix typo 'dumm'

%s/dumm /dummy /

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agoavb2.0: add get_size_of_partition()
Igor Opaniuk [Fri, 10 Aug 2018 13:59:59 +0000 (16:59 +0300)]
avb2.0: add get_size_of_partition()

Implement get_size_of_partition() operation,
which is required by the latest upstream libavb [1].

[1] https://android.googlesource.com/platform/external/avb/+/android-p-preview-5

Signed-off-by: Igor Opaniuk <igor.opaniuk@linaro.org>
Acked-by: Andrew F. Davis <afd@ti.com>
Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org>
6 years agoMerge git://git.denx.de/u-boot-fsl-qoriq
Tom Rini [Mon, 13 Aug 2018 16:34:55 +0000 (12:34 -0400)]
Merge git://git.denx.de/u-boot-fsl-qoriq

6 years agoMerge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging
Tom Rini [Sat, 11 Aug 2018 23:49:29 +0000 (19:49 -0400)]
Merge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging

6 years agoMerge branch 'master' of git://git.denx.de/u-boot-video
Tom Rini [Sat, 11 Aug 2018 23:48:13 +0000 (19:48 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-video

6 years agomisc: Add gdsys_ioep driver
Mario Six [Tue, 31 Jul 2018 12:24:15 +0000 (14:24 +0200)]
misc: Add gdsys_ioep driver

Add driver for the IHS IO endpoint on IHS FPGAs.

Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agotest: Add tests for misc uclass
Mario Six [Tue, 31 Jul 2018 12:24:14 +0000 (14:24 +0200)]
test: Add tests for misc uclass

Add a set of tests for the misc uclass.

Signed-off-by: Mario Six <mario.six@gdsys.cc>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agomisc: uclass: Add enable/disable function
Mario Six [Tue, 31 Jul 2018 12:24:13 +0000 (14:24 +0200)]
misc: uclass: Add enable/disable function

Add generic enable/disable function to the misc uclass.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agomisc: docs: Fix comments in misc.h
Mario Six [Tue, 31 Jul 2018 12:24:12 +0000 (14:24 +0200)]
misc: docs: Fix comments in misc.h

The comments in misc.h are not in kernel-doc format. Correct the format.

Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agovideo_display: Add Xilinx LogiCore DP TX
Mario Six [Thu, 9 Aug 2018 12:51:23 +0000 (14:51 +0200)]
video_display: Add Xilinx LogiCore DP TX

Add a driver for the Xilinx LogiCORE DisplayPort IP core, which is a
pure DP transmitter core for Xiling FPGA (no display capabilities).

Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agovideo: Sort Makefile entries
Mario Six [Thu, 9 Aug 2018 12:51:22 +0000 (14:51 +0200)]
video: Sort Makefile entries

The entries of Makefiles should be sorted, which is not the case in the
video driver Makefile.

Sort the entries alphabetically as far as this makes sense.

Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agocmd: Add axi command
Mario Six [Thu, 9 Aug 2018 12:51:21 +0000 (14:51 +0200)]
cmd: Add axi command

Add a command to debug the AXI bus.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agotest: Add AXI test
Mario Six [Thu, 9 Aug 2018 12:51:20 +0000 (14:51 +0200)]
test: Add AXI test

Add tests for the AXI uclass.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agosandbox: Add and build AXI bus and device
Mario Six [Thu, 9 Aug 2018 12:51:19 +0000 (14:51 +0200)]
sandbox: Add and build AXI bus and device

Add test AXI drivers to the sandbox.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agoaxi: Add AXI sandbox driver and simple emulator
Mario Six [Thu, 9 Aug 2018 12:51:18 +0000 (14:51 +0200)]
axi: Add AXI sandbox driver and simple emulator

Add test infrastructure and tests for the AXI uclass.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agoaxi: Add ihs_axi driver
Mario Six [Thu, 9 Aug 2018 12:51:17 +0000 (14:51 +0200)]
axi: Add ihs_axi driver

Add a driver for the gdsys IHS AXI bus used on IHS FPGAs.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Mario Six <mario.six@gdsys.cc>
6 years agodrivers: Add AXI uclass
Mario Six [Thu, 9 Aug 2018 12:51:16 +0000 (14:51 +0200)]
drivers: Add AXI uclass

Add a uclass for AXI (Advanced eXtensible Interface) busses, and a
driver for the gdsys IHS AXI bus on IHS FPGAs.

Signed-off-by: Mario Six <mario.six@gdsys.cc>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agotravis: give every job a name
Stephen Warren [Mon, 30 Jul 2018 16:19:43 +0000 (10:19 -0600)]
travis: give every job a name

Travis CI now supports giving jobs an explicit name. Do this for all jobs.
This allows more direct control over jobs names than the previous
automatic or implicit naming based on the environment variables or script
text.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
[trini: Update names for jobs added/changed since posting]
Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoelf: Add support for PPC64 ELF V1 ABI in bootelf
Rob Bracero [Wed, 1 Aug 2018 02:57:42 +0000 (22:57 -0400)]
elf: Add support for PPC64 ELF V1 ABI in bootelf

This update adds PPC64 ELF V1 ABI support to bootelf for both the
program header and section header options. Elf64 support was already
present for the program header option, but it was not handling the
PPC64 ELF V1 ABI case. For the PPC64 ELF V1 ABI, the e_entry field of
the elf header must be treated as function descriptor pointer instead
of a function address. The first doubleword of the function descriptor
is the function's entry address.

Signed-off-by: Rob Bracero <robbracero@gmail.com>
[trini: Fix whitespace issues]
Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agodb410c: Fixup DRAM
Ramon Fried [Tue, 31 Jul 2018 09:29:58 +0000 (12:29 +0300)]
db410c: Fixup DRAM

Call the MSM DRAM detection and fixup function to support
dynamic detection of onboard memory.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
6 years agosnapdragon: Add DRAM detection & FDT fixup
Ramon Fried [Tue, 31 Jul 2018 09:29:57 +0000 (12:29 +0300)]
snapdragon: Add DRAM detection & FDT fixup

Fixup the Linux FDT with the detection of onboard DRAM as
provided by SBL (Secondary boot loader) by reading
the shared-memory region.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
6 years agodisk: part: Don't show redundant error message
Sam Protsenko [Mon, 30 Jul 2018 16:19:27 +0000 (19:19 +0300)]
disk: part: Don't show redundant error message

Underlying API should already print some meaningful error message, so
this one is just brings more noise. E.g. we can see log like this:

    MMC: no card present
    ** Bad device mmc 0 **

Obviously, second error message is unwanted. Let's only print it in case
when DEBUG is defined to keep log short and clear.

Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
6 years agoenv: Don't show "Failed" error message
Sam Protsenko [Mon, 30 Jul 2018 16:19:26 +0000 (19:19 +0300)]
env: Don't show "Failed" error message

"Failed" error message from env_load() only clutters the log with
unnecessary details, as we already have all needed warnings by that
time. Example:

    Loading Environment from FAT... MMC: no card present
    ** Bad device mmc 0 **
    Failed (-5)

Let's only print it in case when DEBUG is defined to keep log clear.

Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
6 years agosmbios: fix checkstyle warning
Christian Gmeiner [Mon, 30 Jul 2018 11:22:07 +0000 (13:22 +0200)]
smbios: fix checkstyle warning

Fixes the following checkstyle warning:

WARNING: Missing a blank line after declarations
+               int tmp = smbios_write_funcs[i]((ulong *)&addr, handle++);
+               max_struct_size = max(max_struct_size, tmp);

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agosmbios: fix checkstyle error
Christian Gmeiner [Mon, 30 Jul 2018 11:22:06 +0000 (13:22 +0200)]
smbios: fix checkstyle error

Fixes the following chechpatch -f error:

ERROR: "(foo*)" should be "(foo *)"
+               strncpy((char*)t->uuid, serial_str, sizeof(t->uuid));

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodoc: FIT image: clarify usage of "compression" property
Simon Goldschmidt [Mon, 30 Jul 2018 10:53:18 +0000 (12:53 +0200)]
doc: FIT image: clarify usage of "compression" property

Compressed images should have their compression property
set to "none" if U-Boot should leave them compressed.

This is especially the case for compressed ramdisks that
should be uncompressed by the kernel only.

Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
6 years agoconfigs: omap3_logic: Disable NAND ID during SPL
Adam Ford [Mon, 30 Jul 2018 01:16:49 +0000 (20:16 -0500)]
configs: omap3_logic: Disable NAND ID during SPL

For these boards, the GPMC timings are more determined by
processor speed/type than the NAND/PoP memory.  This code
is never invoked, so disable the config option, so it doesn't
take the time to compile it in.

Signed-off-by: Adam Ford <aford173@gmail.com>
6 years agoconfigs: omap: Remove dead config CONFIG_SYS_NAND_ADDR
Adam Ford [Sun, 29 Jul 2018 14:51:04 +0000 (09:51 -0500)]
configs: omap: Remove dead config CONFIG_SYS_NAND_ADDR

CONFIG_SYS_NAND_ADDR is defined and never referenced. This patch
removes the dead code.

Signed-off-by: Adam Ford <aford173@gmail.com>
6 years agodoc: README.iscsi: make compatible with restructured text
Heinrich Schuchardt [Sun, 29 Jul 2018 11:50:50 +0000 (13:50 +0200)]
doc: README.iscsi: make compatible with restructured text

The Sphinx documentation system uses restructured text.
Make the README.iscsi file compatible.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agodoc: add structure to Sphinx generated docs
Heinrich Schuchardt [Sun, 29 Jul 2018 11:45:47 +0000 (13:45 +0200)]
doc: add structure to Sphinx generated docs

Create separate html pages for linker lists, the serial subsystem,
and the EFI subsystem.

Add a table of content.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agoREADME: U_BOOT_ENV_CALLBACK functions
Heinrich Schuchardt [Sun, 29 Jul 2018 09:08:14 +0000 (11:08 +0200)]
README: U_BOOT_ENV_CALLBACK functions

Describe the interface of environment variable callback functions.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agodrivers: serial: document on_baudrate()
Heinrich Schuchardt [Sun, 29 Jul 2018 08:41:02 +0000 (10:41 +0200)]
drivers: serial: document on_baudrate()

Add parameter description.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agoomap3_logic: Fix CONS_INDEX
Adam Ford [Sat, 28 Jul 2018 19:03:21 +0000 (14:03 -0500)]
omap3_logic: Fix CONS_INDEX

The console index for SPL should be 1 not 3 in order to see text during
SPL.

Fixes: 6f6b7cfa89e5 ("Convert all of CONFIG_CONS_INDEX to Kconfig")
Signed-off-by: Adam Ford <aford173@gmail.com>
6 years agoarmv8: layerscape: Enable EHCI access for LS1012A
Ran Wang [Fri, 10 Aug 2018 07:00:00 +0000 (15:00 +0800)]
armv8: layerscape: Enable EHCI access for LS1012A

Program Central Security Unit (CSU) to grant access to USB 2.0
controller.

Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
[YS: rewrite commit message]
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agoarmv8: layerscape: move ns_dev[] define from h to c file.
Ran Wang [Fri, 10 Aug 2018 06:59:59 +0000 (14:59 +0800)]
armv8: layerscape: move ns_dev[] define from h to c file.

Move ns_dev[] from header file to C file to avoid compiling warning
when header file is included by others.

Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
[YS: rewrite commit message]
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agomtd: nand: fsl_ifc: Fix handling of bitflips in erased pages
Darwin Dingel [Thu, 2 Aug 2018 08:02:45 +0000 (10:02 +0200)]
mtd: nand: fsl_ifc: Fix handling of bitflips in erased pages

This is a fix made for the fsl_ifc_nand driver on linux kernel by
Pavel Machek and is applied to uboot. It is currently on applied on
linux-mtd.

https://patchwork.kernel.org/patch/9758117/

IFC always raises ECC errors on erased pages. It is only ignored when
the buffer is checked for all 0xFF by is_blank(). The problem is a
single bitflip will cause is_blank() and then mtd_read to fail. The fix
makes use of nand_check_erased_ecc_chunk() to check for empty pages
instead of is_blank(). This also makes sure that reads are made at ECC
page size granularity to get a proper bitflip count. If the number of
bitflips does not exceed the ECC strength, the page is considered empty
and the bitflips will be corrected when data is sent to the higher
layers (e.g. ubi).

Signed-off-by: Darwin Dingel <darwin.dingel@alliedtelesis.co.nz>
Cc: Pavel Machek <pavel@denx.de>
Cc: Scott Wood <oss@buserror.net>
Acked-by: Pavel Machek <pavel@denx.de>
[Kurt: Replaced dev_err by printf due to compiler warnings]
Tested-by: Kurt Kanzenbach <kurt@linutronix.de>
Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de>
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agoarmv8: ls1046a: setup SEC ICIDs and fix up device tree
Laurentiu Tudor [Thu, 9 Aug 2018 12:19:49 +0000 (15:19 +0300)]
armv8: ls1046a: setup SEC ICIDs and fix up device tree

Add support for SEC ICID configuration and apply it for ls1046a.
Also add code to make the necessary device tree fixups.

Reviewed-by: Horia Geantă <horia.geanta@nxp.com>
Reviewed-by: Bharat Bhushan <bharat.bhushan@nxp.com>
Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agoarmv8: ls1046a: setup fman ports ICIDs and device tree
Laurentiu Tudor [Thu, 9 Aug 2018 12:19:48 +0000 (15:19 +0300)]
armv8: ls1046a: setup fman ports ICIDs and device tree

Add support for ICID setting of fman ports and the required device
tree fixups.

Reviewed-by: Bharat Bhushan <bharat.bhushan@nxp.com>
Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agoarmv8: ls1046a: add icid setup for qman portals
Laurentiu Tudor [Thu, 9 Aug 2018 12:19:47 +0000 (15:19 +0300)]
armv8: ls1046a: add icid setup for qman portals

Add support for ICID setting of qman portals and the required device
tree fixups. Also fix an endiness issue in portal setup code.

Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agoarmv8: ls1046a: initial icid setup support
Laurentiu Tudor [Thu, 9 Aug 2018 12:19:46 +0000 (15:19 +0300)]
armv8: ls1046a: initial icid setup support

Add infrastructure for ICID setup and device tree fixup on ARM
platforms. This include basic ICID setup for several devices.

Reviewed-by: Bharat Bhushan <bharat.bhushan@nxp.com>
Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agoarmv8: fsl-layerscape: add missing debug stream ID
Laurentiu Tudor [Thu, 9 Aug 2018 12:19:45 +0000 (15:19 +0300)]
armv8: fsl-layerscape: add missing debug stream ID

Add a define with a value for the missing debug stream ID.

Reviewed-by: Bharat Bhushan <bharat.bhushan@nxp.com>
Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agomisc: fsl_portals: setup QMAN_BAR{E} also on ARM platforms
Laurentiu Tudor [Thu, 9 Aug 2018 12:19:44 +0000 (15:19 +0300)]
misc: fsl_portals: setup QMAN_BAR{E} also on ARM platforms

QMAN_BAR{E} register setup was disabled on ARM platforms, however the
register does need to be set. Enable the code also on ARMs and fix the
CONFIG_SYS_QMAN_MEM_PHYS define to the correct value so that the newly
enabled code works.

Reviewed-by: Bharat Bhushan <bharat.bhushan@nxp.com>
Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agoarmv8: ls1046a: advertise QMan v3 in configuration
Laurentiu Tudor [Thu, 9 Aug 2018 12:19:43 +0000 (15:19 +0300)]
armv8: ls1046a: advertise QMan v3 in configuration

The QMan IP block in this SoC is version 3.2 so advertise
this in the SoC configuration header.

Reviewed-by: Bharat Bhushan <bharat.bhushan@nxp.com>
Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agoarmv8: fsl-layerscape: add missing register blocks base address defines
Laurentiu Tudor [Thu, 9 Aug 2018 12:19:42 +0000 (15:19 +0300)]
armv8: fsl-layerscape: add missing register blocks base address defines

Add defines for the edma and qdma register block base addresses.

Reviewed-by: Bharat Bhushan <bharat.bhushan@nxp.com>
Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
6 years agosata: fix sata_Probe return value check
Troy Kisky [Fri, 27 Jul 2018 23:45:26 +0000 (16:45 -0700)]
sata: fix sata_Probe return value check

sata_probe returns 1 for failure, so don't checkout for < 0

fixes: f19f1ecb6025 dm: sata: Support driver model with the 'sata' command

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agosandbox: led: use new function to configure default state
Patrick Delaunay [Fri, 27 Jul 2018 14:37:09 +0000 (16:37 +0200)]
sandbox: led: use new function to configure default state

Initialize the led with the default state defined in device tree
in board_init and solve issue with test for led default state.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
6 years agostm32mp1: use new function led default state
Patrick Delaunay [Fri, 27 Jul 2018 14:37:08 +0000 (16:37 +0200)]
stm32mp1: use new function led default state

Initialize the led with the default state defined in device tree.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
6 years agodm: led: move default state support in led uclass
Patrick Delaunay [Fri, 27 Jul 2018 14:37:07 +0000 (16:37 +0200)]
dm: led: move default state support in led uclass

This patch save common LED property "default-state" value
in post bind of LED uclass.
The configuration for this default state is only performed when
led_default_state() is called;
It can be called in your board_init()
or it could added in init_sequence_r[] in future.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
6 years agoRevert "dm: led: auto probe() LEDs with "default-state""
Patrick Delaunay [Fri, 27 Jul 2018 14:37:06 +0000 (16:37 +0200)]
Revert "dm: led: auto probe() LEDs with "default-state""

This reverts commit bc882f5d5c7b4d6ed5e927bf838863af43c786e7.
because this patch adds the probe of LED driver during the
binding phasis. It is not allowed in driver model because
the drivers (clock, pincontrol) needed by the LED driver can
be also probed before the binding of all the device and
it is a source of problems.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
6 years agostm32mp1: add gpio led support
Patrick Delaunay [Fri, 27 Jul 2018 14:37:05 +0000 (16:37 +0200)]
stm32mp1: add gpio led support

This patch add the 4 LED available on the ED1 board and activated
gpio led driver.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
6 years agoMerge branch 'master' of git://git.denx.de/u-boot-usb
Tom Rini [Fri, 10 Aug 2018 11:21:02 +0000 (07:21 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-usb

6 years agobcm968380gerg: Add MAINTAINERS file
Tom Rini [Thu, 9 Aug 2018 15:48:13 +0000 (11:48 -0400)]
bcm968380gerg: Add MAINTAINERS file

Add an initial MAINTAINERS file based on author of the code.

Cc: Philippe Reynes <philippe.reynes@softathome.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoMerge git://git.denx.de/u-boot-dm
Tom Rini [Thu, 9 Aug 2018 15:10:41 +0000 (11:10 -0400)]
Merge git://git.denx.de/u-boot-dm

6 years agoMerge branch 'master' of git://git.denx.de/u-boot-mips
Tom Rini [Thu, 9 Aug 2018 00:02:39 +0000 (20:02 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-mips

6 years agodfu: Provide more verbose error message
Sam Protsenko [Fri, 13 Jul 2018 13:35:47 +0000 (16:35 +0300)]
dfu: Provide more verbose error message

It might be useful for user to see some human-readable root cause
message in addition to "configuration failed" message, so that the issue
can be fixed quickly.

Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
6 years agodfu: Fix memory leak in dfu_init_env_entities()
Sam Protsenko [Fri, 13 Jul 2018 13:35:46 +0000 (16:35 +0300)]
dfu: Fix memory leak in dfu_init_env_entities()

In case of error in dfu_init_env_entities(), env_bkp will leak. Fix it
by providing single return path.

Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
6 years agodfu: Fix data abort in dfu_free_entities()
Sam Protsenko [Fri, 13 Jul 2018 13:35:45 +0000 (16:35 +0300)]
dfu: Fix data abort in dfu_free_entities()

Commit 5d8fae79163e ("dfu: avoid memory leak") brings a regression which
described below. This patch is effectively reverting that commit, adding
corresponding comment to avoid such regressions in future.

In case of error in dfu_config_entities(), it frees "dfu" array, which
leads to "data abort" in dfu_free_entities(), which tries to free the
same array (and even tries to access it from linked list first). The
issue occurs e.g. when partition table on device does not match
$dfu_alt_info layout:

    => dfu 0 mmc 1
    Couldn't find part #2 on mmc device #1
    DFU entities configuration failed!
    data abort

To fix this issue, do not free "dfu" array in dfu_config_entities(). It
will be freed later in dfu_free_entities().

Tested on BeagleBone Black (where this regression was originally found).

Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
6 years agousb: rockchip: on K_FW_LBA_WRITE_10 remove magic block size of 512 bytes
Alberto Panizzo [Thu, 12 Jul 2018 11:05:49 +0000 (13:05 +0200)]
usb: rockchip: on K_FW_LBA_WRITE_10 remove magic block size of 512 bytes

As well as in K_FW_LBA_READ_10 and K_FW_LBA_ERASE_10 take device's
block size from f_rkusb->desc->blksz instead of the fixed 512 bytes.

Keep original behaviour of retry probing assigned block device on
every host request to manage late SDCard plugs.

Signed-off-by: Alberto Panizzo <alberto@amarulasolutions.com>
6 years agousb: rockchip: fix printing csw debug info
Alberto Panizzo [Thu, 12 Jul 2018 11:05:48 +0000 (13:05 +0200)]
usb: rockchip: fix printing csw debug info

Workstation tool was happy while console on device were printing
random numbers..

Signed-off-by: Alberto Panizzo <alberto@amarulasolutions.com>
6 years agousb: rockchip: be quiet on serial port while transferring data
Alberto Panizzo [Thu, 12 Jul 2018 11:05:46 +0000 (13:05 +0200)]
usb: rockchip: be quiet on serial port while transferring data

While downloading or uploading megabytes of data we had thousands of
printf in console like:

transfer 0x10000 bytes done
OR
Uploading 0x1000 bytes

This because transfers are chunked and there is no way on target
side to know the overall transfer size (to print one string per
overall transfer).

All these prints on serial console do slow down significantly the
transfer and does not offer a significant information to the
developer: rkdeveloptool and Rockchip original tool do use small
chunks read/writes on big transfers. This allows on workstation
to print percentage of transfer complete and as well offers to
developer the information about: transfer is running OK.
On error, either the percentage will stop or an error will be shown
on workstation console.

Signed-off-by: Alberto Panizzo <alberto@amarulasolutions.com>
6 years agousb: rockchip: implement K_FW_LBA_ERASE_10 command
Alberto Panizzo [Thu, 12 Jul 2018 11:05:45 +0000 (13:05 +0200)]
usb: rockchip: implement K_FW_LBA_ERASE_10 command

This command is part of the write partition sequence performed by
rkdeveloptool: one partition is first completely erased and
than wrote.

Signed-off-by: Alberto Panizzo <alberto@amarulasolutions.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agousb: rockchip: implement K_FW_LBA_READ_10 command
Alberto Panizzo [Thu, 12 Jul 2018 11:05:44 +0000 (13:05 +0200)]
usb: rockchip: implement K_FW_LBA_READ_10 command

This patch implement reading blocks form selected device with
LBA addressing.

Corresponding command on workstation is:
rkdeveloptool rl <start_blk> <blk_cnt> <file>

While we support reading more than one blocks per K_FW_LBA_READ_10
request, rkdeveloptool and original rockchip tool do perform
chunk reads limiting the maximum size per chunk far lower
than max int values.

Signed-off-by: Alberto Panizzo <alberto@amarulasolutions.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agousb: rockchip: implement skeleton for K_FW_GET_CHIP_VER command
Alberto Panizzo [Thu, 12 Jul 2018 11:05:42 +0000 (13:05 +0200)]
usb: rockchip: implement skeleton for K_FW_GET_CHIP_VER command

Chip Version is a string saved in BOOTROM address space Little Endian.

Ex for rk3288: 0x33323041 0x32303134 0x30383133 0x56323030
which brings:  320A20140813V200

Note that memory version do invert MSB/LSB so printing the char
buffer would show: A02341023180002V

Signed-off-by: Alberto Panizzo <alberto@amarulasolutions.com>
6 years agousb: rockchip: fix command failed on host side due to missing data
Alberto Panizzo [Thu, 12 Jul 2018 11:05:41 +0000 (13:05 +0200)]
usb: rockchip: fix command failed on host side due to missing data

Two consecutive rockusb_tx_write without waiting for request complete
do results in transfer reset of first request and thus no or incomplete
data transfer. This because rockusb_tx_write do use just one USB request
to keep serialization.

So calls like:
rockusb_tx_write_str(emmc_id);
rockusb_tx_write_csw(cbw->tag, cbw->data_transfer_length, CSW_GOOD);

was succeeding only when DEBUG was defined because the time spent
printing debug info was enough for transfer to complete.

This patch fixes the issue adding a simple request complete handler
called rockusb_tx_write_csw to be set as complete handler of in_req
when sending back simple payload + CSW replies to commands.

This new handler will always send CSW_GOOD replies because in case
of error the command callback itself must send back an error CSW as
unique reply to command.

This patch fixes execution of:
$ rkdeveloptool rfi
when DEBUG is not defined.

Signed-off-by: Alberto Panizzo <alberto@amarulasolutions.com>
6 years agogadget: f_thor: fix hang-up with ctrl-c
Seung-Woo Kim [Mon, 4 Jun 2018 06:53:39 +0000 (15:53 +0900)]
gadget: f_thor: fix hang-up with ctrl-c

After the commit 6aae84769a0b ("gadget: f_thor: Fix memory leaks of
usb request and its buffer"), there is hang-up with ctrl-c in some
udc. It is because req of out_ep is freed before out_ep is disabled.
Fix hang-up with ctrl-c by disabling ep before free req of the ep.

Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>