platform/kernel/u-boot.git
6 years agotest: dm: pci: Add cases for finding PCI capability APIs
Bin Meng [Fri, 3 Aug 2018 08:14:53 +0000 (01:14 -0700)]
test: dm: pci: Add cases for finding PCI capability APIs

Add several PCI capability and extended capability ID registers
in the swap_case driver, so that we can add test case for
dm_pci_find_capability() and dm_pci_find_ext_capability().

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodm: pci: Add APIs to find capability and extended capability
Bin Meng [Fri, 3 Aug 2018 08:14:52 +0000 (01:14 -0700)]
dm: pci: Add APIs to find capability and extended capability

This introduces two new APIs dm_pci_find_capability() and
dm_pci_find_ext_capability() to get PCI capability address and
PCI express extended capability address for a given PCI device.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopci: Add all known capability and extended capability ids
Bin Meng [Fri, 3 Aug 2018 08:14:51 +0000 (01:14 -0700)]
pci: Add all known capability and extended capability ids

Currently we don't have a complete list of capability and extended
capability ids. This adds them.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agotest: dm: pci: Add tests for mixed static and dynamic devices on the same bus
Bin Meng [Fri, 3 Aug 2018 08:14:50 +0000 (01:14 -0700)]
test: dm: pci: Add tests for mixed static and dynamic devices on the same bus

In the Sandbox test configuration, PCI bus#0 only has static devices
while bus#1 only has dynamic devices. Create a bus#2 that has both
types of devices and test such.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopci: sandbox: emul: Rename priv structure
Bin Meng [Fri, 3 Aug 2018 08:14:49 +0000 (01:14 -0700)]
pci: sandbox: emul: Rename priv structure

We have "struct sandbox_pci_priv" in pci_sandbox driver. To avoid
confusion, rename the emul's priv to "struct sandbox_pci_emul_priv".

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agotest: dm: pci: Test driver binding with driver data provided
Bin Meng [Fri, 3 Aug 2018 08:14:48 +0000 (01:14 -0700)]
test: dm: pci: Test driver binding with driver data provided

With struct pci_device_id, it's possible to pass a driver data for
bound driver to use. This adds a test case for this functionality.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agosandbox: Update test.dts for dynamic PCI device driver matching
Bin Meng [Fri, 3 Aug 2018 08:14:47 +0000 (01:14 -0700)]
sandbox: Update test.dts for dynamic PCI device driver matching

At present we have two PCI buses in the test configuration. Both
buses have static device-tree config devices. Now we switch the
2nd bus to use dynamic PCI devices for testing.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopci: sandbox: swap_case: Declare dynamic driver matching
Bin Meng [Fri, 3 Aug 2018 08:14:46 +0000 (01:14 -0700)]
pci: sandbox: swap_case: Declare dynamic driver matching

This adds a U_BOOT_PCI_DEVICE() declaration to the swap_case driver.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopci: sandbox: Support dynamically binding device driver
Bin Meng [Fri, 3 Aug 2018 08:14:45 +0000 (01:14 -0700)]
pci: sandbox: Support dynamically binding device driver

At present all emulated sandbox pci devices must be present in the
device tree in order to be used. The real world pci uclass driver
supports pci device driver matching, and we should add such support
on sandbox too.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodm: pci: Assign correct driver data when binding a driver
Bin Meng [Fri, 3 Aug 2018 08:14:44 +0000 (01:14 -0700)]
dm: pci: Assign correct driver data when binding a driver

The correct driver data comes from the matching 'id' instead of
'find_id' in pci_find_and_bind_driver().

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopci: sandbox: emul: Fix the call to pci_bus_find_devfn()
Bin Meng [Fri, 3 Aug 2018 08:14:43 +0000 (01:14 -0700)]
pci: sandbox: emul: Fix the call to pci_bus_find_devfn()

With the newly added test cases for PCI configuration access, we get:

  => ut dm pci_busdev
  Test: dm_test_pci_busdev: pci.c
  test/dm/pci.c:49, dm_test_pci_busdev(): SANDBOX_PCI_VENDOR_ID == vendor:
  Expected 4660, got 65535
  Test: dm_test_pci_busdev: pci.c (flat tree)
  test/dm/pci.c:49, dm_test_pci_busdev(): SANDBOX_PCI_VENDOR_ID == vendor:
  Expected 4660, got 65535
  Failures: 2

The bug only shows up when bus number is not equal to zero. This is
caused by the plain find_devfn parameter is passed to function call
pci_bus_find_devfn(), inside which find_devfn is compared to devfn
in the device's pplat structure. However pplat->devfn does not carry
the bus number. Fix this by passing find_devfn with bus number masked.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agotest: dm: pci: Add tests for configuration space access
Bin Meng [Fri, 3 Aug 2018 08:14:42 +0000 (01:14 -0700)]
test: dm: pci: Add tests for configuration space access

So far we missed the testing for PCI configuration space access.
This adds tests for it, as well as removing some redundant asserts.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agotest: dm: pci: Test more than one PCI host controller
Bin Meng [Fri, 3 Aug 2018 08:14:41 +0000 (01:14 -0700)]
test: dm: pci: Test more than one PCI host controller

So far there is only one PCI host controller in the sandbox test
configuration. This is normally the case for x86, but it can be
common on other architectures like ARM/PPC to have more than one
PCI host controller in the system.

This updates the case to cover such scenario.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopci: sandbox: swap_case: Preserve space indicator bit in BAR registers
Bin Meng [Fri, 3 Aug 2018 08:14:40 +0000 (01:14 -0700)]
pci: sandbox: swap_case: Preserve space indicator bit in BAR registers

With the newly added testing of more than one device, we get:

  => ut dm pci_swapcase
  Test: dm_test_pci_swapcase: pci.c
  test/dm/pci.c:88, dm_test_pci_swapcase(): "tHIS IS A tESt" = ptr:
  Expected "tHIS IS A tESt", got "this is a test"
  Test: dm_test_pci_swapcase: pci.c (flat tree)
  test/dm/pci.c:88, dm_test_pci_swapcase(): "tHIS IS A tESt" = ptr:
  Expected "tHIS IS A tESt", got "this is a test"
  Failures: 2

The failure only happens on the 2nd swap_case device on the PCI bus.
The case passes on the 1st device.

It turns out the swap_case driver does not emulate bit#0 in BAR
registers as a read-only bit. This corrects the implementation.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agotest: dm: pci: Test more than one device on the same bus
Bin Meng [Fri, 3 Aug 2018 08:14:39 +0000 (01:14 -0700)]
test: dm: pci: Test more than one device on the same bus

It's quite common to have more than one device on the same PCI bus.
This updates the test case to test such scenario.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agotest: dm: pci: Remove unnecessary steps in dm_test_pci_swapcase()
Bin Meng [Fri, 3 Aug 2018 08:14:38 +0000 (01:14 -0700)]
test: dm: pci: Remove unnecessary steps in dm_test_pci_swapcase()

The check on uclass_get_device() and device_active() is unnecessary
as the follow-up test operations will implicitly probe the driver.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodm: pci: Fix scanning multi-function device
Bin Meng [Fri, 3 Aug 2018 08:14:37 +0000 (01:14 -0700)]
dm: pci: Fix scanning multi-function device

The flag to control whether to scan multi-function device during
enumeration should be cleared at the beginning of each iteration
if the device's function number equals to zero.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodm: pci: Extract vendor/device id in child_post_bind()
Bin Meng [Fri, 3 Aug 2018 08:14:36 +0000 (01:14 -0700)]
dm: pci: Extract vendor/device id in child_post_bind()

Currently only devfn is extracted in child_post_bind(). Now that
we have the live-tree version API to look up PCI vendor and device
id from the compatible string, let's extract and save them too.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodm: core: Add ofnode function to read PCI vendor and device id
Bin Meng [Fri, 3 Aug 2018 08:14:35 +0000 (01:14 -0700)]
dm: core: Add ofnode function to read PCI vendor and device id

We don't have the live-tree version of fdtdec_get_pci_vendev().
This adds the API.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodm: Correct typos in uclass_first/next_device_check()
Bin Meng [Fri, 3 Aug 2018 08:14:34 +0000 (01:14 -0700)]
dm: Correct typos in uclass_first/next_device_check()

Correct typos in the comment block of uclass_first/next_device_check().

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopci: Remove 440ep-specific macros
Bin Meng [Fri, 3 Aug 2018 08:14:33 +0000 (01:14 -0700)]
pci: Remove 440ep-specific macros

These macros should not be put in the generic pci.h header file.
Since they are not referenced anywhere, remove them completely.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agozynqmp: Add avnet_ultra96_rev1_defconfig to the lits of boards
Tom Rini [Tue, 7 Aug 2018 15:36:39 +0000 (11:36 -0400)]
zynqmp: Add avnet_ultra96_rev1_defconfig to the lits of boards

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agoMerge tag 'xilinx-for-v2018.09-rc2' of git://git.denx.de/u-boot-microblaze
Tom Rini [Tue, 7 Aug 2018 15:32:50 +0000 (11:32 -0400)]
Merge tag 'xilinx-for-v2018.09-rc2' of git://git.denx.de/u-boot-microblaze

Xilinx fixes for v2018.09-rc2

xilinx:
- Add support for zybo z7 and ultra96
- Tune zynq and zynqmp mini configurations
- Move SYS_MALLOC_LEN to Kconfig

fdt
 - make static funcs

gpio:
- Fix soft gpio driver
- Fix Zynq gpio driver by using platdata

microblaze:
- Fix Kconfig entry

spi
- Move ISSI to Kconfig

6 years agoMerge git://git.denx.de/u-boot-marvell
Tom Rini [Tue, 7 Aug 2018 15:32:34 +0000 (11:32 -0400)]
Merge git://git.denx.de/u-boot-marvell

6 years agoMerge branch 'master' of git://git.denx.de/u-boot-video
Tom Rini [Tue, 7 Aug 2018 11:15:20 +0000 (07:15 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-video

6 years agoMerge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging
Tom Rini [Tue, 7 Aug 2018 11:15:11 +0000 (07:15 -0400)]
Merge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging

6 years agoarm: zynq: dts: add spi flash node to zedboard
Luis Araneda [Fri, 27 Jul 2018 08:43:42 +0000 (04:43 -0400)]
arm: zynq: dts: add spi flash node to zedboard

Add a flash node to fix the detection of the memory IC.
With the changes introduced with commit 8fee8845e754
("enf_sf: reuse setup_flash_device instead of open coding it")
the SPI speed is now read from device-tree or a default value
is applied. This replaced the old behavior of setting the
SPI speed to CONFIG_ENV_SPI_MAX_HZ.

As this board didn't have a flash node, the default value
was applied to the SPI speed, producing an error when probing
the flash memory (speed too slow).

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agogpio: xilinx: Add support for using label property
Michal Simek [Thu, 2 Aug 2018 10:58:54 +0000 (12:58 +0200)]
gpio: xilinx: Add support for using label property

Add support for reading label property from DT and set up bank name
based on that. If label property is not present full device node name is
used.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
6 years agogpio: xilinx: Return 0 from xilinx_gpio_set_value
Michal Simek [Mon, 6 Aug 2018 05:42:40 +0000 (07:42 +0200)]
gpio: xilinx: Return 0 from xilinx_gpio_set_value

.set_value functions have no specified return value and gpio_uclass is
not working with it too. But this patch is returning 0 to be in sync
with others DM gpio drivers.

Reported-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
6 years agogpio: xilinx: Not read output values via regs
Michal Simek [Mon, 23 Jul 2018 10:40:36 +0000 (12:40 +0200)]
gpio: xilinx: Not read output values via regs

Reading registers for finding out output value is not working because
input value is read instead in case of tristate.

Reported-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
6 years agocommon: fdt: Make fdt_del_subnodes/fdt_del_partition static
Michal Simek [Tue, 31 Jul 2018 12:31:04 +0000 (14:31 +0200)]
common: fdt: Make fdt_del_subnodes/fdt_del_partition static

These functions are only called in this file that's why make them static
to keep static analysers happy.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agogpio: xilinx: Simplify logic in xilinx_gpio_set_value
Michal Simek [Mon, 30 Jul 2018 12:29:27 +0000 (14:29 +0200)]
gpio: xilinx: Simplify logic in xilinx_gpio_set_value

There is no reason to do read/write for if/else separately.

Reported-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
6 years agogpio: xilinx: Set value before changing direction
Michal Simek [Mon, 30 Jul 2018 08:02:53 +0000 (10:02 +0200)]
gpio: xilinx: Set value before changing direction

Set a value before changing gpio direction. This will ensure that the
old value is not propagated when direction has changed but new value is
not written yet.

Reported-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
6 years agogpio: xilinx: Remove !DM driver
Michal Simek [Mon, 23 Jul 2018 11:40:01 +0000 (13:40 +0200)]
gpio: xilinx: Remove !DM driver

There is no user for !DM driver that's why remove it.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agogpio: xilinx: Find out bank before use in xilinx_gpio_get_function()
Michal Simek [Mon, 23 Jul 2018 10:08:49 +0000 (12:08 +0200)]
gpio: xilinx: Find out bank before use in xilinx_gpio_get_function()

Call xilinx_gpio_get_bank_pin() before use.

Reported-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
6 years agoarm64: a37xx: add CONFIG_MTD_DEVICE and CONFIG_MTD_PARTITIONS
Vladimir Vid [Fri, 13 Jul 2018 09:56:00 +0000 (11:56 +0200)]
arm64: a37xx: add CONFIG_MTD_DEVICE and CONFIG_MTD_PARTITIONS

CONFIG_MTD_DEVICE is required for the mtdparts command and but it is missing from the mvebu_armada-37xx.h
CONFIG_MTD_PARTITIONS is needed for the ubi support. Some of the Marvell based devices may require this as well.

Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agotools: kwboot: properly quit when read() returns 0
Willy Tarreau [Tue, 3 Jul 2018 16:10:31 +0000 (12:10 -0400)]
tools: kwboot: properly quit when read() returns 0

When kwboot is attached to a terminal which disappears such as one
connected via an unplugged USB cable, read() returns 0, making kwboot
loop until a key is pressed in the terminal. The only case where read()
may return 0 here is when the terminal is closed anyway, so let's
properly handle this one and report is similar to other errors.

Signed-off-by: Willy Tarreau <w@1wt.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agotools: kwboot: unbreak terminal-only mode
Willy Tarreau [Tue, 3 Jul 2018 16:10:30 +0000 (12:10 -0400)]
tools: kwboot: unbreak terminal-only mode

Commit 84899e2 ("tools/kwboot: Sync with latest barebox version to
support Armada XP") accidently broke the terminal-only mode (-t) by
removing the test on the bootmsg. Thus even when trying to use kwboot
as a plain terminal, it asks to reboot the target.

This commit simply reintroduces the lost test so that it is possible
again to use kwboot to attach to the target system's console.

Signed-off-by: Willy Tarreau <w@1wt.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoARM: kirkwood: add SBx81LIFXCAT board
Chris Packham [Mon, 25 Jun 2018 10:34:57 +0000 (22:34 +1200)]
ARM: kirkwood: add SBx81LIFXCAT board

This is a series of line cards for Allied Telesis's SBx8100 chassis
switch. The CPU block is common to the SBx81GP24 and SBx81GT24 cards
cards collectively referred to as SBx81LIFXCAT in u-boot.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoarm: mvebu: clearfog: add u-boot, dm-spl tag for spi
Jon Nettleton [Thu, 21 Jun 2018 09:35:49 +0000 (12:35 +0300)]
arm: mvebu: clearfog: add u-boot, dm-spl tag for spi

This is required so SPL and u-boot can boot from spi
flash devices that use the dm drivers.

Signed-off-by: Jon Nettleton <jon@solid-run.com>
[baruch: use -u-boot.dtsi]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoarm: mvebu: helios4: remove duplicate sdhci pins node
Baruch Siach [Thu, 14 Jun 2018 15:17:54 +0000 (18:17 +0300)]
arm: mvebu: helios4: remove duplicate sdhci pins node

The same pinctrl node appears in the solidrun-microsom dtsi. Use that
instead.

Cc: Dennis Gilmore <dennis@ausil.us>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Dennis Gilmore <dennis@ausil.us>
Tested-by: Dennis Gilmore <dennis@ausil.us>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoarm: mvebu: Better align Clearfog dts file with Linux kernel
Jon Nettleton [Thu, 14 Jun 2018 15:17:53 +0000 (18:17 +0300)]
arm: mvebu: Better align Clearfog dts file with Linux kernel

This makes changes so the u-boot dts file is structured more
similar to the mainline linux dtsi file.  It provides a minimal
common dts that can work for most boards based on the ClearFog
platform.  Ethernet support is only supported for eth0 however
all devices are left enabled so u-boot can generate and
provide mac addresses for all of the network interfaces.

Signed-off-by: Jon Nettleton <jon@solid-run.com>
[baruch: rebase on recent changes]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Dennis Gilmore <dennis@ausil.us>
Tested-by: Dennis Gilmore <dennis@ausil.us>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoarm: mvebu: clearfog: use the microsom .dtsi
Baruch Siach [Thu, 14 Jun 2018 15:17:52 +0000 (18:17 +0300)]
arm: mvebu: clearfog: use the microsom .dtsi

Use hardware description from the recently introduced microsom .dtsi
file to reduce duplication.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Dennis Gilmore <dennis@ausil.us>
Tested-by: Dennis Gilmore <dennis@ausil.us>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoarm: mvebu: solidrun-microsom: update SPI flash compatible
Baruch Siach [Thu, 14 Jun 2018 15:17:51 +0000 (18:17 +0300)]
arm: mvebu: solidrun-microsom: update SPI flash compatible

Add the "spi-flash" compatible string so that the generic sf_probe
driver can probe the SPI flash on the SolidRun SOM.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoconfigs: kirkwood: Move RTC_MV to DM and Kconfig
Chris Packham [Tue, 7 Aug 2018 07:41:46 +0000 (19:41 +1200)]
configs: kirkwood: Move RTC_MV to DM and Kconfig

Now that there is DM support in the RTC_MV driver update board configs
to use it.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoconfigs: move RTC_MV config from mv-plug-common.h to boards
Chris Packham [Tue, 7 Aug 2018 07:41:45 +0000 (19:41 +1200)]
configs: move RTC_MV config from mv-plug-common.h to boards

To aid in migrating CONFIG_RTC_MV to Kconfig move the definition of it
from mv-plug-common.h to the board config headers that nest it.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoconfigs: kirkwood: ds109: switch to DM_I2C
Chris Packham [Tue, 7 Aug 2018 07:41:44 +0000 (19:41 +1200)]
configs: kirkwood: ds109: switch to DM_I2C

Enable DM_I2C and I2C_MVTSWI for the ds109 board.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agoi2c: imx_lpi2c: add uclass api support
Peng Fan [Tue, 17 Jul 2018 12:38:33 +0000 (20:38 +0800)]
i2c: imx_lpi2c: add uclass api support

Use uclass clk api to get per clk when CONFIG_CLK enabled.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
6 years agoi2c-mux: pca954x: support pca9646 i2c switch
Peng Fan [Tue, 17 Jul 2018 12:38:32 +0000 (20:38 +0800)]
i2c-mux: pca954x: support pca9646 i2c switch

Add the PCA9646 support, which is 2-wire bus switch and buffered 4-channel.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Anatolij Gustschin <agust@denx.de>
6 years agomvebu: clearfog: use kconfig symbols to select boot device
Baruch Siach [Mon, 18 Jun 2018 18:56:27 +0000 (21:56 +0300)]
mvebu: clearfog: use kconfig symbols to select boot device

This allows selection of the boot device at build time without source
code modification.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agomvebu: support UART boot image
Baruch Siach [Mon, 18 Jun 2018 18:56:26 +0000 (21:56 +0300)]
mvebu: support UART boot image

The kwboot utility can use the generated image to boot mvebu SoCs from
UART.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agomvebu: select boot device at SoC level
Baruch Siach [Mon, 18 Jun 2018 18:56:25 +0000 (21:56 +0300)]
mvebu: select boot device at SoC level

Move the gdsys Controlcenter DC specific build time kwbimage.cfg
generation code into the mach-mvebu/ directory to be shared by all 32bit
mvebu platforms.

Remove board specific kwbimage.cfg files, and use the generated one
instead. These files are all identical, with two exceptions. Clearfog
and Helios4 use the sdio boot device, whereas all others use spi. Update
the defconfigs for the exceptional boards to generate the same
kwbimage.cfg as before.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agomvebu: consolidate SPL boot device config symbols
Baruch Siach [Mon, 18 Jun 2018 18:56:24 +0000 (21:56 +0300)]
mvebu: consolidate SPL boot device config symbols

Use MVEBU_SPL_BOOT_DEVICE_* to select between SPI and MMC, instead of
board specific symbols. This commit enables the boot device selection
menu to all mvebu platforms, but it is only effective on Turris Omnia
and gdsys Controlcenter DC platforms. A following commit will enable
boot selection for other platforms.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agomvebu: a38x: drop duplicate platform id symbols
Baruch Siach [Mon, 18 Jun 2018 18:56:23 +0000 (21:56 +0300)]
mvebu: a38x: drop duplicate platform id symbols

Use generic mvebu Kconfig symbols like all other mvebu boards.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agomvebu: turris_omnia: use u-boot-spl-dtb.bin
Baruch Siach [Mon, 18 Jun 2018 18:56:22 +0000 (21:56 +0300)]
mvebu: turris_omnia: use u-boot-spl-dtb.bin

u-boot-spl.bin and u-boot-spl-dtb.bin are identical when building the
turris_omnia_defconfig. This commit makes Turris Omnia consistent with
all other mvebu boards.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
6 years agodm: power-domain: query power domain after get device
Peng Fan [Fri, 27 Jul 2018 02:20:39 +0000 (10:20 +0800)]
dm: power-domain: query power domain after get device

This is to test power_domain_on in device_probe.
If the device has a power-domain property, enable it
when probe the device. So add the test to check
whether it is powered on or not.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodm: core: device: enable power domain in probe
Peng Fan [Fri, 27 Jul 2018 02:20:38 +0000 (10:20 +0800)]
dm: core: device: enable power domain in probe

Enable power domain associated with the device when probe.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopower: Add CONFIG_SPL_POWER_DOMAIN config
Peng Fan [Fri, 27 Jul 2018 02:20:37 +0000 (10:20 +0800)]
power: Add CONFIG_SPL_POWER_DOMAIN config

Add CONFIG_SPL_POWER_DOMAIN config entry.
Build drivers/power/domain if this config is selected.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agopower-domain: add dummy functions when CONFIG_POWER_DOMAIN not defined
Peng Fan [Fri, 27 Jul 2018 02:20:36 +0000 (10:20 +0800)]
power-domain: add dummy functions when CONFIG_POWER_DOMAIN not defined

Add dummy functions when CONFIG_POWER_DOMAIN not defined.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
6 years agoarm64: zynqmp: Add support for Avnet Ultra96
Michal Simek [Tue, 24 Jul 2018 14:27:00 +0000 (16:27 +0200)]
arm64: zynqmp: Add support for Avnet Ultra96

Avnet Ultra96 is rebranded Xilinx zcu100 revC/D. Add new defconfig files
and point to origin internal board name.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: zynq: add support for the zybo z7 board
Luis Araneda [Tue, 24 Jul 2018 15:31:19 +0000 (11:31 -0400)]
arm: zynq: add support for the zybo z7 board

The board is manufactured by Digilent
Main features:
- Soc: XC7Z010 (Z7-10) or XC7Z020 (Z7-20)
- RAM: 1 GB DDR3L
- FLASH: 16 MB QSPI
- 1 Gbps Ethernet
- USB 2.0
- microSD slot
- Pcam camera connector
- HDMI Tx and Rx
- Audio codec: stereo out, stereo in, mic
- 5 (Z7-10) or 6 (Z7-20) Pmod ports
- 6 push-buttons, 4 switches, 5 LEDs
- 1 (Z7-10) or 2 (Z7-20) RGB LEDs

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoKconfig: Move config SYS_MALLOC_LEN to Kconfig for zynq
Siva Durga Prasad Paladugu [Fri, 20 Jul 2018 09:41:38 +0000 (15:11 +0530)]
Kconfig: Move config SYS_MALLOC_LEN to Kconfig for zynq

This patch moves the the config SYS_MALLOC_LEN to
Kconfig. It will be just for Zynq arch and to do
will be for all other archs.

Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
Signed-off-by: Vipul Kumar <vipul.kumar@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm64: zynqmp: Enable soft gpio driver for zcu102 and zcu100
Michal Simek [Tue, 24 Jul 2018 10:45:29 +0000 (12:45 +0200)]
arm64: zynqmp: Enable soft gpio driver for zcu102 and zcu100

Enable soft gpio driver for zcu102 and zcu100.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agogpio: zynq: Used platdata structure for storing static data instead of priv
Vipul Kumar [Fri, 20 Jul 2018 09:06:49 +0000 (14:36 +0530)]
gpio: zynq: Used platdata structure for storing static data instead of priv

This patch used platdata structure instead of priv for storing static
information read from DT.

Signed-off-by: Vipul Kumar <vipul.kumar@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agomicroblaze: Add missing quotes around XILINX_MICROBLAZE0_HW_VER
Michal Simek [Mon, 23 Jul 2018 06:34:43 +0000 (08:34 +0200)]
microblaze: Add missing quotes around XILINX_MICROBLAZE0_HW_VER

This issue is reported by kconfiglib:
warning: style: quotes recommended around default value for string
symbol XILINX_MICROBLAZE0_HW_VER (defined at
board/xilinx/microblaze-generic/Kconfig:37)

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: zynq: Fix indentation for zynq-cse targets
Michal Simek [Fri, 20 Jul 2018 08:17:17 +0000 (10:17 +0200)]
arm: zynq: Fix indentation for zynq-cse targets

Trivial DT style fixes.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: zynq: Remove fclk-enable property for cse-nor target
Michal Simek [Fri, 20 Jul 2018 08:16:21 +0000 (10:16 +0200)]
arm: zynq: Remove fclk-enable property for cse-nor target

Mini cse NOR configuration is running without PL that's why there is no
reason to enable clock to PL.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: zynqmp: Fix sdhci clock in emmc1 mini configuration
Michal Simek [Fri, 20 Jul 2018 09:34:00 +0000 (11:34 +0200)]
arm: zynqmp: Fix sdhci clock in emmc1 mini configuration

Add missing clocks property with fix clock-names property to be aligned
with emmc0 configuration and binding doc.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoarm: zynqmp: Move NR_DRAM_BANKS for mini confiration
Michal Simek [Fri, 20 Jul 2018 09:31:31 +0000 (11:31 +0200)]
arm: zynqmp: Move NR_DRAM_BANKS for mini confiration

There is no reason to have the same setting in subsequent config if we
can have it only once in shared.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agospi: Kconfig: Create ISSI Kconfig entry
Michal Simek [Mon, 25 Jan 2016 14:39:26 +0000 (15:39 +0100)]
spi: Kconfig: Create ISSI Kconfig entry

Add ISSI to Kconfig to make it selectable via menuconfig.
Also convert all current platforms.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
6 years agoMerge branch 'master' of git://git.denx.de/u-boot-spi
Tom Rini [Sat, 4 Aug 2018 23:41:43 +0000 (19:41 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-spi

6 years agoMerge branch 'master' of git://git.denx.de/u-boot-sunxi
Tom Rini [Sat, 4 Aug 2018 23:41:30 +0000 (19:41 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-sunxi

6 years agoclk: clk_set_default: accept no-op skip fields
Neil Armstrong [Thu, 26 Jul 2018 13:19:32 +0000 (15:19 +0200)]
clk: clk_set_default: accept no-op skip fields

The Assigned Clock parents and rates misses the fact that a "0" entry can
be passed to skip setting a parent or rate of an assigned clock as
described in the Linux clock bindings at [1].

This patch simply skips the clock reparenting if the DT parsing returns
-ENOENT and the clock rate setting if "0" is passed as clock rate.

[1] https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/clock/clock-bindings.txt#L135

Fixes: f4fcba5c5baa "clk: implement clk_set_defaults()"
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agomailmap: Update mail address (lukma)
Lukasz Majewski [Wed, 25 Jul 2018 22:37:14 +0000 (00:37 +0200)]
mailmap: Update mail address (lukma)

Update my e-mail address from samsung.com to denx.de

Signed-off-by: Lukasz Majewski <lukma@denx.de>
6 years agoARM: dts: stm32: remove cd-inverted for stm32429i-eval
Patrice Chotard [Wed, 25 Jul 2018 15:49:10 +0000 (17:49 +0200)]
ARM: dts: stm32: remove cd-inverted for stm32429i-eval

As cd-inverted property is no more used by arm_pl180_mmci driver,
remove it. Update cd-gpios active level accordingly.

Reported-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agommc: arm_pl180_mmci: Remove cd_inverted host's struct field
Patrice Chotard [Wed, 25 Jul 2018 15:49:09 +0000 (17:49 +0200)]
mmc: arm_pl180_mmci: Remove cd_inverted host's struct field

As platform uses GPIOs for card detection, it's
simpler and more readable to use GPIO_ACTIVE_(LOW|HIGH)
in the gpio flags instead of using the cd-inverted
property.

Reported-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agommc: arm_pl180_mmci: Add missing clk_free
Patrice Chotard [Wed, 25 Jul 2018 15:49:08 +0000 (17:49 +0200)]
mmc: arm_pl180_mmci: Add missing clk_free

Add missing clk_free() call in case of failure
when enabling the clock.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agommc: arm_pl180_mmci: Update to support CONFIG_BLK
Patrice Chotard [Wed, 25 Jul 2018 15:49:07 +0000 (17:49 +0200)]
mmc: arm_pl180_mmci: Update to support CONFIG_BLK

Config flag CONFIG_BLK becomes mandatory, update arm_pl180_mmci
to support this config.

This driver is used by STM32Fx and by Vexpress platforms.
Only STM32Fx are DM ready. No DM code is isolated and will be
removed easily when wexpress will be converted to DM.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32f469-disco: Enable CONFIG_BLK
Patrice Chotard [Wed, 25 Jul 2018 15:49:06 +0000 (17:49 +0200)]
configs: stm32f469-disco: Enable CONFIG_BLK

CONFIG_BLK config flag becomes mandatory, enable it.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agoconfigs: stm32f746-disco: Enable CONFIG_BLK
Patrice Chotard [Wed, 25 Jul 2018 15:49:05 +0000 (17:49 +0200)]
configs: stm32f746-disco: Enable CONFIG_BLK

CONFIG_BLK config flag becomes mandatory, enable it.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoconfigs: stm32f429-evaluation: Enable CONFIG_BLK
Patrice Chotard [Wed, 25 Jul 2018 15:49:04 +0000 (17:49 +0200)]
configs: stm32f429-evaluation: Enable CONFIG_BLK

CONFIG_BLK config flag becomes mandatory, enable it.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
6 years agodocproc: Remove
Tom Rini [Wed, 25 Jul 2018 15:42:58 +0000 (11:42 -0400)]
docproc: Remove

Now that we have moved to Sphinx documentation we don't need the docproc
app anymore, remove.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 years agobootcount: Fix misaligned cache operation
Alex Kiernan [Wed, 25 Jul 2018 11:45:58 +0000 (11:45 +0000)]
bootcount: Fix misaligned cache operation

1947c2d2a0 introduces cache line flushes for the bootcounter, but if
the start address is not aligned then the flush causes warnings of
the form:

  CACHE: Misaligned operation at range [4030b7fc4030b83c]

Align both the start and end of the buffer (possibly crossing multiple
lines).

Fixes: 1947c2d2a0 ("bootcount: flush after storing the bootcounter")
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Acked-by: Stefano Babic <sbabic@denx.de>
6 years agoarmv8: make SPL exception vectors optional
Andre Przywara [Tue, 24 Jul 2018 23:57:01 +0000 (00:57 +0100)]
armv8: make SPL exception vectors optional

Even though the exception vector table is a fundamental part of the ARM
architecture, U-Boot mostly does not make real use of it, except when
crash dumping. But having it in takes up quite some space, partly due to
the architectural alignment requirement of 2KB. Since we don't take special
care of that, the compiler adds a more or less random amount of padding
space, which increases the image size quite a bit, especially for the SPL.

On a typical Allwinner build this is around 1.5KB of padding, plus 1KB
for the vector table (mostly padding space again), then some extra code
to do the actual handling. This amounts to almost 10% of the maximum image
size, which is quite a lot for a pure debugging feature.

Add a Kconfig symbol to allow the exception vector table to be left out
of the build for the SPL.
For now this is "default y" for everyone, but specific defconfigs,
platforms or .config files can opt out here at will, to mitigate the code
size pressure we see for some SPLs.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
6 years agoarmv8: Reduce exception handling code
Andre Przywara [Tue, 24 Jul 2018 23:57:00 +0000 (00:57 +0100)]
armv8: Reduce exception handling code

The arm64 exception handling code is quite big, mostly due to
architectural alignment requirements. Each exception entry spans 32
instructions, which sounds generous, but is too small to fit all of the
save/branch/restore code in there. So at the moment we use only four
instructions, branching into shared save and restore routines.
To not leave the space for those remaining 28 instructions wasted, let's
split the save and restore routines and stuff them into the gaps.
This saves about 250 bytes of code, which is helpful for those tight
SPLs.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
6 years agoti_omap3_common: Add CONFIG_SYS_NS16550_COMx entries
Adam Ford [Tue, 24 Jul 2018 23:06:04 +0000 (18:06 -0500)]
ti_omap3_common: Add CONFIG_SYS_NS16550_COMx entries

Several boards do not use the default UART3, so they do a check
for ifdef CONFIG_SPL_BUILD and enable the pointer for
CONFIG_SYS_NS16550_COMx to point to OMAP34XX_UARTx.

Let's consoldate this all into one place, and remove them from the
individual boards.

Signed-off-by: Adam Ford <aford173@gmail.com>
6 years agoconfigs: stm32mp15: enable ADC
Fabrice Gasnier [Tue, 24 Jul 2018 14:31:32 +0000 (16:31 +0200)]
configs: stm32mp15: enable ADC

Enable ADC on stm32mp15.
- CONFIG_CMD_ADC
- CONFIG_STM32_ADC

Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoadc: Add driver for STM32 ADC
Fabrice Gasnier [Tue, 24 Jul 2018 14:31:31 +0000 (16:31 +0200)]
adc: Add driver for STM32 ADC

This patch adds support for STMicroelectronics STM32 ADC (analog to
digital converter). It's originally based on Linux kernel v4.18-rcs
drivers/iio/adc/stm32-adc*. It's composed of:
- core driver (UCLASS_SIMPLE_BUS) manages common resources (clk, regu).
- child drivers (UCLASS_ADC) declare each ADC, channels and handle
  conversions.
This driver currently supports STM32H7 and STM32MP1 ADC.

Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodt-bindings: Document STM32 ADC DT bindings
Fabrice Gasnier [Tue, 24 Jul 2018 14:31:30 +0000 (16:31 +0200)]
dt-bindings: Document STM32 ADC DT bindings

This patch adds documentation of device tree bindings for the STM32 ADC.
It's based on linux-v4.18-rc* dt-bindings, at the time of writing:
- Documentation/devicetree/bindings/iio/adc/st,stm32-adc.txt

Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agodm: adc: uclass: get reference regulator once
Fabrice Gasnier [Tue, 24 Jul 2018 14:31:29 +0000 (16:31 +0200)]
dm: adc: uclass: get reference regulator once

device_get_supply_regulator() only needs to be called once.
But each time there's call to adc_vxx_value() for instance, it calls
adc_vxx_platdata_update() -> device_get_supply_regulator().

So, move device_get_supply_regulator() to pre_probe() routine.

This also allows vdd_supply/vss_supply to be provided directly from
uc_pdata, e.g dt-binding variant like stm32-adc provide its own
'vref-supply'.

Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agoclk: add clk_valid()
Fabrice Gasnier [Tue, 24 Jul 2018 14:31:28 +0000 (16:31 +0200)]
clk: add clk_valid()

Add clk_valid() to check for optional clocks are valid.
Call clk_valid() in test/dm/clk.c and add relevant test routine to
sandbox clk tests.

Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 years agokconfig: Replace spaces with tabs
Michal Simek [Tue, 24 Jul 2018 12:47:43 +0000 (14:47 +0200)]
kconfig: Replace spaces with tabs

Trivial Kconfig cleanup. Use tabs instead of spaces.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
6 years agoAdd Beaglebone Enhanced support
Koen Kooi [Wed, 18 Jul 2018 08:13:59 +0000 (10:13 +0200)]
Add Beaglebone Enhanced support

The "Beaglebone Enhanced" by Sancloud is based on the Beaglebone Black,
but with the following differences:

 * Gigabit capable PHY
 * Extra USB hub, optional i2c control
 * lps3331ap barometer connected over i2c
 * MPU6050 6 axis MEMS accelerometer/gyro connected over i2c
 * 1GiB DDR3 RAM
 * RTL8723 Wifi/Bluetooth connected over USB

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 years agoMerge git://git.denx.de/u-boot-dm
Tom Rini [Fri, 3 Aug 2018 14:08:13 +0000 (10:08 -0400)]
Merge git://git.denx.de/u-boot-dm

6 years agoarm: sunxi: Allwinner A10 SPI driver
Stefan Mavrodiev [Tue, 6 Feb 2018 13:14:33 +0000 (15:14 +0200)]
arm: sunxi: Allwinner A10 SPI driver

Add spi driver for sun4i, sun5i and sun7i SoCs. The driver is
adapted from mailine kernel.

Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
6 years agospi: kirkwood: add orion-spi compatible string
Chris Packham [Wed, 1 Aug 2018 06:49:26 +0000 (12:19 +0530)]
spi: kirkwood: add orion-spi compatible string

This matches the compatible string used by the Linux kernel. This will
allow u-boot to use the same device tree files.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
[jagan: use armada instead of orion on .data]
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
6 years agospi: kirkwood: Get drvdata in .ofdata_to_platdata
Jagan Teki [Thu, 15 Mar 2018 11:33:22 +0000 (17:03 +0530)]
spi: kirkwood: Get drvdata in .ofdata_to_platdata

Get the is_errata_50mhz_ac in .ofdata_to_platdata, and
reuse it in .set_mode this can eventually initialized
dt code at once and adding room to add platdata.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
6 years agomtd: add spi flash id s25fl128l
Clément Laigle [Thu, 26 Jul 2018 07:31:41 +0000 (09:31 +0200)]
mtd: add spi flash id s25fl128l

Add support for SPANSION s25fl128l

Signed-off-by: Clément Laigle <c.laigle@catie.fr>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
[jagan: fixed , at the end of } ]
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
6 years agoARM: tegra: align carveout size
Stephen Warren [Tue, 31 Jul 2018 18:38:27 +0000 (12:38 -0600)]
ARM: tegra: align carveout size

Align the size of the carveout region to 2M. This ensures that the size
can be accurately represented by an LPAE page table that uses sections.

This solves a bug (hang at boot time soon after printing the DRAM size)
that only shows up when the following two commits are merged together:
d32e86bde8a3 ARM: HYP/non-sec: enable ARMV7_LPAE if HYP mode is supported
6e584e633d10 ARM: tegra: avoid using secure carveout RAM

Cc: Mark Kettenis <kettenis@openbsd.org>
Cc: Alexander Graf <agraf@suse.de>
Acked-by: Tom Warren <twarren@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
6 years agobinman: Adjust _GetPropTree() parameters
Simon Glass [Tue, 17 Jul 2018 19:25:52 +0000 (13:25 -0600)]
binman: Adjust _GetPropTree() parameters

At present this function takes a filename, but it is better to use an Fdt
object so that the caller can control this, perhaps obtainint the device
tree from a bytearray. Update the method accordingly and also fix a
confusing parameter name.

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