platform/kernel/u-boot.git
12 years agopowerpc/85xx: Refactor some defines out of corenet_ds.h
Kumar Gala [Wed, 31 Aug 2011 14:50:13 +0000 (09:50 -0500)]
powerpc/85xx: Refactor some defines out of corenet_ds.h

Move some SoC/board specific defines out of corenet_ds.h and into the
corresponding P3041DS/P4080DS/P5020.h.

We moved CONFIG_MMC, CONFIG_PCIE3, & CONFIG_FSL_NGPIXIS because the P3060
SoC/reference board does not have these devices and it will share the same
board code.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agofm-eth: Add ability for board code to disable a port
Kumar Gala [Wed, 14 Sep 2011 17:01:35 +0000 (12:01 -0500)]
fm-eth: Add ability for board code to disable a port

The SoC configuration may have more ports enabled than a given board
actually can utilize.  Add a routinue that allows the board code to
disable a port that it knows isn't being used.

fm_disable_port() needs to be called before cpu_eth_init().

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8548: Add workaround for erratum NMG_LBC103
Kumar Gala [Mon, 3 Oct 2011 13:37:57 +0000 (08:37 -0500)]
powerpc/mpc8548: Add workaround for erratum NMG_LBC103

The erratum NMG_LBC103 is LBIU3 in MPC8548 errata document.
Any local bus transaction may fail during LBIU resynchronization
process when the clock divider [CLKDIV] is changing. Ensure there
is no transaction on the local bus for at least 100 microseconds
after changing clock divider LCRR[CLKDIV].

Refer to the erratum LBIU3 of mpc8548.

Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8548: Add workaround for erratum NMG_DDR120
Kumar Gala [Fri, 16 Sep 2011 14:54:30 +0000 (09:54 -0500)]
powerpc/mpc8548: Add workaround for erratum NMG_DDR120

Erratum NMG_DDR120 (DDR19 in MPC8548 errata document) applies to some
early version silicons. The default settings of the DDR IO receiver
biasing may not work at cold temperature. When a failure occurs,
a DDR input latches an incorrect value. The workaround will set the
receiver to an acceptable bias point.

Signed-off-by: Gong Chen
Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc85xxcds: Fix PCI speed
chenhui zhao [Thu, 15 Sep 2011 06:52:34 +0000 (14:52 +0800)]
powerpc/mpc85xxcds: Fix PCI speed

The CDS uses PCICLK as SYSCLK. The PCICLK should be 33333333Hz or 66666666Hz.

Signed-off-by: Ebony Zhu <ebony.zhu@freescale.com>
Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8548cds: Fix booting message
chenhui zhao [Tue, 6 Sep 2011 16:41:14 +0000 (16:41 +0000)]
powerpc/mpc8548cds: Fix booting message

Align the output for PCI. Replace "PCI" with "PCI1".

Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com>
12 years agopowerpc/p4080: Add support for secure boot flow
Ruchika Gupta [Wed, 15 Dec 2010 17:02:08 +0000 (17:02 +0000)]
powerpc/p4080: Add support for secure boot flow

Pre u-boot Flow:
1. User loads the u-boot image in flash
2. PBL/Configuration word is used to create LAW for Flash at 0xc0000000
   (Please note that ISBC expects all these addresses, images to be
    validated, entry point etc within 0 - 3.5G range)
3. ISBC validates the u-boot image, and passes control to u-boot
   at 0xcffffffc.

Changes in u-boot:
1. Temporarily map CONFIG_SYS_MONITOR_BASE to the 1M
   CONFIG_SYS_PBI_FLASH_WINDOW in AS=1.
   (The CONFIG_SYS_PBI_FLASH_WINDOW is the address map for the flash
    created by PBL/configuration word within 0 - 3.5G memory range. The
    u-boot image at this address has been validated by ISBC code)
2. Remove TLB entries for 0 - 3.5G created by ISBC code
3. Remove the LAW entry for the CONFIG_SYS_PBI_FLASH_WINDOW created by
   PBL/configuration word after switch to AS = 1

Signed-off-by: Ruchika Gupta <ruchika.gupta@freescale.com>
Signed-off-by: Kuldip Giroh <kuldip.giroh@freescale.com>
Acked-by: Wood Scott-B07421 <B07421@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Add Secure Boot support on P1010RDB for NOR, NAND & SPIFLASH
Ruchika Gupta [Thu, 9 Jun 2011 03:52:48 +0000 (22:52 -0500)]
powerpc/85xx: Add Secure Boot support on P1010RDB for NOR, NAND & SPIFLASH

Signed-off-by: Ruchika Gupta <ruchika.gupta@freescale.com>
Signed-off-by: Kuldip Giroh <kuldip.giroh@freescale.com>
12 years agopowerpc/85xx: Add PBL & SECUREBOOT support on P3041/P5020DS boards
Kumar Gala [Sat, 9 Apr 2011 18:43:55 +0000 (13:43 -0500)]
powerpc/85xx: Add PBL & SECUREBOOT support on P3041/P5020DS boards

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/p2041rdb: remove watch dog related codes
Shaohui Xie [Fri, 23 Sep 2011 01:18:12 +0000 (09:18 +0800)]
powerpc/p2041rdb: remove watch dog related codes

CPLD 2.2 removed board watch dog support due to the limitation of CPLD
capacity after adding all the requested features, such as switch overriding.
There is no pin-compatible upgrade part available for current PCB design.
So remove codes related to it.

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/p2041rdb: updated description of cpld command
Shaohui Xie [Thu, 22 Sep 2011 09:27:29 +0000 (17:27 +0800)]
powerpc/p2041rdb: updated description of cpld command

According to CPLD 2.2, the default configuration is changed, so updated the
description of CPLD command, otherwise it will confusing.

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/p2041rdb: add more ddr frequencies support
Shaohui Xie [Thu, 22 Sep 2011 03:46:12 +0000 (11:46 +0800)]
powerpc/p2041rdb: add more ddr frequencies support

This table covers DDR frequencies from 666 to 1666. Frequencies 666, 833,
1000, 1066 and 1333 were verified on this board with SO-DIMM
(UG51U6400N8SU-ACF).

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/p2041rdb: set sysclk according to status of physical switch SW1
Shaohui Xie [Tue, 13 Sep 2011 09:55:11 +0000 (17:55 +0800)]
powerpc/p2041rdb: set sysclk according to status of physical switch SW1

P2041RDB supports 3 sysclk frequencies, it's selected by SW1[6~8],
software need to read the SW1 status to decide what the sysclk needs.

SW1[8~6] : frequency
0 0 1 : 83.3MHz
0 1 0 : 100MHz
others: 66.667MHz

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/p2041rdb: update cpld reset command according to CPLD 2.0
Shaohui Xie [Tue, 13 Sep 2011 09:51:39 +0000 (17:51 +0800)]
powerpc/p2041rdb: update cpld reset command according to CPLD 2.0

CPLD 2.0 provides a new register which bit[0] is set to '1' will reset
board with initializing the CPLD registers to default values. And add
bit[6] of register at offset 0x5 to use to enable flash bank selection.

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8349emds: Migrate from spd_sdram to unified DDR driver
York Sun [Fri, 26 Aug 2011 18:32:45 +0000 (11:32 -0700)]
powerpc/mpc8349emds: Migrate from spd_sdram to unified DDR driver

Update MPC8349EMDS to use unified DDR driver instead of spd_sdram.c.
The unified driver can initialize data using DDR controller. No need to
use DMA if just to initialze for ECC.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc83xx: Migrate from spd_sdram to unified DDR driver
York Sun [Fri, 26 Aug 2011 18:32:44 +0000 (11:32 -0700)]
powerpc/mpc83xx: Migrate from spd_sdram to unified DDR driver

Unified DDR driver is maintained for better performance, robustness and bug
fixes. Upgrading to use unified DDR driver for MPC83xx takes advantage of
overall improvement. It requires changes for board files to customize
platform-dependent parameters.

To utilize the unified DDR driver, a board needs to define CONFIG_FSL_DDRx
in the header file. No more boards will be accepted without such definition.

Note: the workaround for erratum DDR6 for the very old MPC834x Rev 1.0/1.1
and MPC8360 Rev 1.1/1.2 parts is not migrated to unified driver.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8xxx: Add DDR2 to unified DDR driver
York Sun [Fri, 26 Aug 2011 18:32:43 +0000 (11:32 -0700)]
powerpc/mpc8xxx: Add DDR2 to unified DDR driver

DDR2 has different ODT table and values. Adding table according to Samsung
application note.

Fix additive latency calculation to avoid interger underflow.

Also converted typedef dynamic_odt_t to struct dynamic_odt.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8xxx: Fix picos_to_mclk() and get_memory_clk_period_ps()
York Sun [Fri, 26 Aug 2011 18:32:42 +0000 (11:32 -0700)]
powerpc/mpc8xxx: Fix picos_to_mclk() and get_memory_clk_period_ps()

Reduce the calculation error to 1ps.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8xxx: Add SPD EEPROM address for single controller 2 slots
York Sun [Fri, 26 Aug 2011 18:32:41 +0000 (11:32 -0700)]
powerpc/mpc8xxx: Add SPD EEPROM address for single controller 2 slots

The two slots on the same controller have different addresses.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8xxx: Fix DDR code for empty first DIMM slot and enable DQS_en
York Sun [Fri, 26 Aug 2011 18:32:40 +0000 (11:32 -0700)]
powerpc/mpc8xxx: Fix DDR code for empty first DIMM slot and enable DQS_en

Check second DIMM slot in case the first one is empty.
Honor DQS enable option for SDRAM mode register.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Refactor P2041RDB to use common p_corenet files
Kumar Gala [Tue, 30 Aug 2011 22:40:11 +0000 (17:40 -0500)]
powerpc/85xx: Refactor P2041RDB to use common p_corenet files

The P2041RDB has almost identical setup for TLB, LAWS, and PCI with
other P-Series CoreNet platforms.

The only difference between P2041RDB & P3041DS/P4080DS/P5020DS is the
CPLD vs PIXIS FPGA which we can handle via some simple #ifdefs in the
TLB and LAW setup tables.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: refactor common P-Series CoreNet files for FSL boards
Kumar Gala [Tue, 30 Aug 2011 22:29:23 +0000 (17:29 -0500)]
powerpc/85xx: refactor common P-Series CoreNet files for FSL boards

We currently support 4 SoC/Boards from the P-Series of QorIQ SoCs that
are based on the 'CoreNet' Architecture: P2041RDB, P3041DS, P4080DS, and
P5020DS.  There is a significant amount of commonality shared between
these boards that we can refactor into common code:

* Initial LAW setup
* Initial TLB setup
* PCI setup

We start by moving the shared code between P3041DS, P4080DS, and P5020DS
into a common directory to be shared with other P-Series CoreNet boards.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Enable CMD_REGINFO on corenet boards
Kumar Gala [Wed, 31 Aug 2011 14:16:02 +0000 (09:16 -0500)]
powerpc/85xx: Enable CMD_REGINFO on corenet boards

Useful for various debug to know how various regsters might be set
in a human readable form.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: p2041rdb - Remove unused 'execute' perm in TLB entries
Kumar Gala [Tue, 30 Aug 2011 13:42:34 +0000 (08:42 -0500)]
powerpc/85xx: p2041rdb - Remove unused 'execute' perm in TLB entries

We shouldn't be setting execute permissions on TLB entries that will not
actually have any code run from them.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Fix USB protocol definitions for P1020RDB
Ramneek Mehresh [Wed, 24 Aug 2011 13:52:44 +0000 (19:22 +0530)]
powerpc/85xx: Fix USB protocol definitions for P1020RDB

USB protocol macros (CONFIG_USB_EHCI ...) to be included only when
CONFIG_HAS_FSL_DR_USB is defined for a board. Presence of USB DR controller
should be declared along with the underlying protocol used in the controller

Signed-off-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/corenet_ds: Use separated speed tables for UDIMM and RDIMM
York Sun [Wed, 24 Aug 2011 16:40:27 +0000 (09:40 -0700)]
powerpc/corenet_ds: Use separated speed tables for UDIMM and RDIMM

RDIMM has different timing parameters from UDIMM. Create new tables for
RDIMMs. Single-, dual- and quad-rank RDIMMs have been verified with speeds
from 800 to 1333MT/s. Speed table expands to include 1600MT/s for future
use. Single- and quad-rank RDIMM entries are copied into UDIMM tables for
future use.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8xxx: Move DDR RCW overriding to common code
York Sun [Wed, 24 Aug 2011 16:40:26 +0000 (09:40 -0700)]
powerpc/mpc8xxx: Move DDR RCW overriding to common code

DDR RCW varies at different speeds. It is common for all platform. Move it
out from corenet_ds.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8xxx: Extend CWL table
York Sun [Wed, 24 Aug 2011 16:40:25 +0000 (09:40 -0700)]
powerpc/mpc8xxx: Extend CWL table

Extend CAS write Latency (CWL) table to comply with DDR3 spec

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Cleanup how SVR_MAJ() is defined on MPC8536
Kumar Gala [Wed, 24 Aug 2011 14:14:16 +0000 (09:14 -0500)]
powerpc/85xx: Cleanup how SVR_MAJ() is defined on MPC8536

The MPC8536 seems to use only 3 bits for the major revision field in the
SVR rather than the 4 bits used by all other processors.  The most
significant bit is used as a mfg code on MPC8536.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Cleanup extern in corenet_ds board code
Kumar Gala [Mon, 1 Aug 2011 15:39:45 +0000 (10:39 -0500)]
powerpc/85xx: Cleanup extern in corenet_ds board code

Move extern of pci_of_setup() into corenet_ds.h

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/p2041rdb: Add ethernet support on P2041RDB board
Mingkai Hu [Tue, 19 Jul 2011 08:20:13 +0000 (16:20 +0800)]
powerpc/p2041rdb: Add ethernet support on P2041RDB board

Add support for RGMII, SGMII and XAUI Ethernet on P2041RDB board.

The five dTSEC can be routed to two on-board RGMII phy, three on-board
SGMII phy or four SGMII phy on SGMII riser card according to different
serdes protocol configuration and board lane configuration. Also updated
the device tree to direct the Fmac MAC to the correct PHY.

Removed CONFIG_SYS_FMAN_FW as its not used anywhere.

Signed-off-by: Mingkai Hu <Mingkai.hu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Add networking support to P1023RDS
Roy Zang [Fri, 4 Feb 2011 19:42:45 +0000 (13:42 -0600)]
powerpc/85xx: Add networking support to P1023RDS

The P1023 has two 1G ethernet controllers the first can run in
SGMII, RGMII, or RMII.  The second can only do SGMII & RGMII.

We need to setup a for SoC & board registers based on our various
configuration for ethernet to function properly on the board.

Removed CONFIG_SYS_FMAN_FW as its not used anywhere.

Signed-off-by: Roy Zang <tie-fei.zang@freescale.com>
Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Signed-off-by: Lei Xu <B33228@freescale.com>
Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com>
Signed-off-by: Shaohui Xie <b21989@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/hydra: Add ethernet support on P5020/P3041 DS boards
Timur Tabi [Wed, 20 Oct 2010 20:44:17 +0000 (15:44 -0500)]
powerpc/hydra: Add ethernet support on P5020/P3041 DS boards

Add support for RGMII, SGMII, and XAUI (10Gb) Ethernet on P3041DS &
P5020DS ("Hydra").

The lane_to_slot[] array is initialized dynamically, since board switches
can be used to control the muxing of SERDES lanes to slots.

The BRDCFG1 PIXIS register is used to route the MII bus to the appropriate
slot.  The SERDES configuration is queried to help determine the routing
between MACs and slot/phy combination.

If a XAUI card is inserted, muxing for that card is enabled and never
turned off.  The PHY address for the 10G XAUI card depends on the slot in
which it's inserted.  If it's in slot 1, the address is 4.  If it's in
slot 2, the address is 0.

Update the MDIO routing in the P3041DS and P5020DS device trees based on
the board-level muxing.  The SERDES configuration determines which
SGMII/XGMII boards are located in which slots, and so the MDIO bus needs
to be muxed correctly whenever talking to a PHY connected to any Fman MAC.
The Fman Ethernet nodes in the device tree also need to be routed to the
correct PHYs.

Removed CONFIG_SYS_FMAN_FW as its not used anywhere.

Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com>
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Add FMan ethernet support to P4080DS
Andy Fleming [Wed, 20 Oct 2010 20:35:16 +0000 (15:35 -0500)]
powerpc/85xx: Add FMan ethernet support to P4080DS

Add support for RGMII, SGMII, and XAUI (10Gb) Ethernet on P4080DS.

The board supports add-on cards for SGMII and XAUI functionality.  Which
slots on the board these cards are in is a function of the SERDES option
selected and muxes on the board.

Additionally because of the high-configurablity which MDIO bus one is
connected to is "selected" via an FPGA register.  We create dummy MDIO
bus for the phy layer and hide the mux manipulation in this dummy layer.

Add fman fdt helper function in board common code it'll be used by several
freescale boards that do various muxing of the MDIO signals based on which
controller/interface one is trying to talk to.

Removed CONFIG_SYS_FMAN_FW as its not used anywhere.

Signed-off-by: Mingkai Hu <Mingkai.hu@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Add support for FMan ethernet in Independent mode
Kumar Gala [Wed, 13 Apr 2011 13:37:44 +0000 (08:37 -0500)]
powerpc/85xx: Add support for FMan ethernet in Independent mode

The Frame Manager (FMan) on QorIQ SoCs with DPAA (datapath acceleration
architecture) is the ethernet contoller block.  Normally it is utilized
via Queue Manager (Qman) and Buffer Manager (Bman).  However for boot
usage the FMan supports a mode similar to QE or CPM ethernet collers
called Independent mode.

Additionally the FMan block supports multiple 1g and 10g interfaces as a
single entity in the system rather than each controller being managed
uniquely.  This means we have to initialize all of Fman regardless of
the number of interfaces we utilize.

Different SoCs support different combinations of the number of FMan as
well as the number of 1g & 10g interfaces support per Fman.

We add support for the following SoCs:
 * P1023 - 1 Fman, 2x1g
 * P4080 - 2 Fman, each Fman has 4x1g and 1x10g
 * P204x/P3041/P5020 - 1 Fman, 5x1g, 1x10g

Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Roy Zang <tie-fei.zang@freescale.com>
Signed-off-by: Dai Haruki <dai.haruki@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com>
Signed-off-by: Lei Xu <B33228@freescale.com>
Signed-off-by: Mingkai Hu <Mingkai.hu@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Shaohui Xie <b21989@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mpc8548cds: Cleanup mpc8548cds.c
Zhao Chenhui [Wed, 24 Aug 2011 05:20:24 +0000 (13:20 +0800)]
powerpc/mpc8548cds: Cleanup mpc8548cds.c

Remove unnecessary or dead code/includes.

Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/mp: add support for discontiguous cores
Timur Tabi [Fri, 5 Aug 2011 21:15:24 +0000 (16:15 -0500)]
powerpc/mp: add support for discontiguous cores

Some SOCs have discontiguously-numbered cores, and so we can't determine the
valid core numbers via the FRR register any more.  We define
CPU_TYPE_ENTRY_MASK to specify a discontiguous core mask, and helper functions
to process the mask and enumerate over the set of valid cores.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: corenet_ds - Remove unused 'execute' perm in TLB entries
Kumar Gala [Thu, 4 Aug 2011 06:39:18 +0000 (01:39 -0500)]
powerpc/85xx: corenet_ds - Remove unused 'execute' perm in TLB entries

We shouldn't be setting execute permissions on TLB entries that will not
actually have any code run from them.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agofdt: Add new fdt_create_phandle helper
Kumar Gala [Mon, 1 Aug 2011 05:25:20 +0000 (00:25 -0500)]
fdt: Add new fdt_create_phandle helper

Add a helper function that will return a phandle value for the given
node.  If the node doesn't have a phandle already one will be created.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Gerald Van Baren <vanbaren@cideas.com>
12 years agofdt: Rename fdt_create_phandle to fdt_set_phandle
Kumar Gala [Mon, 1 Aug 2011 05:23:23 +0000 (00:23 -0500)]
fdt: Rename fdt_create_phandle to fdt_set_phandle

The old fdt_create_phandle didn't actually create a phandle it just
set one.  We'll introduce a new helper that actually does creation.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Gerald Van Baren <vanbaren@cideas.com>
12 years agopowerpc/85xx: Fix compile warnings/errors if CONFIG_SYS_DPAA_FMAN isn't set
Kumar Gala [Sun, 31 Jul 2011 17:55:39 +0000 (12:55 -0500)]
powerpc/85xx: Fix compile warnings/errors if CONFIG_SYS_DPAA_FMAN isn't set

Add ifdef protection around fman specific code related to device tree
clock setup.  If we dont have CONFIG_SYS_DPAA_FMAN defined we shouldn't
be executing this code.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agofsl_ifc: Add the workaround for erratum IFC A-003399(enabled on P1010)
Poonam Aggrwal [Thu, 7 Jul 2011 15:06:47 +0000 (20:36 +0530)]
fsl_ifc: Add the workaround for erratum IFC A-003399(enabled on P1010)

Issue: Address masking doesn't work properly.
When sum of the base address, defined by BA, and memory bank size,
defined by AM, exceeds 4GB (0xffff_ffff) then AMASKn[AM] doesn't mask
CSPRn[BA] bits.

Impact:
This will impact booting when we are reprogramming CSPR0(BA) and
AMASK0(AMASK) while executing from NOR Flash.

Workaround:
Re-programming of CSPR(BA) and AMASK is done while not executing from NOR
Flash. The code which programs the BA and AMASK is executed from L2-SRAM.

Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/P1010: Add workaround for erratum P1010-A003549 (related to IFC)
Poonam Aggrwal [Wed, 29 Jun 2011 11:02:52 +0000 (16:32 +0530)]
powerpc/P1010: Add workaround for erratum P1010-A003549 (related to IFC)

Issue:
Peripheral connected to IFC_CS3 may hamper booting from IFC.

Impact:
Boot from IFC may not be successful if IFC_CS3 is used.

Workaround:
If IFC_CS3 is used, gate IFC_CS3 while booting from NAND or NOR.
Also Software should select IFC_CS3 using PMUXCR[26:27] = 0x01.

Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agofsl_ifc: Add the workaround for erratum IFC-A002769 (enable on P1010)
Poonam Aggrwal [Thu, 30 Jun 2011 08:00:28 +0000 (03:00 -0500)]
fsl_ifc: Add the workaround for erratum IFC-A002769 (enable on P1010)

Issue:
The NOR-FCM does not support access to unaligned addresses for 16 bit port size

Impact:
When 16 bit port size is used, accesses not aligned to 16 bit address boundary
will result in incorrect data

Workaround:
The workaround is to switch to GPCM mode for NOR Flash access.

Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Expanding the window of CCSRBAR in AS=1 from 4k to 1M
Poonam Aggrwal [Wed, 29 Jun 2011 11:02:50 +0000 (16:32 +0530)]
powerpc/85xx: Expanding the window of CCSRBAR in AS=1 from 4k to 1M

For an IFC Erratum (A-003399) we will need to access IFC registers in
cpu_init_early_f() so expand the TLB covering CCSR to 1M.

Since we need a TLB to cover 1M we move to using TLB1 array for all the
early mappings so we can cover various sizes beyond 4k.

Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Add NAND/NAND_SPL support to P1010RDB
Dipen Dudhat [Thu, 28 Jul 2011 19:47:28 +0000 (14:47 -0500)]
powerpc/85xx: Add NAND/NAND_SPL support to P1010RDB

And various defines to enable NAND support and NAND spl code for the
P1010RDB platform.

Signed-off-by: Dipen Dudhat <Dipen.Dudhat@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agonand: Freescale Integrated Flash Controller NAND support
Dipen Dudhat [Tue, 22 Mar 2011 03:57:39 +0000 (09:27 +0530)]
nand: Freescale Integrated Flash Controller NAND support

Add NAND support (including spl) on IFC, such as is found on the p1010.

Note that using hardware ECC on IFC with small-page NAND (which is what
comes on the p1010rdb reference board) means there will be insufficient
OOB space for JFFS2, since IFC does not support 1-bit ECC.  UBI should
work, as it does not use OOB for anything but ECC.

When hardware ECC is not enabled in CSOR, software ECC is now used.

Signed-off-by: Dipen Dudhat <Dipen.Dudhat@freescale.com>
[scottwood@freescale.com: ECC rework and misc fixes]
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agopowerpc/85xx: Add basic support for P1010RDB
Poonam Aggrwal [Wed, 9 Feb 2011 19:17:53 +0000 (19:17 +0000)]
powerpc/85xx: Add basic support for P1010RDB

Boot methods supported: NOR Flash, SPI Flash and SDCARD
This patch adds the following basic interfaces:
DDR3, eTSEC, DUART, I2C, SD/MMC, USB, SATA, PCIe, NOR Flash, SPI Flash.

P1010RDB Overview
-----------------
1Gbyte DDR3 (on board DDR)
Local Bus (IFC):
32Mbyte 16bit NOR flash
32Mbyte SLC NAND Flash
64KB CPLD device(GPCM interface)
SPI Flash:
128 Mbit SPI Flash memory
SD/MMC:
connector to interface with the SD memory card
SATA:
1 internal SATA connect to 2.5. 160G SATA2 HDD
1 eSATA connector to rear panel
USB 2.0:
x1 USB 2.0 port: connected via a UTMI PHY to Mini-AB interface.
x1 USB 2.0 port: directly connected to Mini-AB interface Ethernet
eTSEC:
eTSEC1: Connected to RGMII PHY VSC8641XKO
eTSEC2: Connected to SGMII PHY VSC8221
eTSEC3: Connected to SGMII PHY VSC8221
eCAN:
Two DB-9 female connectors for Field bus interface
UART:
supports two UARTs up to 115200 bps for console
TDM:
2 FXS ports connected via an external SLIC to the TDM interface.
SLIC:
SPI SLIC
I2C:
Serial EEprom
Real time clock
256 Kbit M24256 I2C EEPROM
PCIe:
PCIe and mPCIe connectors.

Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Dipen Dudhat <dipen.dudhat@freescale.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Signed-off-by: Bhaskar Upadhaya <Bhaskar.Upadhaya@freescale.com>
Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Add support for new P102x/P2020 RDB style boards
Li Yang [Tue, 26 Jul 2011 14:50:46 +0000 (09:50 -0500)]
powerpc/85xx: Add support for new P102x/P2020 RDB style boards

The following boards share a common design but with minor variations
between them:

P1020MSBG-PC
P1020RDB-PC
P1020UTM-PC
P1021RDB-PC
P1024RDB
P1025RDB
P2020RDB-PC

The P1020RDB-PC shares its roots in the existing P1020RDB board design,
however uses DDR3 instead of DDR2.
P2020RDB-PC differs from the P102x RDB-PC with 64-bit DDR and 100Mhz SYSCLK.

Key features on these boards include:
* DDR3
* NOR flash
* NAND flash (on RDB's only)
* SPI flash (on RDB's only)
* SDHC/MMC card slot
* VSC7385 Ethernet switch (on P1020MBG, P1020RDB, & P1021RDB)
* PCIE slot and mini-PCIE slots

As these boards use soldered DDR chips not regular DIMMs, an on-board EEPROM
is used to store SPD data. In case of absent or corrupted SPD, falling back
to timing data embedded in the source code will be used. Raw timing data is
extracted from DDR chip datasheet. Different speeds of DDR are supported
with this approach. ODT option is forced to fit this set of boards, again
because they don't have regular DIMMs.

CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS is defined as 5ms to meet
specification for writing timing.

VSC firmware Address is defined by default in config file for eTSEC1.

SD width is based off DIP switch. DIP switch is detected on the
board by reading i2c bus and setting the appropriate mux values.

Some boards have QE module in the silicon (P1021 and P1025). QE and eLBC
have pins multiplexing. QE function needs to be disabled to access Nor Flash
and CPLD. QE-UEC and QE-UART can be enabled for linux kernel by setting "qe"
in hwconfig. In addition, QE-UEC and QE-TDM also have pins multiplexing, to
enable QE-TDM for linux kernel, set "qe;tdm" in hwconfig. Syntax is as below

'setenv hwconfig qe' to enable QE UEC/UART and disable Nor-Flash/CPLD.
'setenv hwconfig 'qe;tdm'' to enalbe QE TDM and disable Nor-Flash/CPLD.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Zhao Chenhui <b26998@freescale.com>
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Priyanka Jain <Priyanka.Jain@freescale.com>
Signed-off-by: Tang Yuantian <b29983@freescale.com>
Signed-off-by: ramneek.mehresh <ramneek.mehresh@freescale.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Xie Xiaobo <X.Xie@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com>
Signed-off-by: Akhil Goyal <akhil.goyal@freescale.com>
12 years agopowerpc/85xx: relocate CCSR before creating the initial RAM area
Timur Tabi [Wed, 3 Aug 2011 21:30:10 +0000 (16:30 -0500)]
powerpc/85xx: relocate CCSR before creating the initial RAM area

Before main memory (DDR) is initialized, the on-chip L1 cache is used as a
memory area for the stack and the global data (gd_t) structure.  This is
called the initial RAM area, or initram.  The L1 cache is locked and the TLBs
point to a non-existent address (so that there's no chance it will overlap
main memory or any device).  The L1 cache is also configured not to write
out to memory or the L2 cache, so everything stays in the L1 cache.

One of the things we might do while running out of initram is relocate CCSR.
On reset, CCSR is typically located at some high 32-bit address, like
0xfe000000, and this may not be the best place for CCSR.  For example, on
36-bit systems, CCSR is relocated to 0xffe000000, near the top of 36-bit
memory space.

On some future Freescale SOCs, the L1 cache will be forced to write to the
backing store, so we can no longer have the TLBs point to non-existent address.
Instead, we will point the TLBs to an unused area in CCSR.  In order for this
technique to work, CCSR needs to be relocated before the initram memory is
enabled.

Unlike the original CCSR relocation code in cpu_init_early_f(), the TLBs
we create now for relocating CCSR are deleted after the relocation is finished.
cpu_init_early_f() will still need to create a TLB for CCSR (at the new
location) for normal U-Boot purposes.  This is done to keep the impact to
existing U-Boot code minimal and to better isolate the CCSR relocation code.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: introduce and document CONFIG_SYS_CCSRBAR macros
Timur Tabi [Thu, 4 Aug 2011 23:03:41 +0000 (18:03 -0500)]
powerpc/85xx: introduce and document CONFIG_SYS_CCSRBAR macros

Introduce the CONFIG_SYS_CCSRBAR_PHYS_HIGH and CONFIG_SYS_CCSRBAR_PHYS_LOW
macros, which contain the high and low portions of CONFIG_SYS_CCSRBAR_PHYS.
This is necessary for the assembly-language code that relocates CCSR, since
the assembler does not understand 64-bit constants.

CONFIG_SYS_CCSRBAR_PHYS is automatically defined from the
CONFIG_SYS_CCSRBAR_PHYS_HIGH and CONFIG_SYS_CCSRBAR_PHYS_LOW macros, so it
should not be defined in a board header file.  Similarly,
CONFIG_SYS_CCSRBAR_DEFAULT is defined for each SOC in config_mpc85xx.h, so
it should also not be defined in the board header file.

CONFIG_SYS_CCSR_DO_NOT_RELOCATE is a "short-cut" macro that guarantees that
CONFIG_SYS_CCSRBAR_PHYS is set to the same value as CONFIG_SYS_CCSRBAR_DEFAULT,
and so CCSR will not be relocated.

Since CONFIG_SYS_CCSRBAR_DEFAULT is locked to a fixed value, multi-stage U-Boot
builds (e.g. NAND) are required to relocate CCSR only during the last stage
(i.e. the "real" U-Boot).  All other stages should define
CONFIG_SYS_CCSR_DO_NOT_RELOCATE to ensure that CCSR is not relocated.

README is updated with descriptions of all the CONFIG_SYS_CCSRBAR_xxx macros.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Enable internal USB UTMI PHY on p204x/p3041/p50x0
Kumar Gala [Wed, 13 Apr 2011 05:19:10 +0000 (00:19 -0500)]
powerpc/85xx: Enable internal USB UTMI PHY on p204x/p3041/p50x0

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agopowerpc/85xx: Add ULPI and UTMI USB Phy support for P1010/P1014
Ramneek Mehresh [Wed, 23 Mar 2011 09:50:43 +0000 (15:20 +0530)]
powerpc/85xx: Add ULPI and UTMI USB Phy support for P1010/P1014

Add UTMI and ULPI PHY support for USB controller on qoriq series of
processors with internal UTMI PHY implemented, for example P1010/P1014
 - Use both getenv() and hwconfig to get USB phy type till getenv()
   is depricated
 - Introduce CONFIG_SYS_FSL_USB_INTERNAL_UTMI_PHY to specify if soc
   has internal UTMI phy

Signed-off-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Acked-by: Remy Bohmer <linux@bohmer.net>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agoPrepare v2011.09 v2011.09
Wolfgang Denk [Thu, 29 Sep 2011 19:11:15 +0000 (21:11 +0200)]
Prepare v2011.09

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoARM: versatile: delete split_by_variant.sh
Linus Walleij [Sun, 11 Sep 2011 23:25:22 +0000 (01:25 +0200)]
ARM: versatile: delete split_by_variant.sh

Since commit d388298a59ba375c76597b8f95b560afa971a0fb by
Stefano Babic this file is no longer needed so delete it.

Cc: Stefano Babic <sbabic@denx.de>
Cc: Loïc Minier <loic.minier@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
12 years agoRevert "phylib: remove a couple of redundant code lines"
Wolfgang Denk [Wed, 28 Sep 2011 19:02:43 +0000 (21:02 +0200)]
Revert "phylib: remove a couple of redundant code lines"

This reverts commit 041c542219af7f31c372d89b4c7c6f4c8064a8ce.

The lines removed by this commit weren't redundant. The logic is (and
probably should be better commented):

Find the intersection of the advertised capabilities of both sides of
the link (lpa).
From that intersection, find the highest capability we can run at
(that will be the negotiated link).

Now imagine that the intersection (lpa) is (LPA_100HALF | LPA_10FULL).

The code will now set phydev->speed to 100, and phydev->duplex to 1,
but this link does not support 100FULL.

Kudos to Andy Fleming <afleming@gmail.com> for binging this to
attention and for the explanation.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agodoc/README.scrapyard: Update board removal commit IDs
Wolfgang Denk [Wed, 28 Sep 2011 18:42:00 +0000 (20:42 +0200)]
doc/README.scrapyard: Update board removal commit IDs

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Wed, 28 Sep 2011 18:38:21 +0000 (20:38 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

* 'master' of git://git.denx.de/u-boot-arm:
  ARM: remove broken "ixdp425" and "ixpdg425" boards

12 years agoARM: remove broken "ixdp425" and "ixpdg425" boards
Albert ARIBAUD [Thu, 22 Sep 2011 21:55:19 +0000 (21:55 +0000)]
ARM: remove broken "ixdp425" and "ixpdg425" boards

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Acked-by: Stefan Roese <sr@denx.de>
12 years agoASIX: Fix buffer access in asix_get_phy_addr()
Marek Vasut [Fri, 23 Sep 2011 19:13:35 +0000 (21:13 +0200)]
ASIX: Fix buffer access in asix_get_phy_addr()

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Fri, 23 Sep 2011 06:23:25 +0000 (08:23 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

* 'master' of git://git.denx.de/u-boot-arm:
  OMAP3: beagle: Fix build warning in beagle.c

12 years agodoc: provide a correct board_init_r definition path
Vladimir Zapolskiy [Mon, 5 Sep 2011 07:25:04 +0000 (07:25 +0000)]
doc: provide a correct board_init_r definition path

This is a trivial fix in the documentation, which corrects
board_init_r() source reference.

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agoOMAP3: beagle: Fix build warning in beagle.c
Dirk Behme [Thu, 22 Sep 2011 01:53:22 +0000 (01:53 +0000)]
OMAP3: beagle: Fix build warning in beagle.c

Fix build warning

beagle.c:532: warning: initialization from incompatible pointer type

Signed-off-by: Dirk Behme <dirk.behme@googlemail.com>
CC: Jason Kridner <jkridner@beagleboard.org>
CC: Koen Kooi <koen@dominion.thruhere.net>
CC: Joel A Fernandes <agnel.joel@gmail.com>
Cc: Greg Turner <gregturner@ti.com>
CC: Sandeep Paulraj <s-paulraj@ti.com>
Acked-by: Jason Kridner <jkridner@beagleboard.org>
12 years agoPrepare v2011.09-rc2 v2011.09-rc2
Wolfgang Denk [Thu, 22 Sep 2011 19:58:05 +0000 (21:58 +0200)]
Prepare v2011.09-rc2

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoMinor Coding Style Cleanup
Wolfgang Denk [Thu, 22 Sep 2011 19:56:54 +0000 (21:56 +0200)]
Minor Coding Style Cleanup

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agokm/common: fix bug in IVM mac address access
Holger Brunck [Tue, 20 Sep 2011 05:05:55 +0000 (05:05 +0000)]
km/common: fix bug in IVM mac address access

The MAC address stored in the inventory eeprom begins at offset 1.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
cc: Wolfgang Denk <wd@denx.de>

12 years agosf: fix debug format string warning
Vadim Bendebury [Sun, 11 Sep 2011 18:54:48 +0000 (18:54 +0000)]
sf: fix debug format string warning

On some systems, we get a warning when %lu is used with size_t's, so
use the correct format string.

Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agonet: turn name len check into an assert
Mike Frysinger [Sun, 11 Sep 2011 18:49:53 +0000 (18:49 +0000)]
net: turn name len check into an assert

The new sanity check introduces a printf warning for some systems:
eth.c:233: warning: format '%zu' expects type 'size_t', but argument 3 has type 'int'

Rather than tweak the format string, use the new assert() helper instead.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agoignore soc asm-offsets.s
Mike Frysinger [Sun, 11 Sep 2011 18:47:24 +0000 (18:47 +0000)]
ignore soc asm-offsets.s

Recent commit a4814a69d3bca6ee05f4bfc4 cleaned up generation of
asm-offsets.s for SoC dirs, but missed adding it to the ignore
list which makes it show up in `git status`.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agoDrop bogus BOOTFLAG_* definitions
Wolfgang Denk [Tue, 20 Sep 2011 11:18:07 +0000 (13:18 +0200)]
Drop bogus BOOTFLAG_* definitions

There is no code anywhere that references BOOTFLAG_* so remove these
defines.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Heiko Schocher <hs@denx.de>
Cc: Valentin Longchamp <valentin.longchamp@keymile.com>
Cc: Peter Tyser <ptyser@xes-inc.com>
12 years agonet/bootp.c: fix tftp load if autoload environment var isn't set
Peter Korsgaard [Sun, 18 Sep 2011 21:54:46 +0000 (21:54 +0000)]
net/bootp.c: fix tftp load if autoload environment var isn't set

Commit 093498669 (Put common autoload code into auto_load() function)
broke handling of autoload environment variable not being set.
The bootp/dhcp code will just keep on requesting IP address forever
and never start TFTP download.

Fix it by moving TftpStart() outside the conditional like it was before.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Tested-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Simon Glass <sjg@chromium.org>
12 years agoppc4xx: Flush dcache after DDR2 autocalibration with caches on
Stefan Roese [Fri, 16 Sep 2011 10:54:58 +0000 (12:54 +0200)]
ppc4xx: Flush dcache after DDR2 autocalibration with caches on

Flush the dcache before removing the TLB with caches enabled.
Otherwise this might lead to problems later on, e.g. while booting
Linux (as seen on ICON-440SPe).

Signed-off-by: Stefan Roese <sr@denx.de>
12 years agoFix incorrect array size of phy settings for 405EX
Weirich, Bernhard [Thu, 8 Sep 2011 16:27:38 +0000 (18:27 +0200)]
Fix incorrect array size of phy settings for 405EX

Change bd_t->bi_phy* arrays from 1 to 2 for PPC405EX since
405EX has 2 ethernet interfaces.

Signed-off-by: Bernhard Weirich <bernhard.weirich@riedel.net>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agoDA830: Fix Build Warning
Sandeep Paulraj [Tue, 13 Sep 2011 09:56:56 +0000 (09:56 +0000)]
DA830: Fix Build Warning

This commit fixes a build warning in the DA830 EVM build

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoled: remove camel casing of led identifiers globally
Jason Kridner [Sun, 4 Sep 2011 18:40:16 +0000 (14:40 -0400)]
led: remove camel casing of led identifiers globally

Result of running the following command to address Wolfgang's
comment about camel case:

for file in `find . | grep '\.[chS]$'`; do perl -i -pe
's/(green|yellow|red|blue)_LED_(on|off)/$1_led_$2/g' $file; done

Discussion:
http://patchwork.ozlabs.org/patch/84988/

Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Joel A Fernandes <agnel.joel@gmail.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoomap4: fix pad configuration settings for SDP and Panda
Aneesh V [Thu, 8 Sep 2011 15:06:06 +0000 (11:06 -0400)]
omap4: fix pad configuration settings for SDP and Panda

omap4: fix pad configuration settings for SDP and Panda

Signed-off-by: Aneesh V <aneesh@ti.com>
Signed-off-by: Sebastien Jan <s-jan@ti.com>
Signed-off-by: David Anders <x0132446@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoomap4: IO settings
Aneesh V [Thu, 8 Sep 2011 15:05:56 +0000 (11:05 -0400)]
omap4: IO settings

Tuning some IO settings for better performance and power.
And consolidate all such IO settings at one place.

Signed-off-by: Aneesh V <aneesh@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoomap4: make SDRAM init work for ES1.0 silicon
Aneesh V [Thu, 8 Sep 2011 15:05:53 +0000 (11:05 -0400)]
omap4: make SDRAM init work for ES1.0 silicon

SDRAM init was not working on ES1.0 due to a programming
error. A pointer that was passed by value to a function
was set in function emif_get_device_details(), but the effect
wouldn't be seen in the calling function. The issue came
out while testing for ES1.0 because ES1.0 doesn't have any
SDRAM chips connected to CS1

Signed-off-by: Aneesh V <aneesh@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoomap4: factor out common part from board config headers
Aneesh V [Thu, 8 Sep 2011 15:05:49 +0000 (11:05 -0400)]
omap4: factor out common part from board config headers

Factor out common parts from omap4_sdp4430.h and omap4_panda.h
into a new file omap4_common.h

Signed-off-by: Aneesh V <aneesh@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoomap: gpio: Adapt board files to use generic API
Sanjeev Premi [Thu, 8 Sep 2011 14:51:01 +0000 (10:51 -0400)]
omap: gpio: Adapt board files to use generic API

This patch contains updates the sources in the board files
to use the generic API.

Signed-off-by: Sanjeev Premi <premi@ti.com>
12 years agoomap: gpio: generic changes after changing API
Sanjeev Premi [Thu, 8 Sep 2011 14:48:39 +0000 (10:48 -0400)]
omap: gpio: generic changes after changing API

This patch contains the generic changes required after
change to generic API in the previous patch.

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoomap: gpio: Use generic API
Sanjeev Premi [Thu, 8 Sep 2011 14:47:25 +0000 (10:47 -0400)]
omap: gpio: Use generic API

Convert all OMAP specific functions to use the common API
definitions in include/asm/gpio.h. In the process, made
few additional changes:
 - Use -EINVAL consistently. -1 was used in many places.
 - Removed one-liner static functions that were used only
   once. Replaced the content as necessary.
 - Combines implementation of functions omap_get_gpio_dataout()
   and omap_get_gpio_datain(). To do so, new static function
   _get_gpio_direction() was added.

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoOMAP3 Beagle: Minor config cleanup
Sandeep Paulraj [Mon, 5 Sep 2011 15:25:20 +0000 (11:25 -0400)]
OMAP3 Beagle: Minor config cleanup

This patch removes a hardcoded MAC address

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoda830: modify the MEMTEST start and end address
Nagabhushana Netagunte [Sun, 4 Sep 2011 19:08:47 +0000 (15:08 -0400)]
da830: modify the MEMTEST start and end address

Modify the MEMTEST start and end address. The memtest range was overlapping the
CONFIG_SYS_LOAD_ADDR which causes the uImage to be corrupt.Also, modify the
size for which mtest is run to 32MB from 16MB.

Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
Signed-off-by: Nagabhushana Netagunte <nagabhushana.netagunte@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoda830: enable SPI flash boot mode
Nagabhushana Netagunte [Sun, 4 Sep 2011 19:05:38 +0000 (15:05 -0400)]
da830: enable SPI flash boot mode

Enable SPI flash boot mode in configuration file as default.
With the introduction of 456MHz part, SPI operating frequency
will increase and at this frequency SPI does not work correctly.
Hence reduce the default SPI speed to 30MHz from 50MHz.

Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
Signed-off-by: Nagabhushana Netagunte <nagabhushana.netagunte@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoda830: modify the U-Boot prompt string
Nagabhushana Netagunte [Sun, 4 Sep 2011 18:59:01 +0000 (14:59 -0400)]
da830: modify the U-Boot prompt string

Modify U-boot promt string from 'DA830-evm >' to 'U-Boot >' as
there are many variants of da830 based boards which have diffrent
names such as L137, AM1707 etc.

Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
Signed-off-by: Nagabhushana Netagunte <nagabhushana.netagunte@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoARMV7: OMAP3: Add 37xx ESx revision numbers.
Howard D. Gray [Sun, 4 Sep 2011 18:11:17 +0000 (14:11 -0400)]
ARMV7: OMAP3: Add 37xx ESx revision numbers.

OMAP3: Add 37xx ESx revision numbers.

Signed-off-by: Michael Jones <michael.jones@matrix-vision.de>
Signed-off-by: Howard D. Gray <howard.gray@matrix-vision.de>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoARMV7: OMAP: I2C driver: cosmetic: make checkpatch-compatible
Michael Jones [Wed, 27 Jul 2011 18:01:55 +0000 (14:01 -0400)]
ARMV7: OMAP: I2C driver: cosmetic: make checkpatch-compatible

Signed-off-by: Michael Jones <michael.jones@matrix-vision.de>
Acked-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoARMV7: OMAP: Write more than 1 byte at a time in i2c_write
Michael Jones [Sun, 4 Sep 2011 18:01:55 +0000 (14:01 -0400)]
ARMV7: OMAP: Write more than 1 byte at a time in i2c_write

This allows the EEPROM layer to send a single i2c write command
per page, and wait CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS between
i2c write commands.

Signed-off-by: Michael Jones <michael.jones@matrix-vision.de>
Acked-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoOMAP: Add function to get state of a GPIO output
Joel A Fernandes [Sun, 4 Sep 2011 16:10:03 +0000 (11:10 -0500)]
OMAP: Add function to get state of a GPIO output

Read directly from OMAP_GPIO_DATAOUT to get the output state of the GPIO pin

Signed-off-by: Joel A Fernandes <agnel.joel@gmail.com>
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
12 years agoMX25: tx25: Cleanup tx25.h config
Fabio Estevam [Tue, 30 Aug 2011 05:44:15 +0000 (05:44 +0000)]
MX25: tx25: Cleanup tx25.h config

Cleanup tx25.h by removing unnecessary defines and by removing unneeded "1"'s.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
12 years agoMX25: tx25: Fix build by making use of GPIO framework
Fabio Estevam [Mon, 29 Aug 2011 04:27:06 +0000 (04:27 +0000)]
MX25: tx25: Fix build by making use of GPIO framework

Make use of GPIO framework and avoid the following build error:

tx25.c: In function 'tx25_fec_init':
tx25.c:73: error: dereferencing pointer to incomplete type
tx25.c:74: error: dereferencing pointer to incomplete type
tx25.c:75: error: dereferencing pointer to incomplete type
tx25.c:76: error: dereferencing pointer to incomplete type
tx25.c:83: error: dereferencing pointer to incomplete type
tx25.c:84: error: dereferencing pointer to incomplete type
tx25.c:114: error: dereferencing pointer to incomplete type
tx25.c:115: error: dereferencing pointer to incomplete type
tx25.c:116: error: dereferencing pointer to incomplete type
tx25.c:117: error: dereferencing pointer to incomplete type
tx25.c:124: error: dereferencing pointer to incomplete type
tx25.c:125: error: dereferencing pointer to incomplete type
tx25.c:126: error: dereferencing pointer to incomplete type

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoomap3: beagle: Fix build warning
Sanjeev Premi [Mon, 5 Sep 2011 00:25:53 +0000 (00:25 +0000)]
omap3: beagle: Fix build warning

This patch fixes the warning dure to recent changes to the board
configuration:
cmd_i2c.o cmd_i2c.c -c
cmd_i2c.c:109:1: warning: missing braces around initializer
cmd_i2c.c:109:1: warning: (near initialization for 'i2c_no_probes[0]')

Signed-off-by: Sanjeev Premi <premi@ti.com>
Cc: Jason Kridner <jkridner@beagleboard.org>
Acked-by: Jason Kridner <jdk@ti.com>
12 years agoPrepare v2011.09 v2011.09-rc1
Wolfgang Denk [Sun, 11 Sep 2011 19:31:04 +0000 (21:31 +0200)]
Prepare v2011.09

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoMinor coding style cleanup.
Wolfgang Denk [Sun, 11 Sep 2011 19:24:09 +0000 (21:24 +0200)]
Minor coding style cleanup.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoARM: hawkboard: fix compilation of nand_spl
Wolfgang Denk [Sat, 10 Sep 2011 20:26:28 +0000 (22:26 +0200)]
ARM: hawkboard: fix compilation of nand_spl

Fix build problem:

nand_spl/board/davinci/da8xxevm/hawkboard_nand_spl.c: In function 'board_init_f':
nand_spl/board/davinci/da8xxevm/hawkboard_nand_spl.c:132: warning: implicit declaration of function 'nand_boot'
nand_spl/board/davinci/da8xxevm/hawkboard_nand_spl.c:133: warning: 'noreturn' function does return

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Syed Mohammed Khasim <sm.khasim@gmail.com>
Cc: Sughosh Ganu <urwithsughosh@gmail.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
12 years agocm4008, cm41xx: fix build warnings
Wolfgang Denk [Sat, 10 Sep 2011 14:59:02 +0000 (16:59 +0200)]
cm4008, cm41xx: fix build warnings

Fix these:
cm4008.c: In function 'board_eth_init':
cm4008.c:79: warning: implicit declaration of function 'ks8695_eth_initialize'

cm41xx.c: In function 'board_eth_init':
cm41xx.c:79: warning: implicit declaration of function 'ks8695_eth_initialize'

While we are at it, sort include list in netdev.h

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Greg Ungerer <greg.ungerer@opengear.com>
12 years agotegra2: fix warning: "assert" redefined
Wolfgang Denk [Sat, 10 Sep 2011 14:17:25 +0000 (16:17 +0200)]
tegra2: fix warning: "assert" redefined

Commit 21726a7 "Add assert() for debug assertions" caused build
warnings for all tegra2 based boards:

clock.c:36:1: warning: "assert" redefined
In file included from clock.c:29:
include/common.h:144:1: warning: this is the location of the previous definition

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Simon Glass <sjg@chromium.org>
12 years agoARM: hawkboard_nand: fix compilation of nand_spl
Stefano Babic [Fri, 9 Sep 2011 03:09:02 +0000 (03:09 +0000)]
ARM: hawkboard_nand: fix compilation of nand_spl

get_ram_size() is called, but memsize.c is not compiled.

Signed-off-by: Stefano Babic <sbabic@denx.de>
12 years agoKS8695: convert KS8695 eth driver to CONFIG_MULTI_ETH
Greg Ungerer [Sat, 10 Sep 2011 08:40:34 +0000 (18:40 +1000)]
KS8695: convert KS8695 eth driver to CONFIG_MULTI_ETH

Trivial conversion of the ks8695eth driver to a CONFIG_MULTI_ETH type
driver.

Signed-off-by: Greg Ungerer <greg.ungerer@opengear.com>