]> git.sur5r.net Git - u-boot/log
u-boot
12 years agodisk: Address cast and format errors
Taylor Hutt [Fri, 12 Oct 2012 14:26:09 +0000 (14:26 +0000)]
disk: Address cast and format errors

This change addresses a few printf-formatting errors, and a typecast
error.

Signed-off-by: Taylor Hutt <thutt@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
12 years agodisk: Make the disk partition code work with no specific partition types
Gabe Black [Fri, 12 Oct 2012 14:26:08 +0000 (14:26 +0000)]
disk: Make the disk partition code work with no specific partition types

Currently, if the disk partition code is compiled with all of the parition
types compiled out, it hits an #error which stops the build. This change
adjusts that file so that those functions will fall through to their defaults
in those cases instead of breaking the build. These functions are needed
because other code calls them, and that code is needed because other config
options are overly broad and bring in support we don't need along with
support we do.

Also reduce repetition of the 6-term #ifdef throughout the file.

Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
12 years agoide: Add printf format string for CONFIG_SYS_64BIT_LBA option
Gabe Black [Fri, 12 Oct 2012 14:26:06 +0000 (14:26 +0000)]
ide: Add printf format string for CONFIG_SYS_64BIT_LBA option

The size of an LBA type changes depending on this option. We need to
use a different printf() string in each case, so create a define for
this.

Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
12 years agokerneldoc: tmpl: Implement template for LG-arrays
Marek Vasut [Fri, 12 Oct 2012 10:27:06 +0000 (10:27 +0000)]
kerneldoc: tmpl: Implement template for LG-arrays

Implement kerneldoc template for linker-generated arrays. This is
the first template in U-Boot that is used to generate kerneldoc
style documentation. This template is very basic.

Signed-off-by: Marek Vasut <marex@denx.de>
12 years agocommon: Discard the __u_boot_cmd section
Marek Vasut [Wed, 17 Oct 2012 00:45:46 +0000 (00:45 +0000)]
common: Discard the __u_boot_cmd section

The command declaration now uses the new LG-array method to generate
list of commands. Thus the __u_boot_cmd section is now superseded and
redundant and therefore can be removed. Also, remove externed symbols
associated with this section from include/command.h .

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agocommon: Convert the U-Boot commands to LG-arrays
Marek Vasut [Fri, 12 Oct 2012 10:27:04 +0000 (10:27 +0000)]
common: Convert the U-Boot commands to LG-arrays

This patch converts the old method of creating a list of command
onto the new LG-arrays code. The old u_boot_cmd section is converted
to new u_boot_list_cmd subsection and LG-array macros used as needed.

Minor adjustments had to be made to the common code to work with the
LG-array macros, mostly the fixup_cmdtable() calls are now passed the
ll_entry_start and ll_entry_count instead of linker-generated symbols.

The command.c had to be adjusted as well so it would use the newly
introduced LG-array API instead of directly using linker-generated
symbols.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agocommon: Add .u_boot_list into all linker files
Marek Vasut [Fri, 12 Oct 2012 10:27:03 +0000 (10:27 +0000)]
common: Add .u_boot_list into all linker files

Add section for the linker-generated lists into all possible linker
files, so that everyone can easily use these lists. This is mostly
a mechanical adjustment.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agocommon: Implement support for linker-generated arrays
Marek Vasut [Fri, 12 Oct 2012 10:27:02 +0000 (10:27 +0000)]
common: Implement support for linker-generated arrays

This patch adds support for linker-generated array. These arrays
are a generalization of the U-Boot command declaration approach.

Basically, the idea is to generate an array, where elements of the
array are statically initialized at compile time and each element
is declared separatelly at different place. Such array is assembled
together into continuous piece of memory by linker and a pointer to
it's first entry can then be retrieved via accessor.

The actual implementation relies on placing any variable that is to
represent an element of LG-array into particular subsection of the
.u_boot_list linker section . The subsection is determined by user
options. Once compiled, it is possible to dump all symbols placed
in .u_boot_list section and the subsections in which they should be
and generate appropriate bounds for each requested subsection of the
.u_boot_list section. Each such subsection thus contains __start and
__end entries at the begining and end respecitively.

This allows for simple run-time traversing of the array, since the
symbols are properly defined.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agocommon: Add symbol handling for generic lists into Makefile
Marek Vasut [Fri, 19 Oct 2012 05:00:10 +0000 (05:00 +0000)]
common: Add symbol handling for generic lists into Makefile

This patch adds essential components for generation of the contents of
the linker section that is used by the linker-generated array. All of
the contents is held in a separate file, u-boot.lst, which is generated
at runtime just before U-Boot is linked.

The purpose of this code is to especially generate the appropriate
boundary symbols around each subsection in the section carrying the
linker-generated arrays. Obviously, the interim linker code for actual
placement of the variables into the section is generated too. The
generated file, u-boot.lst, is included into u-boot.lds via the linker
INCLUDE directive in u-boot.lds .

Adjustments are made in the Makefile and spl/Makefile so that the
u-boot.lds and u-boot-spl.lds depend on their respective .lst files.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Tested-by: Joe Hershberger <joe.hershberger@ni.com>
12 years agopowerpc/usb: fix bug of CPU hang when missing USB PHY clock
Shengzhou Liu [Mon, 22 Oct 2012 05:18:24 +0000 (13:18 +0800)]
powerpc/usb: fix bug of CPU hang when missing USB PHY clock

when missing USB PHY clock, u-boot will hang during USB
initialization when issuing "usb start". We should check
USBGP[PHY_CLK_VALID] bit to avoid CPU hanging in this case.

Due to controller issue of PHY_CLK_VALID in ULPI mode, we set
USB_EN before checking PHY_CLK_VALID, otherwise PHY_CLK_VALID
doesn't work.

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
Acked-by: Marek Vasut <marex@denx.de>
12 years agousb: fallback safely when a configuration descriptor is too large
Vincent Palatin [Tue, 24 Jul 2012 07:12:02 +0000 (07:12 +0000)]
usb: fallback safely when a configuration descriptor is too large

When a USB configuration descriptor was larger than our USB buffer
(512 bytes), we were skipping the full descriptor reading but then we
were still parsing and using it, triggering memory corruptions.
Now in that case, it just skips this device enumeration and displays the
appropriate message to the user, so he can fix the buffer if he wants.

This bug was triggered by some UVC webcams which have very large
configuration descriptors (e.g. a couple of kB) describing all their
supported video encodings.

Signed-off-by: Vincent Palatin <vpalatin@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
12 years agousb: Support the CONFIG_SYS_64BIT_LBA option
Gabe Black [Fri, 12 Oct 2012 14:26:07 +0000 (14:26 +0000)]
usb: Support the CONFIG_SYS_64BIT_LBA option

usb_storage wouldn't compile when the CONFIG_SYS_64BIT_LBA option is
turned on because the used fixed size data types in their exported
functions when they should have used lbaint_t for the block count
parameter. That meant that when the sizes happened to be the same, when
using a 28 bit LBA, the driver would build, but when it wasn't, a 48 bit
LBA, things broke.

This change adjusts the signatures to use the right type and makes small
adjustments in the affected functions.

Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Marek Vasut <marex@denx.de>
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>
12 years agoi2c: sh_i2c.c: support iccl and icch extension
Tetsuyuki Kobayashi [Thu, 13 Sep 2012 19:07:56 +0000 (19:07 +0000)]
i2c: sh_i2c.c: support iccl and icch extension

R-mobile SoC (at least SH73A0) has extension bits to store 8th bit of iccl and icch.
This patch add support for the extentin bits.

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