]> git.sur5r.net Git - u-boot/log
u-boot
6 years agoMerge git://git.denx.de/u-boot-sunxi
Tom Rini [Mon, 30 Apr 2018 10:52:32 +0000 (06:52 -0400)]
Merge git://git.denx.de/u-boot-sunxi

6 years agotools: mkimage: Check for datafile when type is script
Alex Kiernan [Sun, 22 Apr 2018 05:11:17 +0000 (05:11 +0000)]
tools: mkimage: Check for datafile when type is script

If generating a script image and no datafile has been passed in, mkimage
dies with SIGSEGV:

  #0  __strchr_sse2 () at ../sysdeps/x86_64/multiarch/../strchr.S:32
  #1  0x0000000000403818 in main
      at tools/mkimage.c:503

Add explicit test for datafile to fix this.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agotools: mkenvimage: Fix possible segfault on stdin input
Alexander Dahl [Fri, 20 Apr 2018 13:29:31 +0000 (15:29 +0200)]
tools: mkenvimage: Fix possible segfault on stdin input

The size of 'filebuf' was not increased as more and more bytes are read
from stdin, but 'filebuf' was always reallocated to the same fix size.
This works as long as only less bytes than the initial buffer size come
in, for more input this will segfault. (It actually does, I tested
that.) So for each loop cycle the buffer size has to be increased by the
number of bytes we want to read.

Signed-off-by: Alexander Dahl <ada@thorsis.com>
6 years agotools: mkenvimage: Fix read() stdin error handling
Alexander Dahl [Fri, 20 Apr 2018 13:29:30 +0000 (15:29 +0200)]
tools: mkenvimage: Fix read() stdin error handling

On success read() returns the number of bytes read or zero for EOF. On
error -1 is returned and errno is set, so the right way to test if read
had failed is to test the return value instead of errno.

Signed-off-by: Alexander Dahl <ada@thorsis.com>
6 years agoserial: serial_stm32: Rename status register flags
Patrice Chotard [Fri, 20 Apr 2018 06:59:07 +0000 (08:59 +0200)]
serial: serial_stm32: Rename status register flags

Uart status register is named USART_ISR on STM32F7, STM32H7
and STM32MP1 SoCs family, but USART_SR only on STM32F4 SoCs.

Use USART_ISR_ prefix instead of USART_SR_ .

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoserial: serial_stm32: Enable overrun
Patrice Chotard [Fri, 20 Apr 2018 06:59:06 +0000 (08:59 +0200)]
serial: serial_stm32: Enable overrun

Enable uart overrun feature which allows to benefits of uart
FIFO usage.

Previously overrun management was disabled, this has to effect
to bypassed the uart FIFO usage even if FIFO was enabled.
In particular configuration, for example when video console is
enabled, copy/pasting a long command line in console results in
corruption. This is due to the fact that a lot of time is consumed
in flushing the cache during frame buffer update, so uart chars are
not read fast enough.

By using uart FIFO and managing overrun, long command line can by
copy/paste in console without being corrupted.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agospl: disk: usb: Add dependencies to sprintf/strto*
Alex Kiernan [Thu, 19 Apr 2018 04:32:57 +0000 (04:32 +0000)]
spl: disk: usb: Add dependencies to sprintf/strto*

If SPL serial support is disabled nothing brings in sprintf, snprintf
or simple_strtoul:

  env/built-in.o: In function `regex_callback':
  env/attr.c:128: undefined reference to `sprintf'
  disk/built-in.o: In function `blk_get_device_by_str':
  disk/part.c:386: undefined reference to `simple_strtoul'
  disk/part.c:395: undefined reference to `simple_strtoul'
  disk/built-in.o: In function `blk_get_device_part_str':
  disk/part.c:522: undefined reference to `simple_strtoul'
  disk/built-in.o: In function `part_set_generic_name':
  disk/part.c:704: undefined reference to `sprintf'
  drivers/built-in.o: In function `init_peripheral_ep':
  drivers/usb/musb-new/musb_gadget.c:1826: undefined reference to `sprintf'
  drivers/built-in.o: In function `musb_core_init':
  drivers/usb/musb-new/musb_core.c:1451: undefined reference to `snprintf'

Add those dependencies here.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agoConsolidate __assert_failed into one implementation
Alex Kiernan [Thu, 19 Apr 2018 04:32:56 +0000 (04:32 +0000)]
Consolidate __assert_failed into one implementation

We had two implementations of __assert_failed which were almost identical,
combine them into one.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agospl: Disable printf if not required
Alex Kiernan [Thu, 19 Apr 2018 04:32:55 +0000 (04:32 +0000)]
spl: Disable printf if not required

Now we have a guard for printf, disable it in the build if it's not
selected.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agospl: Split sprintf, strto* from SPL serial in Kconfig
Alex Kiernan [Thu, 19 Apr 2018 04:32:54 +0000 (04:32 +0000)]
spl: Split sprintf, strto* from SPL serial in Kconfig

When SPL serial is disabled, callers who need sprintf or strtoul fail
because their inclusion is guarded by CONFIG_SPL_SERIAL_SUPPORT/
CONFIG_TPL_SERIAL_SUPPORT.

Split printf, sprintf and strto into their own entries and then select
all of them if SERIAL_SUPPORT is enabled to match the current behaviour.

Include panic.o unconditionally as it can be called from anywhere which
uses BUG_ON().

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agospl: ti: Avoid serial calls when serial support is disabled
Alex Kiernan [Thu, 19 Apr 2018 04:32:53 +0000 (04:32 +0000)]
spl: ti: Avoid serial calls when serial support is disabled

If CONFIG_SPL_SERIAL_SUPPORT is not set, then the build will fail:

board/ti/am335x/built-in.o: In function `spl_start_uboot':
board/ti/am335x/board.c:247: undefined reference to `serial_tstc'
board/ti/am335x/board.c:247: undefined reference to `serial_getc'

Avoid the calls to the serial functions in that case.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agospl: Add dependency on serial to Ymodem
Alex Kiernan [Thu, 19 Apr 2018 04:32:52 +0000 (04:32 +0000)]
spl: Add dependency on serial to Ymodem

Building with Ymodem support requires serial in SPL/TPL, add that
dependency here.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agoCleanup CONFIG_SPL_SERIAL_SUPPORT migration
Alex Kiernan [Thu, 19 Apr 2018 04:32:50 +0000 (04:32 +0000)]
Cleanup CONFIG_SPL_SERIAL_SUPPORT migration

CONFIG_SPL_SERIAL_SUPPORT had already been migrated to Kconfig, but
existed in some include files; fix those up here.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agospl: ti: Avoid preloader_console_init if !CONFIG_SPL_SERIAL_SUPPORT
Alex Kiernan [Thu, 19 Apr 2018 04:32:51 +0000 (04:32 +0000)]
spl: ti: Avoid preloader_console_init if !CONFIG_SPL_SERIAL_SUPPORT

If CONFIG_SPL_SERIAL_SUPPORT is disabled then the build fails because
serial_init is undefined. Guard preloader_console_init() appropriately
to fix this.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agotest: dm: regmap: fix license header
Masahiro Yamada [Thu, 26 Apr 2018 16:07:21 +0000 (01:07 +0900)]
test: dm: regmap: fix license header

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoarm: move SYS_ARCH_TIMER to KConfig
Andre Przywara [Thu, 12 Apr 2018 01:24:46 +0000 (04:24 +0300)]
arm: move SYS_ARCH_TIMER to KConfig

SYS_ARCH_TIMER guards the usage of the ARM Generic Timer (aka arch
timer) in U-Boot.
At the moment it is mandatory for ARMv8 and used by a few ARMv7 boards.
Add a proper Kconfig symbol to express this dependency properly,
allowing certain board configuration to later disable arch timer in case
there are any problems with it.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
[tuomas: rebase + fix conflicts and resync with moveconfig & use select]
Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
6 years agoARM: qemu-arm: Dynamically determine timer frequency
Tuomas Tynkkynen [Thu, 12 Apr 2018 01:24:45 +0000 (04:24 +0300)]
ARM: qemu-arm: Dynamically determine timer frequency

After commit 46fc679ede5f69 ("arm: timer: get frequency for arch timer
armv7 in cp15 cntfrq") the ARM architected timer driver knows how to
determine the timer frequency at runtime by reading the CNTFRQ register,
so we don't need to hardcode the timer frequency anymore.

Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
6 years agoconfigs: Resync with savedefconfig
Tom Rini [Sat, 28 Apr 2018 14:45:55 +0000 (10:45 -0400)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agodistro: select CMD_ENV_EXISTS
Masahiro Yamada [Wed, 25 Apr 2018 10:16:48 +0000 (19:16 +0900)]
distro: select CMD_ENV_EXISTS

'env exists' is used for scripting in include/config_distro_bootcmd.h
This command is available only when CONFIG_CMD_ENV_EXISTS is enabled.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Alexander Graf <agraf@suse.de>
6 years agodistro: use imply to enable DISTRO_DEFAULTS as SoC default
Masahiro Yamada [Wed, 25 Apr 2018 09:47:52 +0000 (18:47 +0900)]
distro: use imply to enable DISTRO_DEFAULTS as SoC default

The default of DISTRO_DEFAULTS is messy.  Using the 'imply' keyword
is equivalent and cleaner.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agopowerpc: fix typo in kgdb.c
Heinrich Schuchardt [Mon, 23 Apr 2018 20:27:41 +0000 (22:27 +0200)]
powerpc: fix typo in kgdb.c

%s/alingment/alignment/

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agolib/rsa: Kconfig: Remove superfluous 'depends on RSA'
Eugeniu Rosca [Sat, 21 Apr 2018 12:00:10 +0000 (14:00 +0200)]
lib/rsa: Kconfig: Remove superfluous 'depends on RSA'

RSA_SOFTWARE_EXP and RSA_FREESCALE_EXP are wrapped inside:

if RSA
...
endif

So, remove the redundant "depends on RSA" from their depends expression.
In addition, move SPL_RSA into the same "if RSA ... endif" block, since
its only direct dependeny is CONFIG_RSA. This tidies up and simplifies
reading of lib/rsa/Kconfig.

No functional change intended.

Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoMigrate IMAGE_FORMAT_LEGACY to Kconfig
Alex Kiernan [Fri, 20 Apr 2018 21:25:38 +0000 (21:25 +0000)]
Migrate IMAGE_FORMAT_LEGACY to Kconfig

This converts IMAGE_FORMAT_LEGACY to Kconfig

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 years agocmd: CONFIG_CMD_LOG select CONFIG_LOG
Heinrich Schuchardt [Thu, 19 Apr 2018 20:02:46 +0000 (22:02 +0200)]
cmd: CONFIG_CMD_LOG select CONFIG_LOG

CONFIG_CMD_LOG without CONFIG_LOG leads to a build error:
‘gd_t {aka volatile struct global_data}’ has no member named
‘default_log_level’

So CMD_LOG should select LOG.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agolog: CONFIG_LOG should select CONFIG_DM
Heinrich Schuchardt [Thu, 19 Apr 2018 19:59:04 +0000 (21:59 +0200)]
log: CONFIG_LOG should select CONFIG_DM

Compling with CONFIG_LOG and without CONFIG_DM results in
common/log.c:47: undefined reference to `uclass_get_name'

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agokbuild: use -fmacro-prefix-map to make __FILE__ a relative path
Masahiro Yamada [Mon, 16 Apr 2018 04:18:31 +0000 (13:18 +0900)]
kbuild: use -fmacro-prefix-map to make __FILE__ a relative path

The __FILE__ macro is used everywhere in U-Boot to locate the file
printing the log message, such as WARN_ON(), etc.  If U-Boot is
built out of tree, this can be a long absolute path.

This is because Kbuild runs in the objtree instead of the srctree,
then __FILE__ is expanded to a file path prefixed with $(srctree)/.

A brand-new option from GCC, -fmacro-prefix-map, solves this problem.
If your compiler supports it, __FILE__ is the relative path from the
srctree regardless of O= option.  This provides more readable log,
more reproducible builds, and smaller image size.

[ Linux commit: a73619a845d5625079cc1b3b820f44c899618388 ]

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoserial: Migrate CONFIG_FSL_LINFLEXUART to Kconfig
Tuomas Tynkkynen [Mon, 9 Apr 2018 01:34:34 +0000 (04:34 +0300)]
serial: Migrate CONFIG_FSL_LINFLEXUART to Kconfig

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years agoARM: s32v234evb: Set CONFIG_DM & CONFIG_DM_SERIAL in Kconfig
Tuomas Tynkkynen [Mon, 9 Apr 2018 01:34:33 +0000 (04:34 +0300)]
ARM: s32v234evb: Set CONFIG_DM & CONFIG_DM_SERIAL in Kconfig

These symbols are declared in Kconfig, so it's wrong to set them in
header files.

Note that this is not size-neutral - some 'default y' options will now
get turned on by Kconfig, such as CONFIG_CMD_DM=y and CONFIG_DM_STDIO=y.

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years agoconfigs: Drop CONFIG_NET_MULTI
Tom Rini [Mon, 23 Apr 2018 13:13:09 +0000 (09:13 -0400)]
configs: Drop CONFIG_NET_MULTI

We have not had CONFIG_NET_MULTI be meaningful for quite some time, drop
the last remnants.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoclang: Update documentation
Tom Rini [Sun, 22 Apr 2018 23:15:03 +0000 (19:15 -0400)]
clang: Update documentation

As of clang-5.0, things have changed a bit.  First, we cannot
automatically guess -target values as if we do not pass one with CC then
cc-option will fail.  Second, to disable movt/movw relocations the
argument has become -mno-movt.

Related to the target part, we cannot use arm-none-eabi as that ends up
being too generic of an ARM target for things like say rpi_3_32b to
work.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoMakefile: Update clang warning disables from Linux
Tom Rini [Sun, 22 Apr 2018 14:20:50 +0000 (10:20 -0400)]
Makefile: Update clang warning disables from Linux

Re-sync the logic about which clang warnings to disable from v4.17-rc1.
Note that we don't disable all of the same ones as for now we haven't
run into any cases of warnings from clang in code from upstream Linux.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoRemove unnecessary instances of DECLARE_GLOBAL_DATA_PTR
Tom Rini [Wed, 18 Apr 2018 17:50:47 +0000 (13:50 -0400)]
Remove unnecessary instances of DECLARE_GLOBAL_DATA_PTR

We have a large number of places where while we historically referenced
gd in the code we no longer do, as well as cases where the code added
that line "just in case" during development and never dropped it.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoConvert CONFIG_SPI to Kconfig
Adam Ford [Sun, 15 Apr 2018 17:51:26 +0000 (13:51 -0400)]
Convert CONFIG_SPI to Kconfig

This converts the following to Kconfig:
   CONFIG_SPI

This partly involves updating code that assumes that CONFIG_SPI implies
things that are specific to the MPC8xx SPI driver.  For now, just update
the CONFIG tests.  This also involves reworking the default for
CONFIG_SYS_DEF_EEPROM_ADDR so that we don't set it when we cannot make a
reasonable default, as it does not cause any compile failures.

Signed-off-by: Adam Ford <aford173@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoMerge git://git.denx.de/u-boot-usb
Tom Rini [Fri, 27 Apr 2018 02:09:11 +0000 (22:09 -0400)]
Merge git://git.denx.de/u-boot-usb

6 years agoMerge git://git.denx.de/u-boot-socfpga
Tom Rini [Fri, 27 Apr 2018 02:09:03 +0000 (22:09 -0400)]
Merge git://git.denx.de/u-boot-socfpga

6 years agoMerge git://git.denx.de/u-boot-sh
Tom Rini [Fri, 27 Apr 2018 02:08:58 +0000 (22:08 -0400)]
Merge git://git.denx.de/u-boot-sh

6 years agoarm: socfpga: Fix with the correct polling on bit is set
Tien Fong Chee [Tue, 5 Dec 2017 07:57:58 +0000 (15:57 +0800)]
arm: socfpga: Fix with the correct polling on bit is set

Commit 2baa997240d ("arm: socfpga: Add FPGA driver support for Arria 10")
Polling on wrong cleared bit. Fix with correct polling on bit is set.

Fixes: 2baa997240d ("arm: socfpga: Add FPGA driver support for Arria 10")
Signed-off-by: Tien Fong Chee <tien.fong.chee@intel.com>
6 years agousb: gadget: composite: fix NULL pointer when a non standard request is received
Christophe Kerello [Thu, 15 Mar 2018 08:34:17 +0000 (09:34 +0100)]
usb: gadget: composite: fix NULL pointer when a non standard request is received

In case usb configuration is unknown (cdev->config == NULL), non standard
request should not be processed.
Remove also the cdev->config check below which will never happen.

This issue was seen using ums feature.

Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agousb: host: dwc3: fix phys init
Neil Armstrong [Wed, 25 Apr 2018 09:39:08 +0000 (11:39 +0200)]
usb: host: dwc3: fix phys init

When no PHYs are declared in the dwc3 node, the phy init fails.
This patch checks if the "phys" property is presend and reports
the error returned by dev_count_phandle_with_args().

This patchs also fixes the styles issues added in last commit.

This patch should fix the DWC3 support on the UniPhier SoC family.

Fixes: 7c839ea70c49 ("usb: host: dwc3: Add support for multiple PHYs")
Reported-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
6 years agoARM: rmobile: Fix PMIC address on E2 Silk
Marek Vasut [Sun, 22 Apr 2018 02:44:05 +0000 (04:44 +0200)]
ARM: rmobile: Fix PMIC address on E2 Silk

The PMIC is at 0x5a, fix the address.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Update E2 Alt
Marek Vasut [Mon, 23 Apr 2018 18:24:16 +0000 (20:24 +0200)]
ARM: rmobile: Update E2 Alt

The E2 Alt port was broken since some time. This patch updates
the E2 Alt port to use modern frameworks, DM, DT probing, SPL
for the preloading and puts it on par with the M2 Porter board.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Update M2-N Gose
Marek Vasut [Mon, 23 Apr 2018 18:24:10 +0000 (20:24 +0200)]
ARM: rmobile: Update M2-N Gose

The M2-N Gose port was broken since some time. This patch updates
the M2-N Gose port to use modern frameworks, DM, DT probing, SPL
for the preloading and puts it on par with the M2 Porter board.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Update H2 Lager
Marek Vasut [Mon, 23 Apr 2018 18:24:06 +0000 (20:24 +0200)]
ARM: rmobile: Update H2 Lager

The H2 Lager port was broken since some time. This patch updates
the H2 Lager port to use modern frameworks, DM, DT probing, SPL
for the preloading and puts it on par with the M2 Porter board.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Enable HS200 support on M3N Salvator-X
Marek Vasut [Tue, 24 Apr 2018 11:00:34 +0000 (13:00 +0200)]
ARM: rmobile: Enable HS200 support on M3N Salvator-X

Enable the HS200 support on M3N Salvator-X .

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoMerge git://git.denx.de/u-boot-rockchip
Tom Rini [Thu, 26 Apr 2018 11:21:41 +0000 (07:21 -0400)]
Merge git://git.denx.de/u-boot-rockchip

6 years agoMerge git://git.denx.de/u-boot-spi
Tom Rini [Thu, 26 Apr 2018 00:50:28 +0000 (20:50 -0400)]
Merge git://git.denx.de/u-boot-spi

6 years agorockchip: defconfig: remove CONFIG_SYS_NS16550
Kever Yang [Thu, 19 Apr 2018 03:37:10 +0000 (11:37 +0800)]
rockchip: defconfig: remove CONFIG_SYS_NS16550

We have enable NS16550 in Kconfig, do not need enable at defconfig

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: enable SYS_NS16550 for all SoCs by default
Kever Yang [Thu, 19 Apr 2018 03:37:09 +0000 (11:37 +0800)]
rockchip: enable SYS_NS16550 for all SoCs by default

All rockchip SoCs can use ns16550 driver, enable it for all
and set SYS_NS16550_MEM32 for all SoCs.

Version-changes: 2
- use imply instead of select

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agoRevert "rockchip: firefly: Add "usb start" to auto-start USB device"
Kever Yang [Wed, 18 Apr 2018 10:01:21 +0000 (18:01 +0800)]
Revert "rockchip: firefly: Add "usb start" to auto-start USB device"

This reverts commit a1903c18db13e740e6bedb8955b3272dce5104e1.

It's really bad idea to add "usb start" in preboot, it will spend
a lot of time to scan usb bus, and most of people do not need this
feature.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: rk322x: update MACRO for back-to-brom
Kever Yang [Wed, 18 Apr 2018 04:45:33 +0000 (12:45 +0800)]
rockchip: rk322x: update MACRO for back-to-brom

The MACRO has been update after:
ee14d29 rockchip: back-to-bootrom: split BACK_TO_BOOTROM for TPL/SPL
We need to update the C code for it.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: rk322x: update TPL_TEXT_BASE
Kever Yang [Wed, 18 Apr 2018 03:52:34 +0000 (11:52 +0800)]
rockchip: rk322x: update TPL_TEXT_BASE

The boot0 hook including the 4-byte TAG which is at the beginning
of the TEXT_BASE, now we can use a aligned TEXT BASE.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: rv1108: add ofdata_to_platdata() method for driver
Kever Yang [Tue, 24 Apr 2018 03:27:08 +0000 (11:27 +0800)]
rockchip: rv1108: add ofdata_to_platdata() method for driver

Parse of data in dedicated api instead of in probe().

The clk_set_rate() may be called before the clk driver is probed,
after core support set default clock.
This patch fix system abort issue since:
f4fcba5 clk: implement clk_set_defaults()

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-sytems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-sytems.com>
6 years agorockchip: rk3128: add ofdata_to_platdata() method for driver
Kever Yang [Tue, 24 Apr 2018 03:27:07 +0000 (11:27 +0800)]
rockchip: rk3128: add ofdata_to_platdata() method for driver

Parse of data in dedicated api instead of in probe().

The clk_set_rate() may be called before the clk driver is probed,
after core support set default clock.
This patch fix system abort issue since:
f4fcba5 clk: implement clk_set_defaults()

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-sytems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-sytems.com>
6 years agorockchip: rk3036: add ofdata_to_platdata() method for driver
Kever Yang [Tue, 24 Apr 2018 03:27:06 +0000 (11:27 +0800)]
rockchip: rk3036: add ofdata_to_platdata() method for driver

Parse of data in dedicated api instead of in probe().

The clk_set_rate() may be called before the clk driver is probed,
after core support set default clock.
This patch fix system abort issue since:
f4fcba5 clk: implement clk_set_defaults()

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agoconfig: evb-rk3399: enable make uboot.itb
Peter Robinson [Wed, 25 Apr 2018 09:50:05 +0000 (10:50 +0100)]
config: evb-rk3399: enable make uboot.itb

Similar to firefly 3399 enable the ability to create a FIT image
with combined arm-trusted-firmware.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agoarm: rockchip: make_fit_atf: remove unneeded imports
Patrick Uiterwijk [Wed, 25 Apr 2018 09:50:04 +0000 (10:50 +0100)]
arm: rockchip: make_fit_atf: remove unneeded imports

These imports are entirely unused in the entire script.

Signed-off-by: Patrick Uiterwijk <patrick@puiterwijk.org>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: rk3188: use DM timer instead of rk_timer
Kever Yang [Wed, 18 Apr 2018 03:13:46 +0000 (11:13 +0800)]
rockchip: rk3188: use DM timer instead of rk_timer

Disable rk_timer as SYS timer and use DM timer instead,
so that we can get a better timer framework, the rk_timer
is going to be clean after we conver to use DM timer or
ARM arch/generic timer.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: rk3188: add timer3 node
Kever Yang [Wed, 18 Apr 2018 03:13:45 +0000 (11:13 +0800)]
rockchip: rk3188: add timer3 node

Add dts node for timer3.
Because of the rockchip timer can only KNOWN "dtd_rockchip_rk3368_timer"
with OF_PLATDATA enable, so we override its compatible to
"rockchip,rk3368-timer".

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: rk3188: add -u-boot.dtsi for rock-rk3188
Kever Yang [Wed, 18 Apr 2018 03:13:44 +0000 (11:13 +0800)]
rockchip: rk3188: add -u-boot.dtsi for rock-rk3188

We should a -u-boot.dtsi for those config need by U-Boot only,
and other part sync with kernel.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: timer: add compatible strings for rk3188 and rk3288
Philipp Tomsich [Wed, 25 Apr 2018 12:07:06 +0000 (14:07 +0200)]
rockchip: timer: add compatible strings for rk3188 and rk3288

The DM driver for ockchip timer blocks is also applicable to the
RK3188 and RK3288 timer blocks: add 'rockchip,rk3188-timer' and
'rockchip,rk3288-timer' to its compatible list to support devices
claiming compatibility with these.

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: defconfig: puma-rk3399: enable RTC
Klaus Goger [Fri, 13 Apr 2018 08:54:28 +0000 (10:54 +0200)]
rockchip: defconfig: puma-rk3399: enable RTC

commit: 52280315a4 ("rtc: rewrite isl1208 to support DM") enables us to
use the on-module RTC emulation with the rk3399 device model i2c driver.

Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: rk3288: provide ${fdtfile}
Heinrich Schuchardt [Thu, 12 Apr 2018 22:45:57 +0000 (00:45 +0200)]
rockchip: rk3288: provide ${fdtfile}

All rk3288 default configs define CONFIG_DEFAULT_DEVICE_TREE.
So we can use it to define ${fdtfile} in rk3288_common.h.

This variable is needed by the distro boot command.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agorockchip: clk: rk3288: add clk_enable function and support USB HOST0/HSIC
Wadim Egorov [Mon, 19 Mar 2018 15:39:29 +0000 (16:39 +0100)]
rockchip: clk: rk3288: add clk_enable function and support USB HOST0/HSIC

The generic ehci-driver (ehci-generic.c) will try to enable the clocks
listed in the DTSI. If this fails (e.g. due to clk_enable not being
implemented in a driver and -ENOSYS being returned by the clk-uclass),
the driver will bail our and print an error message.

This implements a minimal clk_enable for the RK3288 and supports the
clocks mandatory for the EHCI controllers; as these are enabled by
default we simply return success.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agosunxi: improve throughput in the sunxi_mmc driver
Philipp Tomsich [Wed, 21 Mar 2018 11:18:58 +0000 (12:18 +0100)]
sunxi: improve throughput in the sunxi_mmc driver

Throughput tests have shown the sunxi_mmc driver to take over 10s to
read 10MB from a fast eMMC device due to excessive delays in polling
loops.

This commit restructures the main polling loops to use get_timer(...)
to determine whether a (millisecond) timeout has expired.  We choose
not to use the wait_bit function, as we don't need interruptability
with ctrl-c and have at least one case where two bits (one for an
error condition and another one for completion) need to be read and
using wait_bit would have not added to the clarity.

The observed speedup in testing on a A31 is greater than 10x (e.g. a
10MB write decreases from 9.302s to 0.884s).

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
Tested-by: Mylène Josserand <mylene.josserand@bootlin.com>
Acked-by: Jagan Teki <jagan@openedev.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 years agoMerge git://git.denx.de/u-boot-video
Tom Rini [Wed, 25 Apr 2018 00:27:43 +0000 (20:27 -0400)]
Merge git://git.denx.de/u-boot-video

6 years agovideo-uclass: Fix logical-not-parentheses warning
Tom Rini [Sun, 22 Apr 2018 13:47:48 +0000 (09:47 -0400)]
video-uclass: Fix logical-not-parentheses warning

With clang-4.0 and later we see:
warning: logical not is only applied to the left hand side of this bitwise
operator [-Wlogical-not-parentheses]
        if ((!gd->flags & GD_FLG_RELOC))
             ^          ~

And while the compiler suggests adding parenthesis around gd->flags, a
reading of the code says that we want to know when GD_FLG_RELOC is not
set and then return.

Cc: Simon Glass <sjg@chromium.org>
Cc: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoMerge tag 'signed-efi-2018.05' of git://github.com/agraf/u-boot
Tom Rini [Mon, 23 Apr 2018 20:17:36 +0000 (16:17 -0400)]
Merge tag 'signed-efi-2018.05' of git://github.com/agraf/u-boot

Patch queue for efi - 2018-04-23

Some last minute fixes for 2018.05. Most of them are minor fixes. On
top we have some functional improvements for the device path logic
which should also help us be more compatible.

6 years agommc: Staticize sd_select_bus_width
Marek Vasut [Sat, 14 Apr 2018 22:36:45 +0000 (00:36 +0200)]
mmc: Staticize sd_select_bus_width

Staticize the function since it's only used in mmc.c .

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Jaehoon Chung <jh80.chung@samsung.com>
Cc: Tom Rini <trini@konsulko.com>
6 years agoefi_selftest: test EFI_DEVICE_PATH_UTILITIES_PROTOCOL
Heinrich Schuchardt [Mon, 16 Apr 2018 05:59:10 +0000 (07:59 +0200)]
efi_selftest: test EFI_DEVICE_PATH_UTILITIES_PROTOCOL

Provide unit tests for the EFI_DEVICE_PATH_UTILITIES_PROTOCOL.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: complete EFI_DEVICE_PATH_UTILITIES_PROTOCOL
Heinrich Schuchardt [Mon, 16 Apr 2018 05:59:09 +0000 (07:59 +0200)]
efi_loader: complete EFI_DEVICE_PATH_UTILITIES_PROTOCOL

The missing services of the EFI_DEVICE_PATH_UTILITIES_PROTOCOL are
implemented.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: correcty determine total device path length
Heinrich Schuchardt [Mon, 16 Apr 2018 05:59:08 +0000 (07:59 +0200)]
efi_loader: correcty determine total device path length

Device paths may consist of multiple instances. Up to now we have only
considered the size of the first instance. For the services of the
EFI_DEVICE_PATH_UTILITIES_PROTOCOL in most cases the total length of the
device path is relevant.

So let's rename efi_dp_size() to efi_dp_instance_size() and create a new
function efi_dp_size() that calculates the total device path length.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: correctly determine length of empty device path
Heinrich Schuchardt [Mon, 16 Apr 2018 05:59:07 +0000 (07:59 +0200)]
efi_loader: correctly determine length of empty device path

efi_dp_size() is meant to return the device path length without the end
node.

The length of a device path containing only an end node was incorrectly
reported as 4.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: fix AppendDevicePath
Heinrich Schuchardt [Mon, 16 Apr 2018 05:59:06 +0000 (07:59 +0200)]
efi_loader: fix AppendDevicePath

The logic of the AppendDevicePath service of the
EFI_DEVICE_PATH_UTILITIES_PROTOCOL is incorrectly implemented:

* if both paths are NULL an end node has to be returned
* if both paths are not NULL the end node of the second device path has to
  be kept

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: implement CreateDeviceNode
Heinrich Schuchardt [Mon, 16 Apr 2018 05:59:05 +0000 (07:59 +0200)]
efi_loader: implement CreateDeviceNode

Implement the CreateDeviceNode service of the device path utility protocol.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_selftest: fix typo in efi_selftest_devicepath.c
Heinrich Schuchardt [Mon, 16 Apr 2018 05:59:04 +0000 (07:59 +0200)]
efi_selftest: fix typo in efi_selftest_devicepath.c

%s/provice/provide/

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_selftest: do not execute test if setup failed
Heinrich Schuchardt [Mon, 16 Apr 2018 05:59:03 +0000 (07:59 +0200)]
efi_selftest: do not execute test if setup failed

Executing a test after failed setup may lead to unexpected behavior like
an illegal memory access. So after a setup failure we should skip to
teardown.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: no support for ARMV7_NONSEC=y
Heinrich Schuchardt [Tue, 10 Apr 2018 22:41:52 +0000 (00:41 +0200)]
efi_loader: no support for ARMV7_NONSEC=y

We do not support bootefi booting ARMv7 in non-secure mode.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agolog: fix typo LOGL_EFI
Heinrich Schuchardt [Fri, 23 Mar 2018 20:12:17 +0000 (21:12 +0100)]
log: fix typo LOGL_EFI

According to the documentation the EFI log category is called LOGC_EFI.
All other categories start with LOGC_. So let's fix it.

Fixes: 1973b381a1b3 ("log: add category LOGC_EFI")
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoMerge git://git.denx.de/u-boot-uniphier
Tom Rini [Mon, 23 Apr 2018 16:21:20 +0000 (12:21 -0400)]
Merge git://git.denx.de/u-boot-uniphier

6 years agoARM: uniphier: move SPL stack address
Masahiro Yamada [Mon, 23 Apr 2018 06:10:51 +0000 (15:10 +0900)]
ARM: uniphier: move SPL stack address

Currently, the address region, 0xf8000 - 0x100000, is used for SPL
stack for the 32bit SoCs.  Because the U-Boot proper image starts
from 0x70000, the maximum size of the U-Boot proper image is 544KB
(0x70000 - 0xf8000) for the NOR boot mode.  Now uniphier_v7_defconfig
is almost hitting this size limit.  Changing CONFIG_SPL_STACK can
raise the size limit with less impact.  With this, the size limit
will increase to 576KB (0x70000 - 0x100000).  If we need to increase
it even more, we would be able to change CONFIG_SYS_UBOOT_BASE at the
cost of the flashing command changes.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoARM: uniphier: select a correct mmc device before flashing images
Masahiro Yamada [Fri, 20 Apr 2018 09:38:27 +0000 (18:38 +0900)]
ARM: uniphier: select a correct mmc device before flashing images

Some boards support an SD card and an eMMC device at the same time.
Since both belong to 'mmc', they are identified by a device number.
When the device number of the eMMC is 1 instead 0, "mmc dev" command
must be performed to switch the target device before flashing images.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoclk: uniphier: disable SPL_CLK
Masahiro Yamada [Fri, 20 Apr 2018 09:14:27 +0000 (18:14 +0900)]
clk: uniphier: disable SPL_CLK

The last clock consumer in SPL, SD/eMMC driver, gave up using the
clock driver.  The clock driver is only used in U-Boot proper.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoARM: dts: uniphier: drop u-boot, dm-pre-reloc from SD/eMMC clock node
Masahiro Yamada [Fri, 20 Apr 2018 09:14:26 +0000 (18:14 +0900)]
ARM: dts: uniphier: drop u-boot, dm-pre-reloc from SD/eMMC clock node

Now that the SD/eMMC driver does not use the clock driver in SPL,
remove u-boot,dm-pre-reloc properties to let the fdtgrep tool drop
the unnecessary nodes.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agommc: uniphier-sd: skip clock set-up for SPL
Masahiro Yamada [Fri, 20 Apr 2018 09:14:25 +0000 (18:14 +0900)]
mmc: uniphier-sd: skip clock set-up for SPL

The size of SPL is hitting the limit (64KB) for uniphier_v7_defconfig.
When booting from SD/eMMC, obviously its clock has been properly set up
by the boot ROM.  Acutually, no need to re-initialize the clock in SPL.

Using a clock driver would generalize the SoC specific code, but
solving the memory footprint problem would win.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agommc: tmio: move clk_enable() to each driver's probe function
Masahiro Yamada [Fri, 20 Apr 2018 09:14:24 +0000 (18:14 +0900)]
mmc: tmio: move clk_enable() to each driver's probe function

I need to differentiate the clock handling for uniphier-sd.  Move it
to each driver's probe function from the tmio common code so that
renesas-sdhi will not be affected.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoARM: uniphier: increase CONFIG_SYS_MONITOR_LEN
Masahiro Yamada [Fri, 20 Apr 2018 08:42:29 +0000 (17:42 +0900)]
ARM: uniphier: increase CONFIG_SYS_MONITOR_LEN

With the recent changes, the size of the U-Boot proper image for
uniphier_v7_defconfig exceeded the current limit, 512KB, then SPL
fails to load the whole of the U-Boot proper.  Increase the size.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoMerge tag 'xilinx-for-v2018.05-rc3' of git://git.denx.de/u-boot-microblaze
Tom Rini [Mon, 23 Apr 2018 14:50:38 +0000 (10:50 -0400)]
Merge tag 'xilinx-for-v2018.05-rc3' of git://git.denx.de/u-boot-microblaze

Xilinx fixes for v2018.05-rc3

- Fix nand initialization
- Runtime ddr detection for static DDR setting
- Enable rewriting env locations
- Sync defconfig for zc770 xm011
- Remove useless ioremap in watchdog
- Check return value from soc_clk_dump()

6 years agommc: avoid division by zero in meson_mmc_config_clock
Heinrich Schuchardt [Sat, 17 Mar 2018 22:49:36 +0000 (22:49 +0000)]
mmc: avoid division by zero in meson_mmc_config_clock

The Odroid C2 fails to read from mmc with U-Boot v2018.03.
The change avoids a division by zero.

The fix was suggested by Jaehoon in
https://lists.denx.de/pipermail/u-boot/2018-January/318577.html

Reported-by: Vagrant Cascadian <vagrant@debian.org>
Suggested-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Tested-by: Vagrant Cascadian <vagrant@debian.org>
6 years agocmd: clk: Check return value from soc_clk_dump
Michal Simek [Thu, 19 Apr 2018 13:15:25 +0000 (15:15 +0200)]
cmd: clk: Check return value from soc_clk_dump

In case of error in soc_clk_dump function are returned different values
then CMD return values (-1, 0, 1).

For example:
ZynqMP> clk dump
exit not allowed from main input shel

The patch is checking all negative return values and return
CMD_RET_FAILURE which is proper reaction for these cases.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agowatchdog: cadence: Remove useless ioremap
Michal Simek [Thu, 19 Apr 2018 11:51:50 +0000 (13:51 +0200)]
watchdog: cadence: Remove useless ioremap

There is no need to call ioremap. Also reg pointer is completely unused
in the driver.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: zynq: Sync zc770 xm011 defconfigs
Michal Simek [Thu, 12 Apr 2018 10:34:14 +0000 (12:34 +0200)]
arm: zynq: Sync zc770 xm011 defconfigs

x8 and x16 configurations should be in sync.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: zynq: Make ENV_SIZE and ENV_OFFSET optional via board file
Michal Simek [Wed, 11 Apr 2018 14:13:55 +0000 (16:13 +0200)]
arm: zynq: Make ENV_SIZE and ENV_OFFSET optional via board file

Boards have an option to rewrite variable locations in their own board
files. This is necessary for qspi and nand configurations where boot
image can be bigger then 896k(current limit).

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: zynq: Wire automatic ddr detection for Zynq and ZynqMP case
Michal Simek [Wed, 11 Apr 2018 14:12:28 +0000 (16:12 +0200)]
arm: zynq: Wire automatic ddr detection for Zynq and ZynqMP case

When static memory configuration is used U-Boot has capability to detect
memory size in setup range. Enable this feature for static
configuration.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: zynq: Enable setup board name for different boards
Michal Simek [Sun, 4 Mar 2018 15:15:15 +0000 (16:15 +0100)]
arm: zynq: Enable setup board name for different boards

There is no need to use zynq name as SYS_BOARD for all boards.
The patch is adding an option to change it.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agonand: zynq: Cleanup initialization
Ezequiel Garcia [Sat, 13 Jan 2018 17:56:17 +0000 (14:56 -0300)]
nand: zynq: Cleanup initialization

CONFIG_NAND_ZYNQ selects CONFIG_SYS_NAND_SELF_INIT, so the
driver doesn't have to play any ifdef game.

Also, we can mark zynq_nand_init() as static and get rid
of the mach-specific nand.h header.

This is really a revert of:
"mtd: zynq: nand: Move board_nand_init() function to board.c"
(sha1: 310995d9f91ae56082b49be06fe8c3d01424f8f6)

Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agonand: zynq: Fix driver initialization
Ezequiel Garcia [Fri, 12 Jan 2018 18:30:55 +0000 (15:30 -0300)]
nand: zynq: Fix driver initialization

This driver is currently broken, refusing to initialize properly.

The reason is that get_nand_dev_by_index() was being called before
nand_register(), thus returning a pointer into uninitialized memory.
In other words, the struct mtd_info used by the driver is total junk.

Fix it by getting the correct struct mtd_info, via nand_to_mtd()
on the driver's struct nand_chip.

Tested on a custom board, where the CPU is halted without this patch.

Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agosunxi: mmc: Fix phase delays
Stefan Mavrodiev [Tue, 27 Mar 2018 13:57:23 +0000 (16:57 +0300)]
sunxi: mmc: Fix phase delays

U-boot driver for sunxi-mmc uses PLL6, unlike linux kernel where
PLL5 is used, with clock rates respectively 600MHz and 768MHz.
Thus there are different phase degree steps - 24 for the kernel and
30 for u-boot.

In the kernel driver the phase is set 90 deg for output and 120 for
sample. Dividing by 30 will result values 3 and 4. Those are the
values set in the u-boot driver.

However, the condition defining delays is wrong. MMC core driver
requests clock of 52MHz, sunxi-driver sets clock of 50MHz, but
phase is set 30 deg for output and 120 deg for sample.

Apparently this works for most cards.
On A20-SOM204-EVB-eMMC there is eMMC card (KLMAG2GEND) which complains
about it. Maybe there is other boards with similar problem?
So the fix is to match delays for both u-boot and kernel.

Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
6 years agospi: dw: invert wait condition in dw_spi_xfer
Eugeniy Paltsev [Thu, 19 Apr 2018 14:47:41 +0000 (17:47 +0300)]
spi: dw: invert wait condition in dw_spi_xfer

While switching to readl_poll_timeout macros from custom code
the waiting condition was accidently inverted, so it was pure
luck that this code works at least in some conditions.

Fix that by inverting exit condition for readl_poll_timeout.

Fixes: c6b4f031d9 ("DW SPI: fix tx data loss on FIFO flush")
Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
6 years agoMerge git://git.denx.de/u-boot-usb
Tom Rini [Sun, 22 Apr 2018 13:30:36 +0000 (09:30 -0400)]
Merge git://git.denx.de/u-boot-usb

6 years agoMerge git://git.denx.de/u-boot-sh
Tom Rini [Sun, 22 Apr 2018 13:30:29 +0000 (09:30 -0400)]
Merge git://git.denx.de/u-boot-sh