oweals/u-boot.git
12 years agousb: ehci: don't print debug output
Lucas Stach [Thu, 27 Sep 2012 22:26:19 +0000 (00:26 +0200)]
usb: ehci: don't print debug output

This is clearly some sort of debug output and should not
be printed during normal operation.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
12 years agotegra20: port to new ehci interface
Lucas Stach [Tue, 25 Sep 2012 22:14:37 +0000 (00:14 +0200)]
tegra20: port to new ehci interface

EHCI interface now supports more than one controller. Wire up our usb functions
to use this new interface.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
12 years agousb: add support for multiple usb controllers
Lucas Stach [Tue, 25 Sep 2012 22:14:36 +0000 (00:14 +0200)]
usb: add support for multiple usb controllers

Allows to initialize more than one USB controller at once.

v2: print message when controller stop fails

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agousb: ehci: rework to take advantage of new lowlevel interface
Lucas Stach [Tue, 25 Sep 2012 22:14:35 +0000 (00:14 +0200)]
usb: ehci: rework to take advantage of new lowlevel interface

Kill off ehci-core.h
It was used to specify some static controller data. To support more than
one controller being active at any time we have to carry the controller
data ourselfes. Change the ehci interface accordingly.

NOTE: OMAP implemented the ehci stuff a bit backwards and should be fixed
to do the same thing as other platforms. But the change for now is at least
compile clean.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agousb: lowlevel interface change to support multiple controllers
Lucas Stach [Tue, 25 Sep 2012 22:14:34 +0000 (00:14 +0200)]
usb: lowlevel interface change to support multiple controllers

Carry an index in the lowlevel usb functions to make specify the
respective usb controller.

Also pass through an controller struct from lowlevel_init to the
creation of the root usb device of this controller.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agopmc405de and zeus: remove the env_ptr externs
Igor Grinberg [Fri, 28 Sep 2012 10:04:46 +0000 (12:04 +0200)]
pmc405de and zeus: remove the env_ptr externs

The env_ptr is already declared in environment.h, so there is no need to
redeclare in board files (especially after including the environment.h)
Remove those declarations.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Matthias Fuchs <matthias.fuchs@esd.eu>
12 years agoppc4xx: Remove AP1000 board support
Stefan Roese [Wed, 19 Sep 2012 13:18:52 +0000 (15:18 +0200)]
ppc4xx: Remove AP1000 board support

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: James MacAulay <james.macaulay@amirix.com>
Acked-by: Marek Vasut <marex@denx.de>
12 years agoppc4xx: Remove ML2 board support
Stefan Roese [Wed, 19 Sep 2012 13:18:51 +0000 (15:18 +0200)]
ppc4xx: Remove ML2 board support

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: Peter De Schrijver <p2@mind.be>
Acked-by: Marek Vasut <marex@denx.de>
12 years agoppc4xx: Remove IOP480 support
Stefan Roese [Wed, 19 Sep 2012 12:33:52 +0000 (14:33 +0200)]
ppc4xx: Remove IOP480 support

Since the IOP480 (PPC401/3 variant from PLX) is only used on 2
boards that are not actively maintained, lets remove support
for it completely. This way the ppc4xx code will get a bit cleaner.

Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Acked-by: Marek Vasut <marex@denx.de>
12 years agoserial: Enhance the manual relocation
Marek Vasut [Sun, 16 Sep 2012 16:54:22 +0000 (18:54 +0200)]
serial: Enhance the manual relocation

Enhance the manual relocation of drivers operations structure by
checking if the entries are NULL and increment them only if they
are not. This allows for setting any entry to NULL and it will
survive the manual relocation.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: Compile drivers/serial/serial.c by default
Marek Vasut [Fri, 14 Sep 2012 21:46:48 +0000 (23:46 +0200)]
serial: Compile drivers/serial/serial.c by default

Compile drivers/serial/serial.c by default both into SPL and into
non-SPL builds, since CONFIG_SERIAL_MULTI is now the default state.
Also having common/serial.c in by default now, it's pointless to keep
-DCONFIG_SERIAL_MULTI in CPPFLAGS any longer, so remove it as well.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: Remove CONFIG_SERIAL_MULTI from remaining sources
Marek Vasut [Fri, 14 Sep 2012 21:45:51 +0000 (23:45 +0200)]
serial: Remove CONFIG_SERIAL_MULTI from remaining sources

Remove the parts depending either on disabled CONFIG_SERIAL_MULTI
or ifdefs around CONFIG_SERIAL_MULTI parts since CONFIG_SERIAL_MULTI
is now enabled by default.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: Remove CONFIG_SERIAL_MULTI from serial drivers
Marek Vasut [Fri, 14 Sep 2012 21:44:09 +0000 (23:44 +0200)]
serial: Remove CONFIG_SERIAL_MULTI from serial drivers

Remove the support for not-CONFIG_SERIAL_MULTI part from serial
port drivers and some board files. Since CONFIG_SERIAL_MULTI is
now enabled by default, that part is a dead code. Remove it.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoserial: Remove CONFIG_SERIAL_MULTI from config files
Marek Vasut [Fri, 14 Sep 2012 21:39:52 +0000 (23:39 +0200)]
serial: Remove CONFIG_SERIAL_MULTI from config files

Remove any notion of CONFIG_SERIAL_MULTI from board config files.
Since CONFIG_SERIAL_MULTI is now enabled by default, it is useless
to specify this config option in the board config files. Therefore
remove it.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoserial: Unconditionally enable CONFIG_SERIAL_MULTI
Marek Vasut [Fri, 14 Sep 2012 21:20:05 +0000 (23:20 +0200)]
serial: Unconditionally enable CONFIG_SERIAL_MULTI

Enable CONFIG_SERIAL_MULTI for all builds of U-Boot. That includes
both SPL builds and non-SPL builds, everything. To avoid poluting
this patch with removal of ifdef-endif constructions containing
CONFIG_SERIAL_MULTI, the CONFIG_SERIAL_MULTI is temporarily added
into CPPFLAGS in config.mk . This will be again removed in following
patch.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: Move common/serial.c to drivers/serial/
Marek Vasut [Sat, 29 Sep 2012 16:16:28 +0000 (18:16 +0200)]
serial: Move common/serial.c to drivers/serial/

Move the common/serial.c into driver/serial/, since this file
provides serial multiplexing functions and it is imperative to
be linked with libserial.o instead of libcommon.o.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: ns16550: Rename serial.c to serial_ns16550.c
Marek Vasut [Sat, 29 Sep 2012 16:12:47 +0000 (18:12 +0200)]
serial: ns16550: Rename serial.c to serial_ns16550.c

This serial driver had wrong name of the source file for some time
now. The name of the driver was serial.c instead of any more logical
and fitting name. Thus, rename the driver source file to serial_ns16550.c
and be done with it.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Michal Simek <monstr@monstr.eu>
12 years agoserial: ns16550: Call usbtty_poll only in non-SPL build
Marek Vasut [Sat, 15 Sep 2012 08:25:19 +0000 (10:25 +0200)]
serial: ns16550: Call usbtty_poll only in non-SPL build

Having both USBTTY and CONFIG_SERIAL_MULTI enabled in SPL, the
usbtty.c file is protected in Makefile to not be compiled into
the SPL. Yet, the ns16550 serial driver does not contain such
protection. Add it to avoid missing symbol error.

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 puts() and hang() instead of panic() in SPL
Marek Vasut [Sat, 15 Sep 2012 08:33:51 +0000 (10:33 +0200)]
serial: Use puts() and hang() instead of panic() in SPL

If case the get_current() call fails before relocation, the U-Boot
must try to print an error message, fail and either reset or halt.
Such error is critical enough to halt the system, as it means the
system is in very bad state.

This is now also used in SPL, since CONFIG_SERIAL_MULTI is enabled
unconditionally. To avoid compiling whole vsprintf.c into SPL, use
puts() to print error message and hang() to stop the system in case
of SPL build.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: mxs: spl: Remove empty serial_* functions from SPL code
Marek Vasut [Fri, 14 Sep 2012 21:18:08 +0000 (23:18 +0200)]
serial: mxs: spl: Remove empty serial_* functions from SPL code

Remove the empty bodies from serial_* functions from MXS SPL code.
These empty implementations are now in common/serial.c instead so
declaring them also in the SPL code would cause a colision once
serial multi is enabled unconditionally.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoserial: sh: Implement CONFIG_SERIAL_MULTI into sh serial driver
Marek Vasut [Fri, 14 Sep 2012 20:40:08 +0000 (22:40 +0200)]
serial: sh: Implement CONFIG_SERIAL_MULTI into sh serial driver

Implement support for CONFIG_SERIAL_MULTI into sh serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the sh driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Phil Edworthy <PHIL.EDWORTHY@renesas.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into sa1100 serial driver
Marek Vasut [Fri, 14 Sep 2012 20:39:44 +0000 (22:39 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into sa1100 serial driver

Implement support for CONFIG_SERIAL_MULTI into sa1100 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the sa1100 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into s3c44b0 serial driver
Marek Vasut [Fri, 14 Sep 2012 20:39:19 +0000 (22:39 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into s3c44b0 serial driver

Implement support for CONFIG_SERIAL_MULTI into s3c44b0 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the s3c44b0 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into pl01x serial driver
Marek Vasut [Fri, 14 Sep 2012 20:38:46 +0000 (22:38 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into pl01x serial driver

Implement support for CONFIG_SERIAL_MULTI into pl01x serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the pl01x driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Mathieu J. Poirier <mathieu.poirier@linaro.org>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: John Rigby <john.rigby@linaro.org>
Cc: Rabin Vincent <rabin.vincent@stericsson.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into netarm serial driver
Marek Vasut [Fri, 14 Sep 2012 20:38:09 +0000 (22:38 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into netarm serial driver

Implement support for CONFIG_SERIAL_MULTI into netarm serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the netarm driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into mxc serial driver
Marek Vasut [Fri, 14 Sep 2012 20:37:43 +0000 (22:37 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into mxc serial driver

Implement support for CONFIG_SERIAL_MULTI into mxc serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the mxc driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoserial: Implement CONFIG_SERIAL_MULTI into max3100 serial driver
Marek Vasut [Fri, 14 Sep 2012 20:37:17 +0000 (22:37 +0200)]
serial: Implement CONFIG_SERIAL_MULTI into max3100 serial driver

Implement support for CONFIG_SERIAL_MULTI into max3100 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the max3100 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into lpc2292 serial driver
Marek Vasut [Fri, 14 Sep 2012 20:36:50 +0000 (22:36 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into lpc2292 serial driver

Implement support for CONFIG_SERIAL_MULTI into lpc2292 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the lpc2292 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into lh7a40x serial driver
Marek Vasut [Fri, 14 Sep 2012 20:36:27 +0000 (22:36 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into lh7a40x serial driver

Implement support for CONFIG_SERIAL_MULTI into lh7a40x serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the lh7a40x driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into ks8695 serial driver
Marek Vasut [Fri, 14 Sep 2012 20:35:43 +0000 (22:35 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into ks8695 serial driver

Implement support for CONFIG_SERIAL_MULTI into ks8695 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the ks8695 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into ixp serial driver
Marek Vasut [Fri, 14 Sep 2012 20:35:14 +0000 (22:35 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into ixp serial driver

Implement support for CONFIG_SERIAL_MULTI into ixp serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the ixp driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Michael Schwingen <michael@schwingen.org>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into imx serial driver
Marek Vasut [Fri, 14 Sep 2012 20:34:51 +0000 (22:34 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into imx serial driver

Implement support for CONFIG_SERIAL_MULTI into imx serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the imx driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Stefano Babic <sbabic@denx.de>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into clps7111 serial driver
Marek Vasut [Fri, 14 Sep 2012 20:34:22 +0000 (22:34 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into clps7111 serial driver

Implement support for CONFIG_SERIAL_MULTI into clps7111 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the clps7111 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: sandbox: Implement CONFIG_SERIAL_MULTI into sandbox serial driver
Marek Vasut [Fri, 14 Sep 2012 20:33:21 +0000 (22:33 +0200)]
serial: sandbox: Implement CONFIG_SERIAL_MULTI into sandbox serial driver

Implement support for CONFIG_SERIAL_MULTI into sandbox serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the sandbox driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into s3c64xx serial driver
Marek Vasut [Thu, 13 Sep 2012 14:53:49 +0000 (16:53 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into s3c64xx serial driver

Implement support for CONFIG_SERIAL_MULTI into s3c64xx serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the s3c64xx driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: John Rigby <john.rigby@linaro.org>
Cc: Minkyu Kang <mk7.kang@samsung.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into s3c4510b serial driver
Marek Vasut [Thu, 13 Sep 2012 14:53:15 +0000 (16:53 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into s3c4510b serial driver

Implement support for CONFIG_SERIAL_MULTI into s3c4510b serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the s3c4510b driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: oc: Implement CONFIG_SERIAL_MULTI into OpenCores serial driver
Marek Vasut [Thu, 13 Sep 2012 14:52:38 +0000 (16:52 +0200)]
serial: oc: Implement CONFIG_SERIAL_MULTI into OpenCores serial driver

Implement support for CONFIG_SERIAL_MULTI into OpenCores serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the OpenCores driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Scott McNutt <smcnutt@psyent.com>
12 years agoserial: Implement CONFIG_SERIAL_MULTI into ns9750 serial driver
Marek Vasut [Thu, 13 Sep 2012 14:52:07 +0000 (16:52 +0200)]
serial: Implement CONFIG_SERIAL_MULTI into ns9750 serial driver

Implement support for CONFIG_SERIAL_MULTI into ns9750 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the ns9750 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: mcf: Implement CONFIG_SERIAL_MULTI into MCF serial driver
Marek Vasut [Thu, 13 Sep 2012 14:51:38 +0000 (16:51 +0200)]
serial: mcf: Implement CONFIG_SERIAL_MULTI into MCF serial driver

Implement support for CONFIG_SERIAL_MULTI into MCF serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the MCF driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: TsiChung Liew <tsicliew@gmail.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into lpc32xx serial driver
Marek Vasut [Thu, 13 Sep 2012 14:51:02 +0000 (16:51 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into lpc32xx serial driver

Implement support for CONFIG_SERIAL_MULTI into lpc32xx serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the lpc32xx driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Vladimir Zapolskiy <vz@mleia.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into atmel serial driver
Marek Vasut [Thu, 13 Sep 2012 14:50:30 +0000 (16:50 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into atmel serial driver

Implement support for CONFIG_SERIAL_MULTI into atmel serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the atmel driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Xu, Hong <Hong.Xu@atmel.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into altera serial driver
Marek Vasut [Thu, 13 Sep 2012 14:49:51 +0000 (16:49 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into altera serial driver

Implement support for CONFIG_SERIAL_MULTI into altera serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the altera driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Scott McNutt <smcnutt@psyent.com>
12 years agoserial: arm: Implement CONFIG_SERIAL_MULTI into altera_jtag serial driver
Marek Vasut [Thu, 13 Sep 2012 14:48:50 +0000 (16:48 +0200)]
serial: arm: Implement CONFIG_SERIAL_MULTI into altera_jtag serial driver

Implement support for CONFIG_SERIAL_MULTI into altera_jtag serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the altera_jtag driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Thomas Chou <thomas@wytron.com.tw>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into p3mx serial driver
Marek Vasut [Thu, 13 Sep 2012 10:35:54 +0000 (12:35 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into p3mx serial driver

Implement support for CONFIG_SERIAL_MULTI into p3mx serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the p3mx driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into sconsole serial driver
Marek Vasut [Thu, 13 Sep 2012 10:34:49 +0000 (12:34 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into sconsole serial driver

Implement support for CONFIG_SERIAL_MULTI into sconsole serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the sconsole driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into ml2 serial driver
Marek Vasut [Thu, 13 Sep 2012 10:34:24 +0000 (12:34 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into ml2 serial driver

Implement support for CONFIG_SERIAL_MULTI into ml2 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the ml2 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into evb64260 serial driver
Marek Vasut [Thu, 13 Sep 2012 10:33:50 +0000 (12:33 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into evb64260 serial driver

Implement support for CONFIG_SERIAL_MULTI into evb64260 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the evb64260 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into cpci750 serial driver
Marek Vasut [Thu, 13 Sep 2012 10:32:56 +0000 (12:32 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into cpci750 serial driver

Implement support for CONFIG_SERIAL_MULTI into cpci750 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the cpci750 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into cogent serial driver
Marek Vasut [Thu, 13 Sep 2012 10:29:31 +0000 (12:29 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into cogent serial driver

Implement support for CONFIG_SERIAL_MULTI into cogent serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the cogent driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into bmw serial driver
Marek Vasut [Thu, 13 Sep 2012 10:28:07 +0000 (12:28 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into bmw serial driver

Implement support for CONFIG_SERIAL_MULTI into bmw serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the bmw driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into amirix serial driver
Marek Vasut [Thu, 13 Sep 2012 10:27:37 +0000 (12:27 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into amirix serial driver

Implement support for CONFIG_SERIAL_MULTI into amirix serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the amirix driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into marvell serial driver
Marek Vasut [Thu, 13 Sep 2012 10:26:39 +0000 (12:26 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into marvell serial driver

Implement support for CONFIG_SERIAL_MULTI into marvell serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the marvell driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: sparc: Implement CONFIG_SERIAL_MULTI into leon3 serial driver
Marek Vasut [Thu, 13 Sep 2012 10:25:48 +0000 (12:25 +0200)]
serial: sparc: Implement CONFIG_SERIAL_MULTI into leon3 serial driver

Implement support for CONFIG_SERIAL_MULTI into leon3 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the leon3 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Peter Tyser <ptyser@xes-inc.com>
12 years agoserial: sparc: Implement CONFIG_SERIAL_MULTI into leon2 serial driver
Marek Vasut [Thu, 13 Sep 2012 10:25:07 +0000 (12:25 +0200)]
serial: sparc: Implement CONFIG_SERIAL_MULTI into leon2 serial driver

Implement support for CONFIG_SERIAL_MULTI into leon2 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the leon2 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Peter Tyser <ptyser@xes-inc.com>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into iop480 serial driver
Marek Vasut [Wed, 12 Sep 2012 23:40:33 +0000 (01:40 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into iop480 serial driver

Implement support for CONFIG_SERIAL_MULTI into iop480 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the iop480 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into mpc85xx serial driver
Marek Vasut [Wed, 12 Sep 2012 23:38:52 +0000 (01:38 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into mpc85xx serial driver

Implement support for CONFIG_SERIAL_MULTI into mpc85xx serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the mpc85xx driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into mpc8260 serial drivers
Marek Vasut [Wed, 12 Sep 2012 23:34:16 +0000 (01:34 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into mpc8260 serial drivers

Implement support for CONFIG_SERIAL_MULTI into both SCC and SMC mpc8260
serial drivers. These drivers were so far only usable directly, but this
patch also adds support for the multi method. This allows using more than
one serial driver alongside the mpc8260 drivers. Also, add a weak
implementation of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into mpc8220 serial driver
Marek Vasut [Wed, 12 Sep 2012 23:29:31 +0000 (01:29 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into mpc8220 serial driver

Implement support for CONFIG_SERIAL_MULTI into mpc8220 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the mpc8220 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: powerpc: Implement CONFIG_SERIAL_MULTI into mpc5xx serial driver
Marek Vasut [Wed, 12 Sep 2012 23:26:42 +0000 (01:26 +0200)]
serial: powerpc: Implement CONFIG_SERIAL_MULTI into mpc5xx serial driver

Implement support for CONFIG_SERIAL_MULTI into mpc5xx serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the mpc5xx driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: mips: Implement CONFIG_SERIAL_MULTI into JZ serial driver
Marek Vasut [Wed, 12 Sep 2012 23:20:59 +0000 (01:20 +0200)]
serial: mips: Implement CONFIG_SERIAL_MULTI into JZ serial driver

Implement support for CONFIG_SERIAL_MULTI into JZ serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the JZ driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
12 years agoserial: mips: Implement CONFIG_SERIAL_MULTI into asc serial driver
Marek Vasut [Wed, 12 Sep 2012 23:20:07 +0000 (01:20 +0200)]
serial: mips: Implement CONFIG_SERIAL_MULTI into asc serial driver

Implement support for CONFIG_SERIAL_MULTI into asc serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the asc driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
12 years agoserial: mips: Implement CONFIG_SERIAL_MULTI into au1x00 serial driver
Marek Vasut [Wed, 12 Sep 2012 23:16:50 +0000 (01:16 +0200)]
serial: mips: Implement CONFIG_SERIAL_MULTI into au1x00 serial driver

Implement support for CONFIG_SERIAL_MULTI into au1x00 serial driver.
This driver was so far only usable directly, but this patch also adds
support for the multi method. This allows using more than one serial
driver alongside the au1x00 driver. Also, add a weak implementation
of default_serial_console() returning this driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
12 years agoserial: bfin: Flip the jtag serial console to CONFIG_SERIAL_MULTI
Marek Vasut [Wed, 12 Sep 2012 22:02:54 +0000 (00:02 +0200)]
serial: bfin: Flip the jtag serial console to CONFIG_SERIAL_MULTI

Rework the emulation of serial console via JTAG from simple ad-hoc
implementation of serial port routines to CONFIG_SERIAL_MULTI and
enable CONFIG_SERIAL_MULTI unconditionally for blackfin.

In order for the JTAG serial console to take precedence over all
other serial ports available in system, implement override for
default_serial_console call returning this JTAG serial console.

This brings in a bit of a growth of size, but eventually will allow
us to unconditionally enable CONFIG_SERIAL_MULTI throughout the whole
U-Boot and maintain only one serial subsystem.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agoserial: zoom2: Remove zoom2 serial prototypes from serial.h
Marek Vasut [Wed, 12 Sep 2012 18:15:06 +0000 (20:15 +0200)]
serial: zoom2: Remove zoom2 serial prototypes from serial.h

Remove the prototypes for zoom2_serial_deviceN from serial.h . This
can't be done right away, as they are referenced from the zoom2
config file. Therefore, adjust the code so the config file only
specifies number of the port. Then, replace the simple return in
default_serial_console() with a switch across possible values, which
returns the zoom2_serial_deviceN . With such adjustment in place,
the exported prototypes in serial.h can be safely removed.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: bfin: Adjust serial_register_bfin_uart()
Marek Vasut [Wed, 12 Sep 2012 18:07:54 +0000 (20:07 +0200)]
serial: bfin: Adjust serial_register_bfin_uart()

Rename the serial_register_bfin_uart() to bfin_initialize_serial()
to be consistent with the rest of the naming. Next, remove it's
prototype from serial.h and properly insert it into serial.c as
the rest of the serial initialization functions.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agoserial: bfin: Remove the bfin_serialN_device exports from serial.h
Marek Vasut [Wed, 12 Sep 2012 18:05:13 +0000 (20:05 +0200)]
serial: bfin: Remove the bfin_serialN_device exports from serial.h

Remove the exports from serial.h as they are only used in the blackfin
serial driver. Furthermore, they are only used for registration, which
is handled already inside that driver and default_serial_port() call,
which is also handled in that driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agoserial: ns16550: Move serial registration from serial_initialize()
Marek Vasut [Wed, 12 Sep 2012 18:02:05 +0000 (20:02 +0200)]
serial: ns16550: Move serial registration from serial_initialize()

Move the registration of eserialN_device ports from default
serial_initialize() into driver specific function called from
serial_initialize(). This slims down the serial_initialize() call
to a bare tracker of all possible serial port registration routines
in U-Boot.

The newly implemented ns16550_serial_initialize() function, which is
implemented inside of the ns16550 serial driver allows encapsulation
of eserialN_device within the ns16550 serial driver itself.

Also, remove the exports of eserialN_device from include/serial.h
as they are no longer needed. This is simply because the implementation of
default_serial_console() is wrapped into the ns16550 serial driver and
the default console is picked by CONFIG_SERIAL<N> macro in config file.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Michal Simek <monstr@monstr.eu>
12 years agoserial: mpc512x: Move serial registration from serial_initialize()
Marek Vasut [Wed, 12 Sep 2012 17:50:18 +0000 (19:50 +0200)]
serial: mpc512x: Move serial registration from serial_initialize()

Move the registration of serialN_device ports from default
serial_initialize() into driver specific function called from
serial_initialize(). This slims down the serial_initialize() call
to a bare tracker of all possible serial port registration routines
in U-Boot.

The newly implemented mpc512x_serial_initialize() function, which is
implemented inside of the mpc512x serial driver allows encapsulation
of serialN_device within the mpc512x serial driver itself.

Also, remove the exports of serialN_device from include/serial.h
as they are no longer needed. This is simply because the implementation of
default_serial_console() is wrapped into the mpx512x serial driver and
the default console is picked by CONFIG_SERIAL<N> macro in config file.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: microblaze: Move serial registration from serial_initialize()
Marek Vasut [Wed, 12 Sep 2012 17:45:58 +0000 (19:45 +0200)]
serial: microblaze: Move serial registration from serial_initialize()

Move the registration of xuartlite_serialN_device ports from
default serial_initialize() into driver specific function called from
serial_initialize(). This slims down the serial_initialize() call
to a bare tracker of all possible serial port registration routines
in U-Boot.

The newly implemented xuartlite_serial_initialize() function, which is
implemented inside of the serial_xuartlite driver allows encapsulation
of xuartlite_serialN_device within the serial_xuartlite driver itself.

Also, remove the exports of xuartlite_serialN_device from include/serial.h
as they are no longer needed. This is simply because the implementation of
default_serial_console() is wrapped into the serial_xuartlite driver and
the default console is picked by CONFIG_SERIAL<N> macro in config file.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Michal Simek <monstr@monstr.eu>
12 years agoserial: zynq: Move serial registration from serial_initialize()
Tom Rini [Mon, 8 Oct 2012 21:46:23 +0000 (14:46 -0700)]
serial: zynq: Move serial registration from serial_initialize()

Move the registration of zynq_serialN_device ports from default
serial_initialize() into driver specific function called from
serial_initialize(). This slims down the serial_initialize() call
to a bare tracker of all possible serial port registration routines
in U-Boot.

The newly implemented zynq_serial_initialize() function, which is
implemented inside of the serial_zynq driver allows encapsulation
of zynq_serialN_device within the serial_zynq driver itself.

Also, remove the exports of zynq_serialN_device from include/serial.h
as they are no longer needed. This is simply because the implementation of
default_serial_console() is wrapped into the serial_zynq driver and
the default console is picked by CONFIG_SERIAL<N> macro in config file.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoserial: s5p: Move serial registration from serial_initialize()
Marek Vasut [Wed, 12 Sep 2012 17:39:57 +0000 (19:39 +0200)]
serial: s5p: Move serial registration from serial_initialize()

Move the registration of s5p_serialN_device ports from default
serial_initialize() into driver specific function called from
serial_initialize(). This slims down the serial_initialize() call
to a bare tracker of all possible serial port registration routines
in U-Boot.

The newly implemented s5p_serial_initialize() function, which is
implemented inside of the serial_s5p driver allows encapsulation
of s5p_serialN_device within the serial_s5p driver itself.

Also, remove the exports of s5p_serialN_device from include/serial.h
as they are no longer needed. This is simply because the implementation of
default_serial_console() is wrapped into the serial_s5p driver and
the default console is picked by CONFIG_SERIAL<N> macro in config file.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Minkyu Kang <mk7.kang@samsung.com>
12 years agoserial: pxa: Move serial registration from serial_initialize()
Marek Vasut [Wed, 12 Sep 2012 11:57:58 +0000 (13:57 +0200)]
serial: pxa: Move serial registration from serial_initialize()

Move the registration of serial_XXuart ports from default
serial_initialize() into driver specific function called from
serial_initialize(). This slims down the serial_initialize() call
to a bare tracker of all possible serial port registration routines
in U-Boot.

The newly implemented pxa_serial_initialize() function, which is
implemented inside of the serial_pxa driver allows encapsulation
of serial_XXuart within the serial_pxa driver itself.

Also, remove the exports of serial_XXuart from include/serial.h
as they are no longer needed. This is simply because the implementation of
default_serial_console() is wrapped into the serial_pxa driver and
the default console is picked by CONFIG_CONS_IDX macro in config file.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: s3c24xx: Move serial registration from serial_initialize()
Marek Vasut [Wed, 12 Sep 2012 14:01:16 +0000 (16:01 +0200)]
serial: s3c24xx: Move serial registration from serial_initialize()

Move the registration of s3c24xx_serialN_device ports from
default serial_initialize() into driver specific function called from
serial_initialize(). This slims down the serial_initialize() call
to a bare tracker of all possible serial port registration routines
in U-Boot.

The newly implemented s3c24xx_serial_initialize() function, which is
implemented inside of the serial_s3c24xx driver allows encapsulation
of s3c24xx_serialN_device within the serial_s3c24xx driver itself.

Also, remove the exports of s3c24xx_serialN_device from include/serial.h
as they are no longer needed. This is simply because the implementation of
default_serial_console() is wrapped into the serial_s3c24xx driver and
the default console is picked by CONFIG_SERIAL<N> macro in config file.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: C Nauman <cnauman@diagraph.com>
12 years agoserial: mpc8xx: Move serial registration from serial_initialize()
Marek Vasut [Wed, 12 Sep 2012 11:50:56 +0000 (13:50 +0200)]
serial: mpc8xx: Move serial registration from serial_initialize()

Move the registration of serial_smc and serial_scc ports from
default serial_initialize() into CPU specific function called from
serial_initialize(). This slims down the serial_initialize() call
to a bare tracker of all possible serial port registration routines
in U-Boot.

The exports of both serial_scc_device and serial_smc_device can
not yet be removed as they are still used in default_serial_console()
calls.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agoserial: Implement serial_initfunc() macro
Marek Vasut [Wed, 12 Sep 2012 15:49:58 +0000 (17:49 +0200)]
serial: Implement serial_initfunc() macro

This macro simplifies declaration of weak aliases for per-driver
functions, which register these drivers with the serial subsystem.
The idea here is to push serial_register() calls from serial.c into
the drivers. To avoid pile of ifdef construct as it is now, create
weak aliases to these functions, which in case the driver is not
present alias onto an empty function, which is in turn optimized out
altogether.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
Cc: Mike Frysinger <vapier@gentoo.org>
12 years agoserial: mpc512x: Properly define CONFIG_SYS_PSC3 in config files
Marek Vasut [Sun, 16 Sep 2012 14:07:24 +0000 (16:07 +0200)]
serial: mpc512x: Properly define CONFIG_SYS_PSC3 in config files

Some of the boards using the mpc512x serial driver didn't properly
define which PSC console to use. This caused breakage when building
with CONFIG_SERIAL_MULTI enabled. Fix this by defining the default
PSC console.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
12 years agoserial: pxa: Make local functions static
Marek Vasut [Wed, 12 Sep 2012 10:59:42 +0000 (12:59 +0200)]
serial: pxa: Make local functions static

Make functions that are local-only static, so no hairy symbols
stick out of the serial_pxa driver file.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: pxa: Make use of default_serial_console in serial_pxa
Marek Vasut [Wed, 12 Sep 2012 10:36:25 +0000 (12:36 +0200)]
serial: pxa: Make use of default_serial_console in serial_pxa

Make use of the newly implemented weak default_serial_console in
the serial_pxa driver. This removes all reimplementations of this
function from board files.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: pxa: Implement default_serial_console in serial_pxa.c
Marek Vasut [Wed, 12 Sep 2012 10:26:30 +0000 (12:26 +0200)]
serial: pxa: Implement default_serial_console in serial_pxa.c

Implement weak default_serial_console() function in serial_pxa
driver, which gets available in case CONFIG_SERIAL_MULTI is
enabled. This will get helpful in subsequent patches, which will
encapsulate PXA's struct serial_device instances in serial_pxa
driver.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoserial: Properly spell out the structure member names of serial_driver
Marek Vasut [Sun, 9 Sep 2012 16:48:28 +0000 (18:48 +0200)]
serial: Properly spell out the structure member names of serial_driver

Properly spell out the whole structure member names when an initialized
varible is instantiated from the struct serial_driver. In case the
structure definition for struct serial_driver undergoes reordering,
there will be no impact on variables defined based on this structure.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
Cc: Anatolij Gustschin <agust@denx.de>
Cc: Stefan Roese <sr@denx.de>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: C Nauman <cnauman@diagraph.com>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Michal Simek <monstr@monstr.eu>
12 years agoserial: Rename .init() and .uninit() in serial_device
Marek Vasut [Fri, 7 Sep 2012 12:35:31 +0000 (14:35 +0200)]
serial: Rename .init() and .uninit() in serial_device

Rename .init() to .start() and .uninit() to .stop() in struct
serial_device. This allows aligning struct serial_device with
closer to struct stdio_dev. The real goal here is to allow
these two structures to converge together and eventually make
one to be a superset of the other.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoserial: Coding style cleanup of struct serial_device
Marek Vasut [Fri, 7 Sep 2012 12:32:10 +0000 (14:32 +0200)]
serial: Coding style cleanup of struct serial_device

Do a simple cleanup of the struct serial_device and align it with
current coding style. Checkpatch now reports no errors.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
12 years agoCOMMON: Use __stringify() instead of rest of implementations
Marek Vasut [Sun, 23 Sep 2012 15:41:25 +0000 (17:41 +0200)]
COMMON: Use __stringify() instead of rest of implementations

Fix up the rest of implementations of __stringify().

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoCOMMON: Use __stringify() instead of MK_STR()
Marek Vasut [Sun, 23 Sep 2012 15:41:24 +0000 (17:41 +0200)]
COMMON: Use __stringify() instead of MK_STR()

Kill multiple occurances and redeclaration of MK_STR
in favor of __stringify().

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoCOMMON: Use __stringify() instead of xstr()
Marek Vasut [Sun, 23 Sep 2012 15:41:23 +0000 (17:41 +0200)]
COMMON: Use __stringify() instead of xstr()

Kill multiple occurances and redeclaration of xstr in favor of __stringify().

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoCOMMON: Add __stringify() function
Marek Vasut [Thu, 27 Sep 2012 15:08:15 +0000 (17:08 +0200)]
COMMON: Add __stringify() function

Copied from Linux kernel:
commit 8f7c2c37319a81ef4c2bfdec67b1ccd5744d97e4
Date:   Wed Apr 8 16:58:57 2009 +0800

Pull in the __stringify() macro from Linux kernel. This macro is usually used to
convert numbers to strings at preprocessor level, yet it is not limited only to
that. This is useful as it allows higher usage of puts() in favour of printf().

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoSPL: Remove setting GD_FLG_RELOC in preloader_console_init()
Tom Rini [Mon, 1 Oct 2012 21:44:31 +0000 (14:44 -0700)]
SPL: Remove setting GD_FLG_RELOC in preloader_console_init()

We have not strictly speaking relocated at this point, do not claim that
we have.  This is not required for output.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoMAINTAINERS: Move dbau1x00 to orphaned.
Tom Rini [Wed, 26 Sep 2012 22:22:32 +0000 (15:22 -0700)]
MAINTAINERS: Move dbau1x00 to orphaned.

The former maintainer is no longer interested, move to orphaned.  Patch
is from the former maintainer.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agogth2: Remove this platform
Tom Rini [Wed, 26 Sep 2012 22:20:33 +0000 (15:20 -0700)]
gth2: Remove this platform

After taking with the former maintainer, delete this platform.  The
patch is from the former maintainer.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agocommon: cmd_elf.c: use uintptr_t for casts from u32 to void*
Daniel Schwierzeck [Sun, 16 Sep 2012 06:55:06 +0000 (06:55 +0000)]
common: cmd_elf.c: use uintptr_t for casts from u32 to void*

This fixes warnings when compiling with ELDK-5.2.1 for MIPS64:

cmd_elf.c: In function 'load_elf_image_phdr':
cmd_elf.c:289:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
cmd_elf.c: In function 'load_elf_image_shdr':
cmd_elf.c:343:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
cmd_elf.c:346:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
12 years agocommon: cmd_elf.c: fix checkpath.pl warnings
Daniel Schwierzeck [Sun, 16 Sep 2012 06:55:05 +0000 (06:55 +0000)]
common: cmd_elf.c: fix checkpath.pl warnings

[Tom: Move valid_elf_image around and don't mark it as static as another
board makes use of this function]

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Signed-off-by: Tom Rini <trini@ti.com>
12 years agolib: vsprintf.c: replace NUM_TYPE with s64/u64 types
Daniel Schwierzeck [Sun, 16 Sep 2012 06:55:04 +0000 (06:55 +0000)]
lib: vsprintf.c: replace NUM_TYPE with s64/u64 types

This fixes warnings when compiling with ELDK-5.2.1 for MIPS64:

vsprintf.c: In function 'put_dec':
vsprintf.c:258:9: warning: comparison of distinct pointer types lacks a cast [enabled by default]
vsprintf.c:258:3: warning: passing argument 1 of '__div64_32' from incompatible pointer type [enabled by default]
include/div64.h:22:17: note: expected 'uint64_t *' but argument is of type 'long long unsigned int *'

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
12 years agolib: vsprintf.c: fix checkpath.pl warnings
Daniel Schwierzeck [Sun, 16 Sep 2012 06:55:03 +0000 (06:55 +0000)]
lib: vsprintf.c: fix checkpath.pl warnings

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
12 years agoARM: prevent misaligned array inits
Albert ARIBAUD [Tue, 9 Oct 2012 09:28:15 +0000 (09:28 +0000)]
ARM: prevent misaligned array inits

Under option -munaligned-access, gcc can perform local char
or 16-bit array initializations using misaligned native
accesses which will throw a data abort exception. Fix files
where these array initializations were unneeded, and for
files known to contain such initializations, enforce gcc
option -mno-unaligned-access.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
[trini: Switch to usign call cc-option for -mno-unaligned-access as
Albert had done previously as that's really correct]
Signed-off-by: Tom Rini <trini@ti.com>
12 years agoPrepare v2012.10 v2012.10
Tom Rini [Mon, 15 Oct 2012 15:14:08 +0000 (08:14 -0700)]
Prepare v2012.10

Signed-off-by: Tom Rini <trini@ti.com>
12 years agom28: Properly configure the SPI flash chipselect
Marek Vasut [Thu, 11 Oct 2012 15:36:56 +0000 (15:36 +0000)]
m28: Properly configure the SPI flash chipselect

The SPI flash is not properly detected by plain "sf probe" due to
it being located on different bus and different chipselect. Fix
this problem.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Tom Rini <trini@ti.com>
12 years agoPrepare v2012.10-rc3 v2012.10-rc3
Tom Rini [Mon, 8 Oct 2012 18:20:28 +0000 (11:20 -0700)]
Prepare v2012.10-rc3

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoarm: armv7: omap3: Fix restore sequence in lowlevel_init
Albert ARIBAUD [Sun, 7 Oct 2012 09:24:10 +0000 (09:24 +0000)]
arm: armv7: omap3: Fix restore sequence in lowlevel_init

The restore sequence in lowlevel_init was in the wrong order,
causing lr to lose its original value and be set equal to ip
instead. Also, its use of the stack clashes with that of
s_init, so move the s_init call after the restore and turn
it  into a tail-optimized branch.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Tested-by: Jeroen Hofstee <jeroen@myspectrum.nl>
12 years agoyaffs2: Fix GCC 4.6 compile warnings
Anatolij Gustschin [Fri, 5 Oct 2012 23:31:03 +0000 (23:31 +0000)]
yaffs2: Fix GCC 4.6 compile warnings

Fix:
yaffs_guts.c: In function 'yaffs_check_chunk_erased':
yaffs_guts.c:324:6: warning: variable 'result' set but not used
[-Wunused-but-set-variable]
yaffs_guts.c: In function 'yaffs_verify_chunk_written':
yaffs_guts.c:352:6: warning: variable 'result' set but not used
[-Wunused-but-set-variable]
yaffs_guts.c: In function 'yaffs_grab_chunk_cache':
yaffs_guts.c:1488:6: warning: variable 'pushout' set but not used
[-Wunused-but-set-variable]
yaffs_guts.c: In function 'yaffs_check_obj_details_loaded':
yaffs_guts.c:3180:6: warning: variable 'alloc_failed' set but not used
[-Wunused-but-set-variable]
yaffs_guts.c:3179:6: warning: variable 'result' set but not used
[-Wunused-but-set-variable]
yaffs_guts.c: In function 'yaffs_update_oh':
yaffs_guts.c:3288:6: warning: variable 'result' set but not used
[-Wunused-but-set-variable]
yaffs_guts.c: In function 'yaffs_get_obj_name':
yaffs_guts.c:4447:7: warning: variable 'result' set but not used
[-Wunused-but-set-variable]
yaffs_summary.c: In function 'yaffs_summary_read':
yaffs_summary.c:194:6: warning: variable 'sum_tags_bytes' set but not
used [-Wunused-but-set-variable]
yaffs_verify.c: In function 'yaffs_verify_file':
yaffs_verify.c:227:6: warning: variable 'actual_depth' set but not used
[-Wunused-but-set-variable]
yaffs_yaffs1.c: In function 'yaffs1_scan':
yaffs_yaffs1.c:26:6: warning: variable 'result' set but not used
[-Wunused-but-set-variable]
yaffs_yaffs2.c: In function 'yaffs2_scan_chunk':
yaffs_yaffs2.c:949:6: warning: variable 'result' set but not used
[-Wunused-but-set-variable]
yaffs_yaffs2.c: In function 'yaffs2_scan_backwards':
yaffs_yaffs2.c:1352:6: warning: variable 'deleted' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Charles Manning <cdhmanning@gmail.com>
Tested-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
12 years agodisk: part_dos: don't claim whole-disk FAT filesystems
Stephen Warren [Fri, 5 Oct 2012 13:17:40 +0000 (13:17 +0000)]
disk: part_dos: don't claim whole-disk FAT filesystems

Logically, a disk that contains a raw FAT filesystem does not in fact
have a partition table. However, test_part_dos() was claiming that such
disks did in fact have a DOS-style partition table. This caused
get_device_and_partition() not to return a whole-disk disk_partition_t,
since part_type != PART_TYPE_UNKNOWN.

part_dos.c's print_partition_extended() detected the raw FAT filesystem
condition and printed a fake partition table that encompassed the whole
disk.

However, part_dos.c's get_partition_info_extended() did not return any
valid partitions in this case. This combination caused
get_device_and_partition() not to find any valid partitions, and hence
to return an error.

Fix test_part_dos() not to claim that raw FAT filesystems are DOS
partition tables. In turn, this causes get_device_and_partition() to
return a whole-disk disk_partition_t, and hence the following commands
work:

fatls mmc 0 /
fatls mmc 0:auto /

An alternative would be to modify print_partition_extended() to detect
raw FAT filesystems, just like print_partition_extended() does, and to
return a fake partition in this case. However, this seems logically
incorrect, and also duplicates code, since get_device_and_partition()
falls back to returning a whole-disk partition when there is no partition
table on the device.

Signed-off-by: Stephen Warren <swarren@nvidia.com>