platform/kernel/u-boot.git
8 years agotools: fix define2mk.sed to not add quotes around negative integers
Masahiro Yamada [Sat, 11 Jun 2016 09:44:10 +0000 (18:44 +0900)]
tools: fix define2mk.sed to not add quotes around negative integers

The sed script, tools/scripts/define2mk.sed, converts config defines
from C headers into include/autoconf.mk for the use in Makefiles.

I found the tool adds quotes around negative integer values.

For example, at the point of the v2016.07-rc1 tag,
include/configs/microblaze-generic.h defines
  #define CONFIG_BOOTDELAY         -1     /* -1 disables auto-boot */

Because it is an integer option, it should be converted to:
  CONFIG_BOOTDELAY=-1

But, the script actually converts it to:
  CONFIG_BOOTDELAY="-1"

This is a fatal problem for the tools/moveconfig.py because it parses
include/autoconf.mk for the config defines from the board headers.
CONFIG_BOOTDELAY="-1" is considered as a string type option and it
is dropped due to the type mismatch from the entry in Kconfig.

This commit fixes the script so that the tools/moveconfig.py can
correctly convert integer options with a negative value.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agotools: moveconfig: Add a new --git-ref option
Joe Hershberger [Fri, 10 Jun 2016 19:53:32 +0000 (14:53 -0500)]
tools: moveconfig: Add a new --git-ref option

This option allows the 'make autoconf.mk' step to run against a former
repo state, while the savedefconfig step runs against the current repo
state. This is convenient for the case where something in the Kconfig
has changed such that the defconfig is no longer complete with the new
Kconfigs. This feature allows the .config to be built assuming those old
Kconfigs, but then savedefconfig based on the new state of the Kconfigs.

If in doubt, always specify this switch. It will always do the right
thing even if not required, but if it was required and you don't use it,
the moved configs will be incorrect. When not using this switch, you
must very carefully evaluate that all moved configs are correct.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Reviewed-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agotools: moveconfig: New color used for changed defconfig
Joe Hershberger [Fri, 10 Jun 2016 19:53:30 +0000 (14:53 -0500)]
tools: moveconfig: New color used for changed defconfig

The old color blends in with similar messages and makes them not stand
out.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Reviewed-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agotools: moveconfig: Fix another typo
Joe Hershberger [Fri, 10 Jun 2016 19:53:29 +0000 (14:53 -0500)]
tools: moveconfig: Fix another typo

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Reviewed-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agotools: moveconfig: make Slot.poll() more readable with helper methods
Masahiro Yamada [Wed, 8 Jun 2016 02:47:37 +0000 (11:47 +0900)]
tools: moveconfig: make Slot.poll() more readable with helper methods

The Slot.poll() method is already complicated and a new feature
we are going to add will make it more difficult to understand
the execution flow.

Refactor it with helper methods, .handle_error(), .do_defconfig(),
.do_autoconf(), .do_savedefconfig, and .update_defconfig().

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agotools: moveconfig: allow to run without any CONFIG specified
Masahiro Yamada [Thu, 19 May 2016 06:52:09 +0000 (15:52 +0900)]
tools: moveconfig: allow to run without any CONFIG specified

I found "tools/moveconfig -s" might be useful for defconfig re-sync.
I could optimize it for re-sync if I wanted, but I do not want to
make the code complex for this feature.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: add --force-sync option
Masahiro Yamada [Thu, 19 May 2016 06:52:08 +0000 (15:52 +0900)]
tools: moveconfig: add --force-sync option

Now, this tools invokes "make savedefconfig" only when it needs to
do so, but there might be cases where a user wants the tool to do
savedefconfig forcibly, for example, some defconfigs were already
out of sync and the user wants to fix it as well.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: report when defconfig is updated
Masahiro Yamada [Thu, 19 May 2016 06:52:07 +0000 (15:52 +0900)]
tools: moveconfig: report when defconfig is updated

There are various factors that determine if the given defconfig is
updated, and it is probably what users are more interested in.

Show the log when the defconfig is updated.  Also, copy the file
only when the file content was really updated to avoid changing
the time stamp needlessly.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: report when CONFIGs are removed by savedefconfig
Masahiro Yamada [Thu, 19 May 2016 06:52:06 +0000 (15:52 +0900)]
tools: moveconfig: report when CONFIGs are removed by savedefconfig

This is a rare case, but there is still possibility that some CONFIG
is moved to the .config, but it is removed by "make savedefconfig".
(For example, it happens when the specified CONFIG has no prompt in
the Kconfig entry, i.e. it is not user-configurable.)

It might be an unexpected case.  So, display the log in this case
(in yellow color to gain user's attention if --color option is given).

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: display log when savedefconfig occurs
Masahiro Yamada [Thu, 19 May 2016 06:52:05 +0000 (15:52 +0900)]
tools: moveconfig: display log when savedefconfig occurs

Now, "make savedefconfig" does not always happen.  Display the log
when it happens.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: skip savedefconfig if .config was not updated
Masahiro Yamada [Thu, 19 May 2016 06:52:04 +0000 (15:52 +0900)]
tools: moveconfig: skip savedefconfig if .config was not updated

If no CONFIG option is moved to the .config, no need to sync the
defconfig file.  This accelerates the processing by skipping
needless "make savedefconfig".

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: refactor code to go back to idle state
Masahiro Yamada [Thu, 19 May 2016 06:52:03 +0000 (15:52 +0900)]
tools: moveconfig: refactor code to go back to idle state

Move similar code to finish() function.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: display log atomically in more readable format
Masahiro Yamada [Thu, 19 May 2016 06:52:02 +0000 (15:52 +0900)]
tools: moveconfig: display log atomically in more readable format

Before this commit, the log was displayed in the format:

<defconfig_name>   : <action1>
<defconfig_name>   : <action2>
<defconfig_name>   : <action3>

When we move multiple CONFIGs at the same time, we see as many
<defconfig_name> strings as actions for every defconfig, which is
redundant information.

Moreover, since normal log and error log are displayed separately,
Messages from different threads could be mixed, like this:

<foo>              : <action1>
<foo>              : <action2>
<bar>              : <action1>
<bar>              : <action2>
<foo>              : <error_log>

This commit makes sure to call "print" once a defconfig, which
enables atomic logging for each defconfig.  It also makes it
possible to refactor the log format as follows:

<foo_defconfig>
    <action1>
    <action2>
    <error_log>

<bar_defconfig>
    <action1>
    <action2>

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: move log output code out of Kconfig Parser class
Masahiro Yamada [Thu, 19 May 2016 06:52:01 +0000 (15:52 +0900)]
tools: moveconfig: move log output code out of Kconfig Parser class

This will help further improvement/clean-up.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: compute file paths just once
Masahiro Yamada [Thu, 19 May 2016 06:52:00 +0000 (15:52 +0900)]
tools: moveconfig: compute file paths just once

The paths to .config, include/autoconf.mk, include/config/auto.conf
are not changed during the defconfig walk.  Compute them only once
when a new class instance is created.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: allow to give CONFIG names as argument directly
Masahiro Yamada [Thu, 19 May 2016 06:51:58 +0000 (15:51 +0900)]
tools: moveconfig: allow to give CONFIG names as argument directly

We still pass the input file with CONFIG name, type, default value
in each line, but the last two fields are just ignored by the tool.
So, let's deprecate the input file and allow users to give CONFIG
names directly from the command line.  The types and default values
are automatically detected and handled nicely by the tool.

Going forward, we can use this tool more easily like:

  tools/moveconfig.py CONFIG_FOO CONFIG_BAR

Update the documentation and fix some typos I noticed while I was
working on.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: drop code for handling type and default value
Masahiro Yamada [Thu, 19 May 2016 06:51:57 +0000 (15:51 +0900)]
tools: moveconfig: drop code for handling type and default value

Now types and defalut values given by the input file are just
ignored.  Delete unnecessary code.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: do not rely on type and default value given by users
Masahiro Yamada [Thu, 19 May 2016 06:51:56 +0000 (15:51 +0900)]
tools: moveconfig: do not rely on type and default value given by users

Commit 96464badc794 ("moveconfig: Always run savedefconfig on the
moved config") changed the work flow of this tool a lot from the
original intention when this tool was designed first.

Since then, before running this tool, users must edit the Kconfig to
add the menu entries for the configs they are moving.  It means users
had already specified the type and the default value for each CONFIG
via its Kconfig entry.  Nevertheless, users are still required to
dictate the same type and the default value in the input file.  This
is tedious to use.  So, my idea here is to deprecate the latter.

Before moving forward with it, there is one issue worth mentioning;
since the savedefconfig re-sync was introduced, this tool has not
been able to move bool options with "default y".  Joe sent a patch
to solve this problem about a year ago, but it was not applied for
some reasons.  Now, he came back with an updated patch, so this
problem will be fixed soon.

For other use cases, I see no reason to require redundant dictation
in the input file.  Instead, the tool can know the types and default
values by parsing the .config file.

This commit changes the tool to use the CONFIG names, but ignore the
types and default values given by the input file.

This commit also fixes one bug.  Prior to this commit, it could not
move an integer-typed CONFIG with value 1.

For example, assume we are moving CONFIG_CONS_INDEX.  Please note
this is an integer type option.

Many board headers define this CONFIG as 1.

  #define CONFIG_CONS_INDEX    1

It will be converted to

  CONFIG_CONS_INDEX=y

and moved to include/autoconf.mk, by the tools/scripts/define2mk.sed.
It will cause "make savedefconfig" to fail due to the type conflict.

This commit takes care of it by detecting the type and converting the
CONFIG value correctly.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: increment number of processed files monotonically
Masahiro Yamada [Thu, 19 May 2016 06:51:55 +0000 (15:51 +0900)]
tools: moveconfig: increment number of processed files monotonically

Currently, the progress " * defconfigs out of 1133" does not increase
monotonically.

Moreover, the number of processed defconfigs does not match the total
number of defconfigs when this tool finishes, like:

 1132 defconfigs out of 1133
Clean up headers? [y/n]:

It looks like the task was not completed, and some users might feel
upset about it.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: exit with error message for not clean directory
Masahiro Yamada [Thu, 19 May 2016 06:51:54 +0000 (15:51 +0900)]
tools: moveconfig: exit with error message for not clean directory

When the source tree is not clean, this tool raises an exception
with a message like follows:

Traceback (most recent call last):
  File "tools/moveconfig.py", line 939, in <module>
    main()
  File "tools/moveconfig.py", line 934, in main
    move_config(config_attrs, options)
  File "tools/moveconfig.py", line 808, in move_config
    while not slots.available():
  File "tools/moveconfig.py", line 733, in available
    if slot.poll():
  File "tools/moveconfig.py", line 645, in poll
    self.parser.update_dotconfig(self.defconfig)
  File "tools/moveconfig.py", line 503, in update_dotconfig
    with open(autoconf_path) as f:
IOError: [Errno 2] No such file or directory: '/tmp/tmpDtzCgl/include/autoconf.mk'

This does not explain what is wrong.  Show an appropriate error
message "source tree is not clean, please run 'make mrproper'"
in such a situation.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: check compilers before starting defconfig walk
Masahiro Yamada [Thu, 19 May 2016 06:51:53 +0000 (15:51 +0900)]
tools: moveconfig: check compilers before starting defconfig walk

Since commit 25400090b1e2 ("moveconfig: Print a message for
missing compiler"), this tool parses an error message every time an
error occurs during the process in order to detect missing compiler.

Instead of that, we can look for compilers in the PATH environment
only once before starting the defconfig walk.  If a desired compiler
is missing, "make include/config/auto.conf" will apparently fail for
that architecture.  So, the tool can just skip those board, showing
"Compiler is missing.  Do nothing.".

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: check directory location before compilers
Masahiro Yamada [Thu, 19 May 2016 06:51:52 +0000 (15:51 +0900)]
tools: moveconfig: check directory location before compilers

We must ensure this tool is run from the top of source directory
before calling update_cross_compile().  Otherwise, the following
exception is thrown:

Traceback (most recent call last):
  File "./moveconfig.py", line 918, in <module>
    main()
  File "./moveconfig.py", line 908, in main
    update_cross_compile()
  File "./moveconfig.py", line 292, in update_cross_compile
    for arch in os.listdir('arch'):
OSError: [Errno 2] No such file or directory: 'arch'

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: remove redundant else: after sys.exit()
Masahiro Yamada [Thu, 19 May 2016 06:51:51 +0000 (15:51 +0900)]
tools: moveconfig: remove redundant else: after sys.exit()

Nesting by "else:" is not generally useful after such statements
as return, break, sys.exit(), etc.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: rename update_defconfig() to update_dotconfig()
Masahiro Yamada [Thu, 19 May 2016 06:51:50 +0000 (15:51 +0900)]
tools: moveconfig: rename update_defconfig() to update_dotconfig()

Commit 96464badc794 ("moveconfig: Always run savedefconfig on the
moved config") changed how defconfig files were updated.

Since then, the function update_defconfig() does not modify defconfig
files at all (instead, they are updated by "make savedefconfig"), so
update_dotconfig() is a better fit for this function.  Also, update
the comment block to match the actual behavior.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agotools: moveconfig: fix --dry-run option
Masahiro Yamada [Thu, 19 May 2016 06:51:49 +0000 (15:51 +0900)]
tools: moveconfig: fix --dry-run option

Since commit 96464badc794 ("moveconfig: Always run savedefconfig on
the moved config"), --dry-run option is broken.

The --dry-run option prevents the .config from being modified,
but defconfig files might be updated by "make savedefconfig"
regardless of the --dry-run option.

Move the "if not self.options.dry_run" conditional to the correct
place.

Fixes 96464badc794 ("moveconfig: Always run savedefconfig on the moved config")
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
8 years agosiemens,am33x: add draco etamin board
Heiko Schocher [Tue, 7 Jun 2016 06:55:45 +0000 (08:55 +0200)]
siemens,am33x: add draco etamin board

In the draco CPU board family, etamin is a new variant
with bigger flash and more RAM. Due to new flash that
uses larger pages (4K) some changes are necessary because
it impacts the MTD partition layout and the ubi mount
parameters.

Signed-off-by: Samuel Egli <samuel.egli@siemens.com>
Signed-off-by: Heiko Schocher <hs@denx.de>
[trini: Move BOOTDELAY into defconfig, just always be 3 now]
Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agodfu, nand, ubi: fix erasing after write finish
Heiko Schocher [Tue, 7 Jun 2016 06:55:44 +0000 (08:55 +0200)]
dfu, nand, ubi: fix erasing after write finish

writting to ubi nand partitions need after write ends an erase
of the remaining sectors. This fail, if dfu write size was not
a multiple of erasesize, example log:

Failure erase: -1

Fix this error.

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agoam335x, dxr2: get ECC sType from I2C eeprom
Heiko Schocher [Tue, 7 Jun 2016 06:55:43 +0000 (08:55 +0200)]
am335x, dxr2: get ECC sType from I2C eeprom

read the ECC Type field from the i2c eeprom, instead
configuring it static in the U-Boot binary.

see RM:
Table 26-17. NAND Geometry Information on I2C EEPROM

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agomtd: nand: omap: allow to switch to BCH16
Heiko Schocher [Tue, 7 Jun 2016 06:55:42 +0000 (08:55 +0200)]
mtd: nand: omap: allow to switch to BCH16

support in omap_nand_switch_ecc() also an eccstrength
from 16.

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agonand: add nand mtd concat support
Heiko Schocher [Tue, 7 Jun 2016 06:55:41 +0000 (08:55 +0200)]
nand: add nand mtd concat support

add for nand devices mtd concat support. Generic MTD concat
support is already ported to mainline, and used in the cfi_mtd
driver. This patch adds it similiar for nand devices.

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agoubi: add new ubi command "ubi detach"
Heiko Schocher [Tue, 7 Jun 2016 06:55:40 +0000 (08:55 +0200)]
ubi: add new ubi command "ubi detach"

simple detachs ubi from the mtd partition.

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agosiemens,am33x: add ubi fastmap support
Samuel Egli [Tue, 7 Jun 2016 06:55:39 +0000 (08:55 +0200)]
siemens,am33x: add ubi fastmap support

From: Samuel Egli <samuel.egli@siemens.com>

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agoam335x, shc: add support for the am335x based bosch shc board
Heiko Schocher [Tue, 7 Jun 2016 06:31:25 +0000 (08:31 +0200)]
am335x, shc: add support for the am335x based bosch shc board

U-Boot SPL 2016.03-rc3-00019-g6dfb4c2-dirty (Mar 09 2016 - 07:40:06)
SHC C3-Sample
MPU reference clock runs at 6 MHz
Setting MPU clock to 594 MHz
Enabling Spread Spectrum of 18 permille for MPU
Trying to boot from MMC
reading u-boot.img
reading u-boot.img

U-Boot 2016.03-rc3-00019-g6dfb4c2-dirty (Mar 09 2016 - 07:05:35 +0100)

       Watchdog enabled
I2C:   ready
DRAM:  512 MiB
reloc off 1f783000
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
Net:   cpsw
U-Boot#

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agodoc, spl, am335x: update am335x-network
Heiko Schocher [Tue, 7 Jun 2016 06:31:24 +0000 (08:31 +0200)]
doc, spl, am335x: update am335x-network

on the shc board we see when booting in net boot mode,
that the ROM bootloader sends "AM335x ROM" as
vendor-class-identifier. U-Boots doc says "DM814x ROM".

So, add the info to the doc, that there is also
"AM335x ROM" possible.

Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoarmv7: omap-common: make SPL board_mmc_init() weak
Heiko Schocher [Tue, 7 Jun 2016 06:31:23 +0000 (08:31 +0200)]
armv7: omap-common: make SPL board_mmc_init() weak

make this function weak, so board code can setup in SPL
MMC init with board special values.

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agommc: omap_hsmmc: enable 8bit interface for eMMC for AM33xx
Heiko Schocher [Tue, 7 Jun 2016 06:31:22 +0000 (08:31 +0200)]
mmc: omap_hsmmc: enable 8bit interface for eMMC for AM33xx

Enable 8bit interface on HSMMC2 for am33xx to support 8bit eMMC chips.

Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agommc: revert mmc: Handle switch error status bit in MMC card status
Heiko Schocher [Tue, 7 Jun 2016 06:31:21 +0000 (08:31 +0200)]
mmc: revert mmc: Handle switch error status bit in MMC card status

revert patch:
commit: 6b2221b008e0: mmc: Handle switch error status bit in MMC card status

to get eMMC working on shc board

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agobootstage: call show_boot_progress also in SPL
Heiko Schocher [Tue, 7 Jun 2016 06:31:20 +0000 (08:31 +0200)]
bootstage: call show_boot_progress also in SPL

show_boot_progress() is now called from SPL also.

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agoarm, am335x: Enable Spread Spectrum for the MPU
Heiko Schocher [Tue, 7 Jun 2016 06:31:19 +0000 (08:31 +0200)]
arm, am335x: Enable Spread Spectrum for the MPU

Enable Spread Spectrum for the MPU by calculating the required
values and setting the registers accordingly.

Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoam335x: add some missing CM_CLKMODE_DPLL_SSC macros
Heiko Schocher [Tue, 7 Jun 2016 06:31:18 +0000 (08:31 +0200)]
am335x: add some missing CM_CLKMODE_DPLL_SSC macros

add missing CM_CLKMODE_DPLL_SSC_ACK_MASK,
CM_CLKMODE_DPLL_SSC_DOWNSPREAD_MASK and
CM_CLKMODE_DPLL_SSC_TYPE_MASK
defines. Used for enabling spread spectrum.

Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoarm, am335x: add some missing GPIO register definitions
Heiko Schocher [Tue, 7 Jun 2016 06:31:17 +0000 (08:31 +0200)]
arm, am335x: add some missing GPIO register definitions

add missing:
OMAP_GPIO_IRQSTATUS_SET_0 and OMAP_GPIO_IRQSTATUS_SET_1
registers.

Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agopower, tps65217: add some defines
Heiko Schocher [Tue, 7 Jun 2016 06:31:16 +0000 (08:31 +0200)]
power, tps65217: add some defines

add the following defines, needed for the upcoming shc board
support:

Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agotests: py: disable main_signon check for printenv cmd
Heiko Schocher [Tue, 7 Jun 2016 06:31:15 +0000 (08:31 +0200)]
tests: py: disable main_signon check for printenv cmd

if CONFIG_VERSION_VARIABLE is set, the U-Boot environment
contains a "vers" variable with the current U-Boot version
string. If now "printenv" is called, test/py fails as it
detects the main_sign string, which is in this case correct.

So check only the main_sign as an error, if CONFIG_VERSION_VARIABLE
is not set.

Signed-off-by: Heiko Schocher <hs@denx.de>
8 years agocommon: bootdelay: move CONFIG_BOOTDELAY into a Kconfig option
Heiko Schocher [Tue, 7 Jun 2016 06:31:14 +0000 (08:31 +0200)]
common: bootdelay: move CONFIG_BOOTDELAY into a Kconfig option

move CONFIG_BOOTDELAY into a Kconfig option. Used for this
purpose the moveconfig.py tool in tools.

Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
8 years agotiny-printf: Correct the snprintf() implementation
Simon Glass [Thu, 9 Jun 2016 02:55:15 +0000 (20:55 -0600)]
tiny-printf: Correct the snprintf() implementation

This current code passes the variable arguments list to sprintf(). This is
not correct. Fix it by calling _vprintf() directly.

This makes firefly-rk3288 boot again.

Fixes: abeb272 ("tiny-printf: Support snprintf()")
Reviewed-by: Stefan Roese <sr@denx.de>
Acked-by: Marek Vasut <marex@denx.de>
Signed-off-by: Simon Glass <sjg@chromium.org>
8 years agoARM: uniphier: insert dsb barrier to ensure visibility of store
Masahiro Yamada [Wed, 8 Jun 2016 09:02:32 +0000 (18:02 +0900)]
ARM: uniphier: insert dsb barrier to ensure visibility of store

I noticed secondary CPUs sometimes fail to wake up, and the root
cause is that the sev instruction wakes up slave CPUs before the
preceding the register write is observed by them.

The read-back of the accessed register does not guarantee the order.
In order to ensure the order between the register write and the sev
instruction, a dsb instruction should be executed prior to the sev.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: do not erase when updating U-Boot image in eMMC device
Masahiro Yamada [Tue, 7 Jun 2016 12:03:46 +0000 (21:03 +0900)]
ARM: uniphier: do not erase when updating U-Boot image in eMMC device

Unlike NAND, eMMC can be re-written without erasing.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: do not overwrite fdt_file environment
Masahiro Yamada [Tue, 7 Jun 2016 12:03:44 +0000 (21:03 +0900)]
ARM: uniphier: do not overwrite fdt_file environment

This code auto-detects the best-match FDT file name, but it should
respect the user's choice if "fdt_file" environment is found in a
saved set of environments.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: check return code of setenv()
Masahiro Yamada [Tue, 7 Jun 2016 12:03:43 +0000 (21:03 +0900)]
ARM: uniphier: check return code of setenv()

Because setenv() may fail, it is better to check its return code.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: fix boot mode for PH1-LD11
Masahiro Yamada [Sat, 4 Jun 2016 13:39:09 +0000 (22:39 +0900)]
ARM: uniphier: fix boot mode for PH1-LD11

This function is shared between PH1-LD11 and PH1-LD20.  The difference
is the boot-mode latch for the USB boot mode.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoARM: uniphier: support eMMC boot for PH1-LD11 and PH1-LD20
Masahiro Yamada [Sat, 4 Jun 2016 13:39:08 +0000 (22:39 +0900)]
ARM: uniphier: support eMMC boot for PH1-LD11 and PH1-LD20

The Boot ROM on PH1-LD11/LD20 exports built-in APIs to load images
from an eMMC device.  They are useful to reduce the memory footprint
of SPL, rather than compiling the whole MMC framework.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
8 years agoPrepare v2016.07-rc1 v2016.07-rc1
Tom Rini [Mon, 6 Jun 2016 21:43:54 +0000 (17:43 -0400)]
Prepare v2016.07-rc1

Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agoMerge http://git.denx.de/u-boot-samsung
Tom Rini [Mon, 6 Jun 2016 17:24:23 +0000 (13:24 -0400)]
Merge http://git.denx.de/u-boot-samsung

Signed-off-by: Tom Rini <trini@konsulko.com>
Conflicts:
configs/peach-pi_defconfig
configs/peach-pit_defconfig

8 years agoti_armv7_common: env: Fix hard coded mmc device for uuid
B, Ravi [Fri, 3 Jun 2016 15:14:02 +0000 (20:44 +0530)]
ti_armv7_common: env: Fix hard coded mmc device for uuid

Avoid use of hard coded mmcdev value, use bootpart
instead, so finduuid works based on bootpart set
for a specific platform.

Signed-off-by: Ravi Babu <ravibabu@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoarm/arm64: implement a boot header capability
Andre Przywara [Tue, 31 May 2016 17:45:06 +0000 (10:45 -0700)]
arm/arm64: implement a boot header capability

Some SPL loaders (like Allwinner's boot0, and Broadcom's boot0)
require a header before the actual U-Boot binary to both check its
validity and to find other data to load. Sometimes this header may
only be a few bytes of information, and sometimes this might simply
be space that needs to be reserved for a post-processing tool.

Introduce a config option to allow assembler preprocessor commands
to be inserted into the code at the appropriate location; typical
assembler preprocessor commands might be:
  .space 1000
  .word 0x12345678

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Steve Rae <srae@broadcom.com>
Commit Notes:
Please note that the current code:
  start.S (arm64) and
  vectors.S (arm)
already jumps over some portion of data already, so this option basically
just increases the size of this region (and the resulting binary).

For use with Allwinner's boot0 blob there is a tool called boot0img[1],
which fills the header to allow booting A64 based boards.
For the Pine64 we need a 1536 byte header (including the branch
instruction) at the moment, so we add this to the defconfig.

[1] https://github.com/apritzel/pine64/tree/master/tools
END
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agolib: make strmhz available in SPL
Chris Packham [Tue, 31 May 2016 08:30:59 +0000 (20:30 +1200)]
lib: make strmhz available in SPL

When setting up a DDR controller it is useful to be able to display
frequencies in a readable form. Make the strmhz() function available in
SPL builds provided there is full vsprintf available.

Reviewed-by: Tony O'Brien <tony.obrien@alliedtelesis.co.nz>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Chris Packham <judge.packham@gmail.com>
8 years agoRemove unneeded remnants of bcopy().
Robert P. J. Day [Mon, 30 May 2016 10:55:53 +0000 (06:55 -0400)]
Remove unneeded remnants of bcopy().

Since bcopy() is no longer used, delete all remaining references to
it.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
8 years agoconfigs: k2*_evm: Update fdt file names
Lokesh Vutla [Mon, 6 Jun 2016 05:48:42 +0000 (11:18 +0530)]
configs: k2*_evm: Update fdt file names

Now that all Keystone2 dts file names are changed in Linux kernel, reflect the
same in evn variables inorder to find the right dtb file.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
8 years agoARM: DRA7xx: Enable FIT for hs platforms
Lokesh Vutla [Mon, 6 Jun 2016 05:24:57 +0000 (10:54 +0530)]
ARM: DRA7xx: Enable FIT for hs platforms

Use a single defconfig for all DRA7xx hs platforms by enabling FIT and delete
the platform specific defconfigs.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
8 years agoarmv7: fix order of OMAP die ID printing
Ladislav Michl [Thu, 2 Jun 2016 09:43:16 +0000 (11:43 +0200)]
armv7: fix order of OMAP die ID printing

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Acked-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
8 years agoefi_loader: Add DM_VIDEO support
Alexander Graf [Sun, 5 Jun 2016 20:34:31 +0000 (22:34 +0200)]
efi_loader: Add DM_VIDEO support

Some systems are starting to shift to support DM_VIDEO which exposes
the frame buffer through a slightly different interface.

This is a poor man's effort to support the dm video interface instead
of the lcd one. We still only support a single display device.

Signed-off-by: Alexander Graf <agraf@suse.de>
[trini: Remove fb_size / fb_base as they were not used]
Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agoefi_loader: Don't allocate from memory holes
Alexander Graf [Fri, 27 May 2016 10:25:03 +0000 (12:25 +0200)]
efi_loader: Don't allocate from memory holes

When a payload calls our memory allocator with the exact address hint, we
happily allocate memory from completely unpopulated regions. Payloads however
expect this to only succeed if they would be allocating from free conventional
memory.

This patch makes the logic behind those checks a bit more obvious and ensures
that we always allocate from known good free conventional memory regions if we
want to allocate ram.

Reported-by: Jonathan Gray <jsg@jsg.id.au>
Signed-off-by: Alexander Graf <agraf@suse.de>
8 years agoefi_loader: Move to normal debug infrastructure
Alexander Graf [Thu, 2 Jun 2016 09:38:27 +0000 (11:38 +0200)]
efi_loader: Move to normal debug infrastructure

We introduced special "DEBUG_EFI" defines when the efi loader
support was new. After giving it a bit of thought, turns out
we really didn't have to - the normal #define DEBUG infrastructure
works well enough for efi loader as well.

So this patch switches to the common debug() and #define DEBUG
way of printing debug information.

Signed-off-by: Alexander Graf <agraf@suse.de>
8 years agoefi_loader: Add exit support
Alexander Graf [Fri, 20 May 2016 21:28:23 +0000 (23:28 +0200)]
efi_loader: Add exit support

Some times you may want to exit an EFI payload again, for example
to default boot into a PXE installation and decide that you would
rather want to boot from the local disk instead.

This patch adds exit functionality to the EFI implementation, allowing
EFI payloads to exit.

Signed-off-by: Alexander Graf <agraf@suse.de>
8 years agoarm: Introduce setjmp/longjmp
Alexander Graf [Fri, 20 May 2016 21:28:22 +0000 (23:28 +0200)]
arm: Introduce setjmp/longjmp

To quit an EFI application we will need logic to jump to the caller
of a function without returning from the function we called into,
so we need setjmp/longjmp functionality.

This patch introduces a trivial implementation of these that I
verified works on armv7, thumb2 and aarch64.

Signed-off-by: Alexander Graf <agraf@suse.de>
8 years agostrider: Support cpu-dp flavor
Dirk Eibach [Thu, 2 Jun 2016 07:05:42 +0000 (09:05 +0200)]
strider: Support cpu-dp flavor

There is new strider cpu flavor with DisplayPort video.

Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agostrider: Support con-dp flavor
Dirk Eibach [Thu, 2 Jun 2016 07:05:41 +0000 (09:05 +0200)]
strider: Support con-dp flavor

There is a new strider console flavor with DisplayPort
video.

Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agogdsys: osd: Allow osdsize on valid screens only
Dirk Eibach [Thu, 2 Jun 2016 07:05:40 +0000 (09:05 +0200)]
gdsys: osd: Allow osdsize on valid screens only

Limit "osdsize"-command to access valid screens only.

Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoioep-fpga: Support intempo compression
Dirk Eibach [Thu, 2 Jun 2016 07:05:39 +0000 (09:05 +0200)]
ioep-fpga: Support intempo compression

There is a new "intempo" compression type that can
be reported on startup.

Signed-off-by: Dirk Eibach <dirk.eibach@gdsys.cc>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 years agoFix to davinci_nand.h to place CEnCFG registers at correct
Peter Howard [Thu, 2 Jun 2016 03:19:26 +0000 (13:19 +1000)]
Fix to davinci_nand.h to place CEnCFG registers at correct

Signed-off-by: Peter Howard <phoward@gme.net.au>
8 years agodm: scsi: if_typename should be scsi
Ed Swarthout [Wed, 1 Jun 2016 13:11:24 +0000 (08:11 -0500)]
dm: scsi: if_typename should be scsi

Fixes:

=> ext2ls scsi 0:1
** Bad device scsi 0:1 **

for boards which use the scsi legacy driver (such as ls1043ardb).

Signed-off-by: Ed Swarthout <Ed.Swarthout@nxp.com>
Tested-by: George McCollister <george.mccollister@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
8 years agoMerge branch 'master' of git://git.denx.de/u-boot-usb
Tom Rini [Mon, 6 Jun 2016 14:04:58 +0000 (10:04 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-usb

Modified:
configs/ls1012afrdm_qspi_defconfig
configs/ls1012aqds_qspi_defconfig
configs/ls1012ardb_qspi_defconfig
include/configs/ls1012afrdm.h
include/configs/ls1012aqds.h
include/configs/ls1012ardb.h

Signed-off-by: Tom Rini <trini@konsulko.com>
8 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-microblaze
Tom Rini [Mon, 6 Jun 2016 11:16:39 +0000 (07:16 -0400)]
Merge branch 'master' of git://denx.de/git/u-boot-microblaze

8 years agoARM64: zynqmp: Extend malloc space before relocation
Michal Simek [Fri, 3 Jun 2016 09:35:17 +0000 (11:35 +0200)]
ARM64: zynqmp: Extend malloc space before relocation

For boards which have more devices it is necessary to extend malloc
space.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoARM64: zynqmp: Add support for standard distro boot commands
Michal Simek [Fri, 22 Apr 2016 12:28:54 +0000 (14:28 +0200)]
ARM64: zynqmp: Add support for standard distro boot commands

Nand and QSPI are not defined now but this will be extended.
Based on selected bootmode boot_targets are rewritten.
Patch also contains detection if variables are saved. If yes don't
rewrite boot_targets variable.

Also move variable setup to the end of file because SCSI needs to be
defined before others macros are using it.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Alexander Graf <agraf@suse.de>
8 years agoARM64: zynqmp: Remove CONFIG_BOOTP_SERVERIP
Alexander Graf [Wed, 1 Jun 2016 20:41:54 +0000 (22:41 +0200)]
ARM64: zynqmp: Remove CONFIG_BOOTP_SERVERIP

When the CONFIG_BOOTP_SERVERIP option is set, we ignore all
dhcp values for the tftp server and use our own serverip and
file name instead.

This is usually not what we want and I doubt it's set for a
good reason on ZynqMP. It definitely hurts if we want to support
uEFI PXE boot on it. So just remove the option for now.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoARM64: zynqmp: Enable AHCI when CONFIG_SATA_CEVA is defined
Michal Simek [Wed, 1 Jun 2016 12:29:33 +0000 (14:29 +0200)]
ARM64: zynqmp: Enable AHCI when CONFIG_SATA_CEVA is defined

Simplify zcu102 board file by moving CONFIG_AHCI enabling to common
file.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoARM64: zynqmp: Enable support for SPL FIT images
Michal Simek [Tue, 17 May 2016 06:38:53 +0000 (08:38 +0200)]
ARM64: zynqmp: Enable support for SPL FIT images

Enable support for RAM based FIT images read by SPL.
Empty function for now to keep compiler happy.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoenv: Setup GD_FLG_ENV_DEFAULT flag when default environment are used
Michal Simek [Mon, 30 May 2016 14:06:54 +0000 (16:06 +0200)]
env: Setup GD_FLG_ENV_DEFAULT flag when default environment are used

Setup flag when default environment are used to be able to
rewrite default distro boot variables based on SoC boot mode.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Alexander Graf <agraf@suse.de>
8 years agoARM64: zynq: Fix boot.bin generation for Zynq and ZynqMP
Michal Simek [Mon, 30 May 2016 12:57:02 +0000 (14:57 +0200)]
ARM64: zynq: Fix boot.bin generation for Zynq and ZynqMP

Fix boot.bin generation for Zynq and ZynqMP.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Marek Vasut <marex@denx.de>
8 years agoARM64: zynqmp: Extend page_table_size
Michal Simek [Mon, 30 May 2016 08:41:26 +0000 (10:41 +0200)]
ARM64: zynqmp: Extend page_table_size

0xc000 is not sufficient page table size if dc4 with 4 gems
is enabled.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoARM64: zynqmp: Add support for zc1751-dc4
Michal Simek [Thu, 26 May 2016 06:06:38 +0000 (08:06 +0200)]
ARM64: zynqmp: Add support for zc1751-dc4

zc1751-dc4 contains four GEMs.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoARM64: zynqmp: Add debug uart for zc1751-dc2
Michal Simek [Fri, 20 May 2016 07:55:00 +0000 (09:55 +0200)]
ARM64: zynqmp: Add debug uart for zc1751-dc2

Add debug uart for zc1751-dc2.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoARM64: zynqmp: Enable Vitesse and RealTek ethernet phys
Michal Simek [Mon, 30 May 2016 08:13:37 +0000 (10:13 +0200)]
ARM64: zynqmp: Enable Vitesse and RealTek ethernet phys

Phys are available on zc1751-dc4 that's why enable them.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agomicroblaze: Move MSR instruction selection to Kconfig
Michal Simek [Tue, 24 May 2016 09:45:11 +0000 (11:45 +0200)]
microblaze: Move MSR instruction selection to Kconfig

Select MSR instructions via Kconfig instead of xparameters.h.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agomicroblaze: Add option to pass cpu version number
Michal Simek [Tue, 24 May 2016 11:23:59 +0000 (13:23 +0200)]
microblaze: Add option to pass cpu version number

Toolchain can use some flags by default based on cpu version.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agomicroblaze: Select compilation flags via Kconfig
Michal Simek [Tue, 24 May 2016 09:42:26 +0000 (11:42 +0200)]
microblaze: Select compilation flags via Kconfig

Remove autogenerated config.mk and select CPU options via Kconfig.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoARM64: zynqmp: Enable CMD_NAND via Kconfig
Michal Simek [Fri, 27 May 2016 09:25:49 +0000 (11:25 +0200)]
ARM64: zynqmp: Enable CMD_NAND via Kconfig

Simplify board file by enabling CMD_NAND via Kconfig.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agomtd: nand: arasan_nfc: Correct nand ecc initialization
Siva Durga Prasad Paladugu [Wed, 25 May 2016 09:50:38 +0000 (15:20 +0530)]
mtd: nand: arasan_nfc: Correct nand ecc initialization

Correct the nand ecc initialization code
This fixes the issue of incorrect nand ecc
init if no device is found in ecc_matrix then
it endsup ecc init with junk initialization
instead of the most suited one.

Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
8 years agoarm: lib: Fix fix push/pop-section directives
Marek Vasut [Sat, 4 Jun 2016 22:46:55 +0000 (00:46 +0200)]
arm: lib: Fix fix push/pop-section directives

Repair typos in the previous "arm: lib: fix push/pop-section directives"
patch, which prevented VCMA9 board from building.

Signed-off-by: Marek Vasut <marex@denx.de>
Fixes: b2f1858455e9 ("arm: lib: fix push/pop-section directives")
Cc: Tom Warren <twarren@nvidia.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Stephen Warren <swarren@nvidia.com>
8 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Tom Rini [Sat, 4 Jun 2016 16:12:26 +0000 (12:12 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

8 years agospl: fit: Fix non-matching DT names console output
Andreas Dannenberg [Fri, 3 Jun 2016 19:05:04 +0000 (14:05 -0500)]
spl: fit: Fix non-matching DT names console output

When no DTB can be matched successfully to the board that's being used
a list of available FIT-embedded DTBs will be output to the console for
diagnostic purposes. But rather than the contents of the "description"
FDT property a non-existent property was accessed and as a result "NULL"
was output instead of the actual name(s) of the DTB(s). Fix this issue
by using the correct property which is also the exact same property
that's used earlier during the actual board matching process.

Signed-off-by: Andreas Dannenberg <dannenberg@ti.com>
8 years agoMerge git://git.denx.de/u-boot-nand-flash
Tom Rini [Sat, 4 Jun 2016 12:49:47 +0000 (08:49 -0400)]
Merge git://git.denx.de/u-boot-nand-flash

8 years agoMerge branch 'master' of git://git.denx.de/u-boot-fsl-qoriq
Tom Rini [Sat, 4 Jun 2016 12:49:08 +0000 (08:49 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-fsl-qoriq

8 years agofreescale: Tweak various Makefiles to remove redundancy, fix aesthetics
Robert P. J. Day [Wed, 13 Apr 2016 21:49:28 +0000 (17:49 -0400)]
freescale: Tweak various Makefiles to remove redundancy, fix aesthetics

No intended functional change, just remove redundancies in some
Makefiles, and make whitespace aesthetics uniform.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Reviewed-by: York Sun <york.sun@nxp.com>
8 years agodm: test: Add GPIO open drain tests
mario.six@gdsys.cc [Wed, 25 May 2016 13:15:23 +0000 (15:15 +0200)]
dm: test: Add GPIO open drain tests

Add some tests for the new open drain setting feature of the GPIO
uclass, and extend the capabilities of the sandbox GPIO driver
accordingly.

Signed-off-by: Mario Six <mario.six@gdsys.cc>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: York Sun <york.sun@nxp.com>
8 years agodm: gpio: Implement open drain for MPC85XX GPIO
mario.six@gdsys.cc [Wed, 25 May 2016 13:15:22 +0000 (15:15 +0200)]
dm: gpio: Implement open drain for MPC85XX GPIO

This patch implements the open-drain setting feature for the MPC85XX
GPIO controller.

Signed-off-by: Mario Six <mario.six@gdsys.cc>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: York Sun <york.sun@nxp.com>
8 years agodm: gpio: Add methods for open drain setting
mario.six@gdsys.cc [Wed, 25 May 2016 13:15:21 +0000 (15:15 +0200)]
dm: gpio: Add methods for open drain setting

Certain GPIO devices have the capability to switch their GPIOs into
open-drain mode, that is, instead of actively driving the output
(Push-pull output), the pin is connected to the collector (for a NPN
transistor) or the drain (for a MOSFET) of a transistor, respectively.
The pin then either forms an open circuit or a connection to ground,
depending on the state of the transistor.

This patch adds functions to the GPIO uclass to switch GPIOs to
open-drain mode on devices that support it.

Signed-off-by: Mario Six <mario.six@gdsys.cc>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: York Sun <york.sun@nxp.com>
8 years agodm: gpio: Add driver for MPC85XX GPIO controller
mario.six@gdsys.cc [Wed, 25 May 2016 13:15:20 +0000 (15:15 +0200)]
dm: gpio: Add driver for MPC85XX GPIO controller

This patch adds a driver for the built-in GPIO controller of the MPC85XX
SoC (probably supporting other PowerQUICC III SoCs as well).

Each GPIO bank is identified by its own entry in the device tree, i.e.

gpio-controller@fc00 {
      #gpio-cells = <2>;
      compatible = "fsl,pq3-gpio";
      reg = <0xfc00 0x100>
}

By default, each bank is assumed to have 32 GPIOs, but the ngpios
setting is honored, so the number of GPIOs for each bank in configurable
to match the actual GPIO count of the SoC (e.g. the 32/32/23 banks of
the P1022 SoC).

The usual functions of GPIO drivers (setting input/output mode and output
value setting) are supported.

The driver has been tested on MPC85XX, but it is likely that other
PowerQUICC III devices will work as well.

Signed-off-by: Mario Six <mario.six@gdsys.cc>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: York Sun <york.sun@nxp.com>
8 years agoarch/powerpc: Simplify some calculations using ARRAY_SIZE() macro.
Robert P. J. Day [Mon, 23 May 2016 10:49:21 +0000 (06:49 -0400)]
arch/powerpc: Simplify some calculations using ARRAY_SIZE() macro.

Replace a number of array length calculations with the ARRAY_SIZE()
macro, for clarity.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Reviewed-by: York Sun <york.sun@nxp.com>