project/bcm63xx/u-boot.git
7 years agoconfigs: at91sam9rlek: Update for DT and DM support
Wenyou Yang [Tue, 18 Apr 2017 07:28:27 +0000 (15:28 +0800)]
configs: at91sam9rlek: Update for DT and DM support

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

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9260ek/9g20ek: Enable early debug UART
Wenyou Yang [Tue, 18 Apr 2017 07:18:49 +0000 (15:18 +0800)]
board: at91sam9260ek/9g20ek: Enable early debug UART

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@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9260ek: Clean up code
Wenyou Yang [Tue, 18 Apr 2017 07:18:48 +0000 (15:18 +0800)]
board: at91sam9260ek: Clean up code

Since the introduction of the pinctrl and clk drivers and the
device tree files, remove unneeded hard coded related code from
the board file.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoconfigs: at91sam9260ek/9g20ek: Update for DT and DM
Wenyou Yang [Tue, 18 Apr 2017 07:18:47 +0000 (15:18 +0800)]
configs: at91sam9260ek/9g20ek: Update for DT and DM

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

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9m10g45ek: Enable early debug UART
Wenyou Yang [Tue, 18 Apr 2017 07:15:50 +0000 (15:15 +0800)]
board: at91sam9m10g45ek: Enable early debug UART

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@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9m10g45ek: Clean up code
Wenyou Yang [Tue, 18 Apr 2017 07:15:49 +0000 (15:15 +0800)]
board: at91sam9m10g45ek: Clean up code

Since the introduction of the pinctrl and clk drivers and the
device tree files, remove unneeded hard coded related code from
the board file.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoconfigs: at91sam9m10g45ek: Update to support DM/DT
Wenyou Yang [Tue, 18 Apr 2017 07:15:48 +0000 (15:15 +0800)]
configs: at91sam9m10g45ek: Update to support DM/DT

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

Because the limitation of internal SRAM size, the SPL with driver
model can't be supported, disable the SPL option.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9n12ek: Enable early debug UART
Wenyou Yang [Tue, 18 Apr 2017 06:54:53 +0000 (14:54 +0800)]
board: at91sam9n12ek: Enable early debug UART

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@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9n12ek: Clean up code
Wenyou Yang [Tue, 18 Apr 2017 06:54:52 +0000 (14:54 +0800)]
board: at91sam9n12ek: Clean up code

Since the introduction of the pinctrl and clk driver and the device
tree files, remove unneeded related code from the board file.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoconfigs: at91sam9n12ek: Update for DT and DM support
Wenyou Yang [Tue, 18 Apr 2017 06:54:51 +0000 (14:54 +0800)]
configs: at91sam9n12ek: Update for DT and DM support

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

Because the limitation of internal SRAM size, the SPL with driver
model can't be supported, disable the SPL option.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9x5ek: Enable early debug UART
Wenyou Yang [Tue, 18 Apr 2017 06:51:56 +0000 (14:51 +0800)]
board: at91sam9x5ek: Enable early debug UART

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@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoboard: at91sam9x5ek: Clean up code
Wenyou Yang [Tue, 18 Apr 2017 06:51:55 +0000 (14:51 +0800)]
board: at91sam9x5ek: Clean up code

Since the introduction of the pinctrl and clock driver and the device
tree files, remove unneeded hard coded related code from the board
file.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoconfigs: at91sam9x5ek: Update to support DM/DT
Wenyou Yang [Tue, 18 Apr 2017 06:51:54 +0000 (14:51 +0800)]
configs: at91sam9x5ek: Update to support DM/DT

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

Because the limitation of internal SRAM size, the SPL with driver
model can't be supported, disable the SPL option.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoARM: dts: at91: Add dts files for at91sam9263ek
Wenyou Yang [Tue, 18 Apr 2017 05:49:39 +0000 (13:49 +0800)]
ARM: dts: at91: Add dts files for at91sam9263ek

The device tree source files of at91sam9263ek boards are copied from
the Linux v4.10, do the changes as below.
 - Add the reg property for the pinctrl node.
 - Move the gpio (pioA, pioB, pioC, pioD, pioE) nodes as the pinctrl's
   slibling nodes, instead of the child nodes.
 - Add the "u-boot,dm-pre-reloc" property for the dbgu node are used
   in board_init_f stage.
 - Fix the compilation warnings.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoARM: dts: at91: Add dts files for at91sam9rlek
Wenyou Yang [Tue, 18 Apr 2017 05:49:38 +0000 (13:49 +0800)]
ARM: dts: at91: Add dts files for at91sam9rlek

The device tree source files of at91sam9rlek boards are copied from
the Linux v4.10, do the changes as below.
 - Add the reg property for the pinctrl node.
 - Move the gpio (pioA, pioB, pioC, pioD) nodes as the pinctrl's
   slibling nodes, instead of the child nodes.
 - Add the "u-boot,dm-pre-reloc" property for the dbgu node are used
   in board_init_f stage.
 - Fix the compilation warnings.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoARM: dts: at91: Add dts files for at91sam9260ek/9g20ek
Wenyou Yang [Tue, 18 Apr 2017 05:49:37 +0000 (13:49 +0800)]
ARM: dts: at91: Add dts files for at91sam9260ek/9g20ek

The device tree source files of at91sam9g20ek and at91sam9260ek
boards are copied from the Linux v4.10, do the changes below.
 - Fix the build error for the usb0 node.
 - Add the reg property for the pinctrl node.
 - Move the gpio (pioA, pioB, pioC ...) nodes as the pinctrl's
   slibling nodes, instead of the child nodes.
 - Add the "u-boot,dm-pre-reloc" property for the dbgu node are used
   in board_init_f stage.
 - Add the clk pinctrl of the mmc0 node.
 - Fix the compilation warnings.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoARM: dts: at91: Add dts files for at91sam9m10g45ek
Wenyou Yang [Tue, 18 Apr 2017 05:49:36 +0000 (13:49 +0800)]
ARM: dts: at91: Add dts files for at91sam9m10g45ek

The device tree source files of at91sam9m10g45ek boards are copied
from the Linux v4.10, do the changes as below.
 - Add the reg property for the pinctrl node.
 - Move the gpio (pioA, pioB, pioC, pioD, pioE) nodes as the pinctrl's
   slibling nodes, instead of the child nodes.
 - Add the "u-boot,dm-pre-reloc" property to determine which nodes
   are used by the board_init_f stage.
 - Fix the compilation warnings.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoARM: dts: at91: Add dts files for at91sam9n12ek
Wenyou Yang [Tue, 18 Apr 2017 05:49:35 +0000 (13:49 +0800)]
ARM: dts: at91: Add dts files for at91sam9n12ek

The device tree source files of at91sam9n12ek boards are copied from
the Linux v4.10, do the changes as below.
 - Add the reg property for the pinctrl node.
 - Move the gpio (pioA, pioB, pioC, pioD) nodes as the pinctrl's
   slibling nodes, instead of the child nodes.
 - Change the compatible of the spi flash to "spi-flash".
 - Add the spi0 aliases.
 - Fix the pinctrl-names of mmc0 node.
 - Add the "u-boot,dm-pre-reloc" property to determine which nodes
   are used by the board_init_f stage.
 - Fix the compilation warnings.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoARM: dts: at91: Add dts files for at91sam9x5ek
Wenyou Yang [Tue, 18 Apr 2017 05:49:34 +0000 (13:49 +0800)]
ARM: dts: at91: Add dts files for at91sam9x5ek

The device tree source files of at91sam9x5ek board are copied from
the Linux v4.10, do the changes below.
 - Add the reg property for the pinctrl node.
 - Move the gpio (pioA, pioB, pioC ...) nodes as the pinctrl's
   slibling nodes, instead of the child nodes.
 - Add the "u-boot,dm-pre-reloc" property to determine which nodes
   are used by the board_init_f stage.
 - Change the compatible of the spi flash to "spi-flash".
 - Add the spi0 aliases.
 - Fix the compilation warnings.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoserial: atmel_usart: Add clk support
Wenyou Yang [Fri, 14 Apr 2017 07:01:28 +0000 (15:01 +0800)]
serial: atmel_usart: Add clk support

Add the clock support.
Note that the clock handling of the DBGU peripheral is different
from the USART.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoserial: atmel_usart: Fix early debug not work in SPL
Wenyou Yang [Fri, 14 Apr 2017 07:01:27 +0000 (15:01 +0800)]
serial: atmel_usart: Fix early debug not work in SPL

Add the uart init function to be used on both probe and the early
debug uart init. For the latter, the input clock should be from
CONFIG_DEBUG_UART_CLOCK.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoclk: at91: Align the at91 pmc's compatibles
Wenyou Yang [Fri, 14 Apr 2017 06:53:24 +0000 (14:53 +0800)]
clk: at91: Align the at91 pmc's compatibles

Align the at91 pmc's compatibles with kernel.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Andreas Bießmann <andreas@biessmann.org>
7 years agoclk: at91: Align clk-master compatibles with kernel
Wenyou Yang [Fri, 14 Apr 2017 06:53:23 +0000 (14:53 +0800)]
clk: at91: Align clk-master compatibles with kernel

Add the compatible "atmel,at91rm9200-clk-master" to align with
the kernel.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoclk: at91: Enhance the peripheral clock
Wenyou Yang [Fri, 14 Apr 2017 06:53:22 +0000 (14:53 +0800)]
clk: at91: Enhance the peripheral clock

Enhance the peripheral clock to support both at9sam9x5's and
at91rm9200's peripheral clock via the different compatibles.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agonet: macb: Align the compatibles with kernel
Wenyou Yang [Fri, 14 Apr 2017 06:36:05 +0000 (14:36 +0800)]
net: macb: Align the compatibles with kernel

Add the compatibles to align with the kernel.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
7 years agonet: macb: Add remove callback
Wenyou Yang [Fri, 14 Apr 2017 06:36:04 +0000 (14:36 +0800)]
net: macb: Add remove callback

To avoid the failure of mdio_register(), add the remove callback
to unregister the mii_dev when removing the ethernet device.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Fixed up unused variable warning, e.g. for gurnard:
Signed-off-by: Simon Glass <sjg@chromium.org>
7 years agoconfigs: sama5d3xek: add default config for CMP board
Wenyou Yang [Fri, 24 Mar 2017 01:26:16 +0000 (09:26 +0800)]
configs: sama5d3xek: add default config for CMP board

The sama5d36ek CMP board is the variant of sama5d3xek board.
It is equipped with the low-power DDR2 SDRAM, PMIC ACT8865, and
some power rails. The board is mainly used to measure the power
consumption. As all those changes are done in at91bootstrap,
in U-Boot, only use another device tree file, no code needed
to change.

As there is additional power consumption when enbling the USB
Host and USB device, for the power consumption measurement
intention, disable the USB host and device.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
7 years agoboard: sama5d4ek: fix DD2 configuration
Wenyou Yang [Thu, 23 Mar 2017 06:35:33 +0000 (14:35 +0800)]
board: sama5d4ek: fix DD2 configuration

Fix the DDR2 configuration to make SPL work.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
7 years agoconfigs: sama5d2_xplained: update for SPL
Wenyou Yang [Thu, 23 Mar 2017 06:26:28 +0000 (14:26 +0800)]
configs: sama5d2_xplained: update for SPL

Enable config options to support the SPL, increase the malloc
memory size for the SPL and board_init_f stage and increase
the memory space for the SPL binary.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
7 years agoboard: sama5d2_xplained: remove unnecessary header files
Wenyou Yang [Thu, 23 Mar 2017 06:26:27 +0000 (14:26 +0800)]
board: sama5d2_xplained: remove unnecessary header files

Remove the unnecessary header files.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
7 years agoboard: sama5d2_xplained: remove uart1 init
Wenyou Yang [Thu, 23 Mar 2017 06:26:26 +0000 (14:26 +0800)]
board: sama5d2_xplained: remove uart1 init

Due to the pin configuration and clock enabling is handling by the
driver, remove the unneeded hardcode uart1 init during
board_early_init_f stage.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
7 years agoboard: sama5d2_xplained: clean up macb init code
Wenyou Yang [Thu, 23 Mar 2017 06:26:25 +0000 (14:26 +0800)]
board: sama5d2_xplained: clean up macb init code

Because the MACB driver supports the driver model and device tree,
the pins configuration and clock enabling are handled by the
pinctrl driver and clock driver, remove this hardcoded init code.

The USB Ether init code is removed as well.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
7 years agoconfigs: sama5d2_xplained: enable CONFIG_DM_ETH
Wenyou Yang [Thu, 23 Mar 2017 06:26:24 +0000 (14:26 +0800)]
configs: sama5d2_xplained: enable CONFIG_DM_ETH

Enable CONFIG_DM_ETH to make MACB to support driver model.

Because the USB Ether doesn't support driver model so far,
remove this feature.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
7 years agoARM: dts: sama5d2_xplained: update for SPL
Wenyou Yang [Thu, 23 Mar 2017 06:26:23 +0000 (14:26 +0800)]
ARM: dts: sama5d2_xplained: update for SPL

Add the "u-boot,dm-pre-reloc" property to determine which nodes
which are needed by SPL and by the board_init_f stage.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
7 years agoARM: dts: sama5d2: add clock property for uart1 node
Wenyou Yang [Thu, 23 Mar 2017 06:26:22 +0000 (14:26 +0800)]
ARM: dts: sama5d2: add clock property for uart1 node

Add clock property for uart1 node.

Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com>
7 years agop1_p2_rdb: Fix unused variable warning
Tom Rini [Wed, 19 Apr 2017 02:26:35 +0000 (22:26 -0400)]
p1_p2_rdb: Fix unused variable warning

With gcc-6 we see a warning that sysclk_tbl is defined but unused, so
remove it.

Cc: York Sun <york.sun@nxp.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: York Sun <york.sun@nxp.com>
7 years agodm: Update Simple Watchdog uclass
Maxim Sloyko [Tue, 9 May 2017 13:08:07 +0000 (09:08 -0400)]
dm: Update Simple Watchdog uclass

- Remove "probe" function from sandbox wdt driver
- Fix include order

Fixes: 0753bc2d30d7 ("dm: Simple Watchdog uclass")
Signed-off-by: Maxim Sloyko <maxims@google.com>
[trini: Create as the delta between v1 (applied) and v2 (should have
 applied)].
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoMerge branch 'next' of git://git.denx.de/u-boot-spi
Tom Rini [Mon, 8 May 2017 19:44:52 +0000 (15:44 -0400)]
Merge branch 'next' of git://git.denx.de/u-boot-spi

7 years agoMerge branch 'master' of git://git.denx.de/u-boot-sunxi
Tom Rini [Mon, 8 May 2017 19:44:44 +0000 (15:44 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-sunxi

7 years agoARM: keystone2: Add support for getting external clock dynamically
Lokesh Vutla [Wed, 3 May 2017 11:28:26 +0000 (16:58 +0530)]
ARM: keystone2: Add support for getting external clock dynamically

One some keystone2 platforms like K2G ICE, there is an option
to switch between 24MHz or 25MHz as sysclk. But the existing
driver assumes it is always 24MHz. Add support for getting
all reference clocks dynamically by reading boot pins.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoARM: k2g: Add support for dynamic programming of PLL based on SYSCLK
Lokesh Vutla [Wed, 3 May 2017 11:28:25 +0000 (16:58 +0530)]
ARM: k2g: Add support for dynamic programming of PLL based on SYSCLK

K2G supports various sysclk frequencies which can be
determined using sysboot pins. PLLs should be configured
based on this sysclock frequency. Add PLL configurations
for all supported sysclk frequencies.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoconfigs: ks2: Enable TI_COMMON_CMD_OPTIONS
Lokesh Vutla [Thu, 27 Apr 2017 10:14:03 +0000 (15:44 +0530)]
configs: ks2: Enable TI_COMMON_CMD_OPTIONS

Enable TI_COMMON_CMD_OPTIONS on all keystone2 platforms.
Also sync with savedefconfig.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
7 years agoconfigs: dra7xx: Enable TI_COMMON_CMD_OPTIONS
Lokesh Vutla [Thu, 27 Apr 2017 10:14:02 +0000 (15:44 +0530)]
configs: dra7xx: Enable TI_COMMON_CMD_OPTIONS

Enable TI_COMMON_CMD_OPTIONS on all dra7xx platforms.
Also sync with savedefconfig.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
7 years agoconfigs: am57xx: Enable TI_COMMON_CMD_OPTIONS
Lokesh Vutla [Thu, 27 Apr 2017 10:14:01 +0000 (15:44 +0530)]
configs: am57xx: Enable TI_COMMON_CMD_OPTIONS

Enable TI_COMMON_CMD_OPTIONS on all am57xx platforms.
Also sync with savedefconfig

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
7 years agoconfigs: am43xx: Enable TI_COMMON_CMD_OPTIONS
Lokesh Vutla [Thu, 27 Apr 2017 10:14:00 +0000 (15:44 +0530)]
configs: am43xx: Enable TI_COMMON_CMD_OPTIONS

Enable TI_COMMON_CMD_OPTIONS on all am43xx platforms.
Also sync with savedefconfig.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
7 years agoconfigs: am335x: Enable TI_COMMON_CMD_OPTIONS
Lokesh Vutla [Thu, 27 Apr 2017 10:13:59 +0000 (15:43 +0530)]
configs: am335x: Enable TI_COMMON_CMD_OPTIONS

Enable TI_COMMON_CMD_OPTIONS on all am335x platforms.
Also sync with savedefconfig.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
[trini: Re-sync, add in boneblack*, evm_hs_{norboot,spiboot,usbspl} configs]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agoboard: ti: Define Kconfig symbol for common cmd options
Lokesh Vutla [Thu, 27 Apr 2017 10:13:58 +0000 (15:43 +0530)]
board: ti: Define Kconfig symbol for common cmd options

Instead of defining command options in every defconfig,
define a common Kconfig symbol that consolidates all command
options that are supported by any TI platform. Also use imply
keyword so that that specific option can be disabled if
not required.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoAdd ARM errata workaround 852421 and 852423 for Cortex-A17
Nisal Menuka [Wed, 26 Apr 2017 21:18:01 +0000 (16:18 -0500)]
Add ARM errata workaround 852421 and 852423 for Cortex-A17

ARM errata 852421 and 852423 applies to r1p0, r1p1 and r1p2
revisions of Cortex-A17 processors. These workarounds
exist in Linux kernel and I thought it would be better
to add them in to U-Boot.

Signed-off-by: Nisal Menuka <nisalmenuka23@gmail.com>
7 years agoaspeed: Cleanup ast2500-u-boot.dtsi Device Tree
maxims@google.com [Mon, 17 Apr 2017 19:00:34 +0000 (12:00 -0700)]
aspeed: Cleanup ast2500-u-boot.dtsi Device Tree

Remove unnecessary apb and ahb nodes and just override necessary
nodes/values.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Refactor SCU to use consistent mask & shift
maxims@google.com [Mon, 17 Apr 2017 19:00:33 +0000 (12:00 -0700)]
aspeed: Refactor SCU to use consistent mask & shift

Refactor SCU header to use consistent Mask & Shift values.
Now, consistently, to read value from SCU register, mask needs
to be applied before shift.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Add support for Clocks needed by MACs
maxims@google.com [Mon, 17 Apr 2017 19:00:32 +0000 (12:00 -0700)]
aspeed: Add support for Clocks needed by MACs

Add support for clocks needed by MACs to ast2500 clock driver.
The clocks are D2-PLL, which is used by both MACs and PCLK_MAC1 and
PCLK_MAC2 for MAC1 and MAC2 respectively.

The rate of D2-PLL is hardcoded to 250MHz -- the value used in Aspeed
SDK. It is not entirely clear from the datasheet how this clock is used
by MACs, so not clear if the rate would ever need to be different. So,
for now, hardcoding it is probably safer.

The rate of PCLK_MAC{1,2} is chosen based on MAC speed selected through
hardware strapping.

So, the network driver would only need to enable these clocks, no need
to configure the rate.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Enable I2C in EVB defconfig
maxims@google.com [Mon, 17 Apr 2017 19:00:31 +0000 (12:00 -0700)]
aspeed: Enable I2C in EVB defconfig

Enable I2C driver in ast2500 Eval Board defconfig.
Also enable i2c command.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Add I2C Driver
maxims@google.com [Mon, 17 Apr 2017 19:00:30 +0000 (12:00 -0700)]
aspeed: Add I2C Driver

Add Device Model based I2C driver for ast2500/ast2400 SoCs.
The driver is very limited, it only supports master mode and
synchronous byte-by-byte reads/writes, no DMA or Pool Buffers.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Heiko Schocher <hs@denx.de>
7 years agoaspeed: Add P-Bus clock in ast2500 clock driver
maxims@google.com [Mon, 17 Apr 2017 19:00:29 +0000 (12:00 -0700)]
aspeed: Add P-Bus clock in ast2500 clock driver

Add P-Bus Clock support to ast2500 clock driver.
This is the clock used by I2C devices.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Enable Pinctrl Driver in AST2500 EVB
maxims@google.com [Mon, 17 Apr 2017 19:00:28 +0000 (12:00 -0700)]
aspeed: Enable Pinctrl Driver in AST2500 EVB

Enable Pinctrl Driver in AST2500 Eval Board's defconfig

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: AST2500 Pinctrl Driver
maxims@google.com [Mon, 17 Apr 2017 19:00:27 +0000 (12:00 -0700)]
aspeed: AST2500 Pinctrl Driver

This driver uses Generic Pinctrl framework and is compatible with
the Linux driver for ast2500: it uses the same device tree
configuration.

Not all pins are supported by the driver at the moment, so it actually
compatible with ast2400. In general, however, there are differences that
in the future would be easier to maintain separately.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Refactor AST2500 RAM Driver and Sysreset Driver
maxims@google.com [Mon, 17 Apr 2017 19:00:26 +0000 (12:00 -0700)]
aspeed: Refactor AST2500 RAM Driver and Sysreset Driver

This change switches all existing users of ast2500 Watchdog to Driver
Model based Watchdog driver.

To perform system reset Sysreset Driver uses first Watchdog device found
via uclass_first_device call. Since the system is going to be reset
anyway it does not make much difference which watchdog is used.

Instead of using Watchdog to reset itself, SDRAM driver now uses Reset
driver to do that.

These were the only users of the old Watchdog API, so that API is
removed.

This all is done in one change to avoid having to maintain dual API for
watchdog in between.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Device Tree configuration for Reset Driver
maxims@google.com [Mon, 17 Apr 2017 19:00:25 +0000 (12:00 -0700)]
aspeed: Device Tree configuration for Reset Driver

Add Reset Driver configuration to ast2500 SoC Device Tree and bindings
for various reset signals

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Reset Driver
maxims@google.com [Mon, 17 Apr 2017 19:00:24 +0000 (12:00 -0700)]
aspeed: Reset Driver

Add Reset Driver for ast2500 SoC. This driver uses Watchdog Timer to
perform resets and thus depends on it. The actual Watchdog device used
needs to be configured in Device Tree using "aspeed,wdt" property, which
must be WDT phandle, for example:

rst: reset-controller {
    compatible = "aspeed,ast2500-reset";
    aspeed,wdt = <&wdt1>;
}

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Make SCU lock/unlock functions part of SCU API
maxims@google.com [Mon, 17 Apr 2017 19:00:23 +0000 (12:00 -0700)]
aspeed: Make SCU lock/unlock functions part of SCU API

Make functions for locking and unlocking SCU part of SCU API.
Many drivers need to modify settings in SCU and thus need to unlock it
first. This change makes it possible.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Watchdog Timer Driver
maxims@google.com [Mon, 17 Apr 2017 19:00:22 +0000 (12:00 -0700)]
aspeed: Watchdog Timer Driver

This driver supports ast2500 and ast2400 SoCs.
Only ast2500 supports reset_mask and thus the option of resettting
individual peripherals using WDT.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agodm: Simple Watchdog uclass
maxims@google.com [Mon, 17 Apr 2017 19:00:21 +0000 (12:00 -0700)]
dm: Simple Watchdog uclass

This is a simple uclass for Watchdog Timers. It has four operations:
start, restart, reset, stop. Drivers must implement start, restart and
stop operations, while implementing reset is optional: It's default
implementation expires watchdog timer in one clock tick.

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoaspeed: Update ast2500 Device Tree
maxims@google.com [Mon, 17 Apr 2017 19:00:20 +0000 (12:00 -0700)]
aspeed: Update ast2500 Device Tree

Pull in the Device Tree for ast2500 from the mainline Linux kernel.
The file is copied from
https://raw.githubusercontent.com/torvalds/linux/34ea5c9d/arch/arm/boot/dts/aspeed-g5.dtsi

Signed-off-by: Maxim Sloyko <maxims@google.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoARM: DT: STM32F746: add u-boot, dm-pre-reloc property to sub nodes
Vikas Manocha [Wed, 12 Apr 2017 21:16:36 +0000 (14:16 -0700)]
ARM: DT: STM32F746: add u-boot, dm-pre-reloc property to sub nodes

This patch is required for correct SPL device tree creation by fdtgrep
as fdtgrep looks for u-boot,dm-pre-reloc property of the node to include
it in the spl device tree.

Not adding it in these subnodes ignores the pin muxing of peripherals
which is almost always in the subnodes.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoREADME: remove CONFIG_CMD_DATE
Chris Packham [Tue, 2 May 2017 09:30:49 +0000 (21:30 +1200)]
README: remove CONFIG_CMD_DATE

CONFIG_CMD_DATE was recently moved to Kconfig. Remove the now duplicate
description of the option.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agotools: moveconfig: cleanup README entires
Chris Packham [Tue, 2 May 2017 09:30:48 +0000 (21:30 +1200)]
tools: moveconfig: cleanup README entires

The Kconfig description replaces the description in the README file so
as options are migrated they can be removed from the README.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agotools: moveconfig: cleanup whitelist entries
Chris Packham [Tue, 2 May 2017 09:30:47 +0000 (21:30 +1200)]
tools: moveconfig: cleanup whitelist entries

After moving to KConfig and removing from all headers options should be
removed from config_whitelist.txt so the build starts complaining if
someone adds them back.

Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agotools: moveconfig: extract helper function for user confirmation
Chris Packham [Tue, 2 May 2017 09:30:46 +0000 (21:30 +1200)]
tools: moveconfig: extract helper function for user confirmation

Avoid repetitive code dealing with asking the user for confirmation.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agortc: Add DM support to ds1307
Chris Packham [Sat, 29 Apr 2017 03:20:29 +0000 (15:20 +1200)]
rtc: Add DM support to ds1307

Add an implementation of the ds1307 driver that uses the driver model
i2c APIs.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoigep003x: Add netboot support
Pau Pajuelo [Sat, 1 Apr 2017 15:19:43 +0000 (17:19 +0200)]
igep003x: Add netboot support

netboot allows to boot an external image using TFTP and NFS protocols

Signed-off-by: Pau Pajuelo <ppajuelo@iseebcn.com>
Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Tested-by: Pau Pajuelo <ppajuel@gmail.com>
7 years agoigep003x: Add support for IGEP SMARC AM335x
Pau Pajuelo [Sat, 1 Apr 2017 15:18:40 +0000 (17:18 +0200)]
igep003x: Add support for IGEP SMARC AM335x

The IGEP SMARC AM335x is an industrial processor module with
following highlights:

  o AM3352 TI processor (Up to AM3359)
  o Cortex-A8 ARM CPU
  o SMARC form factor module
  o Up to 512 MB DDR3 SDRAM / 512 MB FLASH
  o WiFi a/b/g/n and Bluetooth v4.0 on-board
  o Ethernet 10/100/1000 Mbps and 10/100 Mbps controller on-board
  o JTAG debug connector available
  o Designed for industrial range purposes

Signed-off-by: Pau Pajuelo <ppajuelo@iseebcn.com>
Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Tested-by: Pau Pajuelo <ppajuel@gmail.com>
7 years agoigep003x: UBIize
Ladislav Michl [Sat, 1 Apr 2017 15:17:57 +0000 (17:17 +0200)]
igep003x: UBIize

Convert IGEP board to use UBI volumes for U-Boot, its environment and
kernel. With exception of first four sectors read by SoC BootROM whole
NAND is UBI managed.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Reviewed-by: Heiko Schocher<hs@denx.de>
Tested-by: Pau Pajuelo <ppajuel@gmail.com>
7 years agoigep0033: Rename to igep003x
Ladislav Michl [Sat, 1 Apr 2017 15:17:16 +0000 (17:17 +0200)]
igep0033: Rename to igep003x

Rename igep0033 to igep003x as IGEP SMARC AM335x module (igep0034)
can use the same source files.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Tested-by: Pau Pajuelo <ppajuel@gmail.com>
7 years agomtd: nand: Consolidate nand spl loaders implementation
Ladislav Michl [Sun, 16 Apr 2017 13:31:59 +0000 (15:31 +0200)]
mtd: nand: Consolidate nand spl loaders implementation

nand_spl_load_image implementation was copied over into three
different drivers and now with nand_spl_read_block used for
ubispl situation gets even worse. For now use least intrusive
solution and #include the same implementation to nand drivers.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Tested-by: Pau Pajuelo <ppajuel@gmail.com>
7 years agoARM: am33xx: define BOOT_DEVICE_ONENAND
Ladislav Michl [Sat, 1 Apr 2017 15:15:04 +0000 (17:15 +0200)]
ARM: am33xx: define BOOT_DEVICE_ONENAND

am33xx does not support OneNAND, but we need this define anyway
to let UBI SPL code compile.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Tested-by: Pau Pajuelo <ppajuel@gmail.com>
7 years agoARM: am33xx: fix typo in spl.h
Ladislav Michl [Sat, 1 Apr 2017 15:14:28 +0000 (17:14 +0200)]
ARM: am33xx: fix typo in spl.h

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Tested-by: Pau Pajuelo <ppajuel@gmail.com>
7 years agostm32f7: remove not needed configuration from board config
Vikas Manocha [Mon, 10 Apr 2017 22:03:07 +0000 (15:03 -0700)]
stm32f7: remove not needed configuration from board config

This patch removes:
- CONFIG_CMD_MEM: enabled by default
- CONFIG_DESIGNWARE_ETH : not being used anywhere.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: add support for stm32f769 disco board
Vikas Manocha [Mon, 10 Apr 2017 22:03:06 +0000 (15:03 -0700)]
stm32f7: add support for stm32f769 disco board

This board support stm32f7 family device stm32f769-I with 2MB internal Flash &
512KB RAM.
STM32F769 lines offer the performance of the Cortex-M7 core (with double
precision floating point unit) running up to 216 MHz.

To compile for stm32f769 board, use same defconfig as stm32f746-disco,
the only difference is to pass "DEVICE_TREE=stm32f769-disco".

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: move board specific pin muxing to dts
Vikas Manocha [Mon, 10 Apr 2017 22:03:05 +0000 (15:03 -0700)]
stm32f7: move board specific pin muxing to dts

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: increase the max no of pin configuration to 70
Vikas Manocha [Mon, 10 Apr 2017 22:03:04 +0000 (15:03 -0700)]
stm32f7: increase the max no of pin configuration to 70

The number of pins to be configured could be more than 50 e.g. in case
of sdram controller, there are about 56 pins (32 data lines, 12 address
& some control signals).

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: sdram: correct sdram configuration as per micron sdram
Vikas Manocha [Mon, 10 Apr 2017 22:03:03 +0000 (15:03 -0700)]
stm32f7: sdram: correct sdram configuration as per micron sdram

Actually the sdram memory on stm32f746 discovery board is micron part
MT48LC_4M32_B2B5_6A. This patch does the modification required in the
device tree node & driver for the same.

Also we are passing here all the timing parameters in terms of clock
cycles, so no need to convert time(ns or ms) to cycles.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: enable board info read from device tree
Vikas Manocha [Mon, 10 Apr 2017 22:03:02 +0000 (15:03 -0700)]
stm32f7: enable board info read from device tree

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: stm32f746-disco: read memory info from device tree
Vikas Manocha [Mon, 10 Apr 2017 22:03:01 +0000 (15:03 -0700)]
stm32f7: stm32f746-disco: read memory info from device tree

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f746: to switch on user LED1 & read user button
Vikas Manocha [Mon, 10 Apr 2017 22:03:00 +0000 (15:03 -0700)]
stm32f746: to switch on user LED1 & read user button

All discovery boards have one user button & one user LED. Here we are
just reading the button status & switching ON the user LED.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: use stm32f7 gpio driver supporting driver model
Vikas Manocha [Mon, 10 Apr 2017 22:02:59 +0000 (15:02 -0700)]
stm32f7: use stm32f7 gpio driver supporting driver model

With this gpio driver supporting DM, there is no need to enable clocks
for different gpios (for pin muxing) in the board specific code.

Need to increase the allocatable area required before relocation from 0x400 to
0xC00 becuase of 10 new gpio devices(& new gpio class) added in device tree.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
7 years agoARM: DT: stm32f7: add gpio device tree nodes
Vikas Manocha [Mon, 10 Apr 2017 22:02:58 +0000 (15:02 -0700)]
ARM: DT: stm32f7: add gpio device tree nodes

Also created alias for gpios for stm32f7 discovery board. Based on these
aliases, it would be possible to get gpio devices by sequence.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agodm: gpio: Add driver for stm32f7 gpio controller
Vikas Manocha [Mon, 10 Apr 2017 22:02:57 +0000 (15:02 -0700)]
dm: gpio: Add driver for stm32f7 gpio controller

This patch adds gpio driver supporting driver model for stm32f7 gpio.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Cc: Christophe KERELLO <christophe.kerello@st.com>
[trini: Add depends on STM32]
Signed-off-by: Tom Rini <trini@konsulko.com>
7 years agostm32f7: sdram: use sdram device tree node to configure sdram controller
Vikas Manocha [Mon, 10 Apr 2017 22:02:56 +0000 (15:02 -0700)]
stm32f7: sdram: use sdram device tree node to configure sdram controller

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: use clock driver to enable sdram controller clock
Vikas Manocha [Mon, 10 Apr 2017 22:02:55 +0000 (15:02 -0700)]
stm32f7: use clock driver to enable sdram controller clock

This patch also removes the sdram/fmc clock enable from board specific
code.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: use driver model for sdram initialization
Vikas Manocha [Mon, 10 Apr 2017 22:02:54 +0000 (15:02 -0700)]
stm32f7: use driver model for sdram initialization

As driver model takes care of pin control configuraion, this patch also
removes the sdram/fmc pin configuration.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agoARM: DT: stm32f7: add sdram pin contol node
Vikas Manocha [Mon, 10 Apr 2017 22:02:53 +0000 (15:02 -0700)]
ARM: DT: stm32f7: add sdram pin contol node

Also added DT binding doc for stm32 fmc(flexible memory controller).

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: dm: add driver model support for sdram
Vikas Manocha [Mon, 10 Apr 2017 22:02:52 +0000 (15:02 -0700)]
stm32f7: dm: add driver model support for sdram

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: sdram: move sdram driver code to ram drivers area
Vikas Manocha [Mon, 10 Apr 2017 22:02:51 +0000 (15:02 -0700)]
stm32f7: sdram: move sdram driver code to ram drivers area

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agostm32f7: use clock driver to enable qspi controller clock
Vikas Manocha [Mon, 10 Apr 2017 22:02:50 +0000 (15:02 -0700)]
stm32f7: use clock driver to enable qspi controller clock

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
cc: Christophe KERELLO <christophe.kerello@st.com>

7 years agospl: make image arg or fdt blob address reconfigurable
Vikas Manocha [Fri, 7 Apr 2017 22:38:13 +0000 (15:38 -0700)]
spl: make image arg or fdt blob address reconfigurable

At present fdt blob or argument address being passed to kernel is fixed at
compile time using macro CONFIG_SYS_SPL_ARGS_ADDR. FDT blob from
different media like nand, nor flash are copied to the address pointed
by the macro.
The problem is, it makes args/fdt blob compulsory to copy which is not required
in cases like for NOR Flash. This patch removes this limitation.

Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
7 years agoarm: am57xx: cl-som-am57x: enable USB commands
Uri Mashiach [Thu, 23 Feb 2017 13:39:41 +0000 (15:39 +0200)]
arm: am57xx: cl-som-am57x: enable USB commands

Add CONFIG_CMD_USB to the defconfig file.

Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoarm: am57xx: cl-som-am57x: enable USB storage
Uri Mashiach [Thu, 23 Feb 2017 13:39:40 +0000 (15:39 +0200)]
arm: am57xx: cl-som-am57x: enable USB storage

Add CONFIG_USB_STORAGE to the defconfig file.

Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agoarm: am57xx: cl-som-am57x: fix USB scan
Uri Mashiach [Thu, 23 Feb 2017 13:39:39 +0000 (15:39 +0200)]
arm: am57xx: cl-som-am57x: fix USB scan

USB bus scan attempt:
----------------------------------cut----------------------------------
=> usb start
starting USB...
USB0:   Register 2000140 NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus 0 for devices... data abort
pc : [<fff6240e>]          lr : [<fff623b3>]
reloc pc : [<8081b40e>]    lr : [<8081b3b3>]
sp : fdf42930  ip : fdf42960     fp : 00000000
r10: 00000001  r9 : fdf42ef0     r8 : 48890020
r7 : 00000002  r6 : fffa5840     r5 : fff8b140  r4 : fdf429c0
r3 : 00000000  r2 : 00000004     r1 : 00000000  r0 : 00000000
Flags: nZcv  IRQs off  FIQs off  Mode SVC_32
Resetting CPU ...

resetting ...
----------------------------------cut----------------------------------

Fix by enabling USB configuration in the SPL.

Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Igor Grinberg <grinberg@compulab.co.il>
7 years agoarm: am57xx: cl-som-am57x: invoke clock API to enable/disable clocks
Uri Mashiach [Thu, 23 Feb 2017 13:39:38 +0000 (15:39 +0200)]
arm: am57xx: cl-som-am57x: invoke clock API to enable/disable clocks

Invoke enable_usb_clocks during board_usb_init and disable_usb_clocks
during board_usb_exit to enable and disable clocks respectively.

Modifications:
* Enable USB clocks in the OMAP version of the function
  board_usb_init.
* Disable USB clocks in the OMAP version of the function
  board_usb_cleanup.

Cc: Marek Vasut <marex@denx.de>
Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il>
Reviewed-by: Marek Vasut <marex@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
7 years agousb: host: xhci-omap: fix double weak board_usb_init functions
Uri Mashiach [Thu, 23 Feb 2017 13:39:37 +0000 (15:39 +0200)]
usb: host: xhci-omap: fix double weak board_usb_init functions

A weak version of the function board_usb_init is implemented in:
common/usb.c
drivers/usb/host/xhci-omap.c

To fix the double implementations:
* Convert the board_usb_init function in drivers/usb/host/xhci-omap.c
  normal (not weak).
* The function board_usb_init in drivers/usb/host/xhci-omap.c calls to
  the weak function omap_xhci_board_usb_init.
* Rename board version of the function board_usb_init to
  omap_xhci_board_usb_init.
  Done only for boards that defines CONFIG_USB_XHCI_OMAP.

To achieve the same flexibility with the function board_usb_cleanup:
* Add a normal (not weak) implementation of the function
  board_usb_cleanup in drivers/usb/host/xhci-omap.c
* The function board_usb_cleanup in drivers/usb/host/xhci-omap.c calls
  to the weak function omap_xhci_board_usb_cleanup.
* Rename board version of the function board_usb_cleanup to
  omap_xhci_board_usb_cleanup.
  Done only for boards that defines CONFIG_USB_XHCI_OMAP.

Cc: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il>
Acked-by: Marek Vasut <marex@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>