project/bcm63xx/u-boot.git
12 years agoarm: cam_enc_4xx: Change macro from BOARD_LATE_INIT to CONFIG_BOARD_LATE_INIT
Nobuhiro Iwamatsu [Tue, 17 Apr 2012 16:42:22 +0000 (16:42 +0000)]
arm: cam_enc_4xx: Change macro from BOARD_LATE_INIT to CONFIG_BOARD_LATE_INIT

With almost all the architecture and board BOARD_LATE_INIT does not use.
CONFIG_BOARD_LATE_INIT is used instead.
This changed CONFIG_BOARD_LATE_INIT from BOARD_LATE_INIT.

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
CC: Heiko Schocher <hs@denx.de>
Acked-by: Heiko Schocher <hs@denx.de>
12 years agocm-t35: add I2C multi-bus support
Nikita Kiryanov [Mon, 2 Apr 2012 02:29:31 +0000 (02:29 +0000)]
cm-t35: add I2C multi-bus support

Enable I2C multi-bus support and config I2C muxes for I2C2 and I2C3.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
12 years agoinclude/configs: Remove CONFIG_SYS_64BIT_STRTOUL
Tom Rini [Fri, 13 Apr 2012 12:20:05 +0000 (12:20 +0000)]
include/configs: Remove CONFIG_SYS_64BIT_STRTOUL

This define does not control anything, remove it.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoinclude/configs: Remove CONFIG_SYS_64BIT_VSPRINTF
Tom Rini [Fri, 13 Apr 2012 12:20:04 +0000 (12:20 +0000)]
include/configs: Remove CONFIG_SYS_64BIT_VSPRINTF

This define does not control anything, remove it.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoomap3: Introduce weak misc_init_r
Tom Rini [Fri, 13 Apr 2012 12:20:03 +0000 (12:20 +0000)]
omap3: Introduce weak misc_init_r

Introduce a __weak misc_init_r function that just runs dieid_num_r().
Remove misc_init_r from cm_t35, mcx, omap3_logic and mt_ventoux as this was
all they did for misc_init_r.

Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Ilya Yanok <yanok@emcraft.com>
Cc: Peter Barada <peter.barada@logicpd.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Tom Rini <trini@ti.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
12 years agoomap730p2: Remove empty misc_init_r
Tom Rini [Fri, 13 Apr 2012 12:20:02 +0000 (12:20 +0000)]
omap730p2: Remove empty misc_init_r

We had a do-nothing misc_init_r, remove along with CONFIG_MISC_INIT_R

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoomap5912osk: Remove empty misc_init_r
Tom Rini [Fri, 13 Apr 2012 12:20:01 +0000 (12:20 +0000)]
omap5912osk: Remove empty misc_init_r

We had a do-nothing misc_init_r, remove along with CONFIG_MISC_INIT_R

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoomap4+: Remove CONFIG_ARCH_CPU_INIT
Tom Rini [Fri, 13 Apr 2012 12:20:00 +0000 (12:20 +0000)]
omap4+: Remove CONFIG_ARCH_CPU_INIT

OMAP4/5 had an empty arch_cpu_init() so drop that along with
CONFIG_ARCH_CPU_INIT

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoomap4: Remove CONFIG_SYS_MMC_SET_DEV
Tom Rini [Fri, 13 Apr 2012 12:19:59 +0000 (12:19 +0000)]
omap4: Remove CONFIG_SYS_MMC_SET_DEV

This is only used on !CONFIG_GENERIC_MMC which is false here.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP3: pandora: drop console kernel argument
Grazvydas Ignotas [Thu, 22 Mar 2012 13:49:23 +0000 (13:49 +0000)]
OMAP3: pandora: drop console kernel argument

As ttyS0 is no longer valid for newer OMAP kernels, and pandora serial
cables are not widespread, simply drop console argument. This should
allow booting old and new kernels with default arguments, and those who
need serial can use a boot script on SD card.

Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
12 years agoOMAP3: pandora: revise GPIO configuration
Grazvydas Ignotas [Thu, 22 Mar 2012 13:49:22 +0000 (13:49 +0000)]
OMAP3: pandora: revise GPIO configuration

Update pandora's GPIO setup code with these changes:
- convert to gpiolib
- set up dual voltage GPIOs to match supply of 1.8V by clearing VMODE1
- add GPIO_IO_PWRDNZ configuration for DM3730 variation of pandora
  (required to enable GPIO 126, 127, and 129 I/O cells in DM3730)
- add wifi reset pulse as recommended by wifi chip's manufacturer
- drop configuration of GPIOs that u-boot doesn't need

Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
12 years agoOMAP3: pandora: pin mux updates for DM3730 board variant
Grazvydas Ignotas [Thu, 22 Mar 2012 13:49:21 +0000 (13:49 +0000)]
OMAP3: pandora: pin mux updates for DM3730 board variant

DM3730 needs some additional pin mux configuration for GPIOs
126-129 to work, add it.

Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
12 years agoMakefile: Add a 'checkthumb' rule
Tom Rini [Fri, 16 Mar 2012 06:34:35 +0000 (06:34 +0000)]
Makefile: Add a 'checkthumb' rule

This rule confirms that if we're on ARM and we have enabled THUMB builds
that we have a new enough toolchain to produce a working binary.

Changes in v2:
- Switch to ALL-$(CONFIG_SYS_THUMB_BUILD) in arch/arm/config.mk (Mike F)
- Simplfy checkthumb test after doing the above

Signed-off-by: Tom Rini <trini@ti.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agotools, config.mk: Add gcc-version.sh, cc-version test from Linux
Tom Rini [Fri, 16 Mar 2012 05:27:47 +0000 (05:27 +0000)]
tools, config.mk: Add gcc-version.sh, cc-version test from Linux

Added from Linux - commit fde7d9049e55ab85a390be7f415d74c9f62dd0f9

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP4: enable Thumb build
Aneesh V [Thu, 8 Mar 2012 07:20:22 +0000 (07:20 +0000)]
OMAP4: enable Thumb build

Signed-off-by: Aneesh V <aneesh@ti.com>
12 years agoomap4+: Avoid using __attribute__ ((__packed__))
Aneesh V [Thu, 8 Mar 2012 07:20:21 +0000 (07:20 +0000)]
omap4+: Avoid using __attribute__ ((__packed__))

Avoid using __attribute__ ((__packed__)) unless it's
absolutely necessary. "packed" will remove alignment
requirements for the respective objects and may cause
alignment issues unless alignment is also enforced
using a pragma.

Here, these packed attributes were causing alignment
faults in Thumb build.

Signed-off-by: Aneesh V <aneesh@ti.com>
12 years agoarmv7: Use -march=armv7-a and thereby enable Thumb-2
Aneesh V [Thu, 8 Mar 2012 07:20:20 +0000 (07:20 +0000)]
armv7: Use -march=armv7-a and thereby enable Thumb-2

Enable -march=armv7-a for armv7 platforms if the tool-chain
supports it. This in turn results in Thumb-2 code generated
for these platforms if CONFIG_SYS_THUMB_BUILD is enabled.

Signed-off-by: Aneesh V <aneesh@ti.com>
12 years agoARM: enable Thumb build
Aneesh V [Thu, 8 Mar 2012 07:20:19 +0000 (07:20 +0000)]
ARM: enable Thumb build

Enable Thumb build and ARM-Thumb interworking based on the new
config flag CONFIG_SYS_THUMB_BUILD

Signed-off-by: Aneesh V <aneesh@ti.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agoarmv7: add appropriate headers for assembly functions
Aneesh V [Thu, 8 Mar 2012 07:20:18 +0000 (07:20 +0000)]
armv7: add appropriate headers for assembly functions

Use ENTRY and ENDPROC with assembly functions to ensure
necessary assembler directives for all functions.

Signed-off-by: Aneesh V <aneesh@ti.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agoarm: adapt asm/linkage.h from Linux
Aneesh V [Thu, 8 Mar 2012 07:20:17 +0000 (07:20 +0000)]
arm: adapt asm/linkage.h from Linux

This will add ARM specific over-rides for the defines
from linux/linkage.h

Signed-off-by: Aneesh V <aneesh@ti.com>
Tested-by: Mike Frysinger <vapier@gentoo.org>
12 years agoOMAP5: reset: Use cold reset in case of 5430ES1.0
SRICHARAN R [Mon, 12 Mar 2012 02:25:52 +0000 (02:25 +0000)]
OMAP5: reset: Use cold reset in case of 5430ES1.0

Warm reset is not functional in case of omap5430ES1.0.
So override the weak reset_cpu function to use
cold reset instead.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP3+: reset: Create a common reset layer.
SRICHARAN R [Mon, 12 Mar 2012 19:49:32 +0000 (19:49 +0000)]
OMAP3+: reset: Create a common reset layer.

The reset.S has the function to do a warm reset on OMAP
based socs. Moving this to a reset.c file so that this
acts a common layer to add any reset related functionality
for the future.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agommc: omap5evm: Add eMMC saveenv support
Balaji T K [Mon, 12 Mar 2012 02:25:50 +0000 (02:25 +0000)]
mmc: omap5evm: Add eMMC saveenv support

Save env to eMMC

Signed-off-by: Balaji T K <balajitk@ti.com>
12 years agoomap5: pbias ldo9 turn on
Balaji T K [Mon, 12 Mar 2012 02:25:49 +0000 (02:25 +0000)]
omap5: pbias ldo9 turn on

Add omap5 pbias configuration for mmc1/sd lines
and set voltage for sd data i/o lines

Signed-off-by: Balaji T K <balajitk@ti.com>
12 years agopower: twl6035: add palmas PMIC support
SRICHARAN R [Mon, 12 Mar 2012 02:25:48 +0000 (02:25 +0000)]
power: twl6035: add palmas PMIC support

palmas/TWL6035 is power IC for omap5 evm boards

Signed-off-by: Balaji T K <balajitk@ti.com>
12 years agoarm: omap5: correct boot device mode7 for eMMC
Balaji T K [Mon, 12 Mar 2012 02:25:47 +0000 (02:25 +0000)]
arm: omap5: correct boot device mode7 for eMMC

In OMAP5 Boot device mode of 6 and 7 should be mapped to mmc2/eMMC

Signed-off-by: Balaji T K <balajitk@ti.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoOMAP4/5: emif: Correct the emif power mgt shadow register bit fields.
SRICHARAN R [Mon, 12 Mar 2012 02:25:46 +0000 (02:25 +0000)]
OMAP4/5: emif: Correct the emif power mgt shadow register bit fields.

PD_TIM bit field which specifies the power down timing is defined
to occupy bits 8-11, where as it is actually from 12-15 bits.
So correcting this.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP5: ddr: Change the ddr device name.
SRICHARAN R [Mon, 12 Mar 2012 02:25:45 +0000 (02:25 +0000)]
OMAP5: ddr: Change the ddr device name.

The ddr part name used in OMAP5 ES1.0 soc is a SAMSUNG part and
not a ELPIDA part. So change this.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP5: defconfig: Align the defconfig for 5430 ES1.0
SRICHARAN R [Mon, 12 Mar 2012 02:25:44 +0000 (02:25 +0000)]
OMAP5: defconfig: Align the defconfig for 5430 ES1.0

Adding the nessecary changes for OMAP5430 ES1.0 silicon.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP4/5: device: Add support to get the device type.
SRICHARAN R [Mon, 12 Mar 2012 02:25:43 +0000 (02:25 +0000)]
OMAP4/5: device: Add support to get the device type.

Add support to identify the device as GP/EMU/HS.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP4/5: Make the sysctrl structure common
SRICHARAN R [Mon, 12 Mar 2012 02:25:42 +0000 (02:25 +0000)]
OMAP4/5: Make the sysctrl structure common

Make the sysctrl structure common, so that it can
be used in generic functions across socs.
Also change the base address of the system control module, to
include all the registers and not simply the io regs.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP5: SRAM: Change the SRAM base address.
SRICHARAN R [Mon, 12 Mar 2012 02:25:41 +0000 (02:25 +0000)]
OMAP5: SRAM: Change the SRAM base address.

The full internal SRAM of size 128kb is public in the case of OMAP5 soc.
So change the base address accordingly.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP4/5: Make the silicon revision variable common.
SRICHARAN R [Mon, 12 Mar 2012 02:25:40 +0000 (02:25 +0000)]
OMAP4/5: Make the silicon revision variable common.

The different silicon revision variable names was defined for OMAP4 and
OMAP5 socs. Making the variable common so that some code can be
made generic.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP5: hwinit: Add the missing break statement
SRICHARAN R [Mon, 12 Mar 2012 02:25:39 +0000 (02:25 +0000)]
OMAP5: hwinit: Add the missing break statement

The break statement is missing in init_omap_revision function, resulting
in a wrong revision identification. So fixing this.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP5: palmas: Configure nominal opp vdd values
SRICHARAN R [Mon, 12 Mar 2012 02:25:38 +0000 (02:25 +0000)]
OMAP5: palmas: Configure nominal opp vdd values

The nominal opp vdd values as recommended for
ES1.0 silicon is set for mpu, core, mm domains using palmas.

Also used the right sequence to enable the vcores as per
a previous patch from Nishant Menon, which can be dropped now.
http://lists.denx.de/pipermail/u-boot/2012-March/119151.html

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP5: emif/ddr: Change emif settings as required for ES1.0 silicon.
SRICHARAN R [Mon, 12 Mar 2012 02:25:37 +0000 (02:25 +0000)]
OMAP5: emif/ddr: Change emif settings as required for ES1.0 silicon.

The OMAP5 silicon has new DDR PHY design, which includes a external PHY
as well. So configuring the ext PHY parameters here. Also the EMIF timimg
registers and a couple of DDR mode registers needs to be updated based on
the testing from the actual silicon.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP5: io: Configure the io settings for omap5430 sevm board.
SRICHARAN R [Mon, 12 Mar 2012 02:25:36 +0000 (02:25 +0000)]
OMAP5: io: Configure the io settings for omap5430 sevm board.

The control module provides options to set various signal
integrity parameters like the output impedance, slew rate,
load capacitance for different pad groups. Configure these
as required for the omap5430 sevm board.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP5: board: Add pinmux data for omap5_evm board.
SRICHARAN R [Mon, 12 Mar 2012 02:25:35 +0000 (02:25 +0000)]
OMAP5: board: Add pinmux data for omap5_evm board.

Adding the full pinmux data for OMAP5430 sevm board.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP5: clocks: Change clock settings as required for ES1.0 silicon.
SRICHARAN R [Mon, 12 Mar 2012 02:25:34 +0000 (02:25 +0000)]
OMAP5: clocks: Change clock settings as required for ES1.0 silicon.

Aligning all the clock related settings like the dpll frequencies, their
respective clock outputs, etc to the ideal values recommended for
OMAP5430 ES1.0 silicon.

Signed-off-by: R Sricharan <r.sricharan@ti.com>
12 years agoOMAP3: igep00x0: Reduce lines of code for IGEP-based boards.
Enric Balletbò i Serra [Mon, 5 Mar 2012 11:32:16 +0000 (11:32 +0000)]
OMAP3: igep00x0: Reduce lines of code for IGEP-based boards.

This is rework on config files of IGEP-based boards with the aim to remove
duplicated code to be more maintainable. Basically this patch creates a
common configuration file for both boards and only sets the specific option
in the board config file.

On board files the hardcored mach type was replaced in favour of using the
CONFIG_MACH_TYPE option.

More than 200 duplicated lines have been deleted.

Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com>
12 years agoOMAP4: scale voltage of core before MPU scales
Nishanth Menon [Thu, 1 Mar 2012 14:17:39 +0000 (14:17 +0000)]
OMAP4: scale voltage of core before MPU scales

OMAP4 requires that parent domains scale ahead of dependent domains.
This is due to the restrictions in timing closure. To ensure
a consistent behavior across all OMAP4 SoC, ensure that
vdd_core scale first, then vdd_mpu and finally vdd_iva.

As part of doing this refactor the logic to allow for future
addition of OMAP4470 without much ado. OMAP4470 uses different
SMPS addresses and cannot be introduced in the current code
without major rewrite.

Reported-by: Isabelle Gros <i-gros@ti.com>
Reported-by: Jerome Angeloni <j-angeloni@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
12 years agoOMAP4460: TPS Ensure SET1 is selected after voltage configuration
Nishanth Menon [Thu, 1 Mar 2012 14:17:38 +0000 (14:17 +0000)]
OMAP4460: TPS Ensure SET1 is selected after voltage configuration

TPS SET0/SET1 register is selected by a GPIO pin on OMAP4460 platforms.
Currently we control this pin with a mux configuration as part of
boot sequence.
Current configuration results in the following voltage waveform:
                           |---------------| (SET1 default 1.4V)
                           |               --------(programmed voltage)
                           | <- (This switch happens on mux7,pullup)
vdd_mpu(TPS)         -----/ (OPP boot voltage)
                                             --------- (programmed voltage)
vdd_core(TWL6030)    -----------------------/ (OPP boot voltage)
Problem 1)                |<----- Tx ------>|
   timing violation for a duration Tx close to few milliseconds.
Problem 2) voltage of MPU goes beyond spec for even the highest of MPU OPP.

By using GPIO as recommended as standard procedure by TI, the sequence
changes to:
                                  -------- (programmed voltage)
vdd_mpu(TPS)         ------------/ (Opp boot voltage)
                                   --------- (programmed voltage)
vdd_core(TWL6030)    -------------/ (OPP boot voltage)

NOTE: This does not attempt to address OMAP5 - Aneesh please confirm

Reported-by: Isabelle Gros <i-gros@ti.com>
Reported-by: Jerome Angeloni <j-angeloni@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
12 years agoOMAP3+: Introduce generic logic for OMAP voltage controller
Nishanth Menon [Thu, 1 Mar 2012 14:17:37 +0000 (14:17 +0000)]
OMAP3+: Introduce generic logic for OMAP voltage controller

OMAP Voltage controller is used to generically talk to
PMICs on OMAP3,4,5 over I2C_SR. Instead of replicating code
in multiple SoC code, introduce a common voltage controller
logic which can be re-used from elsewhere.

With this change, we replace setup_sri2c with omap_vc_init which
has the same functionality, and replace the voltage scale
replication in do_scale_vcore and do_scale_tps62361 with
omap_vc_bypass_send_value. omap_vc_bypass_send_value can also
now be used with any configuration of PMIC.

NOTE: Voltage controller controlling I2C_SR is a write-only data
path, so no register read operation can be implemented.

Reported-by: Isabelle Gros <i-gros@ti.com>
Reported-by: Jerome Angeloni <j-angeloni@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
12 years agoARM:OMAP+:MMC: Add parameters to MMC init
Jonathan Solnit [Fri, 24 Feb 2012 11:30:18 +0000 (11:30 +0000)]
ARM:OMAP+:MMC: Add parameters to MMC init

Add parameters to the OMAP MMC initialization function so the board can
mask host capabilities and set the maximum clock frequency.  While the
OMAP supports a certain set of MMC host capabilities, individual boards
may be more restricted and the OMAP may need to be configured to match
the board.  The PRG_SDMMC1_SPEEDCTRL bit in the OMAP3 is an example.

Signed-off-by: Jonathan Solnit <jsolnit@gmail.com>
12 years agokirkwood: add support for Cloud Engines Pogoplug E02
David Purdy [Tue, 27 Mar 2012 16:01:09 +0000 (16:01 +0000)]
kirkwood: add support for Cloud Engines Pogoplug E02

This patch adds support for Cloud Engines Pogoplug E02

Information regarding the CE Pogoplug E02 board can be found at:
http://archlinuxarm.org/platforms/armv5/pogoplug-v2-pinkgray

Signed-off-by: Dave Purdy <david.c.purdy@gmail.com>
Cc: prafulla@marvell.com
Cc: albert.u.boot@aribaud.net
12 years agokirkwood: add NAS62x0 board support
Luka Perkov [Tue, 17 Apr 2012 09:22:17 +0000 (09:22 +0000)]
kirkwood: add NAS62x0 board support

Add support for new boards RaidSonic ICY BOX NAS6210 and NAS6220.

NAS6210 has 1 SATA and 1 eSATA port while NAS6220 has 2 SATA ports.

More information about the boards can be found here:

http://www.raidsonic.de/en/products/nas-systems.php?we_objectID=7036
http://www.raidsonic.de/en/products/nas-systems.php?we_objectID=7515

Signed-off-by: Luka Perkov <uboot@lukaperkov.net>
Signed-off-by: Gerald Kerma <dreagle@doukki.net>
Signed-off-by: Simon Baatz <gmbnomis@gmail.com>
12 years agodevkit3250: add Timll DevKit3250 board initial support
Vladimir Zapolskiy [Thu, 19 Apr 2012 04:33:10 +0000 (04:33 +0000)]
devkit3250: add Timll DevKit3250 board initial support

This change adds a basic support for Embest/Timll DevKit3250 board,
NOR and UART are the only supported peripherals for a moment. The board
doesn't require low-level init, because the initial SDRAM and GPIO
configuration is performed during kickstart bootloader execution.

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
12 years agoserial: add LPC32X0 high-speed UART devices support
Vladimir Zapolskiy [Thu, 19 Apr 2012 04:33:09 +0000 (04:33 +0000)]
serial: add LPC32X0 high-speed UART devices support

This change adds an implementation of high-speed UART found on NXP
LPC32X0 SoCs. Such UARTs are enumerated as UART1, UART2 and UART7.

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
12 years agoarm926ejs: add NXP LPC32x0 cpu series support
Vladimir Zapolskiy [Thu, 19 Apr 2012 04:33:08 +0000 (04:33 +0000)]
arm926ejs: add NXP LPC32x0 cpu series support

This change adds initial support for NXP LPC32x0 SoC series.

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
12 years agoARM: dreamplug: Enable FDT support
Ian Campbell [Mon, 27 Feb 2012 21:19:02 +0000 (21:19 +0000)]
ARM: dreamplug: Enable FDT support

I have tested booting both FDT and non-FDT based Linux kernels (based on
http://marc.info/?l=linux-arm-kernel&m=133002679716986 and
http://marc.info/?l=linux-arm-kernel&m=132328894303581 respectively).

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Jason <jason@lakedaemon.net>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Acked-by: Jason Cooper <jason@lakedaemon.net>
12 years agoMerge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging
Wolfgang Denk [Mon, 30 Apr 2012 16:19:28 +0000 (18:19 +0200)]
Merge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging

* 'agust@denx.de' of git://git.denx.de/u-boot-staging:
  lin_gadget: use common linux/compat.h
  linux/compat.h: rename from linux/mtd/compat.h
  lin_gadget: use common mdelay
  gunzip: rename z{alloc, free} to gz{alloc, free}
  fs/fat: align disk buffers on cache line to enable DMA and cache
  part_dos: align disk buffers on cache line to enable DMA and cache

12 years agoMerge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Mon, 30 Apr 2012 14:55:37 +0000 (16:55 +0200)]
Merge branch 'master' of /home/wd/git/u-boot/custodians

* 'master' of /home/wd/git/u-boot/custodians:
  powerpc/ppc4xx: Remove typedefs for gdsys FPGA
  powerpc/ppc4xx: Fix typo in gdsys_fpga.h
  powerpc/ppc4xx: Update gdsys board configurations
  powerpc/ppc4xx: Support gdsys dlvision-10g hardware 1.20
  powerpc/ppc4xx: Adapt gdsys 405ep boards to platform changes
  powerpc/ppc4xx: Make gdsys 405ep boards reset more generic
  powerpc/ppc4xx: Adjust environment size on neo

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Mon, 30 Apr 2012 14:55:25 +0000 (16:55 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx

* 'master' of git://git.denx.de/u-boot-ppc4xx:
  powerpc/ppc4xx: Remove typedefs for gdsys FPGA
  powerpc/ppc4xx: Fix typo in gdsys_fpga.h
  powerpc/ppc4xx: Update gdsys board configurations
  powerpc/ppc4xx: Support gdsys dlvision-10g hardware 1.20
  powerpc/ppc4xx: Adapt gdsys 405ep boards to platform changes
  powerpc/ppc4xx: Make gdsys 405ep boards reset more generic
  powerpc/ppc4xx: Adjust environment size on neo

12 years agolin_gadget: use common linux/compat.h
Mike Frysinger [Thu, 26 Apr 2012 02:34:44 +0000 (02:34 +0000)]
lin_gadget: use common linux/compat.h

Merge our duplicate definitions with the common header.

Also fix drivers/usb/gadget/s3c_udc_otg_xfer_dma.c to
use min() instead of min_t() since we remove the latter
from compat.h.

Additionally use memalign() directly as the lin_gadget
specific kmalloc() macro is removed from lin_gadget_compat.h
by this patch.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Lukasz Majewski <l.majewski@samsung.com>
12 years agolinux/compat.h: rename from linux/mtd/compat.h
Mike Frysinger [Mon, 9 Apr 2012 13:39:55 +0000 (13:39 +0000)]
linux/compat.h: rename from linux/mtd/compat.h

This lets us use it in more places than just mtd code.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agolin_gadget: use common mdelay
Mike Frysinger [Mon, 9 Apr 2012 13:39:54 +0000 (13:39 +0000)]
lin_gadget: use common mdelay

No need to provide our own mdelay() macro when we have a func for it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agogunzip: rename z{alloc, free} to gz{alloc, free}
Mike Frysinger [Mon, 9 Apr 2012 13:39:53 +0000 (13:39 +0000)]
gunzip: rename z{alloc, free} to gz{alloc, free}

This allows us to add a proper zalloc() func (one that does a zeroing
alloc), and removes duplicate prototypes.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agofs/fat: align disk buffers on cache line to enable DMA and cache
Eric Nelson [Wed, 11 Apr 2012 04:08:53 +0000 (04:08 +0000)]
fs/fat: align disk buffers on cache line to enable DMA and cache

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agopart_dos: align disk buffers on cache line to enable DMA and cache
Eric Nelson [Sat, 3 Mar 2012 12:02:20 +0000 (12:02 +0000)]
part_dos: align disk buffers on cache line to enable DMA and cache

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agoAllow for parallel builds and saved output
Andy Fleming [Tue, 24 Apr 2012 19:33:51 +0000 (19:33 +0000)]
Allow for parallel builds and saved output

The MAKEALL script cleverly runs make with the appropriate options
to use all of the cores on the system, but your average U-Boot build
can't make much use of more than a few cores.  If you happen to have
a many-core server, your builds will leave most of the system idle.

In order to make full use of such a system, we need to build multiple
targets in parallel, and this requires directing make output into
multiple directories. We add a BUILD_NBUILDS variable, which allows
users to specify how many builds to run in parallel.
When BUILD_NBUILDS is set greater than 1, we redefine BUILD_DIR for
each build to be ${BUILD_DIR}/${target}. Also, we make "./build" the
default BUILD_DIR when BUILD_NBUILDS is greater than 1.

MAKEALL now tracks which builds are still running, and when one
finishes, it starts a new build.

Once each build finishes, we run "make tidy" on its directory, to reduce
the footprint.

As a result, we are left with a build directory with all of the built
targets still there for use, which means anyone who wanted to use
MAKEALL as part of a test harness can now do so.

Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agoMerge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Mon, 30 Apr 2012 14:45:59 +0000 (16:45 +0200)]
Merge branch 'master' of /home/wd/git/u-boot/custodians

* 'master' of /home/wd/git/u-boot/custodians:
  powerpc/85xx: don't touch MAS7 on e500v1 when relocating CCSR
  powerpc/85xx: don't display address map size (32-bit vs. 36-bit) during boot
  cmd_bdinfo: display the address map size (32-bit vs. 36-bit)
  PowerPC: correct the SATA for p1/p2 rdb-pc platform
  powerpc/corenet_ds: Slave core in holdoff when boot from SRIO
  powerpc/corenet_ds: Slave reads ENV from master when boot from SRIO
  powerpc/corenet_ds: Slave uploads ucode when boot from SRIO
  powerpc/corenet_ds: Slave module for boot from SRIO
  powerpc/corenet_ds: Master module for boot from SRIO
  powerpc/corenet_ds: Document for the boot from SRIO
  powerpc/corenet_ds: Correct the compilation errors about ENV
  powerpc/srio: Rewrite the struct ccsr_rio
  powerpc/85xx:Fix lds for nand boot debug info
  powerpc/p2041rdb: add env in NAND support
  powerpc/p2041rdb: add NAND and NAND boot support
  powerpc/mpc8xxx: Fix CONFIG_DDR_RAW_TIMING for two boards
  powerpc/85xx:Avoid vector table compilation for nand_spl
  powerpc/85xx:Fix IVORs addr after vector table relocation
  powerpc/85xx:Avoid hardcoded vector address for IVORs
  powerpc/p1023rds: Disable nor flash node and enable nand flash node

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Mon, 30 Apr 2012 14:45:56 +0000 (16:45 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

* 'master' of git://git.denx.de/u-boot-mpc85xx:
  powerpc/85xx: don't touch MAS7 on e500v1 when relocating CCSR
  powerpc/85xx: don't display address map size (32-bit vs. 36-bit) during boot
  cmd_bdinfo: display the address map size (32-bit vs. 36-bit)
  PowerPC: correct the SATA for p1/p2 rdb-pc platform
  powerpc/corenet_ds: Slave core in holdoff when boot from SRIO
  powerpc/corenet_ds: Slave reads ENV from master when boot from SRIO
  powerpc/corenet_ds: Slave uploads ucode when boot from SRIO
  powerpc/corenet_ds: Slave module for boot from SRIO
  powerpc/corenet_ds: Master module for boot from SRIO
  powerpc/corenet_ds: Document for the boot from SRIO
  powerpc/corenet_ds: Correct the compilation errors about ENV
  powerpc/srio: Rewrite the struct ccsr_rio
  powerpc/85xx:Fix lds for nand boot debug info
  powerpc/p2041rdb: add env in NAND support
  powerpc/p2041rdb: add NAND and NAND boot support
  powerpc/mpc8xxx: Fix CONFIG_DDR_RAW_TIMING for two boards
  powerpc/85xx:Avoid vector table compilation for nand_spl
  powerpc/85xx:Fix IVORs addr after vector table relocation
  powerpc/85xx:Avoid hardcoded vector address for IVORs
  powerpc/p1023rds: Disable nor flash node and enable nand flash node

12 years agoMerge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Mon, 30 Apr 2012 14:43:52 +0000 (16:43 +0200)]
Merge branch 'master' of /home/wd/git/u-boot/custodians

* 'master' of /home/wd/git/u-boot/custodians:
  i2c:designware Turn off the ctrl when setting the speed
  i2c: Add support for designware i2c controller
  sh: i2c: Add support I2C controller of SH7734

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-i2c
Wolfgang Denk [Mon, 30 Apr 2012 14:43:49 +0000 (16:43 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c

* 'master' of git://git.denx.de/u-boot-i2c:
  i2c:designware Turn off the ctrl when setting the speed
  i2c: Add support for designware i2c controller
  sh: i2c: Add support I2C controller of SH7734

12 years agoMerge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Mon, 30 Apr 2012 14:41:25 +0000 (16:41 +0200)]
Merge branch 'master' of /home/wd/git/u-boot/custodians

* 'master' of /home/wd/git/u-boot/custodians:
  Blackfin: bfin_sdh: drop dos part hardcode
  Blackfin: move gd/bd to bss by default
  Blackfin: gd_t: relocate volatile markings

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-blackfin
Wolfgang Denk [Mon, 30 Apr 2012 14:41:23 +0000 (16:41 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-blackfin

* 'master' of git://git.denx.de/u-boot-blackfin:
  Blackfin: bfin_sdh: drop dos part hardcode
  Blackfin: move gd/bd to bss by default
  Blackfin: gd_t: relocate volatile markings

12 years agoimage/fit: drop inline markings on parser code
Mike Frysinger [Sun, 22 Apr 2012 06:59:06 +0000 (06:59 +0000)]
image/fit: drop inline markings on parser code

Putting "inline" on extern funcs makes no sense, so drop them.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-nds32
Wolfgang Denk [Mon, 30 Apr 2012 14:29:16 +0000 (16:29 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-nds32

* 'master' of git://git.denx.de/u-boot-nds32:
  board/adp-ag102: add configuration of adp-ag102
  board/adp-ag102: add board specific files
  nds32/ag102: add ag102 soc support
  nds32/ag102: add header support of ag102 soc

12 years agopowerpc/ppc4xx: Remove typedefs for gdsys FPGA
Dirk Eibach [Fri, 27 Apr 2012 08:33:46 +0000 (10:33 +0200)]
powerpc/ppc4xx: Remove typedefs for gdsys FPGA

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agopowerpc/ppc4xx: Fix typo in gdsys_fpga.h
Dirk Eibach [Thu, 26 Apr 2012 03:54:26 +0000 (03:54 +0000)]
powerpc/ppc4xx: Fix typo in gdsys_fpga.h

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agopowerpc/ppc4xx: Update gdsys board configurations
Dirk Eibach [Thu, 26 Apr 2012 03:54:25 +0000 (03:54 +0000)]
powerpc/ppc4xx: Update gdsys board configurations

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agopowerpc/ppc4xx: Support gdsys dlvision-10g hardware 1.20
Dirk Eibach [Thu, 26 Apr 2012 03:54:24 +0000 (03:54 +0000)]
powerpc/ppc4xx: Support gdsys dlvision-10g hardware 1.20

In hardware revision 1.20 one more fan controller is added to dlvision-10g.

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agopowerpc/ppc4xx: Adapt gdsys 405ep boards to platform changes
Dirk Eibach [Thu, 26 Apr 2012 03:54:23 +0000 (03:54 +0000)]
powerpc/ppc4xx: Adapt gdsys 405ep boards to platform changes

Print fpga info at last_stage_init on gdsys 405ep boards.
Use dtt_init() to startup fans.

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agopowerpc/ppc4xx: Make gdsys 405ep boards reset more generic
Dirk Eibach [Thu, 26 Apr 2012 03:54:22 +0000 (03:54 +0000)]
powerpc/ppc4xx: Make gdsys 405ep boards reset more generic

In order to add boards that have different hardware for fpga reset,
any 405ep gdsys board now provides these functions:

void gd405ep_init(void);
void gd405ep_set_fpga_reset(unsigned state);
void gd405ep_setup_hw(void);
int gd405ep_get_fpga_done(unsigned fpga);

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agopowerpc/ppc4xx: Adjust environment size on neo
Dirk Eibach [Thu, 26 Apr 2012 03:54:21 +0000 (03:54 +0000)]
powerpc/ppc4xx: Adjust environment size on neo

Environment size on neo has to be 0x20000 for compatibilty reasons.

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agopatman: Change the location of patman path
Vikram Narayanan [Fri, 27 Apr 2012 06:39:31 +0000 (06:39 +0000)]
patman: Change the location of patman path

Fix the location of patman path in README

Signed-off-by: Vikram Narayanan <vikram186@gmail.com>
Cc: Simon Glass <sjg@chromium.org>
12 years agopatman: Fix a typo error
Vikram Narayanan [Wed, 25 Apr 2012 05:45:05 +0000 (05:45 +0000)]
patman: Fix a typo error

Signed-off-by: Vikram Narayanan <vikram186@gmail.com>
Cc: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
12 years agoGCC47: Fix warning in md5.c
Marek Vasut [Sat, 28 Apr 2012 22:28:40 +0000 (00:28 +0200)]
GCC47: Fix warning in md5.c

md5.c: In function ‘MD5Final’:
md5.c:156:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
md5.c:157:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agoGCC47: Fix warning in cmd_nand.c
Marek Vasut [Sat, 28 Apr 2012 22:28:39 +0000 (00:28 +0200)]
GCC47: Fix warning in cmd_nand.c

cmd_nand.c: In function ‘arg_off_size’:
cmd_nand.c:216:5: warning: ‘maxsize’ may be used uninitialized in this function [-Wmaybe-uninitialized]

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoMerge branch 'marex@denx.de' of git://git.denx.de/u-boot-staging
Wolfgang Denk [Fri, 27 Apr 2012 11:03:26 +0000 (13:03 +0200)]
Merge branch 'marex@denx.de' of git://git.denx.de/u-boot-staging

* 'marex@denx.de' of git://git.denx.de/u-boot-staging:
  CMD: CONFIG_CMD_SETECPR -> CONFIG_CMD_SETEXPR on omap3_logic
  CMD: Fix CONFIG_CMD_SAVEBP_WRITE_SIZE -> CONFIG_CMD_SPL_WRITE_SIZE
  CMD: Fix typo CMD_FSL -> CMD_MFSL in readme
  HWW1U1A: Fix CMD_SHA1 -> CMD_SHA1SUM
  CMD: Remove CMD_LOG, it's unused
  CMD: Fix typo KGBD -> KGDB on debris board
  CMD: Drop CONFIG_CMD_EMMC, it's not used
  CMD: Drop CONFIG_CMD_DFL, it's not used
  CMD: Drop CMD_DCR, it's not used
  CMD: Drop CMD_CAN, it's not used
  CMD: Remove CMD_AUTOSCRIPT, it's not used
  AT91: Drop AT91_SPIMUX command from cmd_all

12 years agoPrepare v2012.04.01
Wolfgang Denk [Wed, 25 Apr 2012 13:22:50 +0000 (15:22 +0200)]
Prepare v2012.04.01

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agopowerpc/85xx: don't touch MAS7 on e500v1 when relocating CCSR
Timur Tabi [Mon, 26 Mar 2012 09:49:08 +0000 (09:49 +0000)]
powerpc/85xx: don't touch MAS7 on e500v1 when relocating CCSR

The CCSR relocation code in start.S writes to MAS7 on all e500 parts, but
that register does not exist on e500v1.

Signed-off-by: Timur Tabi <timur@freescale.com>
12 years agopowerpc/85xx: don't display address map size (32-bit vs. 36-bit) during boot
Timur Tabi [Thu, 15 Mar 2012 11:42:27 +0000 (11:42 +0000)]
powerpc/85xx: don't display address map size (32-bit vs. 36-bit) during boot

Most 85xx boards can be built as a 32-bit or a 36-bit.  Current code sometimes
displays which of these is actually built, but it's inconsistent.  This is
especially problematic since the "default" build for a given 85xx board can
be either one, so if you don't see a message, you can't always know which
size is being used.  Not only that, but each board includes code that displays
the message, so there is duplication.

The 'bdinfo' command has been updated to display this information, so
we don't need to display it at boot time.  The board-specific code is
deleted.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agocmd_bdinfo: display the address map size (32-bit vs. 36-bit)
Timur Tabi [Thu, 15 Mar 2012 11:42:26 +0000 (11:42 +0000)]
cmd_bdinfo: display the address map size (32-bit vs. 36-bit)

Some Freescale SOCs support 32-bit and 36-bit physical addressing, and
U-Boot must be built to enable one or the other.  Add this information
to the bdinfo command.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agoPowerPC: correct the SATA for p1/p2 rdb-pc platform
Jerry Huang [Sun, 11 Mar 2012 16:15:04 +0000 (16:15 +0000)]
PowerPC: correct the SATA for p1/p2 rdb-pc platform

For p1/p2 rdb-pc platform, use the PCIe-SATA Silicon Image SATA controller.
Therefore, the SATA driver will use sata_sil, instead sata_sil3114.

Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com>
CC: Andy Fleming <afleming@gmail.com>
12 years agopowerpc/corenet_ds: Slave core in holdoff when boot from SRIO
Liu Gang [Thu, 8 Mar 2012 00:33:21 +0000 (00:33 +0000)]
powerpc/corenet_ds: Slave core in holdoff when boot from SRIO

When boot from SRIO, slave's core can be in holdoff after powered on for
some specific requirements. Master can release the slave's core at the
right time by SRIO interface.

Master needs to:
1. Set outbound SRIO windows in order to configure slave's registers
   for the core's releasing.
2. Check the SRIO port status when release slave core, if no errors,
   will implement the process of the slave core's releasing.
Slave needs to:
1. Set all the cores in holdoff by RCW.
2. Be powered on before master's boot.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
12 years agopowerpc/corenet_ds: Slave reads ENV from master when boot from SRIO
Liu Gang [Thu, 8 Mar 2012 00:33:20 +0000 (00:33 +0000)]
powerpc/corenet_ds: Slave reads ENV from master when boot from SRIO

When boot from SRIO, slave's ENV can be stored in master's memory space,
then slave can fetch the ENV through SRIO interface.

NOTE: Because the slave can not erase, write master's NOR flash by SRIO
  interface, so it can not modify the ENV parameters stored in
  master's NOR flash using "saveenv" or other commands.

Master needs to:
1. Put the slave's ENV into it's own memory space.
2. Set an inbound SRIO window covered slave's ENV stored in master's
   memory space.
Slave needs to:
1. Set a specific TLB entry in order to fetch ucode and ENV from master.
2. Set a LAW entry with the TargetID SRIO1 or SRIO2 for ucode and ENV.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
12 years agopowerpc/corenet_ds: Slave uploads ucode when boot from SRIO
Liu Gang [Thu, 8 Mar 2012 00:33:19 +0000 (00:33 +0000)]
powerpc/corenet_ds: Slave uploads ucode when boot from SRIO

When boot from SRIO, slave's ucode can be stored in master's memory space,
then slave can fetch the ucode image through SRIO interface. For the
corenet platform, ucode is for Fman.

Master needs to:
1. Put the slave's ucode image into it's own memory space.
2. Set an inbound SRIO window covered slave's ucode stored in master's
   memory space.
Slave needs to:
1. Set a specific TLB entry in order to fetch ucode from master.
2. Set a LAW entry with the TargetID SRIO1 or SRIO2 for ucode.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
12 years agopowerpc/corenet_ds: Slave module for boot from SRIO
Liu Gang [Thu, 8 Mar 2012 00:33:18 +0000 (00:33 +0000)]
powerpc/corenet_ds: Slave module for boot from SRIO

For the powerpc processors with SRIO interface, boot location can be configured
from SRIO1 or SRIO2 by RCW. The processor booting from SRIO can do without flash
for u-boot image. The image can be fetched from another processor's memory
space by SRIO link connected between them.

The processor boots from SRIO is slave, the processor boots from normal flash
memory space and can help slave to boot from its memory space is master.
They are different environments and requirements:

master:
1. NOR flash for its own u-boot image, ucode and ENV space.
2. Slave's u-boot image in master NOR flash.
3. Normally boot from local NOR flash.
4. Configure SRIO switch system if needed.
slave:
1. Just has EEPROM for RCW. No flash for u-boot image, ucode and ENV.
2. Boot location should be set to SRIO1 or SRIO2 by RCW.
3. RCW should configure the SerDes, SRIO interfaces correctly.
4. Slave must be powered on after master's boot.
5. Must define CONFIG_SYS_QE_FMAN_FW_IN_REMOTE because of no ucode
   locally.

For the slave module, need to finish these processes:
1. Set the boot location to SRIO1 or SRIO2 by RCW.
    2. Set a specific TLB entry for the boot process.
3. Set a LAW entry with the TargetID SRIO1 or SRIO2 for the boot.
4. Slave's u-boot image should be generated specifically by
   make xxxx_SRIOBOOT_SLAVE_config.
   This will set SYS_TEXT_BASE=0xFFF80000 and other configurations.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
12 years agopowerpc/corenet_ds: Master module for boot from SRIO
Liu Gang [Thu, 8 Mar 2012 00:33:17 +0000 (00:33 +0000)]
powerpc/corenet_ds: Master module for boot from SRIO

For the powerpc processors with SRIO interface, boot location can be configured
from SRIO1 or SRIO2 by RCW. The processor booting from SRIO can do without flash
for u-boot image. The image can be fetched from another processor's memory
space by SRIO link connected between them.

The processor boots from SRIO is slave, the processor boots from normal flash
memory space and can help slave to boot from its memory space is master.
They are different environments and requirements:

master:
1. NOR flash for its own u-boot image, ucode and ENV space.
2. Slave's u-boot image in master NOR flash.
3. Normally boot from local NOR flash.
4. Configure SRIO switch system if needed.
slave:
1. Just has EEPROM for RCW. No flash for u-boot image, ucode and ENV.
2. Boot location should be set to SRIO1 or SRIO2 by RCW.
3. RCW should configure the SerDes, SRIO interfaces correctly.
4. Slave must be powered on after master's boot.

For the master module, need to finish these processes:
1. Initialize the SRIO port and address space.
2. Set inbound SRIO windows covered slave's u-boot image stored in
   master's NOR flash.
3. Master's u-boot image should be generated specifically by
   make xxxx_SRIOBOOT_MASTER_config
4. Master must boot first, and then slave can be powered on.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
12 years agopowerpc/corenet_ds: Document for the boot from SRIO
Liu Gang [Thu, 8 Mar 2012 00:33:16 +0000 (00:33 +0000)]
powerpc/corenet_ds: Document for the boot from SRIO

This document describes the implementation of the boot from SRIO,
includes the introduction of envionment, an example based on P4080DS
platform, an example of the slave's RCW, and the description about
how to use this feature.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
12 years agopowerpc/corenet_ds: Correct the compilation errors about ENV
Liu Gang [Thu, 8 Mar 2012 00:33:15 +0000 (00:33 +0000)]
powerpc/corenet_ds: Correct the compilation errors about ENV

When defined CONFIG_ENV_IS_NOWHERE, there will be some
compilation errors:

./common/env_nowhere.o: In function `env_relocate_spec':
./common/env_nowhere.c:38: multiple definition of `env_relocate_spec'
./common/env_flash.o: ./common/env_flash.c:326: first defined here
./common/env_nowhere.o: In function `env_get_char_spec':
./common/env_nowhere.c:42: multiple definition of `env_get_char_spec'
./common/env_flash.o:./common/env_flash.c:78: first defined here
./common/env_nowhere.o: In function `env_init':
./common/env_nowhere.c:51: multiple definition of `env_init'
./common/env_flash.o:./common/env_flash.c:237: first defined here
make[1]: *** [./common/libcommon.o] Error 1
make[1]: Leaving directory `./common'
make: *** [./common/libcommon.o] Error 2

Remove the CONFIG_ENV_IS_IN_FLASH if defined CONFIG_ENV_IS_NOWHERE.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
12 years agopowerpc/srio: Rewrite the struct ccsr_rio
Liu Gang [Thu, 8 Mar 2012 00:33:14 +0000 (00:33 +0000)]
powerpc/srio: Rewrite the struct ccsr_rio

Rewrite this struct for the support of two ports and two message
units registers.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
12 years agopowerpc/85xx:Fix lds for nand boot debug info
Prabhakar Kushwaha [Wed, 29 Feb 2012 18:00:23 +0000 (18:00 +0000)]
powerpc/85xx:Fix lds for nand boot debug info

Currently "u-boot", the elf file generated via u-boot-nand.lds does not
contain required debug information i.e. .debug_{line, info, abbrev, aranges,
ranges} into their respective _global_ sections.

The original ld script line arch/powerpc/cpu/mpc85xx/start.o
KEEP(*(.bootpg)) is not entirely correct because the start.o file is already
processed by the linker,therefore the file wildcard in "KEEP(*(.bootpg))" will
not process start.o again for bootpg.

So Fix u-boot-nand.lds to generate these debug information.

Signed-off-by: Anmol Paralkar <b07584@freescale.com>
Signed-off-by: John Russo <John.Russo@freescale.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/p2041rdb: add env in NAND support
Shaohui Xie [Tue, 28 Feb 2012 23:28:40 +0000 (23:28 +0000)]
powerpc/p2041rdb: add env in NAND support

Add env in NAND support when boot from NAND.

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/p2041rdb: add NAND and NAND boot support
Shaohui Xie [Tue, 28 Feb 2012 23:28:07 +0000 (23:28 +0000)]
powerpc/p2041rdb: add NAND and NAND boot support

New P2041RDB board will add a NAND chip, so add support for NAND and
NAND boot.

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/mpc8xxx: Fix CONFIG_DDR_RAW_TIMING for two boards
York Sun [Wed, 29 Feb 2012 12:36:51 +0000 (12:36 +0000)]
powerpc/mpc8xxx: Fix CONFIG_DDR_RAW_TIMING for two boards

P1010RDB and p1_pc_rdb_pc has incorrect configuration for
CONFIG_DDR_RAW_TIMING. It should be CONFIG_SYS_DDR_RAW_TIMING.
Incorrect setting causes DDR failure in case of SPD absent.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/85xx:Avoid vector table compilation for nand_spl
Prabhakar Kushwaha [Tue, 14 Feb 2012 22:50:02 +0000 (22:50 +0000)]
powerpc/85xx:Avoid vector table compilation for nand_spl

NAND SPL code never compile the vector table.
So no need to setup interrupt vector table for NAND SPL.

Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/85xx:Fix IVORs addr after vector table relocation
Prabhakar Kushwaha [Tue, 14 Feb 2012 22:49:49 +0000 (22:49 +0000)]
powerpc/85xx:Fix IVORs addr after vector table relocation

After relocation of vector table in SDRAM's lower address, IVORs value should
be updated with new handler addresses.

As vector tables are relocated to 0x100,0x200... 0xf00 address in DDR.IVORs
are updated with 0x100, 0x200,....f00  hard-coded values.

Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/85xx:Avoid hardcoded vector address for IVORs
Prabhakar Kushwaha [Tue, 14 Feb 2012 22:49:29 +0000 (22:49 +0000)]
powerpc/85xx:Avoid hardcoded vector address for IVORs

For e500 and e500v2 architecturees processor IVPR address should be alinged on
64K boundary.

in start.S, CONFIG_SYS_MONITOR_BASE is stored blindly in IVPR assuming it to be
64K aligned. It may not be true always. If it is not aligned, IVPR + IVORs may
not point to an exception handler.

Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>