platform/kernel/u-boot.git
12 years agoFix building for mx51evk board
Anatolij Gustschin [Mon, 12 Dec 2011 01:25:46 +0000 (01:25 +0000)]
Fix building for mx51evk board

Fix:
mx51evk.c:206:6: error: conflicting types for 'board_ehci_hcd_init'
/u-boot/include/usb/ehci-fsl.h:254:5: note: previous declaration of
'board_ehci_hcd_init' was here

We also fix board_ehci_hcd_init() for mx53loco board.
Building for mx53loco worked since <usb/ehci-fsl.h> is
not included here.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
12 years agoPrepare v2011.12-rc2 v2011.12-rc2
Wolfgang Denk [Mon, 19 Dec 2011 11:12:54 +0000 (12:12 +0100)]
Prepare v2011.12-rc2

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoCoding Style cleanup
Wolfgang Denk [Mon, 19 Dec 2011 11:03:40 +0000 (12:03 +0100)]
Coding Style cleanup

Fix trailing white space, indentation by spaces instead of TABs,
excessive blank lines, trailing blank lines.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agodrivers/usb/gadget/pxa27x_udc.c: Coding Style cleanup
Wolfgang Denk [Mon, 19 Dec 2011 10:52:36 +0000 (11:52 +0100)]
drivers/usb/gadget/pxa27x_udc.c: Coding Style cleanup

Commit bdbcdc89 "pxa: convert pxa27x_udc to use read and write
functions" added a number of C++ comments.  Fix these.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agocommon/cmd_nvedit.c: Fix size calculation in do_env_import()
Horst Kronstorfer [Fri, 16 Dec 2011 23:33:10 +0000 (23:33 +0000)]
common/cmd_nvedit.c: Fix size calculation in do_env_import()

do_env_import() missed the final '\0' terminator when calculating the
size of an environment data block.  This led to an erroneous 'bad CRC,
import failed' message for a checksum protected environment (-c.)

Signed-off-by: Horst Kronstorfer <hkronsto@frequentis.com>
12 years agotools/setlocalversion: Update from the Linux Kernel
Kyle Moffett [Fri, 16 Dec 2011 11:14:40 +0000 (11:14 +0000)]
tools/setlocalversion: Update from the Linux Kernel

Several bugfixes have occurred upstream since this script was imported
into U-Boot.  In particular, the script currently in U-Boot does not
describe commit f8bbb4dad0e9d91b7a51d6cc54dcf66d142f50fe correctly,
resulting in a version of "2011.09" instead of "2011.09-01460-gf8bbb4d".

With that commit checked out, the command "git name-rev --tags HEAD"
gives this result:
  HEAD tags/v2011.12-rc1~30^2

Then the "changes" regex does not match because of the trailing '^2':
  grep -E '^HEAD[[:space:]]+(.*~[0-9]*|undefined)$'

The new version of tools/setlocalversion in the kernel correctly handles
those situations by using different plumbing commands.

The version from the kernel is not directly usable as it does not append
the full GIT version that U-Boot expects unless the right config options
are set (CONFIG_LOCALVERSION_AUTO=y).  Other than a few minor changes
for Kconfig, the imported version is very similar to Linux v3.2-rc4.

Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Mike Frysinger <vapier@gentoo.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-usb
Wolfgang Denk [Sat, 17 Dec 2011 19:51:16 +0000 (20:51 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-usb

* 'master' of git://git.denx.de/u-boot-usb:
  USB: Use (get|put)_unaligned for accessing wMaxPacketSize
  usb:gadget:s5p Enable the USB Gadget framework at Exynos4210 (C210 Universal)
  README: add documentation for CONFIG_USB_ULPI*
  USB: ULPI: increase error case verbosity
  USB: ULPI: clean a mixup of return types
  USB: ULPI: switch argument type from u8 to unsigned

12 years agoUSB: Use (get|put)_unaligned for accessing wMaxPacketSize
Tom Rini [Thu, 15 Dec 2011 15:40:51 +0000 (08:40 -0700)]
USB: Use (get|put)_unaligned for accessing wMaxPacketSize

In 9792987721c7980453fe6447c3fa6593b44f8458 Stefan describes a usecase
where the previous behavior of leaving wMaxPacketSize be unaligned
caused fatal problems.  The initial fix for this problem was incomplete
however as it showed another cases of non-aligned access that previously
worked implicitly.  This switches to making sure that all access of
wMaxPacketSize are done via (get|put)_unaligned.

In order to maintain a level of readability to the code in some cases
we now use a variable for the value of wMaxPacketSize and in others, a
macro.

Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Remy Bohmer <linux@bohmer.net>
OpenRISC:
Tested-by: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Beagleboard xM, Pandaboard run-tested, s5p_goni build-tested.
Signed-off-by: Tom Rini <trini@ti.com>
12 years agousb:gadget:s5p Enable the USB Gadget framework at Exynos4210 (C210 Universal)
Lukasz Majewski [Thu, 15 Dec 2011 09:32:12 +0000 (10:32 +0100)]
usb:gadget:s5p Enable the USB Gadget framework at Exynos4210 (C210 Universal)

This commit enables support for USB Gadgets on the Exynos4210 (C210 Universal)
reference target.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Minkyu Kang <mk7.kang@samsung.com>
CC: Remy Bohmer <linux@bohmer.net>
12 years agoREADME: add documentation for CONFIG_USB_ULPI*
Igor Grinberg [Mon, 12 Dec 2011 10:08:35 +0000 (12:08 +0200)]
README: add documentation for CONFIG_USB_ULPI*

Add documentation for CONFIG_USB_ULPI and CONFIG_USB_ULPI_VIEWPORT
configuration options.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
12 years agoUSB: ULPI: increase error case verbosity
Igor Grinberg [Mon, 12 Dec 2011 10:08:34 +0000 (12:08 +0200)]
USB: ULPI: increase error case verbosity

Add the argument value to the error message.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Acked-by: Simon Glass <sjg@chromium.org>
12 years agoUSB: ULPI: clean a mixup of return types
Igor Grinberg [Mon, 12 Dec 2011 10:08:33 +0000 (12:08 +0200)]
USB: ULPI: clean a mixup of return types

Clean a mixup between u32 and int as a return type
for functions returning error values.
Use int as it is native (and widely used) return type.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Acked-by: Simon Glass <sjg@chromium.org>
12 years agoUSB: ULPI: switch argument type from u8 to unsigned
Igor Grinberg [Wed, 14 Dec 2011 06:16:03 +0000 (08:16 +0200)]
USB: ULPI: switch argument type from u8 to unsigned

There is no benefit in using u8, so switch to unsigned to reduce the
binary image size (by 20 bytes).

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Acked-by: Simon Glass <sjg@chromium.org>
12 years agopowerpc/mpc83xx: set TXEQA/TXEQE value for mpc837XE sata
Jerry Huang [Thu, 17 Nov 2011 02:15:38 +0000 (10:15 +0800)]
powerpc/mpc83xx: set TXEQA/TXEQE value for mpc837XE sata

In the current u-boot code, the value of these fields are the reserved
value (0b100), through the signal integrity measurement on freescale's
board with these reserved setting, the signal eye is out of the recommended
spec for non-transition amplitude at 500mV nominal.
According to the errata for MPC8379E, we should make a change to the
recommended setting from essentially nothing at this time to 0b001 for SATA.

Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
12 years agoMerge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging
Wolfgang Denk [Mon, 12 Dec 2011 13:51:16 +0000 (14:51 +0100)]
Merge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging

* 'agust@denx.de' of git://git.denx.de/u-boot-staging:
  pm9g45: init serial console before relocation
  pm9261: init serial console before relocation
  pm9263: init serial console before relocation

12 years agoPrepare v2011.12-rc1 v2011.12-rc1
Wolfgang Denk [Mon, 12 Dec 2011 13:32:37 +0000 (14:32 +0100)]
Prepare v2011.12-rc1

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoMIPS: remove broken "tb0229" board
Wolfgang Denk [Sun, 11 Dec 2011 21:58:19 +0000 (21:58 +0000)]
MIPS: remove broken "tb0229" board

The "tb0229" board has long been unmaintained, and is broken.
Remove it.

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoboard/ti/omap2420h4/omap2420h4.c: Fix GC 4.6 build warning
Wolfgang Denk [Sun, 11 Dec 2011 21:16:20 +0000 (21:16 +0000)]
board/ti/omap2420h4/omap2420h4.c: Fix GC 4.6 build warning

Fix:
omap2420h4.c: In function 'dram_init':
omap2420h4.c:196:25: warning: variable 'cpu' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Richard Woodruff <r-woodruff2@ti.com>
Cc: Tom Rini <trini@ti.com>
12 years agofs/reiserfs/reiserfs.c: Fix compiler warning
Anatolij Gustschin [Mon, 12 Dec 2011 03:16:17 +0000 (03:16 +0000)]
fs/reiserfs/reiserfs.c: Fix compiler warning

Fix:
reiserfs.c: In function 'reiserfs_mount':
reiserfs.c:360:22: warning: dereferencing type-punned pointer
will break strict-aliasing rules [-Wstrict-aliasing]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
12 years agoboard/mpl/common/isa.c: Fix GCC 4.6 build warnings
David Müller (ELSOFT AG) [Mon, 12 Dec 2011 01:36:53 +0000 (01:36 +0000)]
board/mpl/common/isa.c: Fix GCC 4.6 build warnings

Fix:
../common/isa.c: In function 'handle_isa_int':
../common/isa.c:385:21: warning: variable 'isr2' set but not used
[-Wunused-but-set-variable]
../common/isa.c:385:16: warning: variable 'isr1' set but not used
[-Wunused-but-set-variable]

Signed-off-by: David Mueller <d.mueller@elsoft.ch>
12 years agopm9g45: init serial console before relocation
Asen Dimov [Fri, 9 Dec 2011 11:00:07 +0000 (11:00 +0000)]
pm9g45: init serial console before relocation

The early messages can be seen on the debug console.

Signed-off-by: Asen Chavdarov Dimov <dimov@ronetix.at>
12 years agopm9261: init serial console before relocation
Asen Dimov [Fri, 9 Dec 2011 10:59:07 +0000 (10:59 +0000)]
pm9261: init serial console before relocation

The early messages can be seen on the debug console.

Signed-off-by: Asen Chavdarov Dimov <dimov@ronetix.at>
12 years agopm9263: init serial console before relocation
Asen Dimov [Fri, 9 Dec 2011 10:56:55 +0000 (10:56 +0000)]
pm9263: init serial console before relocation

The early messages can be seen on the debug console.

Signed-off-by: Asen Chavdarov Dimov <dimov@ronetix.at>
12 years agocommon/cmd_nvedit.c: Add missing 'env save' preproc guard
Horst Kronstorfer [Sat, 10 Dec 2011 02:25:19 +0000 (02:25 +0000)]
common/cmd_nvedit.c: Add missing 'env save' preproc guard

Signed-off-by: Horst Kronstorfer <hkronsto@frequentis.com>
12 years agoMIPS: tb0229: fix compile errors
Daniel Schwierzeck [Sun, 11 Dec 2011 06:39:37 +0000 (06:39 +0000)]
MIPS: tb0229: fix compile errors

This board breaks MAKEALL -a mips due to compile errors.
This patch fixes only the parts causing the errors to get MAKEALL
working.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
12 years agopowerpc/bootm: Flush ramdisk and device tree image when booting on MP
Kumar Gala [Wed, 7 Dec 2011 04:42:58 +0000 (04:42 +0000)]
powerpc/bootm: Flush ramdisk and device tree image when booting on MP

We already flush the kernel image after we've loaded it to ensure
visiblity to the other cores.  We need to do the same thing for the
ramdisk and device tree images.  In AMP boot scenarios we might not be
HW cache coherent with the secondary core that we are loading and
setting the ramdisk and device tree up for.  Thus we need to ensure
we've flushed the regions of memory utilized by ramdisk and device tree
so the loadding and any modifications (from decompression or fdt updates)
are made visible to the secondary cores.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
12 years agompc5200: digsy_mtc: Fix extension board detection
Anatolij Gustschin [Wed, 7 Dec 2011 06:05:55 +0000 (06:05 +0000)]
mpc5200: digsy_mtc: Fix extension board detection

Switch to extension board detection using pci_find_device()
instead of detecting by i2c access to EEPROM device on
extension board.

This is a cleaner detection method since EEPROM addresses
can be different on different board revisions. This also
avoids "i2c_read: failed to address chip" error messages
in the boot log on boards without extension board which
may confuse users.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-usb
Wolfgang Denk [Mon, 12 Dec 2011 06:58:58 +0000 (07:58 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-usb

* 'master' of git://git.denx.de/u-boot-usb:
  USB: efikamx: Enable USB on EfikaMX and EfikaSB
  USB: Add generic ULPI layer and a viewport
  USB: EHCI: Allow EHCI post-powerup configuration in board files
  USB: mx51evk: add end enable USB host support on port 1
  USB: mx53loco: add end enable USB host support on port 1
  USB: MX5: Add MX5 usb post-init callback
  USB: MX5: Abstract out mx51 USB pixmux configuration
  USB: MX5: add generic USB EHCI support for mx51 and mx53
  USB: MX5: add helper functions to enable USB clocks
  usb:gadget:s5p Enable the USB Gadget framework at GONI
  usb:gadget:s5p USB Device Controller (UDC) implementation
  ehci: speed up initialization
  usb: add help for missing start subcommand
  cosmetic: remove excess whitespace from usb command help
  usb: align usb_endpoint_descriptor to 16-bit boundary
  usbtty: init endpoints prior to startup events
  pxa: convert pxa27x_udc to use read and write functions
  pxa: activate the first usb host port on pxa27x by default
  pxa: fix usb host register mismatch
  ehci-fsl: correct size of ehci caplength
  USB: Add usb_event_poll() to get keyboards working with EHCI
  USB: gadaget: add Marvell controller support
  USB: Fix complaints about strict aliasing in OHCI-HCD
  USB: Drop dead code from usb_kbd.c
  USB: Rework usb_kbd.c
  USB: Add functionality to poll the USB keyboard via control EP

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Mon, 12 Dec 2011 06:56:41 +0000 (07:56 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

* 'master' of git://git.denx.de/u-boot-arm:
  arm: add __aeabi_unwind_cpp_pr1() function to avoid linker complaints
  post: fix compile issue for post tests on kirkwood

12 years agoUSB: efikamx: Enable USB on EfikaMX and EfikaSB
Marek Vasut [Fri, 24 Jun 2011 19:46:07 +0000 (21:46 +0200)]
USB: efikamx: Enable USB on EfikaMX and EfikaSB

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Grandegger <wg@denx.de>
Cc: Jason Liu <r64343@freescale.com>
12 years agoUSB: Add generic ULPI layer and a viewport
Jana Rapava [Mon, 5 Dec 2011 09:07:00 +0000 (11:07 +0200)]
USB: Add generic ULPI layer and a viewport

Add partial ULPI specification implementation that should be enough to
interface the ULPI PHYs in the boot loader context.
Add a viewport implementation for Chipidea/ARC based controllers.

Signed-off-by: Jana Rapava <fermata7@gmail.com>
Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Wolfgang Grandegger <wg@denx.de>
Cc: Simon Glass <sjg@chromium.org>
12 years agoUSB: EHCI: Allow EHCI post-powerup configuration in board files
Marek Vasut [Mon, 11 Jul 2011 00:37:01 +0000 (02:37 +0200)]
USB: EHCI: Allow EHCI post-powerup configuration in board files

This patch allows USB to work on some hosts, which need additional frobing after
the host was powered up via regular USB powerup sequence.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Grandegger <wg@denx.de>
Cc: Jason Liu <r64343@freescale.com>
12 years agoUSB: mx51evk: add end enable USB host support on port 1
Wolfgang Grandegger [Fri, 11 Nov 2011 13:03:38 +0000 (14:03 +0100)]
USB: mx51evk: add end enable USB host support on port 1

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Grandegger <wg@denx.de>
Cc: Jason Liu <r64343@freescale.com>
12 years agoUSB: mx53loco: add end enable USB host support on port 1
Wolfgang Grandegger [Fri, 11 Nov 2011 13:03:37 +0000 (14:03 +0100)]
USB: mx53loco: add end enable USB host support on port 1

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Grandegger <wg@denx.de>
Cc: Jason Liu <r64343@freescale.com>
12 years agoUSB: MX5: Add MX5 usb post-init callback
Marek Vasut [Thu, 24 Nov 2011 04:14:00 +0000 (05:14 +0100)]
USB: MX5: Add MX5 usb post-init callback

This is useful for USB Transceivers init etc.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Grandegger <wg@denx.de>
Cc: Jason Liu <r64343@freescale.com>
12 years agoUSB: MX5: Abstract out mx51 USB pixmux configuration
Marek Vasut [Thu, 24 Nov 2011 03:22:17 +0000 (04:22 +0100)]
USB: MX5: Abstract out mx51 USB pixmux configuration

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Grandegger <wg@denx.de>
Cc: Jason Liu <r64343@freescale.com>
12 years agoUSB: MX5: add generic USB EHCI support for mx51 and mx53
Wolfgang Grandegger [Fri, 11 Nov 2011 13:03:36 +0000 (14:03 +0100)]
USB: MX5: add generic USB EHCI support for mx51 and mx53

It's derived from ehci-mxc and uses the header files of the
ehci-fsl interface. The callback board_ehci_hcd_init() has
been introduced to allow for board-specific setup when USB
is started.

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
CC: Stefano Babic <sbabic@denx.de>
CC: Remy Bohmer <linux@bohmer.net>
12 years agoUSB: MX5: add helper functions to enable USB clocks
Wolfgang Grandegger [Fri, 11 Nov 2011 13:03:34 +0000 (14:03 +0100)]
USB: MX5: add helper functions to enable USB clocks

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Grandegger <wg@denx.de>
Cc: Jason Liu <r64343@freescale.com>
V2: Fix spacing in crm_regs.h

12 years agousb:gadget:s5p Enable the USB Gadget framework at GONI
Lukasz Majewski [Thu, 27 Oct 2011 08:36:47 +0000 (10:36 +0200)]
usb:gadget:s5p Enable the USB Gadget framework at GONI

This commit enables support for USB Gadgets on the GONI
reference target.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Remy Bohmer <linux@bohmer.net>
12 years agousb:gadget:s5p USB Device Controller (UDC) implementation
Lukasz Majewski [Thu, 27 Oct 2011 08:36:46 +0000 (10:36 +0200)]
usb:gadget:s5p USB Device Controller (UDC) implementation

This commit provides UDC driver support for Samsung's SoC
family of processors.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Remy Bohmer <linux@bohmer.net>
12 years agoehci: speed up initialization
Vincent Palatin [Mon, 5 Dec 2011 22:52:22 +0000 (14:52 -0800)]
ehci: speed up initialization

According to EHCI specification v1.0, the controller should stabilize
the power on a port at most 20 ms after the port power bit transition.
So, we put this setting in the virtual descriptor corresponding field,
(bPwrOn2PwrGood = 10 => 10 x 2ms = 20ms), this saves about 500ms at each
controller initialization/enumeration.

Signed-off-by: Vincent Palatin <vpalatin@chromium.org>
12 years agousb: add help for missing start subcommand
Veli-Pekka Peltola [Wed, 2 Nov 2011 14:59:56 +0000 (16:59 +0200)]
usb: add help for missing start subcommand

Signed-off-by: Veli-Pekka Peltola <veli-pekka.peltola@bluegiga.com>
Cc: Remy Bohmer <linux@bohmer.net>
12 years agocosmetic: remove excess whitespace from usb command help
Veli-Pekka Peltola [Wed, 2 Nov 2011 14:59:55 +0000 (16:59 +0200)]
cosmetic: remove excess whitespace from usb command help

Signed-off-by: Veli-Pekka Peltola <veli-pekka.peltola@bluegiga.com>
Cc: Remy Bohmer <linux@bohmer.net>
12 years agousb: align usb_endpoint_descriptor to 16-bit boundary
Stefan Kristiansson [Thu, 20 Oct 2011 19:25:37 +0000 (22:25 +0300)]
usb: align usb_endpoint_descriptor to 16-bit boundary

The usb_endpoint_descriptor struct is 7 bytes large and is
defined as an array (ep_desc[USB_MAXENDPOINTS])
in the usb_interface struct in include/usb.h

This fact will result in that every odd index in that
array will start at an uneven address, this in
turn makes accesses to u16 wMaxPacketSize unaligned.
Such accesses are illegal on the OpenRISC architecture
(as well as other architectures) and will render a bus error.

Setting the aligned(2) attribute on usb_endpoint_descriptor
will force wMaxPacketSize to a 16-bit boundary.

Signed-off-by: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
12 years agousbtty: init endpoints prior to startup events
Stefan Herbrechtsmeier [Mon, 17 Oct 2011 15:22:49 +0000 (17:22 +0200)]
usbtty: init endpoints prior to startup events

On some usb device controllers (pxa) the endpoint configuration must be programmed prior to enable it.

Signed-off-by: Stefan Herbrechtsmeier <sherbrec@cit-ec.uni-bielefeld.de>
CC: Marek Vasut <marek.vasut@gmail.com>
CC: Remy Bohmer <linux@bohmer.net>
12 years agopxa: convert pxa27x_udc to use read and write functions
Stefan Herbrechtsmeier [Mon, 17 Oct 2011 15:22:48 +0000 (17:22 +0200)]
pxa: convert pxa27x_udc to use read and write functions

Signed-off-by: Stefan Herbrechtsmeier <sherbrec@cit-ec.uni-bielefeld.de>
CC: Marek Vasut <marek.vasut@gmail.com>
CC: Remy Bohmer <linux@bohmer.net>
12 years agopxa: activate the first usb host port on pxa27x by default
Stefan Herbrechtsmeier [Mon, 17 Oct 2011 15:22:47 +0000 (17:22 +0200)]
pxa: activate the first usb host port on pxa27x by default

The pxa27x has 3 usb host ports. Activate all by default.

Signed-off-by: Stefan Herbrechtsmeier <sherbrec@cit-ec.uni-bielefeld.de>
CC: Marek Vasut <marek.vasut@gmail.com>
CC: Remy Bohmer <linux@bohmer.net>
12 years agopxa: fix usb host register mismatch
Stefan Herbrechtsmeier [Mon, 17 Oct 2011 15:22:46 +0000 (17:22 +0200)]
pxa: fix usb host register mismatch

Signed-off-by: Stefan Herbrechtsmeier <sherbrec@cit-ec.uni-bielefeld.de>
CC: Marek Vasut <marek.vasut@gmail.com>
CC: Remy Bohmer <linux@bohmer.net>
12 years agoehci-fsl: correct size of ehci caplength
Wolfgang Grandegger [Mon, 17 Oct 2011 18:16:09 +0000 (20:16 +0200)]
ehci-fsl: correct size of ehci caplength

According to the EHCI specification the Capability Register Length
has a size of 8 bits.

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
12 years agoUSB: Add usb_event_poll() to get keyboards working with EHCI
Marek Vasut [Sun, 25 Sep 2011 19:07:56 +0000 (21:07 +0200)]
USB: Add usb_event_poll() to get keyboards working with EHCI

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Remy Bohmer <linux@bohmer.net>
12 years agoUSB: gadaget: add Marvell controller support
Lei Wen [Wed, 5 Oct 2011 15:11:40 +0000 (08:11 -0700)]
USB: gadaget: add Marvell controller support

Signed-off-by: Lei Wen <leiwen@marvell.com>
12 years agoUSB: Fix complaints about strict aliasing in OHCI-HCD
Marek Vasut [Fri, 7 Oct 2011 00:00:13 +0000 (02:00 +0200)]
USB: Fix complaints about strict aliasing in OHCI-HCD

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
12 years agoUSB: Drop dead code from usb_kbd.c
Marek Vasut [Mon, 10 Oct 2011 15:34:27 +0000 (17:34 +0200)]
USB: Drop dead code from usb_kbd.c

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoUSB: Rework usb_kbd.c
Marek Vasut [Mon, 10 Oct 2011 15:34:26 +0000 (16:34 +0100)]
USB: Rework usb_kbd.c

* Support dynamic allocation of devices
* Passing data via usb device privptr
* Reorder functions to avoid forward declarations
* Introduce generic polling mechanism to fix musb and ehci-hcd breakage
  due to using "extern new;" to access keyboard driver data!

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoUSB: Add functionality to poll the USB keyboard via control EP
Marek Vasut [Sun, 25 Sep 2011 19:00:37 +0000 (20:00 +0100)]
USB: Add functionality to poll the USB keyboard via control EP

This allows the keyboard to avoid requests via Interrupt Endpoint altogether and
run all requests via Control Endpoint. This uses the Get_Report request.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Remy Bohmer <linux@bohmer.net>
Rebased on current code.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
12 years agoarm: add __aeabi_unwind_cpp_pr1() function to avoid linker complaints
Wolfgang Grandegger [Thu, 10 Nov 2011 01:51:29 +0000 (01:51 +0000)]
arm: add __aeabi_unwind_cpp_pr1() function to avoid linker complaints

With the ELDK 5.1 (beta) "armv7a" toolchain I'm get the following
build failure:

  $ ./MAKEALL mx51evk
  ...
  /opt/eldk-5.1/armv7a/sysroots/arm-linux-gnueabi/usr/lib/arm-linux-
  gnueabi/4.6.1/libgcc.a(bpabi.o):(.ARM.exidx+0x0): undefined
  reference to `__aeabi_unwind_cpp_pr1'
  make: *** [u-boot] Error 1

This patch fixes the issue similar to commit
d442b6e7ad6a86e2fd0e6297291fe8872ff26fc6 but I don't know if it's
general enough or if it does harm when using other toolchains.

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
12 years agopost: fix compile issue for post tests on kirkwood
Holger Brunck [Thu, 24 Nov 2011 03:09:10 +0000 (03:09 +0000)]
post: fix compile issue for post tests on kirkwood

commit f31a911fe (arm, post: add missing post_time_ms for arm)
enables get_ticks and get_tbclk for all arm based boards,
but kirkwood has currently no implementation for this. So
undefine this for kirkwood boards.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
cc: Heiko Schocher <hs@denx.de>
cc: Prafulla Wadaskar <prafulla@marvell.com>
cc: Valentin Longchamp <valentin.longchamp@keymile.com>

12 years agosandbox: fix compiling of cpu/os.c
Andreas Bießmann [Fri, 2 Dec 2011 10:53:13 +0000 (11:53 +0100)]
sandbox: fix compiling of cpu/os.c

U-boot itself generally builds with -nostdinc.  This is because the
bootloader needs to be completely standalone.  In the sandbox arch
though, we need a little bit of code to glue the u-boot world to the
host operating system, and we need to be able to access the host
libc's headers in order to do so.

Currently, we're using -I/usr/include to workaround the global
-nostdinc, but that doesn't work for everyone and for all headers.
Instead, let's filter out -nostdinc when building the os.c code.

Without this patch, some distros hit errors such as:
---8<---
In file included from /usr/include/fcntl.h:27:0,
                 from os.c:22:
/usr/include/features.h:323:26: fatal error:
     bits/predefs.h: No such file or directory
--->8---

Signed-off-by: Andreas Bießmann <biessmann@corscience.de>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agosandbox: Add timer simulation
Matthias Weisser [Tue, 29 Nov 2011 11:16:40 +0000 (12:16 +0100)]
sandbox: Add timer simulation

Making sleep command work

Signed-off-by: Matthias Weisser <weisserm@arcor.de>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agosandbox: Add improved RAM simulation
Matthias Weisser [Sat, 5 Nov 2011 10:40:34 +0000 (11:40 +0100)]
sandbox: Add improved RAM simulation

Using mmap to allocate memory from the OS for RAM simulation we can use
u-boot own malloc implementation.

Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Matthias Weisser <weisserm@arcor.de>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agopost/post.c: Use lldiv for 64-bit divisions
Christian Riesch [Fri, 9 Dec 2011 15:54:02 +0000 (16:54 +0100)]
post/post.c: Use lldiv for 64-bit divisions

Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
Cc: Tom Rini <trini@ti.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoarm, davinci: Use lldiv for the 64-bit divisions in timer.c
Christian Riesch [Fri, 9 Dec 2011 15:54:01 +0000 (16:54 +0100)]
arm, davinci: Use lldiv for the 64-bit divisions in timer.c

Signed-off-by: Christian Riesch <christian.riesch@omicron.at>
Cc: Tom Rini <trini@ti.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoARM: convert "omap730p2" boards to boards.cfg
Wolfgang Denk [Fri, 9 Dec 2011 11:14:32 +0000 (12:14 +0100)]
ARM: convert "omap730p2" boards to boards.cfg

Signed-off-by: Wolfgang Denk <wd@denx.de>
Dave Peverley <dpeverley@mpc-data.co.uk>
Acked-by: Tom Rini <trini@ti.com>
12 years agoboard/ti/omap730p2/flash.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 9 Dec 2011 11:14:31 +0000 (12:14 +0100)]
board/ti/omap730p2/flash.c: Fix GCC 4.6 build warnings

Fix:
flash.c: In function 'flash_get_offsets':
flash.c:122:10: warning: variable 'pOrgDef' set but not used
[-Wunused-but-set-variable]
flash.c: In function 'flash_erase':
flash.c:263:6: warning: variable 'flag' set but not used
[-Wunused-but-set-variable]
flash.c: In function 'write_data':
flash.c:439:6: warning: variable 'flag' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Dave Peverley <dpeverley@mpc-data.co.uk>
Acked-by: Tom Rini <trini@ti.com>
12 years agoARM: convert "omap16xx" boards to boards.cfg
Wolfgang Denk [Fri, 9 Dec 2011 11:14:30 +0000 (12:14 +0100)]
ARM: convert "omap16xx" boards to boards.cfg

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Kshitij Gupta <kshitij@ti.com>
Acked-by: Tom Rini <trini@ti.com>
12 years agoboard/ti/omap1610inn/flash.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 9 Dec 2011 11:14:29 +0000 (12:14 +0100)]
board/ti/omap1610inn/flash.c: Fix GCC 4.6 build warnings

Fix:
flash.c: In function 'flash_get_offsets':
flash.c:139:10: warning: variable 'pOrgDef' set but not used
[-Wunused-but-set-variable]
flash.c: In function 'flash_erase':
flash.c:280:6: warning: variable 'flag' set but not used
[-Wunused-but-set-variable]
flash.c: In function 'write_data':
flash.c:456:6: warning: variable 'flag' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Tom Rini <trini@ti.com>
12 years agoboard/LaCie/edminiv2/edminiv2.c: Fix build warning
Wolfgang Denk [Fri, 9 Dec 2011 11:14:28 +0000 (12:14 +0100)]
board/LaCie/edminiv2/edminiv2.c: Fix build warning

Fix:
edminiv2.c: In function 'reset_phy':
edminiv2.c:98:2: warning: implicit declaration of function
'mv_phy_88e1116_init' [-Wimplicit-function-declaration]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Acked-by: Simon Guinot <simon.guinot@sequanux.org>
12 years agoARM: convert "apollon" board to use boards.cfg
Wolfgang Denk [Fri, 9 Dec 2011 11:14:27 +0000 (12:14 +0100)]
ARM: convert "apollon" board to use boards.cfg

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
12 years agoboard/apollon/sys_info.c: Fix GCC 4.6 build warning
Wolfgang Denk [Fri, 9 Dec 2011 11:14:26 +0000 (12:14 +0100)]
board/apollon/sys_info.c: Fix GCC 4.6 build warning

Fix:
sys_info.c: In function 'display_board_info':
sys_info.c:260:16: warning: variable 'db_s' set but not used
[-Wunused-but-set-variable]

Also fix resulting warnings:
sys_info.c:251:7: warning: unused variable 'db_ip' [-Wunused-variable]
sys_info.c:250:7: warning: unused variable 'db_men' [-Wunused-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
12 years agoboard/apollon/apollon.c: Fix GCc 4.6 build warnings.
Wolfgang Denk [Fri, 9 Dec 2011 11:14:25 +0000 (12:14 +0100)]
board/apollon/apollon.c: Fix GCc 4.6 build warnings.

Fix:
apollon.c: In function 'dram_init':
apollon.c:188:29: warning: variable 'cpu' set but not used
[-Wunused-but-set-variable]
apollon.c:188:20: warning: variable 'rev' set but not used
[-Wunused-but-set-variable]
apollon.c:187:26: warning: variable 'size1' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
12 years agoboards.cfg: sort list
Wolfgang Denk [Fri, 9 Dec 2011 11:14:24 +0000 (12:14 +0100)]
boards.cfg: sort list

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agofs/yaffs2/yaffs_guts.c: Fix GCC 4.6 compile warning (and bug)
Wolfgang Denk [Fri, 9 Dec 2011 11:14:22 +0000 (12:14 +0100)]
fs/yaffs2/yaffs_guts.c: Fix GCC 4.6 compile warning (and bug)

Fix:
yaffs_guts.c: In function 'yaffs_GarbageCollectBlock':
yaffs_guts.c:2761:6: warning: variable 'retVal' set but not used
[-Wunused-but-set-variable]

Here GCC actually detected a bug.  The code was always returning OK
instead of the previously set retrun code.  Fix that.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: William Juul <wiljuul@cisco.com>
Cc: Scott Wood <scottwood@freescale.com>
Acked-by: William Juul <wiljuul@cisco.com>
12 years agodrivers/net/at91_emac.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Fri, 9 Dec 2011 11:14:21 +0000 (12:14 +0100)]
drivers/net/at91_emac.c: Fix GCC 4.6 build warnings

Fix:
at91_emac.c: In function 'at91emac_phy_init':
at91_emac.c:244:20: warning: variable 'duplex' set but not used
[-Wunused-but-set-variable]
at91_emac.c:244:13: warning: variable 'speed' set but not used
[-Wunused-but-set-variable]

Use new debug_cond() to fix these warnings.  In the result, anumber of
inconsistent printf() formats are detected:

at91_emac.c: In function 'at91emac_read':
at91_emac.c:147:2: warning: format '%x' expects argument of type
'unsigned int', but argument 2 has type 'struct at91_emac_t *'
[-Wformat]
at91_emac.c: In function 'at91emac_write':
at91_emac.c:157:2: warning: format '%x' expects argument of type
'unsigned int', but argument 2 has type 'struct at91_emac_t *'
[-Wformat]
at91_emac.c:157:2: warning: format '%x' expects argument of type
'unsigned int', but argument 4 has type 'short unsigned int *'
[-Wformat]
at91_emac.c: In function 'at91emac_recv':
at91_emac.c:451:3: warning: format '%d' expects argument of type
'int', but argument 2 has type 'long unsigned int' [-Wformat]
at91_emac.c:451:3: warning: format '%x' expects argument of type
'unsigned int', but argument 4 has type 'long unsigned int' [-Wformat]

Fix these, too.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Jens Scharsig <js_at_ng@scharsoft.de>
Cc: Andreas Bießmann <andreas.devel@gmail.com>
Cc: Reinhard Meyer <u-boot@emk-elektronik.de>
12 years agodrivers/net/ne2000_base.c: Fix GCC 4.6 build warnings
Wolfgang Denk [Thu, 8 Dec 2011 21:28:57 +0000 (22:28 +0100)]
drivers/net/ne2000_base.c: Fix GCC 4.6 build warnings

Fix:
ne2000_base.c: In function 'dp83902a_send':
ne2000_base.c:282:7: warning: variable 'tmp' set but not used
[-Wunused-but-set-variable]
ne2000_base.c: In function 'dp83902a_RxEvent':
ne2000_base.c:376:5: warning: variable 'rsr' set but not used
[-Wunused-but-set-variable]
ne2000_base.c: In function 'dp83902a_TxEvent':
ne2000_base.c:513:5: warning: variable 'tsr' set but not used
[-Wunused-but-set-variable]
ne2000_base.c: In function 'dp83902a_ClearCounters':
ne2000_base.c:550:17: warning: variable 'cnt3' set but not used
[-Wunused-but-set-variable]
ne2000_base.c:550:11: warning: variable 'cnt2' set but not used
[-Wunused-but-set-variable]
ne2000_base.c:550:5: warning: variable 'cnt1' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Sat, 10 Dec 2011 21:46:48 +0000 (22:46 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

* 'master' of git://git.denx.de/u-boot-arm:
  M28: Cleanup memsize.o OOT build
  i.MX28: Move SPL to arch/arm/cpu/arm926ejs/mx28
  M28: Fix typo
  M28: Document that units has to be set to sectors on SD bootcard
  i.mx: i.mx6q: add the initial support for i.mx6q ARM2 board
  i.mx: mxc_gpio: add the i.mx6q support
  i.mx: add the initial support for freescale i.MX6Q processor
  i.mx: introduce the armv7/imx-common folder
  S5PC2XX: Rename S5pc2XX to exynos
  tegra2: Don't use board pointer before it is set up
  tegra2: Remove unneeded 'dynamic ram size' message
  tegra2: Remove unused low-level Tegra2 UART code
  tegra2: Remove unneeded config option
  tegra2: Remove unneeded boot code
  tegra2: Enable instruction cache
  arm: Move CP15 init out of cpu_init_crit()
  tegra2: Simplify tegra_start() boot path
  tegra2: Add arch_cpu_init() to fire up Cortex-A9
  tegra2: Use new GPIO APIs in gpio_config_uart()
  tegra2: Add support for Ventana
  tegra2: Modify MMC driver to handle power and cd GPIOs
  tegra2: Move board_mmc_init into board files

12 years agoMerge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging
Wolfgang Denk [Sat, 10 Dec 2011 21:45:34 +0000 (22:45 +0100)]
Merge branch 'agust@denx.de' of git://git.denx.de/u-boot-staging

* 'agust@denx.de' of git://git.denx.de/u-boot-staging:
  Update pci_ids.h from current Linux sources
  omap: overo: Use ubifs instead of jffs2 for nand
  omap: TWL4030 Bump VMMC1 interface voltage from 3V to 3.15V

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Sat, 10 Dec 2011 21:44:01 +0000 (22:44 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

* 'master' of git://git.denx.de/u-boot-mpc85xx:
  mpc85xx: Add board support for the eXMeritus HWW-1U-1A devices

12 years agoM28: Cleanup memsize.o OOT build
Marek Vasut [Thu, 8 Dec 2011 09:46:12 +0000 (09:46 +0000)]
M28: Cleanup memsize.o OOT build

The current way memsize.c is built just made a symlink into the directory
with SPL and then compiled it like any other file there. This was bad as that
broke the out-of-tree build.

The new way introduced in this patch uses the standard spl/Makefile methods
(CONFIG_SPL_LIBCOMMON_SUPPORT / CONFIG_SPL_LIBGENERIC_SUPPORT) to let files in
common/ be built. Because common/Makefile says memsize.c is always built (SPL
and non-SPL build), this fixes our issue with memsize.c out-of-tree build.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Detlev Zundel <dzu@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoi.MX28: Move SPL to arch/arm/cpu/arm926ejs/mx28
Marek Vasut [Fri, 2 Dec 2011 03:47:40 +0000 (03:47 +0000)]
i.MX28: Move SPL to arch/arm/cpu/arm926ejs/mx28

This moves SPL to common location so it can be reused by multiple boards. Also,
this commit adjusts M28 SoM to avoid breakage due to the move.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Detlev Zundel <dzu@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoM28: Fix typo
Marek Vasut [Fri, 2 Dec 2011 03:47:39 +0000 (03:47 +0000)]
M28: Fix typo

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Detlev Zundel <dzu@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoM28: Document that units has to be set to sectors on SD bootcard
Marek Vasut [Fri, 2 Dec 2011 03:47:38 +0000 (03:47 +0000)]
M28: Document that units has to be set to sectors on SD bootcard

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoi.mx: i.mx6q: add the initial support for i.mx6q ARM2 board
Jason Liu [Fri, 25 Nov 2011 00:18:05 +0000 (00:18 +0000)]
i.mx: i.mx6q: add the initial support for i.mx6q ARM2 board

Add the initial support for Freescale i.MX6Q Armadillo2 board
Support: MMC boot from slot 0/1, debug UART(UART4), usdhc.

There is two MMC slots on the boards:
mmc dev 0 -> connect USDHC3 -> the lower slot on the board,
mmc dev 1 -> connect USDHC4 -> the upper slot on the board,

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc: Stefano Babic <sbabic@denx.de>
Tested-by: Dirk Behme <dirk.behme@de.bosch.com>
12 years agoi.mx: mxc_gpio: add the i.mx6q support
Jason Liu [Fri, 25 Nov 2011 00:18:03 +0000 (00:18 +0000)]
i.mx: mxc_gpio: add the i.mx6q support

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoi.mx: add the initial support for freescale i.MX6Q processor
Jason Liu [Fri, 25 Nov 2011 00:18:02 +0000 (00:18 +0000)]
i.mx: add the initial support for freescale i.MX6Q processor

i.MX6Q is freescale quad core processors with ARM cortex_a9 complex.
This patch is to add the initial support for this processor.

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc:Stefano Babic <sbabic@denx.de>

12 years agoi.mx: introduce the armv7/imx-common folder
Jason Liu [Fri, 25 Nov 2011 00:18:01 +0000 (00:18 +0000)]
i.mx: introduce the armv7/imx-common folder

In order to support the coming MX6 platform and to reducde
the duplicated code, we had better move some common files
or functions to the imx-common folder for sharing.

This patch does the following:
- move speed.c file from armv7/mx5/speed.c to armv7/imx-common/speed.c
- move armv7/mx5/timer.c to armv7/imx-common/timer.c, no any new feature
  added but just fix the checkpatch errors in the old file and remove
  the CONFIG_SYS_MX5_CLK32 reference in the file
- create one new file cpu.c file to store the common function with i.mx5/6

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc:Stefano Babic <sbabic@denx.de>
Acked-by: Stefano Babic <sbabic@denx.de>
12 years agoS5PC2XX: Rename S5pc2XX to exynos
Chander Kashyap [Tue, 6 Dec 2011 23:34:12 +0000 (23:34 +0000)]
S5PC2XX: Rename S5pc2XX to exynos

As per new naming convention for Samsung SoC's, all Cortex-A9 and Cortex-A15
based SoC's will be classified under the name Exynos. Cortex-A9 and Cortex-A15
based SoC's will be sub-classified as Exynos4 and Exynos5 respectively.

In order to better adapt and reuse code across various upcoming Samsung Exynos
based boards, all uses of s5pc210 prefix/suffix/directory-names are renamed in
this patch. s5pc210 is renamed as exynos4210 and S5PC210/s5pc210 suffix/prefix
are renamed as exynos4/EXYNOS4.

Signed-off-by: Chander Kashyap <chander.kashyap@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agotegra2: Don't use board pointer before it is set up
Simon Glass [Sat, 5 Nov 2011 03:56:57 +0000 (03:56 +0000)]
tegra2: Don't use board pointer before it is set up

In board_init_f() the gd->bd pointer is not valid when dram_init() is called.
This only avoids dying because DRAM is at zero on Tegra2. The common ARM
routine sets up the banks in the same way anyway, so we can just remove this
code.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Remove unneeded 'dynamic ram size' message
Simon Glass [Sat, 5 Nov 2011 03:56:56 +0000 (03:56 +0000)]
tegra2: Remove unneeded 'dynamic ram size' message

This message is not required, since it is followed by an 'official' U-Boot
message.

U-Boot 2011.03-00048-gd7cb0d3 (May 11 2011 - 17:17:23)

TEGRA2
Board: NVIDIA Seaboard
dynamic ram_size = 1073741824
DRAM:  1 GiB

becomes:

TEGRA2
Board: NVIDIA Seaboard
DRAM:  1 GiB

This is a separate commit since it changes behavior.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Remove unused low-level Tegra2 UART code
Simon Glass [Sat, 5 Nov 2011 03:56:55 +0000 (03:56 +0000)]
tegra2: Remove unused low-level Tegra2 UART code

This was used by the AVP in early boot but is no longer used. Unless we
plan to enable it somehow it is not needed. In any case we should try
to use the ns16550 driver instead as it has the same code.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Remove unneeded config option
Simon Glass [Sat, 5 Nov 2011 03:56:54 +0000 (03:56 +0000)]
tegra2: Remove unneeded config option

CONFIG_ENABLE_CORTEXA9 and CONFIG_SKIP_RELOCATE_UBOOT are not needed,
so remove them.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Remove unneeded boot code
Simon Glass [Sat, 5 Nov 2011 03:56:53 +0000 (03:56 +0000)]
tegra2: Remove unneeded boot code

Since we have cache support built in we can remove Tegra's existing cache
initialization code amd other related dead code.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Enable instruction cache
Simon Glass [Sat, 5 Nov 2011 03:56:52 +0000 (03:56 +0000)]
tegra2: Enable instruction cache

Since low-level init is skipped, the instruction cache is never enabled on
Tegra2. This explicitly calls this initialization as soon as the A9 is
initialized.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agoarm: Move CP15 init out of cpu_init_crit()
Simon Glass [Sat, 5 Nov 2011 03:56:51 +0000 (03:56 +0000)]
arm: Move CP15 init out of cpu_init_crit()

Some SOCs have do not start up with their 'main' CPU. The first U-Boot
code may then be executed with a CPU which does not have a CP15, or not a
useful one.

Here we split the initialization of CP15 into a separate call, which can
be performed later if required.

Once the main CPU is running, you should call cpu_init_cp15() to perform
this init as early as possible.

Existing ARMv7 boards which define CONFIG_SKIP_LOWLEVEL_INIT should not
need to change, this CP15 init is still skipped in that case. The only
impact for these boards is that the cpu_init_cp15() will be available
even if it is never used on these boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Simplify tegra_start() boot path
Simon Glass [Sat, 5 Nov 2011 03:56:50 +0000 (03:56 +0000)]
tegra2: Simplify tegra_start() boot path

The Tegra2 boot path is more complicated than it needs to be. Since we want
to move to building most of U-Boot with ARMv7 and only a small part with
ARMv4T (for AVP) it should be as simple as possible.

This makes tegra2_start() into a simple function which either does AVP
init or A9 init depending on which core is running it. Both cores now
following the same init path, beginning at _start, and the special Tegra2
boot path code is no longer required.

Only two files need to be built for ARMv4T, and this is handled in the
Tegra2 CPU Makefile.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Add arch_cpu_init() to fire up Cortex-A9
Simon Glass [Sat, 5 Nov 2011 03:56:49 +0000 (03:56 +0000)]
tegra2: Add arch_cpu_init() to fire up Cortex-A9

We want to move away from a special Tegra2 start-up, and just use
arch_cpu_init() instead. However, if we run board_init_f() from boot
we need to build it for ARMv4T, since the Tegra's AVP start-up CPU
does not support ARMv7.

The effect of this is to do the AVP init earlier, and in
arch_cpu_init(), rather that board_early_init_f().

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Use new GPIO APIs in gpio_config_uart()
Stephen Warren [Thu, 6 Oct 2011 12:52:22 +0000 (12:52 +0000)]
tegra2: Use new GPIO APIs in gpio_config_uart()

... rather than open-coding the register accesses.

However, gpio_request() typically stores the "label" parameter in a global
data structure. This causes problems when called from gpio_config_uart(),
since the code is running before relocation. To solve this, pass a NULL
string to gpio_request(), and modify gpio_request() not to touch the string
if it's NULL.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Add support for Ventana
Stephen Warren [Mon, 31 Oct 2011 06:51:37 +0000 (06:51 +0000)]
tegra2: Add support for Ventana

Ventana is a board which is very similar to Seaboard. Support it by
re-using board/nvidia/seaboard/seaboard.c with minor run-time conditionals.

v5: Makefile: Use cmd_link_o_target, remove unused clean/distclean targets.
v6: Make gpio_config_uart_seaboard() static.
v7: Add MAINTAINERS entry for Ventana. Tom Warren doesn't have Ventana, so
    he asked me to add myself for this board.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Modify MMC driver to handle power and cd GPIOs
Stephen Warren [Mon, 31 Oct 2011 06:51:36 +0000 (06:51 +0000)]
tegra2: Modify MMC driver to handle power and cd GPIOs

Pass the GPIO numbers for power and card detect to tegra2_mmc_init(), and
modify that function to perform all required GPIO initialization. This
removes the need for board files to perform these operations.

Move board_mmc_getcd() into tegra2_mmc.c now that the driver knows which
GPIOs to use.

Update affected call-sites in seaboard.c and harmony.c. Note that this
change should make all SD ports work on Harmony, since the required GPIO
setup is now being performed.

v4: Fix prototype of tegra2_mmc_init() in board.h to match driver change.
    Remove prototype of gpio_config_mmc() from board.h

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Cc: Andy Fleming <afleming@gmail.com>
Tested-by: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Acked-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agotegra2: Move board_mmc_init into board files
Stephen Warren [Mon, 31 Oct 2011 06:51:35 +0000 (06:51 +0000)]
tegra2: Move board_mmc_init into board files

For Seaboard, this is mostly a cut/paste of board_mmc_init() and
pin_mux_mmc() into seaboard.c; pin_mux_mmc() was modified to add some
missing pinmux_tristate_disable calls for the GPIOs.

For Harmony, those functions were modified to configure SDMMC2 (index 2)
instead of SDMMC3 (index 1), since that's what is present on the board.

However, harmony.c is still missing the required GPIO setup, so neither
port is likely to function correctly yet.  This will be fixed in the next
change.

v4: Include board.h to prototype tegra2_mmc_init().

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Warren <twarren@nvidia.com>
12 years agoUpdate pci_ids.h from current Linux sources
Gabe Black [Mon, 7 Nov 2011 23:43:32 +0000 (23:43 +0000)]
Update pci_ids.h from current Linux sources

This change copies over the pci_ids.h file from Linux verbatim, plus a few
ids that had been added by hand. The last non-merge change hash in that
file in the kernel repository was:

8930c8aa740b12ad69f44a35137bcc39bfa3dc41

and the kernel was at version 2.6.38.

Signed-off-by: Gabe Black <gabeblack@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
[agust@denx.de: updated to preserve used PCI IDs]
Signed-off-by: Anatolij Gustschin <agust@denx.de>