15 Jul, 2016
1 commit
-
Add a Kconfig option to enable this feature.
Signed-off-by: Simon Glass
23 May, 2016
1 commit
-
OF_LIST can't remain empty that's why setup it up to default DTB.
If it is empty u-boot.img is created without FDT partition:
For example:
./tools/mkimage -f auto -A arm -T firmware -C none -O u-boot -a
0x8000000 -e 0 -n "U-Boot 2016.05-rc3 ..." -E -b -d u-boot-nodtb.bin u-boot.img
Can't set 'timestamp' property for '' node (FDT_ERR_NOSPACE)
FIT description: Firmware image with one or more FDT blobs
Created: Wed May 4 15:02:52 2016
Image 0 (firmware@1)
Description: U-Boot 2016.05-rc3-00080-gff2e12ae22a8-dirty for zynqmp
board
Created: Wed May 4 15:02:52 2016
Type: Firmware
Compression: uncompressed
Data Size: unavailable
Architecture: ARM
Load Address: 0x08000000
Default Configuration: 'conf@1'
Configuration 0 (conf@1)
Description: unavailable
Kernel: unavailableAnd then image like this doesn't contain description and link to FDT and
can't boot.Signed-off-by: Michal Simek
Reviewed-by: Tom Rini
15 Mar, 2016
2 commits
-
When building a FIT, more than one device tree can be included. The board
can select (at run-time) the one that it wants.Add a Kconfig option to allow the list of devices trees (supported by the
board) to be specified.When using SPL_LOAD_FIT, build u-boot.img in FIT format instead of the
legacy image format. Include all the listed device tree files in this FIT.Signed-off-by: Simon Glass
-
This option has no meaning without OF_CONTROL, so add a dependency.
Signed-off-by: Simon Glass
25 Feb, 2016
1 commit
-
These two properties are necessary for SPL to get clocks from DT.
Note:
For now, only clock look-up by index is supported (clk_get_by_index()
function), so "clock-names" is never parsed in U-Boot. However, we
may want to support something like clk_get_by_name() in the future,
so let's keep "clock-names" as well as "clocks".Signed-off-by: Masahiro Yamada
25 Jan, 2016
1 commit
-
This reverts commit 67871a595873930a0a536b1685e5caac53766701.
Since that commit, out-of-tree cleaning emits lots of warnings.
$ make O=foo clean
make[1]: Entering directory `/home/masahiro/workspace/u-boot/foo'
../dts/../arch/arm/dts/Makefile:209: warning: overriding commands for target `dtbs'
../dts/../arch/arc/dts/Makefile:15: warning: ignoring old commands for target `dtbs'
../dts/../arch/microblaze/dts/Makefile:13: warning: overriding commands for target `dtbs'
../dts/../arch/arm/dts/Makefile:209: warning: ignoring old commands for target `dtbs'
../dts/../arch/mips/dts/Makefile:14: warning: overriding commands for target `dtbs'
../dts/../arch/microblaze/dts/Makefile:13: warning: ignoring old commands for target `dtbs'
../dts/../arch/nios2/dts/Makefile:13: warning: overriding commands for target `dtbs'
../dts/../arch/mips/dts/Makefile:14: warning: ignoring old commands for target `dtbs'
../dts/../arch/powerpc/dts/Makefile:13: warning: overriding commands for target `dtbs'
../dts/../arch/nios2/dts/Makefile:13: warning: ignoring old commands for target `dtbs'
../dts/../arch/sandbox/dts/Makefile:14: warning: overriding commands for target `dtbs'
../dts/../arch/powerpc/dts/Makefile:13: warning: ignoring old commands for target `dtbs'
../dts/../arch/x86/dts/Makefile:22: warning: overriding commands for target `dtbs'
../dts/../arch/sandbox/dts/Makefile:14: warning: ignoring old commands for target `dtbs'
make[1]: Leaving directory `/home/masahiro/workspace/u-boot/foo'Signed-off-by: Masahiro Yamada
23 Jan, 2016
1 commit
-
Use wildcard to clean arch subdirectories, as it is cleaner than
listing all the arch which builds dtb.Signed-off-by: Thomas Chou
Reviewed-by: Bin Meng
17 Jan, 2016
1 commit
-
Prepare sub-folder for device-tree files. Make support for
device-tree on MIPS available in Kbuild/Kconfig.Signed-off-by: Daniel Schwierzeck
Signed-off-by: Purna Chandra Mandal
03 Oct, 2015
1 commit
-
This comment from README.fdt-control did not end up in the Kconfig, which
is what most people will see. Add it with a few tweaks.Signed-off-by: Simon Glass
Acked-by: Michal Simek
17 Sep, 2015
1 commit
-
These properties are necessary to use full-featured pinctrl drivers
in SPL.Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass
31 Aug, 2015
1 commit
-
This should depend on SPL_OF_CONTROL (it is not equivalent to
SPL && OF_CONTROL).Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass
19 Aug, 2015
1 commit
-
As we discussed a couple of times, negative CONFIG options make our
life difficult; CONFIG_SYS_NO_FLASH, CONFIG_SYS_DCACHE_OFF, ...
and here is another one.Now, there are three boards enabling OF_CONTROL on SPL:
- socfpga_arria5_defconfig
- socfpga_cyclone5_defconfig
- socfpga_socrates_defconfigThis commit adds CONFIG_SPL_OF_CONTROL for them and deletes
CONFIG_SPL_DISABLE_OF_CONTROL from the other boards to invert
the logic.Signed-off-by: Masahiro Yamada
Reviewed-by: Tom Rini
Reviewed-by: Simon Glass
22 Jul, 2015
1 commit
-
The SPL device tree size must be minimised to save memory. Only include
properties that are needed by SPL - this is determined by the presence
of the "u-boot,dm-pre-reloc" property. Also remove a predefined list of
unused properties from the nodes that remain.Signed-off-by: Simon Glass
23 Apr, 2015
1 commit
-
Some boards cannot support device tree due to lack of memory. Add an option
to allow these boards to continue to work (and even use driver model).
This is a 'negative' option since most boards are expected to support device
tree in SPL.Signed-off-by: Simon Glass
25 Feb, 2015
1 commit
-
Now CONFIG_SPL_BUILD is not defined in Kconfig, so
"!depends on SPL_BUILD" and "if !SPL_BUILD" are redundant.Signed-off-by: Masahiro Yamada
28 Oct, 2014
1 commit
-
Signed-off-by: Robert P. J. Day
25 Sep, 2014
2 commits
-
This option specifies the default Device Tree used for the run-time
configuration of U-Boot.Signed-off-by: Masahiro Yamada
Cc: Simon Glass
Cc: Stephen Warren
Cc: Minkyu Kang
Cc: Michal Simek -
This commit moves:
CONFIG_OF_CONTROL
CONFIG_OF_SEPARATE
CONFIG_OF_EMBED
CONFIG_OF_HOSTFILEBecause these options are currently not supported for SPL,
the "Device Tree Control" menu does not appear in the SPL
configuration.Note:
zynq-common.h should be adjusted so as not to change the
default value of CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME.Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass
Cc: Stephen Warren
Cc: Minkyu Kang
Acked-by: Michal Simek
19 Jun, 2014
1 commit
-
This seems like a better name. This is a patch-up to the earlier commit
63b4b5b, and also removes a redundant Makefile change.Signed-off-by: Simon Glass
12 Jun, 2014
1 commit
-
In some cases, an externally-built device tree binary is required to be
attached to U-Boot. An example is when using image signing, since in that
case the .dtb file must include the public keys.Add a DEV_TREE_BIN option to the Makefile, and update the documentation.
Usage is something like:
make DEV_TREE_BIN=boot/am335x-boneblack-pubkey.dtb
Signed-off-by: Simon Glass
06 Jun, 2014
1 commit
-
We already have cmd_shipped in scripts/Makefile.lib.
Use it rather than defining a new command cmd_copy.Signed-off-by: Masahiro Yamada
29 Mar, 2014
1 commit
-
"make clean", "make clobber", "make mrproper" and "make distclean"
missed to clean-up some files when they were run with
O= option.Signed-off-by: Masahiro Yamada
Reported-by: Wolfgang Denk
20 Feb, 2014
6 commits
-
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.dtbSigned-off-by: Masahiro Yamada
-
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
-
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
-
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
-
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 objWe 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
Tested-by: Gerhard Sittig -
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-bootHere, $(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 " 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="
syntax for descending into sub-directories.
(We can write it like "make $(obj)=" with a shorthand.)
This means the current working directory is always the top
of the output directory.Signed-off-by: Masahiro Yamada
Tested-by: Gerhard Sittig
13 Dec, 2013
1 commit
-
Some editors such as Emacs can highlight source files.
But their parser algorithm is not perfect.If you use one double-quotation alone, some editor cannot
handle it nicely and mark source lines as a string by mistake.It is preferable to use two double-quotations as a pair.
Signed-off-by: Masahiro Yamada
01 Nov, 2013
1 commit
-
Signed-off-by: Masahiro Yamada
03 Aug, 2013
5 commits
-
This brings U-Boot's cpp invocation into line with the way the Linux
kernel invokes cpp on device trees. Consistency will be useful to ensure
*.dts is portable between the two.-undef also has the added advantage of not defining "linux", so DT
property names such as "linux,keymap" don't get mangled.Signed-off-by: Stephen Warren
Acked-by: Simon Glass -
Recent dtc supports #line directives in the input source code, and even
uses them to generate useful line numbers in any messages it emits. Stop
passing -P to cpp, since there's no need any more.Signed-off-by: Stephen Warren
Acked-by: Simon Glass -
Now that nothing uses the defines ARCH_CPU_DTS, BOARD_DTS, stop defining
them.Signed-off-by: Stephen Warren
Acked-by: Simon Glass -
*.dts may use #include (via cpp) or /include/ (via dtc; assuming a newer
dtc). The choice is up to the creator of the DT. Create a common variable
DTC_INCDIRS that lists the paths searched by include statements, and
update cpp and dtc invocation to use them.For cpp, also specify -nostdinc to ensure the same set of paths is
available to both type of include statement.For dtc, create a new DTC_FLAGS variable to hold all the flags passed to
dtc.Signed-off-by: Stephen Warren
Acked-by: Simon Glass -
The invocation of dtc is significantly more complex that it could be,
in order to work around an issue on old versions of dtc, which print
a message to stdout every time they run.Remove this workaround, on the assumption that people have or will
upgrade to a newer version of dtc. This simplifies the build rule
significantly.Related, split the invocation of cpp and dtc into separate commands
rather than a pipeline, so that if either fail, it is detected. This has
the nice benefit of saving off the result of the pre-processing step,
allowing it to be easily inspected.Assuming a new enough dtc (which an earlier patch enforces), dtc will
parse #line directives in its input file, and generate correct file and
line numbers in error messages, even though cpp is unconditionally
applied to its input file.Signed-off-by: Stephen Warren
Acked-by: Simon Glass
24 Jul, 2013
1 commit
-
Signed-off-by: Wolfgang Denk
[trini: Fixup common/cmd_io.c]
Signed-off-by: Tom Rini
03 Apr, 2013
1 commit
-
This patch provides a support to build the user specified dts.
Signed-off-by: Jagannadha Sutradharudu Teki
Acked-by: Simon Glass
15 Mar, 2013
1 commit
-
dts Makefile has the arch & board include paths added to DTS_CPPFLAGS.
This allows the use of '#include "xyz"' in the dts/dtsi file which
helps the C preprocessor find common dtsi include files.Signed-off-by: Tom Warren
Reviewed-by: Stephen Warren
08 Feb, 2013
1 commit
-
Using "-ansi" preprocessor option will cause dts lines that begin with
'#' to choke the preprocessor. Change to "-x assembler-with-cpp"
instead which is what the kernel uses to preprocess dts files.Signed-off-by: Allen Martin
Reviewed-by: Stephen Warren
Acked-by: Simon Glass
11 Aug, 2012
1 commit
-
Add '-ansi' to DTS_CPPFLAGS to avoid unwanted expansion of dts content
that matches some predefined macros.Example: A number of PowerPC related *.dts files in the kernel define a
property named 'linux,network-index' which (w/o '-ansi') is expanded to
'1,network-index' by the preprocessor because of '#define linux 1.'Signed-off-by: Horst Kronstorfer