project/bcm63xx/u-boot.git
6 years agommc: omap_hsmmc: Add support to get pinctrl values and max frequency for different...
Kishon Vijay Abraham I [Tue, 30 Jan 2018 15:01:41 +0000 (16:01 +0100)]
mmc: omap_hsmmc: Add support to get pinctrl values and max frequency for different hw revisions

AM572x SR1.1 requires different IODelay values to be used than that used
in AM572x SR2.0. These values are populated in device tree. Add
capability in omap_hsmmc driver to extract IOdelay values for different
silicon revision. The maximum frequency is also reduced when using a ES1.1.
To keep the ability to boot both revsions with the same dtb, those values
can be provided by the platform code.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: Add support to set IODELAY values
Kishon Vijay Abraham I [Tue, 30 Jan 2018 15:01:40 +0000 (16:01 +0100)]
mmc: omap_hsmmc: Add support to set IODELAY values

The data manual of J6/J6 Eco recommends to set different IODELAY values
depending on the mode in which the MMC/SD is enumerated in order to
ensure IO timings are met.

Add support to parse mux values and iodelay values from device tree
and set these depending on the enumerated MMC mode.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agoARM: OMAP5/DRA7: Enable iodelay recalibration to be done from uboot
Kishon Vijay Abraham I [Tue, 30 Jan 2018 15:01:39 +0000 (16:01 +0100)]
ARM: OMAP5/DRA7: Enable iodelay recalibration to be done from uboot

Add a new API to perform iodelay recalibration without isolate
io to be used in uboot.

The data manual of J6/J6 Eco recommends to set different IODELAY values
depending on the mode in which the MMC/SD is enumerated in order to
ensure IO timings are met. The MMC driver can use the new API to
set the IO delay values depending on the MMC mode.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: use mmc_of_parse to populate mmc_config
Kishon Vijay Abraham I [Tue, 30 Jan 2018 15:01:38 +0000 (16:01 +0100)]
mmc: omap_hsmmc: use mmc_of_parse to populate mmc_config

Use the mmc_of_parse library function to populate mmc_config instead of
repeating the same code in host controller driver.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: Reduce the max timeout for reset controller fsm
Jean-Jacques Hiblot [Tue, 30 Jan 2018 15:01:37 +0000 (16:01 +0100)]
mmc: omap_hsmmc: Reduce the max timeout for reset controller fsm

>From OMAP3 SoCs (OMAP3, OMAP4, OMAP5, AM572x, AM571x), the DAT/CMD lines
reset procedure section in TRM suggests to first poll the SRD/SRC bit
until it is set to 0x1. But looks like that bit is never set to 1 and there
is an observable delay of 1sec everytime the driver tries to reset DAT/CMD.
(The same is observed in linux kernel).

Reduce the time the driver waits for the controller to set the SRC/SRD bits
to 1 so that there is no observable delay.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: Workaround for errata id i802
Jean-Jacques Hiblot [Tue, 30 Jan 2018 15:01:36 +0000 (16:01 +0100)]
mmc: omap_hsmmc: Workaround for errata id i802

According to errata i802, DCRC error interrupts
(MMCHS_STAT[21] DCRC=0x1) can occur during the tuning procedure.

The DCRC interrupt, occurs when the last tuning block fails
(the last ratio tested). The delay from CRC check until the
interrupt is asserted is bigger than the delay until assertion
of the tuning end flag. Assertion of tuning end flag is what
masks the interrupts. Because of this race, an erroneous DCRC
interrupt occurs.

The suggested  workaround is to disable DCRC interrupts during
the tuning procedure which is implemented here.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: Add tuning support
Jean-Jacques Hiblot [Tue, 30 Jan 2018 15:01:35 +0000 (16:01 +0100)]
mmc: omap_hsmmc: Add tuning support

HS200/SDR104 requires tuning command to be sent to the card. Use
the mmc_send_tuning library function to send the tuning
command and configure the internal DLL.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: Enable DDR mode support
Kishon Vijay Abraham I [Tue, 30 Jan 2018 15:01:34 +0000 (16:01 +0100)]
mmc: omap_hsmmc: Enable DDR mode support

In order to enable DDR mode, Dual Data Rate mode bit has to be set in
MMCHS_CON register. Set it here.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: set MMC mode in the UHSMS bit field
Jean-Jacques Hiblot [Tue, 30 Jan 2018 15:01:33 +0000 (16:01 +0100)]
mmc: omap_hsmmc: set MMC mode in the UHSMS bit field

Use the timing parameter set in the MMC core to set the
mode in UHSMS  bit field. This is in preparation for
adding HS200 support in omap hsmmc driver.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: add support to set default io voltage
Kishon Vijay Abraham I [Tue, 30 Jan 2018 15:01:32 +0000 (16:01 +0100)]
mmc: omap_hsmmc: add support to set default io voltage

"ti,dual-volt" is used in linux kernel to set the voltage capabilities.
For host controller dt nodes that doesn't have "ti,dual-volt",
it's assumed 1.8v is the io voltage. This is not always true (like in
the case of beagle-x15 where the io lines are connected to 3.3v).
Hence if "no-1-8-v" property is set, io voltage will be set to 3v.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: cleanup omap_hsmmc_set_ios
Kishon Vijay Abraham I [Tue, 30 Jan 2018 15:01:31 +0000 (16:01 +0100)]
mmc: omap_hsmmc: cleanup omap_hsmmc_set_ios

No functional change. Move bus width configuration setting to a
separate function and invoke it only if there is a change in the
bus width.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: omap_hsmmc: cleanup clock configuration
Jean-Jacques Hiblot [Tue, 30 Jan 2018 15:01:30 +0000 (16:01 +0100)]
mmc: omap_hsmmc: cleanup clock configuration

Add a separate function for starting the clock, stopping the clock and
setting the clock. Starting the clock and stopping the clock can
be used irrespective of setting the clock (For example during iodelay
recalibration).
Also set the clock only if there is a change in frequency.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
6 years agommc: use pr_* log functions
Masahiro Yamada [Sun, 28 Jan 2018 10:11:42 +0000 (19:11 +0900)]
mmc: use pr_* log functions

Use pr_* log functions from Linux.  They can be enabled/disabled
via CONFIG_LOGLEVEL.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
6 years agoMerge git://git.denx.de/u-boot-sh
Tom Rini [Sat, 17 Feb 2018 21:06:59 +0000 (16:06 -0500)]
Merge git://git.denx.de/u-boot-sh

6 years agoARM: rmobile: Fix broken reset code on Porter
Marek Vasut [Sat, 17 Feb 2018 01:16:48 +0000 (02:16 +0100)]
ARM: rmobile: Fix broken reset code on Porter

The 'reset' command did not work on Porter because the reset code
was accessing the wrong PMIC address over broken I2C bus driver.
Replace the code with DM-aware code and fix up the PMIC address.
This makes the 'reset' command work again.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Replace SH I2C with IIC on Porter
Marek Vasut [Sat, 17 Feb 2018 01:15:08 +0000 (02:15 +0100)]
ARM: rmobile: Replace SH I2C with IIC on Porter

Get rid of the SH I2C driver on Porter and enable the IIC driver
instead . The old SH I2C is completely broken on Porter anyway
and the DM/DT capable IIC driver allows access to the PMIC too.
Use the DM/DT capable driver instead.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: dts: rmobile: Enable I2C6 on Porter
Marek Vasut [Sat, 17 Feb 2018 01:14:09 +0000 (02:14 +0100)]
ARM: dts: rmobile: Enable I2C6 on Porter

Enable I2C6 bus on Porter to access the PMIC , ie. to reset the board.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoi2c: rcar_iic: Allow IIC on RCar Gen2
Marek Vasut [Sat, 17 Feb 2018 01:17:40 +0000 (02:17 +0100)]
i2c: rcar_iic: Allow IIC on RCar Gen2

The IIC on Gen2 is compatible with this driver as well, allow it.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Set FDT/initramfs limits on Porter
Marek Vasut [Sat, 17 Feb 2018 00:21:15 +0000 (01:21 +0100)]
ARM: rmobile: Set FDT/initramfs limits on Porter

Set those limits to inform U-Boot about FDT and initramfs placement.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Enable convenient commands on Porter
Marek Vasut [Sat, 17 Feb 2018 00:19:20 +0000 (01:19 +0100)]
ARM: rmobile: Enable convenient commands on Porter

Enable cache and time commands, which are convenience tools for
doing benchmarks and various boot tests. Also enable FIT support
for booting fitImage.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Reset ethernet PHY
Marek Vasut [Fri, 16 Feb 2018 23:35:23 +0000 (00:35 +0100)]
ARM: rmobile: Reset ethernet PHY

Toggle the PHY reset GPIO to bring the ethernet PHY out of reset properly.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
---
NOTE: This should be moved to the SH ethernet driver, but it's quite
      late in the cycle, so this is something to be done in 2018.05.

6 years agoARM: dts: rmobile: Move the u-boot,dm-pre-reloc into u-boot DTS on porter
Marek Vasut [Fri, 16 Feb 2018 23:31:19 +0000 (00:31 +0100)]
ARM: dts: rmobile: Move the u-boot,dm-pre-reloc into u-boot DTS on porter

Fix ommission where the u-boot,dm-pre-reloc DT bit was pulled into the
common DT, not the U-Boot specific DT part. Move it to U-Boot DT part.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoMerge git://git.denx.de/u-boot-sh
Tom Rini [Fri, 16 Feb 2018 18:56:02 +0000 (13:56 -0500)]
Merge git://git.denx.de/u-boot-sh

6 years agoMerge git://git.denx.de/u-boot-socfpga
Tom Rini [Fri, 16 Feb 2018 18:55:51 +0000 (13:55 -0500)]
Merge git://git.denx.de/u-boot-socfpga

6 years agoMerge git://git.denx.de/u-boot-usb
Tom Rini [Fri, 16 Feb 2018 18:55:41 +0000 (13:55 -0500)]
Merge git://git.denx.de/u-boot-usb

6 years agoenv: restore old env_get_char() behaviour
Goldschmidt Simon [Fri, 9 Feb 2018 20:23:17 +0000 (20:23 +0000)]
env: restore old env_get_char() behaviour

With multiple environments, the 'get_char' callback for env
drivers does not really make sense any more because it is
only supported by two drivers (eeprom and nvram).

To restore single character loading for these drivers,
override 'env_get_char_spec'.

Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
6 years agoenv: Fix env_load_location
York Sun [Wed, 7 Feb 2018 22:17:11 +0000 (14:17 -0800)]
env: Fix env_load_location

Commit 7d714a24d725 ("env: Support multiple environments") added
static variable env_load_location. When saving environmental
variables, this variable is presumed to have the value set before.
In case the value was set before relocation and U-Boot runs from a
NOR flash, this variable wasn't writable. This causes failure when
saving the environment. To save this location, global data must be
used instead.

Signed-off-by: York Sun <york.sun@nxp.com>
CC: Maxime Ripard <maxime.ripard@free-electrons.com>
6 years agoARM: rmobile: Enable autocompletion on Gen2
Marek Vasut [Fri, 16 Feb 2018 15:37:46 +0000 (16:37 +0100)]
ARM: rmobile: Enable autocompletion on Gen2

This makes the shell so much more pleasant to use, so enable it.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Convert Porter to SPL
Marek Vasut [Fri, 16 Feb 2018 00:33:27 +0000 (01:33 +0100)]
ARM: rmobile: Convert Porter to SPL

Due to size limitations of the MERAM, switch U-Boot to SPL.
The SPL is loaded by the SPI_LOADER into MERAM and then loads
U-Boot proper into DRAM. This way U-Boot can freely grow in
size in DRAM, as there is plenty of it.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
---
NOTE: To update U-Boot, first install u-boot.img to 0x140000 in SPI NOR,
      then use the Minimon to flash u-boot-spl.srec using ls,2,e6304000.
      To generate u-boot-spl.srec, use objcopy:
        arm-linux-gnueabi-objcopy -O srec spl/u-boot-spl u-boot-spl.srec

6 years agoARM: dts: rmobile: Make PFC and RST available before reloc
Marek Vasut [Fri, 16 Feb 2018 00:33:27 +0000 (01:33 +0100)]
ARM: dts: rmobile: Make PFC and RST available before reloc

Those two nodes are needed to configure pinmux before relocation
and to configure clock before relocation, since CPG/MSSR needs
access to RST node. This is not noticable on Gen3, but on Gen2
this causes problems in SPL if they are not available early.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: dts: rmobile: Make scif0 available before reloc on Porter
Marek Vasut [Fri, 16 Feb 2018 00:33:27 +0000 (01:33 +0100)]
ARM: dts: rmobile: Make scif0 available before reloc on Porter

Make the SCIF available before relocation and in SPL on R8A7791 Porter.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoserial: Replace CONFIG_ with CONFIG_IS_ENABLED
Marek Vasut [Fri, 16 Feb 2018 00:33:27 +0000 (01:33 +0100)]
serial: Replace CONFIG_ with CONFIG_IS_ENABLED

Cosmetic change, replace CONFIG_* with CONFIG_IS_ENABLED(*) .

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Enable autocompletion on Gen3
Marek Vasut [Thu, 15 Feb 2018 12:33:37 +0000 (13:33 +0100)]
ARM: rmobile: Enable autocompletion on Gen3

This makes the shell so much more pleasant to use, so enable it.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoARM: rmobile: Enable DTO support on Gen3
Marek Vasut [Thu, 15 Feb 2018 11:47:23 +0000 (12:47 +0100)]
ARM: rmobile: Enable DTO support on Gen3

Enable support for applying DT overlays on Gen3. This is convenient
for handling extra additional hardware, like ie. the Kingfisher.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agonet: ravb: Initialize PHY in probe() once
Marek Vasut [Tue, 13 Feb 2018 16:21:15 +0000 (17:21 +0100)]
net: ravb: Initialize PHY in probe() once

Reset and initialize the PHY once in the probe() function rather than
doing it over and over again is start() function. This requires us to
keep the clock enabled while the driver is in use. This significantly
reduces the time between transfers as the PHY doesn't have to restart
autonegotiation between transfers, which takes forever.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Geert Uytterhoeven <geert+renesas@glider.be>
Cc: Joe Hershberger <joe.hershberger@ni.com>
6 years agoclk: rmobile: Assure SD-IF clock are configured correctly
Marek Vasut [Thu, 11 Jan 2018 15:28:31 +0000 (16:28 +0100)]
clk: rmobile: Assure SD-IF clock are configured correctly

The SD driver calls clk_set_rate() before clk_enable(), yet clk_set_rate()
implementation in the clock driver does not set the SD-IF divider. Fix it.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
6 years agoMerge git://git.denx.de/u-boot-arc
Tom Rini [Thu, 15 Feb 2018 19:07:04 +0000 (14:07 -0500)]
Merge git://git.denx.de/u-boot-arc

6 years agoRPi: Add myself as board maintainer
Alexander Graf [Thu, 15 Feb 2018 14:50:54 +0000 (15:50 +0100)]
RPi: Add myself as board maintainer

Commit 958d55f26ce ("MAINTAINERS: Take over BCM2835 maintainership") put
me in as maintainer for the RPi soc, but forgot to update the board
MAINTAINERS file.

Add me there too.

Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoarm: socfpga: use imply instead of select where applicable
Simon Goldschmidt [Tue, 13 Feb 2018 05:34:14 +0000 (06:34 +0100)]
arm: socfpga: use imply instead of select where applicable

Kconfig should only 'select' features that are required for an arch.
Standard features that can be disabled without breaking board support
should use 'imply' instead, to allow users to disable it.

These options are changed for mach-socfpga:
- DM_SPI & DM_SPI_FLASH: only required with QSPI support enabled
- SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION: the boot rom supports a
  partitionless mode also, where SPL is located at address 0
- HW_WATCHDOG: while all mainline board defconfigs use it, U-Boot
  should still work without it.

Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
6 years agoConvert socfpga: select CONFIG_HW_WATCHDOG support for ARCH_SOCFPGA
Lukasz Majewski [Tue, 13 Feb 2018 05:34:13 +0000 (06:34 +0100)]
Convert socfpga: select CONFIG_HW_WATCHDOG support for ARCH_SOCFPGA

All Socfpga boards from ./include/configs/socfpga_* define
CONFIG_HW_WATCHDOG.
To ease CONFIG_HW_WATCHDOG conversion to Kconfig select it in
config ARCH_SOCFPGA (arch/arm/Kconfig) section.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
6 years agoarm: socfpga: fix qspi flash compatible (add "spi-flash")
Simon Goldschmidt [Mon, 29 Jan 2018 06:36:37 +0000 (07:36 +0100)]
arm: socfpga: fix qspi flash compatible (add "spi-flash")

This patch adds "spi-flash" to the compatible list of the qspi flash
chip for all socfpga boards. This is required to make qspi work on
these boards on top of the recent fixes. Without the "spi-flash"
compatible string for the flash chip, the speed cannot be read and a
speed of 0Hz is used (which results in a divide-by-zero on these
boards).

Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
6 years agoarc: Fix final linkage with Elf32 tools
Alexey Brodkin [Thu, 15 Feb 2018 12:34:58 +0000 (15:34 +0300)]
arc: Fix final linkage with Elf32 tools

ARC Elf32 tools by default enable usage of so-called "small data"
section or in ARC PRM parlance "GP-relative addressing".

The idea is to put up to 2kB of frequently used data into a separate
location and use indirect addressing via dedicated core register (GP).
Where GP is used as a base for offset calculation.

And so if "-msdata" toggle is passed to the compiler either explicitly
or implicitly (that's Elf32 tools case) it will try to put some data
in that "small data" area and then to calculate real offset from GP
to be encoded in instructions we need to know the base value which
liker gets from __SDATA_BEGIN__ symbol in hte linker script.

In U-Boot we don't use that feature and linker script doesn't define
__SDATA_BEGIN__ which gives us the following linkage error if we use
Elf32 tools:
------------------------->8-------------------
  LD      u-boot
.../bin/arc-elf32-ld.bfd: Error: Linker symbol __SDATA_BEGIN__ not found
.../bin/arc-elf32-ld.bfd: final link failed: Bad value
------------------------->8-------------------

Note if uClibc or glibc tools are used that problem doesn't happen
because usage of "small data section" is disabled by default as not very
useful for bigger executables. Moreover GP is just another name of r26
so we're loosing 1 core register which is not used by the compiler as a
generic register with "-msdata".

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
6 years agousb: host: xhci-omap: Remove redundant board_usb_init and board_usb_cleanup functions
Faiz Abbas [Thu, 15 Feb 2018 11:42:11 +0000 (17:12 +0530)]
usb: host: xhci-omap: Remove redundant board_usb_init and board_usb_cleanup functions

board_usb_init()/_cleanup() should be in board files and don't have
a place in the xhci-omap driver. Weak versions for
board_usb_init()/_cleanup() already exist in common/usb.c
(for host mode) and drivers/usb/gadget/g_dnl.c (for gadget mode).

Therefore, remove init and cleanup functions from xhci-omap and
implement them in the board files.

Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
6 years agousb: dwc2: Rename CONFIG_DWC2_UTMI_PHY_WIDTH to CONFIG_DWC2_UTMI_WIDTH
Alexey Brodkin [Wed, 31 Jan 2018 14:56:59 +0000 (17:56 +0300)]
usb: dwc2: Rename CONFIG_DWC2_UTMI_PHY_WIDTH to CONFIG_DWC2_UTMI_WIDTH

For some reason from day one we used to have both CONFIG_DWC2_UTMI_WIDTH
mentioned in dwc2.h and in scripts/config_whitelist.txt but never really used
and CONFIG_DWC2_UTMI_PHY_WIDTH used in real code in dwc2.c (but never
defined).

Moreover even though CONFIG_DWC2_UTMI_WIDTH might be either 8 or 16
depending on hardware (and the same is said in a comment for it in
dwc2.h) but then 8 is hardcoded in the header leaving no ability to
override this value in board's configuration.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Marek Vasut <marex@denx.de>
6 years agoConvert CONFIG_SYS_BOOTCOUNT_SINGLEWORD to Kconfig
Lukasz Majewski [Fri, 9 Feb 2018 22:53:29 +0000 (23:53 +0100)]
Convert CONFIG_SYS_BOOTCOUNT_SINGLEWORD to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_BOOTCOUNT_SINGLEWORD

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Tested-by: Alex Kiernan <alex.kiernan@gmail.com>
Reviewed-by: Ian Ray <ian.ray@ge.com>
6 years agoConvert CONFIG_BOOTCOUNT_LIMIT to Kconfig
Lukasz Majewski [Fri, 9 Feb 2018 22:50:57 +0000 (23:50 +0100)]
Convert CONFIG_BOOTCOUNT_LIMIT to Kconfig

This converts the following to Kconfig:
   CONFIG_BOOTCOUNT_LIMIT

Signed-off-by: Lukasz Majewski <lukma@denx.de>
Tested-by: Alex Kiernan <alex.kiernan@gmail.com>
Reviewed-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com>
Acked-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com>
6 years agoconfigs: Resync with savedefconfig
Tom Rini [Wed, 14 Feb 2018 20:46:14 +0000 (15:46 -0500)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoRevert "drivers/ddr/fsl: Dual-license DDR driver"
Tom Rini [Thu, 15 Feb 2018 02:34:05 +0000 (21:34 -0500)]
Revert "drivers/ddr/fsl: Dual-license DDR driver"

Upon further review, not all code authors are in favour of this change.
This reverts commit ee3556bcafbb05e59aabdc31368984e76acaabc4.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agospl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED
Simon Goldschmidt [Wed, 14 Feb 2018 05:44:36 +0000 (06:44 +0100)]
spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED

With commit 9bd76b807636 ("spl: make CONFIG_OF_EMBED pass dts through
fdtgrep"), CONFIG_SPL_MULTI_DTB_FIT has been broken because
cmd_fdtgrep was now unknown in scripts/Makefile.spl after moving
it to dts/Makefile. This bug has been introduced with v2018.01.

This patch moves cmd_fdtgrep from dts/Makefile to scripts/Makefile.lib
and includes scripts/Makefile.lib in scripts/Makefile.spl.

Fixes: 9bd76b807636 ("spl: make CONFIG_OF_EMBED pass dts through fdtgrep")
Reported-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
6 years agocmd: scsi: move CMD_SCSI to device access commands
Heinrich Schuchardt [Wed, 14 Feb 2018 07:05:44 +0000 (08:05 +0100)]
cmd: scsi: move CMD_SCSI to device access commands

Configuration option CMD_SCSI should be placed in the same submenu as
CMD_SATA and CMD_MMC.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agoarm/PSCI: support PSCI versions greater than 1.0
Andre Heider [Fri, 9 Feb 2018 07:10:22 +0000 (08:10 +0100)]
arm/PSCI: support PSCI versions greater than 1.0

ATF recently began announcing PSCI v1.1. Since that version is unknown
to u-boot, the PSCI device nodes were not updated.

Switch from the case statement to a greater/less-than comparison so that
v1.1, as well as future versions, get at least the compatible nodes of
known versions.

PSCI v1.1 doesn't seem to have introduced a new corresponding compatible.

Signed-off-by: Andre Heider <a.heider@gmail.com>
6 years agoFix --noheader on fw_printenv
Alex Kiernan [Sun, 11 Feb 2018 17:16:46 +0000 (17:16 +0000)]
Fix --noheader on fw_printenv

The single argument `--noheader' is expecting isn't taken from getopt
parsing, but instead from the remaining argv arguments.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agoam335x_evm: Consolidate eMMC partitions with DFU info
Sam Protsenko [Wed, 7 Feb 2018 18:41:32 +0000 (20:41 +0200)]
am335x_evm: Consolidate eMMC partitions with DFU info

>From DFU_ALT_INFO_EMMC (include/environment/ti/dfu.h) we can see that
rootfs will be flashed to second partition on eMMC. But at the moment we
have only one partition in $partitions environment variable. Let's add
"bootloader" partition prior to "rootfs", so that DFU works correctly.
This also fixes eMMC boot, which looks for rootfs on second partition.

"bootloader" partition start corresponds to "u-boot.img.raw" in DFU
eMMC info, which is 0x300 sector (384 KiB offset from eMMC start).

rootfs start address can be also found from DFU eMMC info.
bootloader-related area is finished at 0x1500 sector (2688 KiB offset
from eMMC start). This should be the start address for rootfs in
$partitions environment variable.

While at it, fix U-Boot environment address to be the same as for
AM57x EVM, so that it doesn't clash with other partitions.

So now eMMC layout looks like this:

    ===============================================================

    0       +------------------------+
            | MBR/GPT header         |   128           -
    128     +------------------------+
            | MLO                    |   256           -
    384     +------------------------+
            | u-boot.img             |   1792          bootloader
    2176    +------------------------+
            | //////// hole //////// |   256           -
    2432    +------------------------+
            | U-Boot environment     |   128           -
    2560    +------------------------+
            | U-Boot environment     |   128           -
            | (redundant)            |
    2688    +------------------------+
            | rootfs                 |   remaining     rootfs
    end     +------------------------+

    ===============================================================

"hole" area can be used further for storing U-Boot environment (like
it's done in AM57x EVM config file) or for increasing u-boot.img area
(in case u-boot.img size increased, e.g. if new dtbs were added).

This commit conforms with Linux partition table from f6d245b8c56c
("arm: am57xx: Fix Linux boot from eMMC") commit, making things in
uniform way.

Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 years agoconfigs: Migrate CONFIG_SPL_FRAMEWORK
Tom Rini [Tue, 6 Feb 2018 17:15:38 +0000 (12:15 -0500)]
configs: Migrate CONFIG_SPL_FRAMEWORK

Migrate the option CONFIG_SPL_FRAMEWORK and make this gate most of the
current set of options we have in Kconfig.  We will need to have some
options available for SPL and !SPL_FRAMEWORK so this is important.  In a
few cases we re-order existing options so that we have less escapes from
the SPL_FRAMEWORK guard.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoconfigs: Drop unused CONFIG_SPL_MMC_MINIMAL
Tom Rini [Tue, 6 Feb 2018 17:15:37 +0000 (12:15 -0500)]
configs: Drop unused CONFIG_SPL_MMC_MINIMAL

The option CONFIG_SPL_MMC_MINIMAL is unused in code, drop it.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoconfigs: am335x_evm: Add DYNAMIC_CRC_TABLE
Faiz Abbas [Tue, 6 Feb 2018 13:45:59 +0000 (19:15 +0530)]
configs: am335x_evm: Add DYNAMIC_CRC_TABLE

Add CONFIG_DYNAMIC_CRC_TABLE to am335x_evm_defconfig to reduce the
size of the image.

Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
6 years agolib: Kconfig: Move DYNAMIC_CRC_TABLE to Kconfig
Faiz Abbas [Tue, 6 Feb 2018 13:45:58 +0000 (19:15 +0530)]
lib: Kconfig: Move DYNAMIC_CRC_TABLE to Kconfig

Add CONFIG prefix to DYNAMIC_CRC_TABLE and implement it in
Kconfig.

Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
6 years agoconfigs: am335x_evm: Disable ISO and EFI partitions in SPL
Faiz Abbas [Mon, 5 Feb 2018 13:52:29 +0000 (19:22 +0530)]
configs: am335x_evm: Disable ISO and EFI partitions in SPL

ISO and EFI partition configs in SPL are selected by default.
However, they are not being used.

Therefore, remove ISO and EFI partition support in SPL.

Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 years agoarm: update Kconfig help for ENABLE_ARM_SOC_BOOT0_HOOK
Simon Goldschmidt [Tue, 13 Feb 2018 12:18:00 +0000 (13:18 +0100)]
arm: update Kconfig help for ENABLE_ARM_SOC_BOOT0_HOOK

When this config is enabled, <asm/arch/boot0.h> is included,
but the Kconfig help says this should be a define
(ARM_SOC_BOOT0_HOOK).

The code for this in arch/arm/lib/vectors.s was changed on
01/02/2017 with commit ce62e57fc571 ("ARM: boot0 hook: remove macro,
include whole header file").

Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
6 years agoARM: image: indent with tab instead of 4 spaces
Masahiro Yamada [Tue, 13 Feb 2018 02:32:15 +0000 (11:32 +0900)]
ARM: image: indent with tab instead of 4 spaces

Commit 6808ef9ac2a6 ("move booti_setup to arch/arm/lig/image.c")
not only moved the code, but also replaced a tab with 4 spaces
to break the Linux coding style.

Restore tab indentation.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Bin Chen <bin.chen@linaro.org>
6 years agocmd: booti: fix invalid image address in debug message
Masahiro Yamada [Tue, 13 Feb 2018 03:10:02 +0000 (12:10 +0900)]
cmd: booti: fix invalid image address in debug message

With commit 6808ef9ac2a6 ("move booti_setup to arch/arm/lig/image.c"),
images->ep has not been set at this point.

Fixes: 6808ef9ac2a6 ("move booti_setup to arch/arm/lig/image.c")
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Bin Chen <bin.chen@linaro.org>
6 years agoefi_driver: comment struct efi_driver_ops
Heinrich Schuchardt [Mon, 12 Feb 2018 11:55:28 +0000 (12:55 +0100)]
efi_driver: comment struct efi_driver_ops

Provide description for struct efi_driver_ops.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agodm: core: fix typo in comment (device.h)
Heinrich Schuchardt [Mon, 12 Feb 2018 11:38:36 +0000 (12:38 +0100)]
dm: core: fix typo in comment (device.h)

%s/Indentiies/Identifies/g

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
6 years agofix spelling of 'functions' in 2 places (was 'funtcions')
Simon Goldschmidt [Tue, 13 Feb 2018 12:18:27 +0000 (13:18 +0100)]
fix spelling of 'functions' in 2 places (was 'funtcions')

Signed-off-by: Simon Goldschmidt <sgoldschmidt@de.pepperl-fuchs.com>
6 years agoSystemACE: Remove
Tom Rini [Mon, 12 Feb 2018 14:51:33 +0000 (09:51 -0500)]
SystemACE: Remove

This driver is no longer used on any supported platform in U-Boot and
there is no interest in maintaining it further from people that have
used it historically.

Cc: Simon Glass <sjg@chromium.org>
Cc: Michal Simek <michal.simek@xilinx.com>
c: Alexey Brodkin <alexey.brodkin@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
6 years agospi: Migrate CONFIG_CF_SPI to Kconfig
Tuomas Tynkkynen [Wed, 7 Feb 2018 00:42:23 +0000 (02:42 +0200)]
spi: Migrate CONFIG_CF_SPI to Kconfig

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years agospi: Migrate CONFIG_KIRKWOOD_SPI to Kconfig
Tuomas Tynkkynen [Wed, 7 Feb 2018 00:42:22 +0000 (02:42 +0200)]
spi: Migrate CONFIG_KIRKWOOD_SPI to Kconfig

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years agospi: Migrate CONFIG_LPC32XX_SSP to Kconfig
Tuomas Tynkkynen [Wed, 7 Feb 2018 00:42:21 +0000 (02:42 +0200)]
spi: Migrate CONFIG_LPC32XX_SSP to Kconfig

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years agospi: Migrate CONFIG_MPC8XXX_SPI to Kconfig
Tuomas Tynkkynen [Wed, 7 Feb 2018 00:42:20 +0000 (02:42 +0200)]
spi: Migrate CONFIG_MPC8XXX_SPI to Kconfig

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years agospi: Migrate CONFIG_MXC_SPI to Kconfig
Tuomas Tynkkynen [Wed, 7 Feb 2018 00:42:19 +0000 (02:42 +0200)]
spi: Migrate CONFIG_MXC_SPI to Kconfig

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years agospi: Migrate CONFIG_MXS_SPI to Kconfig
Tuomas Tynkkynen [Wed, 7 Feb 2018 00:42:18 +0000 (02:42 +0200)]
spi: Migrate CONFIG_MXS_SPI to Kconfig

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years agospi: Migrate CONFIG_SH_QSPI to Kconfig
Tuomas Tynkkynen [Wed, 7 Feb 2018 00:42:17 +0000 (02:42 +0200)]
spi: Migrate CONFIG_SH_QSPI to Kconfig

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years agospi: Migrate CONFIG_SH_SPI to Kconfig
Tuomas Tynkkynen [Wed, 7 Feb 2018 00:42:16 +0000 (02:42 +0200)]
spi: Migrate CONFIG_SH_SPI to Kconfig

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
6 years ago.travis.yml: test xtensa xtfpga board in QEMU
Max Filippov [Wed, 7 Feb 2018 23:30:03 +0000 (15:30 -0800)]
.travis.yml: test xtensa xtfpga board in QEMU

This allows running tests on emulated KC705 board with DC233C xtensa
core. It expects to find conf.xtfpga_qemu in the uboot-test-hooks.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
6 years agoxtfpga: enable hush parser
Max Filippov [Wed, 7 Feb 2018 23:30:02 +0000 (15:30 -0800)]
xtfpga: enable hush parser

Remove CONFIG_BOOT_RETRY_TIME as it doesn't do much good and enable
CONFIG_HUSH_PARSER in xtfpga_defconfig.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
6 years ago.travis.yml: download xtensa prebuilt toolchain
Max Filippov [Wed, 7 Feb 2018 23:30:01 +0000 (15:30 -0800)]
.travis.yml: download xtensa prebuilt toolchain

xtensa toolchains are core-specific, so give full toolchain name and
download corresponding prebuilt toolchain from the github release.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
6 years agomicroblaze: bootm: Fix compiler warning
Bin Meng [Mon, 12 Feb 2018 09:54:37 +0000 (17:54 +0800)]
microblaze: bootm: Fix compiler warning

Fix build warning in arch/microblaze/lib/bootm.c with gcc 7.3.0:

  warning: this 'if' clause does not guard... [-Wmisleading-indentation]

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: omap2: Fix compiler warning
Bin Meng [Mon, 12 Feb 2018 09:54:36 +0000 (17:54 +0800)]
arm: omap2: Fix compiler warning

Fix build warning in arch/arm/mach-omap2/emif-common.c and
arch/arm/mach-omap2/omap4/emif.c with gcc 7.3.0:

  warning: duplicate 'const' declaration specifier [-Wduplicate-decl-specifier]

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 years agovideo: ivybridge_igd: Fix compiler warning
Bin Meng [Mon, 12 Feb 2018 09:54:35 +0000 (17:54 +0800)]
video: ivybridge_igd: Fix compiler warning

Fix build warning in drivers/video/ivybridge_igd.c with gcc 7.3.0:

  warning: 'ivb_pm_gt2' defined but not used [-Wunused-const-variable=]

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 years agotftp: update: Include missing cfi_flash.h header
Marek Vasut [Sat, 10 Feb 2018 15:22:07 +0000 (16:22 +0100)]
tftp: update: Include missing cfi_flash.h header

Add the missing header, otherwise CONFIG_SYS_MAX_FLASH_BANKS
may be undeclared.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Tom Rini <trini@konsulko.com>
6 years agocmd: fitupd: Convert CONFIG_UPDATE_TFTP and co.
Marek Vasut [Sat, 10 Feb 2018 15:22:06 +0000 (16:22 +0100)]
cmd: fitupd: Convert CONFIG_UPDATE_TFTP and co.

Convert the CONFIG_UPDATE_TFTP and related symbols to Kconfig.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Tom Rini <trini@konsulko.com>
6 years agocmd: fitupd: Convert CONFIG_CMD_FITUPD
Marek Vasut [Sat, 10 Feb 2018 15:22:05 +0000 (16:22 +0100)]
cmd: fitupd: Convert CONFIG_CMD_FITUPD

Convert the CONFIG_CMD_FITUPD symbol to Kconfig.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Tom Rini <trini@konsulko.com>
6 years agoMerge git://git.denx.de/u-boot-rockchip
Tom Rini [Tue, 13 Feb 2018 15:51:00 +0000 (10:51 -0500)]
Merge git://git.denx.de/u-boot-rockchip

6 years agospl: fit: move fdt_record_loadable out of ARCH_FIXUP_FDT_MEMORY guard
Philipp Tomsich [Fri, 2 Feb 2018 11:01:44 +0000 (12:01 +0100)]
spl: fit: move fdt_record_loadable out of ARCH_FIXUP_FDT_MEMORY guard

The fdt_record_loadable()-function was wedged between other functions
that were guarded by ARCH_FIXUP_FDT_MEMORY.  This could lead to linker
errors on some configurations.

With this change, fdt_record_loadable() is moved out of the
ARCH_FIXUP_FDT_MEMORY guard (plus I tried to retain alphabetical
ordering for functions by placing it appropriately).

References: 9f45aeb ("spl: fit: implement fdt_record_loadable")
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reported-by: Michal Simek <michal.simek@xilinx.com>
Tested-by: Michal Simek <michal.simek@xilinx.com>
6 years agorockchip: gpio: remove dead code
Heinrich Schuchardt [Tue, 30 Jan 2018 23:45:51 +0000 (00:45 +0100)]
rockchip: gpio: remove dead code

In the following statements
if (a) return a; if (a) return c;
the second return can never be executed.

Identified by cppcheck.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
6 years agoPrepare v2018.03-rc2
Tom Rini [Mon, 12 Feb 2018 23:52:31 +0000 (18:52 -0500)]
Prepare v2018.03-rc2

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoFix misaligned buffer in env_fat_save
Alex Kiernan [Wed, 7 Feb 2018 20:01:54 +0000 (20:01 +0000)]
Fix misaligned buffer in env_fat_save

When saving the environment on a platform which has DMA alignment
larger than the natural alignment, env_fat_save triggers a debug
message in file_fat_write:

  Saving Environment to FAT... writing uboot.env
  FAT: Misaligned buffer address (9df1c8e0)
  OK

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
6 years agoMerge git://git.denx.de/u-boot-fsl-qoriq
Tom Rini [Mon, 12 Feb 2018 17:08:32 +0000 (12:08 -0500)]
Merge git://git.denx.de/u-boot-fsl-qoriq

6 years agoconfigs: Migrate CONFIG_SYS_TEXT_BASE
Tom Rini [Sat, 3 Feb 2018 17:10:38 +0000 (12:10 -0500)]
configs: Migrate CONFIG_SYS_TEXT_BASE

On the NIOS2 and Xtensa architectures, we do not have
CONFIG_SYS_TEXT_BASE set.  This is a strict migration of the current
values into the defconfig and removing them from the headers.

I did not attempt to add more default values in and for now will leave
that to maintainers.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoconfigs: Resync with savedefconfig
Tom Rini [Sun, 11 Feb 2018 01:27:45 +0000 (20:27 -0500)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoMerge tag 'signed-efi-v2018.03' of git://github.com/agraf/u-boot
Tom Rini [Sat, 10 Feb 2018 22:04:13 +0000 (17:04 -0500)]
Merge tag 'signed-efi-v2018.03' of git://github.com/agraf/u-boot

Patch queue for efi in 2018.03 - 2018-02-10

This time we have a few important bug fixes. Most noticable are:

  - Fix OpenBSD loader with CONFIG_BLK=n
  - Fix builds on various circumstances
  - Add missing stubs so callers don't call NULL
  - Bump UEFI revision to 2.7

6 years agoefi_loader: correct efi_disk_register
Heinrich Schuchardt [Fri, 9 Feb 2018 19:55:47 +0000 (20:55 +0100)]
efi_loader: correct efi_disk_register

efi_disk_register should return as status code (efi_status_t).

Disks with zero blocks should be reported as 'not ready' without throwing
an error.

This patch solves a problem running OpenBSD on system configured with
CONFIG_BLK=n (e.g. i.MX6).

Reported-by: Jonathan Gray <jsg@jsg.id.au>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Tested-by: Jonathan Gray <jsg@jsg.id.au>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: add missing runtime services stubs
Heinrich Schuchardt [Fri, 9 Feb 2018 19:41:21 +0000 (20:41 +0100)]
efi_loader: add missing runtime services stubs

Add stubs for UpdateCapsule, QueryCapsuleCapabilities, and
QueryVariableInfo.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: split README.efi into two separate documents
Heinrich Schuchardt [Tue, 30 Jan 2018 19:03:02 +0000 (20:03 +0100)]
efi_loader: split README.efi into two separate documents

README.efi describes two different concepts:
* U-Boot exposing the UEFI API
* U-Boot running on top of UEFI.

This patch splits the document in two.
Religious references are removed.

The separation of the concepts makes sense before detailing the internals
of U-Boot exposing the UEFI API in a future patch.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_driver: return type of efi_driver_init()
Heinrich Schuchardt [Thu, 1 Feb 2018 11:53:32 +0000 (12:53 +0100)]
efi_driver: return type of efi_driver_init()

Change the return type of efi_driver_init() to efi_status_t.

efi_driver_init() calls efi_add_driver() which returns an efi_status_t
value. efi_driver_init() should not subject this value to a conversion to
int losing high bits on 64bit systems.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: do not use 2.0.5 as UEFI revision number
Heinrich Schuchardt [Mon, 5 Feb 2018 17:04:21 +0000 (18:04 +0100)]
efi_loader: do not use 2.0.5 as UEFI revision number

Currently the UEFI revision number in the system table header is set to
2.0.5. This version number does not refer to any existing version of the
UEFI standard.

Set the revision number to 2.7.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: create stub for CreateEventEx
Heinrich Schuchardt [Sun, 4 Feb 2018 22:05:13 +0000 (23:05 +0100)]
efi_loader: create stub for CreateEventEx

Currently we set the function pointer for the CreateEventEx boot service
to NULL. When called this would lead to an immediate failure.

A function stub is provided which handles the case that the boot service
is called without an event group and returns EFI_UNSUPPORTED otherwise.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_selftest: use correct compiler flags for miniapps
Heinrich Schuchardt [Fri, 2 Feb 2018 00:05:47 +0000 (01:05 +0100)]
efi_selftest: use correct compiler flags for miniapps

For EFI binaries we need special CFLAGS.

They were specified for an object file that since has been replaced.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: fix the online help for bootefi bootmgr
Heinrich Schuchardt [Tue, 30 Jan 2018 18:47:43 +0000 (19:47 +0100)]
efi_loader: fix the online help for bootefi bootmgr

The bootefi command is missing in the online help for
bootefi bootmgr.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
6 years agoefi_loader: fix building crt0 on arm
Heinrich Schuchardt [Wed, 31 Jan 2018 18:45:35 +0000 (18:45 +0000)]
efi_loader: fix building crt0 on arm

Before the patch an undefined constant EFI_SUBSYSTEM was used in the
crt0 code. The current version of binutils does not swallow the error.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=888403

The necessary constant IMAGE_SUBSYSTEM_EFI_APPLICATION is already
defined in pe.h. So let's factor out asm-generic/pe.h for the
image subsystem constants and use it in our assembler code.

IMAGE_SUBSYSTEM_SAL_RUNTIME_DRIVER does not exist in the specification
let's use IMAGE_SUBSYSTEM_EFI_ROM instead.

The include pe.h is only used in code maintained by Alex so let him be the
maintainer here too.

Reported-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Tested-by: Vagrant Cascadian <vagrant@debian.org>
Signed-off-by: Alexander Graf <agraf@suse.de>