project/bcm63xx/u-boot.git
10 years agortl8169: Defer network packet processing
Thierry Reding [Thu, 28 Aug 2014 10:38:03 +0000 (12:38 +0200)]
rtl8169: Defer network packet processing

When network protocol errors occur (such as a file not being found on a
TFTP server), the processing done by the NetReceive() function will end
up calling the driver's .halt() implementation. However, after that the
device no longer has access to the memory buffers and will cause errors
such as this in the rtl_recv() function when trying to hand descriptors
back to the device:

pci_hose_bus_to_phys: invalid physical address

This can be fixed by deferring processing of network packets until the
descriptors have been handed back. That way rtl_halt() tearing down
network buffers is not going to prevent access to the buffers.

Reported-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
10 years agoopenrisc: Fix a few type cast related warnings
Vasili Galka [Tue, 26 Aug 2014 10:46:17 +0000 (13:46 +0300)]
openrisc: Fix a few type cast related warnings

Use size_t type for positive offsets instead of the loff_t type. The
later is defined as long long, which is larger than the pointer type
on OpenRISC architecture and therefore the following warning was
generated:

"warning: cast to pointer from integer of different size"

Signed-off-by: Vasili Galka <vvv444@gmail.com>
10 years agoFix a few printf argument verification warnings
Vasili Galka [Tue, 26 Aug 2014 10:45:48 +0000 (13:45 +0300)]
Fix a few printf argument verification warnings

The parameters of size_t type shall be formatted using "%zu" and not
using "%d".

Precision argument for the "%.*s" parameters shall be of int type.

Signed-off-by: Vasili Galka <vvv444@gmail.com>
10 years agocosmetic: README.scrapyard: add NIOS2 boards
Masahiro Yamada [Mon, 25 Aug 2014 01:37:49 +0000 (10:37 +0900)]
cosmetic: README.scrapyard: add NIOS2 boards

Commit 70fbc461 removed obsolete PCI5441 and PK1C20 boards.
This commit adds them to README.scrapyard and also fills
some commit IDs and dates for removed boards.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Thomas Chou <thomas@wytron.com.tw>
Acked-by: Thomas Chou <thomas@wytron.com.tw>
10 years agokconfig: remove redundant "string" type in arch and board Kconfigs
Masahiro Yamada [Sat, 13 Sep 2014 18:01:49 +0000 (03:01 +0900)]
kconfig: remove redundant "string" type in arch and board Kconfigs

Now the types of CONFIG_SYS_{ARCH, CPU, SOC, VENDOR, BOARD, CONFIG_NAME}
are specified in arch/Kconfig.

We can delete the ones in arch and board Kconfig files.

This commit can be easily reproduced by the following command:

find . -name Kconfig -a ! -path ./arch/Kconfig | xargs sed -i -e '
/config[[:space:]]SYS_\(ARCH\|CPU\|SOC\|\VENDOR\|BOARD\|CONFIG_NAME\)/ {
    N
    s/\n[[:space:]]*string//
}
'

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agokconfig: add CONFIG_SYS_{ARCH, CPU, ...} type def to arch/Kconfig
Masahiro Yamada [Sat, 13 Sep 2014 18:01:48 +0000 (03:01 +0900)]
kconfig: add CONFIG_SYS_{ARCH, CPU, ...} type def to arch/Kconfig

This commit adds the type definitions (+ help messages) of
CONFIG_SYS_{ARCH, CPU, SOC, VENDOR, BOARD, CONFIG_NAME} to arch/Kconfig,
which would save lots of type defs for taget boards.
(See also the next commit.)

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agoMerge branch 'master' of git://git.denx.de/u-boot-dm
Tom Rini [Sat, 13 Sep 2014 20:32:52 +0000 (16:32 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-dm

10 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Tom Rini [Fri, 12 Sep 2014 15:27:46 +0000 (11:27 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

10 years agoarm: Fix _start for CONFIG_SYS_DV_NOR_BOOT_CFG
Benoît Thébaudeau [Wed, 3 Sep 2014 21:32:34 +0000 (23:32 +0200)]
arm: Fix _start for CONFIG_SYS_DV_NOR_BOOT_CFG

The boards using CONFIG_SYS_DV_NOR_BOOT_CFG (i.e. calimain,
da850evm_direct_nor and enbw_cmc) had the _start symbol defined after
the CONFIG_SYS_DV_NOR_BOOT_CFG word rather than before it in
arch/arm/lib/vectors.S. Because of that, if by lack of luck
'gd->mon_len = (ulong)&__bss_end - (ulong)_start' (see setup_mon_len())
was a multiple of 4 kiB (see reserve_uboot()), then the last BSS word
overlapped the first word of the following reserved RAM area (or went
beyond the top of RAM without such an area) after relocation because
__image_copy_start did not match _start (see relocate_code()).

This was broken by commit 41623c9 'arm: move exception handling out of
start.S files', which defined _start twice (before and after the
CONFIG_SYS_DV_NOR_BOOT_CFG word), then by commit 0a26e1d 'arm: fix a
double-definition error of _start symbol', which kept the definition of
the _start symbol after the CONFIG_SYS_DV_NOR_BOOT_CFG word. This new
commit fixes this issue by restoring the original behavior, i.e. by
defining the _start symbol before the CONFIG_SYS_DV_NOR_BOOT_CFG word.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: Manfred Rudigier <manfred.rudigier@omicron.at>
Cc: Christian Riesch <christian.riesch@omicron.at>
Cc: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
Cc: Heiko Schocher <hs@denx.de>
10 years agoarm: Make reset position-independent
Benoît Thébaudeau [Wed, 3 Sep 2014 21:32:33 +0000 (23:32 +0200)]
arm: Make reset position-independent

Some boards, like mx31pdk and tx25, require the beginning of the SPL
code to be position-independent. For these two boards, this is because
they use the i.MX external NAND boot, which starts by executing the
first NAND Flash page from the NFC page buffer. The SPL then needs to
copy itself to its actual link address in order to free the NFC page
buffer and use it to load the non-SPL image from Flash before running
it. This means that the SPL runtime address differs from its link
address between the reset and the initial copy performed by
board_init_f(), so this part of the SPL binary must be
position-independent.

This requirement was broken by commit 41623c9 'arm: move exception
handling out of start.S files', which used an absolute address to branch
to the reset routine. This new commit restores the original behavior,
which just performed a relative branch. This fixes the boot of mx31pdk
and tx25.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
Reported-by: Helmut Raiger <helmut.raiger@hale.at>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: Magnus Lilja <lilja.magnus@gmail.com>
Cc: John Rigby <jcrigby@gmail.com>
Tested-by: Magnus Lilja <lilja.magnus@gmail.com>
10 years agoREADME.clang: build command with clang
Jeroen Hofstee [Wed, 10 Sep 2014 18:08:52 +0000 (20:08 +0200)]
README.clang: build command with clang

Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agoMakefile: default to cc for host compiler
Jeroen Hofstee [Wed, 10 Sep 2014 18:08:51 +0000 (20:08 +0200)]
Makefile: default to cc for host compiler

Since the host compiler might not be gcc but e.g. clang
default to cc/c++ to invoke it.

cc: Masahiro Yamada <yamada.m@jp.panasonic.com>
cc: Tom Rini <trini@ti.com>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agodm: tegra: Enable driver model for serial
Simon Glass [Thu, 4 Sep 2014 22:27:36 +0000 (16:27 -0600)]
dm: tegra: Enable driver model for serial

Use driver model for serial ports.

Since Tegra now uses driver model for serial, adjust the definition of
V_NS16550_CLK so that it is clear that this is only used for SPL.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agotegra: dts: Add serial port details
Simon Glass [Thu, 4 Sep 2014 22:27:35 +0000 (16:27 -0600)]
tegra: dts: Add serial port details

Some Tegra device tree files do not include information about the serial
ports. Add this and also add information about the input clock speed.

The console alias needs to be set up to indicate which port is used for
the console.

Also add a binding file since this is missing.

Series-changes; 5
- Add full serial port nodes from Linux tree (commit fc9d4dbe)
- Use /chosen/stdout-path instead of /aliases/console to specify the console

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agodm: serial: Add driver model support for ns16550
Simon Glass [Thu, 4 Sep 2014 22:27:34 +0000 (16:27 -0600)]
dm: serial: Add driver model support for ns16550

Add driver model support so that ns16550 can support operation both with
and without driver model.

The driver needs a clock frequency so cannot stand alone unfortunately. The
clock frequency must be provided by a separate driver.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agodm: serial: Collect common baud rate code in ns16550
Simon Glass [Thu, 4 Sep 2014 22:27:33 +0000 (16:27 -0600)]
dm: serial: Collect common baud rate code in ns16550

The same sequence is used in several places, so move it into a function.
Note that UART_LCR_BKSE is an alias for UART_LCR_DLAB.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agodm: serial: Move baud rate calculation to ns16550.c
Simon Glass [Thu, 4 Sep 2014 22:27:32 +0000 (16:27 -0600)]
dm: serial: Move baud rate calculation to ns16550.c

Move the function that calculates the baud rate divisor into ns16550.c so
it can be used by that file.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agosandbox: dts: Add a serial console node
Simon Glass [Thu, 4 Sep 2014 22:27:29 +0000 (16:27 -0600)]
sandbox: dts: Add a serial console node

If the sandbox device tree is provided to U-Boot (with the -d flag) then it
will use the device tree version in preference to the built-in device. The
only difference is the colour.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agosandbox: serial: Support a coloured console
Simon Glass [Thu, 4 Sep 2014 22:27:28 +0000 (16:27 -0600)]
sandbox: serial: Support a coloured console

The current sandbox serial driver is a pretty trivial example and does not
have the featues that might be needed for other board serial drivers. To
help provide a better example, add a text colour property to the device
tree for sandbox. This uses platform data, a device tree node, driver
private data and a remove() method.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agosandbox: Convert serial driver to use driver model
Simon Glass [Thu, 4 Sep 2014 22:27:27 +0000 (16:27 -0600)]
sandbox: Convert serial driver to use driver model

Adjust the sandbox serial driver to use the new driver model uclass. The
driver works much as before, but within the new framework.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agodm: Add a uclass for serial devices
Simon Glass [Thu, 4 Sep 2014 22:27:26 +0000 (16:27 -0600)]
dm: Add a uclass for serial devices

Serial devices support simple byte input/output and a few operations to find
out whether data is available. Add a basic uclass for serial devices to be
used by drivers that are converted to driver model.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agodm: Adjust lists_bind_fdt() to return the bound device
Simon Glass [Thu, 4 Sep 2014 22:27:25 +0000 (16:27 -0600)]
dm: Adjust lists_bind_fdt() to return the bound device

Allow the caller to find out the device that was bound in response to this
call.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agodm: fdt: Add a function to look up a chosen node
Simon Glass [Thu, 4 Sep 2014 22:27:24 +0000 (16:27 -0600)]
dm: fdt: Add a function to look up a chosen node

Within /chosen we may have a node which points to another node, similar
to how /aliases works. Add a helper function to do this lookup.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoserial: Set up the 'priv' pointer when creating a serial device
Simon Glass [Thu, 4 Sep 2014 22:27:23 +0000 (16:27 -0600)]
serial: Set up the 'priv' pointer when creating a serial device

The stdio_dev structure has a private pointer for its creator, but it is
not set up by the serial system. Set it to point to the serial device so
that it can be found by code called by stdio.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agotegra: Convert tegra GPIO driver to use driver model
Simon Glass [Wed, 3 Sep 2014 23:37:03 +0000 (17:37 -0600)]
tegra: Convert tegra GPIO driver to use driver model

This is an implementation of GPIOs for Tegra that uses driver model. It has
been tested on trimslice and also using the new iotrace feature.

The implementation uses a top-level GPIO device (which has no actual GPIOS).
Under this all the banks are created as separate GPIO devices.

The GPIOs are named as per the Tegra datasheet/header files: A0..A7, B0..B7,
..., Z0..Z7, AA0..AA7, etc.

Since driver model is not yet available before relocation, or in SPL, a
special function is provided for seaboard's SPL code.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agodm: tegra: Set up a pre-reloc malloc()
Simon Glass [Wed, 3 Sep 2014 23:37:02 +0000 (17:37 -0600)]
dm: tegra: Set up a pre-reloc malloc()

Allocate 1KB so that driver model can operate before relocation.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agodm: Make driver model available before board_init()
Simon Glass [Wed, 3 Sep 2014 23:37:01 +0000 (17:37 -0600)]
dm: Make driver model available before board_init()

For some boards board_init() will change GPIOs, so we need to have driver
model available before then. Adjust the board init to arrange this, but
enable it for driver model only, just to be safe.

This does create additional #ifdef logic, but it is safer than trying to
make a pervasive change which may cause some boards to break.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoSet up stdio earlier when using driver model
Simon Glass [Wed, 3 Sep 2014 23:37:00 +0000 (17:37 -0600)]
Set up stdio earlier when using driver model

Since driver model registers itself with the stdio subsystem, and we
want to avoid delayed registration and other complexity associated with
the current serial console, move the stdio subsystem init earlier when
driver model is used for serial.

This simplifies the implementation. Should there be any problems with
this approach they can be dealt with as boards are converted over to
use driver model for serial.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agodm: Move pre-reloc init earlier to cope with board_early_init_f()
Simon Glass [Wed, 3 Sep 2014 23:36:59 +0000 (17:36 -0600)]
dm: Move pre-reloc init earlier to cope with board_early_init_f()

In order to support GPIO access in board_early_init_f() we must set up
driver model before this function is called. In any case, earlier is
better since driver model is (or will become) a key function for most
init.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-microblaze
Tom Rini [Wed, 10 Sep 2014 10:59:49 +0000 (06:59 -0400)]
Merge branch 'master' of git://denx.de/git/u-boot-microblaze

10 years agomicroblaze: remove #ident directive to fix build error
Masahiro Yamada [Mon, 8 Sep 2014 09:05:26 +0000 (18:05 +0900)]
microblaze: remove #ident directive to fix build error

The microblaze-generic board fails to build at least
with the kernel.org crosstool:
https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.9.0/
x86_64-gcc-4.9.0-nolibc_microblaze-linux.tar.xz

$ make CROSS_COMPILE=microblaze-linux- microblaze-generic_defconfig all
  [ snip ]
  CC      disk/part.o
  CC      disk/part_dos.o
  LD      disk/built-in.o
  CC      drivers/block/systemace.o
{standard input}: Assembler messages:
{standard input}:2495: Error: operation combines symbols in different segments
{standard input}:2496: Error: operation combines symbols in different segments
{standard input}:2499: Error: operation combines symbols in different segments
{standard input}:2500: Error: operation combines symbols in different segments
{standard input}:2505: Error: operation combines symbols in different segments
{standard input}:2506: Error: operation combines symbols in different segments
{standard input}:2515: Error: operation combines symbols in different segments
{standard input}:2516: Error: operation combines symbols in different segments
{standard input}:2519: Error: operation combines symbols in different segments
{standard input}:2520: Error: operation combines symbols in different segments
{standard input}:2529: Error: operation combines symbols in different segments
{standard input}:2530: Error: operation combines symbols in different segments
{standard input}:2533: Error: operation combines symbols in different segments
{standard input}:2534: Error: operation combines symbols in different segments
{standard input}:2539: Error: operation combines symbols in different segments
{standard input}:2540: Error: operation combines symbols in different segments
{standard input}:2549: Error: operation combines symbols in different segments
{standard input}:2550: Error: operation combines symbols in different segments
make[3]: *** [drivers/block/systemace.o] Error 1
make[2]: *** [drivers/block] Error 2
make[1]: *** [drivers] Error 2
make: *** [__build_one_by_one] Error 2

It looks like the cause of this error message is the "#ident" directive.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agoMerge branch 'buildman' of git://git.denx.de/u-boot-x86
Tom Rini [Wed, 10 Sep 2014 00:02:43 +0000 (20:02 -0400)]
Merge branch 'buildman' of git://git.denx.de/u-boot-x86

10 years agoMerge branch 'master' of git://git.denx.de/u-boot-fsl-qoriq
Tom Rini [Wed, 10 Sep 2014 00:01:59 +0000 (20:01 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-fsl-qoriq

10 years agobuildman: fix typos of --dry-run help message
Masahiro Yamada [Thu, 4 Sep 2014 17:23:27 +0000 (02:23 +0900)]
buildman: fix typos of --dry-run help message

try run    => dry run
no nothing => do nothing
"..."      => '...'

The last one is for consistency with the other option helps.

Change-Id: I1d69047d1fae6ef095a18f69f44ee13c448db9b7
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Create parent directories as necessary
Thierry Reding [Tue, 19 Aug 2014 08:22:39 +0000 (10:22 +0200)]
buildman: Create parent directories as necessary

When creating build directories also create parents as necessary. This
fixes a failure when building a hierarchical branch (i.e. foo/bar).

Signed-off-by: Thierry Reding <treding@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Tom Rini <trini@ti.com>
10 years agopatman: make run results better visible
Vadim Bendebury [Thu, 4 Sep 2014 17:45:13 +0000 (10:45 -0700)]
patman: make run results better visible

For an occasional user of patman some failures are not obvious: for
instance when checkpatch reports warnings, the dry run still reports
that the email would be sent. If it is not dry run, the warnings are
shown on the screen, but it is not clear that the email was not sent.

Add some code to report failure to send email explicitly.

Tested by running the script on a patch with style violations,
observed error messages in the script output.

Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Ignore conflicting tags
Simon Glass [Sat, 6 Sep 2014 01:00:23 +0000 (19:00 -0600)]
buildman: Ignore conflicting tags

Tags like Series-version are normally expected to appear once, and with a
unique value. But buildman doesn't actually look at these tags. So ignore
conflicts.

This allows bulidman to build a branch containing multiple patman series.

Reported-by: Steve Rae <srae@broadcom.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Permit branch names with an embedded '/'
Simon Glass [Sat, 6 Sep 2014 01:00:22 +0000 (19:00 -0600)]
buildman: Permit branch names with an embedded '/'

At present buildman naively uses the branch name as part of its directory
path, which causes problems if the name has an embedded '/'.

Replace these with '_' to fix the problem.

Reported-by: Steve Rae <srae@broadcom.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Expand output test to cover directory prefixes
Simon Glass [Sat, 6 Sep 2014 01:00:21 +0000 (19:00 -0600)]
buildman: Expand output test to cover directory prefixes

Now that buildman supports removing the build directory prefix from output,
add a test for it. Also ensure that output directories are removed when the
test completes.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Add additional functional tests
Simon Glass [Sat, 6 Sep 2014 01:00:20 +0000 (19:00 -0600)]
buildman: Add additional functional tests

This adds coverage of core features of the builder, including the
command-line options which affect building.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agopatman: Start with a clean series when needed
Simon Glass [Sat, 6 Sep 2014 01:00:19 +0000 (19:00 -0600)]
patman: Start with a clean series when needed

For reasons that are not well-understood, GetMetaDataForList() can end up
adding to an existing series even when it appears that it should be
starting a new one.

Change from using a default constructor parameter to an explicit one, to
work around this problem.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Provide an internal option to clean the outpur dir
Simon Glass [Sat, 6 Sep 2014 01:00:18 +0000 (19:00 -0600)]
buildman: Provide an internal option to clean the outpur dir

For testing it is useful to clean the output directory before running a
test. This avoids a test interfering with the results of a subsequent
test by leaving data around.

Add this feature as an optional parameter to the control logic.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Correct counting of build failures on retry
Simon Glass [Sat, 6 Sep 2014 01:00:17 +0000 (19:00 -0600)]
buildman: Correct counting of build failures on retry

When a build is to be performed, buildman checks to see if it has already
been done. In most cases it will not bother trying again. However, it was
not reading the return code from the 'done' file, so if the result was a
failure, it would not be counted. This depresses the 'failure' count stats
that buildman prints in this case.

Fix this bug by always reading the return code.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Allow tests to have their own boards
Simon Glass [Sat, 6 Sep 2014 01:00:16 +0000 (19:00 -0600)]
buildman: Allow tests to have their own boards

Rather than reading boards.cfg, which may take time to generate and is not
necessarily suitable for running tests, create our own list of boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Avoid looking at config file or toolchains in tests
Simon Glass [Sat, 6 Sep 2014 01:00:15 +0000 (19:00 -0600)]
buildman: Avoid looking at config file or toolchains in tests

These files may not exist in the environment, or may not be suitable for
testing. Provide our own config file and our own toolchains when running
tests.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Set up bsettings outside the control module
Simon Glass [Sat, 6 Sep 2014 01:00:14 +0000 (19:00 -0600)]
buildman: Set up bsettings outside the control module

Move the bsettings code back to the main buildman.py file, so we can do
something different when testing.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Add a functional test
Simon Glass [Sat, 6 Sep 2014 01:00:13 +0000 (19:00 -0600)]
buildman: Add a functional test

Buildman currently lacks testing in many areas, including its use of git,
make and many command-line flags.

Add a functional test which covers some of these areas. So far it does
a fake 'build' of all boards for the current source tree.

This version reads the real ~/.buildman and boards.cfg files. Future work
will improve this.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agopatman: Provide a way to intercept commands for testing
Simon Glass [Sat, 6 Sep 2014 01:00:12 +0000 (19:00 -0600)]
patman: Provide a way to intercept commands for testing

Add a test point for the command module. This allows tests to emulate
the execution of commands. This provides more control (since we can make
the fake 'commands' do whatever we like), makes it faster to write tests
since we don't need to set up as much environment, and speeds up test
execution.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Move full help code into the control module
Simon Glass [Sat, 6 Sep 2014 01:00:11 +0000 (19:00 -0600)]
buildman: Move full help code into the control module

There is no good reason to keep this code separate. Move it into control.py
so it is easier to test.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Move the command line code into its own file
Simon Glass [Sat, 6 Sep 2014 01:00:10 +0000 (19:00 -0600)]
buildman: Move the command line code into its own file

We want to be able to issue parser commands from within buildman for test
purposes. Move the parser code into its own file so we don't end up needing
the buildman and test modules to reference each other.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agopatman: RunPipe() should not pipe stdout/stderr unless asked
Simon Glass [Sat, 6 Sep 2014 01:00:09 +0000 (19:00 -0600)]
patman: RunPipe() should not pipe stdout/stderr unless asked

RunPipe() currently pipes the output of stdout and stderr to a pty, but
this is not the intended behaviour. Fix it.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Enhance basic test to check summary output
Simon Glass [Sat, 6 Sep 2014 01:00:08 +0000 (19:00 -0600)]
buildman: Enhance basic test to check summary output

Adjust the basic test so that it checks all console output. This will help
to ensure that the builder is behaving correctly with printing summary
information.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Send builder output through a function for testing
Simon Glass [Sat, 6 Sep 2014 01:00:07 +0000 (19:00 -0600)]
buildman: Send builder output through a function for testing

To allow us to verify the builder's console output, send it through a
function which can collect it when running in test mode.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agopatman: Add a way of recording terminal output for testing
Simon Glass [Sat, 6 Sep 2014 01:00:06 +0000 (19:00 -0600)]
patman: Add a way of recording terminal output for testing

When running unit tests we don't want output to go to the terminal.
Provide a way of collecting it so that it can be examined by test code
later.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoclang: workaround for generated constants
Jeroen Hofstee [Wed, 30 Jul 2014 19:54:54 +0000 (21:54 +0200)]
clang: workaround for generated constants

KBuild abuses the asm statement to write to a file and
clang chokes about these invalid asm statements. Hack it
even more by fooling this is actual valid asm code.

cc: Masahiro Yamada <yamada.m@jp.panasonic.com>
cc: Tom Rini <trini@ti.com>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agoeabi_compat: add __aeabi_memcpy __aeabi_memset
Jeroen Hofstee [Wed, 30 Jul 2014 19:54:53 +0000 (21:54 +0200)]
eabi_compat: add __aeabi_memcpy __aeabi_memset

cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agoARM: make gd a function for clang
Jeroen Hofstee [Wed, 30 Jul 2014 19:54:52 +0000 (21:54 +0200)]
ARM: make gd a function for clang

"clang does not support global register variables; this is
unlikely to be implemented soon because it requires additional
LLVM backend support" [1]

Workaround it by obtaining the value of gd/r9 by an inline
asm routine. Note there is no set routine added for ARM at the
moment, since most if not all updates of gd from c are actually
not needed for ARM.

[1] http://clang.llvm.org/docs/UsersManual.html

cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agocc-option: also detect unsupported warnings options
Jeroen Hofstee [Wed, 30 Jul 2014 19:54:51 +0000 (21:54 +0200)]
cc-option: also detect unsupported warnings options

By default clang will echo a warning if a warning option is
unknown. Turning warnings into errors when polling for options
also catches such cases and prevents passing arguments to the
compiler which cause warnings.

cc: Masahiro Yamada <yamada.m@jp.panasonic.com>
cc: Tom Rini <trini@ti.com>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agoARM: SPL: do not set gd again
Jeroen Hofstee [Wed, 30 Jul 2014 19:54:50 +0000 (21:54 +0200)]
ARM: SPL: do not set gd again

Just before calling board_init_f, crt0.S has already
reserved space for the initial gd on the stack. There
should be no need to allocate it again.

cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agoboard_r: ARM[64] do not set gd again
Jeroen Hofstee [Wed, 30 Jul 2014 19:54:49 +0000 (21:54 +0200)]
board_r: ARM[64] do not set gd again

For ARM / ARM64 the relocation routines already updated
gd to the new value. Don't set it again. This allows
compilation with clang as it cannot update gd directly.

cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
10 years agomicroblaze: Fix printf size_t format related warnings (again...)
Vasili Galka [Tue, 26 Aug 2014 10:45:34 +0000 (13:45 +0300)]
microblaze: Fix printf size_t format related warnings (again...)

The basic idea: Define size_t using the __SIZE_TYPE__ compiler-defined
type.

For detailed explanation see similar patch for the nios2 arch:
"nios2: Fix printf size_t format related warnings (again...)"
(sha1: 00a2517fcb5159ed016b25130184638b1dbf2f02)

Signed-off-by: Vasili Galka <vvv444@gmail.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agoMerge branch 'u-boot-sunxi/master' into 'u-boot-arm/master'
Albert ARIBAUD [Tue, 9 Sep 2014 07:19:10 +0000 (09:19 +0200)]
Merge branch 'u-boot-sunxi/master' into 'u-boot-arm/master'

10 years agoMerge branch 'u-boot-samsung/master' into 'u-boot-arm/master'
Albert ARIBAUD [Mon, 8 Sep 2014 22:21:24 +0000 (00:21 +0200)]
Merge branch 'u-boot-samsung/master' into 'u-boot-arm/master'

10 years agols102xa: dcu: Add platform support for DCU on LS1021ATWR board
Wang Huan [Fri, 5 Sep 2014 05:52:50 +0000 (13:52 +0800)]
ls102xa: dcu: Add platform support for DCU on LS1021ATWR board

This patch adds the TWR_LCD_RGB card/HDMI options and the common
configuration for DCU on LS1021ATWR board.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
10 years agovideo: dcu: Add Sii9022A HDMI Transmitter support
Wang Huan [Fri, 5 Sep 2014 05:52:49 +0000 (13:52 +0800)]
video: dcu: Add Sii9022A HDMI Transmitter support

On LS1021ATWR, Silicon's Sii9022A HDMI Transmitter
is used. This patch adds the common setting for this
chip.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
10 years agovideo: dcu: Add DCU driver support
Wang Huan [Fri, 5 Sep 2014 05:52:48 +0000 (13:52 +0800)]
video: dcu: Add DCU driver support

This patch is to add DCU driver support. DCU also named
2D-ACE(Two Dimensional Animation and Compositing Engine)
is a system master that fetches graphics stored in internal
or external memory and displays them on a TFT LCD panel.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
10 years agoserial: lpuart: add 32-bit registers lpuart support
Jingchang Lu [Fri, 5 Sep 2014 05:52:47 +0000 (13:52 +0800)]
serial: lpuart: add 32-bit registers lpuart support

On vybrid, lpuart's registers are 8-bit. On LS102xA, lpuart's registers
are 32-bit. This patch adds the support for 32-bit registers on
LS102xA.

Signed-off-by: Jingchang Lu <jingchang.lu@freescale.com>
Signed-off-by: Yuan Yao <yao.yuan@freescale.com>
10 years agonet: tsec: Remove tx snooping support from LS1
Claudiu Manoil [Fri, 5 Sep 2014 05:52:46 +0000 (13:52 +0800)]
net: tsec: Remove tx snooping support from LS1

Remove the DMCTRL Tx snooping bits (TDSEN and TBDSEN) as a
workaround for LS1.  It has been observed that currently
the Tx stops functioning after a fair amount of Tx traffic
with these settings on.  These bits are sticky and once set
they cannot be reset from Linux, for instance.

Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
10 years agoarm: ls102xa: Add basic support for LS1021ATWR board
Wang Huan [Fri, 5 Sep 2014 05:52:45 +0000 (13:52 +0800)]
arm: ls102xa: Add basic support for LS1021ATWR board

LS102xA is an ARMv7 implementation. This patch is to add
basic support for LS1021ATWR board.
 One DDR controller
 DUART1 is used as the console

For the detail board information, please refer to README.

Signed-off-by: Chen Lu <chen.lu@freescale.com>
Signed-off-by: Yuan Yao <yao.yuan@freescale.com>
Signed-off-by: Alison Wang <alison.wang@freescale.com>
10 years agoarm: ls102xa: Add basic support for LS1021AQDS board
Wang Huan [Fri, 5 Sep 2014 05:52:44 +0000 (13:52 +0800)]
arm: ls102xa: Add basic support for LS1021AQDS board

LS102xA is an ARMv7 implementation. This patch is to add
basic support for LS1021AQDS board.
 One DDR controller
 DUART1 is used as the console

For the detail board information, please refer to README.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
Signed-off-by: Jason Jin <jason.jin@freescale.com>
Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Yuan Yao <yao.yuan@freescale.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
10 years agodriver/ddr/fsl: Add support of overriding chip select write leveling
York Sun [Fri, 5 Sep 2014 05:52:43 +0000 (13:52 +0800)]
driver/ddr/fsl: Add support of overriding chip select write leveling

JEDEC spec allows DRAM vendors to use prime DQ for write leveling. This
is not an issue unless some DQ pins are not connected. If a platform uses
regular DIMMs but with reduced DDR ECC pins, the prime DQ may end up on
those floating pins for the second rank. The workaround is to use a known
good chip select for this purpose.

Signed-off-by: York Sun <yorksun@freescale.com>
10 years agodriver/ddr/freescale: Fix DDR3 driver for ARM
York Sun [Fri, 5 Sep 2014 05:52:42 +0000 (13:52 +0800)]
driver/ddr/freescale: Fix DDR3 driver for ARM

Reading DDR register should use ddr_in32() for proper endianess.
This patch fixes incorrect waiting time for ARM platforms.

Signed-off-by: York Sun <yorksun@freescale.com>
10 years agodriver/ddr/freescale: Add support of accumulate ECC
York Sun [Fri, 5 Sep 2014 05:52:41 +0000 (13:52 +0800)]
driver/ddr/freescale: Add support of accumulate ECC

If less than 8 ECC pins are used for DDR data bus width smaller than 64
bits, the 8-bit ECC code will be transmitted/received across several beats,
and it will be used to check 64-bits of data once 8-bits of ECC are
accumulated.

Signed-off-by: York Sun <yorksun@freescale.com>
10 years agols102xa: esdhc: Add esdhc support for LS102xA
Wang Huan [Fri, 5 Sep 2014 05:52:40 +0000 (13:52 +0800)]
ls102xa: esdhc: Add esdhc support for LS102xA

For LS1, esdhc is big-endian IP. Accessing the registers
should be in big-endian mode. So we use esdhc_read32()
to read Host controller capabilities register for LS1.

For LS1, when using CMD12, cmdtype need to be set to
ABORT, otherwise, next read command will hang.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
10 years agoesdhc: Add CONFIG_SYS_FSL_ESDHC_LE and CONFIG_SYS_FSL_ESDHC_BE macros
Wang Huan [Fri, 5 Sep 2014 05:52:39 +0000 (13:52 +0800)]
esdhc: Add CONFIG_SYS_FSL_ESDHC_LE and CONFIG_SYS_FSL_ESDHC_BE macros

For LS102xA, the processor is in little-endian mode, while esdhc IP is
in big-endian mode. CONFIG_SYS_FSL_ESDHC_LE and CONFIG_SYS_FSL_ESDHC_BE
are added. So accessing ESDHC registers can be determined by ESDHC IP's
endian mode.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
10 years agols102xa: etsec: Add etsec support for LS102xA
Alison Wang [Fri, 5 Sep 2014 05:52:38 +0000 (13:52 +0800)]
ls102xa: etsec: Add etsec support for LS102xA

This patch is to add etsec support for LS102xA. First, Little-endian
descriptor mode should be enabled. So RxBDs and TxBDs are interpreted
with little-endian byte ordering. Second, TSEC_SIZE and TSEC_MDIO_OFFSET
are different from PowerPC, redefine them for LS1021xA.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
10 years agonet: mdio: Use mb() to be compatible for both ARM and PowerPC
Alison Wang [Fri, 5 Sep 2014 05:52:37 +0000 (13:52 +0800)]
net: mdio: Use mb() to be compatible for both ARM and PowerPC

Use mb() instead of sync assembly instruction to be
compatible for both ARM and PowerPC.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
10 years agonet: Merge asm/fsl_enet.h into fsl_mdio.h
Claudiu Manoil [Fri, 5 Sep 2014 05:52:36 +0000 (13:52 +0800)]
net: Merge asm/fsl_enet.h into fsl_mdio.h

fsl_enet.h defines the mapping of the usual MII management
registers, which are included in the MDIO register block
common to Freescale ethernet controllers. So it shouldn't
depend on the CPU architecture but it should be actually
part of the arch independent fsl_mdio.h.

To remove the arch dependency, merge the content of
asm/fsl_enet.h into fsl_mdio.h.
Some files (like fm_eth.h) were simply including fsl_enet.h
only for phy.h. These were updated to include phy.h instead.

Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
10 years agols102xa: i2c: Add i2c support for LS102xA
Wang Huan [Fri, 5 Sep 2014 05:52:35 +0000 (13:52 +0800)]
ls102xa: i2c: Add i2c support for LS102xA

The existing i.MX's I2C driver mxc_i2c.c is compatible
with the controller of LS102xA. As I2C's registers
are 8-bit on LS102xA, I2C_QUIRK_REG is enabled to
use 8-bit driver.

This patch is to add I2C 1,2,3 support for LS102xA.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
10 years agoarm: ls102xa: Add Freescale LS102xA SoC support
Wang Huan [Fri, 5 Sep 2014 05:52:34 +0000 (13:52 +0800)]
arm: ls102xa: Add Freescale LS102xA SoC support

The QorIQ LS1 family is built on Layerscape architecture,
the industry's first software-aware, core-agnostic networking
architecture to offer unprecedented efficiency and scale.

Freescale LS102xA is a set of SoCs combines two ARM
Cortex-A7 cores that have been optimized for high
reliability and pack the highest level of integration
available for sub-3 W embedded communications processors
with Layerscape architecture and with a comprehensive
enablement model focused on ease of programmability.

Signed-off-by: Alison Wang <alison.wang@freescale.com>
Signed-off-by: Jason Jin <jason.jin@freescale.com>
Signed-off-by: Jingchang Lu <jingchang.lu@freescale.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
10 years agopatman: Fix detection of git version
Simon Glass [Thu, 28 Aug 2014 15:43:45 +0000 (09:43 -0600)]
patman: Fix detection of git version

A missing 'global' declaration means that this feature does not currently
work. Fix it.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Separate out display of warnings and errors
Simon Glass [Thu, 28 Aug 2014 15:43:44 +0000 (09:43 -0600)]
buildman: Separate out display of warnings and errors

Some boards unfortunately build with warnings and it is useful to be able
to easily distinguish the warnings from the errors.

Use a simple pattern match to categorise gcc output into warnings and
errors, and display each separately. New warnings are shown in magenta (with
a w+ prefix) and fixed warnings are shown in yellow with a w- prefix.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Add an option to show which boards caused which errors
Simon Glass [Thu, 28 Aug 2014 15:43:43 +0000 (09:43 -0600)]
buildman: Add an option to show which boards caused which errors

Add a -l option to display a list of offending boards against each
error/warning line. The information will be shown in brackets as below:

02: wip
   sandbox: +   sandbox
       arm: +   seaboard
+(sandbox) arch/sandbox/cpu/cpu.c: In function 'timer_get_us':
+(sandbox) arch/sandbox/cpu/cpu.c:40:9: warning: unused variable 'i' [-Wunused-variable]
+(seaboard) board/nvidia/seaboard/seaboard.c: In function 'pin_mux_mmc':
+(seaboard) board/nvidia/seaboard/seaboard.c:36:9: warning: unused variable 'fred' [-Wunused-variable]
+(seaboard)      int fred;
+(seaboard)          ^

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Remove the directory prefix from each error line
Simon Glass [Thu, 28 Aug 2014 15:43:42 +0000 (09:43 -0600)]
buildman: Remove the directory prefix from each error line

The full path is long and also includes buildman private directories.
Clean this up, so that only a relative U-Boot path is shown.

This will change warnings like these:

/home/sjg/c/src/third_party/u-boot/buildman5/.bm-work/00/arch/sandbox/cpu/cpu.c: In function 'timer_get_us':
/home/sjg/c/src/third_party/u-boot/buildman5/.bm-work/00/arch/sandbox/cpu/cpu.c:40:9: warning: unused variable 'i' [-Wunused-variable]

/home/sjg/c/src/third_party/u-boot/files/arch/sandbox/cpu/cpu.c: In function 'timer_get_us':
/home/sjg/c/src/third_party/u-boot/files/arch/sandbox/cpu/cpu.c:40:9: warning: unused variable 'i' [-Wunused-variable]

to:

arch/sandbox/cpu/cpu.c: In function 'timer_get_us':
arch/sandbox/cpu/cpu.c:40:9: warning: unused variable 'i' [-Wunused-variable]

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Implement an option to exclude boards from the build
Simon Glass [Thu, 28 Aug 2014 15:43:41 +0000 (09:43 -0600)]
buildman: Implement an option to exclude boards from the build

Some boards are known to be broken and it is convenient to be able to
exclude them from the build.

Add an --exclude option to specific boards to exclude. This uses the
same matching rules as the normal 'include' arguments, and is a comma-
separated list of regular expressions.

Suggested-by: York Sun <yorksun@freescale.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Allow make-flags variables to include '-' and '_'
Simon Glass [Thu, 28 Aug 2014 15:43:40 +0000 (09:43 -0600)]
buildman: Allow make-flags variables to include '-' and '_'

These characters are commonly used in variables, so permit them. Also
document the permitted characters.

Reported-by: Tom Rini <trini@ti.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agobuildman: Set the return code to indicate build result
Simon Glass [Thu, 28 Aug 2014 15:43:39 +0000 (09:43 -0600)]
buildman: Set the return code to indicate build result

When buildman finds errors/warnings when building, set the return code to
indicate this.

Suggested-by: York Sun <yorksun@freescale.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agopatman: Avoid changing the order of tags
Simon Glass [Thu, 28 Aug 2014 15:43:38 +0000 (09:43 -0600)]
patman: Avoid changing the order of tags

patman collects tags that it sees in the commit and places them nicely
sorted at the end of the patch. However, this is not really necessary and
in fact is apparently not desirable.

Suggested-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
10 years agopatman: Use --no-pager' to stop git from forking a pager
Simon Glass [Thu, 28 Aug 2014 15:43:37 +0000 (09:43 -0600)]
patman: Use --no-pager' to stop git from forking a pager

In a headless environment the pager can apparently hang. We don't want a
pager anyway so let's request that none be used.

Reported-by: Tom Rini <trini@ti.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agopatman: Remove the -a option
Simon Glass [Thu, 28 Aug 2014 15:43:36 +0000 (09:43 -0600)]
patman: Remove the -a option

It seems that this is no longer needed, since checkpatch.pl will catch
whitespace problems in patches. Also the option is not widely used, so
it seems safe to just remove it.

Suggested-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agopatman: Correct unit tests to run correctly
Simon Glass [Thu, 28 Aug 2014 15:43:35 +0000 (09:43 -0600)]
patman: Correct unit tests to run correctly

It seems that doctest behaves differently now, and some of the unit tests
do not run. Adjust the tests to work correctly.

 ./tools/patman/patman --test
<unittest.result.TestResult run=10 errors=0 failures=0>

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agopatman: Fix indentation in terminal.py
Simon Glass [Thu, 28 Aug 2014 15:43:34 +0000 (09:43 -0600)]
patman: Fix indentation in terminal.py

This code came from a different project with 2-character indentation. Fix
it for U-Boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
10 years agoCONFIGS: peach-pit: Enable display for peach_pit board
Ajay Kumar [Fri, 5 Sep 2014 11:23:38 +0000 (16:53 +0530)]
CONFIGS: peach-pit: Enable display for peach_pit board

Enable drivers for FIMD, DP and parade bridge chip.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
10 years agoARM: exynos: peach_pit: Add DT nodes for fimd and parade bridge chip
Ajay Kumar [Fri, 5 Sep 2014 11:23:37 +0000 (16:53 +0530)]
ARM: exynos: peach_pit: Add DT nodes for fimd and parade bridge chip

This patch adds DT properties for fimd and the parade bridge chip
present on peach_pit. The panel supports 1366x768 resolution.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
10 years agoexynos5420: add callbacks needed for exynos_fb driver
Ajay Kumar [Fri, 5 Sep 2014 11:23:36 +0000 (16:53 +0530)]
exynos5420: add callbacks needed for exynos_fb driver

Add initialization code for peach_pit panel, parade bridge chip,
and backlight.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
10 years agoARM: exynos: Add missing declaration for gpio_direction_input
Ajay Kumar [Fri, 5 Sep 2014 11:23:35 +0000 (16:53 +0530)]
ARM: exynos: Add missing declaration for gpio_direction_input

This patch adds missing declaration for gpio_direction_input
function, thereby helps in resolving compilation warnings.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
10 years agovideo: Add driver for Parade PS8625 dP to LVDS bridge
Vadim Bendebury [Fri, 5 Sep 2014 11:23:34 +0000 (16:53 +0530)]
video: Add driver for Parade PS8625 dP to LVDS bridge

The initialization table comes from the "Illustration of I2C command
for initialing PS8625" document supplied by Parade.

Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
10 years agovideo: exynos_fimd: Add framework to disable FIMD sysmmu
Ajay Kumar [Fri, 5 Sep 2014 11:23:33 +0000 (16:53 +0530)]
video: exynos_fimd: Add framework to disable FIMD sysmmu

On Exynos5420 and newer versions, the FIMD sysmmus are in
"on state" by default.
We have to disable them in order to make FIMD DMA work.
This patch adds the required framework to exynos_fimd driver,
and disables FIMD sysmmu on Exynos5420.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
10 years agoarm: exynos: Add get_lcd_clk and set_lcd_clk callbacks for Exynos5420
Ajay Kumar [Fri, 5 Sep 2014 11:23:32 +0000 (16:53 +0530)]
arm: exynos: Add get_lcd_clk and set_lcd_clk callbacks for Exynos5420

Add get_lcd_clk and set_lcd_clk callbacks for Exynos5420 needed by
exynos video driver.
Also, configure ACLK_400_DISP1 as the parent for MUX_ACLK_400_DISP1_SUB_SEL.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
10 years agoarm: exynos: Add RPLL for Exynos5420
Ajay Kumar [Fri, 5 Sep 2014 11:23:31 +0000 (16:53 +0530)]
arm: exynos: Add RPLL for Exynos5420

RPLL is needed to drive the LCD panel on Exynos5420 based boards.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>