04 Aug, 2014
3 commits
-
Add support for re-relocation malloc() in arm's start-up code.
Signed-off-by: Simon Glass
-
At present arm defines CONFIG_SYS_GENERIC_GLOBAL_DATA, meaning that
the global_data pointer is set up in board_init_f(). However it is
actually set up before this, it just isn't zeroed.If we zero the global data before calling board_init_f() then we
don't need to define CONFIG_SYS_GENERIC_GLOBAL_DATA.Make this change (on arm32 only) to simplify the init process. I
don't have the ability to test aarch64 yet.Signed-off-by: Simon Glass
Acked-by: Tom Rini
02 Aug, 2014
8 commits
-
Add callback with __weak annotation to allow setup of environment
partition number in runtime from a board file.Propagate mmc_switch_part() return value into init_mmc_for_env() instead
of -1 in case of failure.Signed-off-by: Dmitry Lifshitz
Signed-off-by: Igor Grinberg
Acked-by: Pantelis Antoniou -
Add missing mmc_get_env_addr() prototype in environment.h
Signed-off-by: Dmitry Lifshitz
Acked-by: Pantelis Antoniou -
If the MCI IP version >= 0x300, it supports hight speed mode
option, this patch enable it.Signed-off-by: Bo Shen
Acked-by: Pantelis Antoniou -
Add configuration register definition, this register only
exists on MCI IP version >= 0x300.Signed-off-by: Bo Shen
Acked-by: Pantelis Antoniou -
The mode register is different between MCI IP version.
So, according to MCI IP version to set the mode register.Signed-off-by: Bo Shen
Acked-by: Pantelis Antoniou -
To fix the clock divider calculation error when the controller
clock same as the operating frequency. This is known as bypass
mode. In this mode, the divider should be 0.Signed-off-by: Chin Liang See
Cc: Pantelis Antoniou
Cc: Rajeshwari Shinde
Cc: Jaehoon Chung
Cc: Mischa Jonker -
Implement SD driver for the S3C24xx family. This implementation
is currently only capable of using the PIO transfers, DMA is not
supported.Signed-off-by: Marek Vasut
Cc: Kyungmin Park
Cc: Lukasz Majewski
Cc: Minkyu Kang
Cc: Pantelis Antoniou
Cc: Vladimir Zapolskiy
Acked-by: Pantelis Antoniou -
Unify the register structure so they can be easily used across all
of S3C24xx lineup.Signed-off-by: Marek Vasut
Cc: Kyungmin Park
Cc: Lukasz Majewski
Cc: Minkyu Kang
Cc: Pantelis Antoniou
Cc: Vladimir Zapolskiy
Acked-by: Pantelis Antoniou
01 Aug, 2014
2 commits
-
Seems like the controller doesn't support the flag. None of the hi-speed cards
I've tried could be read, while they successfully worked with the quirk enabled.Signed-off-by: Lubomir Rintel
Tested-by: Stephen Warren -
This patch add Marvell kirkwood MVSDIO/MMC driver
and enable it for Sheevaplugs and OpenRD boards.Signed-off-by: Gerald Kerma
Reviewed-by: Stefan Roese
Acked-by: Pantelis Antoniou
31 Jul, 2014
7 commits
-
Now CONFIG_SPL and CONFIG_TPL are defined in Kconfig.
Remove the redundant definition in config headers.
Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass -
CONFIG_${CPU} is defined by Kconfig.
Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass
Acked-by: Stefan Roese -
CONFIG_${ARCH} is defined by Kconfig.
Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass -
Use "make _defconfig" instead of "make _config".
Invoke tools/genboardscfg.py to generate boards.cfg when it is missing.
Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass -
- Use "make _defconfig" instead of "make _config".
- Invoke tools/genboardscfg.py to generate boards.cfg when it is
missing.- Show "Building ${BOARD_NAME} board..." message.
(Prior to Kconfig, instead, mkconfig script displayed
"Configuring for ${BOARD_NAME} board..." but it was removed.)
Without this message, we cannot know which board is currently
being built.- Do not show "# configuration written to .config".
This message is useless and just annoying for MAKEALL.Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass -
The old configuration script is no longer necessary.
Nor is boards.cfg a primary database.
We can generate it with the genboardscfg.py tool
based on the latest Kconfig, defconfig and MAINTAINERS.Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass -
Now the primary data for each board is in Kconfig, defconfig and
MAINTAINERS.It is true boards.cfg is needed for MAKEALL and buildman and might be
useful to brouse all the supported boards in a single database.
But it would be painful to maintain the boards.cfg in sync.So, this is the solution.
Add a tool to generate the equivalent boards.cfg file based on
the latest Kconfig, defconfig and MAINTAINERS.We can keep all the functions of MAKEALL and buildman with it.
The best thing would be to change MAKEALL and buildman for not
depending on boards.cfg in the future, but it would take some time.Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass
30 Jul, 2014
7 commits
-
We have switched to Kconfig and the boards.cfg file is going to
be removed. We have to retrieve the board status and maintainers
information from it.The MAINTAINERS format as in Linux Kernel would be nice
because we can crib the scripts/get_maintainer.pl script.After some discussion, we chose to put a MAINTAINERS file under each
board directory, not the top-level one because we want to collect
relevant information for a board into a single place.TODO:
Modify get_maintainer.pl to scan multiple MAINTAINERS files.Signed-off-by: Masahiro Yamada
Suggested-by: Tom Rini
Acked-by: Simon Glass -
This commit enables Kconfig.
Going forward, we use Kconfig for the board configuration.
mkconfig will never be used. Nor will include/config.mk be generated.Kconfig must be adjusted for U-Boot because our situation is
a little more complicated than Linux Kernel.
We have to generate multiple boot images (Normal, SPL, TPL)
from one source tree.
Each image needs its own configuration input.Usage:
Run "make _defconfig" to do the board configuration.
It will create the .config file and additionally spl/.config, tpl/.config
if SPL, TPL is enabled, respectively.You can use "make config", "make menuconfig" etc. to create
a new .config or modify the existing one.Use "make spl/config", "make spl/menuconfig" etc. for spl/.config
and do likewise for tpl/.config file.The generic syntax of configuration targets for SPL, TPL is:
/
Here, is either 'spl' or 'tpl'
is 'config', 'menuconfig', 'xconfig', etc.When the configuration is done, run "make".
(Or "make _defconfig all" will do the configuration and build
in one time.)For futher information of how Kconfig works in U-Boot,
please read the comment block of scripts/multiconfig.py.By the way, there is another item worth remarking here:
coexistence of Kconfig and board herder files.Prior to Kconfig, we used C headers to define a set of configs.
We expect a very long term to migrate from C headers to Kconfig.
Two different infractructure must coexist in the interim.In our former configuration scheme, include/autoconf.mk was generated
for use in makefiles.
It is still generated under include/, spl/include/, tpl/include/ directory
for the Normal, SPL, TPL image, respectively.Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass -
We are about to switch to Kconfig in the next commit.
But there are something to get done beforehand.In Kconfig, include/generated/autoconf.h defines boolean
CONFIG macros as 1.CONFIG_SPL and CONFIG_TPL, if defined, must be set to 1.
Otherwise, when switching to Kconfig, the build log
would be sprinkled with warning messages like this:
warning: "CONFIG_SPL" redefined [enabled by default]Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass -
This commit adds more Kconfig files, which were written by hand.
Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass -
This commit adds:
- arch/${ARCH}/Kconfig
provide a menu to select target boards
- board/${VENDOR}/${BOARD}/Kconfig or board/${BOARD}/Kconfig
set CONFIG macros to the appropriate values for each board
- configs/${TARGET_BOARD}_defconfig
default setting of each board(This commit was automatically generated by a conversion script
based on boards.cfg)In Linux Kernel, defconfig files are located under
arch/${ARCH}/configs/ directory.
It works in Linux Kernel since ARCH is always given from the
command line for cross compile.But in U-Boot, ARCH is not given from the command line.
Which means we cannot know ARCH until the board configuration is done.
That is why all the "*_defconfig" files should be gathered into a
single directory ./configs/.Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass -
Import
- scripts/kconfig/*
- include/linux/kconfig.h
from Linux 3.16-rc7.Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass -
Change-Id: I8e72b942b8816726773d5407ce405d68a1594389
Signed-off-by: Lukasz Majewski
29 Jul, 2014
8 commits
-
Add back the maintainers entries for Altera's SOCFPGA platform.
Signed-off-by: Dinh Nguyen
Signed-off-by: Chin Liang See -
Add a whitespace between the name and the email address.
When switching to Kconfig, the first version of MAINTAINERS files
will be generated based on the boards.cfg file.So, the maintainers field should be corrected even if it is a really
minor fix.Signed-off-by: Masahiro Yamada
Acked-by: Bo Shen
Acked-by: Simon Glass -
Since the command name 'make' may not be GNU Make on some platforms
such as FreeBSD, buildman should call scripts/show-gnu-make to get
the command name for GNU MAKE (and error out if it is not found).Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass
Tested-by: Jeroen Hofstee -
Since the command name 'make' may not be GNU Make on some platforms
such as FreeBSD, MAKEALL should call scripts/show-gnu-make to get
the command name for GNU MAKE (and error out if it is not found).The GNU Make should be searched after parsing options because we want
to allow "MAKEALL -h" even if GNU Make is missing on the system.Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass -
U-Boot is expected to be built on various platforms.
We should keep in mind that the command 'make' is not always GNU Make,
while all the makefiles are written for GNU Make.For example, on Linux, people generally do:
make _config; make
But FreeBSD folks do
gmake _config; gmake
(The command 'make' on FreeBSD is BSD Make, not GNU Make)
It is not a good idea to hard-code the command name 'make'
in MAKEALL or buildman.They should call this helper script and get the command name
for GNU Make.Signed-off-by: Masahiro Yamada
28 Jul, 2014
5 commits
-
Having a form of whitelist to check if we know of a CPU core
and and obtain CBAR is a bit silly.It doesn't scale (how about A12, A17, as well as other I don't know
about?), and is actually a property of the SoC, not the core.So either it works and everybody is happy, or it doesn't and
the u-boot port to this SoC is providing the real address via
a configuration option.The result of the above is that this code doesn't need to exist,
is thus forcefully removed.Signed-off-by: Marc Zyngier
Acked-by: Ian Campbell -
Generate the PSCI node in the device tree.
Also add a reserve section for the "secure" code that lives in
in normal RAM, so that the kernel knows it'd better not trip on
it.Signed-off-by: Marc Zyngier
Acked-by: Ian Campbell -
Some architecture needs extra device tree setup. Instead of adding
yet another hook, convert arch_fixup_memory_node to be a generic
FDT fixup function.[maz: collapsed 3 patches into one, rewrote commit message]
Signed-off-by: Ma Haijun
Signed-off-by: Marc Zyngier
Acked-by: Ian Campbell -
Allow the switch to a second stage secure monitor just before
switching to non-secure.This allows a resident piece of firmware to be active once the
kernel has been entered (the u-boot monitor is dead anyway,
its pages being reused).Signed-off-by: Marc Zyngier
Acked-by: Ian Campbell -
Implement core support for PSCI. As this is generic code, it doesn't
implement anything really useful (all the functions are returning
Not Implemented).Signed-off-by: Marc Zyngier
Acked-by: Ian Campbell