boot/uboot: bump to version 2015.04
PATCH 1/4 boot/uboot: bump to version 2015.04
--- boot/uboot/Config.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
boot/uboot/Config.in +2 -2
@@ -18,7 +18,7 @@ choice Select the specific U-Boot version you want to use config BR2_TARGET_UBOOT_LATEST_VERSION - bool "2015.01" + bool "2015.04" config BR2_TARGET_UBOOT_CUSTOM_VERSION bool "Custom version"
@@ -63,7 +63,7 @@ endif config BR2_TARGET_UBOOT_VERSION string - default "2015.01" if BR2_TARGET_UBOOT_LATEST_VERSION + default "2015.04" if BR2_TARGET_UBOOT_LATEST_VERSION default BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE \ if BR2_TARGET_UBOOT_CUSTOM_VERSION default "custom" if BR2_TARGET_UBOOT_CUSTOM_TARBALL
Signature · 1 line
2.3.5
PATCH 2/4 boot/uboot: add hash file
--- boot/uboot/uboot.hash | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 boot/uboot/uboot.hash
boot/uboot/uboot.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally computed: +sha256 0a1a70df586655f527befa6f12e184e96ed61b126e5a567382321b17200f5d60 u-boot-2015.04.tar.bz2
Signature · 1 line
2.3.5
Thomas Petazzoni
AppliedPATCH 2/4 boot/uboot: add hash file
Dear J?rg Krause,
Quoted 5 lines · J?rg Krause
Signed-off-by J?rg Krause <[email protected]>--- boot/uboot/uboot.hash | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 boot/uboot/uboot.hash
Applied, thanks.
Once the hashes become mandatory, we'll have to take care of this package, since the user might download custom tarball / git version, which will not match the hash provided in the hash file. Cc'ed Yann on this.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 2/4 boot/uboot: add hash file
Thomas, J?rg, All,
On 2015-04-19 10:08 +0200, Thomas Petazzoni spake thusly:
Quoted 7 lines · J?rg Krause
Quoted 5 lines
Signed-off-by J?rg Krause <[email protected]>--- boot/uboot/uboot.hash | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 boot/uboot/uboot.hash
Quoted 6 lines
Applied, thanks.
Once the hashes become mandatory, we'll have to take care of this package, since the user might download custom tarball / git version, which will not match the hash provided in the hash file. Cc'ed Yann on this.
OK, I'll consider this for my series making them mandatory. Thanks for the heads-up.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 3/4 boot/uboot: add support for the kconfig infrastructure
In reply to Jörg KrauseWith the patchset "kconfig: turnaround into single .config" [1] U-Boot switched to a single .config file for board configuration. This allows us to use the kconfig-package infrastructure.
For providing backward compatibility with older U-Boot version a user choice between the new Kconfig and the legacy build system is introduced. Kconfig is chosen as the default build system.
This patch supersedes
"boot/uboot: Add support for Kbuild & Kconfig build system" [2]
[1] http://lists.denx.de/pipermail/u-boot/2015-February/205490.html
[2] http://patchwork.ozlabs.org/patch/436498/
--- boot/uboot/Config.in | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ boot/uboot/uboot.mk | 28 ++++++++++++++++++++++++++-- 2 files changed, 74 insertions(+), 2 deletions(-)
boot/uboot/Config.in +48 -0
@@ -4,6 +4,26 @@ config BR2_TARGET_UBOOT Build "Das U-Boot" Boot Monitor if BR2_TARGET_UBOOT +choice + prompt "Build system" + default BR2_TARGET_UBOOT_BUILD_SYSTEM_KBUILD + +config BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY + bool "Legacy" + help + Select this option if you use an old U-Boot (older than 2014.10), + so that we use the old build system. + +config BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG + bool "Kconfig" + default y + help + Select this option if you use a recent U-Boot version (2015.04 or + newer), so that we use the Kconfig build system. + +endchoice + +if BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY config BR2_TARGET_UBOOT_BOARDNAME string "U-Boot board name" help
@@ -11,6 +31,7 @@ config BR2_TARGET_UBOOT_BOARDNAME This will be suffixed with _config to meet U-Boot standard naming. See boards.cfg in U-Boot source code for the list of available configurations. +endif choice prompt "U-Boot Version"
@@ -79,6 +100,33 @@ config BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR Most users may leave this empty +if BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG +choice + prompt "U-Boot configuration" + default BR2_TARGET_UBOOT_USE_DEFCONFIG + +config BR2_TARGET_UBOOT_USE_DEFCONFIG + bool "Using an in-tree board defconfig file" + +config BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG + bool "Using a custom board (def)config file" + +endchoice + +config BR2_TARGET_UBOOT_BOARD_DEFCONFIG + string "Board defconfig" + depends on BR2_TARGET_UBOOT_USE_DEFCONFIG + help + Name of the board for which U-Boot should be built, without + the _defconfig suffix. + +config BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE + string "Configuration file path" + depends on BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG + help + Path to the U-Boot configuration file. +endif + choice prompt "U-Boot binary format" default BR2_TARGET_UBOOT_FORMAT_BIN
boot/uboot/uboot.mk +26 -2
@@ -93,6 +93,7 @@ endef UBOOT_POST_PATCH_HOOKS += UBOOT_APPLY_CUSTOM_PATCHES endif +ifeq ($(BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY),y) define UBOOT_CONFIGURE_CMDS $(TARGET_CONFIGURE_OPTS) \ $(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS) \
@@ -111,6 +112,18 @@ define UBOOT_CONFIGURE_CMDS $(call insert_define,CONFIG_ETH1ADDR,$(BR2_TARGET_UBOOT_ETH1ADDR)) @echo "#endif /* __BR2_ADDED_CONFIG_H */" >> $(@D)/include/config.h endef +else ifeq ($(BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG),y) +ifeq ($(BR2_TARGET_UBOOT_USE_DEFCONFIG),y) +UBOOT_SOURCE_CONFIG = $(UBOOT_DIR)/configs/$(call qstrip,\ + $(BR2_TARGET_UBOOT_BOARD_DEFCONFIG))_defconfig +else ifeq ($(BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG),y) +UBOOT_SOURCE_CONFIG = $(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE)) +endif # BR2_TARGET_UBOOT_USE_DEFCONFIG + +UBOOT_KCONFIG_FILE = $(UBOOT_SOURCE_CONFIG) +UBOOT_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig +UBOOT_KCONFIG_OPTS = $(UBOOT_MAKE_OPTS) +endif # BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY define UBOOT_BUILD_CMDS $(TARGET_CONFIGURE_OPTS) \
@@ -165,14 +178,25 @@ endif UBOOT_DEPENDENCIES += host-uboot-tools endif +ifeq ($(BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY),y) $(eval $(generic-package)) +else ifeq ($(BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG),y) +$(eval $(kconfig-package)) +endif # BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY ifeq ($(BR2_TARGET_UBOOT),y) # we NEED a board name unless we're at make source ifeq ($(filter source,$(MAKECMDGOALS)),) + +ifeq ($(BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY),y) ifeq ($(UBOOT_BOARD_NAME),) -$(error NO U-Boot board name set. Check your BR2_TARGET_UBOOT_BOARDNAME setting) -endif +$(error No U-Boot board name set. Check your BR2_TARGET_UBOOT_BOARDNAME setting) +endif # UBOOT_BOARD_NAME +else ifeq ($(BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG),y) +ifeq ($(UBOOT_SOURCE_CONFIG),) +$(error No U-Boot config file. Check your BR2_TARGET_UBOOT_BOARD_DEFCONFIG or BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE settings) +endif # UBOOT_SOURCE_CONFIG +endif # BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY ifeq ($(BR2_TARGET_UBOOT_CUSTOM_VERSION),y) ifeq ($(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE)),)
Signature · 1 line
2.3.5
PATCH 3/4 boot/uboot: add support for the kconfig infrastructure
Dear J?rg Krause,
Quoted 8 lines · J?rg Krause
With the patchset "kconfig: turnaround into single .config" [1] U-Boot switched to a single .config file for board configuration. This allows us to use the kconfig-package infrastructure.
For providing backward compatibility with older U-Boot version a user choice between the new
Kconfigand the legacy build system is introduced.Kconfigis chosen as the default build system.
Quoted 7 lines
This patch supersedes
"boot/uboot: Add support forKbuild&Kconfigbuild system" [2][1] http://lists.denx.de/pipermail/u-boot/2015-February/205490.html
[2] http://patchwork.ozlabs.org/patch/436498/Signed-off-by J?rg Krause <[email protected]>
This patch does not apply. Can you refresh it on the latest master?
Also, some comments below.
Quoted 4 lines
if
BR2_TARGET_UBOOTboot/uboot/Config.in +3
-0+choice + prompt "Build system" + default BR2_TARGET_UBOOT_BUILD_SYSTEM_KBUILD
boot/uboot/Config.in config BR2_TARGET_UBOOT · line 19
Quoted 10 lines
boot/uboot/Config.in +10
-0+ +config BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY + bool "Legacy" + help + Select this option if you use an old U-Boot (older than 2014.10), + so that we use the old build system. + +config BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG + bool "Kconfig" + default y
Not needed.
boot/uboot/Config.in config BR2_TARGET_UBOOT · line 22
Quoted 3 lines
boot/uboot/Config.in +3
-0+ help + Select this option if you use a recent U-Boot version (2015.04 or + newer), so that we use the Kconfig build system.
Something is unclear: legacy build system is for U-Boot older than 2014.10, and Kconfig is for U-Boot newer than 2015.04. What happens for Buildroot versions in between, such as 2015.01 ?
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 4/4 docs/manual: add U-Boot configuration
In reply to Jörg KrauseAdd the new Kconfig configuration help text for U-Boot to the manual.
--- docs/manual/configure-other-components.txt | 8 ++++++++ docs/manual/customize-configuration.txt | 6 ++++-- docs/manual/customize-quick-guide.txt | 2 ++ docs/manual/make-tips.txt | 2 ++ 4 files changed, 16 insertions(+), 2 deletions(-)
docs/manual/configure-other-components.txt +8 -0
@@ -50,3 +50,11 @@ kernel. The corresponding configuration variables are +BR2_TARGET_BAREBOX_USE_CUSTOM_CONFIG+ and +BR2_TARGET_BAREBOX_USE_DEFCONFIG+. To open the configuration editor, use +make barebox-menuconfig+. + +U-Boot:: ++ +Configuration of U-Boot (version 2015.04 or newer) is done in the same +way as for the Linux kernel. The corresponding configuration variables +are +BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG+ and ++BR2_TARGET_UBOOT_USE_DEFCONFIG+. To open the configuration editor, +use +make uboot-menuconfig+.
docs/manual/customize-configuration.txt +4 -2
@@ -24,8 +24,8 @@ Alternatively, you can copy the file to any other place and rebuild with [[customize-store-package-config]] === Storing the configuration of other components -The configuration files for BusyBox, the Linux kernel, Barebox and -uClibc should be stored as well if changed. For each of these +The configuration files for BusyBox, the Linux kernel, Barebox, U-Boot +and uClibc should be stored as well if changed. For each of these components, a Buildroot configuration option exists to point to an input configuration file, e.g. +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE+. To store their configuration, set these configuration options to a path where you
@@ -56,6 +56,8 @@ configuration files easier. path specified by +BR2_UCLIBC_CONFIG+. * +make barebox-update-defconfig+ saves the barebox configuration to the path specified by +BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE+. +* +make uboot-update-defconfig+ saves the U-Boot configuration to the + path specified by +BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE+. * For at91bootstrap3, no helper exists so you have to copy the config file manually to +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE+.
docs/manual/customize-quick-guide.txt +2 -0
@@ -20,6 +20,7 @@ your project can be skipped. * +BR2_UCLIBC_CONFIG+ * +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE+ * +BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE+ + * +BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE+ 1. Write the configuration files: * +make linux-update-defconfig+ * +make busybox-update-config+
@@ -27,6 +28,7 @@ your project can be skipped. * +cp <output>/build/at91bootstrap3-*/.config board/<manufacturer>/<boardname>/at91bootstrap3.config+ * +make barebox-update-defconfig+ + * +make uboot-update-defconfig+ 1. Create +board/<manufacturer>/<boardname>/rootfs-overlay/+ and fill it with additional files you need on your rootfs, e.g. +board/<manufacturer>/<boardname>/rootfs-overlay/etc/inittab+.
docs/manual/make-tips.txt +2 -0
@@ -28,6 +28,8 @@ some settings in the +.config+ file may hide some targets: selected in the internal toolchain backend; * +barebox-menuconfig+ and +barebox-savedefconfig+ only work when the +barebox+ bootloader is enabled. +* +uboot-menuconfig+ and +uboot-savedefconfig+ only work when the + +U-Boot+ bootloader is enabled. .Cleaning:
Signature · 1 line
2.3.5
Thomas Petazzoni
AppliedPATCH 1/4 boot/uboot: bump to version 2015.04
In reply to Jörg KrauseDear J?rg Krause,
Quoted 4 lines · J?rg Krause
Signed-off-by J?rg Krause <[email protected]>--- boot/uboot/Config.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
Applied, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com