project/bcm63xx/u-boot.git
8 years agonet: axi_emac: Rename start, stop, write_hwaddr functions
Michal Simek [Wed, 16 Dec 2015 08:18:12 +0000 (09:18 +0100)]
net: axi_emac: Rename start, stop, write_hwaddr functions

Rename few functions to fit to the new name convention used by DM.

Suggested-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agonet: axi_emac: Split recv from free_pkt
Michal Simek [Wed, 9 Dec 2015 13:13:23 +0000 (14:13 +0100)]
net: axi_emac: Split recv from free_pkt

Call net_process_received_packet() by core.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agonet: axi_emac: Enable access to MDIO in probe
Michal Simek [Tue, 8 Dec 2015 15:10:05 +0000 (16:10 +0100)]
net: axi_emac: Enable access to MDIO in probe

Detect phy when driver probes.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agonet: axi_emac: Move driver to DM
Michal Simek [Tue, 8 Dec 2015 14:44:41 +0000 (15:44 +0100)]
net: axi_emac: Move driver to DM

Move driver to DM.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agonet: axi_emac: Pass private structure where possible
Michal Simek [Wed, 9 Dec 2015 13:53:51 +0000 (14:53 +0100)]
net: axi_emac: Pass private structure where possible

Use axidma_priv instead of ethdevice in preparation of the DM move.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agonet: axi_emac: Pass private structure to phyread/phywrite
Michal Simek [Wed, 9 Dec 2015 13:44:38 +0000 (14:44 +0100)]
net: axi_emac: Pass private structure to phyread/phywrite

Prepare for move to DM.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agonet: axi_emac: Put iobase to private structure
Michal Simek [Wed, 9 Dec 2015 13:39:42 +0000 (14:39 +0100)]
net: axi_emac: Put iobase to private structure

Saving iobase directly to private structure helps with moving to DM.
There is an option to load iobase from pdata but it is additional load.
Pointer to private structure is available all the time.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agonet: axi_emac: Pass directly pointer to register space
Michal Simek [Wed, 9 Dec 2015 13:36:31 +0000 (14:36 +0100)]
net: axi_emac: Pass directly pointer to register space

Simplify mdio_wait function by passing regs directly.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agonet: axi_emac: Show phy address instead of register content
Michal Simek [Wed, 9 Dec 2015 09:54:53 +0000 (10:54 +0100)]
net: axi_emac: Show phy address instead of register content

Fix debug message.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agonet: axi_emac: Fix parentheses around operand !
Michal Simek [Wed, 28 Oct 2015 10:00:47 +0000 (11:00 +0100)]
net: axi_emac: Fix parentheses around operand !

Fix these compilation warning by proper grouping:
In function 'axi_dma_init': drivers/net/xilinx_axi_emac.c:391:7:
warning: suggest parentheses around operand of '!' or change '&' to '&&'
or '!' to '~' [-Wparentheses]
    if (!(in_be32(&priv->dmatx->control) |
        ^
In function 'axiemac_send': drivers/net/xilinx_axi_emac.c:501:21:
warning: suggest parentheses around operand of '!' or change '&' to '&&'
or '!' to '~' [-Wparentheses]
  while (timeout && (!in_be32(&priv->dmatx->status) &

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agomicroblaze: Enable MICREL_KSZ9021
Michal Simek [Thu, 14 Jan 2016 08:15:33 +0000 (09:15 +0100)]
microblaze: Enable MICREL_KSZ9021

To solve enabling ETH_DM where ksz90x1_reg_field is defined only when
additional Micrel type is defined.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agomicroblaze: Wire-up debug_uart in asm
Michal Simek [Thu, 10 Dec 2015 11:55:39 +0000 (12:55 +0100)]
microblaze: Wire-up debug_uart in asm

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agomicroblaze: Remove unused I2C macros
Michal Simek [Wed, 9 Dec 2015 12:02:10 +0000 (13:02 +0100)]
microblaze: Remove unused I2C macros

There is no i2c driver in the current u-boot.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agomicroblaze: Enable PHYLIB via Kconfig
Michal Simek [Tue, 8 Dec 2015 14:01:31 +0000 (15:01 +0100)]
microblaze: Enable PHYLIB via Kconfig

Cleanup board configuration.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agomicroblaze: Do not print eth device when DM_ETH is enabled
Michal Simek [Tue, 8 Dec 2015 14:39:24 +0000 (15:39 +0100)]
microblaze: Do not print eth device when DM_ETH is enabled

Doing the same fix as is done for ARM by:
"Avoid calling print_eths() with driver model"
(sha1: ff97380015b6b5d7d6267417a1cd6fc0e67b81bc)

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agomicroblaze: Enable uart16550 DM by default
Michal Simek [Wed, 9 Dec 2015 11:50:05 +0000 (12:50 +0100)]
microblaze: Enable uart16550 DM by default

Microblaze is uses uartlite or uart16550 as console drivers.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoserial: uartlite: Add uartlite to Kconfig
Michal Simek [Wed, 9 Dec 2015 11:50:05 +0000 (12:50 +0100)]
serial: uartlite: Add uartlite to Kconfig

- Move config option out of board file.
- Remove uartlite address from config file

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Thomas Chou <thomas@wytron.com.tw>
8 years agoserial: uartlite: Add support for debug console
Michal Simek [Mon, 14 Dec 2015 15:55:10 +0000 (16:55 +0100)]
serial: uartlite: Add support for debug console

Add support for debug console.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Thomas Chou <thomas@wytron.com.tw>
8 years agoserial: uartlite: Move driver to DM
Michal Simek [Tue, 1 Dec 2015 13:24:20 +0000 (14:24 +0100)]
serial: uartlite: Move driver to DM

Enable SPL DM too.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Thomas Chou <thomas@wytron.com.tw>
8 years agomicroblaze: Move baudrate setting out driver selection
Michal Simek [Wed, 9 Dec 2015 11:42:16 +0000 (12:42 +0100)]
microblaze: Move baudrate setting out driver selection

Preparation of moving to DM. Uartlite ignores baudrate setting.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agomicroblaze: Remove CONSOLE_ARG
Michal Simek [Wed, 9 Dec 2015 11:40:37 +0000 (12:40 +0100)]
microblaze: Remove CONSOLE_ARG

Take it from DT instead.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: xilinx-ppc4xx-generic: Update xparameters.h
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:15 +0000 (11:24 +0100)]
ppc: xilinx-ppc4xx-generic: Update xparameters.h

-Remove UART address (It is now part of the dts).
-Include dummy ns16550 clock
-Fix address to last test

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoconfigs/xilinx-ppc440-generic: Typos and size
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:18 +0000 (11:24 +0100)]
configs/xilinx-ppc440-generic: Typos and size

-Fix typos (runnining -> running)
-Increase default size

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoconfigs/xilinx-ppc405-generic: Typos and size
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:17 +0000 (11:24 +0100)]
configs/xilinx-ppc405-generic: Typos and size

-Fix typos (runnining -> running)
-Increase default size

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: dts: Add device tree for xilix-ppc4xx-generic
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 12:47:46 +0000 (13:47 +0100)]
ppc: dts: Add device tree for xilix-ppc4xx-generic

Add device tree example file for xilinx-ppc440-generic and
xilinx-ppc405-generic

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: xilinx-ppc405-generic: Cleanout header files
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:14 +0000 (11:24 +0100)]
ppc: xilinx-ppc405-generic: Cleanout header files

Now that there is only one header file for all ppc405 files, merge
header files.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: xilinx-ppc440-generic: Cleanout header files
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:13 +0000 (11:24 +0100)]
ppc: xilinx-ppc440-generic: Cleanout header files

Now that there is only one header file for all ppc440 files, merge
header files.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: ppc405: ppc405-generic_flash_defconfig
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:12 +0000 (11:24 +0100)]
ppc: ppc405: ppc405-generic_flash_defconfig

Remove redundant defconfig file. Boot via flash can be configured via
Kconfig.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: ppc440: ppc440-generic_flash_defconfig
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:11 +0000 (11:24 +0100)]
ppc: ppc440: ppc440-generic_flash_defconfig

Remove redundant defconfig file. Boot via flash can be configured via
Kconfig.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: pp440-generic: Simplify Makefile
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:10 +0000 (11:24 +0100)]
ppc: pp440-generic: Simplify Makefile

As a result of the specific board removal, the Makefiles can be
simplified.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: pp405-generic: Simplify Makefile
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:09 +0000 (11:24 +0100)]
ppc: pp405-generic: Simplify Makefile

As a result of the specific board removal, the Makefiles can be
simplified.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agomailaddr: Update mail address
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:08 +0000 (11:24 +0100)]
mailaddr: Update mail address

The old mail address will stop working soon.
Update it all the files

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years ago.mailmap: Add all the mail alias for Ricardo Ribalda
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:07 +0000 (11:24 +0100)]
.mailmap: Add all the mail alias for Ricardo Ribalda

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoxilinx-ppc440: Remove support for v5fx30teval
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:06 +0000 (11:24 +0100)]
xilinx-ppc440: Remove support for v5fx30teval

It is just a specialized version of xilinx-ppc440

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: xilinx-ppc405: Remove support for fx12mm
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:05 +0000 (11:24 +0100)]
ppc: xilinx-ppc405: Remove support for fx12mm

It is just a specialized version of the xilinx-ppc405

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoppc: xilinx-ppc440: Remove support for ml507
Ricardo Ribalda Delgado [Tue, 26 Jan 2016 10:24:04 +0000 (11:24 +0100)]
ppc: xilinx-ppc440: Remove support for ml507

ml507 is just a specialized version of the xilinx-ppc440-generic

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
8 years agoMerge branch 'master' of http://git.denx.de/u-boot-sunxi
Tom Rini [Tue, 26 Jan 2016 22:45:37 +0000 (17:45 -0500)]
Merge branch 'master' of git.denx.de/u-boot-sunxi

8 years agomvtwsi: Fix breakage introduced by "Fix mvtwsi not working on sun6i and newer sunxi...
Hans de Goede [Tue, 26 Jan 2016 15:51:14 +0000 (16:51 +0100)]
mvtwsi: Fix breakage introduced by "Fix mvtwsi not working on sun6i and newer sunxi SoCs"

"Fix mvtwsi not working on sun6i and newer sunxi SoCs" includes the following:

@@ -189,7 +200,8 @@ static int twsi_start(struct i2c_adapter *adap, int expected_status)
  /* globally set TWSIEN in case it was not */
  twsi_control_flags |= MVTWSI_CONTROL_TWSIEN;
  /* assert START */
- writel(twsi_control_flags | MVTWSI_CONTROL_START, &twsi->control);
+ twsi_control_flags |= MVTWSI_CONTROL_START | MVTWSI_CONTROL_CLEAR_IFLG;
+ writel(twsi_control_flags, &twsi->control);
  /* wait for controller to process START */
  return twsi_wait(adap, expected_status);
 }

The modification of twsi_control_flags done here was introduced while
merging to fix a line > 80 chars, but twsi_control_flags is a global variable
and should not be modified like this here, this commit fixes this, restoring
mvtwsi functionality.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Bananapro: Set LDO4 to 2.5V
Hans de Goede [Fri, 22 Jan 2016 13:55:47 +0000 (14:55 +0100)]
sunxi: Bananapro: Set LDO4 to 2.5V

According to the Bananapro schematic VDD25-SATA either comes from a
dedicated WL2003E25-5 LTO, or it is connected to LDO4 via a
0 Ohm resistor.

In practice it seems that LDO4 is used, so enable it and set it to 2.5V.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: power: axp818: Enable support for ALDOs
Chen-Yu Tsai [Tue, 12 Jan 2016 06:42:40 +0000 (14:42 +0800)]
sunxi: power: axp818: Enable support for ALDOs

Previously, AXP818 ALDO support was partially added to Kconfig, but
never enabled in the board file, nor properly set or configured in
Kconfig. The boards continue to work because the AXP818 is designed
to pair with the A83T/H8, and the default voltages match the reference
design's requirements.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: h8_homlet_v2: Drop LDO settings from defconfig
Chen-Yu Tsai [Tue, 12 Jan 2016 06:42:39 +0000 (14:42 +0800)]
sunxi: h8_homlet_v2: Drop LDO settings from defconfig

The LDO settings in this defconfig are either wrong (ALDOs must not be 0)
or the same as Kconfig defaults.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agopower: axp818: Add support for DLDO and ELDO regulators
Chen-Yu Tsai [Tue, 12 Jan 2016 06:42:38 +0000 (14:42 +0800)]
power: axp818: Add support for DLDO and ELDO regulators

AXP818 provides an array of LDOs to provide power to various peripherals.
None of these regulators are critical.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agopower: axp: merge separate DLDO functions into 1
Chen-Yu Tsai [Tue, 12 Jan 2016 06:42:37 +0000 (14:42 +0800)]
power: axp: merge separate DLDO functions into 1

Instead of one function for each DLDO regulator, make 1 function that
takes an extra "index". Since the control bits for the DLDO regulators
are contiguous, this makes the function very simple. This removes a lot
of duplicate code.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agopower: axp818: Remove duplicate register definition macros
Chen-Yu Tsai [Tue, 12 Jan 2016 06:42:36 +0000 (14:42 +0800)]
power: axp818: Remove duplicate register definition macros

Some of the register definitions are duplicated. Drop them.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Add suport for A83T based Banana-pi M3 Board
Vishnu Patekar [Mon, 11 Jan 2016 17:21:00 +0000 (01:21 +0800)]
sunxi: Add suport for A83T based Banana-pi M3 Board

Add dts and defconfig for Banana-pi M3 board.

It has 2G LPDDR3, UART, ethernet, USB, HDMI, USB Sata, MIPI DSI,
mic, AP6212 Wifi, etc on it.
It is paired with AXP813 PMIC which is almost same as AXP818.

Signed-off-by: Vishnu Patekar <vishnupatekar0510@gmail.com>
[hdegoede@redhat.com: rename to Sinovoip_BPI_M3_defconfig/sun8i-a83t-sinovoip-bpi-m3.dts]
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Add support for LPDDR3 for A83T
Vishnu Patekar [Mon, 11 Jan 2016 17:20:59 +0000 (01:20 +0800)]
sunxi: Add support for LPDDR3 for A83T

Banana-pi M3 has LPDDR3 DRAM. this adds support for LPDDR3 for A83T.
Mostly the timing parameters are different from DDR3.

Signed-off-by: Vishnu Patekar <vishnupatekar0510@gmail.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Groundwork to support new dram type for A83T
Vishnu Patekar [Mon, 11 Jan 2016 17:20:58 +0000 (01:20 +0800)]
sunxi: Groundwork to support new dram type for A83T

Different A83T boards have different DRAM types. Banapi M3 has LPDDR3,
Allwinner Homlet v1.2 has DDR3.

This adds groundwork to support for new DRAM type for A83T.

Introduce CONFIG_DRAM_TYPE, It'll be 3 for DDR3 and 7 for LPDDR3, must
be set in respective board defconfig.

Signed-off-by: Vishnu Patekar <vishnupatekar0510@gmail.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Redundant code cleanup from a83t dram init
Vishnu Patekar [Mon, 11 Jan 2016 17:20:57 +0000 (01:20 +0800)]
sunxi: Redundant code cleanup from a83t dram init

This removes the redundant lines of code from mctl_sys_init.

Signed-off-by: Vishnu Patekar <vishnupatekar0510@gmail.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Enable booting non-secure and virtualization for H3
Chen-Yu Tsai [Wed, 6 Jan 2016 07:13:09 +0000 (15:13 +0800)]
sunxi: Enable booting non-secure and virtualization for H3

Now that we support PSCI and various security switches, we can let
U-boot boot Linux into non-secure and HYP mode.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Support PSCI ops on Allwinner H3
Chen-Yu Tsai [Wed, 6 Jan 2016 07:13:08 +0000 (15:13 +0800)]
sunxi: Support PSCI ops on Allwinner H3

H3 has the same power sequencing procedure as the A31/A31s, which
includes the power clamps.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Support H3 CCU security switches
Chen-Yu Tsai [Wed, 6 Jan 2016 07:13:07 +0000 (15:13 +0800)]
sunxi: Support H3 CCU security switches

H3's CCU includes some switches which disable non-secure access to some
of the more critical clock controls, such as MBUS, PLLs, and main
platform busses.

Configure them to enable non-secure access.

For now the only SoC that has this feature is the H3. For other
platforms just use a default (weak) empty function so things do
not break.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Support Secure Memory Touch Arbiter (SMTA) in sun8i H3
Chen-Yu Tsai [Wed, 6 Jan 2016 07:13:06 +0000 (15:13 +0800)]
sunxi: Support Secure Memory Touch Arbiter (SMTA) in sun8i H3

Secure Memory Touch Arbiter is the same thing as the TrustZone
Protection Controller found on A31/A31s.

Access to many peripherals on the H3 can be controlled by the SMTA,
and the settings default to secure access only.

This patch supports the new settings, and sets them to allow non-secure
access.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
8 years agosunxi: Implement poweroff support for axp221 pmic
Hans de Goede [Sun, 20 Dec 2015 15:14:31 +0000 (16:14 +0100)]
sunxi: Implement poweroff support for axp221 pmic

Adds poweroff support for axp221 pmic.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Ian Campbell <ijc@hellion.org.uk>
8 years agosunxi: Implement poweroff support for axp209 pmic
Michael van Slingerland [Sun, 13 Dec 2015 12:17:31 +0000 (13:17 +0100)]
sunxi: Implement poweroff support for axp209 pmic

Adds poweroff support for axp209 pmic.

Signed-off-by: Michael van Slingerland <michael@deviousops.nl>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Ian Campbell <ijc@hellion.org.uk>
8 years agosunxi: Implement poweroff support for axp152 pmic
Hans de Goede [Sun, 20 Dec 2015 15:10:01 +0000 (16:10 +0100)]
sunxi: Implement poweroff support for axp152 pmic

Adds poweroff support for axp152 pmic.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Ian Campbell <ijc@hellion.org.uk>
8 years agoMerge branch 'master' of git://git.denx.de/u-boot-video
Tom Rini [Tue, 26 Jan 2016 14:48:07 +0000 (09:48 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-video

8 years agovideo: add CONFIG_I2C_EDID and disable CONFIG_DISPLAY by default
Anatolij Gustschin [Mon, 25 Jan 2016 16:17:22 +0000 (17:17 +0100)]
video: add CONFIG_I2C_EDID and disable CONFIG_DISPLAY by default

Enabling CONFIG_DISPLAY breaks building for some architectures
(microblaze-generic), so we disable CONFIG_DISPLAY in Kconfig
by default and enable this option in defconfigs. CONFIG_DISPLAY
depends on CONFIG_I2C_EDID, so add and enable it in defconfigs, too.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Reported-by: Bin Meng <bmeng.cn@gmail.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
8 years agomips: asm/io.h: Add in <linux/bug.h>
Tom Rini [Mon, 25 Jan 2016 23:52:23 +0000 (18:52 -0500)]
mips: asm/io.h: Add in <linux/bug.h>

As part of the bug.h / BUILD_BUG_* clean up, this file was missed.

Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agoMerge branch 'master' of git://git.denx.de/u-boot-usb
Tom Rini [Mon, 25 Jan 2016 22:23:19 +0000 (17:23 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-usb

8 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Tom Rini [Mon, 25 Jan 2016 21:45:00 +0000 (16:45 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

8 years agousb: kbd: Prevent out of bound access
Marek Vasut [Mon, 25 Jan 2016 21:00:44 +0000 (22:00 +0100)]
usb: kbd: Prevent out of bound access

Scan code 0x39 is CapsLock, which is not a printable character and thus
is not covered by either usb_kbd_numkey_shifted[] or usb_kbd_numkey[].
Fix the scan code check to avoid looking it up in either of the arrays.

Signed-off-by: Marek Vasut <marex@denx.de>
8 years agousb: add clock support for generic EHCI
Masahiro Yamada [Mon, 25 Jan 2016 06:00:36 +0000 (15:00 +0900)]
usb: add clock support for generic EHCI

This driver is designed in a generic manner, so clocks should be
handled genericly as well.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agopowerpc/board/t4240rdb: Enable VID support
Ying Zhang [Fri, 22 Jan 2016 04:15:13 +0000 (12:15 +0800)]
powerpc/board/t4240rdb: Enable VID support

The fuse status register provides the values from on-chip
voltage ID efuses programmed at the factory. These values
define the voltage requirements for the chip. u-boot reads
FUSESR and translates the values into the appropriate
commands to set the voltage output value of an external
voltage regulator.

Signed-off-by: Ying Zhang <b40530@freescale.com>
Reviewed-by: York Sun <york.sun@nxp.com>
8 years agoboard/freescale/common: Check IR chip mode for VID support
Ying Zhang [Fri, 22 Jan 2016 04:15:12 +0000 (12:15 +0800)]
board/freescale/common: Check IR chip mode for VID support

IR chip on all the boards are required to be used in Intel mode
to support VID. VDD will not be adjusted if IR chip is used in
other modes.

Signed-off-by: Ying Zhang <b40530@freescale.com>
Reviewed-by: York Sun <york.sun@nxp.com>
8 years agoarch/powperpc: Fix start_align due to use of __ffs64() instead ffs64()
Ashish kumar [Fri, 22 Jan 2016 10:20:10 +0000 (15:50 +0530)]
arch/powperpc: Fix start_align due to use of __ffs64() instead ffs64()

Incorrect DDR law was created in case of B4860qds after commit
2d2f490d. Return value of ffs64() differs from __ffs64(), eg.
    ffs64(0x80000000) = 0x20
    __ffs64(0x80000000) = 0x1f
As a result of this change, callers need to adjust the expected
return value by removing -1.

Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
8 years agopowerpc: mpc85xx: Move set_liodns, setup_portals to common boot seq
Prabhakar Kushwaha [Fri, 22 Jan 2016 09:04:44 +0000 (14:34 +0530)]
powerpc: mpc85xx: Move set_liodns, setup_portals to common boot seq

Users migrating Freescale's PowerPC SoC U-Boot code to their custom
board, often overlook the need to execute set_liodns() and
setup_portals() being called by platform files.

So Move set_liodns() and setup_portals() to common u-boot boot
sequence

Signed-off-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
8 years agocheckpatch: ignore request to use ether_addr_copy()
Stephen Warren [Fri, 13 Nov 2015 16:03:00 +0000 (09:03 -0700)]
checkpatch: ignore request to use ether_addr_copy()

The Linux kernel, from which checkpatch originates, contains function
ether_addr_copy() to copy Ethernet MAC addresses, and checkpatch warns
that it should be used in preference to memcpy() where appropriate.
U-Boot doesn't contain ether_addr_copy(), so tell checkpatch not to issue
this warning.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Tested-by: Anand Moon <linux.amoon@gmail.com>
Reviewed-by: Anand Moon <linux.amoon@gmail.com>
8 years agoMerge branch 'master' of git://git.denx.de/u-boot-imx
Tom Rini [Mon, 25 Jan 2016 15:40:38 +0000 (10:40 -0500)]
Merge branch 'master' of git://git.denx.de/u-boot-imx

8 years agons16550: zap the rockchip serial compatible string
Thomas Chou [Mon, 14 Dec 2015 12:45:09 +0000 (20:45 +0800)]
ns16550: zap the rockchip serial compatible string

Zap the rockchip serial compatible string, because rockchip
serial has "snps,dw-apb-uart" compatible string in the dts.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agons16550: replace with binding files from Linux kernel
Thomas Chou [Mon, 14 Dec 2015 12:45:08 +0000 (20:45 +0800)]
ns16550: replace with binding files from Linux kernel

Replace ns16550.txt with binding files from Linux kernel. As suggested
by Stephen Warren, we should keep the directory structure, filenames,
and file content identical to the bindings in the Linux kernel.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Acked-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
8 years agoOMAP: Define CONFIG_OMAP3_GPIO_6 on omap3_logic
Adam Ford [Fri, 22 Jan 2016 10:40:58 +0000 (04:40 -0600)]
OMAP: Define CONFIG_OMAP3_GPIO_6 on omap3_logic

Since we are manipulating GPIO 189 to determine the board type, we
need to enable the GPIO Bank 6.

Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoigep00x0: remove #undef CONFIG_BOOTDELAY
Ladislav Michl [Thu, 21 Jan 2016 10:35:58 +0000 (11:35 +0100)]
igep00x0: remove #undef CONFIG_BOOTDELAY

Do not undefine CONFIG_BOOTDELAY, so board can boot without user
intervention.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Acked-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
8 years agoopenrisc: Fix build errors
Bin Meng [Mon, 25 Jan 2016 09:53:13 +0000 (01:53 -0800)]
openrisc: Fix build errors

With kernel.org toolchain, it reports:

  CC      arch/openrisc/lib/board.o
  arch/openrisc/lib/board.c:56:2: error: 'console_init_f' undeclared here (not in a function)
  arch/openrisc/lib/board.c: In function 'board_init':
  arch/openrisc/lib/board.c:120:2: warning: implicit declaration of function 'console_init_r'
  make[1]: *** [arch/openrisc/lib/board.o] Error 1
  make: *** [arch/openrisc/lib] Error 2

Include console.h will fix this.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
8 years agonet: eepro100: Fix build warnings
Bin Meng [Mon, 25 Jan 2016 09:26:26 +0000 (01:26 -0800)]
net: eepro100: Fix build warnings

When building katmai, it reports quite a lot

  warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]

Fix this by casting the dev->iobase with u_long.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agopowerpc: tqm834x: Fix build warnings in initdram()
Bin Meng [Mon, 25 Jan 2016 08:29:55 +0000 (00:29 -0800)]
powerpc: tqm834x: Fix build warnings in initdram()

With gcc 4.9, it produces the following warnings:

  CC      board/tqc/tqm834x/tqm834x.o
  board/tqc/tqm834x/tqm834x.c: In function 'initdram':
  board/tqc/tqm834x/tqm834x.c:325:12: warning: iteration 3u invokes undefined behavior [-Waggressive-loop-optimizations]
      (((base + size - 1) >> CSBNDS_EA_SHIFT) &
              ^
  board/tqc/tqm834x/tqm834x.c:80:2: note: containing loop
      for(cs = 0; cs < 4; ++cs) {
      ^

There is an integer overflow when cs = 3. To fix it, change
parameters of set_cs_bounds() to ulong.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
8 years agosh: sh7753evb: Fix build error
Bin Meng [Mon, 25 Jan 2016 05:45:46 +0000 (21:45 -0800)]
sh: sh7753evb: Fix build error

Currently buildman fails to build sh7753evb and reports the following:

  board/renesas/sh7753evb/built-in.o: In function 'init_gether_mdio':
  board/renesas/sh7753evb/sh7753evb.c:94: undefined reference to 'PMB_ADDR_BASE'
  board/renesas/sh7753evb/sh7753evb.c:94: undefined reference to 'PMB_DATA_BASE'
  board/renesas/sh7753evb/sh7753evb.c:94: undefined reference to 'mk_pmb_addr_val'
  board/renesas/sh7753evb/sh7753evb.c:94: undefined reference to 'mk_pmb_data_val'
  make: *** [u-boot] Error 1

The fix is to wrap any codes that access these macros with CONFIG_SH_32BIT.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
8 years agobug.h: move BUILD_BUG_* defines to include/linux/bug.h
Masahiro Yamada [Sun, 24 Jan 2016 14:27:48 +0000 (23:27 +0900)]
bug.h: move BUILD_BUG_* defines to include/linux/bug.h

BUILD_BUG_* macros have been defined in several headers.  It would
be nice to collect them in include/linux/bug.h like Linux.

This commit is cherry-picking useful macros from include/linux/bug.h
of Linux 4.4.

I did not import BUILD_BUG_ON_MSG() because it would not work if it
is used with include/common.h in U-Boot.  I'd like to postpone it
until the root cause (the "error()" macro in include/common.h causes
the name conflict with "__attribute__((error()))") is fixed.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoRevert "devicetree: use wildcard to clean arch subdir"
Masahiro Yamada [Sat, 23 Jan 2016 18:50:02 +0000 (03:50 +0900)]
Revert "devicetree: use wildcard to clean arch subdir"

This reverts commit 67871a595873930a0a536b1685e5caac53766701.

Since that commit, out-of-tree cleaning emits lots of warnings.

$ make O=foo clean
make[1]: Entering directory `/home/masahiro/workspace/u-boot/foo'
../dts/../arch/arm/dts/Makefile:209: warning: overriding commands for target `dtbs'
../dts/../arch/arc/dts/Makefile:15: warning: ignoring old commands for target `dtbs'
../dts/../arch/microblaze/dts/Makefile:13: warning: overriding commands for target `dtbs'
../dts/../arch/arm/dts/Makefile:209: warning: ignoring old commands for target `dtbs'
../dts/../arch/mips/dts/Makefile:14: warning: overriding commands for target `dtbs'
../dts/../arch/microblaze/dts/Makefile:13: warning: ignoring old commands for target `dtbs'
../dts/../arch/nios2/dts/Makefile:13: warning: overriding commands for target `dtbs'
../dts/../arch/mips/dts/Makefile:14: warning: ignoring old commands for target `dtbs'
../dts/../arch/powerpc/dts/Makefile:13: warning: overriding commands for target `dtbs'
../dts/../arch/nios2/dts/Makefile:13: warning: ignoring old commands for target `dtbs'
../dts/../arch/sandbox/dts/Makefile:14: warning: overriding commands for target `dtbs'
../dts/../arch/powerpc/dts/Makefile:13: warning: ignoring old commands for target `dtbs'
../dts/../arch/x86/dts/Makefile:22: warning: overriding commands for target `dtbs'
../dts/../arch/sandbox/dts/Makefile:14: warning: ignoring old commands for target `dtbs'
make[1]: Leaving directory `/home/masahiro/workspace/u-boot/foo'

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agonet: zynq_gem: Use shared wait_for_bit
Mateusz Kulikowski [Sat, 23 Jan 2016 10:54:33 +0000 (11:54 +0100)]
net: zynq_gem: Use shared wait_for_bit

Use existing library function to poll bit(s).
Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
8 years agousb: ehci-mx6: Use shared wait_for_bit
Mateusz Kulikowski [Sat, 23 Jan 2016 10:54:32 +0000 (11:54 +0100)]
usb: ehci-mx6: Use shared wait_for_bit

Use existing library function to poll bit(s).

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
8 years agousb: ohci-lpc32xx: Use shared wait_for_bit
Mateusz Kulikowski [Sat, 23 Jan 2016 10:54:31 +0000 (11:54 +0100)]
usb: ohci-lpc32xx: Use shared wait_for_bit

Use existing library function to poll bit(s).

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Tested-by: Sylvain Lemieux <slemieux@tycoint.com>
8 years agousb: dwc2: Use shared wait_for_bit
Mateusz Kulikowski [Sat, 23 Jan 2016 10:54:30 +0000 (11:54 +0100)]
usb: dwc2: Use shared wait_for_bit

Use existing library function to poll bit(s).

Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
8 years agolib: Add wait_for_bit
Mateusz Kulikowski [Sat, 23 Jan 2016 10:54:29 +0000 (11:54 +0100)]
lib: Add wait_for_bit

Add function to poll register waiting for specific bit(s).
Similar functions are implemented in few drivers - they are almost
identical and can be generalized.
Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agocommon/console.c: Remove unused inline functions
Tom Rini [Thu, 21 Jan 2016 14:10:26 +0000 (09:10 -0500)]
common/console.c: Remove unused inline functions

clang-3.8 reports that these functions are unused, remove them.  As this
is the last part of CONFIG_MODEM_SUPPORT_DEBUG, drop that from README.

Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agopart: Drop duplication declaration of block_dev_desc_t
Simon Glass [Thu, 21 Jan 2016 03:12:07 +0000 (20:12 -0700)]
part: Drop duplication declaration of block_dev_desc_t

This is already defined in ide.h, which part.h includes. So we don't need
the duplicate typedef. At least with my old blackfin gcc 4.3.5 tool chain,
this causes an error.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Andreas Bießmann <andreas.devel@googlemail.com>
8 years agoenv_mmc: support overriding mmc dev from board code
Clemens Gruber [Wed, 20 Jan 2016 14:43:37 +0000 (15:43 +0100)]
env_mmc: support overriding mmc dev from board code

This enables boards to choose where to/from the environment should be
saved/loaded. They can then for example support using the same device
(dynamically) from which the bootloader was launched to load and save
env data and do not have to define CONFIG_SYS_MMC_ENV_DEV statically.

In my use case, the environment needs to be on the same device I
booted from. It can be the eMMC or an optional SD card.
I therefore would override mmc_get_env_dev in the board code, read the
CPU registers to determine where we booted from and return the
corresponding device index.

Cc: Tom Rini <trini@konsulko.com>
Cc: Stephen Warren <swarren@nvidia.com>
Cc: Tim Harvey <tharvey@gateworks.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Clemens Gruber <clemens.gruber@pqgruber.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoserial: Remove serial_putc_raw_dev
Tom Rini [Wed, 20 Jan 2016 12:23:05 +0000 (07:23 -0500)]
serial: Remove serial_putc_raw_dev

clang-3.8 reports that serial_putc_raw_dev in serial_ns16550.c is
unused.  Further investigation shows that we have 3 places that
implement this function and no callers, remove.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
8 years agobootm: fix size arg of flush_cache() in bootm_load_os().
Purna Chandra Mandal [Wed, 20 Jan 2016 08:37:39 +0000 (14:07 +0530)]
bootm: fix size arg of flush_cache() in bootm_load_os().

Variable _load_end_ points to end address of uncompressed buffer
(*not* uncomress_buffer_end / sizeof(ulong)), so multipling uncompressed
size with sizeof(ulong) is grossly incorrect in flush_cache().
It might lead to access of address beyond valid memory range and hang the CPU.

Tested on MIPS architecture by using compressed(gzip, lzma)
and uncompressed uImage.

Signed-off-by: Purna Chandra Mandal <purna.mandal@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
8 years agoarm, powerpc: Update cc-version tests to check for cc-name as well
Tom Rini [Wed, 20 Jan 2016 01:39:02 +0000 (20:39 -0500)]
arm, powerpc: Update cc-version tests to check for cc-name as well

For compatibility clang will report some gcc version.  However since we
are checking gcc versions in order to then fail to build, we should
limit these tests only to when we are using gcc and not clang.

Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agokbuild: Add clang detection
Tom Rini [Wed, 20 Jan 2016 01:39:01 +0000 (20:39 -0500)]
kbuild: Add clang detection

Adapted from:

>From 5631d9c429857194bd55d7bcd8fa5bdd1a9899a3 Mon Sep 17 00:00:00 2001
From: Michal Marek <mmarek@suse.com>
Date: Wed, 19 Aug 2015 17:36:41 +0200
Subject: [PATCH 1/1] kbuild: Fix clang detection

We cannot detect clang before including the arch Makefile, because that
can set the default cross compiler. We also cannot detect clang after
including the arch Makefile, because powerpc wants to know about clang.
Solve this by using an deferred variable. This costs us a few shell
invocations, but this is only a constant number.

Reported-by: Behan Webster <behanw@converseincode.com>
Reported-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Michal Marek <mmarek@suse.com>
in the Linux kernel.

This will allow us to make better decisions about when to run tests
later on for gcc features.

Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agoRemove the cmd_ prefix from command files
Simon Glass [Mon, 18 Jan 2016 03:53:52 +0000 (20:53 -0700)]
Remove the cmd_ prefix from command files

Now that they are in their own directory, we can remove this prefix.
This makes it easier to find a file since the prefix does not get in the
way.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
Acked-by: Stefan Roese <sr@denx.de>
Acked-by: Przemyslaw Marczak <p.marczak@samsung.com>
8 years agoMove all command code into its own directory
Simon Glass [Mon, 18 Jan 2016 03:53:51 +0000 (20:53 -0700)]
Move all command code into its own directory

There are a lot of unrelated files in common, including all of the commands.
Moving them into their own directory makes them easier to find and is more
logical.

Some commands include non-command code, such as cmd_scsi.c. This should be
sorted out at some point so that the function can be enabled with or without
the associated command.

Unfortunately, with m68k I get this error:

m68k:  +   M5329AFEE
+arch/m68k/cpu/mcf532x/start.o: In function `_start':
+arch/m68k/cpu/mcf532x/start.S:159:(.text+0x452): relocation truncated to fit: R_68K_PC16 against symbol `board_init_f' defined in .text.board_init_f section in common/built-in.o

I hope someone can shed some light on what this means. I hope it isn't
depending on the position of code in the image.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
Acked-by: Stefan Roese <sr@denx.de>
Acked-by: Przemyslaw Marczak <p.marczak@samsung.com>
8 years agoimx: spl: enable CONFIG_SPL_WATCHDOG_SUPPORT
Peng Fan [Mon, 4 Jan 2016 12:27:27 +0000 (20:27 +0800)]
imx: spl: enable CONFIG_SPL_WATCHDOG_SUPPORT

This commit 4bdcbe60a142b08eefccb0e326a37ba81d3389e8 removes reset_cpu
which breaks SPL build when DEBUG macro defined.

"
arch/arm/lib/built-in.o: In function `do_reset':
~/uboot/arch/arm/lib/reset.c:45: undefined reference to `reset_cpu'
scripts/Makefile.spl:244: recipe for target 'spl/u-boot-spl' failed
"
Enable CONFIG_SPL_WATCHDOG_SUPPORT to fix this issue.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Marek Vasut <marex@denx.de>
Cc: Tim Harvey <tharvey@gateworks.com>
Acked-by: Eric Nelson <eric@nelint.com>
8 years agoimx: mx7: default enable MDIO open drain
Peng Fan [Mon, 4 Jan 2016 05:16:41 +0000 (13:16 +0800)]
imx: mx7: default enable MDIO open drain

The management data input/output (MDIO) requires open-drain,
i.MX7D TO1.0 ENET MDIO pin has no open drain, but TO1.1 supports
this feature. So to TO1.1, need to enable open drain by setting
bits GPR0[8:7] for TO1.1.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
8 years agoimx: mx6ul/sx: fix mmdc_ch0 clk calculation
Peng Fan [Wed, 6 Jan 2016 03:06:31 +0000 (11:06 +0800)]
imx: mx6ul/sx: fix mmdc_ch0 clk calculation

Check "Figure 19-5. BUS clock generation" of i.MX 6SoloX Applications
Processor Reference Manual and "Figure 18-5. BUS clock generation" of
i.MX 6UltraLite Applications Processor Reference Manual. If mmdc clk
sources from pll4_main_clk(pll_audio), the calculation is wrong.

Fix mmdc_ch0 clk calculation. Also add PLL_AUDIO/VIDEO support
for decode_pll.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
8 years agoimx: mx6: add more entry for mxc_ccm_reg
Peng Fan [Wed, 6 Jan 2016 03:06:30 +0000 (11:06 +0800)]
imx: mx6: add more entry for mxc_ccm_reg

Add more entries for structure mxc_ccm_reg.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Eric Nelson <eric@nelint.com>
Cc: Stefano Babic <sbabic@denx.de>
8 years agoimx: mx7dsabresd: support nand
Peng Fan [Tue, 22 Dec 2015 09:04:24 +0000 (17:04 +0800)]
imx: mx7dsabresd: support nand

Add pinmux settings.
Add related macro definitions.
Nand pin conflicts with emmc, so if want to enable nand, need to do
hardware rework. After hardware rework, define CONFIG_NAND_MXS in
board header file.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
8 years agoimx: nand: update GPMI NAND driver to support MX7
Peng Fan [Tue, 22 Dec 2015 09:04:23 +0000 (17:04 +0800)]
imx: nand: update GPMI NAND driver to support MX7

Update GPMI NAND driver and BCH head file to support i.MX7

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
8 years agoimx: apbh_dma: Update APBH-DMA for MX7D
Peng Fan [Tue, 22 Dec 2015 09:04:22 +0000 (17:04 +0800)]
imx: apbh_dma: Update APBH-DMA for MX7D

Update APBH-DMA driver and head files to support i.MX7D

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
8 years agoimx: mx6ulevk: add CONFIG_SPI_FLASH_STMICRO
Peng Fan [Tue, 19 Jan 2016 07:13:52 +0000 (15:13 +0800)]
imx: mx6ulevk: add CONFIG_SPI_FLASH_STMICRO

Add CONFIG_SPI_FLASH_STMICRO to let qspi driver can detect the
qspi chips.
"
=> sf probe
SF: Detected N25Q256 with page size 256 Bytes, erase size 64 KiB, total 32 MiB
"

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Jagan Teki <jteki@openedev.com>
Cc: Stefano Babic <sbabic@denx.de>
Reviewed-by: Stefano Babic <sbabic@denx.de>