project/bcm63xx/u-boot.git
14 years agoTI DA8xx: Add DA8xx cpu functions
Sekhar Nori [Thu, 12 Nov 2009 16:07:22 +0000 (11:07 -0500)]
TI DA8xx: Add DA8xx cpu functions

Provides initial support for TI OMAP-L1x/DA8xx SoC devices.
See http://www.ti.com

Provides:
Low level initialisation.
System clock API.
Timer control.

Signed-off-by: Nick Thompson <nick.thompson@gefanuc.com>
14 years agoAdd TI DA8xx support: DA8xx includes
Nick Thompson [Thu, 12 Nov 2009 16:06:08 +0000 (11:06 -0500)]
Add TI DA8xx support: DA8xx includes

Provides initial support for TI OMAP-L1x/DA8xx SoC devices.
See http://www.ti.com

The DA8xx devices are similar to DaVinci devices but have a differing
memory map and updated peripheral versions.

Signed-off-by: Nick Thompson <nick.thompson@gefanuc.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
14 years agoTI Davinci: add a pin multiplexer configuration API
Nick Thompson [Thu, 12 Nov 2009 16:03:23 +0000 (11:03 -0500)]
TI Davinci: add a pin multiplexer configuration API

Creates a method allowing pin settings to be logically grouped into data
structure arrays and provides an API to configure the pinmux settings to
enable the relevant pin functions.

Signed-off-by: Nick Thompson <nick.thompson@gefanuc.com>
14 years agoTI Davinci timer.c: Remove volatiles and memory mapped structures
Nick Thompson [Thu, 12 Nov 2009 16:02:17 +0000 (11:02 -0500)]
TI Davinci timer.c: Remove volatiles and memory mapped structures

Remove volatiles and memory mapped structure accesses and replace with
readl and writel macro usage.

Signed-off-by: Nick Thompson <nick.thompson@gefanuc.com>
14 years agoOMAP3: pandora: fix booting without serial attached
Grazvydas Ignotas [Thu, 12 Nov 2009 09:46:07 +0000 (11:46 +0200)]
OMAP3: pandora: fix booting without serial attached

When the board is booted without serial cable attached (which
is how most of them will be used) UART RX is left floating and
sometimes picks noise, which interrupts countdown and enters
U-Boot prompt instead of booting the kernel.

Fix this by setting up internal pullup on UART RX pin. This
does not prevent serial from working as the internal pullup
is weak.

Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
14 years agoAdd a unified s3c24x0 header file
kevin.morfitt@fearnside-systems.co.uk [Tue, 17 Nov 2009 09:30:34 +0000 (18:30 +0900)]
Add a unified s3c24x0 header file

This patch adds a unified s3c24x0 cpu header file that selects the header
file for the specific s3c24x0 cpu from the SOC and CPU configs defined in
board config file. This removes the current chain of s3c24-type #ifdef's
from the s3c24x0 code.

Signed-off-by: Kevin Morfitt <kevin.morfitt@fearnside-systems.co.uk>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
14 years agoS3C6400/SMDK6400: fix stack_setup in start.S
Seunghyeon Rhee [Fri, 13 Nov 2009 07:49:41 +0000 (16:49 +0900)]
S3C6400/SMDK6400: fix stack_setup in start.S

Fix stack_setup to place the stack on the correct address in DRAM
accroding to U-Boot standard and remove conditional compilation by
CONFIG_MEMORY_UPPER_CODE macro that is not necessry. This macro
was introduced and used only by this board for some unclear reason.

The definition of this macro is also removed because it's not
referenced elsewhere.

Signed-off-by: Seunghyeon Rhee <seunghyeon@lpmtec.com>
Tested-by: Minkyu Kang <mk7.kang@samsung.com>
14 years agos5pc1xx: serial: fix the error check logic
Minkyu Kang [Tue, 10 Nov 2009 11:23:50 +0000 (20:23 +0900)]
s5pc1xx: serial: fix the error check logic

Because of Frame error, Parity error and Overrun error are occured only receive
operation, need to masking when error checking.

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
14 years agoClean-up of s3c24x0 header files
kevin.morfitt@fearnside-systems.co.uk [Wed, 4 Nov 2009 08:49:31 +0000 (17:49 +0900)]
Clean-up of s3c24x0 header files

Cleans up the s3c24x0 header files:

s4c24x0.h: removes the use of 'volatile' from the S3C24X0_REG8,
S3C24X0_REG16 and S3C24X0_REG32 register typedef's. Registers are always
accessed using the IO accessor functions which cast the register address
as 'volatile' anyway so it isn't required here.

s3c2400.h and s3c2410.h: insert a blank line between the static inline
functions

Signed-off-by: Kevin Morfitt <kevin.morfitt@fearnside-systems.co.uk>
14 years agos3c64xx: move s3c64xx header files to asm-arm/arch-s3c64xx
Minkyu Kang [Wed, 4 Nov 2009 07:07:59 +0000 (16:07 +0900)]
s3c64xx: move s3c64xx header files to asm-arm/arch-s3c64xx

This patch moves the s3c64xx header files from include/
to include/asm-arm/arch-s3c64xx

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
14 years agoMove s3c24x0 header files to asm-arm/arch-s3c24x0/
kevin.morfitt@fearnside-systems.co.uk [Tue, 3 Nov 2009 09:08:41 +0000 (18:08 +0900)]
Move s3c24x0 header files to asm-arm/arch-s3c24x0/

This patch moves the s3c24x0 header files from include/ to
include/asm-arm/arch-s3c24x0/.

checkpatch.pl showed 2 errors and 3 warnings. The 2 errors were both due
to a non-UTF8 character in David M?ller's name:

ERROR: Invalid UTF-8, patch and commit message should be encoded in UTF-8
#489: FILE: include/asm-arm/arch-s3c24x0/s3c2410.h:3:
+ * David M?ller ELSOFT AG Switzerland. d.mueller@elsoft.ch

As David's name correctly contains a non-UTF8 character I haven't fixed
these errors.

The 3 warnings were all because of the use of 'volatile' in s3c24x0.h:

WARNING: Use of volatile is usually wrong: see Documentation/volatile-considered-harmful.txt
#673: FILE: include/asm-arm/arch-s3c24x0/s3c24x0.h:35:
+typedef volatile u8 S3C24X0_REG8;
+typedef volatile u16 S3C24X0_REG16;
+typedef volatile u32 S3C24X0_REG32;

I'll fix these errors in another patch.

Tested by running MAKEALL for ARM8 targets and ensuring there were no new
errors or warnings.

Signed-off-by: Kevin Morfitt <kevin.morfitt@fearnside-systems.co.uk>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
14 years agoARM Update mach-types
Tom Rix [Sun, 15 Nov 2009 16:58:06 +0000 (10:58 -0600)]
ARM Update mach-types

Fetched from http://www.arm.linux.org.uk/developer/machines/download.php
And built with

repo http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm
commit 156171c71a0dc4bce12b4408bb1591f8fe32dc1a

Signed-off-by: Tom Rix <Tom.Rix@windriver.com>
14 years agosheevaplug: correct SDRAM address control register
Mark Asselstine [Tue, 27 Oct 2009 14:10:40 +0000 (19:40 +0530)]
sheevaplug: correct SDRAM address control register

value

The SheevaPlug DevKit is shipped with 4x8 by 1Gb DDR devices in
two banks for a total of 512MB of RAM. Based on this configuration
the existing values for SDRAM address control register are incorrect
and result in random kernel oops as memory is incorrectly accessed
(while for example extracting a large tarball such as a rootfs).
Based on the hardware configuration along with the supporting
documentation from Marvell these are the correct values, as
well this change mimics values previously used in Marvell's own
u-boot git tree for the SheevaPlug.

Other variants of the hardware such as the PogoPlug and TonidoPlug
may have different memory configurations but to properly support
those additional board directories should be maintained or a better
system to support other kwb*.cfg is needed.

Tested on SheevaPlug DevKit.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
14 years agoFix for Void function returning value in sbc35-a9g20
Sandeep Paulraj [Wed, 28 Oct 2009 23:16:43 +0000 (19:16 -0400)]
Fix for Void function returning value in sbc35-a9g20

Void function was returning 0 in the m41t94 rtc driver.
This makes it similar to m41t62 rtc driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoARM Update mach-types.h
Tom Rix [Sat, 24 Oct 2009 19:48:33 +0000 (14:48 -0500)]
ARM Update mach-types.h

From http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm

Commit id 0996391139f43d032335b5360db11da62a2cbb39

Signed-off-by: Tom Rix <Tom.Rix@windriver.com>
14 years agoMerge branch 'next' of git://www.denx.de/git/u-boot-ppc4xx into next
Wolfgang Denk [Tue, 24 Nov 2009 22:13:06 +0000 (23:13 +0100)]
Merge branch 'next' of git://denx.de/git/u-boot-ppc4xx into next

14 years agoppc4xx: Cleanup PPC4xx I2C infrastructure
Stefan Roese [Thu, 19 Nov 2009 13:03:17 +0000 (14:03 +0100)]
ppc4xx: Cleanup PPC4xx I2C infrastructure

This patch cleans up the PPC4xx I2C intrastructure:

- Use C struct to describe the I2C registers instead of defines
- Coding style cleanup (braces, whitespace, comments, line length)
- Extract common code from i2c_read() and i2c_write()
- Remove unneeded IIC defines from ppc405.h & ppc440.h

Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoppc4xx: Remove some testing code from 4xx_pcie.c
Stefan Roese [Thu, 19 Nov 2009 10:49:36 +0000 (11:49 +0100)]
ppc4xx: Remove some testing code from 4xx_pcie.c

This code got included accidentally.

Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoat91: Extended soft_i2c driver for AT91SAM9263 SoC
Daniel Gorsulowski [Mon, 18 May 2009 11:20:54 +0000 (13:20 +0200)]
at91: Extended soft_i2c driver for AT91SAM9263 SoC

While hard_i2c support is not available
(see http://lists.denx.de/pipermail/u-boot/2009-March/049751.html),
this patch enables soft_i2c on AT91SAM9263 SoC.

Signed-off-by: Daniel Gorsulowski <Daniel.Gorsulowski@esd.eu>
14 years agoAdd 'true' and 'false' commands
Peter Tyser [Fri, 16 Oct 2009 22:36:27 +0000 (17:36 -0500)]
Add 'true' and 'false' commands

These commands are only enabled when the hush shell is enabled and can
be useful in scripts such as:

while true do
    echo "Booting OS...";
    run $bootcmd;
    echo "Booting OS failed";
    sleep 10;
done

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
14 years agocmd_help: General cleanup
Peter Tyser [Fri, 16 Oct 2009 22:36:26 +0000 (17:36 -0500)]
cmd_help: General cleanup

Shorten the overly-verbose help message of 'help' and clean up some
redundant ifdefery while we're at it.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
14 years agocommand.c: Break commands out to appropriate cmd_*.c files
Peter Tyser [Fri, 16 Oct 2009 22:36:25 +0000 (17:36 -0500)]
command.c: Break commands out to appropriate cmd_*.c files

command.c should contain common code related to commands, not
miscellaneous command implementations.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
14 years agoMerge branch 'next' of git://git.denx.de/u-boot-nand-flash into next
Wolfgang Denk [Sat, 21 Nov 2009 22:17:57 +0000 (23:17 +0100)]
Merge branch 'next' of git://git.denx.de/u-boot-nand-flash into next

14 years agoMerge branch 'next' of git://www.denx.de/git/u-boot-ppc4xx into next
Wolfgang Denk [Sat, 21 Nov 2009 22:14:58 +0000 (23:14 +0100)]
Merge branch 'next' of git://denx.de/git/u-boot-ppc4xx into next

14 years agoNAND: Add Support for 4K page size in DaVinci NAND driver
Sandeep Paulraj [Fri, 20 Nov 2009 04:04:42 +0000 (23:04 -0500)]
NAND: Add Support for 4K page size in DaVinci NAND driver

This patch adds support for NAND devices with a page size of
4K in the DaVinci NAND driver. The layout matches the layout that TI uses
for 4K page size NAND devices in the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoppc4xx: Remove unused features from PMC440 board support
Matthias Fuchs [Wed, 18 Nov 2009 15:29:29 +0000 (16:29 +0100)]
ppc4xx: Remove unused features from PMC440 board support

This patch shrinks the PMC440 u-boot binary (from next branch)
to fit into 384kB again.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Remove confusing comment
Matthias Fuchs [Wed, 18 Nov 2009 15:28:42 +0000 (16:28 +0100)]
ppc4xx: Remove confusing comment

This is not the sequoia board.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: alpr: Remove some not needed commands to make image fit again
Stefan Roese [Tue, 17 Nov 2009 14:53:00 +0000 (15:53 +0100)]
ppc4xx: alpr: Remove some not needed commands to make image fit again

The latest changes in the u-boot/next branch increased the size of the
alpr image a bit more. Now it doesn't fit into the 256k reserved for it.
This patch now removes the commands "askenv" and "irq" which are not
needed in the production systems.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Pieter Voorthuijsen <pieter.voorthuijsen@prodrive.nl>
15 years agoppc4xx: Consolidate pci_master_init() function
Stefan Roese [Thu, 12 Nov 2009 16:19:37 +0000 (17:19 +0100)]
ppc4xx: Consolidate pci_master_init() function

This patch removes the duplicted implementations of the pci_master_init()
function by introducing a weak default function for it. It can be
overridden by a board specific version.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Consolidate pci_pre_init() function
Stefan Roese [Thu, 12 Nov 2009 15:41:09 +0000 (16:41 +0100)]
ppc4xx: Consolidate pci_pre_init() function

This patch removes the duplicted implementations of the pci_pre_init()
function by introducing a weak default function for it. This weak default
has a different implementation for some PPC variants. It can be
overridden by a board specific version.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Consolidate pci_target_init() function
Stefan Roese [Thu, 12 Nov 2009 11:00:49 +0000 (12:00 +0100)]
ppc4xx: Consolidate pci_target_init() function

This patch removes the duplicted implementations of the pci_target_init()
function by introducing a weak default function for it. This weak default
has a different implementation for 440EP(x)/GR(x) PPC's. It can be
overridden by a board specific version (e.g. PMC440, korat).

Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Matthias Fuchs <matthias.fuchs@esd.eu>
15 years agoS3C2410 NAND Flash Add Missing Function
Hui.Tang [Wed, 18 Nov 2009 08:24:04 +0000 (16:24 +0800)]
S3C2410 NAND Flash Add Missing Function

This patch add nand_read_buf() for S3C2410 NAND SPL.
In nand_spl/nand_boot.c, nand_boot() will check nand->select_chip,
so nand->select_chip should also be initialized.

Signed-off-by: Hui.Tang <zetalabs@gmail.com>
15 years agoNAND: Update read_read_subpage API check
Sandeep Paulraj [Mon, 16 Nov 2009 18:32:01 +0000 (13:32 -0500)]
NAND: Update read_read_subpage API check

This patch updates a check condition in the NAND driver.
The check condition is similat to what is in linux/next.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND:Extending the nand_ecclayout structure
Sandeep Paulraj [Mon, 16 Nov 2009 18:31:47 +0000 (13:31 -0500)]
NAND:Extending the nand_ecclayout structure

NANDs with page size of lesser than and equal to 2K are
reaching EOL. They are bing replaced with NANDs of
page size 4K and above.
To support this we have to extend the eccpos field

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoOMAP2/3: I2C: Add support for second and third bus
Dirk Behme [Mon, 2 Nov 2009 19:36:26 +0000 (20:36 +0100)]
OMAP2/3: I2C: Add support for second and third bus

Add support to use second and third I2C bus, too.

Bus 0 is still the default, but by calling i2c_set_bus_num(1/2) before doing
I2C accesses, code can switch to bus 1 and 2, too. Don't forget to switch
back afterwards, then.

Signed-off-by: Dirk Behme <dirk.behme@googlemail.com>
15 years agoMerge branch 'master' into next
Wolfgang Denk [Sun, 15 Nov 2009 22:13:40 +0000 (23:13 +0100)]
Merge branch 'master' into next

15 years agoMerge branch 'master' of git://git.denx.de/u-boot-net
Wolfgang Denk [Sun, 15 Nov 2009 21:50:52 +0000 (22:50 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-net

15 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Sun, 15 Nov 2009 21:48:02 +0000 (22:48 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

15 years agoMerge branch 'master-sync' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Sun, 15 Nov 2009 21:27:16 +0000 (22:27 +0100)]
Merge branch 'master-sync' of git://git.denx.de/u-boot-arm

15 years agoENV Variable support for Flex-OneNAND
Amul Kumar Saha [Wed, 4 Nov 2009 05:08:46 +0000 (10:38 +0530)]
ENV Variable support for Flex-OneNAND

Define and use CONFIG_ENV_ADDR_FLEX and CONFIG_ENV_SIZE_FLEX
for storing environment variables.

Signed-off-by: Rohit Hagargundgi <h.rohit@samsung.com>
Signed-off-by: Amul Kumar Saha <amul.saha@samsung.com>
15 years agoFlex-OneNAND driver support
Amul Kumar Saha [Fri, 6 Nov 2009 11:45:31 +0000 (17:15 +0530)]
Flex-OneNAND driver support

This patch adds support for Flex-OneNAND devices.

Signed-off-by: Rohit Hagargundgi <h.rohit@samsung.com>
Signed-off-by: Amul Kumar Saha <amul.saha@samsung.com>
15 years agofsl_elbc_nand: remove the bbt descriptors relocation fixup
Mingkai Hu [Tue, 20 Oct 2009 08:58:17 +0000 (16:58 +0800)]
fsl_elbc_nand: remove the bbt descriptors relocation fixup

The commit 66372fe2 manually relocated the bbt pattern pointer,
which can be removed by using full relocation.

Signed-off-by: Mingkai Hu <Mingkai.hu@freescale.com>
15 years agoppc/85xx: make boot from NAND full relocation to RAM
Mingkai Hu [Tue, 20 Oct 2009 08:58:16 +0000 (16:58 +0800)]
ppc/85xx: make boot from NAND full relocation to RAM

Take advantage of the latest full relocation commit of PPC platform
for boot from NAND.

Signed-off-by: Mingkai Hu <Mingkai.hu@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
15 years agoNAND: fix "raw" reads with ECC syndrome layouts
David Brownell [Sat, 7 Nov 2009 21:27:01 +0000 (16:27 -0500)]
NAND: fix "raw" reads with ECC syndrome layouts

The syndrome based page read/write routines store ECC, and possibly other
"OOB" data, right after each chunk of ECC'd data.  With ECC chunk size of
512 bytes and a large page (2KiB) NAND, the layout is:

  data-0 OOB-0 data-1 OOB-1 data-2 OOB-2 data-3 OOB-3 OOB-leftover

Where OOBx is (prepad, ECC, postpad).  However, the current "raw" routines
use a traditional layout -- data OOB, disregarding the prepad and postpad
values -- so when they're used with that type of ECC hardware, those calls
mix up the data and OOB.  Which means, in particular, that bad block
tables won't be found on startup, with data corruption and related chaos
ensuing.

The current syndrome-based drivers in mainline all seem to use one chunk
per page; presumably they haven't noticed such bugs.

Fix this, by adding read/write page_raw_syndrome() routines as siblings of
the existing non-raw routines; "raw" just means to bypass the ECC
computations, not change data and OOB layout.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
15 years agoNAND: Don't walk past end of oobfree[]
Sandeep Paulraj [Sat, 7 Nov 2009 19:25:18 +0000 (14:25 -0500)]
NAND: Don't walk past end of oobfree[]

When computing oobavail from the list of free areas in the OOB,
don't assume there will always be an unused slot at the end.
This syncs up with the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Update check condition for nand_read_page_hwecc API
Sandeep Paulraj [Sat, 7 Nov 2009 19:25:03 +0000 (14:25 -0500)]
NAND: Update check condition for nand_read_page_hwecc API

The patch updates the check condition for determining
whether the ECC corrections has failed.
This makes it similar to what is in the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Updating comments/explanations in the NAND driver
Sandeep Paulraj [Sat, 7 Nov 2009 19:24:50 +0000 (14:24 -0500)]
NAND: Updating comments/explanations in the NAND driver

Patch updates the comments and explanations for
the arguments to various functions.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Subpage shift for ecc_steps equal to 16
Sandeep Paulraj [Sat, 7 Nov 2009 19:24:34 +0000 (14:24 -0500)]
NAND: Subpage shift for ecc_steps equal to 16

This was originally part of Thomas Gleixner's patch for
adding support for 4KiB pages.
This is not part of the U-Boot NAND driver so updating the
driver with this to sync up with the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Remove commented out code
Sandeep Paulraj [Sat, 7 Nov 2009 19:24:20 +0000 (14:24 -0500)]
NAND: Remove commented out code

Patch removes already commented out dead code

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Correct the "chip_shift" calculation
Sandeep Paulraj [Sat, 7 Nov 2009 19:24:06 +0000 (14:24 -0500)]
NAND: Correct the "chip_shift" calculation

This patch updates the "chip_shift" calculation in the
NAND driver. This is being done to sync up the NAND driver with
the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Update to support 64 bit device size
Sandeep Paulraj [Fri, 30 Oct 2009 17:51:23 +0000 (13:51 -0400)]
NAND: Update to support 64 bit device size

This patch adds support for NANDs greater than 2 GB.
Patch is based on the MTD NAND driver in the kernel.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
15 years agocmd_nand: Move conditional compilation to Makefile
Peter Tyser [Thu, 15 Oct 2009 15:48:18 +0000 (10:48 -0500)]
cmd_nand: Move conditional compilation to Makefile

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agocmd_nand: Remove duplicate include
Peter Tyser [Thu, 15 Oct 2009 15:48:17 +0000 (10:48 -0500)]
cmd_nand: Remove duplicate include

Also remove vague, unnecessary comment

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agoppc/85xx: Fix how we determine the number of CAM entries
Kumar Gala [Fri, 13 Nov 2009 14:52:21 +0000 (08:52 -0600)]
ppc/85xx: Fix how we determine the number of CAM entries

We were incorrectly use the max CAM size as the number of entries in
the array for setting up the addrmap.  We should be using the NENTRY
field which is the low 12-bits of TLB1CFG.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agosmc911x: make smc911x_initialize return correct value
Mike Rapoport [Thu, 12 Nov 2009 13:35:08 +0000 (15:35 +0200)]
smc911x: make smc911x_initialize return correct value

Make smc911x_initialize return -1 on error and number of interfaces
detected otherwise.

Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agosmc911x_eeprom: fix building after smc911x overhaul
Mike Frysinger [Fri, 13 Nov 2009 03:26:02 +0000 (22:26 -0500)]
smc911x_eeprom: fix building after smc911x overhaul

When the smc911x driver was converted to NET_MULTI, the smc911x eeprom was
missed.  The config option needed updating as well as overhauling of the
rergister read/write functions.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Mike Rapoport <mike.rapoport@gmail.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agofsl-ddr: Fix the chip-select interleaving issue
Dave Liu [Wed, 11 Nov 2009 23:26:37 +0000 (07:26 +0800)]
fsl-ddr: Fix the chip-select interleaving issue

commit 1542fbdeec0d1e2a6df13189df8dcb1ce8802be3
introduced one new bug to chip-select interleaving.

Single DDR controller also can do the chip-select
interleaving if there is dual-rank or qual-rank DIMMs.

Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agoMerge branch 'master' of git://git.denx.de/u-boot-net
Wolfgang Denk [Wed, 11 Nov 2009 22:10:34 +0000 (23:10 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-net

15 years agoMerge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Wed, 11 Nov 2009 21:58:30 +0000 (22:58 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx

15 years agomxc_fec: avoid free() calls to already freed pointers.
javier Martin [Thu, 29 Oct 2009 07:22:43 +0000 (08:22 +0100)]
mxc_fec: avoid free() calls to already freed pointers.

Sometimes, inside NetLoop, eth_halt() is called before eth_init() has
been called. This is harmless except for free() calls to pointers
which have not been allocated yet.

This patch initializes those pointers to NULL and allocates them only
the first time. This way we can get rid of free calls in halt callback.

This has been tested in i.MX27 Litekit board and eldk-4.2 toolchains.

Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agomxc_fec: fix some erroneous PHY accesses.
javier Martin [Thu, 29 Oct 2009 07:18:34 +0000 (08:18 +0100)]
mxc_fec: fix some erroneous PHY accesses.

This patch fixes erroneous access to the ethernet PHY which broke the driver.
1. Selector field in the auto-negotiation register must be 0x00001 for
using 802.3, not 0x00000 which is reseved.
2. Access to the PHY address specified by CONFIG_FEC_MXC_PHYADDR, not
0x0 fixed address.

This has been tested in i.MX27 Litekit board and eldk-4.2 toolchains.

Now using proper defines for auto-negotiation register.

Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoARM Don't inline weak symbols
Ron Lee [Wed, 5 Aug 2009 18:14:01 +0000 (20:14 +0200)]
ARM Don't inline weak symbols

------------------------------------------------------------------------

GCC 4.4 complains about this now.

Signed-off-by: Ron Lee <ron@debian.org>
15 years agoppc4xx: Katmai: Add chip_config command
Stefan Roese [Mon, 9 Nov 2009 13:15:42 +0000 (14:15 +0100)]
ppc4xx: Katmai: Add chip_config command

This patch removes the Katmai "bootstrap" command and replaces it
with the now common command "chip_config".

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Switch to I2C bus numer 0 for chip_config command
Stefan Roese [Mon, 9 Nov 2009 13:13:43 +0000 (14:13 +0100)]
ppc4xx: Switch to I2C bus numer 0 for chip_config command

All currently available 4xx derivats have the I2C bootstrap EEPROM
located on I2C bus number 0. This patch now first sets this bus number,
so that the chip_config command also works for board with multiple
I2C busses, like Katmai.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Add UBI support to PLU405 boards
Matthias Fuchs [Tue, 27 Oct 2009 11:19:11 +0000 (12:19 +0100)]
ppc4xx: Add UBI support to PLU405 boards

-add UBI support
-increase malloc'able memory size
-cleanup MONITOR|FLASH_BASE|LEN constants

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoFix SMC91111 regression: lpd7a40x build failures
Ben Warren [Mon, 9 Nov 2009 21:09:57 +0000 (13:09 -0800)]
Fix SMC91111 regression: lpd7a40x build failures

Both lpd7a400 and lpd7a404 failed to compile because they had
CONFIG_SMC_USE_IOFUNCS defined:

examples/standalone/smc91111_eeprom.c:388: undefined reference to `SMC_outw'

Also removed an orphaned paren in lpd7a404.h

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoSMC91111: Clean up SMC_inx macros on xsengine and xaeniax
Ben Warren [Mon, 9 Nov 2009 22:01:08 +0000 (14:01 -0800)]
SMC91111: Clean up SMC_inx macros on xsengine and xaeniax

This patch fixes the following warnings:

Configuring for xaeniax board...
smc91111_eeprom.c: In function 'print_macaddr':
smc91111_eeprom.c:278: warning: suggest parentheses around + or - in operand of &
smc91111_eeprom.c:281: warning: suggest parentheses around + or - in operand of &
...
Configuring for xsengine board...
smc91111_eeprom.c: In function 'print_macaddr':
smc91111_eeprom.c:278: warning: suggest parentheses around + or - inside shift
smc91111_eeprom.c:281: warning: suggest parentheses around + or - inside shift

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoMerge branch 'master-sync' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Mon, 9 Nov 2009 21:46:32 +0000 (22:46 +0100)]
Merge branch 'master-sync' of git://git.denx.de/u-boot-arm

15 years agoFix CS8900 regression on impa7 board
Ben Warren [Mon, 9 Nov 2009 19:43:18 +0000 (11:43 -0800)]
Fix CS8900 regression on impa7 board

The following error was seen on impa7 board, due to its use of a 32-bit bus
on CS8900.
cs8900.c:137:37: error: macro "get_reg_init_bus" passed 2 arguments, but takes just 1

This patch gives the macro the correct number of arguments

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoclarify eth driver halt/recv steps
Mike Frysinger [Mon, 2 Nov 2009 03:39:56 +0000 (22:39 -0500)]
clarify eth driver halt/recv steps

The dev->halt() func can be called at any time, and the dev->recv() func
does not need to use NetRxPackets[] when calling NetReceive().

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoFix cs8900 dev->priv not init issue
Hui.Tang [Thu, 5 Nov 2009 01:58:44 +0000 (09:58 +0800)]
Fix cs8900 dev->priv not init issue

Ensure all CS8900 data structures are assigned before accessing device

Signed-off-by: Hui.Tang <zetalabs@gmail.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoppc4xx: 44x_spd_ddr2.c: Fix register macro ECCCR -> ECCES (SDRAM_ECCES)
Stefan Roese [Tue, 3 Nov 2009 13:34:45 +0000 (14:34 +0100)]
ppc4xx: 44x_spd_ddr2.c: Fix register macro ECCCR -> ECCES (SDRAM_ECCES)

This error only appears when DEBUG is enabled in this driver. That's why
it went unnoticed till now.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Canyonlands: Change EBC bus config to drive always (no high-z)
Stefan Roese [Thu, 29 Oct 2009 17:37:45 +0000 (18:37 +0100)]
ppc4xx: Canyonlands: Change EBC bus config to drive always (no high-z)

This patch fixes a problem only seen very occasionally on Canyonlands.
The NOR flash interface (CFI driver) doesn't work reliably in all cases.
Erasing and/or programming sometimes doesn't work. Sometimes with
an error message, like "flash not erased" when trying to program an
area that should have just been erased. And sometimes without any error
messages. As mentioned above, this problem was only seen rarely and with
some PLL configuration (CPU speed, EBC speed).

Now I spotted this problem a few times, when running my Canyonlands with
the following setup (chip_config):

1000-nor         - NOR  CPU:1000 PLB: 200 OPB: 100 EBC: 100

Changing the EBC configuration to not release the bus into high
impedance state inbetween the transfers (ATC, DTC and CTC bits set to 1
in EBC0_CFG) seems to fix this problem. I haven't seen any failure
anymore with this patch applied.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: David Mitchell <dmitchell@amcc.com>
Cc: Jeff Mann <MannJ@embeddedplanet.com>
15 years agoppc4xx: Fix NAND booting targets after 4xx linker script consolidation
Stefan Roese [Mon, 9 Nov 2009 12:01:19 +0000 (13:01 +0100)]
ppc4xx: Fix NAND booting targets after 4xx linker script consolidation

Somehow I missed the NAND booting targets in the 4xx linker script
consolidation patchset. This patch fixes this issue.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Remove duplicated is_pci_host() functions
Stefan Roese [Thu, 29 Oct 2009 15:54:52 +0000 (16:54 +0100)]
ppc4xx: Remove duplicated is_pci_host() functions

This patch introduces a weak default function for is_pci_host(),
returning 1. This is the default behaviour, since most boards only
implement PCI host functionality. This weak default can be overridden
by a board specific version if needed.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Consolidate 4xx PCIe board specific configuration
Stefan Roese [Thu, 29 Oct 2009 14:04:35 +0000 (15:04 +0100)]
ppc4xx: Consolidate 4xx PCIe board specific configuration

This patch consolidates the PPC4xx board specific PCIe configuration
code. This way the duplicated code is removed. Boards can implement a
special, non standard behaviour (e.g. number of PCIe slots, etc) by
overriding the weak default functions.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoARM: Use Linux version for unaligned access code
Remy Bohmer [Thu, 29 Oct 2009 11:29:37 +0000 (12:29 +0100)]
ARM: Use Linux version for unaligned access code

The asm-arm/unaligned.h includes linux/unaligned/access_ok.h
This file is unsafe to be used on ARM, since it does an unaligned memory
accesses which fails on ARM.

Lookin at Linux the basic difference seems to be the header
"include/asm-arm/unaligned.h". The Linux version of "unaligned.h"
does *not* include "access_ok.h" at all. It includes "le_byteshift.h"
and "be_byteshift.h" instead.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
Signed-off-by: Stefan Roese <sr@denx.de>
--
 include/asm-arm/unaligned.h            |    3 -
 include/linux/unaligned/be_byteshift.h |   70 +++++++++++++++++++++++++++++++++
 include/linux/unaligned/le_byteshift.h |   70 +++++++++++++++++++++++++++++++++
 3 files changed, 142 insertions(+), 1 deletion(-)
 create mode 100644 include/linux/unaligned/be_byteshift.h
 create mode 100644 include/linux/unaligned/le_byteshift.h

15 years agoppc/85xx: Fix inclusion of 83xx immap in 85xx builds
Kumar Gala [Thu, 5 Nov 2009 00:02:10 +0000 (18:02 -0600)]
ppc/85xx: Fix inclusion of 83xx immap in 85xx builds

The nand_boot_fsl_elbc.c is shared between 83xx & 85xx however we should
not be including the immap_83xx.h when building 85xx.  We can just get
this all from common.h

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years ago86xx: Remove redundant code in initdram
Becky Bruce [Wed, 4 Nov 2009 23:34:04 +0000 (17:34 -0600)]
86xx: Remove redundant code in initdram

The same code exists both inside an #ifdef and outside of it.
Remove the extra code for all the 86xx boards.

Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agofsl_pci_init_port end-point initialization is broken
Ed Swarthout [Mon, 2 Nov 2009 15:05:49 +0000 (09:05 -0600)]
fsl_pci_init_port end-point initialization is broken

commit 70ed869e broke fsl pcie end-point initialization.
Returning 0 is not correct.  The function must return the first free
bus number for the next controller.

fsl_pci_init() must still be called and a bus allocated even if the
controller is an end-point.

Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com>
Acked-by: Vivek Mahajan <vivek.mahajan@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agoRevert "ppc/85xx/pci: fsl_pci_init: pcie agent mode support"
Kumar Gala [Wed, 4 Nov 2009 07:29:04 +0000 (01:29 -0600)]
Revert "ppc/85xx/pci: fsl_pci_init: pcie agent mode support"

This reverts commit 70ed869ea5f6b1d13d7b140c83ec0dcd8a127ddc.

There isn't any need to modify the API for fsl_pci_init_port to pass the
status of host/agent(end-point) status.  We can determine that
internally to fsl_pci_init_port.  Revert the patch that makes the API
change.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agoppc4xx: Remove board specific linker scripts from most PPC4xx boards
Stefan Roese [Tue, 27 Oct 2009 15:20:05 +0000 (16:20 +0100)]
ppc4xx: Remove board specific linker scripts from most PPC4xx boards

All these linker scripts can be removed since the new common ppc4xx
linker script should be able to handle all of those boards.

Please test and report problems. Thanks.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Add common ppc4xx linker script
Stefan Roese [Tue, 27 Oct 2009 15:11:26 +0000 (16:11 +0100)]
ppc4xx: Add common ppc4xx linker script

This linker script can be used by all PPC4xx platforms. It works for
PPC405 and PPC440 platforms. Boards which need a board specific linker
script can override this default linker script in board/*/config.mk.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Add custom linker script to board/*/config.mk
Stefan Roese [Tue, 27 Oct 2009 15:16:13 +0000 (16:16 +0100)]
ppc4xx: Add custom linker script to board/*/config.mk

These boards have special linker scripts right now. We can't use the
common 4xx linker script here. So overrride the linker script (LDSCRIPT)
in board/*/config.mk and choose the board specific version.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Fix problems in some ppc4xx board Makefiles
Stefan Roese [Tue, 27 Oct 2009 14:57:24 +0000 (15:57 +0100)]
ppc4xx: Fix problems in some ppc4xx board Makefiles

Some 4xx Makefiles didn't add $(SOBJ) to their board library. This was
no till now problem, since those boards included this object (init.o
most of the time) directly from their linker scripts. This patch clean
this up, so that all objects are now collected in the board library. This
is in preparation for the upcoming PPC4xx linker script consolidation.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: sc3: Remove unreferenced external declarations from sc3.h
Stefan Roese [Tue, 27 Oct 2009 10:20:53 +0000 (11:20 +0100)]
ppc4xx: sc3: Remove unreferenced external declarations from sc3.h

Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Heiko Schocher <hs@denx.de>
15 years agomkconfig: Create board directory (CONFIG_BOARDDIR) in include/config.h
Stefan Roese [Tue, 27 Oct 2009 10:46:23 +0000 (11:46 +0100)]
mkconfig: Create board directory (CONFIG_BOARDDIR) in include/config.h

This patch extends the mkconfig script to automatically create a define
for the board directory in include/config.h:

#define CONFIG_BOARDDIR board/amcc/canyonlands

This is needed for the upcoming PPC4xx linker script consolidation,
where the PPC440 platforms need to include a board specific file in
the common linker script.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc/85xx: Fix misc L2 cache enabling bug
Dave Liu [Fri, 30 Oct 2009 23:59:55 +0000 (07:59 +0800)]
ppc/85xx: Fix misc L2 cache enabling bug

We need loop-check the flash clear lock and enable bit for L2 cache.

Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agompc52xx: add support for the IPEK01 board
Wolfgang Grandegger [Fri, 23 Oct 2009 10:03:16 +0000 (12:03 +0200)]
mpc52xx: add support for the IPEK01 board

This patch adds support for the board IPEK01 based on the MPC5200.
The Futjitsu Lime graphics controller is configured in 16 bpp mode.

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
15 years agoMerge branch 'next' of git://git.denx.de/u-boot-video into next
Wolfgang Denk [Sat, 31 Oct 2009 15:13:18 +0000 (16:13 +0100)]
Merge branch 'next' of git://git.denx.de/u-boot-video into next

15 years agoMerge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Sat, 31 Oct 2009 15:03:08 +0000 (16:03 +0100)]
Merge branch 'master' of /home/wd/git/u-boot/custodians

15 years agovideo: mb862xx: add option VIDEO_FB_16BPP_WORD_SWAP for IPEK01
Wolfgang Grandegger [Fri, 23 Oct 2009 10:03:15 +0000 (12:03 +0200)]
video: mb862xx: add option VIDEO_FB_16BPP_WORD_SWAP for IPEK01

In 16 bpp mode, the new IPEK01 board only requires swapping of D16 words
for D32 accesses due to the diffferent connecting to the GDC bus. This
patch introduces the configuration option VIDEO_FB_16BPP_WORD_SWAP,
which should be set for all board using the mb862xx in 16 bpp mode. For
the IPEK01, VIDEO_FB_16BPP_PIXEL_SWAP should not be set.

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
15 years agovideo: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for 32bpp mode
Anatolij Gustschin [Fri, 23 Oct 2009 10:03:14 +0000 (12:03 +0200)]
video: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for 32bpp mode

The new IPEK01 board can use the 32 bpp mode for the Lime graphics
controller. For this mode, video accelaration does not work. This patch
makes the accelaration configurable via CONFIG_VIDEO_MB862xx_ACCEL,
which is enabled for the lwmon5 and the socrates board for backward
compatibility.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Wolfgang Grandegger <wg@denx.de>
15 years agovideo: mb862xx: improve board-specific Lime configuration
Wolfgang Grandegger [Fri, 23 Oct 2009 10:03:13 +0000 (12:03 +0200)]
video: mb862xx: improve board-specific Lime configuration

To avoid board-specific code accessing the mb862xx registers directly,
the public function mb862xx_probe() has been introduced. Furthermore,
the "Change of Clock Frequency" and "Set Memory I/F Mode" registers
are now defined by CONFIG_SYS_MB862xx_CCF and CONFIG_SYS_MB862xx__MMR,
respectively. The BSPs for the socrates and lwmon5 boards have been
adapted accordingly.

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
15 years agonew PCA9564 i2c bridge driver
Valentin Yakovenkov [Mon, 26 Oct 2009 22:49:06 +0000 (18:49 -0400)]
new PCA9564 i2c bridge driver

Signed-off-by: Valentin Yakovenkov <yakovenkov@niistt.ru>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
15 years agoBlackfin: TWI/I2C: implement bus speed get/set functions
Mike Frysinger [Wed, 14 Oct 2009 23:27:27 +0000 (19:27 -0400)]
Blackfin: TWI/I2C: implement bus speed get/set functions

While we're here, improve the speed calculation a bit to match the HRM.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
15 years agoBlackfin: TWI/I2C: add timeout to transfer
Mike Frysinger [Wed, 14 Oct 2009 23:27:26 +0000 (19:27 -0400)]
Blackfin: TWI/I2C: add timeout to transfer

The current transfer code relies on ctrlc() to abort transfers, but this
requires user interactivity.  Naturalize the process with a timeout.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
15 years agosh: Update lowlevel_init.S of espt-giga
Nobuhiro Iwamatsu [Fri, 30 Oct 2009 01:16:27 +0000 (10:16 +0900)]
sh: Update lowlevel_init.S of espt-giga

There was the point that did not use write macro.
Change to write macro.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
15 years agosh: Move some defs to convince 'pcrel too far'
Nobuhiro Iwamatsu [Fri, 30 Oct 2009 01:01:25 +0000 (10:01 +0900)]
sh: Move some defs to convince 'pcrel too far'

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Signed-off-by: Takashi Yoshii <yoshii.takashi@gmail.com>
15 years agosh: Remove malloc_bin_reloc from lib_sh, lib_nios2 and lib_nios.
Nobuhiro Iwamatsu [Thu, 15 Oct 2009 04:36:34 +0000 (13:36 +0900)]
sh: Remove malloc_bin_reloc from lib_sh, lib_nios2 and lib_nios.

By "arm/microblaze/nios/nios2/sh: Remove relocation fixups"
(commit: 0630535e2d062dd73c1ceca5c6125c86d1127a49", doesn't need
malloc_bin_reloc function. This commit remove this.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>