Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system
@ 2014-12-12 23:15 Jörg Krause
  2014-12-12 23:15 ` [Buildroot] [PATCH 01/14] boot/uboot: bump to version 2014.10 Jörg Krause
                   ` (14 more replies)
  0 siblings, 15 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:15 UTC (permalink / raw)
  To: buildroot

This patch series adds to the bootloader Das U-Boot:
  * Update to the latest stable version 2014.10
  * Support for its Kbuild & Kconfig build system
  * Documentation in the manual
  * Fixes and adjustments to the packages infrastructure

J?rg Krause (14):
  boot/uboot: bump to version 2014.10
  boot/uboot: Add support for Kconfig build system
  boot/uboot.mk: Add uboot-menuconfig and friends
  boot/uboot.mk: Remove obsolete CONFIG_NOSOFTFLOAT flag
  boot/uboot.mk: Replace TARGET_CONFIGURE_OPTS with TARGET_MAKE_ENV
  boot/uboot.mk: Replace UBOOT_MAKE_OPTS with UBOOT_MAKE_FLAGS
  boot/uboot.mk: Make make action single-line
  boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL
  boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL_NAME
  boot/uboot/uboot.mk: Strip quotes from BR2_TARGET_UBOOT_SPL_NAME
  docs/manual/make-tips.mk: Add uboot documentation
  docs/manual/customize-configuration.txt: Add uboot documentation
  docs/manual/customize-quick-guide.txt: Add uboot documentation
  docs/manual/configure-other-components.txt: Add uboot documentation

 boot/uboot/Config.in                       | 50 +++++++++++++++++++---------
 boot/uboot/uboot.mk                        | 52 +++++++++++++++++++++++-------
 docs/manual/configure-other-components.txt | 11 +++++++
 docs/manual/customize-configuration.txt    |  8 ++---
 docs/manual/customize-quick-guide.txt      |  2 ++
 docs/manual/make-tips.txt                  |  2 ++
 6 files changed, 94 insertions(+), 31 deletions(-)

-- 
2.1.3

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 01/14] boot/uboot: bump to version 2014.10
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
@ 2014-12-12 23:15 ` Jörg Krause
  2014-12-21 22:41   ` Thomas Petazzoni
  2014-12-12 23:15 ` [Buildroot] [PATCH 02/14] boot/uboot: Add support for Kconfig build system Jörg Krause
                   ` (13 subsequent siblings)
  14 siblings, 1 reply; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:15 UTC (permalink / raw)
  To: buildroot

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/Config.in | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
index 46d1109..f7c4374 100644
--- a/boot/uboot/Config.in
+++ b/boot/uboot/Config.in
@@ -18,7 +18,7 @@ choice
 	  Select the specific U-Boot version you want to use
 
 config BR2_TARGET_UBOOT_LATEST_VERSION
-	bool "2014.07"
+	bool "2014.10"
 
 config BR2_TARGET_UBOOT_CUSTOM_VERSION
 	bool "Custom version"
@@ -63,7 +63,7 @@ endif
 
 config BR2_TARGET_UBOOT_VERSION
 	string
-	default "2014.07"	if BR2_TARGET_UBOOT_LATEST_VERSION
+	default "2014.10"	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
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 02/14] boot/uboot: Add support for Kconfig build system
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
  2014-12-12 23:15 ` [Buildroot] [PATCH 01/14] boot/uboot: bump to version 2014.10 Jörg Krause
@ 2014-12-12 23:15 ` Jörg Krause
  2014-12-12 23:16 ` [Buildroot] [PATCH 03/14] boot/uboot.mk: Add uboot-menuconfig and friends Jörg Krause
                   ` (12 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:15 UTC (permalink / raw)
  To: buildroot

Since version 2014.10 U-Boots uses a Kconfig build system. The boards.cfg
has been converted to Kconfig and is not used anymore. Configuration by
Kconfig is done with a <board>_defconfig file now, which is now the entry
point of the build. Building U-Boot can be done with a default board
defconfig file located in the configs directory of the U-Boot source tree
or with a custom defconfig file.

The Kconfig configuration of the package is based on the Linux and Barebox
package infrastructure.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/Config.in | 32 +++++++++++++++++++++++++-------
 boot/uboot/uboot.mk  | 25 +++++++++++++++++++++----
 2 files changed, 46 insertions(+), 11 deletions(-)

diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
index f7c4374..8a5bebc 100644
--- a/boot/uboot/Config.in
+++ b/boot/uboot/Config.in
@@ -4,13 +4,6 @@ config BR2_TARGET_UBOOT
 	  Build "Das U-Boot" Boot Monitor
 
 if BR2_TARGET_UBOOT
-config BR2_TARGET_UBOOT_BOARDNAME
-	string "U-Boot board name"
-	help
-	  One of U-Boot supported boards to be built.
-	  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.
 
 choice
 	prompt "U-Boot Version"
@@ -80,6 +73,31 @@ config BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR
 	  Most users may leave this empty
 
 choice
+	prompt "U-Boot configuration"
+	default BR2_TARGET_UBOOT_USE_DEFCONFIG
+
+config BR2_TARGET_UBOOT_USE_DEFCONFIG
+	bool "Using a defconfig"
+
+config BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG
+	bool "Using a custom config file"
+endchoice
+
+config BR2_TARGET_UBOOT_BOARD_DEFCONFIG
+	string "Board defconfig"
+	depends on BR2_TARGET_UBOOT_USE_DEFCONFIG
+	help
+	  Name of the board defconfig file to use, without the trailing
+	  _defconfig. The defconfig file is located in the directory
+	  configs in the U-Boot source tree.
+
+config BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE
+	string "Custom defconfig file path"
+	depends on BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG
+	help
+	  Path to the custom board defconfig file.
+
+choice
 	prompt "U-Boot binary format"
 	default BR2_TARGET_UBOOT_FORMAT_BIN
 
diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index 1f8818c..17565e4 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -94,10 +94,18 @@ endef
 UBOOT_POST_PATCH_HOOKS += UBOOT_APPLY_CUSTOM_PATCHES
 endif
 
+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 = $(BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE)
+endif
+
 define UBOOT_CONFIGURE_CMDS
+	$(INSTALL) -m 0644 $(UBOOT_SOURCE_CONFIG) $(UBOOT_DIR)/configs/buildroot_defconfig
 	$(TARGET_CONFIGURE_OPTS) $(UBOOT_CONFIGURE_OPTS) 	\
 		$(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS)		\
-		$(UBOOT_BOARD_NAME)_config
+		buildroot_config
+	rm $(UBOOT_DIR)/configs/buildroot_defconfig
 	@echo >> $(@D)/include/config.h
 	@echo "/* Add a wrapper around the values Buildroot sets. */" >> $(@D)/include/config.h
 	@echo "#ifndef __BR2_ADDED_CONFIG_H" >> $(@D)/include/config.h
@@ -169,10 +177,19 @@ endif
 $(eval $(generic-package))
 
 ifeq ($(BR2_TARGET_UBOOT),y)
-# we NEED a board name unless we're at make source
+# Checks to give errors that the user can understand
 ifeq ($(filter source,$(MAKECMDGOALS)),)
-ifeq ($(UBOOT_BOARD_NAME),)
-$(error NO U-Boot board name set. Check your BR2_TARGET_UBOOT_BOARDNAME setting)
+
+ifeq ($(BR2_TARGET_UBOOT_USE_DEFCONFIG),y)
+ifeq ($(call qstrip,$(BR2_TARGET_UBOOT_BOARD_DEFCONFIG)),)
+$(error No board defconfig name specified, check your BR2_TARGET_UBOOT_BOARD_DEFCONFIG setting)
+endif
+endif
+
+ifeq ($(BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG),y)
+ifeq ($(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE)),)
+$(error No kernel configuration file specified, check your BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE setting)
+endif
 endif
 
 ifeq ($(BR2_TARGET_UBOOT_CUSTOM_VERSION),y)
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 03/14] boot/uboot.mk: Add uboot-menuconfig and friends
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
  2014-12-12 23:15 ` [Buildroot] [PATCH 01/14] boot/uboot: bump to version 2014.10 Jörg Krause
  2014-12-12 23:15 ` [Buildroot] [PATCH 02/14] boot/uboot: Add support for Kconfig build system Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-12 23:16 ` [Buildroot] [PATCH 04/14] boot/uboot.mk: Remove obsolete CONFIG_NOSOFTFLOAT flag Jörg Krause
                   ` (11 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Add the uboot-menuconfig and friends make targets.

uboot-update-config is not supported since U-Boot uses up to three .config 
files (.config, spl/.config, tpl/.config) for board configuration. Furthermore
U-Boot provides its own custom defconfig format.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/uboot.mk | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index 17565e4..72603e0 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -177,6 +177,7 @@ endif
 $(eval $(generic-package))
 
 ifeq ($(BR2_TARGET_UBOOT),y)
+
 # Checks to give errors that the user can understand
 ifeq ($(filter source,$(MAKECMDGOALS)),)
 
@@ -214,4 +215,19 @@ endif # qstrip BR2_TARGET_UBOOT_CUSTOM_CUSTOM_REPO_VERSION
 endif # BR2_TARGET_UBOOT_CUSTOM_GIT || BR2_TARGET_UBOOT_CUSTOM_HG
 
 endif # filter source
+
+uboot-menuconfig uboot-xconfig uboot-gconfig uboot-nconfig: uboot-configure
+	$(TARGET_MAKE_ENV) $(MAKE) $(UBOOT_MAKE_FLAGS) -C $(UBOOT_DIR) $(subst uboot-,,$@)
+	rm -f $(UBOOT_DIR)/.stamp_{built,target_installed,images_installed}
+
+uboot-savedefconfig: uboot-configure
+	$(TARGET_MAKE_ENV) $(MAKE) $(UBOOT_MAKE_FLAGS) -C $(UBOOT_DIR) $(subst uboot-,,$@)
+
+ifeq ($(BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG),y)
+uboot-update-defconfig: uboot-savedefconfig
+	cp -f $(UBOOT_DIR)/defconfig $(BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE)
+else
+uboot-update-defconfig: ;
+endif
+
 endif # BR2_TARGET_UBOOT
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 04/14] boot/uboot.mk: Remove obsolete CONFIG_NOSOFTFLOAT flag
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (2 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 03/14] boot/uboot.mk: Add uboot-menuconfig and friends Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-12 23:16 ` [Buildroot] [PATCH 05/14] boot/uboot.mk: Replace TARGET_CONFIGURE_OPTS with TARGET_MAKE_ENV Jörg Krause
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

This flag seems to be obsolete. There is no piece of code in the U-Boot source
tree referencing CONFIG_NOSOFTFLOAT.

Unfortunatly it's not documented here. Maybe it's about this old workaround:
http://lists.denx.de/pipermail/u-boot/2007-March/020282.html

However, this patch has been declined:
http://www.denx.de/wiki/view/U-Boot/PatchStatus?rev=1.27

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/uboot.mk | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index 72603e0..1af7e52 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -58,7 +58,6 @@ endif
 
 UBOOT_ARCH = $(KERNEL_ARCH)
 
-UBOOT_CONFIGURE_OPTS += CONFIG_NOSOFTFLOAT=1
 UBOOT_MAKE_OPTS += \
 	CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" \
 	ARCH=$(UBOOT_ARCH)
@@ -102,7 +101,7 @@ endif
 
 define UBOOT_CONFIGURE_CMDS
 	$(INSTALL) -m 0644 $(UBOOT_SOURCE_CONFIG) $(UBOOT_DIR)/configs/buildroot_defconfig
-	$(TARGET_CONFIGURE_OPTS) $(UBOOT_CONFIGURE_OPTS) 	\
+	$(TARGET_CONFIGURE_OPTS) 	\
 		$(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS)		\
 		buildroot_config
 	rm $(UBOOT_DIR)/configs/buildroot_defconfig
@@ -122,7 +121,7 @@ define UBOOT_CONFIGURE_CMDS
 endef
 
 define UBOOT_BUILD_CMDS
-	$(TARGET_CONFIGURE_OPTS) $(UBOOT_CONFIGURE_OPTS) 	\
+	$(TARGET_CONFIGURE_OPTS) 	\
 		$(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS) 		\
 		$(UBOOT_MAKE_TARGET)
 endef
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 05/14] boot/uboot.mk: Replace TARGET_CONFIGURE_OPTS with TARGET_MAKE_ENV
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (3 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 04/14] boot/uboot.mk: Remove obsolete CONFIG_NOSOFTFLOAT flag Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-12 23:16 ` [Buildroot] [PATCH 06/14] boot/uboot.mk: Replace UBOOT_MAKE_OPTS with UBOOT_MAKE_FLAGS Jörg Krause
                   ` (9 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Use the make environment variable TARGET_MAKE_ENV for `make <board>_defconfig`
and `make` instead of the configuration options variable TARGET_CONFIGURE_OPTS.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/uboot.mk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index 1af7e52..f1d40a1 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -101,7 +101,7 @@ endif
 
 define UBOOT_CONFIGURE_CMDS
 	$(INSTALL) -m 0644 $(UBOOT_SOURCE_CONFIG) $(UBOOT_DIR)/configs/buildroot_defconfig
-	$(TARGET_CONFIGURE_OPTS) 	\
+	$(TARGET_MAKE_ENV) 	\
 		$(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS)		\
 		buildroot_config
 	rm $(UBOOT_DIR)/configs/buildroot_defconfig
@@ -121,7 +121,7 @@ define UBOOT_CONFIGURE_CMDS
 endef
 
 define UBOOT_BUILD_CMDS
-	$(TARGET_CONFIGURE_OPTS) 	\
+	$(TARGET_MAKE_ENV) 	\
 		$(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS) 		\
 		$(UBOOT_MAKE_TARGET)
 endef
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 06/14] boot/uboot.mk: Replace UBOOT_MAKE_OPTS with UBOOT_MAKE_FLAGS
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (4 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 05/14] boot/uboot.mk: Replace TARGET_CONFIGURE_OPTS with TARGET_MAKE_ENV Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-12 23:16 ` [Buildroot] [PATCH 07/14] boot/uboot.mk: Make make action single-line Jörg Krause
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

This is just cosmetic to be consistent with the other Kconfig packages
which name the variable UBOOT_MAKE_FLAGS instead of UBOOT_MAKE_OPTS.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/uboot.mk | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index f1d40a1..f1307f6 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -58,7 +58,7 @@ endif
 
 UBOOT_ARCH = $(KERNEL_ARCH)
 
-UBOOT_MAKE_OPTS += \
+UBOOT_MAKE_FLAGS += \
 	CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" \
 	ARCH=$(UBOOT_ARCH)
 
@@ -102,7 +102,7 @@ endif
 define UBOOT_CONFIGURE_CMDS
 	$(INSTALL) -m 0644 $(UBOOT_SOURCE_CONFIG) $(UBOOT_DIR)/configs/buildroot_defconfig
 	$(TARGET_MAKE_ENV) 	\
-		$(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS)		\
+		$(MAKE) -C $(@D) $(UBOOT_MAKE_FLAGS)		\
 		buildroot_config
 	rm $(UBOOT_DIR)/configs/buildroot_defconfig
 	@echo >> $(@D)/include/config.h
@@ -122,7 +122,7 @@ endef
 
 define UBOOT_BUILD_CMDS
 	$(TARGET_MAKE_ENV) 	\
-		$(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS) 		\
+		$(MAKE) -C $(@D) $(UBOOT_MAKE_FLAGS) 		\
 		$(UBOOT_MAKE_TARGET)
 endef
 
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 07/14] boot/uboot.mk: Make make action single-line
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (5 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 06/14] boot/uboot.mk: Replace UBOOT_MAKE_OPTS with UBOOT_MAKE_FLAGS Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-12 23:16 ` [Buildroot] [PATCH 08/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL Jörg Krause
                   ` (7 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Cosmetic after removing and renaming of variables.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/uboot.mk | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index f1307f6..c786986 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -101,9 +101,7 @@ endif
 
 define UBOOT_CONFIGURE_CMDS
 	$(INSTALL) -m 0644 $(UBOOT_SOURCE_CONFIG) $(UBOOT_DIR)/configs/buildroot_defconfig
-	$(TARGET_MAKE_ENV) 	\
-		$(MAKE) -C $(@D) $(UBOOT_MAKE_FLAGS)		\
-		buildroot_config
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(UBOOT_MAKE_FLAGS) buildroot_config
 	rm $(UBOOT_DIR)/configs/buildroot_defconfig
 	@echo >> $(@D)/include/config.h
 	@echo "/* Add a wrapper around the values Buildroot sets. */" >> $(@D)/include/config.h
@@ -121,9 +119,7 @@ define UBOOT_CONFIGURE_CMDS
 endef
 
 define UBOOT_BUILD_CMDS
-	$(TARGET_MAKE_ENV) 	\
-		$(MAKE) -C $(@D) $(UBOOT_MAKE_FLAGS) 		\
-		$(UBOOT_MAKE_TARGET)
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(UBOOT_MAKE_FLAGS) $(UBOOT_MAKE_TARGET)
 endef
 
 define UBOOT_BUILD_OMAP_IFT
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 08/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (6 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 07/14] boot/uboot.mk: Make make action single-line Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-21 22:23   ` Thomas Petazzoni
  2014-12-12 23:16 ` [Buildroot] [PATCH 09/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL_NAME Jörg Krause
                   ` (6 subsequent siblings)
  14 siblings, 1 reply; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Building an SPL image depends on the board configuration. This option
does not enable the SPL build, but only copies the built SPL image to
the binary images folder. The current help text is misleading.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/Config.in | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
index 8a5bebc..801ea2d 100644
--- a/boot/uboot/Config.in
+++ b/boot/uboot/Config.in
@@ -232,13 +232,15 @@ config BR2_TARGET_UBOOT_ETH1ADDR
 endif # BR2_TARGET_UBOOT_NETWORK
 
 config BR2_TARGET_UBOOT_SPL
-	bool "U-Boot SPL support"
+	bool "Install U-Boot SPL binary image"
 	depends on !BR2_TARGET_XLOADER
 	help
-	  Enable the U-Boot SPL support. SPL is a first stage
-	  bootloader loaded into internal memory in charge of
-	  enabling and configuring the external memory (DDR),
-	  and load the u-boot program into DDR.
+	  Install the U-Boot SPL binary image to the images
+	  directory.
+	  SPL is a first stage bootloader loaded into internal
+	  memory in charge of enabling and configuring the
+	  external memory (DDR), and load the u-boot program
+	  into DDR.
 
 config BR2_TARGET_UBOOT_SPL_NAME
 	string "U-Boot SPL target name"
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 09/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL_NAME
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (7 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 08/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-21 22:23   ` Thomas Petazzoni
  2014-12-12 23:16 ` [Buildroot] [PATCH 10/14] boot/uboot/uboot.mk: Strip quotes from BR2_TARGET_UBOOT_SPL_NAME Jörg Krause
                   ` (5 subsequent siblings)
  14 siblings, 1 reply; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Point out that the SPL name is an image name.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/Config.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
index 801ea2d..5ba34c0 100644
--- a/boot/uboot/Config.in
+++ b/boot/uboot/Config.in
@@ -243,7 +243,7 @@ config BR2_TARGET_UBOOT_SPL
 	  into DDR.
 
 config BR2_TARGET_UBOOT_SPL_NAME
-	string "U-Boot SPL target name"
+	string "U-Boot SPL binary image name"
 	default "spl/u-boot-spl.bin"
 	depends on BR2_TARGET_UBOOT_SPL
 	help
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 10/14] boot/uboot/uboot.mk: Strip quotes from BR2_TARGET_UBOOT_SPL_NAME
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (8 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 09/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL_NAME Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-21 22:23   ` Thomas Petazzoni
  2014-12-12 23:16 ` [Buildroot] [PATCH 11/14] docs/manual/make-tips.mk: Add uboot documentation Jörg Krause
                   ` (4 subsequent siblings)
  14 siblings, 1 reply; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Remove the quotes from the BR2_TARGET_UBOOT_SPL_NAME variable.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 boot/uboot/uboot.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index c786986..3bd86c2 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -130,7 +130,7 @@ endef
 define UBOOT_INSTALL_IMAGES_CMDS
 	cp -dpf $(@D)/$(UBOOT_BIN) $(BINARIES_DIR)/
 	$(if $(BR2_TARGET_UBOOT_SPL),
-		cp -dpf $(@D)/$(BR2_TARGET_UBOOT_SPL_NAME) $(BINARIES_DIR)/)
+		cp -dpf $(@D)/$(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME)) $(BINARIES_DIR)/)
 	$(if $(BR2_TARGET_UBOOT_ENVIMAGE),
 		$(HOST_DIR)/usr/bin/mkenvimage -s $(BR2_TARGET_UBOOT_ENVIMAGE_SIZE) \
 		$(if $(BR2_TARGET_UBOOT_ENVIMAGE_REDUNDANT),-r) \
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 11/14] docs/manual/make-tips.mk: Add uboot documentation
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (9 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 10/14] boot/uboot/uboot.mk: Strip quotes from BR2_TARGET_UBOOT_SPL_NAME Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-12 23:16 ` [Buildroot] [PATCH 12/14] docs/manual/customize-configuration.txt: " Jörg Krause
                   ` (3 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Based on the Barebox documentation text.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 docs/manual/make-tips.txt | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/docs/manual/make-tips.txt b/docs/manual/make-tips.txt
index 027eddf..952a91a 100644
--- a/docs/manual/make-tips.txt
+++ b/docs/manual/make-tips.txt
@@ -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
+  +uboot+ bootloader is enabled.
 
 .Cleaning:
 
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 12/14] docs/manual/customize-configuration.txt: Add uboot documentation
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (10 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 11/14] docs/manual/make-tips.mk: Add uboot documentation Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-12 23:16 ` [Buildroot] [PATCH 13/14] docs/manual/customize-quick-guide.txt: " Jörg Krause
                   ` (2 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Based on the Barebox documentation text.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 docs/manual/customize-configuration.txt | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/docs/manual/customize-configuration.txt b/docs/manual/customize-configuration.txt
index 5723302..275a87d 100644
--- a/docs/manual/customize-configuration.txt
+++ b/docs/manual/customize-configuration.txt
@@ -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,7 +56,7 @@ 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 uboot 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+.
-
-
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 13/14] docs/manual/customize-quick-guide.txt: Add uboot documentation
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (11 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 12/14] docs/manual/customize-configuration.txt: " Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-12 23:16 ` [Buildroot] [PATCH 14/14] docs/manual/configure-other-components.txt: " Jörg Krause
  2014-12-21 22:40 ` [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Thomas Petazzoni
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Based on the Barebox documentation text.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 docs/manual/customize-quick-guide.txt | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/docs/manual/customize-quick-guide.txt b/docs/manual/customize-quick-guide.txt
index 617cc9a..75bab6f 100644
--- a/docs/manual/customize-quick-guide.txt
+++ b/docs/manual/customize-quick-guide.txt
@@ -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+.
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 14/14] docs/manual/configure-other-components.txt: Add uboot documentation
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (12 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 13/14] docs/manual/customize-quick-guide.txt: " Jörg Krause
@ 2014-12-12 23:16 ` Jörg Krause
  2014-12-21 22:40 ` [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Thomas Petazzoni
  14 siblings, 0 replies; 25+ messages in thread
From: Jörg Krause @ 2014-12-12 23:16 UTC (permalink / raw)
  To: buildroot

Add documentation for U-Boots Kconfig configuration.

Signed-off-by: J?rg Krause <jkrause@posteo.de>
---
 docs/manual/configure-other-components.txt | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/docs/manual/configure-other-components.txt b/docs/manual/configure-other-components.txt
index 514c95f..1aad29c 100644
--- a/docs/manual/configure-other-components.txt
+++ b/docs/manual/configure-other-components.txt
@@ -50,3 +50,14 @@ 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 requires a target board defconfig file.
+This can either be a default <board>_defconfig file from the configs
+directory in the U-Boot source tree specified in
++BR2_TARGET_UBOOT_USE_DEFCONFIG+ or custom defconfig file specified
+in +BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG+.
++
+To make subsequent changes to the configuration, use +make
+uboot-menuconfig+ to open the U-Boot configuration editor.
-- 
2.1.3

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 08/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL
  2014-12-12 23:16 ` [Buildroot] [PATCH 08/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL Jörg Krause
@ 2014-12-21 22:23   ` Thomas Petazzoni
  0 siblings, 0 replies; 25+ messages in thread
From: Thomas Petazzoni @ 2014-12-21 22:23 UTC (permalink / raw)
  To: buildroot

Dear J?rg Krause,

On Sat, 13 Dec 2014 00:16:05 +0100, J?rg Krause wrote:
> Building an SPL image depends on the board configuration. This option
> does not enable the SPL build, but only copies the built SPL image to
> the binary images folder. The current help text is misleading.
> 
> Signed-off-by: J?rg Krause <jkrause@posteo.de>
> ---
>  boot/uboot/Config.in | 12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 09/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL_NAME
  2014-12-12 23:16 ` [Buildroot] [PATCH 09/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL_NAME Jörg Krause
@ 2014-12-21 22:23   ` Thomas Petazzoni
  0 siblings, 0 replies; 25+ messages in thread
From: Thomas Petazzoni @ 2014-12-21 22:23 UTC (permalink / raw)
  To: buildroot

Dear J?rg Krause,

On Sat, 13 Dec 2014 00:16:06 +0100, J?rg Krause wrote:
> Point out that the SPL name is an image name.
> 
> Signed-off-by: J?rg Krause <jkrause@posteo.de>
> ---
>  boot/uboot/Config.in | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 10/14] boot/uboot/uboot.mk: Strip quotes from BR2_TARGET_UBOOT_SPL_NAME
  2014-12-12 23:16 ` [Buildroot] [PATCH 10/14] boot/uboot/uboot.mk: Strip quotes from BR2_TARGET_UBOOT_SPL_NAME Jörg Krause
@ 2014-12-21 22:23   ` Thomas Petazzoni
  0 siblings, 0 replies; 25+ messages in thread
From: Thomas Petazzoni @ 2014-12-21 22:23 UTC (permalink / raw)
  To: buildroot

Dear J?rg Krause,

On Sat, 13 Dec 2014 00:16:07 +0100, J?rg Krause wrote:
> Remove the quotes from the BR2_TARGET_UBOOT_SPL_NAME variable.
> 
> Signed-off-by: J?rg Krause <jkrause@posteo.de>
> ---
>  boot/uboot/uboot.mk | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system
  2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
                   ` (13 preceding siblings ...)
  2014-12-12 23:16 ` [Buildroot] [PATCH 14/14] docs/manual/configure-other-components.txt: " Jörg Krause
@ 2014-12-21 22:40 ` Thomas Petazzoni
  2015-01-02 16:22   ` Thomas Petazzoni
  14 siblings, 1 reply; 25+ messages in thread
From: Thomas Petazzoni @ 2014-12-21 22:40 UTC (permalink / raw)
  To: buildroot

Dear J?rg Krause,

On Sat, 13 Dec 2014 00:15:57 +0100, J?rg Krause wrote:
> This patch series adds to the bootloader Das U-Boot:
>   * Update to the latest stable version 2014.10
>   * Support for its Kbuild & Kconfig build system
>   * Documentation in the manual
>   * Fixes and adjustments to the packages infrastructure

Thanks for working on this, definitely good to see someone tackling the
bump to the first kconfig-enabled U-Boot version.

There is however one big issue with your patch series: I believe it
breaks backward compatibility with U-Boot versions older than 2014.10.
And a *lot* of people are using old versions of U-Boot, to which they
are stuck due to the old version being their only choice for a given
piece of hardware.

So we clearly need to continue to support older versions of U-Boot,
that don't have the kconfig stuff. I just gave a try, and it seems like
the old U-Boot way of configuring/building things apparently still
works with U-Boot 2014.10. So your PATCH 01/14 is probably OK. However
starting from 02/14, I believe you'll be breaking things for U-Boot
versions older than 2014.10.

Can you work on a solution that preserves compatibility?

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 01/14] boot/uboot: bump to version 2014.10
  2014-12-12 23:15 ` [Buildroot] [PATCH 01/14] boot/uboot: bump to version 2014.10 Jörg Krause
@ 2014-12-21 22:41   ` Thomas Petazzoni
  0 siblings, 0 replies; 25+ messages in thread
From: Thomas Petazzoni @ 2014-12-21 22:41 UTC (permalink / raw)
  To: buildroot

Dear J?rg Krause,

On Sat, 13 Dec 2014 00:15:58 +0100, J?rg Krause wrote:
> Signed-off-by: J?rg Krause <jkrause@posteo.de>
> ---
>  boot/uboot/Config.in | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system
  2014-12-21 22:40 ` [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Thomas Petazzoni
@ 2015-01-02 16:22   ` Thomas Petazzoni
  2015-01-05 13:14     ` Jörg Krause
  0 siblings, 1 reply; 25+ messages in thread
From: Thomas Petazzoni @ 2015-01-02 16:22 UTC (permalink / raw)
  To: buildroot

Hello J?rg,

On Sun, 21 Dec 2014 23:40:06 +0100, Thomas Petazzoni wrote:

> Thanks for working on this, definitely good to see someone tackling the
> bump to the first kconfig-enabled U-Boot version.
> 
> There is however one big issue with your patch series: I believe it
> breaks backward compatibility with U-Boot versions older than 2014.10.
> And a *lot* of people are using old versions of U-Boot, to which they
> are stuck due to the old version being their only choice for a given
> piece of hardware.
> 
> So we clearly need to continue to support older versions of U-Boot,
> that don't have the kconfig stuff. I just gave a try, and it seems like
> the old U-Boot way of configuring/building things apparently still
> works with U-Boot 2014.10. So your PATCH 01/14 is probably OK. However
> starting from 02/14, I believe you'll be breaking things for U-Boot
> versions older than 2014.10.
> 
> Can you work on a solution that preserves compatibility?

Since I had no feedback about this (probably due to the winter
holidays), I'll mark those patches as "Changes Requested" in patchwork.
Can you resend a new version that takes into account the need for
backward compatibility with older versions of U-Boot?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system
  2015-01-02 16:22   ` Thomas Petazzoni
@ 2015-01-05 13:14     ` Jörg Krause
  2015-01-05 13:59       ` Thomas Petazzoni
  0 siblings, 1 reply; 25+ messages in thread
From: Jörg Krause @ 2015-01-05 13:14 UTC (permalink / raw)
  To: buildroot

Hello Thomas,

On Fr, 2015-01-02 at 17:22 +0100, Thomas Petazzoni wrote:
> Hello J?rg,
> 
> On Sun, 21 Dec 2014 23:40:06 +0100, Thomas Petazzoni wrote:
> 
> > Thanks for working on this, definitely good to see someone tackling the
> > bump to the first kconfig-enabled U-Boot version.
> > 
> > There is however one big issue with your patch series: I believe it
> > breaks backward compatibility with U-Boot versions older than 2014.10.
> > And a *lot* of people are using old versions of U-Boot, to which they
> > are stuck due to the old version being their only choice for a given
> > piece of hardware.

You're right, it's not backward compatible.

> > 
> > So we clearly need to continue to support older versions of U-Boot,
> > that don't have the kconfig stuff. I just gave a try, and it seems like
> > the old U-Boot way of configuring/building things apparently still
> > works with U-Boot 2014.10. So your PATCH 01/14 is probably OK. However
> > starting from 02/14, I believe you'll be breaking things for U-Boot
> > versions older than 2014.10.

U-Boot 2014.10 still supports the old <board_name>_config build system.
So it should be safe to update the version number only (in case the
board is still supported).

> > 
> > Can you work on a solution that preserves compatibility?
> 
> Since I had no feedback about this (probably due to the winter
> holidays), 

You're right with the winter holidays..

> I'll mark those patches as "Changes Requested" in patchwork.
> Can you resend a new version that takes into account the need for
> backward compatibility with older versions of U-Boot?

I can do this. Do you have any suggestion for providing backward
compatibility? I have a config option for the U-Boot menu in mind, e.g.:
            U-Boot Version (2014.10) --->
        [ ] Use Kconfig build system (NEW)

Best regards
J?rg Krause

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system
  2015-01-05 13:14     ` Jörg Krause
@ 2015-01-05 13:59       ` Thomas Petazzoni
  2015-01-05 16:19         ` Jörg Krause
  0 siblings, 1 reply; 25+ messages in thread
From: Thomas Petazzoni @ 2015-01-05 13:59 UTC (permalink / raw)
  To: buildroot

Dear J?rg Krause,

On Mon, 05 Jan 2015 14:14:00 +0100, J?rg Krause wrote:

> > > So we clearly need to continue to support older versions of U-Boot,
> > > that don't have the kconfig stuff. I just gave a try, and it seems like
> > > the old U-Boot way of configuring/building things apparently still
> > > works with U-Boot 2014.10. So your PATCH 01/14 is probably OK. However
> > > starting from 02/14, I believe you'll be breaking things for U-Boot
> > > versions older than 2014.10.
> 
> U-Boot 2014.10 still supports the old <board_name>_config build system.
> So it should be safe to update the version number only (in case the
> board is still supported).

Yes, that's why I've applied your patch bumping the version to 2014.10:
http://git.buildroot.net/buildroot/commit/boot?id=143119c0ef58b04bd7109bcb7b095ef98cc5311c.

> I can do this. Do you have any suggestion for providing backward
> compatibility? I have a config option for the U-Boot menu in mind, e.g.:
>             U-Boot Version (2014.10) --->
>         [ ] Use Kconfig build system (NEW)

Yes, at this point, I don't really see any other solution than having a
Config.in option: since we support fetching U-Boot from custom
location, only the user can tell if the U-Boot version uses the old
build system, or the new Kconfig/Kbuild based build system.

Of course, if 2014.10 is selected, you can automatically enable the
usage of the Kconfig build system, but for custom
versions/repositories, we have no other solution than having such a new
Config.in option.

Can you work on this idea?

Thanks a lot!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system
  2015-01-05 13:59       ` Thomas Petazzoni
@ 2015-01-05 16:19         ` Jörg Krause
  2015-01-05 16:38           ` Thomas Petazzoni
  0 siblings, 1 reply; 25+ messages in thread
From: Jörg Krause @ 2015-01-05 16:19 UTC (permalink / raw)
  To: buildroot

On Mo, 2015-01-05 at 14:59 +0100, Thomas Petazzoni wrote:
> Dear J?rg Krause,
> 
> On Mon, 05 Jan 2015 14:14:00 +0100, J?rg Krause wrote:
> 
> > > > So we clearly need to continue to support older versions of U-Boot,
> > > > that don't have the kconfig stuff. I just gave a try, and it seems like
> > > > the old U-Boot way of configuring/building things apparently still
> > > > works with U-Boot 2014.10. So your PATCH 01/14 is probably OK. However
> > > > starting from 02/14, I believe you'll be breaking things for U-Boot
> > > > versions older than 2014.10.
> > 
> > U-Boot 2014.10 still supports the old <board_name>_config build system.
> > So it should be safe to update the version number only (in case the
> > board is still supported).
> 
> Yes, that's why I've applied your patch bumping the version to 2014.10:
> http://git.buildroot.net/buildroot/commit/boot?id=143119c0ef58b04bd7109bcb7b095ef98cc5311c.
> 
> > I can do this. Do you have any suggestion for providing backward
> > compatibility? I have a config option for the U-Boot menu in mind, e.g.:
> >             U-Boot Version (2014.10) --->
> >         [ ] Use Kconfig build system (NEW)
> 
> Yes, at this point, I don't really see any other solution than having a
> Config.in option: since we support fetching U-Boot from custom
> location, only the user can tell if the U-Boot version uses the old
> build system, or the new Kconfig/Kbuild based build system.
> 
> Of course, if 2014.10 is selected, you can automatically enable the
> usage of the Kconfig build system, but for custom
> versions/repositories, we have no other solution than having such a new
> Config.in option.
> 
> Can you work on this idea?

Yes, I can. I'll try to get it submitted this week.

J?rg

^ permalink raw reply	[flat|nested] 25+ messages in thread

* [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system
  2015-01-05 16:19         ` Jörg Krause
@ 2015-01-05 16:38           ` Thomas Petazzoni
  0 siblings, 0 replies; 25+ messages in thread
From: Thomas Petazzoni @ 2015-01-05 16:38 UTC (permalink / raw)
  To: buildroot

Dear J?rg Krause,

On Mon, 05 Jan 2015 17:19:34 +0100, J?rg Krause wrote:

> > Of course, if 2014.10 is selected, you can automatically enable the
> > usage of the Kconfig build system, but for custom
> > versions/repositories, we have no other solution than having such a new
> > Config.in option.
> > 
> > Can you work on this idea?
> 
> Yes, I can. I'll try to get it submitted this week.

Great, thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2015-01-05 16:38 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-12 23:15 [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Jörg Krause
2014-12-12 23:15 ` [Buildroot] [PATCH 01/14] boot/uboot: bump to version 2014.10 Jörg Krause
2014-12-21 22:41   ` Thomas Petazzoni
2014-12-12 23:15 ` [Buildroot] [PATCH 02/14] boot/uboot: Add support for Kconfig build system Jörg Krause
2014-12-12 23:16 ` [Buildroot] [PATCH 03/14] boot/uboot.mk: Add uboot-menuconfig and friends Jörg Krause
2014-12-12 23:16 ` [Buildroot] [PATCH 04/14] boot/uboot.mk: Remove obsolete CONFIG_NOSOFTFLOAT flag Jörg Krause
2014-12-12 23:16 ` [Buildroot] [PATCH 05/14] boot/uboot.mk: Replace TARGET_CONFIGURE_OPTS with TARGET_MAKE_ENV Jörg Krause
2014-12-12 23:16 ` [Buildroot] [PATCH 06/14] boot/uboot.mk: Replace UBOOT_MAKE_OPTS with UBOOT_MAKE_FLAGS Jörg Krause
2014-12-12 23:16 ` [Buildroot] [PATCH 07/14] boot/uboot.mk: Make make action single-line Jörg Krause
2014-12-12 23:16 ` [Buildroot] [PATCH 08/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL Jörg Krause
2014-12-21 22:23   ` Thomas Petazzoni
2014-12-12 23:16 ` [Buildroot] [PATCH 09/14] boot/uboot/Config.in: Fix BR2_TARGET_UBOOT_SPL_NAME Jörg Krause
2014-12-21 22:23   ` Thomas Petazzoni
2014-12-12 23:16 ` [Buildroot] [PATCH 10/14] boot/uboot/uboot.mk: Strip quotes from BR2_TARGET_UBOOT_SPL_NAME Jörg Krause
2014-12-21 22:23   ` Thomas Petazzoni
2014-12-12 23:16 ` [Buildroot] [PATCH 11/14] docs/manual/make-tips.mk: Add uboot documentation Jörg Krause
2014-12-12 23:16 ` [Buildroot] [PATCH 12/14] docs/manual/customize-configuration.txt: " Jörg Krause
2014-12-12 23:16 ` [Buildroot] [PATCH 13/14] docs/manual/customize-quick-guide.txt: " Jörg Krause
2014-12-12 23:16 ` [Buildroot] [PATCH 14/14] docs/manual/configure-other-components.txt: " Jörg Krause
2014-12-21 22:40 ` [Buildroot] [PATCH 00/14] Add support for U-Boots Kbuild & Kconfig build system Thomas Petazzoni
2015-01-02 16:22   ` Thomas Petazzoni
2015-01-05 13:14     ` Jörg Krause
2015-01-05 13:59       ` Thomas Petazzoni
2015-01-05 16:19         ` Jörg Krause
2015-01-05 16:38           ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox