oweals/u-boot.git
12 years agopowerpc/85xx: Add P5040 processor support
Timur Tabi [Fri, 5 Oct 2012 11:09:19 +0000 (11:09 +0000)]
powerpc/85xx: Add P5040 processor support

Add support for the Freescale P5040 SOC, which is similar to the P5020.
Features of the P5040 are:

Four P5040 single-threaded e5500 cores built
    Up to 2.4 GHz with 64-bit ISA support
    Three levels of instruction: user, supervisor, hypervisor
CoreNet platform cache (CPC)
    2.0 MB configures as dual 1 MB blocks hierarchical interconnect fabric
Two 64-bit DDR3/3L SDRAM memory controllers with ECC and interleaving
        support Up to 1600MT/s
    Memory pre-fetch engine
DPAA incorporating acceleration for the following functions
    Packet parsing, classification, and distribution (FMAN)
    Queue management for scheduling, packet sequencing and
    congestion management (QMAN)
    Hardware buffer management for buffer allocation and
    de-allocation (BMAN)
    Cryptography acceleration (SEC 5.2) at up to 40 Gbps SerDes
    20 lanes at up to 5 Gbps
    Supports SGMII, XAUI, PCIe rev1.1/2.0, SATA Ethernet interfaces
    Two 10 Gbps Ethernet MACs
    Ten 1 Gbps Ethernet MACs
High-speed peripheral interfaces
    Two PCI Express 2.0/3.0 controllers
Additional peripheral interfaces
    Two serial ATA (SATA 2.0) controllers
    Two high-speed USB 2.0 controllers with integrated PHY
    Enhanced secure digital host controller (SD/MMC/eMMC)
    Enhanced serial peripheral interface (eSPI)
    Two I2C controllers
    Four UARTs
    Integrated flash controller supporting NAND and NOR flash
DMA
    Dual four channel
Support for hardware virtualization and partitioning enforcement
    Extra privileged level for hypervisor support
QorIQ Trust Architecture 1.1
    Secure boot, secure debug, tamper detection, volatile key storage

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/p5040ds: add per pci endpoint liodn offset list
Laurentiu Tudor [Fri, 5 Oct 2012 09:48:54 +0000 (09:48 +0000)]
powerpc/p5040ds: add per pci endpoint liodn offset list

Add a new device tree property named "fsl,liodn-offset-list"
holding a list of per pci endpoint permitted liodn offsets.
This property is useful in virtualization scenarios
that implement per pci endpoint partitioning.
The final liodn of a partitioned pci endpoint is
calculated by the hardware, by adding these offsets
to pci controller's base liodn, stored in the
"fsl,liodn" property of its node.
The liodn offsets are interleaved to get better cache
utilization. As an example, given 3 pci controllers,
the following liodns are generated for the pci endpoints:
    pci0: 193 256 259 262 265 268 271 274 277
    pci1: 194 257 260 263 266 269 272 275 278
    pci2: 195 258 261 264 267 270 273 276 279

Signed-off-by: Laurentiu Tudor <Laurentiu.Tudor@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/85xx: move SRIO configuration out of corenet_ds.h
Timur Tabi [Fri, 5 Oct 2012 09:48:53 +0000 (09:48 +0000)]
powerpc/85xx: move SRIO configuration out of corenet_ds.h

The P5040 does not have SRIO, so don't put the SRIO definitions in
corenet_ds.h.  They belong in the board-specific header files.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/85xx: define SRIO LIODN functions only if SRIO is defined
Timur Tabi [Fri, 5 Oct 2012 09:48:52 +0000 (09:48 +0000)]
powerpc/85xx: define SRIO LIODN functions only if SRIO is defined

The P5040 does not have SRIO support, so there are no SRIO LIODNs.
Therefore, the functions that set the SRIO LIODNs should not be compiled.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/85xx: introduce SET_PCI_LIODN_BASE, for setting PCI LIODNs
Laurentiu Tudor [Fri, 5 Oct 2012 09:48:51 +0000 (09:48 +0000)]
powerpc/85xx: introduce SET_PCI_LIODN_BASE, for setting PCI LIODNs

The liodn for the new PCIE controller included in P5040DS is no longer set
through a register in the guts register block but with one in the PCIE
register block itself.  Update the PCIE CCSR structure to add the new liodn
register and add a new dedicated SET_PCI_LIODN_BASE macro that puts
the liodn in the correct register.

Signed-off-by: Laurentiu Tudor <Laurentiu.Tudor@freescale.com>
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/mpc85xx: fix Unicode characters in release.S
Timur Tabi [Fri, 5 Oct 2012 09:48:50 +0000 (09:48 +0000)]
powerpc/mpc85xx: fix Unicode characters in release.S

Commit 709389b6 unintentionally used the Unicode version of the
apostrophy.  Replace it with the normal ASCII version.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/srio: Workaround for srio erratrm a004034
Liu Gang [Fri, 28 Sep 2012 21:26:19 +0000 (21:26 +0000)]
powerpc/srio: Workaround for srio erratrm a004034

Erratum: A-004034
Affects: SRIO

Description: During port initialization, the SRIO port performs
lane synchronization (detecting valid symbols on a lane) and
lane alignment (coordinating multiple lanes to receive valid data
across lanes). Internal errors in lane synchronization and lane
alignment may cause failure to achieve link initialization at
the configured port width.

An SRIO port configured as a 4x port may see one of these scenarios:

1. One or more lanes fails to achieve lane synchronization.
Depending on which lanes fail, this may result in downtraining
from 4x to 1x on lane 0, 4x to 1x on lane R (redundant lane).

2. The link may fail to achieve lane alignment as a 4x, even
though all 4 lanes achieve lane synchronization, and downtrain
to a 1x. An SRIO port configured as a 1x port may fail to complete
port initialization (PnESCSR[PU] never deasserts) because of
scenario 1.

Impact: SRIO port may downtrain to 1x, or may fail to complete
link initialization. Once a port completes link initialization
successfully, it will operate normally.

Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc/mpc8xxx: Fix USB device-tree fixup
ramneek mehresh [Tue, 18 Sep 2012 22:28:51 +0000 (22:28 +0000)]
powerpc/mpc8xxx: Fix USB device-tree fixup

Fix usb device-tree fixup:
- wrong modification of dr_mode and phy_type when
  "usb1" is not mentioned inside hwconfig string;
   now allows hwconfig strings like:
"usb2:dr_mode=host,phy_type=ulpi"
- add warning message for using usb_dr_mode
  and usb_phy_type env variables (if either is used)

Signed-off-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agoP4080/esdhc: make the P4080 ESDHC13 errata workaround conditional
Zang Roy-R61911 [Tue, 18 Sep 2012 09:50:08 +0000 (09:50 +0000)]
P4080/esdhc: make the P4080 ESDHC13 errata workaround conditional

P4080 Rev3.0 fixes ESDHC13 errata, so update the code to make the
workaround conditional.
In formal release document, the errata number should be ESDHC13 instead
of ESDHC136.

Signed-off-by: Roy Zang <tie-fei.zang@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agoboard/freescale/common:QIXIS:Fix magic number usage
Prabhakar Kushwaha [Mon, 17 Sep 2012 17:30:31 +0000 (17:30 +0000)]
board/freescale/common:QIXIS:Fix magic number usage

QIXIS FPGA layout defines the  address of registers but The actual register bit
implementation is board-specific,

So avoid use of magic numbers as it may vary across different boards's QIXIS
FPGA implementation.
Also, Avoid board specific defines in common/qixis.h

Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agopowerpc mpc85xx: Only clear TSR:WIS in watchdog_reset.
Mark Marshall [Sun, 9 Sep 2012 23:06:03 +0000 (23:06 +0000)]
powerpc mpc85xx: Only clear TSR:WIS in watchdog_reset.

We should only write TSR_WIS to the SPRN_TSR register in
reset_85xx_watchdog.

The old code would cause the timer interrupt to be acknowledged when the
watchdog was reset, and we would then get no more timer interrupts.
This bug would affect all mpc85xx boards that have the watchdog enabled.

Signed-off-by: Mark Marshall <Mark.Marshall@omicron.at>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agompc85xx: make gpio_direction_output respect value
Chris Packham [Thu, 6 Sep 2012 17:28:35 +0000 (17:28 +0000)]
mpc85xx: make gpio_direction_output respect value

Users of familiar with the Linux gpiolib API expect that value parameter
to gpio_direction_output reflects the initial state of the output pin.
gpio_direction_output was always driving the output low, now it drives
it high or low according to the value provided.

Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Cc: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Andy Fleming <afleming@gmail.com>
Cc: Peter Tyser <ptyser@xes-inc.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agofsl_pci: use 'Header Type' field to judge PCIE mode
Minghuan Lian [Tue, 21 Aug 2012 23:35:42 +0000 (23:35 +0000)]
fsl_pci: use 'Header Type' field to judge PCIE mode

The original code uses 'Programming Interface' field to judge if PCIE is
EP or RC mode, however, T4240 does not support this functionality.
According to PCIE specification, 'Header Type' offset 0x0e is used to
indicate header type, so for PCIE controller, the patch changes code to
use 'Header Type' field to identify if the PCIE is EP or RC mode.

Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Tom Rini [Sat, 20 Oct 2012 01:23:38 +0000 (18:23 -0700)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

Conflicts:
drivers/serial/serial_lh7a40x.c

Signed-off-by: Tom Rini <trini@ti.com>
12 years agopatman: force git log commands to not use color
Albert ARIBAUD [Mon, 15 Oct 2012 09:55:50 +0000 (09:55 +0000)]
patman: force git log commands to not use color

Colored logs confuse patman when analyzing logs.
Add --no-color option in git log commands in case
the default config has color.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Acked-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agosandbox: Change global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:21 +0000 (14:21 +0000)]
sandbox: Change global data baudrate to int

This doesn't need to be a long, so change it.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agox86: Change global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:20 +0000 (14:21 +0000)]
x86: Change global data baudrate to int

This doesn't need to be a long, so change it.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agonds32: Change global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:19 +0000 (14:21 +0000)]
nds32: Change global data baudrate to int

This doesn't need to be a long, so change it.

Also adjust bi_baudrate to be unsigned.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agomips: Change global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:18 +0000 (14:21 +0000)]
mips: Change global data baudrate to int

This doesn't need to be a long, so change it.

Also adjust bi_baudrate to be unsigned.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoblackfin: Change global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:17 +0000 (14:21 +0000)]
blackfin: Change global data baudrate to int

This doesn't need to be a long, so change it.

Also adjust bi_baudrate to be unsigned.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoarm: Change global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:16 +0000 (14:21 +0000)]
arm: Change global data baudrate to int

This does not need to be a long, so change it.

Also adjust bi_baudrate to be unsigned.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agosparc: Change bi_baudrate and global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:15 +0000 (14:21 +0000)]
sparc: Change bi_baudrate and global data baudrate to int

These don't need to be longs, so change them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agopowerpc: Change bi_baudrate and global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:14 +0000 (14:21 +0000)]
powerpc: Change bi_baudrate and global data baudrate to int

These don't need to be longs, so change them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoopenrisc: Change bi_baudrate and global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:13 +0000 (14:21 +0000)]
openrisc: Change bi_baudrate and global data baudrate to int

These don't need to be longs, so change them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agonios2: Change bi_baudrate and global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:12 +0000 (14:21 +0000)]
nios2: Change bi_baudrate and global data baudrate to int

These don't need to be longs, so change them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agomicroblaze: Change bi_baudrate and global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:11 +0000 (14:21 +0000)]
microblaze: Change bi_baudrate and global data baudrate to int

These don't need to be longs, so change them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agom68k: Change bi_baudrate and global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:10 +0000 (14:21 +0000)]
m68k: Change bi_baudrate and global data baudrate to int

These don't need to be longs, so change them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoavr32: Change bi_baudrate and global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:09 +0000 (14:21 +0000)]
avr32: Change bi_baudrate and global data baudrate to int

These don't need to be longs, so change them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Andreas Bießmann <andreas.devel@googlemail.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agosh: Change bi_baudrate and global data baudrate to int
Simon Glass [Fri, 12 Oct 2012 14:21:08 +0000 (14:21 +0000)]
sh: Change bi_baudrate and global data baudrate to int

These don't need to be longs, so change them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoinput: Add ANSI 3.64 escape sequence generation.
Hung-Te Lin [Thu, 11 Oct 2012 15:15:53 +0000 (15:15 +0000)]
input: Add ANSI 3.64 escape sequence generation.

To support Non-ASCII keys (ex, Fn, PgUp/Dn, arrow keys, ...), we need to
translate key code into escape sequence.

(Updated by sjg@chromium.org to move away from a function to store
keycodes, so we can easily record how many were sent. We now need to
return this from input_send_keycodes() so we know whether keys were
generated.)

Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoinput: Fix i8042 keyboard reset
Marc Jones [Thu, 11 Oct 2012 15:15:52 +0000 (15:15 +0000)]
input: Fix i8042 keyboard reset

The i8042 keyboard reset was not checking the results of the output
buffer after the reset command. This can jam up some KBC/keyboards.
Also, remove a write to the wrong register and the CONFIG setting
around the incorrect write.

Signed-off-by: Marc Jones <marc.jones@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoinput: i8042: Provide feature to disable keyboard before booting kernel
Louis Yung-Chieh Lo [Thu, 11 Oct 2012 15:15:51 +0000 (15:15 +0000)]
input: i8042: Provide feature to disable keyboard before booting kernel

The BIOS leaves the keyboard enabled during boot time so that any
keystroke would interfere kernel driver initialization.

Add a way to disable the keyboard to make sure no scancode will be
generated during the boot time. Note that the keyboard will be
re-enabled again after the kernel driver is up.

This code can be called from the board functions.
Signed-off-by: Louis Yung-Chieh Lo <yjlou@chromium.org>
Signed-off-by: Louis Yung-Chieh Lo <yjlou@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoinput: Provide a board specific mechanism to decide whether to skip i8042 init
Gabe Black [Fri, 12 Oct 2012 14:02:02 +0000 (14:02 +0000)]
input: Provide a board specific mechanism to decide whether to skip i8042 init

This change adds a board overridable function which can be used to decide
whether or not to initialize the i8042 keyboard controller. On systems where
it isn't actually connected to anything, this can save a significant amount of
boot time.

On Stumpy, this saves about 200ms on boot.

Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoinput: Use finer grain udelays while waitng for the i8042 keyboard buffer to empty
Gabe Black [Fri, 12 Oct 2012 14:02:01 +0000 (14:02 +0000)]
input: Use finer grain udelays while waitng for the i8042 keyboard buffer to empty

On x86, the i8042 keyboard controller driver frequently waits for the keyboard
input buffer to be empty to make sure the controller has had a chance to
process the data it was given. The way the delay loop was structured, if the
controller hadn't cleared the corresponding status bit immediately, it would
wait 1ms before checking again. If the keyboard responded quickly but not
instantly, the driver would still wait a full 1ms when perhaps 1us would have
been sufficient. Because udelay is a busy wait anyway, this change decreases
the delay between checks to 1us.

Also, this change gets rid of a hardcoded 250ms delay.

On Stumpy, this saves 100-150ms during boot.

Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoenv: cosmetic: Consilidate the default env definition
Joe Hershberger [Fri, 12 Oct 2012 08:48:51 +0000 (08:48 +0000)]
env: cosmetic: Consilidate the default env definition

There used to be a huge structure duplicated 3 times in the source.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agodisk: initialize name/part fields when returning a whole disk
Stephen Warren [Wed, 10 Oct 2012 07:57:51 +0000 (07:57 +0000)]
disk: initialize name/part fields when returning a whole disk

When get_device_and_partition() finds a disk without a partition table,
under some conditions, it "returns" a disk_partition_t that describes
the entire raw disk. Make sure to initialize all fields in the partition
descriptor in that case.

The value chosen for name is just some arbitrary descriptive string.

The value chosen for info matches the check at the end of
get_device_and_partition(). However, it's probably not that important;
it's not obvious that the value is really used.

Reported-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoarm: fdt: Relocate fdt along with other data
Simon Glass [Thu, 27 Sep 2012 15:41:55 +0000 (15:41 +0000)]
arm: fdt: Relocate fdt along with other data

Rather than leave the fdt down next to the code/data, we really should
relocate it along with everything else. For CONFIG_OF_EMBED this happens
automatically, but for CONFIG_OF_SEPARATE it does not.

Add code to copy the fdt and point to the new copy after relocation.

Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Stephen Warren <swarren@nvidia.com>
12 years agoColdFire: uart: fix build failure for missing header files
Alison Wang [Thu, 18 Oct 2012 16:54:38 +0000 (16:54 +0000)]
ColdFire: uart: fix build failure for missing header files

The following commit introduces some build failures for ColdFire
platform.

commit abaef69fbe683197607febeb2cc619490aca2a10
Author: Marek Vasut <marex@denx.de>
Date:   Thu Sep 13 16:51:38 2012 +0200

Add the missed header files.

Sign-off-by: Alison Wang <b18965@freescale.com>
12 years agoColdFire: Fix the build error for Freescale m5282evb board.
Jason Jin [Tue, 16 Oct 2012 08:40:34 +0000 (16:40 +0800)]
ColdFire: Fix the build error for Freescale m5282evb board.

Clean up the lds file and fix the environment build error.

Signed-off-by: Jason Jin <Jason.jin@freescale.com>
12 years agoColdFire: Fix build error for astro mcf53731 board.
Jason Jin [Tue, 16 Oct 2012 08:38:39 +0000 (16:38 +0800)]
ColdFire: Fix build error for astro mcf53731 board.

Fix the  build error by clean up the lds file.

Signed-off-by: Jason Jin <Jason.jin@freescale.com>
12 years agom68k: net: Fix unused variable in mcfmii.c
Marek Vasut [Wed, 3 Oct 2012 13:28:47 +0000 (13:28 +0000)]
m68k: net: Fix unused variable in mcfmii.c

The following warning was produced, fix it:

mcfmii.c: In function 'mcffec_miiphy_write':
mcfmii.c:318:8: warning: variable 'rdreg' set but not used [-Wunused-but-set-variable]

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: "Jin Zhengxiong-R64188" <R64188@freescale.com>
Cc: Jason Jin <jason.jin@freescale.com>
12 years agom68k: Fix unused variable in board.c
Marek Vasut [Wed, 3 Oct 2012 13:28:46 +0000 (13:28 +0000)]
m68k: Fix unused variable in board.c

The following warning was produced, fix it:

board.c: In function 'board_init_r':
board.c:390:8: warning: unused variable 's' [-Wunused-variable]

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: "Jin Zhengxiong-R64188" <R64188@freescale.com>
Cc: Jason Jin <jason.jin@freescale.com>
12 years agom68k: Fix unused variable warning in speed.c
Marek Vasut [Wed, 3 Oct 2012 13:28:45 +0000 (13:28 +0000)]
m68k: Fix unused variable warning in speed.c

The following warning was produced, fix it:

speed.c: In function 'get_clocks':
speed.c:94:15: warning: variable 'bPci' set but not used [-Wunused-but-set-variable]

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: "Jin Zhengxiong-R64188" <R64188@freescale.com>
Cc: Jason Jin <jason.jin@freescale.com>
12 years agom68k: Fix unused variable warning
Marek Vasut [Wed, 3 Oct 2012 13:28:44 +0000 (13:28 +0000)]
m68k: Fix unused variable warning

The fbcs variable was unused, producing the following warning:

cpu_init.c: In function 'cpu_init_f':
cpu_init.c:52:10: warning: unused variable 'fbcs' [-Wunused-variable]

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: "Jin Zhengxiong-R64188" <R64188@freescale.com>
Cc: Jason Jin <jason.jin@freescale.com>
12 years agom68k: Fix wrong assembler instruction in start.S
Marek Vasut [Wed, 3 Oct 2012 13:28:43 +0000 (13:28 +0000)]
m68k: Fix wrong assembler instruction in start.S

The jmp _fault generated the following error message, thus change it
to bra _fault:

start.S: Assembler messages:
start.S:310: Error: Conversion of PC relative displacement to absolute

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: "Jin Zhengxiong-R64188" <R64188@freescale.com>
Cc: Jason Jin <jason.jin@freescale.com>
12 years agom68k: Fix relocation errors in start.S
Philippe De Muyter [Wed, 3 Oct 2012 13:28:42 +0000 (13:28 +0000)]
m68k: Fix relocation errors in start.S

When the environment sectors in the flash are big, one get those errors :

 mcf547x_8x/start.S:173: relocation truncated to fit: R_68K_PC16 against
  symbol `cpu_init_f' defined in .text section in libmcf547x_8x.a(cpu_init.o)
 mcf547x_8x/start.S:174: relocation truncated to fit: R_68K_PC16 against
  symbol `board_init_f' defined in .text section in libm68k.a(board.o)

Fix that.

Signed-off-by: Philippe De Muyter <phdm@macqel.be>
Cc: "Jin Zhengxiong-R64188" <R64188@freescale.com>
Cc: Jason Jin <jason.jin@freescale.com>
12 years agoactux[123]: Update linker script for ELDK 4.2
Tom Rini [Wed, 17 Oct 2012 10:18:29 +0000 (10:18 +0000)]
actux[123]: Update linker script for ELDK 4.2

With ELDK4.2 libserial.o is too large to fit in the area before the
environment.  Swap in libinput instead which is a little smaller.

Cc: Michael Schwingen <michael@schwingen.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoversatile: board configs: Use buffered writes on flash
402jagan@gmail.com [Sun, 29 Jul 2012 04:26:08 +0000 (04:26 +0000)]
versatile: board configs: Use buffered writes on flash

This patch provides a support to use buffered writes on flash
for versatile and vexpress boards.

This will certainly increase the flash writes.

Signed-off-by: Jagannadha Sutradharudu Teki <402jagan@gmail.com>
12 years agodm: Move s3c24xx USB driver to a proper place
Marek Vasut [Sat, 21 Jul 2012 05:02:22 +0000 (05:02 +0000)]
dm: Move s3c24xx USB driver to a proper place

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: David Müller <d.mueller@elsoft.ch>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: U-Boot DM <u-boot-dm@lists.denx.de>
12 years agodm: wdt: arm: Move tnetv107x into drivers/watchdog/
Marek Vasut [Sat, 21 Jul 2012 05:02:21 +0000 (05:02 +0000)]
dm: wdt: arm: Move tnetv107x into drivers/watchdog/

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Oliver Brown <obrown@adventnetworks.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: U-Boot DM <u-boot-dm@lists.denx.de>
12 years agopowerpc: delete Wind River SBC8560/8540 support
Paul Gortmaker [Wed, 26 Sep 2012 11:43:54 +0000 (11:43 +0000)]
powerpc: delete Wind River SBC8560/8540 support

The sbc8548/60 (both similar, just variations in UART hardware)
support has been removed from the linux kernel as of v3.6-rc1~132
so lets also now remove it from the u-boot tree as well.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-i2c
Tom Rini [Wed, 17 Oct 2012 16:03:59 +0000 (09:03 -0700)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-mips
Tom Rini [Wed, 17 Oct 2012 15:57:13 +0000 (08:57 -0700)]
Merge branch 'master' of git://git.denx.de/u-boot-mips

12 years agofs: fat: Fix mkcksum() function parameters
Marek Vasut [Tue, 9 Oct 2012 07:20:22 +0000 (07:20 +0000)]
fs: fat: Fix mkcksum() function parameters

The mkcksum() function now takes one parameter, the pointer to
11-byte wide character array, which it then operates on.

Currently, the function is wrongly passed (dir_entry)->name, which
is only 8-byte wide character array. Though by further inspecting
the dir_entry structure, it can be noticed that the name[8] entry
is immediatelly followed by ext[3] entry. Thus, name[8] and ext[3]
in the dir_entry structure actually work as this 11-byte wide array
since they're placed right next to each other by current compiler
behavior.

Depending on this is obviously wrong, thus fix this by correctly
passing both (dir_entry)->name and (dir_entry)->ext to the mkcksum()
function and adjust the function appropriately.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Tom Rini <trini@ti.com>
12 years agodisk: part_dos: print partition UUID in partition list
Stephen Warren [Mon, 8 Oct 2012 08:14:40 +0000 (08:14 +0000)]
disk: part_dos: print partition UUID in partition list

This information may be useful to compare against command "part uuid",
or if you want to manually paste the information into the kernel
command-line.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
[trini: print_one_part / print_part_dos output strings didn't quite
match before the changes]
Signed-off-by: Tom Rini <trini@ti.com>
12 years agodisk: part_dos: checkpatch cleanups
Stephen Warren [Mon, 8 Oct 2012 08:14:38 +0000 (08:14 +0000)]
disk: part_dos: checkpatch cleanups

Minor cleanups required so later patches don't trigger checkpatch.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
12 years agodisk: part_efi: set bootable flag in partition objects
Stephen Warren [Mon, 8 Oct 2012 08:14:37 +0000 (08:14 +0000)]
disk: part_efi: set bootable flag in partition objects

A partition is considered bootable if it either has the "legacy BIOS
bootable" flag set, or if the partition type UUID matches the standard
"system" type.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
12 years agodisk: part_efi: print raw partition attributes
Stephen Warren [Mon, 8 Oct 2012 08:14:36 +0000 (08:14 +0000)]
disk: part_efi: print raw partition attributes

When printing the EFI partition table, print the raw attributes. Convert
struct gpt_entry_attributes to a union to allow raw access.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
12 years agodisk: part_efi: add new partition attribute definitions
Stephen Warren [Mon, 8 Oct 2012 08:14:35 +0000 (08:14 +0000)]
disk: part_efi: add new partition attribute definitions

Add no_block_io_protocol and legacy_bios_bootable attribute definitions.
These are sourced from UEFI Spec 2.3, page 105, table 19. Credits to the
libparted source for the specification pointer.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
12 years agodisk: part_efi: print partition UUIDs
Stephen Warren [Mon, 8 Oct 2012 08:14:34 +0000 (08:14 +0000)]
disk: part_efi: print partition UUIDs

When printing the partition table, print the partition type UUID and the
individual partition UUID. Do this unconditionally, since partition UUIDs
are useful.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
12 years agodisk: part_efi: re-order partition list printf, change case
Stephen Warren [Mon, 8 Oct 2012 08:14:33 +0000 (08:14 +0000)]
disk: part_efi: re-order partition list printf, change case

The partition name is a long variable-length string. Move it last on
the line to ensure consistent layout and that the entries align with
the "header" line. Also, surround it in quotes, so if it's empty, it's
obvious that something is still being printed.

Also, change the case of the LBA numbers; lower-case looks nicer in my
opinion, and will be more consistent with the UUID printing that is
added later in this series.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
12 years agodisk: part_efi: remove indent level from loop
Stephen Warren [Mon, 8 Oct 2012 08:14:32 +0000 (08:14 +0000)]
disk: part_efi: remove indent level from loop

Simplify the partition printing loop in print_part_efi() to bail out
early when the first invalid partition is found, rather than indenting
the whole body of the loop. This simplifies later patches.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
12 years agodisk: get_device_and_partition() return value fixes
Stephen Warren [Mon, 8 Oct 2012 07:45:54 +0000 (07:45 +0000)]
disk: get_device_and_partition() return value fixes

When no valid partitions are found, guarantee that we return -1. This
most likely already happens, since the most recent get_partition_info()
will have returned an error. However, it's best to be explicit.

Remove an unnecessary assignment of ret=0 in the success case; this value
is over-written with the processed partition ID later.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
12 years agoremove unnecessary includes from cmd_ide.c
Pavel Herrmann [Sun, 7 Oct 2012 05:56:14 +0000 (05:56 +0000)]
remove unnecessary includes from cmd_ide.c

mpc8xx and mpc5xxx specific includes in cmd_ide.c are not required, remove them.

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agosplit PCS440EP specific code from cmd_ide.c
Pavel Herrmann [Sun, 7 Oct 2012 05:56:13 +0000 (05:56 +0000)]
split PCS440EP specific code from cmd_ide.c

Move specific ide_input_data and friends to board-specific file.

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agosplit AU1X00 specific code from cmd_ide.c
Pavel Herrmann [Tue, 9 Oct 2012 07:10:08 +0000 (07:10 +0000)]
split AU1X00 specific code from cmd_ide.c

move special case of ide_swap_read() for AU1X00 SoC into SoC-specific directory.

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agomove CPC45 ide_led to the same file as other IDE hooks
Pavel Herrmann [Tue, 9 Oct 2012 07:06:25 +0000 (07:06 +0000)]
move CPC45 ide_led to the same file as other IDE hooks

Keep all IDE-related hooks and overrides in a single file, to avoid confusion

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agomake ide_led() a weak alias
Pavel Herrmann [Sun, 7 Oct 2012 05:56:10 +0000 (05:56 +0000)]
make ide_led() a weak alias

Make ide_led() a weak alias instead of global/local function/empty macro
based on CONFIG_IDE_LED value and/or board-specific CONFIGs, to get rid of
board-specific code in cmd_ide.c
Define dummy values to get rid of compoler errors in case where ide_led()
used to be an empty macro

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agosplit CPC45 board-specific IDE functions from cmd_ide.c
Pavel Herrmann [Sun, 7 Oct 2012 05:56:09 +0000 (05:56 +0000)]
split CPC45 board-specific IDE functions from cmd_ide.c

Move input_data() and friends to board/cpc45/ide.c, as overrides for weak
aliases in cmd_ide.c

note: checkpatch emits warnings about using volatile

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agochange all versions of input_data() and output_data() to global weak aliases
Pavel Herrmann [Tue, 9 Oct 2012 07:04:39 +0000 (07:04 +0000)]
change all versions of input_data() and output_data() to global weak aliases

This changes input_data() and friends from static function to global symbols
under weak alias, to enable board specific overrides (and therefore get rid of
board-specific code in cmd_ide.c)
Also declare ide_bus_offset in the header file, so other files can use
ATA_CURR_BASE as well.

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agosplit IVM power hooks from cmd_ide.c
Pavel Herrmann [Sun, 7 Oct 2012 05:56:07 +0000 (05:56 +0000)]
split IVM power hooks from cmd_ide.c

Move power control code from ide_reset() into IVM-specific IDE reset code.

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agosplit mpc8xx hooks from cmd_ide.c
Pavel Herrmann [Tue, 9 Oct 2012 07:01:56 +0000 (07:01 +0000)]
split mpc8xx hooks from cmd_ide.c

move most of mpc8xx hooks from cmd_ide.c into ide_preinit() and newly created
ide_init_postreset() (invoked after calling ide_reset after ide_preinit),
some cleanup to make checkpatch happy, enable IDE init hooks in configs of
affected boards.
confusingly, these hooks are used by more than just mpc8xx-based boards, and
therefore are placed in arch/ppc/lib/

note: checkpatch still emits warnings about using volatile

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agoremove CONFIG_SC3 from cmd_ide.c
Pavel Herrmann [Sun, 7 Oct 2012 05:56:05 +0000 (05:56 +0000)]
remove CONFIG_SC3 from cmd_ide.c

There is no difference in codepath with CONFIG_SC3 enabled, so just remove it

Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com>
12 years agokerneldoc: stdio: tmpl: Add stdio template
Marek Vasut [Sat, 6 Oct 2012 14:07:06 +0000 (14:07 +0000)]
kerneldoc: stdio: tmpl: Add stdio template

Add STDIO documentation template.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
[trini: Fix DOCBOOKS line as we don't have linker_lists yet]
Signed-off-by: Tom Rini <trini@ti.com>
12 years agokerneldoc: Annotate drivers/serial/serial.c
Marek Vasut [Mon, 8 Oct 2012 11:36:39 +0000 (11:36 +0000)]
kerneldoc: Annotate drivers/serial/serial.c

Add kerneldoc annotations into serial core.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: Reorder get_current()
Marek Vasut [Sat, 6 Oct 2012 14:07:04 +0000 (14:07 +0000)]
serial: Reorder get_current()

Reorder the get_current() function to make it a bit more readable.
The code does not grow and there is minor change in the code logic,
where dev != NULL is now checked in any case.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: Reorder serial_assign()
Marek Vasut [Sat, 6 Oct 2012 14:07:03 +0000 (14:07 +0000)]
serial: Reorder serial_assign()

Reorder serial_assign() function to get rid of the extra level of
indentation. Also, adjust the return value to be -EINVAL instead of
positive one to be more consistent.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: Use default_serial_puts() in drivers
Marek Vasut [Sat, 6 Oct 2012 14:07:02 +0000 (14:07 +0000)]
serial: Use default_serial_puts() in drivers

Replace the in-place ad-hoc implementation of serial_puts() within
the drivers with default_serial_puts() call. This cuts down on the
code duplication quite a bit.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: Implement default_serial_puts()
Marek Vasut [Sat, 6 Oct 2012 14:07:01 +0000 (14:07 +0000)]
serial: Implement default_serial_puts()

U-Boot contains a lot of duplicit implementations of serial_puts()
call which just pipes single characters into the port in loop. Implement
function that does this behavior into common code, so others can make
easy use of it.

This function is called default_serial_puts() and it's sole purpose
is to call putc() in loop on the whole string passed to it.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agompc82xx: Remove BMW board port
Stefan Roese [Wed, 19 Sep 2012 03:18:53 +0000 (03:18 +0000)]
mpc82xx: Remove BMW board port

As the board seems to be unmaintained for some time, lets remove
the support in mainline completely.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: James F. Dougherty <jfd@broadcom.com>
Cc: Wolfgang Denk <wd@denx.de>
Acked-by: Marek Vasut <marex@denx.de>
12 years agonds32: Change macro from BOARD_LATE_INIT to CONFIG_BOARD_LATE_INIT
Nobuhiro Iwamatsu [Tue, 17 Apr 2012 16:41:14 +0000 (16:41 +0000)]
nds32: 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: Macpaul Lin <macpaul@andestech.com>
[trini: Fixup for context changes]
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoRemove lh7a40x cpu and serial driver
Albert ARIBAUD [Mon, 8 Oct 2012 04:11:38 +0000 (04:11 +0000)]
Remove lh7a40x cpu and serial driver

Since commit 957731ed (ARM: remove broken "lpd7a40x" boards),
lh7a40x cpu and serial driver have become unused. Remove them.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
12 years agotools/env: Improve debug prints
Joe Hershberger [Mon, 15 Oct 2012 15:29:25 +0000 (15:29 +0000)]
tools/env: Improve debug prints

Provide more information when using redundant environments
Consistently print debug info to stderr

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
12 years agotools/env: Fix variable delete operation
Joe Hershberger [Mon, 15 Oct 2012 15:29:24 +0000 (15:29 +0000)]
tools/env: Fix variable delete operation

Fix crash introduced by a073d63a36524453a817ab029fad5b188f46127e
when attempting to delete a variable.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
12 years agoMIPS: qemu_mips.h: cleanup coding style and checkpatch.pl issues
Daniel Schwierzeck [Tue, 16 Oct 2012 13:02:08 +0000 (15:02 +0200)]
MIPS: qemu_mips.h: cleanup coding style and checkpatch.pl issues

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
12 years agoMIPS: add board qemu-mips64 support
Zhi-zhou Zhang [Tue, 16 Oct 2012 13:02:08 +0000 (15:02 +0200)]
MIPS: add board qemu-mips64 support

Both big-endian and little-endian are tested with below commands:
Rom version: (Default, Now we config it as rom version)
qemu-system-mips64el -M mips -bios u-boot.bin -cpu MIPS64R2-generic -nographic
qemu-system-mips64 -M mips -bios u-boot.bin -cpu MIPS64R2-generic -nographic
Ram version:
qemu-system-mips64el -M mips -cpu MIPS64R2-generic -kernel u-boot -nographic
qemu-system-mips64 -M mips -cpu MIPS64R2-generic -kernel u-boot -nographic

Signed-off-by: Zhizhou Zhang <etou.zh@gmail.com>
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
12 years agoMIPS: qemu_mips: move CONFIG_SYS_TEXT_BASE to qemu-mips.h
Zhi-zhou Zhang [Tue, 16 Oct 2012 13:02:08 +0000 (15:02 +0200)]
MIPS: qemu_mips: move CONFIG_SYS_TEXT_BASE to qemu-mips.h

We define CONFIG_SYS_TEXT_BASE in board's specified header file.
So config.mk is useless, then remove it.

Signed-off-by: Zhizhou Zhang <etou.zh@gmail.com>
12 years agoMIPS: add support for 64 bit addressing
Zhi-zhou Zhang [Tue, 16 Oct 2012 13:02:08 +0000 (15:02 +0200)]
MIPS: add support for 64 bit addressing

Prepare for upcoming mips64 support. This patch add mips64 address
support.

Signed-off-by: Zhizhou Zhang <etou.zh@gmail.com>
[daniel.schwierzeck@gmail.com: prefer _MIPS_SZLONG in posix_types.h to fix some warnings]
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
12 years agoMIPS: don't use camel-case style
Zhi-zhou Zhang [Tue, 16 Oct 2012 13:02:08 +0000 (15:02 +0200)]
MIPS: don't use camel-case style

Replace camel-case style with upper-case style globally.

Signed-off-by: Zhizhou Zhang <etou.zh@gmail.com>
12 years agoh2200: Add support for iPAQ h2200 palmtop
Łukasz Dałek [Mon, 15 Oct 2012 07:46:54 +0000 (07:46 +0000)]
h2200: Add support for iPAQ h2200 palmtop

Add basic support for HP iPAQ h2200 palmtop. h2200 palmtop was targeted
to general consumers. It has 64 MB of RAM, 32 MB flash. No intergrated
Wi-Fi nor Ethernet. Based on Intel PXA255 processor. It was shipped with
Windows CE 4.2 operating system.

Signed-off-by: Lukasz Dalek <luk0104@gmail.com>
12 years agoi2c_probe: update for use in scripting
Eric Nelson [Sun, 23 Sep 2012 10:12:56 +0000 (10:12 +0000)]
i2c_probe: update for use in scripting

Allow the use of an I2C address to test and return success
if one or more devices is found.

This allows device presence to alter the flow of a script.
e.g.
   if i2c probe 0x04 ; then
echo found Hannstar touch ;
   fi

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
12 years agocommon/i2c: Add i2c write command
York Sun [Sun, 16 Sep 2012 08:02:30 +0000 (08:02 +0000)]
common/i2c: Add i2c write command

Add i2c write command to write data from memory to i2c devices.

Signed-off-by: York Sun <yorksun@freescale.com>
12 years agoi2c: sh_i2c: use setbits/clrbits macro
Tetsuyuki Kobayashi [Thu, 13 Sep 2012 19:08:05 +0000 (19:08 +0000)]
i2c: sh_i2c: use setbits/clrbits macro

Use setbits/clrbits macro when read-modify-write register.

Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
Acked-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
12 years agoarm: rmobile: kzm9g: enable I2C2
Tetsuyuki Kobayashi [Thu, 13 Sep 2012 19:08:04 +0000 (19:08 +0000)]
arm: rmobile: kzm9g: enable I2C2

Acked-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
12 years agoarm: rmobile: kzm9g: enable I2C1
Tetsuyuki Kobayashi [Thu, 13 Sep 2012 19:08:03 +0000 (19:08 +0000)]
arm: rmobile: kzm9g: enable I2C1

Supply clock to I2C1 and release resetting.

Acked-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
12 years agoi2c: sh_i2c.c: check error in i2c_read and i2c_write
Tetsuyuki Kobayashi [Thu, 13 Sep 2012 19:08:01 +0000 (19:08 +0000)]
i2c: sh_i2c.c: check error in i2c_read and i2c_write

Before this patch, i2c_{read,write} always returned 0.
Check TACK in i2c_raw_{read,write} so that i2c_{read,write} return non-zero when error.

Acked-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
12 years agoi2c: sh_i2c: enable i2c_probe
Tetsuyuki Kobayashi [Thu, 13 Sep 2012 19:08:00 +0000 (19:08 +0000)]
i2c: sh_i2c: enable i2c_probe

Before this patch i2c_probe() always returned 0 and "i2c probe" command did not work properly.

Modify i2c_set_addr() to check TACK when waiting DTE and make i2c_probe() call this function.

Acked-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
12 years agoi2c: sh_i2c.c: support I2C2, I2C3 and I2C4
Tetsuyuki Kobayashi [Thu, 13 Sep 2012 19:07:59 +0000 (19:07 +0000)]
i2c: sh_i2c.c: support I2C2, I2C3 and I2C4

sh_i2c.c support I2C0 and I2C1. This patch extends it to I2C4.

Acked-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
12 years agoi2c: sh_i2c.c: adjust for SH73A0
Tetsuyuki Kobayashi [Thu, 13 Sep 2012 19:07:58 +0000 (19:07 +0000)]
i2c: sh_i2c.c: adjust for SH73A0

Adjust i2c_raw_read() in sh_i2c.c to work for SH73A0.
After this patch, "i2c md" and "i2c mw" command on U-Boot work properly on KZM-A9-GT board.

Acked-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
12 years agoi2c: sh_i2c.c: correct BUSY bit define in ICSR
Tetsuyuki Kobayashi [Thu, 13 Sep 2012 19:07:57 +0000 (19:07 +0000)]
i2c: sh_i2c.c: correct BUSY bit define in ICSR

Correct BUSY bit define in ICSR from (1<<3) to (1<<4).

Acked-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>