Nishanth Menon [Wed, 8 Jan 2014 02:06:56 +0000 (20:06 -0600)]
omap4_common: config: remove I2C for SPL mode
Commit
6789e84ecaa8f45d053084e08c381284a04abff7 (i2c, omap24xx:
convert driver to new mutlibus/mutliadapter framework) intended to
make I2C driver compatible with latest changes. It unfortunately has
had a impact on size on SPL as well. For example on SDP4430,
32032 bytes before/MLO
35416 bytes after/MLO
With this mentioned commit, MLO stops booting on SDP4430 as only 32K
is accessible for non-secure (bootloader) s/w on GP devices and the size
increase to 56K fails boot.
On the latest u-boot commit
e7be18225fbea76d1f0034b224f0d1e60f07cfcf,
MLO is now at size 35592 bytes, However, I2C is not necessary for SPL
to function as we use SR_I2C for controlling the PMIC.
Disabling I2C reduces MLO to 32224 bytes which allows
OMAP4 GP platform to boot up.
Since this is common for all OMAP4 platforms, remove the need for I2C
for SPL builds in the common config.
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Sricharan R <r.sricharan@ti.com>
Tom Rini [Tue, 21 Jan 2014 22:15:08 +0000 (17:15 -0500)]
dra7xx_evm: Enable GPT commands
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 21 Jan 2014 22:15:07 +0000 (17:15 -0500)]
am43xx_evm: Enable GPT commands
Signed-off-by: Tom Rini <trini@ti.com>
Tom Rini [Tue, 21 Jan 2014 22:15:06 +0000 (17:15 -0500)]
am335x_evm: Enable GPT commands
Signed-off-by: Tom Rini <trini@ti.com>
Stefan Roese [Fri, 21 Feb 2014 08:28:33 +0000 (09:28 +0100)]
arm: omap: cm_t35: Remove CONFIG_SYS_BOOTMAPSZ to fix FDT Linux booting
With CONFIG_SYS_BOOTMAPSZ defined, recent Linux kernel booting
results in this error:
Booting using the fdt blob at 0x81f00000
Loading Kernel Image ... OK
ERROR: Failed to allocate 0x1189d bytes below 0x80004000.
device tree - allocation error
FDT creation failed! hanging...### ERROR ### Please RESET the board ###
Removing this define solves this issue.
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Tom Rini <trini@ti.com>
Nishanth Menon [Tue, 18 Feb 2014 18:00:01 +0000 (12:00 -0600)]
DRA7: fix ABB efuse offset for OPP_NOM
commit
194dd74ad919e57026f385aaab7f89acf7ea79ef
(DRA7: add ABB setup for MPU voltage domain)
Made an offset typo error by using 0x4A003B24 as the efuse offset
for OPP_NOM. As per TI documentation, 0x4A003B24 is for OPP_OD, and
0x4A003B20 is for OPP_NOM. Fix the same.
Reported-by: Praveen Rao <prao@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Janne Grunau [Sun, 16 Feb 2014 20:57:18 +0000 (21:57 +0100)]
ARM: OMAP4: fix DDR timings for OMAP4430 ES2.0
DDR timings were broken since
47abc3df701d8bc26f311350aa523fc1d0f8ad4e
for PandaBoard EA1.
Signed-off-by: Janne Grunau <j@jannau.net>
Stefano Babic [Fri, 14 Feb 2014 11:51:27 +0000 (12:51 +0100)]
OMAP3: fix default environment for mcx board
Patch allows to load a script at the startup from MMC.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Fri, 14 Feb 2014 11:51:26 +0000 (12:51 +0100)]
omap3: fix pinmux for mcx board
New hardware version cannot recognize the SD-Card
because the SYS_NRESWARM, set as GPIO, does not
guarantee the required reset time.
Change the pin function back to enable the
SYS_NRESWARM signal driven by the SOC.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefano Babic [Fri, 14 Feb 2014 11:51:25 +0000 (12:51 +0100)]
OMAP3: add missing gpio clock init and fix NAND SPL for mcx board
Patch contains the same fixes as commit
4b9b2c300a23ca4a85811918dc92e822a9571a87
(missing CONFIG_OMAP3_GPIO_2) and commit
f9095aac793aa8917ab9b915c5d449e6dc8d3d30 (missing CONFIG_SPL_NAND_SOFTECC).
Same issues are relevant for the mcx board, too.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Stefan Roese [Fri, 14 Feb 2014 08:47:17 +0000 (09:47 +0100)]
arm: omap3: Fix tao3530/omap3_ha SPL boot hangup (GPIO clocks not enabled)
Patch
f33b9bd3
[arm: omap3: Enable clocks for peripherals only if they are used]
breaks SPL booting on tao3530. Since some gpio input's are
read to detect the board revision. But with this patch above, the
clocks to the GPIO subsystems are not enabled per default any more.
The GPIO banks need to be configured specifically now.
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Tom Rini <trini@ti.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Reviewed-by: Stefano Babic <sbabic@denx.de>
Dave Gerlach [Mon, 10 Feb 2014 16:41:49 +0000 (11:41 -0500)]
ARM: AM43xx: GP-EVM: Correct GPIO used for VTT regulator control
Schematic indicates GPIO5_7 is to be used for VTT regulator control
rather than GPIO0_21 so modify enable_vtt_regulator to reflect this.
Without this some boards will experience DDR3 corruption and fail to
boot.
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
[trini: Rework patch against mainline]
Signed-off-by: Tom Rini <trini@ti.com>
Hannes Petermaier [Fri, 7 Feb 2014 13:06:50 +0000 (14:06 +0100)]
Add support for B&R KWB Motherboard
Adds support for Bernecker & Rainer Industrieelektronik GmbH KWB
Motherboard, using TI's AM3352 SoC.
Most of code is derived from TI's AM335x_EVM
Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
Cc: trini@ti.com
Hannes Petermaier [Fri, 7 Feb 2014 07:07:36 +0000 (08:07 +0100)]
board: Add support for B&R T-Series Motherboard
Adds support for Bernecker & Rainer Industrieelektronik GmbH T-Series
Motherboard, using TI's AM3352 SoC.
Most of code is derived from TI's AM335x_EVM
Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
Lothar Felten [Fri, 31 Jan 2014 16:34:14 +0000 (17:34 +0100)]
am335x: Initial support for Silica Pengwyn board
This patch add support for the Silica Pengwyn board [1]
The board is based on a TI AM3354 CPU [2]
All jumpers removed it will boot from the SDcard, the console is on
UART1 accessible via the FDTI -> USB. The on board NAND flash is
supported and can act as boot medium, depending on jumper settings.
USB Host, USB Device and Ethernet are also provided but untested.
[1]
http://www.silica.com/product/silica-pengwyn-board.html
[2]
http://www.ti.com/product/am3354
Signed-off-by: Lothar Felten <lothar.felten@gmail.com>
[trini: Move CONFIG_BOARD_LATE_INIT into am335x_evm.h, drop unused
spi0_pin_mux from Pengwyn support]
Signed-off-by: Tom Rini <trini@ti.com>
Albert ARIBAUD [Thu, 20 Feb 2014 12:16:05 +0000 (13:16 +0100)]
Merge branch 'u-boot/master' into 'u-boot-arm/master'
Conflicts:
Makefile
drivers/net/npe/Makefile
These two conflicts arise from commit
0b2d3f20
("ARM: NET: Remove the IXP NPE ethernet driver") and are
resolved by deleting the drivers/net/npe/Makefile file
and removing the CONFIG_IXP4XX_NPE line from Makefile.
Tom Rini [Wed, 19 Feb 2014 21:01:28 +0000 (16:01 -0500)]
Prepare v2014.04-rc1
Signed-off-by: Tom Rini <trini@ti.com>
Masahiro Yamada [Wed, 19 Feb 2014 13:26:43 +0000 (22:26 +0900)]
kbuild,tegra124: add dummy obj- for Kbuild
In Kbuild, every makefile must have non-empty obj- or obj-y.
Otherwise, built-in.o will not be created and the link stage
will fail.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 18 Feb 2014 06:39:21 +0000 (15:39 +0900)]
cosmetic: FIT: fix a strange comment
There is a strange comment in fit_image_load().
This function can be used for loading Kernel Image, FDT
as well as ramdisk.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Masahiro Yamada [Thu, 13 Feb 2014 09:30:27 +0000 (18:30 +0900)]
Move CONFIG_DISPLAY_CPUINFO to Makefile
If the whole code is surrounded by #ifdef(CONFIG_ ) .. #endif,
it should be moved to Makefile.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Thu, 13 Feb 2014 09:30:26 +0000 (18:30 +0900)]
Move #ifdef(CONFIG_DISPLAY_CPUINFO) from caller to callee
- When CONFIG_DISPLAY_CPUINFO is not enabled,
print_cpuinfo() should be defined as an empty function
in a header, include/common.h
- Remove #ifdef CONFIG_DISPLAY_CPUINFO .. #endif
from caller, common/board_f.c and arch/arm/lib/board.c
- Remove redundant prototypes in arch/arm/lib/board.c,
arch/arm/include/asm/arch-am33x/sys_proto.h and
board/nokia/rx51/rx51.h, keeping the one in include/common.h
- Add #ifdef CONFIG_DISPLAY_CPUINFO to the func definition
where it is missing
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Fri, 7 Feb 2014 08:20:52 +0000 (17:20 +0900)]
configs: Delete unused CONFIG_SYS_64BIT_{VSPRINTF, STRTOUL}
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Fri, 7 Feb 2014 00:23:03 +0000 (09:23 +0900)]
configs: Delete obsolete macro, CONFIG_SYS_GBL_DATA_SIZE
CONFIG_SYS_GBL_DATA_SIZE is not used any more.
The size of struct "global_data" is automatically calculated
by asm-offsets. (See lib/asm-offsets.c)
GENERATED_GBL_DATA_SIZE should be used instead of
CONFIG_SYS_GBL_DATA_SIZE.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Wed, 5 Feb 2014 02:28:27 +0000 (11:28 +0900)]
dts: generate multiple device tree blobs
It is convenient to have all device trees on the same SoC compiled.
It allows for later easy repackaging without the need to re-run
the make file.
- Build device trees with the same SoC under arch/$(ARCH)/dts
- Copy the one specified by CONFIG_DEFAULT_DEVICE_TREE or
DEVICE_TREE=... to dts/dt.dtb
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Wed, 5 Feb 2014 02:28:26 +0000 (11:28 +0900)]
dts: move device tree sources to arch/$(ARCH)/dts/
Unlike Linux Kernel, U-Boot historically had *.dts files under
board/$(VENDOR)/dts/ and *.dtsi files under arch/$(ARCH)/dts/.
I think arch/$(ARCH)/dts dicretory is a better location
to store both *.dts and *.dtsi files.
For example, before this commit, board/xilinx/dts directory
had both Microblaze dts (microblaze-generic.dts) and
ARM dts (zynq-*.dts), which are totally unrelated.
This commit moves *.dts to arch/$(ARCH)/dts/ directories,
allowing us to describe nicely mutiple DTBs generation in the next commit.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Wed, 5 Feb 2014 02:28:25 +0000 (11:28 +0900)]
dts: re-write dts/Makefile more simply with Kbuild
Useful rules in scripts/Makefile.lib allows us to easily
generate a device tree blob and wrap it in assembly code.
We do not need to parse a linker script to get output format and arch.
This commit deletes ./u-boot.dtb since it is a copy of dts/dt.dtb.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Wed, 5 Feb 2014 01:52:52 +0000 (10:52 +0900)]
kernel-doc: fix some errors
- Delete fs.xml from DOCBOOKS to fix an error.
Commit
e3ff797c added fs.xml to DOCBOOKS
but missed to add doc/DocBook/fs.tmpl.
- Fix the location of include guard in include/linker_lists.h.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Reported-by: Abraham Varricatt <abraham.varricatt@vvdntech.com>
Acked-by: Simon Glass <sjg@chromium.org>
Masahiro Yamada [Wed, 5 Feb 2014 01:52:51 +0000 (10:52 +0900)]
kernel-doc: update kernel-doc related files to Linux v3.13
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Simon Glass <sjg@chromium.org>
Masahiro Yamada [Wed, 5 Feb 2014 01:52:50 +0000 (10:52 +0900)]
kernel-doc: move kernel-doc tools to scripts/
tools/kernel-doc/docproc.c and tools/kernel-doc/kernel-doc are
files imported from Linux Kernel.
They originally resided under scripts/ directory in Linux Kernel.
This commit moves them to the original location.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Simon Glass <sjg@chromium.org>
Masahiro Yamada [Wed, 5 Feb 2014 01:41:27 +0000 (10:41 +0900)]
.gitignore: drop include/asm from ignored file list
Commit
bb02c536 stopped creaing a symbolic link include/asm.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:45 +0000 (17:24 +0900)]
tools/env: cross-compile fw_printenv without setting HOSTCC
fw_printenv is a program which mostly runs on the target Linux.
Before switching to Kbuild, we needed to set HOSTCC at the
command line like this:
make HOSTCC=<your CC cross-compiler> env
Going forward we can cross compile it by specifying CROSS_COMPILE:
make CROSS_COMPILE=<your cross-compiler prefix> env
This looks more natural.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Tested-by: Gerhard Sittig <gsi@denx.de>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:44 +0000 (17:24 +0900)]
kbuild: Do not generate .*.su files at the top directory
Without this workaround, you will see a lot of ".*.su" files
at the top directory after building with a compiler
which supports "-fstack-usage" option.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:43 +0000 (17:24 +0900)]
board: sandburst: delete FORCEBUILD
We had switched to Kbuild, so we do not need to
delete sandburst board files at every build.
U-Boot conventional build system did not check the
update of command line option, -DBUILDUSER.
Kbuild can handle it nicely and re-builds object files
when command line options are changed.
(The file ".*.cmd" stores the information how the file
was generated at the previous build.)
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:42 +0000 (17:24 +0900)]
kbuild: check clean source and generate Makefile for out-of-tree build
For out-of-tree build
- Check if the source tree is clean
- Create a Makefile in the output directory
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:41 +0000 (17:24 +0900)]
kbuild: support simultaneous board configuration and "make all"
This commit fixes two problems:
[1] We could not do board configuration and "make all"
in one command line.
For example, the following did not work as we expect:
$ make sandbox_config all
Configuring for sandbox board...
make: Nothing to be done for `all'.
[2] mixed-target build did not work with -j option
For example, the following did not work:
$ make -j8 sandbox_config u-boot
Makefile:481: *** "System not configured - see README". Stop.
make: *** [u-boot] Error 2
make: *** Waiting for unfinished jobs....
Configuring for sandbox board...
Going forward, we can do
$ make -j8 sandbox_config all
This is the same as
$ make sandbox_config
$ make -j8
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:40 +0000 (17:24 +0900)]
kbuild: use scripts/Makefile.clean
This commit refactors cleaning targets such as
clean, clobber, mrpropper, distclean
with scripts/Makefile.clean.
By using scripts/Makefile.clean, we can recursively descend
into subdirectories and delete generated files there.
We do not need add a big list of generated files
to the "clean" target.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:39 +0000 (17:24 +0900)]
Makefile: refactor tools-all targets
- Move "easylogo", "gdb" tagets to tools/Makefile
- Delete "gdbtools" target (same as "gdb")
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:38 +0000 (17:24 +0900)]
Makefile: Do not pass MTD_VERSION from the top Makefile
$(MTD_VERSION) is used in tools/env/Makefile
If you specify a variable at a command line like:
$ make MTD_VERSION=old env
or specify it thru an envrionment variable like:
$ export MTD_VERSION=old
$ make env
it is inherited to the sub-make too.
We do not need to pass it from the top Makefile explicitely.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:37 +0000 (17:24 +0900)]
kbuild: refactor Makefile and spl/Makefile more
This commit refactors rules of directory descending
and defines u-boot-dirs and u-boot-all-dirs.
(We will need u-boot-all-dirs when using
scripts/Makefile.clean)
Additionally, rename LIBS-y to libs-y.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:36 +0000 (17:24 +0900)]
examples: move api/ and standalone/ entry to examples/Makefile
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:35 +0000 (17:24 +0900)]
kbuild: change the top Makefile to more Kbuild-ish structure
This commit changes the top Makefile to handle various targets
nicely.
Make targets are divided into four categories:
- mixed-targets
We can call a configuration target and build targets
at one command line like follows:
$ make <board_name>_config u-boot
They are handled one by one.
- config targets
<board_name>_config
- no-dot-config-targets
Targets we can run without board configuration such as
clean, mrproper, distclean, TAGS, %docs, etc.
- build targets
The other target which need board configuration.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:34 +0000 (17:24 +0900)]
Makefile: remove a cleaning target "tidy"
Before this commit, "make tidy" did
"make clean" + delete "*.depend*" files.
But, we do not have "*.depend*" files any more,
which means "make tidy" is the same as "make clean".
This commit removes the redandant target "tidy".
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:33 +0000 (17:24 +0900)]
kbuild: generate {spl, tpl}-autoconf.mk only when it is necessary
Before this commit, {spl,tpl}-autoconf.mk was always generated
at the top Makefile even if SPL(TPL) build was not selected.
This commit moves the build rule of {spl,tpl}-autoconf.mk
from the top Makefile to spl/Makefile.
It prevents unnecessary {spl,tpl}-autoconf.mk from being
generated.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:32 +0000 (17:24 +0900)]
kbuild: move include directives of board configuration files
This commit changes the location of include directives
of board configuration files.
The purpose of this change is:
- Slim down $(TOPDIR)/config.mk
- Prevent $(TOPDIR)/Makefile from including the same
configuration file twice
- Do not include include/config.mk multiple times
because ARCH, CPU, BOARD, VENDOR, SOC are exported
Before this commit:
- include/autoconf.mk was included from $(TOPDIR)/Makefile
and $(TOPDIR)/config.mk
(This means $(TOPDIR)/Makefile included include/autoconf.mk twice)
- include/{spl,tpl}-autoconf.mk was included from $(TOPDIR)/config.mk
- include/config.mk was included from $(TOPDIR)/Makefile
and $(TOPDIR)/config.mk
(This means $(TOPDIR)/Makefile included include/config.mk twice)
After this commit:
- include/autoconf.mk is included from $(TOPDIR)/Makefile
and $(TOPDIR)/scripts/Makefile.build
- include/{spl,tpl}-autoconf.mk is included from $(TOPDIR)/spl/Makefile
and $(TOPDIR)/scripts/Makefile.build
- include/config.mk is included from $(TOPDIR)/config.mk and
$(TOPDIR)/spl/Makefile
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:31 +0000 (17:24 +0900)]
kbuild: convert some make rules to Kbuild style
We can get Kbuild-ish log style like this:
GEN include/autoconf.mk
GEN include/autoconf.mk.dep
We do not need XECHO any more.
And also change checkstack target like Linux Kernel.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:30 +0000 (17:24 +0900)]
kbuild: move some lines to more suitable place
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:29 +0000 (17:24 +0900)]
kbuild: delete temporary build scripts
We had switched to Kbuild.
We do not need old build scripts any more.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:28 +0000 (17:24 +0900)]
kbuild: use Linux Kernel build scripts
Now we are ready to switch over to real Kbuild.
This commit disables temporary scripts:
scripts/{Makefile.build.tmp, Makefile.host.tmp}
and enables real Kbuild scripts:
scripts/{Makefile.build,Makefile.host,Makefile.lib}.
This switch is triggered by the line in scripts/Kbuild.include
-build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build.tmp obj
+build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build obj
We need to adjust some build scripts for U-Boot.
But smaller amount of modification is preferable.
Additionally, we need to fix compiler flags which are
locally added or removed.
In Kbuild, it is not allowed to change CFLAGS locally.
Instead, ccflags-y, asflags-y, cppflags-y,
CFLAGS_$(basetarget).o, CFLAGS_REMOVE_$(basetarget).o
are prepared for that purpose.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Tested-by: Gerhard Sittig <gsi@denx.de>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:27 +0000 (17:24 +0900)]
kbuild: import more build scripts from Linux v3.13 tag
This commit imports build scripts from Linux Kernel v3.13
as they are.
I know they include some trailing spaces
but I am intentionally keeping them untouched.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:26 +0000 (17:24 +0900)]
Makefile: rename scripts/Makefile.build to scripts/Makefile.build.tmp
Some build scripts including scripts/Makefile.build
will be imported from Linux Kernel in the next commit.
We need to adjust them for U-Boot in the following commits.
To make it easier for reviewers to track the modification,
this commit renames scripts/Makefile.build to
scripts/Makefile.build.tmp beforehand.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:25 +0000 (17:24 +0900)]
kbuild: add dummy obj-y to create built-in.o
We are going to switch over to Kbuild in upcoming commits.
Each makefile must have non-empty obj- or obj-y
to generate built-in.o on Kbuild.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:24 +0000 (17:24 +0900)]
kbuild: change out-of-tree build
This commit changes the working directory
where the build process occurs.
Before this commit, build process occurred under the source
tree for both in-tree and out-of-tree build.
That's why we needed to add $(obj) prefix to all generated
files in makefiles like follows:
$(obj)u-boot.bin: $(obj)u-boot
Here, $(obj) is empty for in-tree build, whereas it points
to the output directory for out-of-tree build.
And our old build system changes the current working directory
with "make -C <sub-dir>" syntax when descending into the
sub-directories.
On the other hand, Kbuild uses a different idea
to handle out-of-tree build and directory descending.
The build process of Kbuild always occurs under the output tree.
When "O=dir/to/store/output/files" is given, the build system
changes the current working directory to that directory and
restarts the make.
Kbuild uses "make -f $(srctree)/scripts/Makefile.build obj=<sub-dir>"
syntax for descending into sub-directories.
(We can write it like "make $(obj)=<sub-dir>" with a shorthand.)
This means the current working directory is always the top
of the output directory.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Tested-by: Gerhard Sittig <gsi@denx.de>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:23 +0000 (17:24 +0900)]
Makefile: move some flags to examples makefiles
This commit moves some flags which are used
under examples/ directory only.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:22 +0000 (17:24 +0900)]
Makefile: move some flags to spl/Makefile
Some flags are used for SPL (and TPL) build only.
This commit moves them from config.mk to spl/Makefile.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:21 +0000 (17:24 +0900)]
Makefile: move more stuff to top Makefile
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:20 +0000 (17:24 +0900)]
Makefile: refactor include path settings
This commit merges commonly-used header include paths
to UBOOTINCLUDE and NOSTDINC_FLAGS variables, which are placed
at the top Makefile.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:19 +0000 (17:24 +0900)]
Makefile: move more flags to the top Makefile
Before this commit, most of compiler flags were defined in config.mk.
But it is redundant because config.mk is included from all recursive make.
This commit moves many complier flags to the top Makefile
and export them.
And we use new vaiarables to store them:
KBUILD_CPPFLAGS, KBUILD_CFLAGS, KBUILD_AFLAGS.
This will allow us to switch more smoothly to Kbuild.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:18 +0000 (17:24 +0900)]
kbuild: Use Kbuild.include
This commit adjusts some files to use Kbuild.include.
- Use cc-option defined in Kbuild.include
(Delete cc-option in config.mk)
- Use cc-version defined in
(Delete cc-version in config.mk)
- Move binutils-version and dtc-version to Kbuild.include
by analogy to cc-version
This commit also adds srctree (same as SRCTREE)
to use Kbuild scripts.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:17 +0000 (17:24 +0900)]
kbuild: import Kbuild.include from linux v3.13 tag
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:16 +0000 (17:24 +0900)]
Makefile: move BFD_ROOT_DIR to tools/gdb/Makefile
BFD_ROOT_DIR is used only in tools/gdb/Makefile
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:15 +0000 (17:24 +0900)]
Makefile: move some variable definitions to the top Makefile
This commit moves some variable definitions from config.mk
to the top Makefile:
- HOSTCC, HOSTCFLAGS, HOSTLDFLAGS
- AS, LD, CC, CPP, etc.
- SHELL (renamed to CONFIG_SHELL)
I'd like to slim down config.mk file
because it is included from all recursive make.
It is redundant to re-define the variables
every time descending into sub directories.
We should rather define them at the top Makefile
and export them.
U-Boot makefiles has been used "SHELL" variable to store shell
chosen for the user, whereas Linux Kernel uses "CONFIG_SHELL".
We should never use "SHELL" variable because it is
a special variable for GNU Make.
Changing SHELL may cause unpredictable side effects
whose root cause is usually difficult to find.
We should use a generic variable name "CONFIG_SHELL".
We should not use the syntax as follows either:
rm -f $(obj)tools/env/{fw_printenv,fw_setenv}
This depends on "bash" although GNU Make generally
invokes "sh" to run the each rule.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:14 +0000 (17:24 +0900)]
Makfile: move suffix rules to Makefile.build
This commit moves suffix rules from config.mk
to scripts/Makefile.build, which will allow us
to switch smoothly to real Kbuild.
Note1:
post/lib_powerpc/fpu/Makefile has
its own rule to compile C sources.
We need to tweak it to keep the same behavior.
Note2:
There are two file2 with the same name:
arch/arm/lib/crt0.S and eamples/api/crt0.S.
To keep the same build behavior,
examples/api/Makefile also has to be treaked.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:13 +0000 (17:24 +0900)]
nand-spl: Use scripts/Makefile.build
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:12 +0000 (17:24 +0900)]
examples: Use scripts/Makefile.build
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:11 +0000 (17:24 +0900)]
board: samsung: refactor host programs
Some Samsung boards have their own tools under board/samsung/<board>/tools/.
This commit refactor more makefiles with "hostprogs-y".
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:10 +0000 (17:24 +0900)]
tools: convert makefiles to kbuild style
Before this commit, makefiles under tools/ directory
were implemented with their own way.
This commit refactors them by using "hostprogs-y" variable.
Several C sources have been added to wrap other C sources
to simplify Makefile.
For example, tools/crc32.c includes lib/crc32.c
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:09 +0000 (17:24 +0900)]
Makefile.host.tmp: add a new script to refactor tools
This commit adds scripts/Makefile.host.tmp which will
be used in the next commit to convert makefiles
under tools/ directory to Kbuild style.
Notice this script, scripts/Makefile.host.tmp
is temporary.
When switching over to real Kbuild,
it will be replaced with scripts/Makefile.host of Linux Kernel.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Tue, 4 Feb 2014 08:24:08 +0000 (17:24 +0900)]
.gitignore: ingore files generated by Kbuild
Ignore generated files by Kbuild such as .*.cmd, *.order, etc.
Besides above,
- Ignore *.s files
We do not need to ignore with file name, asm-offsets.s
- Do not ignore *.rej (for quilt)
- Ignore backup files, \#*#
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Masahiro Yamada [Wed, 19 Feb 2014 13:10:04 +0000 (22:10 +0900)]
microblaze: remove an empty file arch/microblaze/lib/time.c
Commit
779bf42c moved timer functions from
arch/microblaze/lib/time.c to arch/microblaze/cpu/timer.c.
But the empty file, arch/microblaze/lib/time.c
has been remaining probably for a human mistake.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Dan Murphy [Mon, 3 Feb 2014 12:59:02 +0000 (06:59 -0600)]
ARM: O5/dra7xx: Add SATA boot support
Add the SATA boot support for OMAP5 and dra7xx.
Renamed the omap_sata_init to the common init_sata(int dev)
for commonality in with sata stack.
Added the ROM boot device ID for SATA.
Signed-off-by: Dan Murphy <dmurphy@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tom Rini <trini@ti.com>
Dan Murphy [Mon, 3 Feb 2014 12:59:01 +0000 (06:59 -0600)]
common: spl: Add spl sata boot support
Add spl_sata to read a fat partition from a bootable SATA
drive.
Signed-off-by: Dan Murphy <dmurphy@ti.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
Ian Campbell [Fri, 31 Jan 2014 23:54:44 +0000 (23:54 +0000)]
tools: correct proftool build rule
The incorrect substitution made it rebuild every time.
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Tom Rini <trini@ti.com>
Acked-by: Simon Glass <sjg@chromium.org>
Wolfgang Denk [Fri, 31 Jan 2014 08:28:25 +0000 (09:28 +0100)]
EXT4: Fix number base handling of "ext4write" command
Unlike other commands (for example, "fatwrite"), ext4write would
interpret the "sizebytes" as decimal number. This is not only
inconsistend and unexpected to most users, it also breaks usage
like this:
tftp ${addr} ${name}
ext4write mmc 0:2 ${addr} ${filename} ${filesize}
Change this to use the standard notation of base 16 input format.
See also commit b770e88
WARNING: this is a change to the user interface!!
Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Uma Shankar <uma.shankar@samsung.com>
Cc: Stephen Warren <swarren@nvidia.com>
Heiko Schocher [Thu, 30 Jan 2014 10:02:13 +0000 (11:02 +0100)]
net, phy: atheros ar803x bug
commit
626ee1e3 "phylib: update atheros ar803x phy"
leads in failing ethernet on the pxm2 board.
Calling genphy_config() instead of ar8021_config(),
which seems for ar8021 phys not ar803x phys, make
it working again.
Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Shengzhou Liu <Shengzhou.Liu@freescale.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Masahiro Yamada [Wed, 29 Jan 2014 07:29:16 +0000 (16:29 +0900)]
fdt: rename IMAAGE_OF_BOARD_SETUP to IMAGE_OF_BOARD_SETUP
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Simon Glass <sjg@chromium.org>
Masahiro Yamada [Tue, 28 Jan 2014 09:08:13 +0000 (18:08 +0900)]
config: remove platform CONFIG_SYS_HZ definition part 3
This commit removes platform CONFIG_SYS_HZ definition for the
remainders of part1 (commit
cdb23792) and part2 (commit
f232950f).
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Cc: Rob Herring <rob.herring@calxeda.com>
Masahiro Yamada [Tue, 28 Jan 2014 09:06:12 +0000 (18:06 +0900)]
mini2440.h: Delete remainder of dead board
Commit
af5b9b1f removed mini2440 board support,
but missed to delete include/configs/mini2440.h.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Detlev Zundel [Mon, 20 Jan 2014 15:21:46 +0000 (16:21 +0100)]
doc: README: Correct file name of signature verification documentation
Signed-off-by: Detlev Zundel <dzu@denx.de>
Stephen Warren [Mon, 3 Feb 2014 20:24:24 +0000 (13:24 -0700)]
unit-test: add lots of tests for the Hush 'test' command
I recently re-wrote cmd_test() to add new features. Add a bunch of unit-
tests to make sure I didn't break anything.
Suggested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Stephen Warren [Mon, 3 Feb 2014 20:24:23 +0000 (13:24 -0700)]
unit-test: fix 'env default' invocation
"env default -f" doesn't work any more; replace it with
"env default -f -a". This avoids the following when running the ut
command:
do_ut_cmd: Testing commands
env - environment handling commands
Usage:
env default [-f] -a - [forcibly] reset default environment
...
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Stephen Warren [Mon, 3 Feb 2014 20:21:10 +0000 (13:21 -0700)]
fat: implement exists() for FAT fs
This hooks into the generic "file exists" support added in an earlier
patch, and provides an implementation for the FAT filesystem.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Stephen Warren [Mon, 3 Feb 2014 20:21:09 +0000 (13:21 -0700)]
ext4: implement exists() for ext4fs
This hooks into the generic "file exists" support added in an earlier
patch, and provides an implementation for the ext4 filesystem.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Stephen Warren [Mon, 3 Feb 2014 20:21:08 +0000 (13:21 -0700)]
sandbox: enable CONFIG_CMD_FS_GENERIC
Since the generic ls command no longer segfaults sandbox, enable it.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Stephen Warren [Mon, 3 Feb 2014 20:21:07 +0000 (13:21 -0700)]
sandbox: implement exists() function
This hooks into the generic "file exists" support added in an earlier
patch, and provides an implementation for the sandbox test environment.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Stephen Warren [Mon, 3 Feb 2014 20:21:06 +0000 (13:21 -0700)]
cmd_test: implement -e test for file existence
This is much like a regular shell's -e operator, except that it takes
multiple arguments to specify the device type and device/partition ID
in addition to the usual filename:
if test -e mmc 0:1 /boot/boot.scr; then echo yes; else echo no; fi
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Stephen Warren [Mon, 3 Feb 2014 20:21:05 +0000 (13:21 -0700)]
cmd_test: evaluate to false without any arguments
This emulates bash:
$ if test; then echo yes; else echo no; fi
no
Currently, the code sets expr = -1 in this case, which gets mapped to
0 (true) at the end of do_test() by the logical -> shell exit code
conversion.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Stephen Warren [Mon, 3 Feb 2014 20:21:04 +0000 (13:21 -0700)]
cmd_test: implement ! on sub-expressions
Currently, ! can only be parsed as the first operator in an expression.
This prevents the following from working:
$ if test ! ! 1 -eq 1; then echo yes; else echo no; fi
yes
$ if test ! 1 -eq 2 -a ! 3 -eq 4; then echo yes; else echo no; fi
yes
Fix this by parsing ! like any other operator, and and handling it
similarly to -a and -o.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Stephen Warren [Mon, 3 Feb 2014 20:21:03 +0000 (13:21 -0700)]
cmd_test: check for binary operators before unary
This better mirrors the behaviour of bash, for example:
$ if test -z = -z; then echo yes; else echo no; fi
yes
This is parsed as a string comparison of "-z" and "-z", since the check
for the binary "=" operator occurs first. Without this change, the
command would be parsed as a -z test of "-", followed by a syntax error;
a trailing -z without and operand.
This is a behavioural change, but I believe any commands affected were
previously invalid or bizarely formed.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Stephen Warren [Mon, 3 Feb 2014 20:21:02 +0000 (13:21 -0700)]
cmd_test: use table lookup for parsing
do_test() currently uses strcmp() twice to determine which operator is
present; once to determine how many arguments the operator needs, then
a second time to actually decode the operator and implement it.
Rewrite the code so that a table lookup is used to translate the operator
string to an integer, and use a more efficient switch statement to decode
and execute the operator.
This approach also acts as enablement for the following patches.
This patch should introduce no behavioural change.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Stephen Warren [Mon, 3 Feb 2014 20:21:01 +0000 (13:21 -0700)]
fs: don't pass NULL dev_desc to most filesystems
FAT and ext4 expect that the passed in block device descriptor not be
NULL. This causes problems on sandbox, where get_device_and_partition()
succeeds for the "host" device, yet passes back a NULL device descriptor.
Add special handling for this situation, so that the generic filesystem
commands operate as expected on sandbox.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Stephen Warren [Mon, 3 Feb 2014 20:21:00 +0000 (13:21 -0700)]
fs: implement infrastructure for an 'exists' function
This could be used in scripts such as:
if test -e mmc 0:1 /boot/boot.scr; then
load mmc 0:1 ${scriptaddr} /boot/boot.scr
source ${scriptaddr}
fi
rather than:
if load mmc 0:1 ${scriptaddr} /boot/boot.scr; then
source ${scriptaddr}
fi
This prevents errors being printed by attempts to load non-existent
files, which can be important when checking for a large set of files,
such as /boot/boot.scr.uimg, /boot/boot.scr, /boot/extlinux.conf,
/boot.scr.uimg, /boot.scr, /extlinux.conf.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Stephen Warren [Mon, 3 Feb 2014 20:20:59 +0000 (13:20 -0700)]
fs: fix generic save command implementation
Fix a few issues with the generic "save" shell command, and fs_write()
function.
1) fstypes[].write wasn't filled in for some file-systems, and isn't
checked when used, which could cause crashes/... if executing save
on e.g. fat/ext filesystems.
2) fs_write() requires the length argument to be non-zero, since it needs
to know exactly how many bytes to write. Adjust the comments and code
according to this.
3) fs_write() wasn't prototyped in <fs.h> like other generic functions;
other code should be able to call this directly rather than invoking
the "save" shell command.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Stephen Warren [Sat, 25 Jan 2014 03:46:37 +0000 (20:46 -0700)]
README: document CONFIG_CMD_FS_GENERIC
This enables generic filesystem commands such as load and ls, which
automatically work with multiple filesystem types, without having to
be told which is present, unlike e.g. ext2load, fatls.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Albert ARIBAUD [Wed, 19 Feb 2014 11:04:45 +0000 (12:04 +0100)]
Merge branch 'u-boot-imx/master' into 'u-boot-arm/master'
Andy Ng [Wed, 12 Feb 2014 14:31:15 +0000 (14:31 +0000)]
imx6 SION bit has to be on for the pins that are used as ENET_REF_CLK
Signed-off-by: Andy Ng <andreas2025@gmail.com>
Albert ARIBAUD [Wed, 19 Feb 2014 09:55:58 +0000 (10:55 +0100)]
Merge branch 'u-boot-microblaze/zynq' into 'u-boot-arm/master'
Eric Nelson [Mon, 10 Feb 2014 17:22:41 +0000 (10:22 -0700)]
i.MX6: nitrogen6x: pedantic: BOOT_FROM==spi, not sd
Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Acked-by: Stefano Babic <sbabic@denx.de>
Rajeshwari S Shinde [Fri, 14 Feb 2014 08:22:48 +0000 (13:52 +0530)]
Exynos5250: Remove lowlevelinit
Since we use CONFIG_SKIP_LOWLEVEL_INIT for Exynos baords, we dont need to a
lowlevel_init.S file.
Signed-off-by: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
Acked-by: Simon Glass <sjg@chromium.org>
Siva Durga Prasad Paladugu [Wed, 12 Feb 2014 16:08:35 +0000 (21:38 +0530)]
arm: zynq: correct the argument to lldiv
Typecast the argument with unsigned long long
for proper calculation of lldiv
Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Tue, 14 Jan 2014 13:21:52 +0000 (14:21 +0100)]
zynq: Add support for U-BOOT SPL
SPL is using ps7_init.c/h files which are generated
from design tools which have to be copied to
boards/xilinx/zynq folder before compilation.
BSS section is moved to SDRAM because fat support
requires more space than SRAM size.
Added:
- MMC and QSPI support
- Boot OS directly from SPL
- Enable SPL command
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Tom Rini <trini@ti.com>