project/bcm63xx/u-boot.git
8 years agosf: Remove SECT_32K
Jagan Teki [Mon, 8 Aug 2016 11:49:08 +0000 (17:19 +0530)]
sf: Remove SECT_32K

SECT_32K never used anywhere in the code.

Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Cc: Vignesh R <vigneshr@ti.com>
Cc: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: Jagan Teki <jteki@openedev.com>
8 years agospi: Remove SPI_RX_FAST
Jagan Teki [Wed, 10 Aug 2016 15:18:14 +0000 (20:48 +0530)]
spi: Remove SPI_RX_FAST

Removed SPI_RX_FAST since default read for spi slaves
are always 1-wire fast read.

Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Cc: Vignesh R <vigneshr@ti.com>
Cc: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: Jagan Teki <jteki@openedev.com>
8 years agospi: Use mode for rx mode flags
Jagan Teki [Mon, 8 Aug 2016 11:42:12 +0000 (17:12 +0530)]
spi: Use mode for rx mode flags

Make rx mode flags as generic to spi, earlier mode_rx is
maintained separately because of some flash specific code.

Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Cc: Vignesh R <vigneshr@ti.com>
Cc: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: Jagan Teki <jteki@openedev.com>
8 years agosf: Remove e_rd_cmd from param table
Jagan Teki [Mon, 8 Aug 2016 11:32:18 +0000 (17:02 +0530)]
sf: Remove e_rd_cmd from param table

e_rd_cmd is maintained separately for fastest read command code,
since the read commands are computed normally this e_rd_cmd
is not required in spi_flash_params table.

Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Cc: Vignesh R <vigneshr@ti.com>
Cc: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: Jagan Teki <jteki@openedev.com>
8 years agosf: Simplify fastest read cmd code
Jagan Teki [Mon, 8 Aug 2016 11:20:45 +0000 (16:50 +0530)]
sf: Simplify fastest read cmd code

Fastest read command code look for fastest read command
taking inputs from spi->mode_rx and flags from param table
and controller mode_rx is always been a priority.

Since mode_rx is always set from controller side this optimized
code doesn't require much and this code required exctra overhead like
1) Maintain e_rx_cmd in param table
2) Maintain mode_rx in spi_slave {}

Hence removed this code, and look for read command from normal
spi->mode from spi_slave{} and params->flags

Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Cc: Vignesh R <vigneshr@ti.com>
Cc: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: Jagan Teki <jteki@openedev.com>
8 years agospi: ti_qspi: Remove unnecessary udelay for AM437x
Vignesh R [Wed, 7 Sep 2016 09:48:23 +0000 (15:18 +0530)]
spi: ti_qspi: Remove unnecessary udelay for AM437x

This udelay() was added as an HACK and is no longer required. All
read/write/erase operations work fine even without this delay. Hence,
remove the udelay() call.

Tested read/write/erase operation on AM437x SK. Also tested QSPI Boot.

Signed-off-by: Vignesh R <vigneshr@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
8 years agospi: ti_qspi: use 128 bit transfer mode when writing to flash
Vignesh R [Wed, 7 Sep 2016 09:48:22 +0000 (15:18 +0530)]
spi: ti_qspi: use 128 bit transfer mode when writing to flash

TI QSPI has four 32 bit data registers which can be used to transfer 16
bytes of data at once. The register group QSPI_SPI_DATA_REG_3,
QSPI_SPI_DATA_REG_2, QSPI_SPI_DATA_REG_1 and QSPI_SPI_DATA_REG is
treated as a single 128-bit word for shifting data in and out. The bit
at QSPI_SPI_DATA_REG_3[31] position is the first bit to be shifted out
in case of 128 bit transfer mode. Therefore the first byte to be written
to flash should be at QSPI_SPI_DATA_REG_3[31-25] position.
Instead of writing 1 byte at a time when interacting with SPI NOR flash,
make use of all the four registers so that 16 bytes can be transferred
in one go.

With this patch, the flash write speed increases from ~250KBs/ to
~650KB/s on DRA74 EVM.

Signed-off-by: Vignesh R <vigneshr@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
8 years agospi: zynq_spi: Fix infinite looping while xfer
Lad, Prabhakar [Sat, 30 Jul 2016 21:28:24 +0000 (22:28 +0100)]
spi: zynq_spi: Fix infinite looping while xfer

During spi transfer, for example:
sspi 1:1.0 8 ff

the rx_len values will  be:
rx_len = 0
rx_len = 4294967295

This caused a busy looping during xfer, this patch fixes it
by adding a check while reading the rx fifo

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
8 years agoRevert "Increase default of CONFIG_SYS_MALLOC_F_LEN for SPL_OF_CONTROL"
Masahiro Yamada [Mon, 19 Sep 2016 12:40:26 +0000 (21:40 +0900)]
Revert "Increase default of CONFIG_SYS_MALLOC_F_LEN for SPL_OF_CONTROL"

This reverts commit 90c08d9e08c7a108ab904f3bbdeb558081757892.

I took a closer look at this after the commit was applied, and found
CONFIG_SYS_MALLOC_F_LEN=0x2000 was too much.  8KB memory for SPL is
actually too big for some boards.  Perhaps 0x800 is enough, but the
situation varies board by board.

Let's postpone our decision until we come up with a better idea.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
8 years agoA20-OLinuXino-Lime2: Enable USB gadget support
Tom Rini [Mon, 19 Sep 2016 14:03:32 +0000 (10:03 -0400)]
A20-OLinuXino-Lime2: Enable USB gadget support

Based on A13-OLinuXino, enable DFU and UMS support.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
8 years agoMerge branch 'master' of git://git.denx.de/u-boot-uniphier
Tom Rini [Sun, 18 Sep 2016 16:12:04 +0000 (12:12 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-uniphier

8 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-sunxi
Tom Rini [Sun, 18 Sep 2016 16:11:50 +0000 (12:11 -0400)]
Merge branch 'master' of git://denx.de/git/u-boot-sunxi

8 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-arc
Tom Rini [Sun, 18 Sep 2016 16:10:54 +0000 (12:10 -0400)]
Merge branch 'master' of git://denx.de/git/u-boot-arc

8 years agoARM: uniphier: update DRAM init code for LD20 SoC
Masahiro Yamada [Fri, 16 Sep 2016 18:33:12 +0000 (03:33 +0900)]
ARM: uniphier: update DRAM init code for LD20 SoC

Import the latest version from the Diag software.

  - Support LD21 SoC (including DDR chips in the package)
  - Per-board granule adjustment for both reference and TV boards
  - Misc cleanups

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: add PLL init code for LD20 SoC
Masahiro Yamada [Fri, 16 Sep 2016 18:33:11 +0000 (03:33 +0900)]
ARM: uniphier: add PLL init code for LD20 SoC

Initialize the DPLL (PLL for DRAM) in SPL, and others in U-Boot
proper.  Split the common code into pll-base-ld20.c for easier
re-use.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: collect clock/PLL init code into a single directory
Masahiro Yamada [Fri, 16 Sep 2016 18:33:10 +0000 (03:33 +0900)]
ARM: uniphier: collect clock/PLL init code into a single directory

Now PLLs for DRAM controller are initialized in SPL, and the others
in U-Boot proper.  Setting up all of them in a single directory will
be helpful when we want to share code between SPL and U-Boot proper.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: move PLL init code to U-Boot proper where possible
Masahiro Yamada [Fri, 16 Sep 2016 18:33:09 +0000 (03:33 +0900)]
ARM: uniphier: move PLL init code to U-Boot proper where possible

The PLL for the DRAM interface must be initialized in SPL, but the
others can be delayed until U-Boot proper.  Move them from SPL to
U-Boot proper to save the precious SPL memory footprint.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: rename CONFIG_DPLL_SSC_RATE_1PER
Masahiro Yamada [Fri, 16 Sep 2016 18:33:08 +0000 (03:33 +0900)]
ARM: uniphier: rename CONFIG_DPLL_SSC_RATE_1PER

Basically, this should not be configured by users.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: move XIRQ pin-mux settings of LD11/LD20
Masahiro Yamada [Fri, 16 Sep 2016 18:33:07 +0000 (03:33 +0900)]
ARM: uniphier: move XIRQ pin-mux settings of LD11/LD20

This is the last code in the mach-uniphier/pinctrl/ directory.
Push the remaining code out to delete the directory entirely.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: consolidate System Bus pin-mux settings for LD11/LD20
Masahiro Yamada [Fri, 16 Sep 2016 18:33:06 +0000 (03:33 +0900)]
ARM: uniphier: consolidate System Bus pin-mux settings for LD11/LD20

Use the pin-mux data in the pinctrl drivers by directly calling
pinctrl_generic_set_state().

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: dts: uniphier: include System Bus pin group node in SPL DT
Masahiro Yamada [Fri, 16 Sep 2016 18:33:05 +0000 (03:33 +0900)]
ARM: dts: uniphier: include System Bus pin group node in SPL DT

This will be needed for setting up the System Bus pin-mux via the
LD11/LD20 pinctrl driver.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: consolidate NAND pin-mux settings
Masahiro Yamada [Fri, 16 Sep 2016 18:33:04 +0000 (03:33 +0900)]
ARM: uniphier: consolidate NAND pin-mux settings

The NAND subsystem has not supported the Driver Model yet, but the
NAND pin-mux data are already in the pinctrl drivers.  Use them by
calling pinctrl_generic_set_state() directly.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: remove ad-hoc pin-mux code for sLD3
Masahiro Yamada [Fri, 16 Sep 2016 18:33:03 +0000 (03:33 +0900)]
ARM: uniphier: remove ad-hoc pin-mux code for sLD3

These settings are nicely cared by the pinctrl driver now.  Remove.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: remove redundant pin-muxing for EA24 pin of sLD3 SoC
Masahiro Yamada [Fri, 16 Sep 2016 18:33:02 +0000 (03:33 +0900)]
ARM: uniphier: remove redundant pin-muxing for EA24 pin of sLD3 SoC

This is enabled by default for all the supported boot modes.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: select PINCTRL and SPL_PINCTRL
Masahiro Yamada [Fri, 16 Sep 2016 18:33:01 +0000 (03:33 +0900)]
ARM: uniphier: select PINCTRL and SPL_PINCTRL

Now all UniPhier SoCs support a pinctrl driver.  Select (SPL_)PINCTRL
since it is mandatory even for base use.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: dts: uniphier: add pinctrl device node and pinctrl properties
Masahiro Yamada [Fri, 16 Sep 2016 18:33:00 +0000 (03:33 +0900)]
ARM: dts: uniphier: add pinctrl device node and pinctrl properties

DT-side updates to make pinctrl on sLD3 SoC really available.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agopinctrl: uniphier: add UniPhier sLD3 pinctrl driver
Masahiro Yamada [Fri, 16 Sep 2016 18:32:59 +0000 (03:32 +0900)]
pinctrl: uniphier: add UniPhier sLD3 pinctrl driver

Add pin-mux support for UniPhier sLD3 SoC.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agopinctrl: uniphier: support 4bit-width pin-mux register capability
Masahiro Yamada [Fri, 16 Sep 2016 18:32:58 +0000 (03:32 +0900)]
pinctrl: uniphier: support 4bit-width pin-mux register capability

On LD4 SoC or later, the pin-mux registers are 8bit wide, while 4bit
wide on sLD3 SoC.  Support it for the sLD3 pinctrl driver.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agosunxi: Enable USB gadget support for Sinlinx SinA33
Chen-Yu Tsai [Wed, 14 Sep 2016 02:26:36 +0000 (10:26 +0800)]
sunxi: Enable USB gadget support for Sinlinx SinA33

Sinlinx SinA33 has a USB OTG port, but VBUS is controlled manually from
a jumper pad.

Enable OTG in gadget mode, as well as the download gadget and related
functions.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Enable USB host support for Sinlinx SinA33
Chen-Yu Tsai [Wed, 14 Sep 2016 02:26:35 +0000 (10:26 +0800)]
sunxi: Enable USB host support for Sinlinx SinA33

Sinlinx SinA33 has 1 USB host port. Enable EHCI_HCD support for it.
Also enable USB mass storage support so we can access USB sticks.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Add mmc0 card detect pin for Sinlinx SinA33
Chen-Yu Tsai [Wed, 14 Sep 2016 02:26:34 +0000 (10:26 +0800)]
sunxi: Add mmc0 card detect pin for Sinlinx SinA33

Sinlinx SinA33 uses PB4 for mmc0 card detect.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Add defconfig and dts for the NanoPi NEO
Jelle van der Waa [Tue, 13 Sep 2016 16:03:23 +0000 (18:03 +0200)]
sunxi: Add defconfig and dts for the NanoPi NEO

The NanoPi NEO is a simple h3 board with 512MB RAM, ethernet, one usb
and one usb OTG connector.

Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: musb: Re-init musb controller on repeated probe calls
Hans de Goede [Sat, 17 Sep 2016 14:02:38 +0000 (16:02 +0200)]
sunxi: musb: Re-init musb controller on repeated probe calls

With sunxi-musb musb_lowlevel_init() can fail when a charger; or no cable
is plugged into the otg port.

To avoid leaking the struct musb allocated by musb_init_controller()
on repeated musb_usb_probe() calls, we were caching its result.
But musb_init_controller() does more, such as calling sunxi_musb_init()
which enables the clocks.

Not calling sunxi_musb_init() causes the musb controller to stop working
after a "usb reset" since that calls musb_usb_remove() which disables the
clocks.

This commit fixes this by removing the caching of the struct returned
from musb_init_controller(), it replaces this by free-ing the allocated
memory in musb_usb_remove() and calling musb_usb_remove() on
musb_usb_probe() errors to ensure proper cleanup.

While at it also make musb_usb_probe() and musb_usb_remove() static.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: musb: Power off OTG port VBUS when disabled
Chen-Yu Tsai [Wed, 7 Sep 2016 06:25:21 +0000 (14:25 +0800)]
sunxi: musb: Power off OTG port VBUS when disabled

The Linux kernel musb driver expects VBUS to be off while initializing
musb. Having it on results in a repeating string of warnings, followed
by an unusable peripheral. The peripheral is only usable after
physically removing the OTG adapter, letting musb reset its state.

This partially reverts commit c9f8947e6604 ("sunxi: usb-phy: Never
power off the usb ports")

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: axp2xx: disable ldoio0/1 at boot
Hans de Goede [Mon, 12 Sep 2016 07:52:52 +0000 (09:52 +0200)]
sunxi: axp2xx: disable ldoio0/1 at boot

When cold-booting the ldoio0/1 regulators are always off / the
gpios are always at tristate. But when re-booting from android these
are sometimes on. Disable them at axp_init time (iow as early as possible)
to remove this difference between a cold boot and a reboot.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Ian Campbell <ijc@hellion.org.uk>
8 years agoMakefile: Give a build error if ad-hoc CONFIG options are added
Simon Glass [Wed, 14 Sep 2016 03:44:07 +0000 (21:44 -0600)]
Makefile: Give a build error if ad-hoc CONFIG options are added

New CONFIG options should be added via Kconfig. To help prevent new ad-hoc
CONFIGs from being added, give a build error when these are detected.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
8 years agoKconfig: Add a whitelist of ad-hoc CONFIG options
Simon Glass [Wed, 14 Sep 2016 03:44:06 +0000 (21:44 -0600)]
Kconfig: Add a whitelist of ad-hoc CONFIG options

Add a list of ad-hoc CONFIG options that don't use Kconfig. This can be used
to check that new ones are not being added.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_YMODEM_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:19:03 +0000 (23:19 -0600)]
Convert CONFIG_SPL_YMODEM_SUPPORT to Kconfig

Convert CONFIG_SPL_YMODEM_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_WATCHDOG_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:19:02 +0000 (23:19 -0600)]
Convert CONFIG_SPL_WATCHDOG_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_USB_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:19:01 +0000 (23:19 -0600)]
Convert CONFIG_SPL_USB_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_USB_HOST_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:19:00 +0000 (23:19 -0600)]
Convert CONFIG_SPL_USB_HOST_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_USBETH_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:59 +0000 (23:18 -0600)]
Convert CONFIG_SPL_USBETH_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_SPI_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:58 +0000 (23:18 -0600)]
Convert CONFIG_SPL_SPI_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_SPI_FLASH_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:57 +0000 (23:18 -0600)]
Convert CONFIG_SPL_SPI_FLASH_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_SERIAL_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:56 +0000 (23:18 -0600)]
Convert CONFIG_SPL_SERIAL_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_SATA_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:55 +0000 (23:18 -0600)]
Convert CONFIG_SPL_SATA_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_POWER_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:54 +0000 (23:18 -0600)]
Convert CONFIG_SPL_POWER_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoRemove CONFIG_SPL_PINCTRL_SUPPORT
Simon Glass [Tue, 13 Sep 2016 13:05:50 +0000 (07:05 -0600)]
Remove CONFIG_SPL_PINCTRL_SUPPORT

This option is not used. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_ONENAND_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:52 +0000 (23:18 -0600)]
Convert CONFIG_SPL_ONENAND_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_NOR_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:51 +0000 (23:18 -0600)]
Convert CONFIG_SPL_NOR_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_NET_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:50 +0000 (23:18 -0600)]
Convert CONFIG_SPL_NET_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_NET_VCI_STRING to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:49 +0000 (23:18 -0600)]
Convert CONFIG_SPL_NET_VCI_STRING to Kconfig

This converts the following to Kconfig:
   CONFIG_SPL_NET_VCI_STRING

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_NAND_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:48 +0000 (23:18 -0600)]
Convert CONFIG_SPL_NAND_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_MUSB_NEW_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:47 +0000 (23:18 -0600)]
Convert CONFIG_SPL_MUSB_NEW_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_MTD_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:46 +0000 (23:18 -0600)]
Convert CONFIG_SPL_MTD_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:45 +0000 (23:18 -0600)]
Convert CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_MMC_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:44 +0000 (23:18 -0600)]
Convert CONFIG_SPL_MMC_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_LIBGENERIC_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:43 +0000 (23:18 -0600)]
Convert CONFIG_SPL_LIBGENERIC_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_LIBDISK_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:42 +0000 (23:18 -0600)]
Convert CONFIG_SPL_LIBDISK_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_LIBCOMMON_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:41 +0000 (23:18 -0600)]
Convert CONFIG_SPL_LIBCOMMON_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_I2C_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:40 +0000 (23:18 -0600)]
Convert CONFIG_SPL_I2C_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_GPIO_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:39 +0000 (23:18 -0600)]
Convert CONFIG_SPL_GPIO_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_FAT_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:38 +0000 (23:18 -0600)]
Convert CONFIG_SPL_FAT_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_EXT_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:37 +0000 (23:18 -0600)]
Convert CONFIG_SPL_EXT_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_ETH_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:36 +0000 (23:18 -0600)]
Convert CONFIG_SPL_ETH_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_ENV_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:35 +0000 (23:18 -0600)]
Convert CONFIG_SPL_ENV_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_DRIVERS_MISC_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:34 +0000 (23:18 -0600)]
Convert CONFIG_SPL_DRIVERS_MISC_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_DMA_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:33 +0000 (23:18 -0600)]
Convert CONFIG_SPL_DMA_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_HASH_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:32 +0000 (23:18 -0600)]
Convert CONFIG_SPL_HASH_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoConvert CONFIG_SPL_CRYPTO_SUPPORT to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:31 +0000 (23:18 -0600)]
Convert CONFIG_SPL_CRYPTO_SUPPORT to Kconfig

Move this option to Kconfig and tidy up existing uses.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agospear: Use upper case for CONFIG options
Simon Glass [Tue, 13 Sep 2016 05:18:30 +0000 (23:18 -0600)]
spear: Use upper case for CONFIG options

There are a few options which use lower case. We should use upper case for
all CONFIG options.

Signed-off-by: Simon Glass <sjg@chromium.org>
[trini: Add usbtty/nand hunk to include/configs/spear3xx_evb.h]
Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agoMove existing use of CONFIG_SPL_RSA to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:29 +0000 (23:18 -0600)]
Move existing use of CONFIG_SPL_RSA to Kconfig

A few boards define this in a header file which is incorrect. It means that
Kconfig options that rely on this cannot be used. Move it.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoMove existing use of CONFIG_SPL_DM to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:28 +0000 (23:18 -0600)]
Move existing use of CONFIG_SPL_DM to Kconfig

A few boards define this in a header file which is incorrect. It means that
Kconfig options that rely on this cannot be used. Move it.

Note that quite a few boards defined this options but do not appear to
actually use SPL:

BSC9132QDS_NOR_DDRCLK100_SECURE
BSC9132QDS_NOR_DDRCLK133_SECURE
BSC9132QDS_SDCARD_DDRCLK100_SECURE
BSC9132QDS_SDCARD_DDRCLK133_SECURE
BSC9132QDS_SPIFLASH_DDRCLK100_SECURE
BSC9132QDS_SPIFLASH_DDRCLK133_SECURE
C29XPCIE_NOR_SECBOOT
P1010RDB-PA_36BIT_NAND_SECBOOT
P1010RDB-PA_36BIT_SPIFLASH_SECBOOT
P1010RDB-PA_NAND_SECBOOT
P1010RDB-PA_NOR_SECBOOT
P1010RDB-PB_36BIT_NOR_SECBOOT
P1010RDB-PB_36BIT_SPIFLASH_SECBOOT
P1010RDB-PB_NAND_SECBOOT
P1010RDB-PB_NOR_SECBOOT
P3041DS_SECURE_BOOT
P4080DS_SECURE_BOOT
P5020DS_NAND_SECURE_BOOT
P5040DS_SECURE_BOOT
T1023RDB_SECURE_BOOT
T1024QDS_DDR4_SECURE_BOOT
T1024QDS_SECURE_BOOT
T1024RDB_SECURE_BOOT
T1040RDB_SECURE_BOOT
T1042D4RDB_SECURE_BOOT
T1042RDB_SECURE_BOOT
T2080QDS_SECURE_BOOT
T2080RDB_SECURE_BOOT
T4160QDS_SECURE_BOOT
T4240QDS_SECURE_BOOT
ls1021aqds_nor_SECURE_BOOT
ls1021atwr_nor_SECURE_BOOT
ls1043ardb_SECURE_BOOT

For these boards CONFIG_SPL_DM will no-longer be defined in SPL. But since
they apparently don't have an SPL, this should not matter.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoKconfig: tpl: Add some TPL support options to Kconfig
Simon Glass [Tue, 13 Sep 2016 05:18:27 +0000 (23:18 -0600)]
Kconfig: tpl: Add some TPL support options to Kconfig

Some of the SPL options have TPL equivalents. Add these to Kconfig so that
we can convert these options over to work from Kconfig.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoKconfig: spl: Add SPL support options to Kconfig
Simon Glass [Tue, 13 Sep 2016 13:05:23 +0000 (07:05 -0600)]
Kconfig: spl: Add SPL support options to Kconfig

There are a lot of SPL options in U-Boot to enable various features and
drivers. Currently these do not use Kconfig. Add them to Kconfig along
with suitable help, and drop them from the README.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoUse separate options for TPL support
Simon Glass [Tue, 13 Sep 2016 05:18:25 +0000 (23:18 -0600)]
Use separate options for TPL support

At present TPL uses the same options as SPL support. In a few cases the board
config enables or disables the SPL options depending on whether
CONFIG_TPL_BUILD is defined.

With the move to Kconfig, options are determined for the whole build and
(without a hack like an #undef in a header file) cannot be controlled in this
way.

Create new TPL options for these and update users. This will allow Kconfig
conversion to proceed for these boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoDrop CONFIG_SPL_RAM_SUPPORT
Simon Glass [Tue, 13 Sep 2016 05:18:24 +0000 (23:18 -0600)]
Drop CONFIG_SPL_RAM_SUPPORT

This option does not exist in U-Boot. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoarm: fsl: Adjust ordering of #ifndef CONFIG_SPL_BUILD
Simon Glass [Tue, 13 Sep 2016 05:18:23 +0000 (23:18 -0600)]
arm: fsl: Adjust ordering of #ifndef CONFIG_SPL_BUILD

The secure boot header files incorrectly define SPL options only if
CONFIG_SPL_BUILD is defined. This means that the options are only enabled
in an SPL build, and not with a normal 'make xxx_defconfig'. This means
that moveconfig.py cannot work, since it sees the options as disabled even
when they may be manually enabled in an SPL build.

Fix this by changing the order.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoKconfig: Move SPL settings into their own file
Simon Glass [Tue, 13 Sep 2016 05:18:22 +0000 (23:18 -0600)]
Kconfig: Move SPL settings into their own file

Move the SPL settings into common/spl where most of the SPL code is kept.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agomoveconfig: Add an option to commit changes
Simon Glass [Tue, 13 Sep 2016 05:18:21 +0000 (23:18 -0600)]
moveconfig: Add an option to commit changes

The moveconfig tool is quite clever and generally produces results that
are suitable for sending as a patch without further work. The main required
step is to add the changes to a commit.

Add an option to do this automatically. This allows moveconfig to be used
from a script to convert multiple CONFIG options, once per commit.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agomoveconfig: Add an option to skip prompts
Simon Glass [Tue, 13 Sep 2016 05:18:20 +0000 (23:18 -0600)]
moveconfig: Add an option to skip prompts

At present it is not easy to use moveconfig from a script since it asks
for user input a few times. Add a -y option to skip this and assume that
'y' was entered.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoCorrect defconfigs using savedefconfig
Simon Glass [Tue, 13 Sep 2016 05:18:19 +0000 (23:18 -0600)]
Correct defconfigs using savedefconfig

Update the defconfig files to match their canonical form, as produced by
'make safedefconfig'.

This is the result of running 'tools/moveconfig.py -s' on the tree.

Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoARM: uniphier: introduce flags to adjust DRAM timing for LD20/LD21
Masahiro Yamada [Tue, 13 Sep 2016 16:06:10 +0000 (01:06 +0900)]
ARM: uniphier: introduce flags to adjust DRAM timing for LD20/LD21

Unfortunately, this SoC needs per-board adjustment between clock
and address/command lines.  This flag will be passed to the DRAM
init function and used for compensating the difference of DRAM
timing parameters.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: fix DRAM size of LD21 SoC package
Masahiro Yamada [Tue, 13 Sep 2016 16:06:09 +0000 (01:06 +0900)]
ARM: uniphier: fix DRAM size of LD21 SoC package

The channel 0 DRAM size of LD21 is half of that of LD20.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoarc: Use -mcpu=XXX instead of obsolete -marcXXX
Alexey Brodkin [Fri, 16 Sep 2016 09:12:26 +0000 (12:12 +0300)]
arc: Use -mcpu=XXX instead of obsolete -marcXXX

With newer ARC tools old way of CPU specification gets obsolete,
so we're switching to newer and more common way of setting "-mcpu".

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
8 years agoARM: uniphier: merge board init functions into board_init()
Masahiro Yamada [Tue, 13 Sep 2016 16:06:08 +0000 (01:06 +0900)]
ARM: uniphier: merge board init functions into board_init()

Currently, the UniPhier platform calls several init functions in the
following order:

  [1] spl_board_init()
  [2] board_early_init_f()
  [3] board_init()
  [4] board_early_init_r()
  [5] board_late_init()

The serial console is not ready at the point of [2], so we want to
avoid using [2] from the view point of debuggability.  Fortunately,
all of the initialization in [2] can be delayed until [3].  I see no
good reason to split into [3] and [4].  So, merge [2] through [4].

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: use checkboard() instead of misc_init_f()
Masahiro Yamada [Tue, 13 Sep 2016 16:06:07 +0000 (01:06 +0900)]
ARM: uniphier: use checkboard() instead of misc_init_f()

We can use checkboard() stub to show additional board information,
so misc_init_f() should not be used for this purpose.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: remove IECTRL setup code of LD4 SoC
Masahiro Yamada [Tue, 13 Sep 2016 16:06:06 +0000 (01:06 +0900)]
ARM: uniphier: remove IECTRL setup code of LD4 SoC

This should be handled by the pinctrl driver.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agopinctrl: uniphier: move register base macros from header to .c file
Masahiro Yamada [Tue, 13 Sep 2016 16:06:05 +0000 (01:06 +0900)]
pinctrl: uniphier: move register base macros from header to .c file

These macros are only referenced in pinctrl-uniphier-core.c, so
they need not reside in a header file.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agopinctrl: uniphier: add System Bus pin-mux settings
Masahiro Yamada [Tue, 13 Sep 2016 16:06:04 +0000 (01:06 +0900)]
pinctrl: uniphier: add System Bus pin-mux settings

This is needed to get access to UniPhier System Bus (external bus).

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agommc: uniphier-sd: migrate to CONFIG_BLK
Masahiro Yamada [Tue, 13 Sep 2016 16:06:03 +0000 (01:06 +0900)]
mmc: uniphier-sd: migrate to CONFIG_BLK

This is the state-of-the-art MMC driver implementation.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
8 years agoARM: uniphier: enable Generic EHCI driver for Pro4 SoC
Masahiro Yamada [Tue, 13 Sep 2016 16:06:02 +0000 (01:06 +0900)]
ARM: uniphier: enable Generic EHCI driver for Pro4 SoC

This SoC is equipped with two EHCI cores and two xHCI cores.
Enable the generic EHCI driver for the former.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: delete unnecessary xHCI pin-mux settings
Masahiro Yamada [Tue, 13 Sep 2016 16:06:01 +0000 (01:06 +0900)]
ARM: uniphier: delete unnecessary xHCI pin-mux settings

These ad-hoc pinmux settings were used for the legacy xHCI driver,
which has gone now.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agousb: uniphier: remove UniPhier xHCI driver and select DM_USB
Masahiro Yamada [Tue, 13 Sep 2016 16:06:00 +0000 (01:06 +0900)]
usb: uniphier: remove UniPhier xHCI driver and select DM_USB

This driver has not been converted to Driver Model, and it is an
obstacle to migrate other block device drivers.  Remove it for now.

The UniPhier SoCs already use a DM-based EHCI driver, so now
ARCH_UNIPHIER can select DM_USB.

These two changes must be done atomically because removing the
legacy driver causes a build error.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Marek Vasut <marex@denx.de>
8 years agoARM: uniphier: sort select:s alphabetically
Masahiro Yamada [Tue, 13 Sep 2016 16:05:59 +0000 (01:05 +0900)]
ARM: uniphier: sort select:s alphabetically

ARCH_UNIPHIER is having more and more select:s.  Sort them in case
a select is accidentally duplicated.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoi2c: at91_i2c: Fix the wrong include file
Wenyou Yang [Tue, 13 Sep 2016 02:40:31 +0000 (10:40 +0800)]
i2c: at91_i2c: Fix the wrong include file

Since the 'clk_client.h' doesn't exist, it should be 'clk.h'.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
8 years agorockchip: i2c: fix >32 byte writes
John Keeping [Thu, 18 Aug 2016 19:08:42 +0000 (20:08 +0100)]
rockchip: i2c: fix >32 byte writes

The special handling of the chip address and register address must only
happen before we send the data buffer, otherwise we will end up
inserting both of these every 32 bytes.

Signed-off-by: John Keeping <john@metanate.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agorockchip: i2c: move register write out of inner loop
John Keeping [Thu, 18 Aug 2016 19:08:41 +0000 (20:08 +0100)]
rockchip: i2c: move register write out of inner loop

There is no point in writing intermediate values to the txdata
registers.

Also add padding to the debug logging to make it easier to read when
there are leading zeroes.

Signed-off-by: John Keeping <john@metanate.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agorockchip: i2c: use named constant when appropriate
John Keeping [Thu, 18 Aug 2016 19:08:40 +0000 (20:08 +0100)]
rockchip: i2c: use named constant when appropriate

Make it clear that we are using the same value in two adjacent lines.

Signed-off-by: John Keeping <john@metanate.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agoPrepare v2016.09
Tom Rini [Mon, 12 Sep 2016 14:05:51 +0000 (10:05 -0400)]
Prepare v2016.09

Signed-off-by: Tom Rini <trini@konsulko.com>