oweals/u-boot.git
6 years agosunxi: Fix A20-OLinuXino-MICRO LAN8710 support
Stefan Mavrodiev [Fri, 3 Nov 2017 06:56:51 +0000 (08:56 +0200)]
sunxi: Fix A20-OLinuXino-MICRO LAN8710 support

>From revision J the board uses new phy chip LAN8710. Compared
with RTL8201, RA17 pin is TXERR. It has pullup which causes phy
not to work. To fix this PA17 is muxed with GMAC function. This
makes the pin output-low.

Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
6 years agosunxi: video: HDMI: split VSYNC and HSYNC polarity settings
Vasily Khoruzhick [Wed, 29 Nov 2017 06:33:27 +0000 (22:33 -0800)]
sunxi: video: HDMI: split VSYNC and HSYNC polarity settings

These are actually different bits, and since some monitors (Benq BL2420PT)
have modes with different HSYNC and VSYNC polarity, we should set them
independently

Tested on Pine64-LTS with Benq BL2420PT monitor.

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
6 years agosunxi: set the default CPUx frequency of H5 to 816MHz
Icenowy Zheng [Mon, 30 Oct 2017 23:36:28 +0000 (07:36 +0800)]
sunxi: set the default CPUx frequency of H5 to 816MHz

Some H5 boards are designed to start at 1.1V CPUx voltage (e.g. Nano Pi
NEO2), which may not work properly at 1008MHz if the chip's quality is
not so good.

Lower the default CPUx frequency of H5 to 816MHz.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
Reviewed-by: Jagan Teki <jagan@openedev.com>
6 years agovideo: sunxi: de2: add support for LCD SimpleFB
Icenowy Zheng [Wed, 1 Nov 2017 14:18:07 +0000 (22:18 +0800)]
video: sunxi: de2: add support for LCD SimpleFB

Add support for setting up SimpleFB for LCD display output in DE2
SimpleFB setup code.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
Reviewed-by: Jagan Teki <jagan@openedev.com>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
7 years agosun50i: h5: Add NanoPi Neo Plus2 DT initial support
Antony Antony [Tue, 21 Nov 2017 09:11:53 +0000 (10:11 +0100)]
sun50i: h5: Add NanoPi Neo Plus2 DT initial support

Add initial DT for NanoPi NEO Plus2 by FriendlyARM
- Allwinner quad core H5 Cortex A53 with an ARM Mali-450MP GPU
- 1 GB DDR3 RAM
- 8GB eMMC flash (Samsung KLM8G1WEPD-B031)
- micro SD card slot
- Gigabit Ethernet (external RTL8211E-VB-CG chip)
- 802.11 b/g/n WiFi, Bluetooth 4.0 (Ampak AP6212A module)
- 2x USB 2.0 host ports

Signed-off-by: Antony Antony <antony@phenome.org>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agoarm64: sun50i-h5.dtsi : update to kernel 4.14
Antony Antony [Tue, 21 Nov 2017 09:11:52 +0000 (10:11 +0100)]
arm64: sun50i-h5.dtsi : update to kernel 4.14

last Kernel commit of sun50i-h5.dtsi d86e63e1f0b7

Signed-off-by: Antony Antony <antony@phenome.org>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agoKconfig: Introduce USE_BOOTCOMMAND and migrate BOOTCOMMAND
Tom Rini [Mon, 6 Nov 2017 23:15:11 +0000 (18:15 -0500)]
Kconfig: Introduce USE_BOOTCOMMAND and migrate BOOTCOMMAND

We first introduce CONFIG_USE_BOOTCOMMAND, similar to
CONFIG_USE_BOOTARGS.  We then migrate CONFIG_BOOTCOMMAND for most
CONFIG_DISTRO_DEFAULT users.  In some cases platforms have a complex
scheme around this usage, and these have been defered for the moment so
that platform maintainers can work on a migration plan.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
7 years agoarm: config: fix default console only to specify the device
Dongjin Kim [Sat, 28 Oct 2017 04:22:27 +0000 (00:22 -0400)]
arm: config: fix default console only to specify the device

Since CONFIG_DEFAULT_CONSOLE is already started with "console=",
the console argument in CONFIG_EXTRA_ENV_SETTINGS is expanded to
"console=console=ttySAC1,115200n8" and this causes the wrong
console device.

  #define CONFIG_DEFAULT_CONSOLE         "console=ttySAC1,115200n8\0"
  ...
  #define CONFIG_EXTRA_ENV_SETTINGS \
"console=" CONFIG_DEFAULT_CONSOLE

Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoAdd UART base addresses for additional UARTs
Landheer-Cieslak, Ronald [Wed, 25 Oct 2017 13:46:53 +0000 (13:46 +0000)]
Add UART base addresses for additional UARTs

UARTs 1 through 5 were missing in the code - added.
Also pick the default according to the configuration setting for the
console index.

Signed-off-by: Ronald Landheer-Cieslak <ronaldlandheercieslak@eaton.com>
7 years agodm: pci: change bus number register setting compliant with Linux
Minghuan Lian [Fri, 20 Oct 2017 02:45:50 +0000 (10:45 +0800)]
dm: pci: change bus number register setting compliant with Linux

This patch is to change U-Boot PCI bus assignement compliant with Linux.
It means each PCIe controller's bus number is 0, not the current maximum
PCI bus number, when start to scan this controller.

Signed-off-by: Minghuan Lian <Minghuan.Lian@nxp.com>
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agonios2: 10m50: Add CPU pre-relocation in device tree
Gan, Yau Wai [Fri, 28 Jul 2017 05:07:17 +0000 (22:07 -0700)]
nios2: 10m50: Add CPU pre-relocation in device tree

Tag CPU with dm-pre-reloc to enable driver before
relocation.

Signed-off-by: Gan, Yau Wai <yau.wai.gan@intel.com>
Cc: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
7 years agoomap3: omap3_logic: Move pinmuxing to header file
Adam Ford [Tue, 7 Nov 2017 01:57:30 +0000 (19:57 -0600)]
omap3: omap3_logic: Move pinmuxing to header file

To keep the board file smaller and clean, let's move the pinmux to the header file.

Signed-off-by: Adam Ford <aford173@gmail.com>
7 years agoconfigs: dragonboard410c: Save environment data on eMMC
Jorge Ramirez-Ortiz [Mon, 6 Nov 2017 13:16:38 +0000 (14:16 +0100)]
configs: dragonboard410c: Save environment data on eMMC

Save the environment data at the end of the boot partition on emmc

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
7 years agoenv: Save environment at the end of an MMC partition
Jorge Ramirez-Ortiz [Mon, 6 Nov 2017 13:16:37 +0000 (14:16 +0100)]
env: Save environment at the end of an MMC partition

Allow the platform to define a partition by name at the end of which
the environment data will be located.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
7 years agoserial: nulldev: Implement "pending" function to fix tstc return "true"
Wilson Lee [Fri, 3 Nov 2017 06:39:51 +0000 (23:39 -0700)]
serial: nulldev: Implement "pending" function to fix tstc return "true"

In U-boot, serial_tstc was use to determine is there have a character in
serial console that pending for read. If there is no "pending" function
implemented in serial driver, the serial-uclass will return "true(1)"
to indicate there have a character pending to read.

Thus, read a character from nulldev serial will result in continuous
getting -EAGAIN return which might lead system to hang.

This commit is to fix a bug in nulldev serial which implement "pending"
function in nulldev serial to always indicate there is no character in
console that pending for read.

Signed-off-by: Wilson Lee <wilson.lee@ni.com>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Keng Soon Cheah <keng.soon.cheah@ni.com>
Cc: Chen Yee Chew <chen.yee.chew@ni.com>
Cc: Bin Meng <bmeng.cn@gmail.com>
7 years agoarmv8: update gd after relocate
Kever Yang [Fri, 3 Nov 2017 02:10:27 +0000 (10:10 +0800)]
armv8: update gd after relocate

We need to update gd in assamble code after relocate,
this is a fix to:
adc421e arm: move gd handling outside of C code

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agoarm64: support running at addr other than linked to
Stephen Warren [Fri, 3 Nov 2017 00:11:27 +0000 (18:11 -0600)]
arm64: support running at addr other than linked to

This is required in the case where U-Boot is typically loaded and run at
a particular address, but for some reason the RAM at that location is not
available, e.g. due to memory fragmentation loading other boot binaries or
firmware, splitting an SMP complex between various different OSs without
using e.g. the EL2 second-stage page tables to hide the memory asignments,
or due to known ECC failures.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
7 years agotest/py: add timestamps to log
Stephen Warren [Fri, 27 Oct 2017 17:04:08 +0000 (11:04 -0600)]
test/py: add timestamps to log

It can be useful to record how long tests take; this can help debug slow
running test systems or track changes in performance over time. Enhance
the test system to record timestamps while running test:
- Whenever a new log file section is started.
- After U-Boot is started and communication has been established.
- After each host or U-Boot command is executed.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
7 years agoclk: clk_stm32f7: fix PLL clock division factor
Patrice Chotard [Thu, 26 Oct 2017 11:23:19 +0000 (13:23 +0200)]
clk: clk_stm32f7: fix PLL clock division factor

Fix clock division factor initialization for RCC_PLLCFGR
registers.

PLLR bits (bit 31-28) in RCC_PLLCFGR must not be cleared,
it's a forbidden value. So update RCC_PLLCFGR using
clrsetbits_le32() to set only necessary bits fields.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agommc: arm_pl180_mmci: add .getcd callback
Patrice Chotard [Mon, 23 Oct 2017 08:57:34 +0000 (10:57 +0200)]
mmc: arm_pl180_mmci: add .getcd callback

Add .getcd callback to check is MMC card is present

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
7 years agommc: arm_pl180_mmci: add clock support
Patrice Chotard [Mon, 23 Oct 2017 08:57:33 +0000 (10:57 +0200)]
mmc: arm_pl180_mmci: add clock support

Allow to get and enable MMC related clock

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
7 years agommc: arm_pl180_mmci: add bus_width DT property support
Patrice Chotard [Mon, 23 Oct 2017 08:57:32 +0000 (10:57 +0200)]
mmc: arm_pl180_mmci: add bus_width DT property support

Allow to get "bus-width" property from device tree

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
7 years agommc: arm_pl180_mmci: adapt driver to DM usage
Patrice Chotard [Mon, 23 Oct 2017 08:57:31 +0000 (10:57 +0200)]
mmc: arm_pl180_mmci: adapt driver to DM usage

Convert this driver to driver model.
This driver is also used by VEXPRESS platforms which doesn't
use driver model.

Tested on STM32F746 and STM32F769 platforms.

Signed-off-by: Christophe Priouzeau <christophe.priouzeau@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
7 years agommc: arm_pl180_mmci: update arm_pl180_mmci_init() prototype
Patrice Chotard [Mon, 23 Oct 2017 08:57:30 +0000 (10:57 +0200)]
mmc: arm_pl180_mmci: update arm_pl180_mmci_init() prototype

Update arm_pl180_mmci_init() prototype by adding struct mmc**
param. This is needed before converting this driver to driver model
in order to use arm_pl180_mmci_init() in driver model and in none
driver model implementation

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
7 years agoomap2: nand: Make NAND_OMAP_GPMC_PREFETCH default
Tom Rini [Fri, 20 Oct 2017 20:55:51 +0000 (16:55 -0400)]
omap2: nand: Make NAND_OMAP_GPMC_PREFETCH default

This option provides better performance and should really always be
enabled.  Make this be default y.

Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Jeroen Hofstee <jeroen@myspectrum.nl>
7 years agoarm: amlogic: p212: Add support for Ethernet with Internal PHY
Neil Armstrong [Wed, 18 Oct 2017 08:02:12 +0000 (10:02 +0200)]
arm: amlogic: p212: Add support for Ethernet with Internal PHY

This patch adds support for the Internal RMII Ethernet PHY on the
Amlogic P212 Reference Board.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
7 years agoarm: meson: Add supplementary ethernet registers definitions
Neil Armstrong [Wed, 18 Oct 2017 08:02:11 +0000 (10:02 +0200)]
arm: meson: Add supplementary ethernet registers definitions

On Amlogic Meson GXL/GXM, supplementary ethernet configuration registers
were added to configure the internal RMII PHY interface.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
7 years agonet: phy: Add Amlogic Meson GXL Internal PHY support
Neil Armstrong [Wed, 18 Oct 2017 08:02:10 +0000 (10:02 +0200)]
net: phy: Add Amlogic Meson GXL Internal PHY support

The Amlogic Meson GXL/GXM families embeds an internal RMII Ethernet PHY.

The PHY acts as a generic PHY but needs a slight configuration right
before it's configuration.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
7 years agolib: libfdt: wrap scripts/dtc/libfdt/* where possible
Masahiro Yamada [Tue, 17 Oct 2017 13:30:20 +0000 (22:30 +0900)]
lib: libfdt: wrap scripts/dtc/libfdt/* where possible

lib/libfdt/ and scripts/dtc/libfdt have the same copies for the
followings 6 files:
  fdt.c fdt_addresses.c fdt_empty_tree.c fdt_overlay.c fdt_strerr.c
  fdt_sw.c

Make them a wrapper of scripts/dtc/libfdt/*.  This is exactly what
Linux does to sync libfdt.  In order to make is possible, import
<linux/libfdt.h> and <linux/libfdt_env.h> from Linux 4.14-rc5.

Unfortunately, U-Boot locally modified the following 3 files:
  fdt_ro.c fdt_wip.c fdt_rw.c

The fdt_region.c is U-Boot own file.

I did not touch them in order to avoid unpredictable impact.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
7 years agolinux/types.h: add typedef of uintptr_t
Masahiro Yamada [Tue, 17 Oct 2017 13:30:19 +0000 (22:30 +0900)]
linux/types.h: add typedef of uintptr_t

Add this typedef in the same place as in Linux.  This is necessary
to refactor libfdt inclusion.

U-Boot also defines it in include/compiler.h.  Of course it should
not do that, but I do not want to open a can of worms.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
7 years agotools: use files from scripts/dtc/libfdt where possible
Masahiro Yamada [Tue, 17 Oct 2017 13:30:18 +0000 (22:30 +0900)]
tools: use files from scripts/dtc/libfdt where possible

Prior to this commit, tools/Makefile pulls all libfdt files from
lib/libfdt.

lib/libfdt/ and scripts/dtc/libfdt have the same copies for the
followings 6 files:
  fdt.c fdt_addresses.c fdt_empty_tree.c fdt_overlay.c fdt_strerr.c
  fdt_sw.c

This commit changes them to #include ones from scripts/dtc/libfdt.

Unfortunately, U-Boot locally modified the following 3 files:
  fdt_ro.c fdt_wip.c fdt_rw.c

I did not touch them in order to avoid unpredictable impact.

The fdt_region.c is U-Boot own file.  This is also borrowed from
lib/libfdt/.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
7 years agolibfdt: change libfdt_internal.h to a wrapper of scripts/dtc/libfdt/*
Masahiro Yamada [Tue, 17 Oct 2017 13:30:17 +0000 (22:30 +0900)]
libfdt: change libfdt_internal.h to a wrapper of scripts/dtc/libfdt/*

Fortunately, U-Boot did not modify libfdt_internal.h locally.

Change it to a wrapper of scripts/dtc/libfdt/fdt.h, which will be
periodically synced with the upstream DTC (or kernel).

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
7 years agolibfdt: change fdt.h to a wrapper of scripts/dtc/libfdt/*
Masahiro Yamada [Tue, 17 Oct 2017 13:30:16 +0000 (22:30 +0900)]
libfdt: change fdt.h to a wrapper of scripts/dtc/libfdt/*

Fortunately, U-Boot did not modify fdt.h locally.

Change it to a wrapper of scripts/dtc/libfdt/fdt.h, which will be
periodically synced with the upstream DTC (or kernel).

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
7 years agopylibfdt: compile pylibfdt only when dtoc/binman is necessary
Masahiro Yamada [Tue, 17 Oct 2017 04:42:44 +0000 (13:42 +0900)]
pylibfdt: compile pylibfdt only when dtoc/binman is necessary

Currently, pylibfdt is always compiled if swig is installed on your
machine.  It is really annoying because most of targets (excepts
x86, sunxi, rockchip) do not use dtoc or binman.

"checkbinman" and "checkdtoc" are wrong.  It is odd that the final
build stage checks if we have built necessary tools.  If your platform
depends on dtoc/binman, you must be able to build pylibfdt.  If swig
is not installed, it should fail immediately.

I added PYLIBFDT, DTOC, BINMAN entries to Kconfig.  They should be
property select:ed by platforms that need them.  Kbuild will descend
into scripts/dtc/pylibfdt/ only when CONFIG_PYLIBFDT is enabled.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agopylibfdt: move pylibfdt to scripts/dtc/pylibfdt and refactor makefile
Masahiro Yamada [Tue, 17 Oct 2017 04:42:43 +0000 (13:42 +0900)]
pylibfdt: move pylibfdt to scripts/dtc/pylibfdt and refactor makefile

The pylibfdt is used by dtoc (and, indirectly by binman), but there
is no reason why it must be generated in the tools/ directory.

Recently, U-Boot switched over to the bundled DTC, and the directory
structure under scripts/dtc/ now mirrors the upstream DTC project.
So, scripts/dtc/pylibfdt is the best location.

I also rewrote the Makefile in a cleaner Kbuild style.

The scripts from the upstream have been moved as follows:

  lib/libfdt/pylibfdt/setup.py -> scripts/dtc/pylibfdt/setup.py
  lib/libfdt/pylibfdt/libfdt.i -> scripts/dtc/pylibfdt/libfdt.i_shipped

The .i_shipped is coped to .i during building because the .i must be
located in the objtree when we build it out of tree.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
7 years agoscripts/dtc: Update to upstream version v1.4.5-3-gb1a60033c110
Masahiro Yamada [Tue, 17 Oct 2017 04:42:42 +0000 (13:42 +0900)]
scripts/dtc: Update to upstream version v1.4.5-3-gb1a60033c110

This adds the following commits from upstream:

b1a6003 tests: Add a test for overlays syntactic sugar
737b2df overlay: Add syntactic sugar version of overlays
497432f checks: Use proper format modifier for size_t
22a65c5 dtc: Bump version to v1.4.5
c575d80 Add fdtoverlay to .gitignore
b6a6f94 fdtoverlay: Sanity check blob size
8c1eb15 pylibfdt: Use Python2 explicitly
ee3d26f checks: add interrupts property check
c1e7738 checks: add gpio binding properties check
b3bbac0 checks: add phandle with arg property checks

[ sync with Linux commit: 4201d057ea91c3d6efd2db65219bc91fae413bc2 ]

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
7 years agoscripts/dtc: add fdt_overlay.c and fdt_addresses.c to sync script
Rob Herring [Tue, 17 Oct 2017 04:42:41 +0000 (13:42 +0900)]
scripts/dtc: add fdt_overlay.c and fdt_addresses.c to sync script

libfdt has gained some new files. We need to include them in the
kernel's copy.

Reported-by: Kyle Yan <kyan@codeaurora.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
[ Linux commit: 4322323058f010274564006d61945187a15b6361 ]

7 years agoarm: add initial support for Amlogic P212 based on Meson GXL family
Neil Armstrong [Thu, 12 Oct 2017 13:50:32 +0000 (15:50 +0200)]
arm: add initial support for Amlogic P212 based on Meson GXL family

This adds platform code for the Amlogic P212 reference board based on a
Meson GXL (S905X) SoC with the Meson GXL configuration.

This initial submission only supports UART and MMC/SDCard, support for the
internal Ethernet PHY in Work In Progress.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Beniamino Galvani <b.galvani@gmail.com>
7 years agopinctrl: meson: Add GXL Support
Neil Armstrong [Thu, 12 Oct 2017 13:50:31 +0000 (15:50 +0200)]
pinctrl: meson: Add GXL Support

Add the Amlogic Meson GXL pinctrl support based on the GXBB driver and
the synchronized DTS from Linux 4.13.5

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Beniamino Galvani <b.galvani@gmail.com>
7 years agoARM: dts: Synchronize Amlogic from Linux Mainline 4.13.5
Neil Armstrong [Thu, 12 Oct 2017 13:50:30 +0000 (15:50 +0200)]
ARM: dts: Synchronize Amlogic from Linux Mainline 4.13.5

Synchronize the Amlogic ARM64 dts from mainline Linux 4.13.5

In the preparation of the support of the Amlogic P212 board,
import the corresponding meson-gxl-s905x-p212.dts file.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Beniamino Galvani <b.galvani@gmail.com>
7 years agoboard: ti: dra71x-evm: Hook LDO1 of LP8733 to EN_PIN
Keerthy [Thu, 12 Oct 2017 04:48:45 +0000 (10:18 +0530)]
board: ti: dra71x-evm: Hook LDO1 of LP8733 to EN_PIN

All regulators are hooked to EN_Pin at reset so that EN Pin controls
their state. Hook the LDO1 regulator to EN pin which at reset is not
hooked. This applies only to LP8733.

Signed-off-by: Keerthy <j-keerthy@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoam33xx: Add a function to query MPU voltage in uV
Felix Brack [Wed, 11 Oct 2017 16:42:23 +0000 (18:42 +0200)]
am33xx: Add a function to query MPU voltage in uV

For the DM TPS65910 driver I'm working on, querying the MPU voltage
should return a value in uV. This value can then be used by the
regulator's standard function set_value to set the MPU voltage.

Signed-off-by: Felix Brack <fb@ltec.ch>
Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
7 years agoMerge git://www.denx.de/git/u-boot-marvell
Tom Rini [Thu, 16 Nov 2017 14:32:04 +0000 (09:32 -0500)]
Merge git://www.denx.de/git/u-boot-marvell

7 years agoarm: mvebu: clearfog: update SPI flash DT description
Baruch Siach [Mon, 13 Nov 2017 05:04:31 +0000 (07:04 +0200)]
arm: mvebu: clearfog: update SPI flash DT description

All current ClearFog SOMs have the SPI flash populated. Enable SPI flash in
the device tree.

Add an alias to the SPI bus so that the 'sf' command can probe the flash on
bus 1.

Add the "spi-flash" compatible string to make the standard SPI flash driver
probe the device.

Reviewed-by: Jagan Teki <jagan@openedev.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agoarm: mvebu: clearfog: Fix SPI-NOR flash access
Jon Nettleton [Mon, 13 Nov 2017 05:04:30 +0000 (07:04 +0200)]
arm: mvebu: clearfog: Fix SPI-NOR flash access

The production variant of the SPI flash used by the clearfog
devices are based on winbond chips.  Additionally enable
SPI_FLASH_BAR since some variants will have 16MB of flash
that requires this to be enabled.

Remove the default speed and mode; these values are taken from the
device tree when CONFIG_DM_SPI_FLASH is enabled.

Add default bus, so that 'sf' detects the SPI flash by default.

Signed-off-by: Jon Nettleton <jon@solid-run.com>
[baruch: remove speed/mode; add bus; move winbond to defconfig]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agoarm: mvebu: clearfog: enable XHCI USB
Jon Nettleton [Mon, 6 Nov 2017 08:33:21 +0000 (10:33 +0200)]
arm: mvebu: clearfog: enable XHCI USB

Enable the driver by default for the clearfog boards since the external
port is configured for XHCI.

Signed-off-by: Jon Nettleton <jon@solid-run.com>
[baruch: split from the SoC setup patch]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agoarm: mvebu: Add board_setup for xhci hardware
Jon Nettleton [Mon, 6 Nov 2017 08:33:20 +0000 (10:33 +0200)]
arm: mvebu: Add board_setup for xhci hardware

This fixes the USB 3.0 support for the a38x SOC.

Signed-off-by: Jon Nettleton <jon@solid-run.com>
[baruch: use fdt_addr_t]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agomvebu: usb: xhci: a38x support
Jon Nettleton [Mon, 6 Nov 2017 08:33:19 +0000 (10:33 +0200)]
mvebu: usb: xhci: a38x support

This makes the initial changes need to support the
a38x series of SOCs.  It adds the device-tree identifier
as well as changing the board_support function to take
the IO address designated by device-tree.

Signed-off-by: Jon Nettleton <jon@solid-run.com>
[baruch: use fdt_addr_t; update 37xx and 8K implementations]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agoarm: mvebu: configs: Enable DISTRO_DEFAULTS for MACCHIATObin
Heinrich Schuchardt [Sun, 15 Oct 2017 05:03:40 +0000 (07:03 +0200)]
arm: mvebu: configs: Enable DISTRO_DEFAULTS for MACCHIATObin

Enable DISTRO_DEFAULTS for
mvebu_db_armada8k_defconfig
mvebu_mcbin-88f8040_defconfig

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agoarm: mvebu: theadorable_debug_defconfig: Enable setexpr command
Stefan Roese [Fri, 6 Oct 2017 07:11:38 +0000 (09:11 +0200)]
arm: mvebu: theadorable_debug_defconfig: Enable setexpr command

The setexpr command is useful for scripting, lets enable it for this
platform.

Signed-off-by: Stefan Roese <sr@denx.de>
7 years agopci: mvebu: Increase size of PCIe default mapping
VlaoMao [Fri, 22 Sep 2017 15:49:02 +0000 (18:49 +0300)]
pci: mvebu: Increase size of PCIe default mapping

Increase size PCI memory mapping from 32MiB to 128MiB.

Signed-off-by: VlaoMao <vlaomao@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agoMerge git://git.denx.de/u-boot-fsl-qoriq
Tom Rini [Wed, 15 Nov 2017 22:34:06 +0000 (17:34 -0500)]
Merge git://git.denx.de/u-boot-fsl-qoriq

7 years agoarmv8: ls2080ardb: Add sd_bootcmd for distro fallback in case of sdboot
Shengzhou Liu [Thu, 9 Nov 2017 09:57:58 +0000 (17:57 +0800)]
armv8: ls2080ardb: Add sd_bootcmd for distro fallback in case of sdboot

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agoarmv7: ls1021atwr: Add sd_bootcmd for distro fallback in case of sdboot
Shengzhou Liu [Thu, 9 Nov 2017 09:57:57 +0000 (17:57 +0800)]
armv7: ls1021atwr: Add sd_bootcmd for distro fallback in case of sdboot

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agoarmv8: ls1046ardb: Add sd_bootcmd for distro fallback in case of sdboot
Shengzhou Liu [Thu, 9 Nov 2017 09:57:56 +0000 (17:57 +0800)]
armv8: ls1046ardb: Add sd_bootcmd for distro fallback in case of sdboot

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agoarmv8: ls1043ardb: Add sd_bootcmd for distro fallback in case of sdboot
Shengzhou Liu [Thu, 9 Nov 2017 09:57:55 +0000 (17:57 +0800)]
armv8: ls1043ardb: Add sd_bootcmd for distro fallback in case of sdboot

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agocmd: mac: Update description of help
Prabhakar Kushwaha [Thu, 9 Nov 2017 10:29:21 +0000 (15:59 +0530)]
cmd: mac: Update description of help

Update help message for "mac" command to reflect correct descriptions
and parameters.

Signed-off-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agodriver: net: fsl-mc: Use base 16 in simple_strtoul
Prabhakar Kushwaha [Thu, 9 Nov 2017 09:15:41 +0000 (14:45 +0530)]
driver: net: fsl-mc: Use base 16 in simple_strtoul

Value provided in MC_MEM_SIZE_ENV_VAR is in hex. Use 16 as base
in simple_strtoul.

Signed-off-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agoarmv8: ls1088ardb: Add distro boot support
Ashish Kumar [Mon, 6 Nov 2017 07:49:28 +0000 (13:19 +0530)]
armv8: ls1088ardb: Add distro boot support

Distro boot support gives flexibility to run distro RFS like Ubuntu
being deployed from SD card or SATA drive. If it fails to detect
external storage, fall back to qspi/sd boot.

Enable this by default in RDB's defconfig by selecting
CONFIG_DISTRO_DEFAULTS

Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
Signed-off-by: Zhang Ying <zhangying@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agoarmv8: ls1088aqds: Add SD boot support for ls1088qds
Ashish Kumar [Mon, 6 Nov 2017 07:48:44 +0000 (13:18 +0530)]
armv8: ls1088aqds: Add SD boot support for ls1088qds

Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
Signed-off-by: Raghav Dogra <raghav.dogra@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agoarmv8: ls1088ardb: Add SD boot support for ls1088
Ashish Kumar [Mon, 6 Nov 2017 07:48:43 +0000 (13:18 +0530)]
armv8: ls1088ardb: Add SD boot support for ls1088

Signed-off-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
Signed-off-by: Raghav Dogra <raghav.dogra@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agoarmv8: ls1088: Enable SATA for ls1088
Ashish Kumar [Thu, 2 Nov 2017 04:20:47 +0000 (09:50 +0530)]
armv8: ls1088: Enable SATA for ls1088

Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
Signed-off-by: Amrita Kumari <amrita.kumari@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agomtd: nand: fsl-ifc: fix support of multiple NAND devices
Kurt Kanzenbach [Fri, 20 Oct 2017 09:44:25 +0000 (11:44 +0200)]
mtd: nand: fsl-ifc: fix support of multiple NAND devices

Currently the chipselect used to identify the corresponding NAND chip
is stored at the controller and only set during fsl_ifc_chip_init().
This way, only the last NAND chip is working, as the previous value
of cs_nand gets overwritten.

In order to solve this issue the chipselect is computed on demand by
evaluating the bank variable. Thus, the correct chipselect for each
NAND chip operation is used.

Tested on hardware with two NAND chips connected to the IFC
controller.

Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de>
Acked-by: Scott Wood <oss@buserror.net>
[YS: reformatted commit message]
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agoarmv8: ls1088a: Move CONFIG_SPI_FLASH_SPANSION to defconfig
Ashish Kumar [Mon, 30 Oct 2017 06:24:52 +0000 (11:54 +0530)]
armv8: ls1088a: Move CONFIG_SPI_FLASH_SPANSION to defconfig

Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agodrivers: net: ldpaa_eth: Correct error handler for qbman_swp_acquire()
Ashish Kumar [Thu, 26 Oct 2017 10:33:22 +0000 (16:03 +0530)]
drivers: net: ldpaa_eth: Correct error handler for qbman_swp_acquire()

The zero value returned from qbman_swp_acquire() is an error
condition meaning no free buffer for allocation.

Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
Signed-off-by: Kushwaha Prabhakar <prabhakar@freescale.com>
[YS: revised commit message]
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agoPrepare v2017.11 v2017.11
Tom Rini [Tue, 14 Nov 2017 01:08:06 +0000 (20:08 -0500)]
Prepare v2017.11

Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoRevert "console: simplify puts()"
Soeren Moch [Sat, 4 Nov 2017 15:14:09 +0000 (16:14 +0100)]
Revert "console: simplify puts()"

This reverts commit c61d0009feb966e0e93254a8c435a1889085e6b8.

A tbs2910 board user reported a very slow console frambuffer as
regression in current u-boot. I could bisect this down to the
above mentioned commit.

This revert brings back the fast framebuffer console (one
cache flush per string in puts(), not after each char).

Reported-by: Uwe Scheffler <scheffler.u@web.de>
Signed-off-by: Soeren Moch <smoch@web.de>
Tested-by: Uwe Scheffler <scheffler.u@web.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: sysam: stmark2: add missing environment location
Angelo Dureghello [Thu, 2 Nov 2017 19:54:59 +0000 (20:54 +0100)]
board: sysam: stmark2: add missing environment location

Signed-off-by: Angelo Dureghello <angelo@sysam.it>
7 years agoARM: rmobile: Fix eMMC signal voltage on Salvator-X/XS
Marek Vasut [Thu, 9 Nov 2017 18:58:40 +0000 (19:58 +0100)]
ARM: rmobile: Fix eMMC signal voltage on Salvator-X/XS

The eMMC is 1V8 device only and the signaling is always 1V8,
fix the DT for Salvator-X/XS to describe the hardware correctly.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
7 years agoMerge git://git.denx.de/u-boot-sunxi
Tom Rini [Fri, 10 Nov 2017 15:04:21 +0000 (10:04 -0500)]
Merge git://git.denx.de/u-boot-sunxi

7 years agosunxi: SATA link timeout fix
Werner Böllmann [Fri, 10 Nov 2017 13:44:20 +0000 (19:14 +0530)]
sunxi: SATA link timeout fix

After updating u-boot from v2016.01 to 2017.09, issue with
"SATA link 0 timeout." on my Cubietruck board.

mdelay milled after moving satapwr code to board.
"sunxi: Turn satapwr on from board_init"
(sha1: 9fbb0c3aa49f4604b0342cb527a6bd099f92eaeb)

After adding the "mdelay(500);"
line that was lost in the path the error is gone.

Signed-off-by: Werner Böllmann <Werner.Boellmann@fh-dortmund.de>
[Rebased and updated change and commit message]
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agonet: sun8i_emac: Fix build for non-H3/H5 SoCs
Chen-Yu Tsai [Fri, 22 Sep 2017 07:26:33 +0000 (15:26 +0800)]
net: sun8i_emac: Fix build for non-H3/H5 SoCs

Only the H3/H5 SoCs have an internal PHY and its related clock and
reset controls.

Use an #ifdef to guard the internal PHY control code block so it
can be built for other SoCs, such as the A83T or A64.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agoMerge git://git.denx.de/u-boot-rockchip
Tom Rini [Fri, 10 Nov 2017 13:19:01 +0000 (08:19 -0500)]
Merge git://git.denx.de/u-boot-rockchip

7 years agorockchip: configs: vyasa: Update falcon offsets
Jagan Teki [Fri, 10 Nov 2017 11:48:44 +0000 (17:18 +0530)]
rockchip: configs: vyasa: Update falcon offsets

Update the falcon offsets for args to 16MB and kernel to 17MB
Since the below commit updated U-Boot proper location along
with rockchip boot image offsets
"spl: set SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR to 0x4000 for rockchip"
(sha1: 8f4d62b403db45dfa8b1cadb9da9096c79b7df47)

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agorockchip: doc: Fix U-Boot proper location for falcon
Jagan Teki [Fri, 10 Nov 2017 11:48:43 +0000 (17:18 +0530)]
rockchip: doc: Fix U-Boot proper location for falcon

This patch fixed U-Boot proper location has been
missed to update in bewlo commit
"rockchip: doc: update U-Boot location info"
(sha1: 73e6dbe855f357a8330cfd53ff3033303611c1ad)

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agorockchip: doc: update U-Boot location info
Goldschmidt Simon [Fri, 10 Nov 2017 11:38:32 +0000 (11:38 +0000)]
rockchip: doc: update U-Boot location info

The U-Boot location has been moved to block 16384.
This is 8MB, not 4MB.

Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agoMerge branch 'master' of git://git.denx.de/u-boot-sunxi
Tom Rini [Thu, 9 Nov 2017 13:11:40 +0000 (08:11 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-sunxi

7 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-imx
Tom Rini [Thu, 9 Nov 2017 13:11:30 +0000 (08:11 -0500)]
Merge branch 'master' of git://denx.de/git/u-boot-imx

7 years agoimx7: Add include guards for include/asm/arch-mx7/sys_proto.h file
Lukasz Majewski [Tue, 7 Nov 2017 10:34:17 +0000 (11:34 +0100)]
imx7: Add include guards for include/asm/arch-mx7/sys_proto.h file

Signed-off-by: Lukasz Majewski <lukma@denx.de>
7 years agoimx5: Add include guards for include/asm/arch-mx5/sys_proto.h file
Lukasz Majewski [Tue, 7 Nov 2017 10:34:16 +0000 (11:34 +0100)]
imx5: Add include guards for include/asm/arch-mx5/sys_proto.h file

Signed-off-by: Lukasz Majewski <lukma@denx.de>
7 years agoimx6: Add include guards for include/asm/arch-mx6/sys_proto.h file
Lukasz Majewski [Tue, 7 Nov 2017 10:34:15 +0000 (11:34 +0100)]
imx6: Add include guards for include/asm/arch-mx6/sys_proto.h file

Signed-off-by: Lukasz Majewski <lukma@denx.de>
7 years agoimx:display5: Add support for LWN's DISPLAY5 board
Lukasz Majewski [Tue, 31 Oct 2017 16:58:05 +0000 (17:58 +0100)]
imx:display5: Add support for LWN's DISPLAY5 board

This commit provides support for LWN's IMX6Q based DISPLAY5 board.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
7 years agoimx6: iomux: Add generic function to set RGMII IO voltage on IMX6 SoCs
Lukasz Majewski [Tue, 31 Oct 2017 12:26:24 +0000 (13:26 +0100)]
imx6: iomux: Add generic function to set RGMII IO voltage on IMX6 SoCs

This commit provides generic function to set the RGMII/HSIC IO voltage
level on iMX6 devices.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
7 years agoboard: imx6: marsboard: Remove doubled #include <asm/arch/sys_proto.h>
Lukasz Majewski [Tue, 7 Nov 2017 10:10:29 +0000 (11:10 +0100)]
board: imx6: marsboard: Remove doubled #include <asm/arch/sys_proto.h>

The sys_proto.h file has been included earlier in this file.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
7 years agosunxi: restore PHYLIB for CONFIG_SUN4I_EMAC users
Artturi Alm [Wed, 8 Nov 2017 03:08:58 +0000 (05:08 +0200)]
sunxi: restore PHYLIB for CONFIG_SUN4I_EMAC users

due misnaming of CONFIG_SUN4I_EMAC in include/configs/sunxi-common.h,
likely missed in:
commit 3146f0c017df ("Move PHYLIB to Kconfig")

Signed-off-by: Artturi Alm <artturi.alm@gmail.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agosunxi: fix CONFIG_SUNXI_EMAC references
Artturi Alm [Wed, 8 Nov 2017 03:08:57 +0000 (05:08 +0200)]
sunxi: fix CONFIG_SUNXI_EMAC references

fixes CONFIG_SUNXI_EMAC references from drivers/net/Makefile and
include/configs/sunxi-common.h likely forgotten in:
commit abc3e4df59f5 ("sunxi: Convert SUNXI_EMAC to Kconfig")

Signed-off-by: Artturi Alm <artturi.alm@gmail.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agommc: fsl_esdhc: Fix PIO timeout
Benoît Thébaudeau [Sun, 29 Oct 2017 21:08:58 +0000 (22:08 +0100)]
mmc: fsl_esdhc: Fix PIO timeout

The following error has been observed on i.MX25 with a high-speed SDSC
card:
    Data Write Failed in PIO Mode.

It was caused by the timeout set on PRSSTAT.BWEN, which was triggered
because this bit takes 15 ms to be set after writing the first block to
DATPORT with this card. Without this timeout, all the blocks are
properly written.

This timeout was implemented by decrementing a variable, so it was
depending on the CPU frequency. Fix this issue by setting this timeout
to a long enough absolute duration (500 ms).

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Jaehoon Chung <jh80.chung@samsung.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agoi.MX6: engicam: Fix MAINTAINERS/README
Jagan Teki [Mon, 30 Oct 2017 09:57:09 +0000 (15:27 +0530)]
i.MX6: engicam: Fix MAINTAINERS/README

- Update newly added include/configs file in MAINTAINERS
- Update newly added defconfig file in README

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agomx51: Select the ESDHC_A001 erratum
Fabio Estevam [Fri, 3 Nov 2017 15:40:10 +0000 (13:40 -0200)]
mx51: Select the ESDHC_A001 erratum

When a high speed card is connected to mx51evk the following error is seen:

U-Boot 2017.11-rc2 (Oct 18 2017 - 13:49:26 -0200)

CPU:   Freescale i.MX51 rev3.0 at 800 MHz
Reset cause: POR
Board: MX51EVK
DRAM:  512 MiB
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
*** Warning - read failed, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   FEC
Hit any key to stop autoboot:  0
=> saveenv
Saving Environment to MMC...
Writing to MMC(0)... failed

The root cause for the failure is the eSDHC-A001 erratum:

"eSDHC-A001 : Data timeout counter (SYSCTL[DTOCV]) is not reliable for
values of 0x4,0x8, and 0xC" that is listed
on some PowerArchitecture chips:
https://www.nxp.com/files-static/32bit/doc/errata/MPC8379ECE.pdf

Even though eSDHC-A001 is not documented on the i.MX51 errata document,
I have confirmed with the NXP design team that this erratum does affect
i.MX51, so fix the problem by selecting SYS_FSL_ERRATUM_ESDHC_A001
at SoC level.

The i.MX51 ts4800 board already selects this option, but it is better
to move this selection to the i.MX51 SoC level instead.

Successfully tested with a high speed SD card on a mx51evk board.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
7 years agomx25: Select the ESDHC_A001 erratum
Fabio Estevam [Fri, 3 Nov 2017 15:40:09 +0000 (13:40 -0200)]
mx25: Select the ESDHC_A001 erratum

When a high speed card is connected to mx25 the following error is seen:

U-Boot 2017.11-rc2-00104-gb79372a (Oct 31 2017 - 11:02:22 -0200)

CPU:   Freescale i.MX25 rev1.2 at 399 MHz
Reset cause: POR
Board: MX25PDK
I2C:   ready
DRAM:  64 MiB
No arch specific invalidate_icache_all available!
MMC:   FSL_SDHC: 0
*** Warning - read failed, using default environment
In:    serial
Out:   serial
Err:   serial
Net:   FEC
Hit any key to stop autoboot:  0
=> saveenv
Saving Environment to MMC...
Writing to MMC(0)... failed

, which prevents any usage of the SD card.

The root cause for the failure is the eSDHC-A001 erratum:

"eSDHC-A001 : Data timeout counter (SYSCTL[DTOCV]) is not reliable for
values of 0x4,0x8, and 0xC" that is listed
on some PowerArchitecture chips:
https://www.nxp.com/files-static/32bit/doc/errata/MPC8379ECE.pdf

Even though eSDHC-A001 is not documented on the i.MX25 errata document,
I have confirmed with the NXP design team that this erratum does affect
i.MX25, so fix the problem by selecting SYS_FSL_ERRATUM_ESDHC_A001
at SoC level.

Successfully tested with a high speed SD card on a mx25pdk board.

Suggested-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Tested-by: Otavio Salvador <otavio@ossystems.com.br> # mx25pdk
7 years agomx25: Move MX25 selection to Kconfig
Fabio Estevam [Fri, 3 Nov 2017 15:40:08 +0000 (13:40 -0200)]
mx25: Move MX25 selection to Kconfig

The motivation for moving MX25 selection to Kconfig is to be
able to better handle MX25 specific errata, so that an errata option
can be selected at SoC level instead of board level.

This selection method also aligns with the way other i.MX SoCs are
selected in U-Boot.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
7 years agorockchip: remove SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR from defconfig
Kever Yang [Thu, 2 Nov 2017 07:16:36 +0000 (15:16 +0800)]
rockchip: remove SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR from defconfig

Use default value 0x4000 for SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR instead
of define a new one.

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>
7 years agorockchip: doc: update U-Boot location info
Kever Yang [Thu, 2 Nov 2017 07:16:35 +0000 (15:16 +0800)]
rockchip: doc: update U-Boot location info

Update rockchip U-Boot location to 0x4000/16384.

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>
7 years agospl: set SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR to 0x4000 for rockchip
Kever Yang [Thu, 2 Nov 2017 07:16:34 +0000 (15:16 +0800)]
spl: set SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR to 0x4000 for rockchip

Rockchip use a 'loader2' partition for U-Boot, so u-boot.bin or
u-boot.itb load by SPL need to locate at0x4000. Detail here:
http://opensource.rock-chips.com/wiki_Boot_option

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>
7 years agorockchip: board: puma_rk3399: make env location selectable via Kconfig
Klaus Goger [Mon, 6 Nov 2017 22:02:56 +0000 (23:02 +0100)]
rockchip: board: puma_rk3399: make env location selectable via Kconfig

The environment storage location is selectable via Kconfig. We support
eMMC, SD and SPI-NOR as location for U-Boot. This adds support to store
the environment in the SPI-NOR additional to the default eMMC location.

Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agorockchip: dts: rk3399: change sd-card io voltage to 3.0V
Klaus Goger [Mon, 6 Nov 2017 22:02:55 +0000 (23:02 +0100)]
rockchip: dts: rk3399: change sd-card io voltage to 3.0V

The VCC_SD and VCC_SDIO rail should only be powered up to 3.0V on RK3399
platforms.

Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agorockchip: dts: Use defines for pin names in rk3399-puma.dtsi and rk3368-lion.dts
Klaus Goger [Mon, 6 Nov 2017 22:02:54 +0000 (23:02 +0100)]
rockchip: dts: Use defines for pin names in rk3399-puma.dtsi and rk3368-lion.dts

pinctrl/rockchip.h provides defines that map pin numbers to pin names.
Use them to make the dts more human readable.

Signed-off-by: Klaus Goger <klaus.goger@theobroma-systems.com>
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agorockchip: dts: rk3399-puma: update USB configuration
Philipp Tomsich [Mon, 6 Nov 2017 22:02:53 +0000 (23:02 +0100)]
rockchip: dts: rk3399-puma: update USB configuration

This change updates the USB configuration for the RK3399-Q7 in the DTS:
 * fixes the OTG board configuration by enabling it ('okay')
 * improves the speed of 'usb start' by disabling the unused EHCI/OHCI
   controllers

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: Klaus Goger <klaus.goger@theobroma-systems.com>
7 years agorockchip: dts: rk3399-puma: update usbhub_enable regulator
Philipp Tomsich [Mon, 6 Nov 2017 22:02:52 +0000 (23:02 +0100)]
rockchip: dts: rk3399-puma: update usbhub_enable regulator

To correctly model the usbhub_enable regulator for U-Boot, we need
to change the settings to:
 * the GPIO polarity is GPIO_ACTIVE_LOW
 * should be set to inactive (enable-active-low) when boot-on settings
   are applied
 * it can be changed at runtime (i.e. remove the always-on)

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: Klaus Goger <klaus.goger@theobroma-systems.com>
7 years agorockchip: dts: rk3399-puma: fix the modelling of BIOS_DISABLE
Philipp Tomsich [Mon, 6 Nov 2017 22:02:51 +0000 (23:02 +0100)]
rockchip: dts: rk3399-puma: fix the modelling of BIOS_DISABLE

The fixed regulator for overriding BIOS_DISABLE had been modelling
backwards (i.e. the GPIO polarity and the enable-active-low/high
property had both been inverted), causing the 'regulator' command
to always print/expect 'disabled'/'enabled' backwards.

This fixes the mix-up and models it correctly:
 * the GPIO is low-active
 * the regulator should be enabled (enable-active-high) during
   boot-on initialisation

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: Klaus Goger <klaus.goger@theobroma-systems.com>