summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Bießmann <andreas@biessmann.de>2012-01-31 23:49:05 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2012-03-12 11:33:26 +0100
commit56b3484d1c9437e3945ea86228c874309fbaeaae (patch)
tree7918c88cc841258150649af10cfb84a158b47c5a
parenta144761821089dac6141611ad55320f016f64a5f (diff)
downloadptxdist-56b3484d1c9437e3945ea86228c874309fbaeaae.tar.gz
ptxdist-56b3484d1c9437e3945ea86228c874309fbaeaae.tar.xz
replace umkimage by u-boot sources
This patch removes the forked mkimage u-boot tool and uses the mainline u-boot code to build this tool. Signed-off-by: Andreas Bießmann <andreas@biessmann.de> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--generic/etc/fw_env.config19
-rw-r--r--patches/u-boot-mkimage-2010.03-1/b050c72d52c4e30d5b978ab6758f8dcdbe5c690c-compiler.h-add-uint-typedef.patch26
-rw-r--r--patches/u-boot-mkimage-2010.03-1/series1
-rw-r--r--platforms/hosttools.in2
-rw-r--r--platforms/image_uimage.in8
-rw-r--r--platforms/kernel.in2
-rw-r--r--rules/host-u-boot-tools.in5
-rw-r--r--rules/host-u-boot-tools.make (renamed from rules/host-umkimage.make)18
-rw-r--r--rules/host-umkimage.in8
-rw-r--r--rules/templates/template-kernel-in2
-rw-r--r--rules/u-boot-tools.in36
-rw-r--r--rules/u-boot-tools.make82
-rw-r--r--rules/umkimage.in8
-rw-r--r--rules/umkimage.make66
14 files changed, 157 insertions, 126 deletions
diff --git a/generic/etc/fw_env.config b/generic/etc/fw_env.config
new file mode 100644
index 000000000..bc6890d62
--- /dev/null
+++ b/generic/etc/fw_env.config
@@ -0,0 +1,19 @@
+# Configuration file for fw_(printenv/saveenv) utility.
+# Up to two entries are valid, in this case the redundant
+# environment sector is assumed present.
+# Notice, that the "Number of sectors" is ignored on NOR and SPI-dataflash.
+# Futhermore, if the Flash sector size is ommitted, this value is assumed to
+# be the same as the Environment size, which is valid for NOR and SPI-dataflash
+
+# NOR example
+# MTD device name Device offset Env. size Flash sector size Number of sectors
+#/dev/mtd1 0x0000 0x4000 0x4000
+#/dev/mtd2 0x0000 0x4000 0x4000
+
+# MTD SPI-dataflash example
+# MTD device name Device offset Env. size Flash sector size Number of sectors
+#/dev/mtd5 0x4200 0x4200
+#/dev/mtd6 0x4200 0x4200
+
+# NAND example
+#/dev/mtd0 0x4000 0x4000 0x20000 2
diff --git a/patches/u-boot-mkimage-2010.03-1/b050c72d52c4e30d5b978ab6758f8dcdbe5c690c-compiler.h-add-uint-typedef.patch b/patches/u-boot-mkimage-2010.03-1/b050c72d52c4e30d5b978ab6758f8dcdbe5c690c-compiler.h-add-uint-typedef.patch
deleted file mode 100644
index f20a663a2..000000000
--- a/patches/u-boot-mkimage-2010.03-1/b050c72d52c4e30d5b978ab6758f8dcdbe5c690c-compiler.h-add-uint-typedef.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-commit b050c72d52c4e30d5b978ab6758f8dcdbe5c690c
-Author: Mike Frysinger <vapier@gentoo.org>
-Date: Tue Apr 20 05:49:30 2010 -0400
-
- compiler.h: add uint typedef
-
- Recent crc changes started using the "uint" type in headers that are used
- on the build system. This subsequently broke mingw targets as they do not
- provide such a type. So add this basic typedef to compiler.h so that we
- do not have to worry about this breaking again in the future.
-
- Signed-off-by: Mike Frysinger <vapier@gentoo.org>
- Signed-off-by: Remy Bohmer <linux@bohmer.net>
-
-diff --git a/include/compiler.h b/include/compiler.h
-index 332618e..8030bf6 100644
---- a/include/compiler.h
-+++ b/include/compiler.h
-@@ -55,6 +55,7 @@ typedef unsigned int uint;
- typedef uint8_t __u8;
- typedef uint16_t __u16;
- typedef uint32_t __u32;
-+typedef unsigned int uint;
-
- #define uswap_16(x) \
- ((((x) & 0xff00) >> 8) | \
diff --git a/patches/u-boot-mkimage-2010.03-1/series b/patches/u-boot-mkimage-2010.03-1/series
deleted file mode 100644
index dbf4bb443..000000000
--- a/patches/u-boot-mkimage-2010.03-1/series
+++ /dev/null
@@ -1 +0,0 @@
-b050c72d52c4e30d5b978ab6758f8dcdbe5c690c-compiler.h-add-uint-typedef.patch
diff --git a/platforms/hosttools.in b/platforms/hosttools.in
index 155b30b9f..e9ce0fc26 100644
--- a/platforms/hosttools.in
+++ b/platforms/hosttools.in
@@ -19,7 +19,7 @@ source "rules/host-mtd-utils.in"
source "rules/host-mtools.in"
source "rules/host-openssl.in"
source "rules/host-squashfs-tools.in"
-source "rules/host-umkimage.in"
+source "rules/host-u-boot-tools.in"
source "rules/host-util-linux-ng.in"
source "rules/host-xl-tools.in"
source "rules/host-xz.in"
diff --git a/platforms/image_uimage.in b/platforms/image_uimage.in
index e273726df..77591102f 100644
--- a/platforms/image_uimage.in
+++ b/platforms/image_uimage.in
@@ -3,7 +3,7 @@
menuconfig IMAGE_UIMAGE
bool
prompt "Generate images/uRamdisk "
- select HOST_UMKIMAGE
+ select HOST_U_BOOT_TOOLS
help
The file images/uRamdisk can be loaded separatly by the bootloader U-Boot
@@ -43,16 +43,16 @@ config IMAGE_UIMAGE_NAME
config IMAGE_UIMAGE_EXTRA_ARGS
string
default ""
- prompt "extra arguments passed to umkimage"
+ prompt "extra arguments passed to mkimage"
help
- If needed you can add extra arguments for umkimage here
+ If needed you can add extra arguments for mkimage here
(e.g. -a 0xaa00000 -e 0xaa00000 )
# TODO: See comment in rules/post/images.make for this topic
#config IMAGE_UIMAGE_MULTI
# bool
# prompt "Generate a multi image images/muimage"
-# select HOST_UMKIMAGE
+# select HOST_U_BOOT_TOOLS
# select KERNEL
# select IMAGE_CPIO
# help
diff --git a/platforms/kernel.in b/platforms/kernel.in
index b6012848c..01b31d303 100644
--- a/platforms/kernel.in
+++ b/platforms/kernel.in
@@ -2,7 +2,7 @@ menuconfig KERNEL
bool
default y
select IMAGE_KERNEL
- select HOST_UMKIMAGE if KERNEL_IMAGE_U
+ select HOST_U_BOOT_TOOLS if KERNEL_IMAGE_U
select HOST_XZ if KERNEL_XZ
select HOST_LZOP if KERNEL_LZOP
select CROSS_MODULE_INIT_TOOLS if KERNEL_MODULES
diff --git a/rules/host-u-boot-tools.in b/rules/host-u-boot-tools.in
new file mode 100644
index 000000000..c89c04dac
--- /dev/null
+++ b/rules/host-u-boot-tools.in
@@ -0,0 +1,5 @@
+## SECTION=hosttools_noprompt
+
+config HOST_U_BOOT_TOOLS
+ tristate
+ default ALLYES
diff --git a/rules/host-umkimage.make b/rules/host-u-boot-tools.make
index 6b66e18fd..27543f9b7 100644
--- a/rules/host-umkimage.make
+++ b/rules/host-u-boot-tools.make
@@ -1,7 +1,6 @@
# -*-makefile-*-
#
-# Copyright (C) 2003-2006 by Pengutronix e.K., Hildesheim, Germany
-# (C) 2010 by Michael Olbrich <m.olbrich@pengutronix.de>
+# Copyright (C) 2012 by Andreas Bießmann <andreas@biessmann.de>
#
# See CREDITS for details about who has contributed to this project.
#
@@ -12,26 +11,25 @@
#
# We provide this package
#
-HOST_PACKAGES-$(PTXCONF_HOST_UMKIMAGE) += host-umkimage
+HOST_PACKAGES-$(PTXCONF_HOST_U_BOOT_TOOLS) += host-u-boot-tools
# ----------------------------------------------------------------------------
# Prepare
# ----------------------------------------------------------------------------
-HOST_UMKIMAGE_CONF_TOOL := NO
-HOST_UMKIMAGE_MAKE_OPT := \
- $(HOST_ENV_CPPFLAGS) \
- $(HOST_ENV_LDFLAGS) \
- $(HOST_ENV_CC)
+HOST_U_BOOT_TOOLS_CONF_TOOL := NO
+HOST_U_BOOT_TOOLS_MAKE_OPT := tools
# ----------------------------------------------------------------------------
# Install
# ----------------------------------------------------------------------------
-$(STATEDIR)/host-umkimage.install:
+$(STATEDIR)/host-u-boot-tools.install:
@$(call targetinfo)
- install $(HOST_UMKIMAGE_DIR)/mkimage $(PTXCONF_SYSROOT_HOST)/bin/mkimage
+ install -D $(HOST_U_BOOT_TOOLS_DIR)/tools/mkimage \
+ $(HOST_U_BOOT_TOOLS_PKGDIR)/bin/mkimage
+
@$(call touch)
# vim: syntax=make
diff --git a/rules/host-umkimage.in b/rules/host-umkimage.in
deleted file mode 100644
index b2990b816..000000000
--- a/rules/host-umkimage.in
+++ /dev/null
@@ -1,8 +0,0 @@
-## SECTION=hosttools_noprompt
-
-config HOST_UMKIMAGE
- tristate
- default ALLYES
- help
- umkimage is the U-Boot mkimage command. It is used to create
- boot images for the U-Boot bootloader.
diff --git a/rules/templates/template-kernel-in b/rules/templates/template-kernel-in
index ae1095baa..5019c88c7 100644
--- a/rules/templates/template-kernel-in
+++ b/rules/templates/template-kernel-in
@@ -4,6 +4,6 @@ config KERNEL_@PACKAGE@
tristate
prompt "Linux kernel (@package@)"
select CROSS_MODULE_INIT_TOOLS
- #select HOST_UMKIMAGE
+ #select HOST_U_BOOT_TOOLS
help
FIXME
diff --git a/rules/u-boot-tools.in b/rules/u-boot-tools.in
new file mode 100644
index 000000000..b02ded509
--- /dev/null
+++ b/rules/u-boot-tools.in
@@ -0,0 +1,36 @@
+## SECTION=shell_and_console
+
+menuconfig U_BOOT_TOOLS
+ tristate
+ prompt "u-boot-tools "
+ help
+ some helpful tools from U-Boot project. Most important tool in
+ this section is mkimage to generate U-Boot boot images.
+
+if U_BOOT_TOOLS
+
+config U_BOOT_TOOLS_TOOL_MKIMAGE
+ tristate
+ default y
+ prompt "mkimage"
+ help
+ the U-Boot mkimage command is used to create boot images for
+ the U-Boot bootloader.
+
+config U_BOOT_TOOLS_TOOL_ENV
+ tristate
+ default n
+ prompt "fw_printenv/fw_setenv"
+ help
+ the U-Boot fw_printenv and fw_setenv commands are used to
+ read and write U-Boot environment /dev/mtdX partitions on
+ target through linux.
+ The tool will require a configuration on target named
+ /etc/fw_env.config. See U-Boot source directory tools/env
+ for detailed description.
+ Choosing this option will install a /etc/fw_env.config to
+ target-fs either from your BSP or a generic one which is
+ likely to not work with your board. Please read the
+ comments in that generic configuration.
+
+endif
diff --git a/rules/u-boot-tools.make b/rules/u-boot-tools.make
new file mode 100644
index 000000000..937a49d85
--- /dev/null
+++ b/rules/u-boot-tools.make
@@ -0,0 +1,82 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2012 by Andreas Bießmann <andreas@biessmann.de>
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_U_BOOT_TOOLS) += u-boot-tools
+
+#
+# Paths and names
+#
+U_BOOT_TOOLS_VERSION := 2011.12
+U_BOOT_TOOLS_MD5 := 7f29b9f6da44d6e46e988e7561fd1d5f
+U_BOOT_TOOLS := u-boot-$(U_BOOT_TOOLS_VERSION)
+U_BOOT_TOOLS_SUFFIX := tar.bz2
+U_BOOT_TOOLS_URL := http://ftp.denx.de/pub/u-boot/$(U_BOOT_TOOLS).$(U_BOOT_TOOLS_SUFFIX)
+U_BOOT_TOOLS_SOURCE := $(SRCDIR)/$(U_BOOT_TOOLS).$(U_BOOT_TOOLS_SUFFIX)
+U_BOOT_TOOLS_DIR := $(BUILDDIR)/$(U_BOOT_TOOLS)
+U_BOOT_TOOLS_LICENSE := GPLv2
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+U_BOOT_TOOLS_CONF_TOOL := NO
+U_BOOT_TOOLS_MAKE_OPT := \
+ HOSTCC="$(CROSS_CC)" \
+ HOSTSTRIP="$(CROSS_STRIP)" \
+ tools
+
+ifdef PTXCONF_U_BOOT_TOOLS_TOOL_ENV
+U_BOOT_TOOLS_MAKE_OPT += env
+endif
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/u-boot-tools.install:
+ @$(call targetinfo)
+ install -D $(U_BOOT_TOOLS_DIR)/tools/mkimage \
+ $(U_BOOT_TOOLS_PKGDIR)/usr/bin/mkimage
+ install -D $(U_BOOT_TOOLS_DIR)/tools/env/fw_printenv \
+ $(U_BOOT_TOOLS_PKGDIR)/usr/sbin/fw_printenv
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/u-boot-tools.targetinstall:
+ @$(call targetinfo)
+
+ @$(call install_init, u-boot-tools)
+ @$(call install_fixup, u-boot-tools,PRIORITY,optional)
+ @$(call install_fixup, u-boot-tools,SECTION,base)
+ @$(call install_fixup, u-boot-tools,AUTHOR,\
+ "Andreas Bießmann <andreas@biessmann.de>")
+ @$(call install_fixup, u-boot-tools,DESCRIPTION,missing)
+
+ifdef PTXCONF_U_BOOT_TOOLS_TOOL_MKIMAGE
+ @$(call install_copy, u-boot-tools, 0, 0, 0755, -, /usr/bin/mkimage)
+endif
+
+ifdef PTXCONF_U_BOOT_TOOLS_TOOL_ENV
+ @$(call install_copy, u-boot-tools, 0, 0, 0755, -, /usr/sbin/fw_printenv)
+ @$(call install_link, u-boot-tools, fw_printenv, /usr/sbin/fw_setenv)
+ @$(call install_alternative, u-boot-tools, 0, 0, 0644, /etc/fw_env.config)
+endif
+
+ @$(call install_finish, u-boot-tools)
+
+ @$(call touch)
+
+# vim: syntax=make
diff --git a/rules/umkimage.in b/rules/umkimage.in
deleted file mode 100644
index ffff541ba..000000000
--- a/rules/umkimage.in
+++ /dev/null
@@ -1,8 +0,0 @@
-## SECTION=shell_and_console
-
-config UMKIMAGE
- tristate
- prompt "umkimage"
- help
- umkimage is the U-Boot mkimage command. It is used to create
- boot images for the U-Boot bootloader.
diff --git a/rules/umkimage.make b/rules/umkimage.make
deleted file mode 100644
index ae5f31640..000000000
--- a/rules/umkimage.make
+++ /dev/null
@@ -1,66 +0,0 @@
-# -*-makefile-*-
-#
-# Copyright (C) 2010 by Remy Bohmer <linux@bohmer.net>
-#
-# See CREDITS for details about who has contributed to this project.
-#
-# For further information about the PTXdist project and license conditions
-# see the README file.
-#
-
-#
-# We provide this package
-#
-PACKAGES-$(PTXCONF_UMKIMAGE) += umkimage
-
-#
-# Paths and names
-#
-UMKIMAGE_VERSION := 2010.03-1
-UMKIMAGE_MD5 := 5e7b4ed03e855a4824317fc4e3917dba
-UMKIMAGE := u-boot-mkimage-$(UMKIMAGE_VERSION)
-UMKIMAGE_SUFFIX := tar.gz
-UMKIMAGE_URL := http://www.pengutronix.de/software/ptxdist/temporary-src/$(UMKIMAGE).$(UMKIMAGE_SUFFIX)
-UMKIMAGE_SOURCE := $(SRCDIR)/$(UMKIMAGE).$(UMKIMAGE_SUFFIX)
-UMKIMAGE_DIR := $(BUILDDIR)/$(UMKIMAGE)
-UMKIMAGE_LICENSE := GPLv2
-
-# ----------------------------------------------------------------------------
-# Get
-# ----------------------------------------------------------------------------
-
-$(UMKIMAGE_SOURCE):
- @$(call targetinfo)
- @$(call get, UMKIMAGE)
-
-# ----------------------------------------------------------------------------
-# Prepare
-# ----------------------------------------------------------------------------
-
-UMKIMAGE_CONF_TOOL := NO
-UMKIMAGE_MAKE_OPT := \
- $(CROSS_ENV_CFLAGS) \
- $(CROSS_ENV_CPPFLAGS) \
- $(CROSS_ENV_LDFLAGS) \
- $(CROSS_ENV_CC)
-
-# ----------------------------------------------------------------------------
-# Target-Install
-# ----------------------------------------------------------------------------
-
-$(STATEDIR)/umkimage.targetinstall:
- @$(call targetinfo)
-
- @$(call install_init, umkimage)
- @$(call install_fixup, umkimage,PRIORITY,optional)
- @$(call install_fixup, umkimage,SECTION,base)
- @$(call install_fixup, umkimage,AUTHOR,"Remy Bohmer <linux@bohmer.net>")
- @$(call install_fixup, umkimage,DESCRIPTION,missing)
-
- @$(call install_copy, umkimage, 0, 0, 0755, -, /usr/bin/mkimage)
-
- @$(call install_finish, umkimage)
-
- @$(call touch)
-
-# vim: syntax=make