]> git.sur5r.net Git - u-boot/log
u-boot
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 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 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

6 years agousb: dwc3-of-simple: fix error check of clk_get_bulk when disabled
Neil Armstrong [Thu, 12 Apr 2018 08:13:50 +0000 (10:13 +0200)]
usb: dwc3-of-simple: fix error check of clk_get_bulk when disabled

The disabled clk API returns -ENOSYS unlike the reset API returning -ENOTSUPP.

Fixes: ca7fdc8b1267 ("usb: host: Add simple of glue driver for DWC3 USB Controllers integration")
Reported-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
6 years agousb: dwc3-of-simple: Add support for DRA7/AM57 platforms.
Jean-Jacques Hiblot [Thu, 12 Apr 2018 08:41:11 +0000 (10:41 +0200)]
usb: dwc3-of-simple: Add support for DRA7/AM57 platforms.

Add the compatibility with "ti,dwc3" and enable it by default if DM_USB
is enabled.

Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agousb: dwc3-of-simple: Fix dependencies
Jean-Jacques Hiblot [Thu, 12 Apr 2018 08:41:10 +0000 (10:41 +0200)]
usb: dwc3-of-simple: Fix dependencies

This simple glue layer does not require CONFIG_MISC, but it does require
CONFIG_DM_USB.

Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agoARM: rmobile: Update E2 Silk
Marek Vasut [Sat, 21 Apr 2018 14:19:56 +0000 (16:19 +0200)]
ARM: rmobile: Update E2 Silk

The E2 Silk port was broken since some time. This patch updates
the E2 Silk 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>
---
NOTE: The port is missing support for I2C1 for DA9063 reset, since the
      I2C driver needs to be converted to DM and DT probing. That's not
      an issue for this patch though, since the reset was broken on Silk
      since forever.

6 years agommc: sh_mmcif: Migrate configs to CONFIG_SH_MMCIF
Marek Vasut [Sat, 21 Apr 2018 15:53:07 +0000 (17:53 +0200)]
mmc: sh_mmcif: Migrate configs to CONFIG_SH_MMCIF

Migrate the U-Boot configs to Kconfig CONFIG_SH_MMCIF .

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Cc: Jaehoon Chung <jh80.chung@samsung.com>
6 years agommc: sh_mmcif: Add Kconfig entry
Marek Vasut [Sat, 21 Apr 2018 15:40:20 +0000 (17:40 +0200)]
mmc: sh_mmcif: Add Kconfig entry

Add Kconfig entry for SH MMCIF driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Cc: Jaehoon Chung <jh80.chung@samsung.com>
6 years agommc: sh_mmcif: Add DM and DT probing support
Marek Vasut [Sat, 21 Apr 2018 15:27:11 +0000 (17:27 +0200)]
mmc: sh_mmcif: Add DM and DT probing support

Add MMC DM and DT probing support into the SH MMCIF driver.
This patch abstracts out the common bits of the send command
and set ios functions, so they can be used both by DM and non
DM setups and adds the DM probe support.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Cc: Jaehoon Chung <jh80.chung@samsung.com>
6 years agoclk: renesas: Minor clean up of the R8A7794 clock driver
Marek Vasut [Sat, 21 Apr 2018 14:35:49 +0000 (16:35 +0200)]
clk: renesas: Minor clean up of the R8A7794 clock driver

The initconst is not used in U-Boot, drop it. The r8a7794_crit_mod_clks
is also not used in U-Boot, so drop it too.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoclk: renesas: Minor clean up of the R8A7792 clock driver
Marek Vasut [Sat, 21 Apr 2018 14:36:54 +0000 (16:36 +0200)]
clk: renesas: Minor clean up of the R8A7792 clock driver

The initconst is not used in U-Boot, drop it. The r8a7792_crit_mod_clks
is also not used in U-Boot, so drop it too.

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-uniphier
Tom Rini [Wed, 18 Apr 2018 20:24:26 +0000 (16:24 -0400)]
Merge git://git.denx.de/u-boot-uniphier

6 years agoMerge git://git.denx.de/u-boot-sh
Tom Rini [Wed, 18 Apr 2018 20:24:14 +0000 (16:24 -0400)]
Merge git://git.denx.de/u-boot-sh

6 years agoreset: uniphier: add ethernet reset control support
Kunihiko Hayashi [Wed, 18 Apr 2018 01:06:07 +0000 (10:06 +0900)]
reset: uniphier: add ethernet reset control support

Add reset lines for ethernet controller on each SoC.

Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoclk: uniphier: add ethernet clock control support
Kunihiko Hayashi [Wed, 18 Apr 2018 01:05:33 +0000 (10:05 +0900)]
clk: uniphier: add ethernet clock control support

Add clock control for ethernet controller on each SoC.

Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoARM: dts: uniphier: sync DT with Linux 4.17-rc1
Masahiro Yamada [Mon, 16 Apr 2018 03:35:33 +0000 (12:35 +0900)]
ARM: dts: uniphier: sync DT with Linux 4.17-rc1

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
6 years agoMerge git://git.denx.de/u-boot-socfpga
Tom Rini [Tue, 17 Apr 2018 21:45:28 +0000 (17:45 -0400)]
Merge git://git.denx.de/u-boot-socfpga

6 years agoMerge tag 'arc-for-2018.05-rc3' of git://git.denx.de/u-boot-arc
Tom Rini [Tue, 17 Apr 2018 21:45:18 +0000 (17:45 -0400)]
Merge tag 'arc-for-2018.05-rc3' of git://git.denx.de/u-boot-arc

Subtle ARC fixes for v2018.05-RC3

These are only very subtle clean-ups here and there including:

 * Correctly specified CPU freq for HSDK
   (production boards are all shipped with 500MHZ as opposed
    to early batch running at 1GHz)

 * Addition of SNPS internal group email to MAINTAINERS file
 * Switch to Hush shell on AXS10x boards

6 years agoreset: fix bulk API when DM_RESET is disabled
Neil Armstrong [Thu, 12 Apr 2018 08:03:19 +0000 (10:03 +0200)]
reset: fix bulk API when DM_RESET is disabled

In the commit "reset: Add get/assert/deassert/release for bulk of reset signals"
the disabled reset_release_bulk() and reset_get_bulk() used the wrong
struct clk_bulk instead of struct reset_ctl_bulk.

Fixes: 0c28233903b5 ("reset: Add get/assert/deassert/release for bulk of reset signals")
Reported-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agobootm: Align cache flush begin address
Bryan O'Donoghue [Sun, 15 Apr 2018 10:48:17 +0000 (11:48 +0100)]
bootm: Align cache flush begin address

commit b4d956f6bc0f ("bootm: Align cache flush end address correctly")
aligns the end address of the cache flush operation to a cache-line size to
ensure lower-layers in the code accept the range provided and flush.

A similar action should be taken for the begin address of a cache flush
operation. The load address may not be aligned to a cache-line boundary, so
ensure the passed address is aligned.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reported-by: Breno Matheus Lima <brenomatheus@gmail.com>
Suggested-by: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Tested-by: Breno Lima <breno.lima@nxp.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoclk: fix clk_get_bulk when phandle error
Neil Armstrong [Tue, 17 Apr 2018 09:30:31 +0000 (11:30 +0200)]
clk: fix clk_get_bulk when phandle error

This fixes the Coverity Defect CID 175347 when dev_count_phandle_with_args()
returns a negative value.

Fixes: a855be87da49 ("clk: Add get/enable/disable/release for a bulk of clocks")
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
6 years agoreset: fix reset_get_bulk when phandle error
Neil Armstrong [Tue, 17 Apr 2018 09:30:22 +0000 (11:30 +0200)]
reset: fix reset_get_bulk when phandle error

This fixes the Coverity Defect CID 175348 when dev_count_phandle_with_args()
returns a negative value.

Fixes: 0c28233903b5 ("reset: Add get/assert/deassert/release for bulk of reset signals")
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
6 years agoARM: rmobile: Update M2 Koelsch
Marek Vasut [Tue, 17 Apr 2018 12:13:11 +0000 (14:13 +0200)]
ARM: rmobile: Update M2 Koelsch

The M2 Koelsch port was broken since some time. This patch updates
the M2 Koelsch 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 agoARC: Remove unused DECLARE_GLOBAL_DATA_PTR from init_helpers.c
Eugeniy Paltsev [Tue, 17 Apr 2018 16:01:15 +0000 (19:01 +0300)]
ARC: Remove unused DECLARE_GLOBAL_DATA_PTR from init_helpers.c

"Global data" structure "gd" is not used in init_helpers.c
thus DECLARE_GLOBAL_DATA_PTR might be safely removed.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
6 years agoARC: Update ARC architecture maintainers
Eugeniy Paltsev [Tue, 17 Apr 2018 14:30:40 +0000 (17:30 +0300)]
ARC: Update ARC architecture maintainers

Update ARC architecture maintainers and add
uboot-snps-arc@synopsys.com mailing list.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
6 years agoARC: AXS10x: Enable hush shell
Eugeniy Paltsev [Tue, 17 Apr 2018 14:15:31 +0000 (17:15 +0300)]
ARC: AXS10x: Enable hush shell

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
6 years agoARC: HSDK: Fix CPU frequency value
Eugeniy Paltsev [Tue, 17 Apr 2018 13:27:15 +0000 (16:27 +0300)]
ARC: HSDK: Fix CPU frequency value

CPU on HSDK board runs at 500MHz after preloader so fix
wrong CPU frequency value in hsdk_defconfig.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
6 years agoconfigs: Resync with savedefconfig
Tom Rini [Tue, 17 Apr 2018 13:22:31 +0000 (09:22 -0400)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoMerge git://git.denx.de/u-boot-marvell
Tom Rini [Tue, 17 Apr 2018 13:14:33 +0000 (09:14 -0400)]
Merge git://git.denx.de/u-boot-marvell

6 years agoconfigs: socfpga: disable EFI and ISO partition types
Dinh Nguyen [Thu, 12 Apr 2018 14:03:37 +0000 (09:03 -0500)]
configs: socfpga: disable EFI and ISO partition types

None of the SoCFPGA platforms will support EFI/ISO partition types that
is needed for DISTRO_DEFAULTS. SoCFPGA bootroom will only support 0xa2
partition type.

This is needed to help limit the size of the SPL to within the 64k limit
that is required for SoCFPGA.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoconfigs: socfpga: add DM_RESET
Dinh Nguyen [Wed, 4 Apr 2018 22:18:25 +0000 (17:18 -0500)]
configs: socfpga: add DM_RESET

Add the DM reset driver to socfpga defconfigs.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoi2c: designware: add reset ctrl to driver
Dinh Nguyen [Wed, 4 Apr 2018 22:18:24 +0000 (17:18 -0500)]
i2c: designware: add reset ctrl to driver

Add code to look for a reset manager property. Specifically, look for the
reset-names of 'i2c'. A reset property is an optional feature, so only print
out a warning and do not fail if a reset property is not present.

If a reset property is discovered, then use it to deassert, thus bringing the
IP out of reset.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoarm: dts: socfpga: add reset property
Dinh Nguyen [Wed, 4 Apr 2018 22:18:23 +0000 (17:18 -0500)]
arm: dts: socfpga: add reset property

Add reset dts property to the i2c nodes.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoarm: dts: socfpga: enables i2c0 in socfpga_de0_nano
Dinh Nguyen [Wed, 4 Apr 2018 22:18:22 +0000 (17:18 -0500)]
arm: dts: socfpga: enables i2c0 in socfpga_de0_nano

Add all the appropriate i2c alias in the base socfpga dtsi and enables
the i2c node on the DE0 NANO board.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoconfigs: socfpga: convert i2c to dm
Dinh Nguyen [Wed, 4 Apr 2018 22:18:21 +0000 (17:18 -0500)]
configs: socfpga: convert i2c to dm

Enable DM I2C driver on SoCFPGA platforms.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoreset: socfpga: add reset driver for SoCFPGA platform
Dinh Nguyen [Wed, 4 Apr 2018 22:18:20 +0000 (17:18 -0500)]
reset: socfpga: add reset driver for SoCFPGA platform

Add a DM compatible reset driver for the SoCFPGA platform.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoARM: dts: stratix10: Add base dtsi and devkit dts
Dinh Nguyen [Fri, 9 Mar 2018 03:39:26 +0000 (21:39 -0600)]
ARM: dts: stratix10: Add base dtsi and devkit dts

From the Linux v4.16-rc4, add the base dtsi and devkit dts files for
the Stratix10 SoCFPGA platform.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoARM64: stratix10: add reset manager includes
Dinh Nguyen [Fri, 9 Mar 2018 03:39:25 +0000 (21:39 -0600)]
ARM64: stratix10: add reset manager includes

Pulled from linux v4.16-rc4.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoarm: socfpga: stratix10: Add base address map for Statix10 SoC
Chin Liang See [Fri, 9 Mar 2018 03:39:24 +0000 (21:39 -0600)]
arm: socfpga: stratix10: Add base address map for Statix10 SoC

Add the base address map for Stratix10 SoC

Signed-off-by: Chin Liang See <chin.liang.see@intel.com>
Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
6 years agoARM: rmobile: Ignore U-Boot env when started via JTAG on Porter
Marek Vasut [Tue, 17 Apr 2018 00:49:48 +0000 (02:49 +0200)]
ARM: rmobile: Ignore U-Boot env when started via JTAG on Porter

When U-Boot is started via JTAG, ignore the installed environment
as it may interfere with the recovery of the board.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Ignore U-Boot env when started via JTAG on Stout
Marek Vasut [Mon, 16 Apr 2018 23:07:23 +0000 (01:07 +0200)]
ARM: rmobile: Ignore U-Boot env when started via JTAG on Stout

When U-Boot is started via JTAG, ignore the installed environment
as it may interfere with the recovery of the board.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Enable fitImage support on Gen3
Marek Vasut [Sun, 15 Apr 2018 22:16:43 +0000 (00:16 +0200)]
ARM: rmobile: Enable fitImage support on Gen3

Enable fitImage support to be on the right side of the millenium.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Disable SDHI on R8A77970 V3M Eagle
Marek Vasut [Sun, 15 Apr 2018 22:56:15 +0000 (00:56 +0200)]
ARM: rmobile: Disable SDHI on R8A77970 V3M Eagle

The SDHI is not routed to a slot on the Eagle, so disable it.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Enable RPC QSPI on R8A77970 V3M Eagle
Marek Vasut [Tue, 13 Feb 2018 20:34:03 +0000 (21:34 +0100)]
ARM: rmobile: Enable RPC QSPI on R8A77970 V3M Eagle

Enable the RPC QSPI driver on R8A77970 V3M Eagle and configure
the environment layout to match that used by old U-Boot.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Add Renesas RPC HF/QSPI DT nodes
Marek Vasut [Sat, 29 Jul 2017 19:28:34 +0000 (21:28 +0200)]
ARM: rmobile: Add Renesas RPC HF/QSPI DT nodes

Add device tree nodes for the Renesas RPC HF/QSPI controller.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agommc: mv_sdhci: zero out sdhci_host structure
Matt Pelland [Mon, 16 Apr 2018 14:08:18 +0000 (10:08 -0400)]
mmc: mv_sdhci: zero out sdhci_host structure

The mv_sdhci driver was not zeroing the sdhci_host structure it
allocates causing random access violations in parts of the mmc core
where the "ops" member pointers are checked and called if not NULL.

Signed-off-by: Matt Pelland <mpelland@starry.com>
Reviewed-by: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoPrepare v2018.05-rc2 v2018.05-rc2
Tom Rini [Tue, 17 Apr 2018 00:00:14 +0000 (20:00 -0400)]
Prepare v2018.05-rc2

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoserial: Remove duplicated line in Makefile
Patrice Chotard [Mon, 16 Apr 2018 08:35:08 +0000 (10:35 +0200)]
serial: Remove duplicated line in Makefile

The line "-obj-$(CONFIG_STM32_SERIAL) += serial_stm32.o"
is found twice in Makefile.

Fixes: ae74de0dfd45 ("serial: stm32: Rename serial_stm32x7.c to serial_stm32.c"
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas Manocha <vikas.manocha@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodoc: Update git-mailrc entry for lukma (lukma@denx.de)
Lukasz Majewski [Sun, 15 Apr 2018 19:50:11 +0000 (21:50 +0200)]
doc: Update git-mailrc entry for lukma (lukma@denx.de)

Signed-off-by: Lukasz Majewski <lukma@denx.de>
6 years agoenv: mmc/fat/ext4: undefined reference to `mmc_initialize'
Heinrich Schuchardt [Sat, 14 Apr 2018 13:41:00 +0000 (15:41 +0200)]
env: mmc/fat/ext4: undefined reference to `mmc_initialize'

For CONFIG_ENV_FAT_INTERFACE != 'mmc' a link error
env/fat.c:93: undefined reference to `mmc_initialize'
occurs if CONFIG_MMC_SUPPORT is not enabled.

Fixes: 26862b4a40c3 ("env: mmc/fat/ext4: make sure that the MMC sub-system
is initialized before using it")
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agoenv: Relocate env drivers if manual reloc is required
Siva Durga Prasad Paladugu [Fri, 13 Apr 2018 05:57:21 +0000 (07:57 +0200)]
env: Relocate env drivers if manual reloc is required

Relocate env drivers if manual relocation is enabled. This
patch fixes the issue of u-boot hang incase if env is
present in any of the flash devices.

Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoKconfig: Enlarge default SYS_MALLOC_F_LEN for AM33XX
Sjoerd Simons [Thu, 12 Apr 2018 16:09:58 +0000 (18:09 +0200)]
Kconfig: Enlarge default SYS_MALLOC_F_LEN for AM33XX

Since commit 8e14ba7bd524 ("gpio: omap_gpio: Add DM_FLAG_PRE_RELOC
flag") omap GPIO gets bound before relocation.  Unfortunately due to
this, on at least the beaglebone black, the pre-relocation memory pool
gets exhausted before probing the serial port. This then causes u-boot
to panic as CONFIG_REQUIRE_SERIAL_CONSOLE is set...

Resolve this by resizing the default size of the pre-relocation malloc
pool for AM335X platforms.

Signed-off-by: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
6 years agopart: Disable CONFIG_SPL_ISO_PARTITION by default
Alexander Graf [Thu, 12 Apr 2018 07:58:44 +0000 (09:58 +0200)]
part: Disable CONFIG_SPL_ISO_PARTITION by default

We enabled CONFIG_ISO_PARTITION by default for distro boot, so that U-Boot
could load distro images that usually get shipped as iso images. These images
usually come with a board agnostic boot environment.

However, there is very little point in having ISO support enabled (for anyone
really) in SPL, as the whole idea of SPL is to load U-Boot proper which again
is board specific. So the fact that we enable ISO support in U-Boot proper does
not mean at all that we want ISO support in U-Boot SPL.

Hence, let's remove the Kconfig dependency. Along the way, let's also clean up
all those default configs that disabled SPL ISO support.

Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoMerge git://git.denx.de/u-boot-x86
Tom Rini [Mon, 16 Apr 2018 17:24:20 +0000 (13:24 -0400)]
Merge git://git.denx.de/u-boot-x86

6 years agox86: Rename coreboot-x86 to coreboot
Simon Glass [Thu, 12 Apr 2018 20:04:40 +0000 (14:04 -0600)]
x86: Rename coreboot-x86 to coreboot

We only use coreboot as a target on x86 platforms, since on ARM platforms
U-Boot always runs as the primary boot loader. Rename the coreboot-x86
platform to reflect this.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
6 years agodoc: vxworks: Update x86 specific instructions
Bin Meng [Thu, 12 Apr 2018 05:02:23 +0000 (22:02 -0700)]
doc: vxworks: Update x86 specific instructions

This updates the doc of booting VxWorks, like loading an x64 kernel,
and how to make VxWorks graphics console driver work.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
6 years agobootvx: x86: Assign bootaddr based on kernel memory base
Bin Meng [Thu, 12 Apr 2018 05:02:22 +0000 (22:02 -0700)]
bootvx: x86: Assign bootaddr based on kernel memory base

On VxWorks x86 its bootline address is at a pre-defined offset @
0x1200. If 'bootaddr' is not passed via environment variable, we
assign its value based on the kernel memory base address.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
6 years agobootvx: Exit if bootline address is not specified
Bin Meng [Thu, 12 Apr 2018 05:02:21 +0000 (22:02 -0700)]
bootvx: Exit if bootline address is not specified

Exit the 'bootvx' command if bootline address is not specified.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
6 years agobootvx: Refactor the bootline copy codes a little bit
Bin Meng [Thu, 12 Apr 2018 05:02:20 +0000 (22:02 -0700)]
bootvx: Refactor the bootline copy codes a little bit

There is a small duplication in do_bootvx() that does the bootline
copy. Refactor this a little bit to make it simpler.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agobootvx: x86: Make VxWorks EFI console driver happy
Bin Meng [Thu, 12 Apr 2018 05:02:19 +0000 (22:02 -0700)]
bootvx: x86: Make VxWorks EFI console driver happy

When booting from EFI BIOS, VxWorks bootloader stores the EFI GOP
framebuffer info at a pre-defined offset @ 0x6100. When VxWorks
kernel boots up, its EFI console driver tries to find such a block
and if the signature matches, the framebuffer information will be
used to initialize the driver.

However it is not necessary to prepare an EFI environment for
VxWorks's EFI console driver to function (eg: EFI loader in
U-Boot). If U-Boot has already initialized the graphics card and
set it to a VESA mode that is compatible with EFI GOP, we can
simply prepare such a block for VxWorks.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopci: video: Only print out when everything is OK
Bin Meng [Thu, 12 Apr 2018 05:02:18 +0000 (22:02 -0700)]
pci: video: Only print out when everything is OK

If video initialization fails, the "Video:" output message will be
mixed with the next console log. Change to print out such message
only when everything is OK, which improves the boot log readability.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agox86: Change default FRAMEBUFFER_VESA_MODE of some boards
Bin Meng [Thu, 12 Apr 2018 05:02:17 +0000 (22:02 -0700)]
x86: Change default FRAMEBUFFER_VESA_MODE of some boards

This changes some boards' default FRAMEBUFFER_VESA_MODE to use 32-bit
pixel format for better VxWorks compatibility.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agovideo: vesa: Change default FRAMEBUFFER_VESA_MODE
Bin Meng [Thu, 12 Apr 2018 05:02:16 +0000 (22:02 -0700)]
video: vesa: Change default FRAMEBUFFER_VESA_MODE

This changes the default FRAMEBUFFER_VESA_MODE to use 32-bit pixel
format for better VxWorks compatibility.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agobios: vesa: Guard setting vesa mode with CONFIG_FRAMEBUFFER_SET_VESA_MODE
Bin Meng [Thu, 12 Apr 2018 05:02:15 +0000 (22:02 -0700)]
bios: vesa: Guard setting vesa mode with CONFIG_FRAMEBUFFER_SET_VESA_MODE

If CONFIG_FRAMEBUFFER_SET_VESA_MODE is not set, don't switch
graphics card to VESA mode. This applies to both native mode
and emulator mode of running the VGA BIOS.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoMerge git://git.denx.de/u-boot-cfi-flash
Tom Rini [Mon, 16 Apr 2018 12:31:17 +0000 (08:31 -0400)]
Merge git://git.denx.de/u-boot-cfi-flash

6 years agoelf: Add a very simple ELF64 loader
Bin Meng [Thu, 12 Apr 2018 05:02:14 +0000 (22:02 -0700)]
elf: Add a very simple ELF64 loader

This adds a very simple ELF64 loader via program headers, similar
to load_elf_image_phdr() that we already have.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoelf: Add ELF64 related structure defines
Bin Meng [Thu, 12 Apr 2018 05:02:13 +0000 (22:02 -0700)]
elf: Add ELF64 related structure defines

This adds ELF header, program header and section header structure
defines for the 64-bit ELF image.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>