oweals/u-boot.git
7 years agosun50i: a64: Add A64-OLinuXino initial support
Jagan Teki [Sat, 12 Aug 2017 12:48:58 +0000 (18:18 +0530)]
sun50i: a64: Add A64-OLinuXino initial support

OLimex A64-OLinuXino is an open-source hardware board
using the Allwinner A64 SOC.

OLimex A64-OLinuXino has
- A64 Quad-core Cortex-A53 64bit
- 1GB or 2GB RAM DDR3L @ 672Mhz
- microSD slot and 4/8/16GB eMMC
- Debug TTL UART
- HDMI
- LCD
- IR receiver
- 5V DC power supply

Tested-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agosun50i: a64: Add initial NanoPi A64 support
Jagan Teki [Fri, 9 Jun 2017 13:01:17 +0000 (18:31 +0530)]
sun50i: a64: Add initial NanoPi A64 support

NanoPi A64 is a new board of high performance with low cost
designed by FriendlyElec., using the Allwinner A64 SOC.

Nanopi A64 features
- Allwinner A64, 64-bit Quad-core Cortex-A53@648MHz to 1.152GHz, DVFS
- 1GB DDR3 RAM
- MicroSD
- Gigabit Ethernet (RTL8211E)
- Wi-Fi 802.11b/g/n
- IR receiver
- Audio In/Out
- Video In/Out
- Serial Debug Port
- microUSB 5V 2A DC power-supply

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Tested-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agosun50i: a64: Sync Linux [oe]hci0 nodes
Jagan Teki [Fri, 9 Jun 2017 12:27:58 +0000 (17:57 +0530)]
sun50i: a64: Sync Linux [oe]hci0 nodes

Synced ohci0 and ehci0 nodes from Linux for sun50i-a64.dtsi

Here is the Linux last merge tag details:
Merge: 0e91f43d e5770b7
Author: Stephen Rothwell <sfr@canb.auug.org.au>
Date:   Fri Jun 9 14:59:55 2017 +1000

    Merge remote-tracking branch 'staging/staging-next'

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
7 years agosunxi: add MACPWR in Orange Pi PC2 defconfig
Icenowy Zheng [Tue, 4 Jul 2017 10:43:11 +0000 (18:43 +0800)]
sunxi: add MACPWR in Orange Pi PC2 defconfig

The Ethernet function is enabled in the Orange Pi PC2 device tree and
defconfig, however, CONFIG_MACPWR is not properly set, which left the
PHY being disabled when booting, which makes the Ethernet function not
usable.

Add the proper value of this option in the PC2 defconfig.

Fixes: e7bd15ea156f ("sunxi: Add OrangePi PC 2 initial support")
Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
Acked-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agosunxi: switch PRCM to non-secure on H3/H5 SoCs
Icenowy Zheng [Thu, 20 Jul 2017 06:00:32 +0000 (14:00 +0800)]
sunxi: switch PRCM to non-secure on H3/H5 SoCs

The PRCM of H3/H5 SoCs have a secure/non-secure switch, which controls
the access to some clock/power related registers in PRCM.

Current Linux kernel will access the CPUS (AR100) clock in the PRCM
block, so the PRCM should be switched to non-secure.

Add code to switch the PRCM to non-secure.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Tested-by: Chen-Yu Tsai <wens@csie.org>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agosunxi: add PRCM secure switch register definition
Icenowy Zheng [Thu, 20 Jul 2017 06:00:31 +0000 (14:00 +0800)]
sunxi: add PRCM secure switch register definition

Some new Allwinner SoCs' PRCM has a secure switch register, which
controls the access to some clock and power registers in PRCM block.

Add the definition of this register and its bits in the PRCM header
file.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
Tested-by: Chen-Yu Tsai <wens@csie.org>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agosunxi: reduce Orange Pi Zero DRAM clock speed
Clément Bœsch [Sun, 23 Jul 2017 20:14:23 +0000 (22:14 +0200)]
sunxi: reduce Orange Pi Zero DRAM clock speed

Using `fel-boot-lima-memtester-on-orange-pi-pc 672` on an Orange Pi
without heatsink results in the following error after a few minutes:
  WRITE FAILURE: 0x00200000 != 0xffdfffff at offset 0x0137f47c (bitflip).

Also, the constructor repository (github/orangepi-xunlong) seems to
contain that 624 Mhz clock speed in its u-boot fork. It may be that 672
Mhz is the advertized overclocked speed.

According to http://linux-sunxi.org/Orange_Pi_PC#DRAM_clock_speed_limit
it may be worth decreasing that value with other Orange Pi boards.

See also e7d6aa0b74b7f4d08ee68da8a586c76c761348e2.

Signed-off-by: Clément Bœsch <u@pkh.me>
[Add s-o-b line]
Signed-off-by: Jagan Teki <jagan@openedev.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agosun7i: Add support for Olimex A20-OLinuXino-LIME2-eMMC
Olliver Schinagl [Fri, 12 May 2017 09:38:54 +0000 (11:38 +0200)]
sun7i: Add support for Olimex A20-OLinuXino-LIME2-eMMC

This patch adds support for the Olimex OLinuXino Lime2 with eMMC flash
storage.
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXino-LIME2-eMMC/

It is a assembly variant of the regular Lime2 but featuring eMMC for
storage.

Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agoARM: dts: sunxi: Change node name for pwrseq pin on Olinuxino-lime2-emmc
Emmanuel Vadot [Fri, 12 May 2017 09:38:53 +0000 (11:38 +0200)]
ARM: dts: sunxi: Change node name for pwrseq pin on Olinuxino-lime2-emmc

The node name for the power seq pin is mmc2@0 like the mmc2_pins_a one.
This makes the original node (mmc2_pins_a) scrapped out of the dtb and
result in a unusable eMMC if U-Boot didn't configured the pins to the
correct functions.

Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
7 years agoMerge git://git.denx.de/u-boot-i2c
Tom Rini [Thu, 10 Aug 2017 11:22:59 +0000 (07:22 -0400)]
Merge git://git.denx.de/u-boot-i2c

7 years agoMerge git://www.denx.de/git/u-boot-marvell
Tom Rini [Thu, 10 Aug 2017 11:22:56 +0000 (07:22 -0400)]
Merge git://www.denx.de/git/u-boot-marvell

7 years agoi2c: designware: Allow sending restart conditions
Marek Vasut [Mon, 7 Aug 2017 18:45:31 +0000 (20:45 +0200)]
i2c: designware: Allow sending restart conditions

Allow sending restart conditions upon direction change as this is
required by some chips.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefan Roese <sr@denx.de>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Heiko Schocher <hs@denx.de>
Reviewed-by: Heiko Schocher <hs@denxx.de>
7 years agoConvert CONFIG_SYS_I2C_OMAP24XX to Kconfig
Adam Ford [Mon, 7 Aug 2017 18:11:34 +0000 (13:11 -0500)]
Convert CONFIG_SYS_I2C_OMAP24XX to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_I2C_OMAP24XX

Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agonet: mvpp2x: Set BM poll size once during priv probe
Stefan Chulski [Wed, 9 Aug 2017 07:37:52 +0000 (10:37 +0300)]
net: mvpp2x: Set BM poll size once during priv probe

Set BM poll size once during priv probe and do not
overwrite it during port probe procedure. Pool is common for
all CP ports.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Nadav Haklai <nadavh@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agonet: mvpp2x: remove TX drain from transmit routine
Stefan Chulski [Wed, 9 Aug 2017 07:37:51 +0000 (10:37 +0300)]
net: mvpp2x: remove TX drain from transmit routine

TX drain in transmit procedure could cause issues due
to race between drain procedure and transmition of descriptor
between AGGR TXQ and physical TXQ.
TXQ will be cleared before moving to Linux by stop procedure.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Nadav Haklai <nadavh@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agonet: mvpp2x: Set BM pool high address
Stefan Chulski [Wed, 9 Aug 2017 07:37:50 +0000 (10:37 +0300)]
net: mvpp2x: Set BM pool high address

MVPP22 driver support 64 Bit arch and require BM pool
high address configuration.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Nadav Haklai <nadavh@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agonet: mvpp2x: Remove IRQ configuration from U-Boot
Stefan Chulski [Wed, 9 Aug 2017 07:37:49 +0000 (10:37 +0300)]
net: mvpp2x: Remove IRQ configuration from U-Boot

Remove IRQ configuration from U-Boot PP driver.
U-Boot don't use interrupts and configuration of IRQ in U-Boot
caused crashes in Linux shared interrupt mode.
Also interrupt use is redundant in RX routine since a single RX
queue is used.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Nadav Haklai <nadavh@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agonet: mvpp2x: remove MBUS configurations from MvPP22 driver
Stefan Chulski [Wed, 9 Aug 2017 07:37:48 +0000 (10:37 +0300)]
net: mvpp2x: remove MBUS configurations from MvPP22 driver

MBUS driver were replaced by AXI in PPv22 and relevant
only for PPv21.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Nadav Haklai <nadavh@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agonet: mvpp2x: decrease size of AGGR_TXQ and CPU_DESC_CHUNK
Stefan Chulski [Wed, 9 Aug 2017 07:37:47 +0000 (10:37 +0300)]
net: mvpp2x: decrease size of AGGR_TXQ and CPU_DESC_CHUNK

U-boot use single physical tx queue with size 16 descriptors.
So aggregated tx queue size should be equal to physical tx queue
and cpu descriptor chunk(number of descriptors delivered from
physical tx queue to aggregated tx queue by one chunk) shouldn't be
larger than physical tx queue.

Fix:
Set AGGR_TXQ and CPU_DESC_CHUNK to be 16 descriptors, same as
physical TXQ.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Nadav Haklai <nadavh@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agonet: mvpp2x: fix BM configuration overrun issue
Stefan Chulski [Wed, 9 Aug 2017 07:37:46 +0000 (10:37 +0300)]
net: mvpp2x: fix BM configuration overrun issue

Issue:
BM counters were overrun by probe that called per Network interface and
caused release of wrong number of buffers during remove procedure.

Fix:
Use probe_done and num_ports to call init and remove procedure
once per communication controller.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agonet: mvpp2x: Enable GoP packet padding in TX
Stefan Chulski [Wed, 9 Aug 2017 07:37:45 +0000 (10:37 +0300)]
net: mvpp2x: Enable GoP packet padding in TX

This patch enables padding of packets shorter than 64B in TX(set by default).
Disabling of padding causes crashes on MACCIATO board.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agonet: mvpp2x: fix phy connected to wrong mdio issue
Stefan Chulski [Wed, 9 Aug 2017 07:37:44 +0000 (10:37 +0300)]
net: mvpp2x: fix phy connected to wrong mdio issue

A8K marvell SoC has two South Bridge communication controllers(CP0 and CP1).
Each communication controller has packet processor ports and MDIO.
On MACHIATOBin board ports from CP1 are connected to mdio on CP0.

Issue:
Wrong base address is assigned to MDIO interface during probe.

Fix:
Get MDIO address from PHY handler parent base address.

This should be refined in the future when MDIO driver is implemented.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agonet: mvpp2x: Add GPIO configuration support
Stefan Chulski [Wed, 9 Aug 2017 07:37:43 +0000 (10:37 +0300)]
net: mvpp2x: Add GPIO configuration support

This patch add GPIO configuration support in mvpp2x driver.
Driver will handle 10G SFP gpio reset and SFP TX disable. GPIO pins should
be set in device tree.

Signed-off-by: Stefan Chulski <stefanc@marvell.com>
Tested-by: iSoC Platform CI <ykjenk@marvell.com>
Reviewed-by: Kostya Porotchkin <kostap@marvell.com>
Reviewed-by: Igal Liberman <igall@marvell.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agoConfigs: Migrate CONFIG_SYS_I2C_OMAP34XX to CONFIG_SYS_I2C_OMAP24XX
Adam Ford [Mon, 7 Aug 2017 18:11:19 +0000 (13:11 -0500)]
Configs: Migrate CONFIG_SYS_I2C_OMAP34XX to CONFIG_SYS_I2C_OMAP24XX

The driver is for all boards 24XX and up, so let's eliminate the
extra option called CONFIG_SYS_I2C_OMAP34XX since the driver checks
for CONFIG_OMAP34XX we don't need CONFIG_SYS_I2C_OMAP34XX.

Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agoi2c: at91: Add missing probe function to device driver
Wenyou.Yang@microchip.com [Mon, 31 Jul 2017 01:56:27 +0000 (09:56 +0800)]
i2c: at91: Add missing probe function to device driver

Add missing probe function to the device driver to active a device.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
7 years agoMerge git://git.denx.de/u-boot-x86
Tom Rini [Tue, 8 Aug 2017 21:06:19 +0000 (17:06 -0400)]
Merge git://git.denx.de/u-boot-x86

7 years agoMerge git://www.denx.de/git/u-boot-cfi-flash
Tom Rini [Tue, 8 Aug 2017 21:05:47 +0000 (17:05 -0400)]
Merge git://www.denx.de/git/u-boot-cfi-flash

7 years agoMerge git://www.denx.de/git/u-boot-marvell
Tom Rini [Tue, 8 Aug 2017 21:05:33 +0000 (17:05 -0400)]
Merge git://www.denx.de/git/u-boot-marvell

7 years agoconfigs: Finish migration of PHY_GIGE
Tom Rini [Tue, 8 Aug 2017 02:00:34 +0000 (22:00 -0400)]
configs: Finish migration of PHY_GIGE

Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agox86: Add defconfig for theadorable-x86-conga with PCIe x4 blobs
Stefan Roese [Tue, 8 Aug 2017 09:52:17 +0000 (11:52 +0200)]
x86: Add defconfig for theadorable-x86-conga with PCIe x4 blobs

This defconfig uses the PCIe x4 binary blobs from the congatec BIOS.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agox86: conga: theadorable-x86-conga-qa3-e3845_defconfig: Misc defconfig updates
Stefan Roese [Tue, 8 Aug 2017 09:52:16 +0000 (11:52 +0200)]
x86: conga: theadorable-x86-conga-qa3-e3845_defconfig: Misc defconfig updates

- Disable debug UART
- Enable more partition support

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agox86: conga: conga-qeval20-qa3-e3845_defconfig: Misc defconfig updates
Stefan Roese [Tue, 8 Aug 2017 09:52:15 +0000 (11:52 +0200)]
x86: conga: conga-qeval20-qa3-e3845_defconfig: Misc defconfig updates

- Enable ACPI resume support
- Disable debug UART
- Enable Spansion and Winbond SPI flash support
- Move VGA BIOS binary address to enable bigger U-Boot images

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agox86: theadorable-x86: Add header file for common defines and env
Stefan Roese [Tue, 8 Aug 2017 09:52:14 +0000 (11:52 +0200)]
x86: theadorable-x86: Add header file for common defines and env

This patch adds the common header include file theadorable-x86-common.h
for the theadorable-x86 targets to define all common options and the
default environment.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agox86: conga: Add option to select different config headers for baseboards
Stefan Roese [Tue, 8 Aug 2017 09:52:13 +0000 (11:52 +0200)]
x86: conga: Add option to select different config headers for baseboards

This patch adds the infrastructure to define different config headers
with different configurations and default environment for the baseboards
that can now be selected via Kconfig. The new configuration for the
theadorable-x86-conga-qa3-e3845 is also added. Also the new defconfig
file for this new target is added.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agox86: dfi: Add option to select different config headers for baseboards
Stefan Roese [Tue, 8 Aug 2017 09:52:12 +0000 (11:52 +0200)]
x86: dfi: Add option to select different config headers for baseboards

This patch adds the infrastructure to define different config headers
with different configurations and default environment for the baseboards
that can now be selected via Kconfig. The new configuration for the
theadorable-x86-dfi-bt700 is also added.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
7 years agox86: acpi: Fix build error with certain configuration
Bin Meng [Tue, 8 Aug 2017 11:35:07 +0000 (04:35 -0700)]
x86: acpi: Fix build error with certain configuration

When CONFIG_EFI_PARTITION is not set, the following build error is
seen in arch/x86/lib/acpi_s3.c:

  error: expected declaration specifiers or '...' before '*' token
  static void asmlinkage (*acpi_do_wakeup)(void *vector) = (void*)WAKEUP_BASE;

This is actually caused by missing asmlinkage declaration, but with
CONFIG_EFI_PARTITION on, the declaration comes from part.h which
is included from common.h.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Stefan Roese <sr@denx.de>
7 years agomtd: cfi: Zap CFI_FLASH_SHIFT_WIDTH redefinition
Marek Vasut [Fri, 21 Jul 2017 21:12:29 +0000 (23:12 +0200)]
mtd: cfi: Zap CFI_FLASH_SHIFT_WIDTH redefinition

This is defined twice in the same file, with the same value, likely
because of some patch merge issue. Pick the uglier one and nuke it.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Tom Rini <trini@konsulko.com>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agomvebu: turris_omnia: Fix PEX vs SATA detection for board topology
Marek Behún [Fri, 4 Aug 2017 13:28:25 +0000 (15:28 +0200)]
mvebu: turris_omnia: Fix PEX vs SATA detection for board topology

The I2C reading in the PEX vs SATA detection code often fails on the
first try. Try three times, as the code for EEPROM reading does.

Signed-off-by: Marek Behun <marek.behun@nic.cz>
Signed-off-by: Stefan Roese <sr@denx.de>
7 years agox86: Remove dead ISA related codes
Bin Meng [Fri, 4 Aug 2017 05:52:44 +0000 (22:52 -0700)]
x86: Remove dead ISA related codes

Neither new design uses ISA bus, nor does any U-Boot codes use these
codes. Remove them.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoMerge branch 'master' of git://git.denx.de/u-boot-net
Tom Rini [Mon, 7 Aug 2017 21:37:56 +0000 (17:37 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-net

7 years agoMove PHY_MICREL and PHY_MICREL_KSZ90X1 to Kconfig
Alexandru Gagniuc [Wed, 2 Aug 2017 00:20:00 +0000 (17:20 -0700)]
Move PHY_MICREL and PHY_MICREL_KSZ90X1 to Kconfig

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agoMove PHYLIB to Kconfig
Alexandru Gagniuc [Wed, 2 Aug 2017 00:19:59 +0000 (17:19 -0700)]
Move PHYLIB to Kconfig

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: phy: micrel: add an option to disable gigabit for the KSZ9031
Sebastien Bourdelin [Fri, 28 Jul 2017 19:59:22 +0000 (15:59 -0400)]
net: phy: micrel: add an option to disable gigabit for the KSZ9031

The environment variable "disable_giga" can now be used to disable
1000baseTx on the Micrel's KSZ9031.

Signed-off-by: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: Use packed structures for networking
Denis Pynkin [Fri, 21 Jul 2017 16:28:42 +0000 (19:28 +0300)]
net: Use packed structures for networking

PXE boot is broken with GCC 7.1 due option '-fstore-merging' enabled
by default for '-O2':

BOOTP broadcast 1
data abort
pc : [<8ff8bb30>]          lr : [<00004f1f>]
reloc pc : [<17832b30>]    lr : [<878abf1f>]
sp : 8f558bc0  ip : 00000000     fp : 8ffef5a4
r10: 8ffed248  r9 : 8f558ee0     r8 : 8ffef594
r7 : 0000000e  r6 : 8ffed700     r5 : 00000000  r4 : 8ffed74e
r3 : 00060101  r2 : 8ffed230     r1 : 8ffed706  r0 : 00000ddd
Flags: nzcv  IRQs off  FIQs off  Mode SVC_32
Resetting CPU ...

Core reason is usage of structures for network headers without packed
attribute.

Reviewed-by: Yauheni Kaliuta <yauheni.kaliuta@redhat.com>
Signed-off-by: Denis Pynkin <denis.pynkin@collabora.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: Fix compile failure in net.c
Holger Dengler [Thu, 20 Jul 2017 08:10:55 +0000 (10:10 +0200)]
net: Fix compile failure in net.c

Add missing "defined" statement to fix the compile failures.

Signed-off-by: Holger Dengler <dengler@linutronix.de>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: phy: Add AFE settings to the Broadcom Cygnus phy
Arun Parameswaran [Wed, 19 Jul 2017 22:34:35 +0000 (15:34 -0700)]
net: phy: Add AFE settings to the Broadcom Cygnus phy

Added the AFE (Analog Front End) settings for stability to the
Broadcom Cygnus phy. This improves the time take to perform
auto negotiation.

Signed-off-by: Arun Parameswaran <arun.parameswaran@broadcom.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: move Broadcom SF2 driver to Kconfig
Suji Velupillai [Mon, 10 Jul 2017 21:05:41 +0000 (14:05 -0700)]
net: move Broadcom SF2 driver to Kconfig

move to Kconfig:
CONFIG_BCM_SF2_ETH
CONFIG_BCM_SF2_ETH_DEFAULT_PORT
CONFIG_BCM_SF2_ETH_GMAC

Also modified defconfigs of all platforms that use these configs.

Signed-off-by: Suji Velupillai <suji.velupillai@broadcom.com>
Tested-by: Suji Velupillai <suji.velupillai@broadcom.com>
Reviewed-by: JD Zheng <jiandong.zheng@broadcom.com>
Reviewed-by: Scott Branden <scott.branden@broadcom.com>
Signed-off-by: Steve Rae <steve.rae@raedomain.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: phy: Hide Micrel KSZ9021 and KSZ9031 Kconfig options
Alexandru Gagniuc [Fri, 7 Jul 2017 18:37:00 +0000 (11:37 -0700)]
net: phy: Hide Micrel KSZ9021 and KSZ9031 Kconfig options

The correct option is PHY_MICREL_KSZ90X1, but some configs still
select the 9021 and 9031 options, which are deprecated.

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: phy: micrel: Remove ksz90x1 drivers from micrel_ksz8xxx
Alexandru Gagniuc [Fri, 7 Jul 2017 18:36:59 +0000 (11:36 -0700)]
net: phy: micrel: Remove ksz90x1 drivers from micrel_ksz8xxx

There should be no longer be any ksz9000 users that pick up the PHY
driver from ksz8xxx, so remove ksz9000 remnants from there.

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agoconfigs: Replace deprecated Micrel defines with PHY_MICREL_KSZ90X1
Alexandru Gagniuc [Fri, 7 Jul 2017 18:36:58 +0000 (11:36 -0700)]
configs: Replace deprecated Micrel defines with PHY_MICREL_KSZ90X1

These boards will now use the ksz90x1 driver instead of the mess in
ksz8xxx. This change is needed before the two drivers can be fully
separated.

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: phy: micrel: Separate KSZ9000 drivers from KSZ8000 drivers
Alexandru Gagniuc [Fri, 7 Jul 2017 18:36:57 +0000 (11:36 -0700)]
net: phy: micrel: Separate KSZ9000 drivers from KSZ8000 drivers

The KS8721BL and KSZ9021 PHYs are software-incompatible, yet they
share the same ID. Drivers for bothe PHYs cannot safely coexist, so
the solution was to use #ifdefs to select between the two drivers.

As a result KSZ9031, which has a unique ID, is now caught in the
crossfire. Unless CONFIG_PHY_MICREL_KSZ9031 is defined, the KSZ9031
will not function properly, as some essential configuration code is
ifdef'd-out.

To prevent such situations, move the KSZ9000 drivers to a separate
file, and place them under a separate Kconfig option. While it is
possible to enable both KSZ8000 and KSZ9000 drivers at the same time,
the assumption is that it is highly unlikely for a system to contain
both a KSZ8000 and a KSZ9000 PHY, and that only one of the drivers
will be enabled at any given time.

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: phy: Remove duplicate Kconfig selection for Micrel KSZ9021
Alexandru Gagniuc [Fri, 7 Jul 2017 18:36:56 +0000 (11:36 -0700)]
net: phy: Remove duplicate Kconfig selection for Micrel KSZ9021

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: tftp: silence a subscript above array bounds compile time warning
Vladimir Zapolskiy [Wed, 28 Jun 2017 19:56:07 +0000 (22:56 +0300)]
net: tftp: silence a subscript above array bounds compile time warning

For strncpy() select a minimal string length of destination and source
strings, here DEFAULT_NAME_LEN is preferable to MAX_LEN.

Due to the NUL-terminated contents of default_string the change is
a noop, however it removes a compilation warning if SH2/3/4 platform
specific strncpy() function is used:

  In file included from include/linux/string.h:21:0,
                   from include/common.h:28,
                   from net/tftp.c:9:

  net/tftp.c: In function 'tftp_start':
  arch/sh/include/asm/string.h:52:42: warning: array subscript is above array bounds [-Warray-bounds]
     : "0" (__dest), "1" (__src), "r" (__src+__n)

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: ag7xxx: Propagate errors on phy access
Joe Hershberger [Mon, 26 Jun 2017 19:40:09 +0000 (14:40 -0500)]
net: ag7xxx: Propagate errors on phy access

Don't wait forever.
Pass errors back to the caller.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Acked-by: Marek Vasut <marex@denx.de>
7 years agonet: ag7xxx: Comment register names
Joe Hershberger [Mon, 26 Jun 2017 19:40:08 +0000 (14:40 -0500)]
net: ag7xxx: Comment register names

The register constants don't use the exact names that are used in the
TRM, so add comments that use the exact names so that it is clear what
register is being referred to.

https://www.atheros-drivers.com/qualcomm-atheros-datasheets-for-AR9331.html

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Acked-by: Marek Vasut <marex@denx.de>
7 years agonet: usb: r8152: fix "duplicate 'const' declaration specifier"
Philipp Tomsich [Sun, 25 Jun 2017 20:47:15 +0000 (22:47 +0200)]
net: usb: r8152: fix "duplicate 'const' declaration specifier"

After upgrading to GCC 7.1, the duplicate const specifies in the
r8152 driver trigger the following build warnings with buildman
(observed on a 'buildman rockchip' test)::
  ../drivers/usb/eth/r8152.c:62:35: warning: duplicate 'const' declaration specifier [-Wduplicate-decl-specifier]
   static const struct r8152_version const r8152_versions[] = {
                                     ^~~~~

This commit fixes these by removing the duplicate 'const' specifier
from the declarations.

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: add static to do_tftpput()
Masahiro Yamada [Thu, 22 Jun 2017 07:49:10 +0000 (16:49 +0900)]
net: add static to do_tftpput()

This is only used in cmd/net.c

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: Get mac address from driver as seed
Jimmy Du [Tue, 6 Jun 2017 16:58:54 +0000 (11:58 -0500)]
net: Get mac address from driver as seed

Previously seeded by obtaining mac addr from env. If mac addr was
never set, rand would output 0. This fix obtains the mac addr
from driver instead.

Signed-off-by: Jimmy Du <jimmy.du@ni.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agodrivers/net/phy/fixed: do not overwrite addr
Christian Gmeiner [Tue, 6 Jun 2017 12:35:29 +0000 (14:35 +0200)]
drivers/net/phy/fixed: do not overwrite addr

phy_device_create(..) sets the addr of phy_device with a sane value.
There is no need overwrite it.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Hannes Schmelzer <oe5hpm@oevsv.at>
Tested-by: Hannes Schmelzer <oe5hpm@oevsv.at>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agorockchip: video: defconfig: Add mipi dsi support for evb-rk3288
eric.gao@rock-chips.com [Wed, 21 Jun 2017 03:22:03 +0000 (11:22 +0800)]
rockchip: video: defconfig: Add mipi dsi support for evb-rk3288

Add support for rk3288 mipi dsi.

Signed-off-by: Eric Gao <eric.gao@rock-chips.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agorockchip: video: Makefile: Add soc specific driver for rk3288 mipi dsi
eric.gao@rock-chips.com [Wed, 21 Jun 2017 03:22:02 +0000 (11:22 +0800)]
rockchip: video: Makefile: Add soc specific driver for rk3288 mipi dsi

Signed-off-by: Eric Gao <eric.gao@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agorockchip: video: mipi: Add rk3288 soc specific driver for mipi dsi
eric.gao@rock-chips.com [Wed, 21 Jun 2017 03:22:01 +0000 (11:22 +0800)]
rockchip: video: mipi: Add rk3288 soc specific driver for mipi dsi

Add rk3288 soc specific driver for mipi dsi.

Signed-off-by: Eric Gao <eric.gao@rock-chips.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agorockchop: video: mipi: Makefile: Add soc specfic driver for rk3399 mipi dsi
eric.gao@rock-chips.com [Wed, 21 Jun 2017 03:20:34 +0000 (11:20 +0800)]
rockchop: video: mipi: Makefile: Add soc specfic driver for rk3399 mipi dsi

Add Makefile item for soc specific driver for rk3399 mipi dsi.

Signed-off-by: Eric Gao <eric.gao@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agorockchip: video: mipi: Split mipi driver into common and specific parts
eric.gao@rock-chips.com [Wed, 21 Jun 2017 03:20:33 +0000 (11:20 +0800)]
rockchip: video: mipi: Split mipi driver into common and specific parts

To compatible with different rockchip soc, we split the mipi dirver into
common and soc specific parts, and all the soc share the common
functions from common driver part.

Signed-off-by: Eric Gao <eric.gao@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
[agust: fix build breakage and warnings]
Signed-off-by: Anatolij Gustschin <agust@denx.de>
7 years agorockchip: defconfig: Increase max video resolution for mipi panel
eric.gao@rock-chips.com [Wed, 21 Jun 2017 03:20:32 +0000 (11:20 +0800)]
rockchip: defconfig: Increase max video resolution for mipi panel

The mipi panel used on evb-rk3399 has a 1920x1200 resolution. But now
the max resolution is 1920x1080. So increase it.

Signed-off-by: Eric Gao <eric.gao@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
7 years agovideo: Drop the ct69000 driver
Bin Meng [Fri, 4 Aug 2017 04:56:50 +0000 (21:56 -0700)]
video: Drop the ct69000 driver

This is not used in U-Boot.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
7 years agovideo: Drop the sm501 driver
Bin Meng [Fri, 4 Aug 2017 04:56:49 +0000 (21:56 -0700)]
video: Drop the sm501 driver

This is not used in U-Boot.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
7 years agovideo: Drop the sed156x driver
Bin Meng [Fri, 4 Aug 2017 04:56:48 +0000 (21:56 -0700)]
video: Drop the sed156x driver

This is not used in U-Boot.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
7 years agovideo: Drop the l5f31188 driver
Bin Meng [Fri, 4 Aug 2017 04:56:47 +0000 (21:56 -0700)]
video: Drop the l5f31188 driver

This is not used in U-Boot.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
7 years agocommon/env_embedded.c: rename PPCENV/PPCTEXT macros
Thomas Petazzoni [Fri, 28 Jul 2017 21:46:38 +0000 (23:46 +0200)]
common/env_embedded.c: rename PPCENV/PPCTEXT macros

The environment has pretty much nothing to do with just "PPC", so
rename the macros to just __UBOOT_ENV_SECTION__ which is more
readable.

In addition, only a single macro is needed: the environment now goes
either to the default section (USE_HOSTCC is defined) or in the .text
section.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
7 years agocommon/env_embedded.c: drop support for CONFIG_SYS_USE_PPCENV
Thomas Petazzoni [Fri, 28 Jul 2017 21:46:37 +0000 (23:46 +0200)]
common/env_embedded.c: drop support for CONFIG_SYS_USE_PPCENV

CONFIG_SYS_USE_PPCENV is no longer used anywhere. It was used to put
the environment in the special .ppcenv section, but the last
architecture using this section (SuperH) has been changed to not use
it.

Therefore, this commit drops support for CONFIG_SYS_USE_PPCENV
entirely. We only handle two cases:

 - We're building the host tool tools/envcrc, in which case the
   environment is place with no special section attribute (so it
   depends up in .data)

 - We're building U-Boot itself, in which case the environnement is
   placed in the .text section.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
7 years agoConvert ARCH_OMAP2PLUS boards' CONFIG_SYS_TEXT_BASE to Kconfig
Adam Ford [Fri, 28 Jul 2017 13:32:52 +0000 (08:32 -0500)]
Convert ARCH_OMAP2PLUS boards' CONFIG_SYS_TEXT_BASE to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_TEXT_BASE

The includes, whitelist, etc. were left for now but I don't get any
build errors or warnings on the omap3_logic_defconfig or
am3517_evm_defconfig builds I tried.

Signed-off-by: Adam Ford <aford173@gmail.com>
7 years agostmf32f4: soc: fix buildman compilation error
Patrice Chotard [Fri, 28 Jul 2017 09:54:14 +0000 (11:54 +0200)]
stmf32f4: soc: fix buildman compilation error

fix the following compilation error reported by buidlman:

       arm:  +   stm32f429-discovery
+arch/arm/mach-stm32/stm32f4/soc.c: In function 'arch_cpu_init':
+arch/arm/mach-stm32/stm32f4/soc.c:30: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/stm32f4/soc.c:30:2: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
+make[3]: *** [arch/arm/mach-stm32/stm32f4/soc.o] Error 1
+make[2]: *** [arch/arm/mach-stm32/stm32f4] Error 2
+make[1]: *** [arch/arm/mach-stm32] Error 2
+make: *** [sub-make] Error 2

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Vikas Manocha <vikas.manocha@st.com>
7 years agoconfigs: sama5d4_xplained: Fix input clock for debug UART
Wenyou.Yang@microchip.com [Fri, 28 Jul 2017 03:37:26 +0000 (11:37 +0800)]
configs: sama5d4_xplained: Fix input clock for debug UART

Fix the UART input clock for the early debug UART, it should be
100MHz, instead of 88MHz.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
7 years agoboard: usb_a9263: Update to support DT and DM
Wenyou.Yang@microchip.com [Fri, 21 Jul 2017 09:07:46 +0000 (17:07 +0800)]
board: usb_a9263: Update to support DT and DM

Add the dts files to support deivce tree, update the configuration
files to support the device tree and driver model. The peripheral
clock and pins configuration are handled by the clock and the pinctrl
drivers respectively.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: meesc: Update to support DT and DM
Wenyou.Yang@microchip.com [Fri, 21 Jul 2017 09:06:40 +0000 (17:06 +0800)]
board: meesc: Update to support DT and DM

Add the dts files to support deivce tree, update the configuration
files to support the device tree and driver model. The peripheral
clock and pins configuration are handled by the clock and the pinctrl
drivers respectively.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: pm9261: Update to support DT and DM
Wenyou.Yang@microchip.com [Fri, 21 Jul 2017 09:04:56 +0000 (17:04 +0800)]
board: pm9261: Update to support DT and DM

Add the dts files to support deivce tree, update the configuration
files to support the device tree and driver model. The peripheral
clock and pins configuration are handled by the clock and the pinctrl
drivers respectively.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: ethernut5: Update to support DT and DM
Wenyou.Yang@microchip.com [Fri, 21 Jul 2017 06:30:57 +0000 (14:30 +0800)]
board: ethernut5: Update to support DT and DM

Add the dts files to support deivce tree, update the configuration
files to support the device tree and driver model. The peripheral
clock and pins configuration are handled by the clock and the pinctrl
drivers respectively.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: pm9263: Update to support DT and DM
Wenyou.Yang@microchip.com [Fri, 21 Jul 2017 06:04:47 +0000 (14:04 +0800)]
board: pm9263: Update to support DT and DM

Update the configuration files to support the device tree and driver
model. The peripheral clock and pins configuration are handled by
the clock and the pinctrl drivers respectively.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9260ek: Use SPI-flash-based AT45xxx DataFlash
Wenyou.Yang@microchip.com [Fri, 21 Jul 2017 05:40:11 +0000 (13:40 +0800)]
board: at91sam9260ek: Use SPI-flash-based AT45xxx DataFlash

To support driver model and device tree, use the SPI-flash-based
AT45xxx DataFlash driver, DataFlash is a kind of SPI flash.
Instead of ATMEL_DATAFLASH_SPI DataFlash older driver that will
be removed in the future.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9rlek: Use SPI-flash-based AT45xxx DataFlash
Wenyou.Yang@microchip.com [Fri, 21 Jul 2017 05:40:10 +0000 (13:40 +0800)]
board: at91sam9rlek: Use SPI-flash-based AT45xxx DataFlash

To support driver model and device tree, use the SPI-flash-based
AT45xxx DataFlash driver, DataFlash is a kind of SPI flash.
Instead of ATMEL_DATAFLASH_SPI DataFlash older driver that will
be removed in the future.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9263ek: Use SPI-flash-based AT45xxx DataFlash
Wenyou.Yang@microchip.com [Fri, 21 Jul 2017 05:40:09 +0000 (13:40 +0800)]
board: at91sam9263ek: Use SPI-flash-based AT45xxx DataFlash

To support driver model and device tree, use the SPI-flash-based
AT45xxx DataFlash driver, DataFlash is a kind of SPI flash.
Instead of ATMEL_DATAFLASH_SPI DataFlash older driver that will
be removed in the future.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9261ek: Update to support DT and DM
Wenyou.Yang@microchip.com [Fri, 21 Jul 2017 05:28:40 +0000 (13:28 +0800)]
board: at91sam9261ek: Update to support DT and DM

Add the dts files to support deivce tree, update the configuration
files to support the device tree and driver model. The peripheral
clock and pins configuration are handled by the clock and the pinctrl
drivers respectively.

Enable the early debug UART to debug problems when an ICE or other
debug mechanism is not available.

Signed-off-by: Wenyou Yang <wenyou.yang@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agogpt: harden set_gpt_info() against non NULL-terminated strings
Alison Chaiken [Tue, 4 Jul 2017 18:19:46 +0000 (11:19 -0700)]
gpt: harden set_gpt_info() against non NULL-terminated strings

Strings read from devices may sometimes fail to be
NULL-terminated.   The functions in lib/string.c are subject to
failure in this case.   Protect against observed failures in
set_gpt_info() by switching to length-checking variants with a length
limit of the maximum possible partition table length.  At the same
time, add a few checks for NULL string pointers.

Here is an example as observed in sandbox under GDB:

    => gpt verify host 0 $partitions
    Program received signal SIGSEGV, Segmentation fault.
    0x0000000000477747 in strlen (s=0x0) at lib/string.c:267
    267             for (sc = s; *sc != '\0'; ++sc)
    (gdb) bt
    #0  0x0000000000477747 in strlen (s=0x0) at lib/string.c:267
    #1  0x00000000004140b2 in set_gpt_info (str_part=<optimized out>,
    str_disk_guid=str_disk_guid@entry=0x7fffffffdbe8, partitions=partitions@entry=0x7fffffffdbd8,
    parts_count=parts_count@entry=0x7fffffffdbcf "", dev_desc=<optimized out>) at cmd/gpt.c:415
    #2  0x00000000004145b9 in gpt_verify (str_part=<optimized out>, blk_dev_desc=0x7fffef09a9d0) at cmd/gpt.c:580
    #3  do_gpt (cmdtp=<optimized out>, flag=<optimized out>, argc=<optimized out>, argv=0x7fffef09a8f0)
    at cmd/gpt.c:783
    #4  0x00000000004295b0 in cmd_call (argv=0x7fffef09a8f0, argc=0x5, flag=<optimized out>,
    cmdtp=0x714e20 <_u_boot_list_2_cmd_2_gpt>) at common/command.c:500
    #5  cmd_process (flag=<optimized out>, argc=0x5, argv=0x7fffef09a8f0,
    repeatable=repeatable@entry=0x726c04 <flag_repeat>, ticks=ticks@entry=0x0) at common/command.c:539

Suggested-by: Lothar Waßmann <LW@karo-electronics.de>
Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
7 years agoGPT: provide commands to selectively rename partitions
Alison Chaiken [Tue, 4 Jul 2017 18:19:18 +0000 (11:19 -0700)]
GPT: provide commands to selectively rename partitions

This patch provides support in u-boot for renaming GPT
partitions.  The renaming is accomplished via new 'gpt swap'
and 'gpt rename' commands.

The 'swap' mode returns an error if no matching partition names
are found, or if the number of partitions with one name does not equal
the number with the second name.   The 'rename' variant always
succeeds as long as a partition with the provided number exists.

Rewriting the partition table has the side-effect that all partitions
end up with "msftdata" flag set.  The reason is that partition type
PARTITION_BASIC_DATA_GUID is hard-coded in the gpt_fill_pte()
function.  This does not appear to cause any harm.

Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
7 years agoGPT: read partition table from device into a data structure
Alison Chaiken [Tue, 4 Jul 2017 18:18:50 +0000 (11:18 -0700)]
GPT: read partition table from device into a data structure

Make the partition table available for modification by reading it from
the user-specified device into a linked list.   Provide an accessor
function for command-line testing.

Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
[trini: Make this depend on CMD_GPT_RENAME, as it is the user of this
code]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoGPT: add accessor function for disk GUID
Alison Chaiken [Sun, 25 Jun 2017 23:43:23 +0000 (16:43 -0700)]
GPT: add accessor function for disk GUID

In order to read the GPT, modify the partition name strings, and then
write out a new GPT, the disk GUID is needed.  While there is an
existing accessor for the partition UUIDs, there is none yet for the
disk GUID.

Changes since v6: none.

Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
7 years agopartitions: increase MAX_SEARCH_PARTITIONS and move to part.h
Alison Chaiken [Sun, 25 Jun 2017 23:43:22 +0000 (16:43 -0700)]
partitions: increase MAX_SEARCH_PARTITIONS and move to part.h

Move MAX_SEARCH_PARTITIONS to part.h so that functions in cmd
directory can find it.  At the same time, increase the value to
64 since some operating systems use many, and the resources
consumed by a larger value are minimal.

Changes since v6: none.

Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
7 years agocmd gpt: test in sandbox
Alison Chaiken [Sun, 25 Jun 2017 23:43:21 +0000 (16:43 -0700)]
cmd gpt: test in sandbox

Make minor changes to README.gpt and sandbox_defconfig to support
testing of the gpt command's functionality in the sandbox.

Changes since v6: none.

Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
7 years agoGPT: fix error in partitions string doc
Alison Chaiken [Sun, 25 Jun 2017 23:43:19 +0000 (16:43 -0700)]
GPT: fix error in partitions string doc

The existing partitions-list parsing in cmd/gpt.c passes a value
from gpt_default() to set_gpt_info() that README.gpt suggests
should begin with 'partitions='.  Partition-list strings should
in fact begin with 'uuid_disk', as otherwise the call from
set_gpt_info() to extract_val() to find 'uuid_disk' will fail.
Change README.gpt accordingly.

Changes since v6: none.

Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
7 years agodisk_partition: introduce macros for description string lengths
Alison Chaiken [Sun, 25 Jun 2017 23:43:18 +0000 (16:43 -0700)]
disk_partition: introduce macros for description string lengths

Changes since v6: none.

Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
7 years agoEFI: replace number with UUID_STR_LEN macro
Alison Chaiken [Sun, 25 Jun 2017 23:43:17 +0000 (16:43 -0700)]
EFI: replace number with UUID_STR_LEN macro

Changes since v6: none.

Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
7 years agoMerge tag 'xilinx-for-v2017.09' of git://www.denx.de/git/u-boot-microblaze
Tom Rini [Fri, 4 Aug 2017 11:23:32 +0000 (07:23 -0400)]
Merge tag 'xilinx-for-v2017.09' of git://denx.de/git/u-boot-microblaze

Xilinx changes for v2017.09

Zynq:
- Add Z-Turn board support

fpga:
- Remove intermediate buffer from code

Zynqmp:
- dts cleanup
- change psu_init handling
- Add options to get silicon version
- Fix time handling
- Map OCM/TCM via MMU
- Add new clock driver

7 years agoPowerPC: mpc85xx: Update ft_verify_fdt
Tom Rini [Thu, 3 Aug 2017 13:33:07 +0000 (09:33 -0400)]
PowerPC: mpc85xx: Update ft_verify_fdt

With the changes to fdt_get_base_address() we need to modify the logic
in ft_verify_fdt() for how we check the validity of the CCSR address.

Tested-on: qemu-ppce500 -M mpc8544ds
Fixes: 336a44877af8 ("fdt: Correct fdt_get_base_address()")
Cc: York Sun <york.sun@nxp.com>
Cc: Wolfgang Denk <wd@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoqemu-ppce500: Update get_phys_ccsrbar_addr_early()
Tom Rini [Thu, 3 Aug 2017 12:53:36 +0000 (08:53 -0400)]
qemu-ppce500: Update get_phys_ccsrbar_addr_early()

The logic of what fdt_get_base_address() will search for and return has
changed.  Rework get_phys_ccsrbar_addr_early() to perform the logic that
fdt_get_base_address used to perform.

Fixes: 336a44877af8 ("fdt: Correct fdt_get_base_address()")
Reviewed-by: Simon Glass <sjg@chromium.org>
Cc: Alexander Graf <agraf@suse.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoahci-pci: Update call to ahci_probe_scsi_pci()
Bin Meng [Thu, 3 Aug 2017 02:07:17 +0000 (19:07 -0700)]
ahci-pci: Update call to ahci_probe_scsi_pci()

ahci_probe_scsi() now takes a 'base' argument, and there is an API
that prepares base address for us: ahci_probe_scsi_pci().

Reported-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
7 years agoMerge branch 'rmobile' of git://git.denx.de/u-boot-sh
Tom Rini [Wed, 2 Aug 2017 23:30:27 +0000 (19:30 -0400)]
Merge branch 'rmobile' of git://git.denx.de/u-boot-sh

7 years agoARM: rmobile: Update defconfig of R-Car Gen3
Nobuhiro Iwamatsu [Wed, 2 Aug 2017 19:27:53 +0000 (04:27 +0900)]
ARM: rmobile: Update defconfig of R-Car Gen3

This updates defconfig of R-Car Gen3 to keep with the latest Kconfig.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
7 years agonet: ravb: Add clock handling support
Marek Vasut [Fri, 21 Jul 2017 21:20:35 +0000 (23:20 +0200)]
net: ravb: Add clock handling support

Add support for enabling and disabling the clock using the clock
framework based on the content of OF instead of doing it manually
in the board file.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
7 years agonet: ravb: Detect PHY correctly
Marek Vasut [Fri, 21 Jul 2017 21:20:34 +0000 (23:20 +0200)]
net: ravb: Detect PHY correctly

The order of parameters passed to the phy_connect() was wrong.
Moreover, only PHY address 0 was used. Replace this with code
capable of detecting the PHY address.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>