oweals/u-boot.git
7 years agomoveconfig: Tidy up the documentation and add hints
Simon Glass [Fri, 2 Jun 2017 01:39:00 +0000 (19:39 -0600)]
moveconfig: Tidy up the documentation and add hints

The newest clean-up features are not mentioned in the docs. Fix this and
add a few hints for particular workflows that are hopefully helpful.

Signed-off-by: Simon Glass <sjg@chromium.org>
7 years agomoveconfig: Allow reading the defconfig list from stdin
Simon Glass [Fri, 2 Jun 2017 01:38:59 +0000 (19:38 -0600)]
moveconfig: Allow reading the defconfig list from stdin

Support passes in a defconfig filename of '-' to read the list from stdin
instead of from a file.

Signed-off-by: Simon Glass <sjg@chromium.org>
7 years agomoveconfig: Support providing a path to the defconfig files
Simon Glass [Fri, 2 Jun 2017 01:38:58 +0000 (19:38 -0600)]
moveconfig: Support providing a path to the defconfig files

It is convenient to provide the full patch to the defconfig files in some
situations, e.g. when the file was generated by a shell command (e.g.
'ls configs/zynq*').

Add support for this, and move the globbing code into a function with its
own documentation.

Signed-off-by: Simon Glass <sjg@chromium.org>
7 years agorockchip: dts: rk3328: add aliases for mmc controller
Kever Yang [Thu, 18 May 2017 08:05:20 +0000 (16:05 +0800)]
rockchip: dts: rk3328: add aliases for mmc controller

Add aliases for mmc controller to get a fixed order with
emmc at index 0 and sdmmc at index 1.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agodm: core: Add uclass_first/next_device_check()
Simon Glass [Mon, 24 Apr 2017 02:10:45 +0000 (20:10 -0600)]
dm: core: Add uclass_first/next_device_check()

Sometimes it is useful to iterate through all devices in a uclass and
skip over those which do not work correctly (e.g fail to probe). Add two
new functions to provide this feature.

The caller must check the return value each time to make sure that the
device is valid. But the device pointer is always returned.

Signed-off-by: Simon Glass <sjg@chromium.org>
7 years agodm: core: Test uclass_first/next_device() on probe failure
Simon Glass [Mon, 24 Apr 2017 02:10:44 +0000 (20:10 -0600)]
dm: core: Test uclass_first/next_device() on probe failure

Add some tests which check the behaviour of uclass_first_device() and
uclass_next_device() when probing of a device fails.

Signed-off-by: Simon Glass <sjg@chromium.org>
7 years agodm: core: Clarify uclass_first/next_device() comments
Simon Glass [Mon, 24 Apr 2017 02:10:43 +0000 (20:10 -0600)]
dm: core: Clarify uclass_first/next_device() comments

These are not as clear as they could be. Tidy them up a bit. Also fix a
tiny code-style nit.

Signed-off-by: Simon Glass <sjg@chromium.org>
7 years agopipe3: Fix broken dependency
Jean-Jacques Hiblot [Fri, 7 Jul 2017 10:13:34 +0000 (12:13 +0200)]
pipe3: Fix broken dependency

ARCH_OMAP2 has been renamed ARCH_OMAP2PLUS in commit a93fbf4a7892
("ARM: omap2+: rename config to ARCH_OMAP2PLUS and consolidate Kconfig")

Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agomtd: stm32: use parameter instead of default value
Patrice Chotard [Tue, 4 Jul 2017 16:24:43 +0000 (18:24 +0200)]
mtd: stm32: use parameter instead of default value

To set wait state, a hard coded value is used instead of using
latency parameter. stm32_flash_latency_cfg() is currently used
in arch/arm/mach-stm32/stm32f4/clock.c and in
drivers/clk/clk_stm32f7.c with, in both case, "5" as parameter.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
7 years agoarm: mach-keystone: Modify secure image size before copy
Andrew F. Davis [Thu, 29 Jun 2017 13:38:25 +0000 (08:38 -0500)]
arm: mach-keystone: Modify secure image size before copy

The size of the secure image does not include the size of the
header, subtract this out before we move the image or we grab
extra data after the image.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
7 years agoARM: dts: OMAP5+: Enable gpio in SPL
Lokesh Vutla [Tue, 27 Jun 2017 08:20:58 +0000 (13:50 +0530)]
ARM: dts: OMAP5+: Enable gpio in SPL

gpio2 is used to detect lcd based on which pin mux is done in SPL.
gpio7 is used to enable vtt regulator. Enable these two gpio nodes
in SPL.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoarm: omap4+: Enable spl_early_init()
Lokesh Vutla [Tue, 27 Jun 2017 08:20:57 +0000 (13:50 +0530)]
arm: omap4+: Enable spl_early_init()

Enable spl_early_init() so that spl can use
DT very early during boot.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoarm: omap: Detect boot mode very early
Lokesh Vutla [Tue, 27 Jun 2017 08:20:56 +0000 (13:50 +0530)]
arm: omap: Detect boot mode very early

ROM stores the boot params information in a known location
and passes it to SPL. This information needs to be copied
very early during boot or else there is a chance of getting
corrupted by SPL. So move this boot device detection very early
during boot.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM64: poplar: hi3798cv200: u-boot support for Poplar 96Boards
Jorge Ramirez-Ortiz [Mon, 26 Jun 2017 13:52:49 +0000 (15:52 +0200)]
ARM64: poplar: hi3798cv200: u-boot support for Poplar 96Boards

This port adds support for:
        1) Serial
        2) eMMC
        3) USB

It has been tested with ARM TRUSTED FIRMWARE running u-boot as the
BL33 executable [see board's README]

eMMC has been tested for reading and booting the loader and linux
kernels as well as saving the u-boot environment.

USB has been tested with ASIX networking adapter and SanDisk 7.4GB
drive.

PSCI has been tested via the reset call (PSCI executes from DDR)

The firwmare upgrade process has been tested via TFTP and USB FAT
filesystem containing the fastboot.bin image in one of the partitions.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
7 years agodriver: mmc: update debug info
Jorge Ramirez-Ortiz [Mon, 26 Jun 2017 13:52:48 +0000 (15:52 +0200)]
driver: mmc: update debug info

This driver is used in another board; remove board information from
the driver debug log.

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoARM64: dts: hi3798cv200-poplar: add device tree bindings
Jorge Ramirez-Ortiz [Mon, 26 Jun 2017 13:52:47 +0000 (15:52 +0200)]
ARM64: dts: hi3798cv200-poplar: add device tree bindings

Pulled from Linux 4.12-rc3

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agopinctrl: stm32: add set_state ops
Christophe Kerello [Tue, 20 Jun 2017 15:04:19 +0000 (17:04 +0200)]
pinctrl: stm32: add set_state ops

set_state_ops is kept under PINCTRL_FULL flag in order
to decrease memory footprint in some configuration.
PINCTRL_FULL can be enabled for debug purpose.

Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
7 years agopinctrl: stm32: handle a configuration list
Christophe Kerello [Tue, 20 Jun 2017 15:04:18 +0000 (17:04 +0200)]
pinctrl: stm32: handle a configuration list

This patch handles a configuration list behind pinctrl-0
like pinctrl-0 = <&qspi_clk_a &qspi_bk1_a &qspi_bk2_a>;

Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
Acked-by: Vikas MANOCHA <vikas.manocha@st.com>
7 years agodefconfig: k2g_evm_defconfig: Add K2G ICE to OF_LIST
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:33 +0000 (17:25 -0500)]
defconfig: k2g_evm_defconfig: Add K2G ICE to OF_LIST

Include K2G ICE to OF_LIST so it can be used for runtime board
detection.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: k2g: Add K2G ICE DTB to the list of possible DTBs
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:32 +0000 (17:25 -0500)]
ARM: k2g: Add K2G ICE DTB to the list of possible DTBs

K2G ICE evm will have its own dtb. Therefore, add it to the list of dtbs
located in the appended U-boot dtb FIT image. Therefore, when swapping out
dtbs K2G ICE boards can grab the correct one.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: dts: k2g: Add DT support for K2G Industrial Communication Engine evm
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:31 +0000 (17:25 -0500)]
ARM: dts: k2g: Add DT support for K2G Industrial Communication Engine evm

Add basic DT support for K2G ICE evm. Only minimal peripherals are
supported to allow console output and MMC boot.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: dts: k2g: Disable netcp by default
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:30 +0000 (17:25 -0500)]
ARM: dts: k2g: Disable netcp by default

Disable netcp by default like all other peripherals in the dtsi file.
Enable the peripheral explicitly in the board specific dts file.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: dts: keystone-k2g-evm: Add unit address to memory node
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:29 +0000 (17:25 -0500)]
ARM: dts: keystone-k2g-evm: Add unit address to memory node

Upstream Linux has the unit address being added to the various 66AK2Gx
boards dts. Therefore, update the dts to mimic this change.

Also remove memory node from the base K2G dtsi file.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: dts: keystone-k2g: Remove skeleton.dtsi
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:28 +0000 (17:25 -0500)]
ARM: dts: keystone-k2g: Remove skeleton.dtsi

Adding the unit address to the memory node was causing the below error:
Warning (reg_format): "reg" property in /memory has invalid length
(8 bytes) (#address-cells == 2, #size-cells == 2)

Further debugging showed that this was due to the memory node added by
default to skeleton.dtsi which was being included in keystone-k2g.dtsi.
Adding a missing node was all that was needed to remove this deprecated
dtsi file from the SoC dtsi. With skeleton.dtsi removed the dtc compiler
no longer complained about including the unit address for the memory node.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: k2g: Update board_name u-boot env variable at runtime
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:27 +0000 (17:25 -0500)]
ARM: k2g: Update board_name u-boot env variable at runtime

Enable CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG to allow "board_name" to
be set depending on the board it is being ran on.

Update findfdt to use this new dynamic board_name value to determine
which dtb should be used.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: k2g: Use board detection to wrap K2G GP specific calls
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:26 +0000 (17:25 -0500)]
ARM: k2g: Use board detection to wrap K2G GP specific calls

Certain peripherals used by K2G GP aren't used on K2G ICE evm. Or
configuration is slightly different. Therefore, use board detection to
deal with these variations.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoboard: ks2: Use board detection to wrap code not specific to K2G ICE evm
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:25 +0000 (17:25 -0500)]
board: ks2: Use board detection to wrap code not specific to K2G ICE evm

Some code doesn't apply to K2G ICE evm. Therefore, use board detection to
wrap these calls.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: k2g: Add DDR3 configuration for K2G ICE evm
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:24 +0000 (17:25 -0500)]
ARM: k2g: Add DDR3 configuration for K2G ICE evm

Add configuration settings used by the K2G ICE evm. Also use board
detection to determine which DDR3 configuration to use.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: k2g: Add pinmux support for K2G ICE evm
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:23 +0000 (17:25 -0500)]
ARM: k2g: Add pinmux support for K2G ICE evm

Add basic pinmux data for new K2G ICE evm. Also add pinmuxing for a
generic K2G evm which includes I2C 0 and 1 used for board detection
purposes.

Since multiple K2G boards are supported that means initially generic
pinmuxing should be used when board detection hasn't ran. Once board
detection runs the proper pinmuxing can be reran to match the board
being ran on.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoks2_evm: Add EEPROM based board detection helper functions
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:22 +0000 (17:25 -0500)]
ks2_evm: Add EEPROM based board detection helper functions

Add a function that can be used to determine if the board being ran on is
a K2G Industrial Communication Engine EVM or K2G General Purpose EVM based
on values programmed on the EEPROM.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: k2g: Program DDRPHY_DATX8 registers via mask and value variables
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:21 +0000 (17:25 -0500)]
ARM: k2g: Program DDRPHY_DATX8 registers via mask and value variables

Different K2G evms may need to program the various
KS2_DDRPHY_DATX8_X_OFFSET registers in different ways. Therefore, use
the mask and val registers for each KS2_DDRPHY_DATAX_X_OFFSET to
properly program the register.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: k2g: Program DDR PHY MR2 register with the default value
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:20 +0000 (17:25 -0500)]
ARM: k2g: Program DDR PHY MR2 register with the default value

K2G GP doesn't require the MR2 register to be programed since the
default is good enough. However, newer K2G boards do need to change
this register value. Therefore, instead of not writing this register if
ran on a K2G board just program the value to be written to match the
default/reset value.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: keystone2: Add additional fields used for DDR3 configuration
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:19 +0000 (17:25 -0500)]
ARM: keystone2: Add additional fields used for DDR3 configuration

Future boards will need to configure DDR3 registers in a slightly
different manner. Support this by defining additional variables and
defines that will be utilized later.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agodefconfig: keystone2: Enable U-boot runtime DTB detection
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:18 +0000 (17:25 -0500)]
defconfig: keystone2: Enable U-boot runtime DTB detection

Enable various config options to allow U-boot at runtime to select the
proper dtb to use from the list of dtb's within the FIT image.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoks2_evm: Add EEPROM based board detection
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:17 +0000 (17:25 -0500)]
ks2_evm: Add EEPROM based board detection

Some K2G evms have their EEPROM programming while most do not. Therefore,
add EEPROM board detection to be used as the default method and fall back
to the alternative board detection when needed.

Also reorder board configuration. Perform bare minimal configuration
initially since board detection hasn't ran. Finish board configuration
once the board has been identified.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: keystone2: Define board_fit_config_name_match for Keystone 2 boards
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:16 +0000 (17:25 -0500)]
ARM: keystone2: Define board_fit_config_name_match for Keystone 2 boards

Now with support for U-boot runtime dtb selection each board needs to
define board_fit_config_name_match so U-boot can determine what the
correct dtb is within the FIT blob.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: k2g: Define embedded_dtb_select for runtime DTB selection in U-boot
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:15 +0000 (17:25 -0500)]
ARM: k2g: Define embedded_dtb_select for runtime DTB selection in U-boot

For K2G, runtime DTB selection utilizes the embedded_dtb_select function.
Therefore, define the function which will perform a EEPROM read and then
retries selecting the correct dtb now that it can detect which board its
on. For other Keystone devices use an empty function since they will still
use the embedded FIT functionality but their FIT will only contain a single
dtb.

Most production K2G boards do not have their EEPROM programmed. Therefore,
perform a test to verify a K2G GP is currently being used and if it is then
set the values normally set by a EEPROM read.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: keystone2: Allow to build with all image formats
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:14 +0000 (17:25 -0500)]
ARM: keystone2: Allow to build with all image formats

u-boot.bin is a copy of:
u-boot-fit-dtb.bin if CONFIG_FIT_EMBED is enabled,
u-boot-dtb.bin if CONFIG_OF_SEPARATE is enabled,
u-boot-nodtb.bin if DT is not enabled.
So, use u-boot.bin to to generate keystone images instead of
u-boot-dtb.bin

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoMakefile: Build additional binaries for dtb FIT blobs appended to U-boot
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:13 +0000 (17:25 -0500)]
Makefile: Build additional binaries for dtb FIT blobs appended to U-boot

Add additional make targets and options for building embedded FIT U-boot
images.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoboard_f: Add new function to allow runtime DTB selection
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:12 +0000 (17:25 -0500)]
board_f: Add new function to allow runtime DTB selection

Runtime U-boot dtb selection is generally a two step process. First step
is to simply use an initial generic dtb. The second step is to select
the dtb and perhaps execute additional code ones U-boot knows what board
it is running on. Embedded_dtb_select handles the second step by allowing
board specific code to run and perform what ever necessary configuration
that is needed.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoarm: dts: Add new "generic" 66AK2Gx device tree file.
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:11 +0000 (17:25 -0500)]
arm: dts: Add new "generic" 66AK2Gx device tree file.

With U-boot runtime board detect for DTB selection a "default" dtb needs
to be created. This will be used temporarily until the "proper" dtb is
selected.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: dts: k2g: Introduce U-boot specific dtsi file
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:10 +0000 (17:25 -0500)]
ARM: dts: k2g: Introduce U-boot specific dtsi file

Introduce K2G evm specific dtsi file for U-boot specific configurations.
This will help seperate U-boot only configurations thus making it easier to
keep device tree files synced between U-boot and Linux.

For now only add nodes to allow i2c drivers to be probed early during
the boot process.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agodts: Allow OF_LIST to depend on FIT_EMBED
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:09 +0000 (17:25 -0500)]
dts: Allow OF_LIST to depend on FIT_EMBED

OF_LIST will be useable by SPL and U-boot. Therefore, update its
dependency to allow it to be enable by either SPL or U-boot specific
config option.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
Acked-by: Andrew F. Davis <afd@ti.com>
7 years agoti: common: board_detect: Add function to determine if EEPROM was read
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:08 +0000 (17:25 -0500)]
ti: common: board_detect: Add function to determine if EEPROM was read

When the EEPROM is first read its contents are stored in memory as a
cache to avoid further I2C operations. To determine if the EEPROM was
previously read the easiest way is to check the memory to see if the
EEPROM's magic header value is set. Create a new function that can
determine if the EEPROM was previously read or not without having to
perform a I2C transaction.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agofdt: Enable selecting correct DTB from appended FIT Image
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:07 +0000 (17:25 -0500)]
fdt: Enable selecting correct DTB from appended FIT Image

This patch gives U-boot the runtime support to have the board specific
code decide which FDT to use. This is especially useful for devices
that need this type of runtime determination and also doesn't use SPL.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoboot_fit: Create helper functions that can be used to select DTB out of FIT
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:06 +0000 (17:25 -0500)]
boot_fit: Create helper functions that can be used to select DTB out of FIT

Some platforms may append a FIT image to the U-boot image. This function
aids in parsing the FIT image and selecting the correct DTB at runtime.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agospl: fit: Break out some functions into a common file
Cooper Jr., Franklin [Fri, 16 Jun 2017 22:25:05 +0000 (17:25 -0500)]
spl: fit: Break out some functions into a common file

Some of the functions within spl_fit will be used for non spl purposes.
Instead of duplicating functions simply break the functions to be reused
into its own file.

Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[trini: Only add the new define to image.h, otherwise we see breakage
due to massive include leakage into host tools in some cases]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoti: common: board_detect: Allow settings board detection variables manually
Nishanth Menon [Fri, 16 Jun 2017 22:25:04 +0000 (17:25 -0500)]
ti: common: board_detect: Allow settings board detection variables manually

In some situations the EEPROM used for board detection may not be
programmed or simply programmed incorrectly. Therefore, it may be
necessary to "simulate" reading the contents of the EEPROM to set
appropriate variables used in the board detection code.

This may also be helpful in certain boot modes where doing i2c reads
may be costly and the config supports running only a specific board.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Franklin S Cooper Jr. <fcooper@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: dts: keystone-k2e-evm: Add U-boot specific dtsi file
Cooper Jr., Franklin [Fri, 16 Jun 2017 21:16:14 +0000 (16:16 -0500)]
ARM: dts: keystone-k2e-evm: Add U-boot specific dtsi file

With Davinci I2C switching to device model, K2E requires U-boot specific
device tree entries. This is only required for I2C 1 which is needed
extremely early during the boot process.

Fixes: 1743d040b1df ("ARM: keystone: Enable DM_I2C by default")
Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com>
7 years agoPrepare v2017.07 v2017.07
Tom Rini [Mon, 10 Jul 2017 17:07:38 +0000 (13:07 -0400)]
Prepare v2017.07

Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agokm/common: remove unused function declarations
Holger Brunck [Mon, 10 Jul 2017 07:46:23 +0000 (09:46 +0200)]
km/common: remove unused function declarations

Cc: Wolfgang Denk <wd@denx.de>
Cc: Heiko Schocher <hs@denx.de>
Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
7 years agocmd, nand: fix broken output of "nand info"
Lothar Waßmann [Mon, 10 Jul 2017 06:44:24 +0000 (08:44 +0200)]
cmd, nand: fix broken output of "nand info"

If the value of either "nand options" or "bbt options" has a zero in
the most significant nibble, the '0x' prefix will be isolated from the
value like shown below:
|Device 0: nand0, sector size 128 KiB
|  Page size       2048 b
|  OOB size          64 b
|  Erase size    131072 b
|  subpagesize     2048 b
|  options     0x40000200
|  bbt options 0x   60000

Change the format string to produce leading zeroes filling the gap.

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
7 years agolibfdt: Drop -FDT_ERR_TOODEEP
Simon Glass [Mon, 10 Jul 2017 03:30:17 +0000 (21:30 -0600)]
libfdt: Drop -FDT_ERR_TOODEEP

This error code has not been upstreamed and is not really needed since it
is unlikely to be triggered. Drop it to maintain compatability with
upstream.

Reported-by: Peter Robinson <pbrobinson@gmail.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Peter Robinson <pbrobinson@gmail.com>
7 years agoconfigs: Resync defconfigs
Tom Rini [Sun, 9 Jul 2017 00:32:11 +0000 (20:32 -0400)]
configs: Resync defconfigs

Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoMAINTAINERS: drop bcm283x/rpi maintainership
Stephen Warren [Fri, 7 Jul 2017 16:20:43 +0000 (10:20 -0600)]
MAINTAINERS: drop bcm283x/rpi maintainership

It's been a while since I've touched U-Boot on the Raspberry Pi and
other things have been taking my time. Drop my maintainership for this
port.

Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
7 years agopowerpc, 8xx: Add support for MCR3000 board from CSSI
Christophe Leroy [Fri, 7 Jul 2017 08:16:42 +0000 (10:16 +0200)]
powerpc, 8xx: Add support for MCR3000 board from CSSI

CS Systemes d'Information (CSSI) manufactures two boards, named MCR3000
and CMPC885 which are respectively based on MPC866 and MPC885 processors.

This patch adds support for the first board.

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
7 years agopowerpc, 8xx: move Serial driver to drivers/serial/
Christophe Leroy [Thu, 6 Jul 2017 08:33:27 +0000 (10:33 +0200)]
powerpc, 8xx: move Serial driver to drivers/serial/

At the same time, move to Kconfig

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
7 years agopowerpc, 8xx: move SPI driver to drivers/spi/
Christophe Leroy [Thu, 6 Jul 2017 08:33:25 +0000 (10:33 +0200)]
powerpc, 8xx: move SPI driver to drivers/spi/

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
7 years agopowerpc, 8xx: move FEC Ethernet driver in drivers/net
Christophe Leroy [Thu, 6 Jul 2017 08:33:23 +0000 (10:33 +0200)]
powerpc, 8xx: move FEC Ethernet driver in drivers/net

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
7 years agopowerpc, 8xx: Migrate to Kconfig
Christophe Leroy [Thu, 6 Jul 2017 08:33:21 +0000 (10:33 +0200)]
powerpc, 8xx: Migrate to Kconfig

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agopowerpc, 8xx: Properly set CPM frequency in the device tree
Christophe Leroy [Thu, 6 Jul 2017 08:33:19 +0000 (10:33 +0200)]
powerpc, 8xx: Properly set CPM frequency in the device tree

For processors whose core runs at twice the bus frequency,
the fallback frequency calculation in Linux provides a wrong
result. Therefore, U-boot needs to pass the correct value.

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agopowerpc, 8xx: Handle checkpatch errors and some of the warnings/checks
Christophe Leroy [Thu, 6 Jul 2017 08:33:17 +0000 (10:33 +0200)]
powerpc, 8xx: Handle checkpatch errors and some of the warnings/checks

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agopowerpc, 8xx: Implement GLL2 ERRATA
Christophe Leroy [Thu, 6 Jul 2017 14:49:56 +0000 (16:49 +0200)]
powerpc, 8xx: Implement GLL2 ERRATA

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Acked-by: Wolfgang Denk <wd@denx.de>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agopowerpc, 8xx: Use IO accessors to access IO memory
Christophe Leroy [Thu, 6 Jul 2017 08:33:13 +0000 (10:33 +0200)]
powerpc, 8xx: Use IO accessors to access IO memory

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agopowerpc, 8xx: move specific reginfo
Christophe Leroy [Thu, 6 Jul 2017 08:33:11 +0000 (10:33 +0200)]
powerpc, 8xx: move specific reginfo

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agopowerpc, 8xx: move immap.c in arch/powerpc/cpu/mpc8xx/
Christophe Leroy [Thu, 6 Jul 2017 08:33:09 +0000 (10:33 +0200)]
powerpc, 8xx: move immap.c in arch/powerpc/cpu/mpc8xx/

immap.c used to be common to several CPUs. It is now
only linked to the 8xx, so this patch moves it into
arch/powerpc/cpu/mpc8xx/

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agopowerpc: Partialy restore core of mpc8xx
Christophe Leroy [Thu, 6 Jul 2017 08:23:22 +0000 (10:23 +0200)]
powerpc: Partialy restore core of mpc8xx

CS Systemes d'Information (CSSI) manufactures 8xx boards for
critical communication systems. Those boards have been
running U-Boot since 2010 and will have to be maintained
until at least 2027.

commit 5b8e76c35ec312a3f73126bd1a2d2c0965b98a9f
("powerpc, 8xx: remove support for 8xx") orphaned those boards
by removing support for the mpc8xx CPU.

This commit partially restores support for the 8xx, with the
following limitations:
- Restores support for MPC866 and MPC885 only
- Does not restore IDE, PCMCIA, I2C, USB
- Does not restore examples
- Does not restore POST
- Does not restore Ethernet on SCC
- Does not restore console on SCC
- Does not restore bedbug and kgdb support

As the 866 and 885 do not support the following features,
they are not restored either:
- VIDEO / LCD
- RTC clock

The CPM uCODE patch is not restored either, because:
- 866 and 885 already have support for I2C and SPI relocation
without a uCODE patch
- relocation of SMC, I2C or SPI is only needed for using SCCs
for Ethernet or QMC

The dynamic setup/calculation of clocks is removed, we
expect the target being use with the clock and PLPRCR register
defined in the configuration.
All the clock settings for 8xx prior to 866 is removed as
well as we now only support 866 and 885.

This code is mature and addresses mature boards. Therefore
all code enclosed in '#if 0/#endif' and '#if XX_DEBUG/#endif'
is unneeded.

The following files are not restored by this patch:

- arch/powerpc/cpu/mpc8xx/bedbug_860.c
- arch/powerpc/cpu/mpc8xx/fec.h
- arch/powerpc/cpu/mpc8xx/kgdb.S
- arch/powerpc/cpu/mpc8xx/plprcr_write.S
- arch/powerpc/cpu/mpc8xx/scc.c
- arch/powerpc/cpu/mpc8xx/upatch.c
- arch/powerpc/cpu/mpc8xx/video.c
- arch/powerpc/include/asm/status_led.h
- arch/powerpc/lib/ide.c
- arch/powerpc/lib/ide.h
- doc/README.MPC866
- drivers/pcmcia/mpc8xx_pcmcia.c
- drivers/rtc/mpc8xx.c
- drivers/usb/gadget/mpc8xx_udc.c
- drivers/video/mpc8xx_lcd.c
- examples/standalone/test_burst.c
- examples/standalone/test_burst.h
- examples/standalone/test_burst_lib.S
- examples/standalone/timer.c
- include/mpc823_lcd.h
- include/usb/mpc8xx_udc.h
- post/cpu/mpc8xx/Makefile
- post/cpu/mpc8xx/cache.c
- post/cpu/mpc8xx/cache_8xx.S
- post/cpu/mpc8xx/ether.c
- post/cpu/mpc8xx/spr.c
- post/cpu/mpc8xx/uart.c
- post/cpu/mpc8xx/usb.c
- post/cpu/mpc8xx/watchdog.c

Some of the restored files are not located in a proper location.
In order to keep traceability of the changes, they will be
moved to their correct location and moved to Kconfig in a
followup patch.

This patch also declares CSSI as point of contact for the update
of the 8xx platform, as those boards are the only ones still
being maintained on the 8xx area. A later patch will add
those boards to the tree.

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
7 years agoam335x: sl50: Enable CONFIG_AUTOBOOT_KEYED
Enric Balletbo i Serra [Thu, 6 Jul 2017 09:37:58 +0000 (11:37 +0200)]
am335x: sl50: Enable CONFIG_AUTOBOOT_KEYED

On startup the SL50 board halt at U-Boot prompt. Use CONFIG_AUTOBOOT_KEYED
to enable autoboot for this board and define the <SPACE> key to get the
U-Boot prompt.

Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
7 years agoboard/BuR/brppt1: fix MMC boot
Hannes Schmelzer [Thu, 6 Jul 2017 06:47:14 +0000 (08:47 +0200)]
board/BuR/brppt1: fix MMC boot

since commit
'd5abcf94c7123167725fc22ace342f0d455093c1' -
ti: boot: Register the MMC controllers in SPL in the same way as in u-boot

MMC boot on brppt1 board is broken, with this commit we make our board
    working again.

Signed-off-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com>
7 years agowdt: Unify option of timeout value
Andy Shevchenko [Wed, 5 Jul 2017 17:44:08 +0000 (20:44 +0300)]
wdt: Unify option of timeout value

There is no need to duplicate same option with different name.

Kill HW_WATCHDOG_TIMEOUT_MS in favor of WATCHDOG_TIMEOUT_MSECS.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agowdt: Fix spelling Resettting -> Resetting
Andy Shevchenko [Wed, 5 Jul 2017 17:44:06 +0000 (20:44 +0300)]
wdt: Fix spelling Resettting -> Resetting

Fix spelling Resettting -> Resetting.
No functional change intended.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agoavr32: Retire AVR32 for good
Andy Shevchenko [Wed, 5 Jul 2017 13:25:22 +0000 (16:25 +0300)]
avr32: Retire AVR32 for good

AVR32 is gone. It's already more than two years for no support in Buildroot,
even longer there is no support in GCC (last version is heavily patched 4.2.4).

Linux kernel v4.12 got rid of it (and v4.11 didn't build successfully).

There is no good point to keep this support in U-Boot either.

Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
7 years agostm32: Correct positioning of declaration
Simon Glass [Sat, 1 Jul 2017 17:06:09 +0000 (11:06 -0600)]
stm32: Correct positioning of declaration

The current code gives a warning:

arch/arm/mach-stm32/stm32f7/soc.c: In function 'arch_cpu_init':
arch/arm/mach-stm32/stm32f7/soc.c:38:2: error: 'for' loop initial
    declarations are only allowed in C99 or C11 mode
  for (int i = 0; i < ARRAY_SIZE(stm32_region_config); i++)
  ^
arch/arm/mach-stm32/stm32f7/soc.c:38:2: note: use option -std=c99,
    -std=gnu99, -std=c11 or -std=gnu11 to compile your code

Fix it by moving the declaration to the top of the function.

Signed-off-by: Simon Glass <sjg@chromium.org>
Series-cc trini

7 years agokm/common: remove unused code
Holger Brunck [Fri, 30 Jun 2017 13:33:35 +0000 (15:33 +0200)]
km/common: remove unused code

The 82xx board mgcoge3ne was removed from the codebase, so this is dead
code.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Cc: Heiko Schocher <hs@denx.de>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agoconfigs: Odroid C2: enable device tree overlays
xypron.glpk@gmx.de [Thu, 29 Jun 2017 19:29:55 +0000 (21:29 +0200)]
configs: Odroid C2: enable device tree overlays

The Odroid C2 comes with several expansion options such as an RTC module.
As these expansions are not considered in the Linux device tree they have
to be enabled via device tree overlays.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
7 years agomkimage: fix display of image types list
Baruch Siach [Thu, 29 Jun 2017 17:37:08 +0000 (20:37 +0300)]
mkimage: fix display of image types list

Since commit 5b9d44df2307f (mkimage: Display a better list of available image
types) mkimage usage text suggest to "use -T to see a list of available image
types". Unfortunately, commit 02221f29deb8 (mkimage: Convert to use getopt())
broke that feature, because getopt() fails when -T has no option argument.

Add a pseudo image type name 'list' that lists all image types. Update the
usage text accordingly.

Cc: Simon Glass <sjg@chromium.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
7 years agoCHIP: add device tree overlay support
Peter Robinson [Mon, 26 Jun 2017 13:25:06 +0000 (14:25 +0100)]
CHIP: add device tree overlay support

CHIP and CHIP Pro devices have options of DIP addon boards some of which need
overlays from the beginning so it makes sense to enable device tree overlays.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
7 years ago96boards: dragonboard/hikey: add device tree overlay support
Peter Robinson [Mon, 26 Jun 2017 13:25:05 +0000 (14:25 +0100)]
96boards: dragonboard/hikey: add device tree overlay support

96boards CE devices such as the DragonBoard and Hikey devices have numerous
mezzanine options some of which need overlays from the beginning so it makes
sense to enable device tree overlays.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
7 years agoam335x: beagle/evm: add device tree overlay support
Peter Robinson [Mon, 26 Jun 2017 13:25:04 +0000 (14:25 +0100)]
am335x: beagle/evm: add device tree overlay support

TI am33xx devices such as the BeagleBone devices have numerous cape options such
as screens some of which need overlays from the beginning so it makes sense to
enable evice tree overlays.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
7 years agoRaspberry Pi: add device tree overlay support
Peter Robinson [Mon, 26 Jun 2017 13:25:03 +0000 (14:25 +0100)]
Raspberry Pi: add device tree overlay support

Raspberry Pi has numerous HAT and other HW expansion options such as screens and
cameras some of which need overlays from the beginning so it makes sense to
enable evice tree overlays.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
7 years agoarm64: use psci reset on snapdragon
Rob Clark [Mon, 26 Jun 2017 13:22:23 +0000 (09:22 -0400)]
arm64: use psci reset on snapdragon

This actually works on snapdragon.. not sure why we weren't using it.
Fixes reboot/poweroff when using UEFI.

Signed-off-by: Rob Clark <robdclark@gmail.com>
Reviewed-by: Alexander Graf <agraf@suse.de>
7 years agoigep003x: Falcon mode
Ladislav Michl [Sun, 25 Jun 2017 08:30:47 +0000 (10:30 +0200)]
igep003x: Falcon mode

Implement spl_start_uboot to let Falcon mode work.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Acked-by: Heiko Schocher <hs@denx.de>
7 years agoigep00x0: Enable UBI fastmap
Ladislav Michl [Sun, 25 Jun 2017 08:29:25 +0000 (10:29 +0200)]
igep00x0: Enable UBI fastmap

Fastmap significantly reduces flash scan time, enable it by default.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Acked-by: Heiko Schocher <hs@denx.de>
7 years agospl: Make UBI fastmap support Kconfig selectable
Ladislav Michl [Sun, 25 Jun 2017 08:26:11 +0000 (10:26 +0200)]
spl: Make UBI fastmap support Kconfig selectable

Fastmap was always enabled in ubispl, make it selectable by
CONFIG_MTD_UBI_FASTMAP.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Acked-by: Heiko Schocher <hs@denx.de>
7 years agoodroid-c2: Populate serial# environment variable from efuse
Martin Böh [Fri, 23 Jun 2017 13:40:00 +0000 (13:40 +0000)]
odroid-c2: Populate serial# environment variable from efuse

7 years agogpio: add static to get_function()
Masahiro Yamada [Thu, 22 Jun 2017 07:50:25 +0000 (16:50 +0900)]
gpio: add static to get_function()

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoserial: make serial_stub_* to static functions
Masahiro Yamada [Thu, 22 Jun 2017 07:48:49 +0000 (16:48 +0900)]
serial: make serial_stub_* to static functions

Add missing static to serial_stub_puts().

Unexport serial_stub_{getc,tstc} because they are used locally.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoMerge tag 'signed-efi-next' of git://github.com/agraf/u-boot
Tom Rini [Tue, 4 Jul 2017 12:00:16 +0000 (08:00 -0400)]
Merge tag 'signed-efi-next' of git://github.com/agraf/u-boot

Patch queue for efi - 2017-07-04

Highlights this time: bugfixes. With these changes, OpenBSD should
be more happy.

7 years agoefi_loader: abort on unsupported relocation type
xypron.glpk@gmx.de [Mon, 3 Jul 2017 22:12:58 +0000 (00:12 +0200)]
efi_loader: abort on unsupported relocation type

If a relocation type is not supported loading the EFI binary
should be aborted.

Writing a message only is insufficient.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
[agraf: use a() != b coding style]
Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi_loader: Add efi-next git tree to MAINTAINERS file
Alexander Graf [Mon, 3 Jul 2017 16:10:31 +0000 (18:10 +0200)]
efi_loader: Add efi-next git tree to MAINTAINERS file

The efi-next tree lives on github, not the usual denx git.
Reflect this in the MAINTAINERS file so that people can
find it.

Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi_loader: efi_handle_protocol set attributes
xypron.glpk@gmx.de [Thu, 29 Jun 2017 19:16:19 +0000 (21:16 +0200)]
efi_loader: efi_handle_protocol set attributes

UEFI spec 2.7 indicates that HandleProtocol can be implemented
by calling OpenProtocol with
attributes = EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL.

Currently we pass attributes = 0 to efi_open_protocol. 0 is not a
valid value when calling OpenProtocol. This does not cause any errors
yet because our implementation of OpenProtocol is incomplete.

We should pass the correct value to enable a fully compliant
implementation of OpenProtocol in the future.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoPrepare v2017.07-rc3 v2017.07-rc3
Tom Rini [Mon, 3 Jul 2017 23:58:08 +0000 (19:58 -0400)]
Prepare v2017.07-rc3

Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agopowerpc: remove 4xx support
Heiko Schocher [Tue, 27 Jun 2017 14:49:14 +0000 (16:49 +0200)]
powerpc: remove 4xx support

There was for long time no activity in the 4xx area.
We need to go further and convert to Kconfig, but it
turned out, nobody is interested anymore in 4xx,
so remove it.

Signed-off-by: Heiko Schocher <hs@denx.de>
7 years agodrivers, block: remove sil680 driver
Heiko Schocher [Tue, 27 Jun 2017 14:49:13 +0000 (16:49 +0200)]
drivers, block: remove sil680 driver

driver is not used anymore, so remove it.

Signed-off-by: Heiko Schocher <hs@denx.de>
7 years agoefi_loader: add static to local functions
Masahiro Yamada [Thu, 22 Jun 2017 08:49:03 +0000 (17:49 +0900)]
efi_loader: add static to local functions

These are locally used in lib/efi_loader/efi_boottime.c

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi_loader: check CreateEvent() parameters
Jonathan Gray [Sun, 12 Mar 2017 08:26:07 +0000 (19:26 +1100)]
efi_loader: check CreateEvent() parameters

Add some of the invalid parameter checks described in the UEFI
specification for CreateEvent().  This does not include checking
the validity of the type and tpl parameters.

Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Acked-By: Heinrich Schuchardt <xypron.glpk@gmx.de>
[agraf: fix checkpatch.pl indent warning]
Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi_loader: run CreateEvent() notify function based on flags
Jonathan Gray [Sun, 12 Mar 2017 08:26:06 +0000 (19:26 +1100)]
efi_loader: run CreateEvent() notify function based on flags

The UEFI specification states that the tpl, function and context
arguments are to be ignored if neither EVT_NOTIFY_WAIT or
EVT_NOTIFY_SIGNAL are specified.  This matches observed behaviour with
an AMI EDK2 based UEFI implementation.

Skip calling the notify function if neither flag is present.

Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Acked-By: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agoefi_loader: Add check for fallback fdt memory reservation
Alexander Graf [Mon, 3 Jul 2017 11:32:35 +0000 (13:32 +0200)]
efi_loader: Add check for fallback fdt memory reservation

When running bootefi, we allocate new space but never check whether
the allocation succeeded. This patch adds a check so that in case
things go wrong, we at least know they did.

Signed-off-by: Alexander Graf <agraf@suse.de>
7 years agopico-imx7d: Remove bouncing email
Fabio Estevam [Thu, 29 Jun 2017 17:07:42 +0000 (14:07 -0300)]
pico-imx7d: Remove bouncing email

Wig Cheng's email bounces, so remove it from the maintainers list.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
7 years agodoc: restore doc/README.fsl-clk
Christophe Leroy [Tue, 27 Jun 2017 14:00:24 +0000 (16:00 +0200)]
doc: restore doc/README.fsl-clk

doc/README.fsl-clk was removed in commit
5b8e76c35ec31 ("powerpc, 8xx: remove support for 8xx")
allthought CONFIG_SYS_FSL_CLK is defined in
arch/arm/cpu/armv8/fsl-layerscape/Kconfig and still in use
in the following configs:

./include/configs/mx53loco.h:21:#define CONFIG_SYS_FSL_CLK
./include/configs/m53evk.h:16:#define CONFIG_SYS_FSL_CLK
./include/configs/mx25pdk.h:17:#define CONFIG_SYS_FSL_CLK
./include/configs/usbarmory.h:14:#define CONFIG_SYS_FSL_CLK
./include/configs/ls1021aqds.h:14:#define CONFIG_SYS_FSL_CLK
./include/configs/mx53cx9020.h:22:#define CONFIG_SYS_FSL_CLK
./include/configs/colibri_vf.h:17:#define CONFIG_SYS_FSL_CLK
./include/configs/mx35pdk.h:21:#define CONFIG_SYS_FSL_CLK
./include/configs/woodburn_common.h:19:#define CONFIG_SYS_FSL_CLK
./include/configs/mx7_common.h:25:#define CONFIG_SYS_FSL_CLK
./include/configs/ls1021aiot.h:12:#define CONFIG_SYS_FSL_CLK
./include/configs/ls1021atwr.h:14:#define CONFIG_SYS_FSL_CLK
./include/configs/mx53ard.h:21:#define CONFIG_SYS_FSL_CLK
./include/configs/mx53smd.h:21:#define CONFIG_SYS_FSL_CLK
./include/configs/mx51evk.h:16:#define CONFIG_SYS_FSL_CLK
./include/configs/mx6_common.h:31:#define CONFIG_SYS_FSL_CLK
./include/configs/vf610twr.h:14:#define CONFIG_SYS_FSL_CLK
./include/configs/mx53evk.h:21:#define CONFIG_SYS_FSL_CLK

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Reviewed-by: Heiko Schocher <hs@denx.de>