]> git.sur5r.net Git - u-boot/log
u-boot
7 years agousb: ehci-vf: use ehci_deregister() for .remove callback
Masahiro Yamada [Fri, 14 Oct 2016 01:29:37 +0000 (10:29 +0900)]
usb: ehci-vf: use ehci_deregister() for .remove callback

This driver was recently converted to Driver Model, so missed the
subsystem-wide cleanups by commit 405273427366 ("usb: replace
ehci_*_remove() with usb_deregister()").

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
7 years agoimx6: icorem6: Add default mtd nand partition table
Jagan Teki [Sat, 8 Oct 2016 12:30:28 +0000 (18:00 +0530)]
imx6: icorem6: Add default mtd nand partition table

icorem6qdl> mtdparts

device nand0 <nand>, # parts = 6
0: spl                 0x00200000      0x00000000      0
1: uboot               0x00200000      0x00200000      0
2: env                 0x00100000      0x00400000      0
3: kernel              0x00400000      0x00500000      0
4: dtb                 0x00100000      0x00900000      0
5: rootfs              0x1f600000      0x00a00000      0

Cc: Stefano Babic <sbabic@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoimx6: icorem6: Enable MTD device support
Jagan Teki [Sat, 8 Oct 2016 12:30:27 +0000 (18:00 +0530)]
imx6: icorem6: Enable MTD device support

Enable MTD device, partition and command support.

Cc: Stefano Babic <sbabic@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoimx6: icorem6: Add NAND support
Jagan Teki [Tue, 25 Oct 2016 06:23:23 +0000 (11:53 +0530)]
imx6: icorem6: Add NAND support

Add NAND support for Engicam i.CoreM6 qdl board.

Boot Log:
--------

U-Boot SPL 2016.09-rc2-30755-gd3dc581-dirty (Sep 28 2016 - 23:00:43)
Trying to boot from NAND
NAND : 512 MiB

U-Boot 2016.09-rc2-30755-gd3dc581-dirty (Sep 28 2016 - 23:00:43 +0530)

CPU:   Freescale i.MX6SOLO rev1.3 at 792MHz
CPU:   Industrial temperature grade (-40C to 105C) at 55C
Reset cause: WDOG
Model: Engicam i.CoreM6 DualLite/Solo Starter Kit
DRAM:  256 MiB
NAND:  512 MiB
MMC:   FSL_SDHC: 0
In:    serial
Out:   serial
Err:   serial
Net:   FEC [PRIME]
Hit any key to stop autoboot:  0
icorem6qdl>

Cc: Scott Wood <oss@buserror.net>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agomtd: nand: Kconfig: Add NAND_MXS entry
Jagan Teki [Sat, 8 Oct 2016 12:30:25 +0000 (18:00 +0530)]
mtd: nand: Kconfig: Add NAND_MXS entry

Added kconfig for NAND_MXS driver.

Cc: Scott Wood <oss@buserror.net>
Cc: Simon Glass <sjg@chromium.org>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoarm: imx6q: Add devicetree support for Engicam i.CoreM6 Quad/Dual
Jagan Teki [Sat, 8 Oct 2016 12:30:24 +0000 (18:00 +0530)]
arm: imx6q: Add devicetree support for Engicam i.CoreM6 Quad/Dual

i.CoreM6 Quad/Dual modules are system on module solutions
manufactured by Engicam with following characteristics:
CPU           NXP i.MX6 DQ, 800MHz
RAM           1GB, 32, 64 bit, DDR3-800/1066
NAND          SLC,512MB
Power supply  Single 5V
MAX LCD RES   FULLHD

and more info at
http://www.engicam.com/en/products/embedded/som/sodimm/i-core-m6s-dl-d-q

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoarm: dts: imx6q: Add pinctrl defines
Jagan Teki [Sat, 8 Oct 2016 12:30:23 +0000 (18:00 +0530)]
arm: dts: imx6q: Add pinctrl defines

Add imx6q pinctrl defines support from Linux.

Here is the last commit:
"ARM: dts: imx: pinfunc: add MX6QDL_PAD_GPIO_6__ENET_IRQ"
(sha1: d8c765e0d1ddbd5032c2491c82cc9660c2f0e7f2)

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoarm: dts: Add devicetree for i.MX6Q
Jagan Teki [Sat, 8 Oct 2016 12:30:22 +0000 (18:00 +0530)]
arm: dts: Add devicetree for i.MX6Q

Add i.MX6Q dtsi support from Linux.

Here is the last commit:
"ARM: dts: add gpio-ranges property to iMX GPIO controllers"
(sha1: bb728d662bed0fe91b152550e640cb3f6caa972c)

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoengicam: icorem6: Add DM_GPIO, DM_MMC support
Jagan Teki [Tue, 25 Oct 2016 06:23:22 +0000 (11:53 +0530)]
engicam: icorem6: Add DM_GPIO, DM_MMC support

Add DM_GPIO, DM_MMC support for u-boot and disable for SPL.

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoimx6q: icorem6: Enable pinctrl driver
Jagan Teki [Sat, 8 Oct 2016 12:30:20 +0000 (18:00 +0530)]
imx6q: icorem6: Enable pinctrl driver

Enable imx6 pinctrl driver support for i.CoreM6.

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoarm: imx6q: Add devicetree support for Engicam i.CoreM6 DualLite/Solo
Jagan Teki [Sat, 8 Oct 2016 12:30:19 +0000 (18:00 +0530)]
arm: imx6q: Add devicetree support for Engicam i.CoreM6 DualLite/Solo

i.CoreM6 DualLite/Solo modules are system on module solutions
manufactured by Engicam with following characteristics:
CPU           NXP i.MX6 DL, 800MHz
RAM           1GB, 32, 64 bit, DDR3-800/1066
NAND          SLC,512MB
Power supply  Single 5V
MAX LCD RES   FULLHD

and more info at
http://www.engicam.com/en/products/embedded/som/sodimm/i-core-m6s-dl-d-q

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agodt-bindings: clock: imx6qdl: Add clock defines
Jagan Teki [Sat, 8 Oct 2016 12:30:18 +0000 (18:00 +0530)]
dt-bindings: clock: imx6qdl: Add clock defines

Add imx6qdl clock header defines support from Linux.

"clk: imx: Add clock support for imx6qp"
(sha1: ee36027427c769b0b9e5e205fe43aced93d6aa66)

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoarm: dts: imx6dl: Add pinctrl defines
Jagan Teki [Sat, 8 Oct 2016 12:30:17 +0000 (18:00 +0530)]
arm: dts: imx6dl: Add pinctrl defines

Add imx6dl pinctrl defines support from Linux.

Here is the last commit:
"ARM: dts: imx: pinfunc: add MX6QDL_PAD_GPIO_6__ENET_IRQ"
(sha1: d8c765e0d1ddbd5032c2491c82cc9660c2f0e7f2)

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoarm: dts: Add devicetree for i.MX6DQL
Jagan Teki [Sat, 8 Oct 2016 12:30:16 +0000 (18:00 +0530)]
arm: dts: Add devicetree for i.MX6DQL

Add i.MX6DQL dtsi support from Linux.

Here is the last commit:
"ARM: dts: imx6qdl: Fix SPDIF regression"
(sha1: f065e9e4addd75c21bb976bb2558648bf4f61de6)

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoarm: dts: Add devicetree for i.MX6DL
Jagan Teki [Sat, 8 Oct 2016 12:30:15 +0000 (18:00 +0530)]
arm: dts: Add devicetree for i.MX6DL

Add i.MX6DL dtsi support from Linux.

Here is the last commit:
"ARM: dts: add gpio-ranges property to iMX GPIO controllers"
(sha1: bb728d662bed0fe91b152550e640cb3f6caa972c)

Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoimx: s/docs\/README.imximage/doc\/README.imximage/g
Jagan Teki [Sat, 8 Oct 2016 12:30:14 +0000 (18:00 +0530)]
imx: s/docs\/README.imximage/doc\/README.imximage/g

Fixed typo for doc/README.imximage on respective imximage.cfg files.

Cc: Tom Rini <trini@konsulko.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoimx6: icorem6: Add ENET support
Jagan Teki [Sat, 8 Oct 2016 12:30:13 +0000 (18:00 +0530)]
imx6: icorem6: Add ENET support

Add enet support for engicam icorem6 qdl starter kit.
- Add pinmux settings
- Add board_eth_init

TFTP log:
--------
Net:   FEC [PRIME]
Hit any key to stop autoboot:  0
icorem6qdl> tftpboot {fdt_addr} imx6dl-icore.dtb
Using FEC device
TFTP from server 192.168.2.96; our IP address is 192.168.2.75
Filename 'imx6dl-icore.dtb'.
Load address: 0x0
Loading: ######
         1.3 MiB/s
done
Bytes transferred = 28976 (7130 hex)
CACHE: Misaligned operation at range [0000000000007130]
icorem6qdl>

Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: Kconfig: Add FEC_MXC entry
Jagan Teki [Sat, 8 Oct 2016 12:30:12 +0000 (18:00 +0530)]
net: Kconfig: Add FEC_MXC entry

Added kconfig for FEC_MXC driver.

Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoarm: imx: Add Engicam i.CoreM6 QDL Starter Kit initial support
Jagan Teki [Sat, 8 Oct 2016 12:30:11 +0000 (18:00 +0530)]
arm: imx: Add Engicam i.CoreM6 QDL Starter Kit initial support

Boot Log for i.CoreM6 DualLite/Solo Starter Kit:
-----------------------------------------------

U-Boot SPL 2016.09-rc2-30739-gd1fa290 (Sep 17 2016 - 00:37:46)
Trying to boot from MMC1

U-Boot 2016.09-rc2-30739-gd1fa290 (Sep 17 2016 - 00:37:46 +0530)

CPU:   Freescale i.MX6SOLO rev1.3 at 792MHz
CPU:   Industrial temperature grade (-40C to 105C) at 31C
Reset cause: POR
DRAM:  256 MiB
MMC:   FSL_SDHC: 0
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   CPU Net Initialization Failed
No ethernet found.
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0 is current device
switch to partitions #0, OK
mmc0 is current device
reading boot.scr
** Unable to read file boot.scr **
reading zImage
6741808 bytes read in 341 ms (18.9 MiB/s)
Booting from mmc ...
reading imx6dl-icore.dtb
30600 bytes read in 19 ms (1.5 MiB/s)
   Booting using the fdt blob at 0x18000000
   Using Device Tree in place at 18000000, end 1800a787

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0

Boot Log for i.CoreM6 Quad/Dual Starter Kit:
--------------------------------------------

U-Boot SPL 2016.09-rc2-30739-gd1fa290 (Sep 17 2016 - 00:37:46)
Trying to boot from MMC1

U-Boot 2016.09-rc2-30739-gd1fa290 (Sep 17 2016 - 00:37:46 +0530)

CPU:   Freescale i.MX6Q rev1.2 at 792MHz
CPU:   Industrial temperature grade (-40C to 105C) at 28C
Reset cause: POR
DRAM:  512 MiB
MMC:   FSL_SDHC: 0
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   CPU Net Initialization Failed
No ethernet found.
Hit any key to stop autoboot:  0
icorem6qdl>

Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoconfig: Move CONFIG_DEFAULT_FDT_FILE to defconfigs
Jagan Teki [Sat, 8 Oct 2016 12:30:10 +0000 (18:00 +0530)]
config: Move CONFIG_DEFAULT_FDT_FILE to defconfigs

- Add DEFAULT_FDT_FILE kconfig entry
- Move CONFIG_DEFAULT_FDT_FILE from include/configs to defconfigs

Cc: Tom Rini <trini@konsulko.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agothermal: Kconfig: Add IMX_THERMAL entry
Jagan Teki [Sat, 8 Oct 2016 12:30:09 +0000 (18:00 +0530)]
thermal: Kconfig: Add IMX_THERMAL entry

Added kconfig for IMX_THERMAL driver.

Cc: Simon Glass <sjg@chromium.org>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoserial: Kconfig: Add MXC_UART entry
Jagan Teki [Sat, 8 Oct 2016 12:30:08 +0000 (18:00 +0530)]
serial: Kconfig: Add MXC_UART entry

Added kconfig for MXC_UART driver.

Cc: Simon Glass <sjg@chromium.org>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agoimx: mx6ull_14x14_evk: add plugin defconfig
Peng Fan [Tue, 11 Oct 2016 06:29:17 +0000 (14:29 +0800)]
imx: mx6ull_14x14_evk: add plugin defconfig

Add defconfig file to use plugin code.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
7 years agoi2c: designware: Avoid overwriting the cmd_data register
Marek Vasut [Thu, 20 Oct 2016 14:48:28 +0000 (16:48 +0200)]
i2c: designware: Avoid overwriting the cmd_data register

Make sure the driver writes the cmd_data register only once per
read transfer instead of doing so potentially repeatedly.

In case the read transfer didn't finish quickly enough, the loop
in the driver code would spin fast enough to write the same value
into the cmd_data register again before re-checking whether the
transfer completed, which would cause another spurious read transfer
on the bus.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefan Roese <sr@denx.de>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
Cc: Chin Liang See <clsee@altera.com>
7 years agotravis-ci: Add test.py for various qemu platforms
Tom Rini [Thu, 20 Oct 2016 15:26:40 +0000 (11:26 -0400)]
travis-ci: Add test.py for various qemu platforms

- Add a PPA for a more recent qemu (required for PowerPC to work)
- Add tests to run test.py for various QEMU platforms.  This relies on
  swarren's uboot-test-hooks repository to provide the abstractions.

Acked-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agotravis-ci: Drop 'TEST_CMD'
Tom Rini [Thu, 20 Oct 2016 15:24:52 +0000 (11:24 -0400)]
travis-ci: Drop 'TEST_CMD'

We don't need to use TEST_CMD in order to run tests.  We need a BUILDMAN
and TOOLCHAIN variable to avoid having to duplicate logic or write some
wrapper function.  But this makes the tests harder as we add more
complex examples.

Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agotravis-ci: Add more architectures
Tom Rini [Thu, 20 Oct 2016 15:23:15 +0000 (11:23 -0400)]
travis-ci: Add more architectures

We can now build for microblaze, sh4 and xtensa.

Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agotravis-ci: Update toolchain and buildman usage
Tom Rini [Thu, 20 Oct 2016 15:08:26 +0000 (11:08 -0400)]
travis-ci: Update toolchain and buildman usage

- Drop the 'cache' line, travis-ci says to not cache apt packages (and
  does not).
- Get the Ubuntu provided toolchain for ARM and PowerPC.
- Add more toolchain options that buildman can fetch.

Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agotravis-ci: Do not make buildman warnings fatal
Tom Rini [Thu, 20 Oct 2016 15:05:57 +0000 (11:05 -0400)]
travis-ci: Do not make buildman warnings fatal

We currently will always see a number of warnings due to device tree
issues.  These (and other warnings) should not make the build be marked
as failure so catch exit status 129 specifically and return 0 in that
case.

Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agotravis-ci: Use a git URI for dtc.git
Tom Rini [Thu, 20 Oct 2016 15:04:10 +0000 (11:04 -0400)]
travis-ci: Use a git URI for dtc.git

Currently we fail to fetch the dtc.git tree due to an SSL issue within
the travis-ci environment.  The easiest fix here is to switch to a git
URI.

Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agotravis-ci: Switch to Ubuntu 14.04 'Trusty Tahr'
Tom Rini [Thu, 20 Oct 2016 15:03:19 +0000 (11:03 -0400)]
travis-ci: Switch to Ubuntu 14.04 'Trusty Tahr'

In order to make other various improvements, update to the latest
environment travis-ci supports.

Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agoapi: storage: Avoid enumeration for non-configured subsystem
Emmanuel Vadot [Wed, 19 Oct 2016 15:19:47 +0000 (17:19 +0200)]
api: storage: Avoid enumeration for non-configured subsystem

If a subsystem wasn't configured, avoid enumeration.

Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com>
7 years agotools: moveconfig: support wildcards in --defconfigs file
Masahiro Yamada [Wed, 19 Oct 2016 05:39:54 +0000 (14:39 +0900)]
tools: moveconfig: support wildcards in --defconfigs file

Supporting shell-style wildcards for the --defconfigs option will be
useful to run the moveconfig tool against a specific platform.  For
example, "uniphier*" in the file passed by --defconfigs option will
be expanded to defconfig files that start with "uniphier".  This is
easier than listing out all defconfig files you are interested in.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agoFix codying style broken by recent libfdt sync
Masahiro Yamada [Mon, 17 Oct 2016 11:43:01 +0000 (20:43 +0900)]
Fix codying style broken by recent libfdt sync

Commit b02e4044ff8e ("libfdt: Bring in upstream stringlist
functions") broke codying style in some places especially
by inserting an extra whitespace before fdt_stringlist_count().

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Simon Glass <sjg@chromium.org>
7 years agolibfdt: fix fdt_stringlist_search()
Masahiro Yamada [Mon, 17 Oct 2016 11:22:34 +0000 (20:22 +0900)]
libfdt: fix fdt_stringlist_search()

If fdt_getprop() fails, negative error code should be returned.

[ DTC commit: daa75e8fa5942caa8e97931aed3a1ee0b7edd74b ]

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
7 years agolibfdt: fix fdt_stringlist_count()
Masahiro Yamada [Mon, 17 Oct 2016 11:22:33 +0000 (20:22 +0900)]
libfdt: fix fdt_stringlist_count()

If fdt_getprop() fails, negative error code should be returned.

[ DTC commit: e28eff5b787adb3f461d1653598818b2f1f25a73 ]

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
7 years agopower: twl6030: fix code refactoring
Nicolae Rosia [Thu, 13 Oct 2016 10:47:53 +0000 (13:47 +0300)]
power: twl6030: fix code refactoring

Commit a85362fb3e1fc7833723accddbbae431091d06b8 refactored the code
but the register read ended up in the wrong if branch.
Currently, the else branch checks a variable which is always 0.

Signed-off-by: Nicolae Rosia <nicolae_rosia@mentor.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoext4: Only write journal entries for modified blocks in unlink_filename
Stefan Brüns [Sun, 9 Oct 2016 18:15:28 +0000 (20:15 +0200)]
ext4: Only write journal entries for modified blocks in unlink_filename

Instead of creating a journal entry for each directory block, even
if the block is unmodified, only log the modified block.

Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>
7 years agoext4: Fix handling of direntlen in unlink_filename
Stefan Brüns [Sun, 9 Oct 2016 18:15:27 +0000 (20:15 +0200)]
ext4: Fix handling of direntlen in unlink_filename

The direntlen checks were quite bogus, i.e. the loop termination used
"len + offset == blocksize" (exact match only), and checked for a
direntlen less than 0. The latter can never happen as the len is
unsigned, this has been reported by Coverity, CID 153384.

Use the same code as in search_dir for directory traversal. This code
has the correct checks for direntlen >= sizeof(struct dirent), and
offset < blocksize.

Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
Reported-by: Coverity (CID: 153383, 153384)
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>
7 years agoext4: cleanup unlink_filename function
Stefan Brüns [Sun, 9 Oct 2016 18:15:26 +0000 (20:15 +0200)]
ext4: cleanup unlink_filename function

Use the same variable names as in search_dir, to make purpose of variables
more obvious.

Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoMerge git://git.denx.de/u-boot-fdt
Tom Rini [Mon, 24 Oct 2016 12:04:21 +0000 (08:04 -0400)]
Merge git://git.denx.de/u-boot-fdt

7 years agoimx: mx6ullevk: correct boot device macro
Peng Fan [Tue, 11 Oct 2016 06:29:16 +0000 (14:29 +0800)]
imx: mx6ullevk: correct boot device macro

Correct boot device macro according to kconfig entry
in common/Kconfig

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
7 years agoimx: mx6ullevk: support plugin
Peng Fan [Tue, 11 Oct 2016 06:29:15 +0000 (14:29 +0800)]
imx: mx6ullevk: support plugin

Add plugin code for mx6ullevk.
Define CONFIG_USE_IMXIMG_PLUGIN in defconfig file to use plugin code.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
7 years agoimx-common: compile plugin code
Peng Fan [Tue, 11 Oct 2016 06:29:14 +0000 (14:29 +0800)]
imx-common: compile plugin code

If CONFIG_USE_IMXIMG_PLUGIN is selected, plugin.bin will be
generated under board/$(BOARDDIR)/.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoimx-common: introduce USE_IMXIMG_PLUGIN Kconfig
Peng Fan [Tue, 11 Oct 2016 06:29:12 +0000 (14:29 +0800)]
imx-common: introduce USE_IMXIMG_PLUGIN Kconfig

Introduce USE_IMXIMG_PLUGIN Kconfig

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoimx: mx7: Add plugin support
Peng Fan [Tue, 11 Oct 2016 06:29:11 +0000 (14:29 +0800)]
imx: mx7: Add plugin support

Add mx7_plugin.S which calls boot rom setup function, generate the second ivt,
and jump back to boot rom.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Ye Li <ye.li@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoimx: mx6: Add plugin support
Peng Fan [Tue, 11 Oct 2016 06:29:10 +0000 (14:29 +0800)]
imx: mx6: Add plugin support

Add mx6_plugin.S which calls boot rom setup function, generate the second ivt,
and jump back to boot rom.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Utkarsh Gupta <utkarsh.gupta@nxp.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Utkarsh Gupta <utkarsh.gupta@nxp.com>
7 years agotools: imximage: add plugin support
Peng Fan [Tue, 11 Oct 2016 06:29:09 +0000 (14:29 +0800)]
tools: imximage: add plugin support

Add plugin support for imximage.

Define CONFIG_USE_IMXIMG_PLUGIN in defconfig to enable using plugin.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Eric Nelson <eric@nelint.com>
Cc: Ye Li <ye.li@nxp.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_SYS_STDIO_DEREGISTER to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:13:02 +0000 (20:13 -0600)]
Convert CONFIG_SYS_STDIO_DEREGISTER to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_STDIO_DEREGISTER

This option should never be enabled in SPL, so use
CONFIG_IS_ENABLED(SYS_STDIO_DEREGISTER) when checking the option.

Signed-off-by: Simon Glass <sjg@chromium.org>
[trini: Re-sync]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_USB_KEYBOARD to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:13:01 +0000 (20:13 -0600)]
Convert CONFIG_USB_KEYBOARD to Kconfig

This converts the following to Kconfig:
   CONFIG_USB_KEYBOARD

Signed-off-by: Simon Glass <sjg@chromium.org>
[trini: Fixup MPC86* configs]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_SYS_CONSOLE_INFO_QUIET to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:13:00 +0000 (20:13 -0600)]
Convert CONFIG_SYS_CONSOLE_INFO_QUIET to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_CONSOLE_INFO_QUIET

Signed-off-by: Simon Glass <sjg@chromium.org>
[trini: Make this default n, re-run the migration]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:59 +0000 (20:12 -0600)]
Convert CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_SYS_CONSOLE_ENV_OVERWRITE to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:58 +0000 (20:12 -0600)]
Convert CONFIG_SYS_CONSOLE_ENV_OVERWRITE to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_CONSOLE_ENV_OVERWRITE

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_CONSOLE_SCROLL_LINES to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:57 +0000 (20:12 -0600)]
Convert CONFIG_CONSOLE_SCROLL_LINES to Kconfig

This converts the following to Kconfig:
   CONFIG_CONSOLE_SCROLL_LINES

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agovideo: Drop CONFIG_CONSOLE_INFO_QUIET
Simon Glass [Tue, 18 Oct 2016 02:12:55 +0000 (20:12 -0600)]
video: Drop CONFIG_CONSOLE_INFO_QUIET

This is not used in U-Boot. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agovideo: Move video_get_info_str() prototype to a header file
Simon Glass [Tue, 18 Oct 2016 02:12:54 +0000 (20:12 -0600)]
video: Move video_get_info_str() prototype to a header file

This should be defined in a header file so that arguments are checked.
Move it to video.h.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_CONSOLE_EXTRA_INFO to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:53 +0000 (20:12 -0600)]
Convert CONFIG_CONSOLE_EXTRA_INFO to Kconfig

This converts the following to Kconfig:
   CONFIG_CONSOLE_EXTRA_INFO

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_VIDEO_SW_CURSOR to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:51 +0000 (20:12 -0600)]
Convert CONFIG_VIDEO_SW_CURSOR to Kconfig

This converts the following to Kconfig:
   CONFIG_VIDEO_SW_CURSOR

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
[trini: Re-convert, find all the cases where this is off]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agovideo: Drop CONFIG_VIDEO_HW_CURSOR
Simon Glass [Tue, 18 Oct 2016 02:12:50 +0000 (20:12 -0600)]
video: Drop CONFIG_VIDEO_HW_CURSOR

This is not used in U-Boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_VGA_AS_SINGLE_DEVICE to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:49 +0000 (20:12 -0600)]
Convert CONFIG_VGA_AS_SINGLE_DEVICE to Kconfig

This converts the following to Kconfig:
   CONFIG_VGA_AS_SINGLE_DEVICE

Once we migrate to driver model for video, we should be able to drop this
option.

Signed-off-by: Simon Glass <sjg@chromium.org>
7 years agovideo: Drop the sed13806 driver
Simon Glass [Tue, 18 Oct 2016 02:12:48 +0000 (20:12 -0600)]
video: Drop the sed13806 driver

This is not used in U-Boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agovideo: Drop the s3c-fb driver
Simon Glass [Tue, 18 Oct 2016 02:12:47 +0000 (20:12 -0600)]
video: Drop the s3c-fb driver

This is not used in U-Boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Minkyu Kang <mk7.kang@samsung.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agovideo: Drop the imx25lcdc driver
Simon Glass [Tue, 18 Oct 2016 02:12:46 +0000 (20:12 -0600)]
video: Drop the imx25lcdc driver

This is not used anywhere in U-Boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agovideo: Drop the smiLynxEM driver
Simon Glass [Tue, 18 Oct 2016 02:12:45 +0000 (20:12 -0600)]
video: Drop the smiLynxEM driver

This is not used in U-Boot anymore.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_SYS_CONSOLE_BG_COL et al to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:44 +0000 (20:12 -0600)]
Convert CONFIG_SYS_CONSOLE_BG_COL et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_CONSOLE_BG_COL
   CONFIG_SYS_CONSOLE_FG_COL

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_VIDEO_CT69000 to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:43 +0000 (20:12 -0600)]
Convert CONFIG_VIDEO_CT69000 to Kconfig

This converts the following to Kconfig:
   CONFIG_VIDEO_CT69000

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_CFB_CONSOLE_ANSI to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:42 +0000 (20:12 -0600)]
Convert CONFIG_CFB_CONSOLE_ANSI to Kconfig

This converts the following to Kconfig:
   CONFIG_CFB_CONSOLE_ANSI

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_CFB_CONSOLE to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:41 +0000 (20:12 -0600)]
Convert CONFIG_CFB_CONSOLE to Kconfig

This converts the following to Kconfig:
   CONFIG_CFB_CONSOLE

Signed-off-by: Simon Glass <sjg@chromium.org>
7 years agoconfig: Drop CONFIG_CONSOLE_DEV
Simon Glass [Tue, 18 Oct 2016 02:12:39 +0000 (20:12 -0600)]
config: Drop CONFIG_CONSOLE_DEV

This is not really a config. Rename it to avoid confusion.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
7 years agoconfig: Drop CONFIG_CONSOLE
Simon Glass [Tue, 18 Oct 2016 02:12:38 +0000 (20:12 -0600)]
config: Drop CONFIG_CONSOLE

This is not really a config. Rename it to avoid confusion.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
7 years agoConvert CONFIG_SYS_CONSOLE_IS_IN_ENV and CONFIG_CONSOLE_MUX to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:37 +0000 (20:12 -0600)]
Convert CONFIG_SYS_CONSOLE_IS_IN_ENV and CONFIG_CONSOLE_MUX to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_CONSOLE_IS_IN_ENV
   CONFIG_CONSOLE_MUX

Signed-off-by: Simon Glass <sjg@chromium.org>
[trini: Re-order, re-migrate]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoConvert CONFIG_LCD to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:56 +0000 (20:12 -0600)]
Convert CONFIG_LCD to Kconfig

This converts the following to Kconfig:
   CONFIG_LCD

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
7 years agoConvert CONFIG_VIDEO to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:40 +0000 (20:12 -0600)]
Convert CONFIG_VIDEO to Kconfig

This converts the following to Kconfig:
   CONFIG_VIDEO

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
7 years agoConvert CONSOLE_PRE_CONSOLE_BUFFER options to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:36 +0000 (20:12 -0600)]
Convert CONSOLE_PRE_CONSOLE_BUFFER options to Kconfig

Move these option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jagan Teki <jteki@openedev.com>
7 years agoConvert SILENT_CONSOLE options to Kconfig
Simon Glass [Tue, 18 Oct 2016 02:12:35 +0000 (20:12 -0600)]
Convert SILENT_CONSOLE options to Kconfig

Move these option to Kconfig and tidy up existing uses.

The Power PC boards don't have a suitable common element: the common header
files don't appear to line up with the Kconfig files as far as I can tell.
This results in a lot of defconfig changes.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jagan Teki <jteki@openedev.com>
[trini: Re-migrate, update common/console.c logic]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoRemove some merge markers
Simon Glass [Tue, 18 Oct 2016 02:12:34 +0000 (20:12 -0600)]
Remove some merge markers

These two files have patch merge markers in them, within comments or
strings. Remove then, so that a search for merge markers does not show up
matches in these files.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
7 years agotest/py: ensure a log section exists for skipped tests
Stephen Warren [Mon, 17 Oct 2016 23:25:52 +0000 (17:25 -0600)]
test/py: ensure a log section exists for skipped tests

In pytest 3, runtestprotocol() may not call pytest_runtest_setup() if
the test is skipped. That call is required to create a section for the
test in the log file. If this is skipped, the call to log.end_section()
at the tail of pytest_runtest_protocol() will throw an exception. This
patch ensures that a log section always exists, both to avoid the
exception and to ensure that a consistently structured log file is
always created.

Cc: Stefan Brüns <stefan.bruens@rwth-aachen.de>
Reported-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Tom Rini <trini@konsulko.com>
7 years agolibfdt: Sync overlay with upstream
Maxime Ripard [Mon, 17 Oct 2016 20:50:18 +0000 (22:50 +0200)]
libfdt: Sync overlay with upstream

Now that the overlay code has been merge upstream, update our copy to
what's been merged, since a significant number of issues have been fixed
during the merge process.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Simon Glass <sjg@chromium.org>
7 years agoMerge tag 'signed-efi-next' of git://github.com/agraf/u-boot
Tom Rini [Wed, 19 Oct 2016 11:48:16 +0000 (07:48 -0400)]
Merge tag 'signed-efi-next' of git://github.com/agraf/u-boot

Patch queue for efi - 2016-10-19

Highlights this time around:

  - Add run time service (power control) support for PSCI (fixed in v3)
  - Add efi gop pointer exposure
  - SMBIOS support for EFI (on ARM)
  - efi pool memory unmap support (needed for 4.8)
  - initial x86 efi payload support (fixed up in v2)
  - various bug fixes

Signed-off-by: Tom Rini <trini@konsulko.com>
Conflicts:
include/tables_csum.h

7 years agoefi_loader: Revert device_handle to disk after net boot
Alexander Graf [Tue, 18 Oct 2016 13:49:40 +0000 (15:49 +0200)]
efi_loader: Revert device_handle to disk after net boot

When you boot an efi payload from network, then exit that payload
and load another payload from disk afterwords, the disk payload will
currently see the network device as its boot path.

This breaks grub2 for example which tries to find its modules based
on the path it was loaded from.

This patch fixes that issue by always reverting to disk paths if we're
not in the network boot. That way the data structures after a network
boot look the same as before.

Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi_loader: Rename EFI_RUNTIME_{TEXT, DATA} to __efi_runtime{, _data}
Alexander Graf [Fri, 14 Oct 2016 11:45:30 +0000 (13:45 +0200)]
efi_loader: Rename EFI_RUNTIME_{TEXT, DATA} to __efi_runtime{, _data}

Compiler attributes are more commonly __foo style tags rather than big
upper case eye sores like EFI_RUNTIME_TEXT.

Simon Glass felt quite strongly about this, so this patch converts our
existing defines over to more eye friendly ones.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agox86: efi: Add EFI loader support for x86
Simon Glass [Sun, 25 Sep 2016 21:27:35 +0000 (15:27 -0600)]
x86: efi: Add EFI loader support for x86

Add the required pieces to support the EFI loader on x86.

Since U-Boot only builds for 32-bit on x86, only a 32-bit EFI application
is supported. If a 64-bit kernel must be booted, U-Boot supports this
directly using FIT (see doc/uImage.FIT/kernel.its). U-Boot can act as a
payload for both 32-bit and 64-bit EFI.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi: Fix missing EFIAPI specifiers
Simon Glass [Sun, 25 Sep 2016 21:27:32 +0000 (15:27 -0600)]
efi: Fix missing EFIAPI specifiers

These are missing in some functions. Add them to keep things consistent.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi: Use asmlinkage for EFIAPI
Simon Glass [Sun, 25 Sep 2016 21:27:31 +0000 (15:27 -0600)]
efi: Use asmlinkage for EFIAPI

This is required for x86 and is also correct for ARM (since it is empty).

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agosmbios: Provide serial number
Alexander Graf [Thu, 18 Aug 2016 23:23:31 +0000 (01:23 +0200)]
smbios: Provide serial number

If the system has a valid "serial#" environment variable set (which boards that
can find it out programatically set automatically), use that as input for the
serial number and UUID fields in the SMBIOS tables.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoefi_loader: Fix efi_install_configuration_table
Alexander Graf [Thu, 18 Aug 2016 23:23:30 +0000 (01:23 +0200)]
efi_loader: Fix efi_install_configuration_table

So far we were only installing the FDT table and didn't have space
to store any other. Hence nobody realized that our efi table allocation
was broken in that it didn't set the indicator for the number of tables
plus one.

This patch fixes it, allowing code to allocate new efi tables.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agosmbios: Expose in efi_loader as table
Alexander Graf [Thu, 18 Aug 2016 23:23:29 +0000 (01:23 +0200)]
smbios: Expose in efi_loader as table

We can pass SMBIOS easily as EFI configuration table to an EFI payload. This
patch adds enablement for that case.

While at it, we also enable SMBIOS generation for ARM systems, since they support
EFI_LOADER.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agosmbios: Generate type 4 on non-x86 systems
Alexander Graf [Thu, 18 Aug 2016 23:23:28 +0000 (01:23 +0200)]
smbios: Generate type 4 on non-x86 systems

The type 4 table generation code is very x86 centric today. Refactor things
out into the device model cpu class to allow the tables to get generated for
other architectures as well.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agocpu: Add get_vendor callback
Alexander Graf [Thu, 18 Aug 2016 23:23:27 +0000 (01:23 +0200)]
cpu: Add get_vendor callback

The CPU udevice already has a few callbacks to retreive information
about the currently running CPUs. This patch adds a new get_vendor()
call that returns the vendor of the main CPUs.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agocpu: Add DMTF id and family fields
Alexander Graf [Thu, 18 Aug 2016 23:23:26 +0000 (01:23 +0200)]
cpu: Add DMTF id and family fields

For SMBIOS tables we need to know the CPU family as well as CPU IDs. This
patches allocates some space for them in the cpu device and populates it
on x86.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agosmbios: Allow compilation on 64bit systems
Alexander Graf [Thu, 18 Aug 2016 23:23:25 +0000 (01:23 +0200)]
smbios: Allow compilation on 64bit systems

The SMBIOS generation code passes pointers as u32. That causes the compiler
to warn on casts to pointers. This patch moves all address pointers to
uintptr_t instead.

Technically u32 would be enough for the current SMBIOS2 style tables, but
we may want to extend the code to SMBIOS3 in the future which is 64bit
address capable.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoefi_loader: Expose efi_install_configuration_table
Alexander Graf [Thu, 18 Aug 2016 23:23:24 +0000 (01:23 +0200)]
efi_loader: Expose efi_install_configuration_table

We want to be able to add configuration table entries from our own code as
well as from EFI payload code. Export the boot service function internally
too, so that we can reuse it.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agox86: Move smbios generation into arch independent directory
Alexander Graf [Thu, 18 Aug 2016 23:23:23 +0000 (01:23 +0200)]
x86: Move smbios generation into arch independent directory

We will need the SMBIOS generation function on ARM as well going forward,
so let's move it into a non arch specific location.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agox86: Move table csum into separate file
Alexander Graf [Thu, 18 Aug 2016 23:23:21 +0000 (01:23 +0200)]
x86: Move table csum into separate file

We need the checksum function without all the other table functionality
soon, so let's split it out into its own C file.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agoefi_loader: gop: Expose fb when 32bpp
Alexander Graf [Mon, 6 Jun 2016 22:57:05 +0000 (00:57 +0200)]
efi_loader: gop: Expose fb when 32bpp

When we're running in 32bpp mode, expose the frame buffer address
to our payloads so that Linux efifb can pick it up.

Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi_loader: Allow bouncing for network
Alexander Graf [Tue, 6 Sep 2016 12:26:27 +0000 (14:26 +0200)]
efi_loader: Allow bouncing for network

So far bounce buffers were only used for disk I/O, but network I/O
may suffer from the same problem.

On platforms that have problems doing DMA on high addresses, let's
also bounce outgoing network packets. Incoming ones always already
get bounced.

This patch fixes EFI PXE boot on ZynqMP for me.

Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi_loader: Add generic PSCI RTS
Alexander Graf [Tue, 16 Aug 2016 19:08:49 +0000 (21:08 +0200)]
efi_loader: Add generic PSCI RTS

Now that we have generic PSCI reset and shutdown support in place, we can
advertise those as EFI Run Time Services, allowing efi applications and
OSs to reset and shut down systems.

Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoarm: Provide common PSCI based reset handler
Alexander Graf [Tue, 16 Aug 2016 19:08:48 +0000 (21:08 +0200)]
arm: Provide common PSCI based reset handler

Most armv8 systems have PSCI support enabled in EL3, either through
ARM Trusted Firmware or other firmware.

On these systems, we do not need to implement system reset manually,
but can instead rely on higher level firmware to deal with it.

The exclude list seems excessive right now, but NXP is working on
providing an in-tree PSCI implementation, so that all NXP systems
can eventually use PSCI as well.

Signed-off-by: Alexander Graf <agraf@suse.de>
[agraf: fix meson]
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoMerge branch 'master' of git://git.denx.de/u-boot-uniphier
Tom Rini [Tue, 18 Oct 2016 22:48:04 +0000 (18:48 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-uniphier

7 years agoMerge git://git.denx.de/u-boot-x86
Tom Rini [Tue, 18 Oct 2016 14:20:26 +0000 (10:20 -0400)]
Merge git://git.denx.de/u-boot-x86