2003-09-22 18:29:35

by Tom Rini

[permalink] [raw]
Subject: [PATCH] Add 'make uImage' for PPC32

Hello. The following BK patch adds support for a 'uImage' target on
PPC32. This will create an image for the U-Boot (and formerly
PPCBoot) firmware. The patch adds a scripts/mkuboot.sh as a wrapper for
the U-Boot mkimage program. We put mkuboot.sh into scripts/ because
U-Boot works on a number of other platforms, and it's likely that they
will add a uImage target at some point. Please apply.

--
Tom Rini
http://gate.crashing.org/~trini/

This BitKeeper patch contains the following changesets:
[email protected]|ChangeSet|20030922180348|00070

# ID: [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
# User: trini
# Host: kernel.crashing.org
# Root: /home/trini/work/kernel/pristine/linux-2.4

# Patch vers: 1.3
# Patch type: REGULAR

== ChangeSet ==
[email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
[email protected]|ChangeSet|20030922093809|51297
D 1.1132 03/09/22 11:03:48-07:00 [email protected] +5 -0
B [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
C
c PPC32: Add a 'uImage' target for U-Boot.
K 70
P ChangeSet
------------------------------------------------

0a0
> [email protected]|scripts/mkuboot.sh|20030922175825|02447|ee487e28b66d94ad [email protected]|scripts/mkuboot.sh|20030922175826|22966
> [email protected]|arch/ppc/boot/utils/mkimage.wrapper|20020313233104|62933|788151aa6df8c6c5 [email protected]|BitKeeper/deleted/.del-mkimage.wrapper~788151aa6df8c6c5|20030922175822|19266
> [email protected]|arch/ppc/Makefile|20020205174025|03176|d061f618f6a9980 [email protected]|arch/ppc/Makefile|20030922180241|27723
> [email protected]|arch/ppc/boot/images/Makefile|20020205182446|07840|d44cf30ff4422294 [email protected]|arch/ppc/boot/images/Makefile|20030922180241|24193
> [email protected]|arch/ppc/boot/Makefile|20020205174025|54177|a1ccc61f9b0e318d [email protected]|arch/ppc/boot/Makefile|20030922180241|43396

== arch/ppc/boot/images/Makefile ==
[email protected]|arch/ppc/boot/images/Makefile|20020205182446|07840|d44cf30ff4422294
[email protected]|arch/ppc/boot/images/Makefile|20020313233113|23561
D 1.4 03/09/22 11:02:41-07:00 [email protected] +1 -1
B [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
C
c On clean, remove uImage.
K 24193
O -rw-rw-r--
P arch/ppc/boot/images/Makefile
------------------------------------------------

D12 1
I12 1
rm -f sImage vmapus vmlinux* miboot* zImage* zvmlinux* uImage

== BitKeeper/deleted/.del-mkimage.wrapper~788151aa6df8c6c5 ==
[email protected]|arch/ppc/boot/utils/mkimage.wrapper|20020313233104|62933|788151aa6df8c6c5
[email protected]|arch/ppc/boot/utils/mkimage.wrapper|20020313233105|23257
D 1.2 03/09/22 10:58:22-07:00 [email protected] +0 -0
B [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
C
c Delete: arch/ppc/boot/utils/mkimage.wrapper
K 19266
O -rw-rw-r--
P BitKeeper/deleted/.del-mkimage.wrapper~788151aa6df8c6c5
------------------------------------------------


== arch/ppc/Makefile ==
[email protected]|arch/ppc/Makefile|20020205174025|03176|d061f618f6a9980
[email protected]|arch/ppc/Makefile|20030828124029|27091
D 1.22 03/09/22 11:02:41-07:00 [email protected] +1 -1
B [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
C
c Add a uImage target.
K 27723
O -rw-rw-r--
P arch/ppc/Makefile
------------------------------------------------

D88 1
I88 1
BOOT_TARGETS = zImage zImage.initrd znetboot znetboot.initrd uImage

== arch/ppc/boot/Makefile ==
[email protected]|arch/ppc/boot/Makefile|20020205174025|54177|a1ccc61f9b0e318d
[email protected]|arch/ppc/boot/Makefile|20030703161526|40255
D 1.11 03/09/22 11:02:41-07:00 [email protected] +8 -6
B [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
C
c Add a uImage target, which replaces the pImage target.
K 43396
O -rw-rw-r--
P arch/ppc/boot/Makefile
------------------------------------------------

D20 1
I20 1
MKIMAGE := $(TOPDIR)/scripts/mkuboot.sh
D64 3
I66 4
# Make an image for PPCBoot / U-Boot.
uImage: images/vmlinux.gz
$(CONFIG_SHELL) $(MKIMAGE) -A ppc -O linux -T kernel \
-C gzip -a 00000000 -e 00000000 \
D68 2
I69 3
-d $< images/vmlinux.UBoot
ln -sf vmlinux.UBoot images/uImage
rm -f ./mkuboot

== scripts/mkuboot.sh ==
New file: scripts/mkuboot.sh
V 4

[email protected]|scripts/mkuboot.sh|20030922175825|02447|ee487e28b66d94ad
D 1.0 03/09/22 10:58:25-07:00 [email protected] +0 -0
B [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
c BitKeeper file /home/trini/work/kernel/pristine/linux-2.4/scripts/mkuboot.sh
K 2447
P scripts/mkuboot.sh
R ee487e28b66d94ad
X 0x821
------------------------------------------------


[email protected]|scripts/mkuboot.sh|20030922175825|02447|ee487e28b66d94ad
D 1.1 03/09/22 10:58:25-07:00 [email protected] +16 -0
B [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
C
F 1
K 22966
O -rw-rw-r--
P scripts/mkuboot.sh
------------------------------------------------

I0 16
#!/bin/bash
\
#
# Build U-Boot image when `mkimage' tool is available.
#
\
MKIMAGE=$(type -path mkimage)
\
if [ -z "${MKIMAGE}" ]; then
# Doesn't exist
echo '"mkimage" command not found - U-Boot images will not be built' >&2
exit 0;
fi
\
# Call "mkimage" to create U-Boot image
${MKIMAGE} "$@"

# Patch checksum=f21abf61


2003-09-22 19:07:27

by Tom Rini

[permalink] [raw]
Subject: Re: [PATCH] Add 'make uImage' for PPC32

On Mon, Sep 22, 2003 at 11:29:28AM -0700, Tom Rini wrote:

> Hello. The following BK patch adds support for a 'uImage' target on
> PPC32. This will create an image for the U-Boot (and formerly
> PPCBoot) firmware. The patch adds a scripts/mkuboot.sh as a wrapper for
> the U-Boot mkimage program. We put mkuboot.sh into scripts/ because
> U-Boot works on a number of other platforms, and it's likely that they
> will add a uImage target at some point. Please apply.

And since I don't use U-Boot I didn't fully test this until I did the
2.6 forward port (coming soon), so the following is also needed to get
all of the dependancies correct. Please apply.

--
Tom Rini
http://gate.crashing.org/~trini/

This BitKeeper patch contains the following changesets:
[email protected]|ChangeSet|20030922190523|00073

# ID: [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
# User: trini
# Host: kernel.crashing.org
# Root: /home/trini/work/kernel/pristine/linux-2.4

# Patch vers: 1.3
# Patch type: REGULAR

== ChangeSet ==
[email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
[email protected]|ChangeSet|20030922180348|00070
D 1.1133 03/09/22 12:05:23-07:00 [email protected] +1 -0
B [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
C
c PPC32: Fix dependancies on uImage.
K 73
P ChangeSet
------------------------------------------------

0a0
> [email protected]|arch/ppc/boot/Makefile|20020205174025|54177|a1ccc61f9b0e318d [email protected]|arch/ppc/boot/Makefile|20030922190513|45691

== arch/ppc/boot/Makefile ==
[email protected]|arch/ppc/boot/Makefile|20020205174025|54177|a1ccc61f9b0e318d
[email protected]|arch/ppc/boot/Makefile|20030922180241|43396
D 1.12 03/09/22 12:05:13-07:00 [email protected] +2 -2
B [email protected]|ChangeSet|20020205173056|16047|c1d11a41ed024864
C
c Make uImage depend on $(MKIMAGE) and don't use $< but
c images/vmlinux.gz instead.
K 45691
O -rw-rw-r--
P arch/ppc/boot/Makefile
------------------------------------------------

D65 1
I65 1
uImage: $(MKIMAGE) images/vmlinux.gz
D69 1
I69 1
-d images/vmlinux.gz images/vmlinux.UBoot

# Patch checksum=258c7251

2003-09-22 20:01:17

by Sam Ravnborg

[permalink] [raw]
Subject: Re: [PATCH] Add 'make uImage' for PPC32

On Mon, Sep 22, 2003 at 12:07:23PM -0700, Tom Rini wrote:
> On Mon, Sep 22, 2003 at 11:29:28AM -0700, Tom Rini wrote:
>
> > Hello. The following BK patch adds support for a 'uImage' target on
> > PPC32. This will create an image for the U-Boot (and formerly
> > PPCBoot) firmware. The patch adds a scripts/mkuboot.sh as a wrapper for
> > the U-Boot mkimage program. We put mkuboot.sh into scripts/ because
> > U-Boot works on a number of other platforms, and it's likely that they
> > will add a uImage target at some point. Please apply.
>
> And since I don't use U-Boot I didn't fully test this until I did the
> 2.6 forward port (coming soon), so the following is also needed to get
> all of the dependancies correct. Please apply.

Could you please send normal looking patches.
I cannot follow the bk style (at least not at this time of the day).

Sam

2003-09-22 20:13:01

by Tom Rini

[permalink] [raw]
Subject: Re: [PATCH] Add 'make uImage' for PPC32

On Mon, Sep 22, 2003 at 10:00:54PM +0200, Sam Ravnborg wrote:
> On Mon, Sep 22, 2003 at 12:07:23PM -0700, Tom Rini wrote:
> > On Mon, Sep 22, 2003 at 11:29:28AM -0700, Tom Rini wrote:
> >
> > > Hello. The following BK patch adds support for a 'uImage' target on
> > > PPC32. This will create an image for the U-Boot (and formerly
> > > PPCBoot) firmware. The patch adds a scripts/mkuboot.sh as a wrapper for
> > > the U-Boot mkimage program. We put mkuboot.sh into scripts/ because
> > > U-Boot works on a number of other platforms, and it's likely that they
> > > will add a uImage target at some point. Please apply.
> >
> > And since I don't use U-Boot I didn't fully test this until I did the
> > 2.6 forward port (coming soon), so the following is also needed to get
> > all of the dependancies correct. Please apply.
>
> Could you please send normal looking patches.
> I cannot follow the bk style (at least not at this time of the day).

Certainly:
# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.1131 -> 1.1133
# arch/ppc/Makefile 1.21 -> 1.22
# arch/ppc/boot/images/Makefile 1.3 -> 1.4
# arch/ppc/boot/Makefile 1.10 -> 1.12
# arch/ppc/boot/utils/mkimage.wrapper 1.1 -> (deleted)
# (new) -> 1.1 scripts/mkuboot.sh
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/09/22 [email protected] 1.1132
# PPC32: Add a 'uImage' target for U-Boot.
# --------------------------------------------
# 03/09/22 [email protected] 1.1133
# PPC32: Fix dependancies on uImage.
# --------------------------------------------
#
diff -Nru a/arch/ppc/Makefile b/arch/ppc/Makefile
--- a/arch/ppc/Makefile Mon Sep 22 13:12:43 2003
+++ b/arch/ppc/Makefile Mon Sep 22 13:12:43 2003
@@ -85,7 +85,7 @@
checks:
@$(MAKE) -C arch/$(ARCH)/kernel checks

-BOOT_TARGETS = zImage zImage.initrd znetboot znetboot.initrd
+BOOT_TARGETS = zImage zImage.initrd znetboot znetboot.initrd uImage

# All the instructions talk about "make bzImage".
bzImage: zImage
diff -Nru a/arch/ppc/boot/Makefile b/arch/ppc/boot/Makefile
--- a/arch/ppc/boot/Makefile Mon Sep 22 13:12:43 2003
+++ b/arch/ppc/boot/Makefile Mon Sep 22 13:12:43 2003
@@ -17,7 +17,7 @@
AFLAGS += -D__BOOTER__
OBJCOPY_ARGS = -O elf32-powerpc

-MKIMAGE := ./utils/mkimage.wrapper
+MKIMAGE := $(TOPDIR)/scripts/mkuboot.sh

lib/zlib.a: lib/zlib.c
$(MAKE) -C lib
@@ -61,12 +61,14 @@
gzip $(GZIP_FLAGS) images/vmapus
endif

-# Make an image for PPCBoot
-pImage: images/vmlinux.gz
- $(MKIMAGE) -A ppc -O linux -T kernel -C gzip -a 00000000 -e 00000000 \
+# Make an image for PPCBoot / U-Boot.
+uImage: $(MKIMAGE) images/vmlinux.gz
+ $(CONFIG_SHELL) $(MKIMAGE) -A ppc -O linux -T kernel \
+ -C gzip -a 00000000 -e 00000000 \
-n 'Linux-$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)' \
- -d $< images/vmlinux.PPCBoot
- ln -sf vmlinux.PPCBoot images/pImage
+ -d images/vmlinux.gz images/vmlinux.UBoot
+ ln -sf vmlinux.UBoot images/uImage
+ rm -f ./mkuboot

# These are subdirs with files not normally rm'ed. -- Tom
clean:
diff -Nru a/arch/ppc/boot/images/Makefile b/arch/ppc/boot/images/Makefile
--- a/arch/ppc/boot/images/Makefile Mon Sep 22 13:12:43 2003
+++ b/arch/ppc/boot/images/Makefile Mon Sep 22 13:12:43 2003
@@ -9,4 +9,4 @@
gzip -vf9 vmlinux

clean:
- rm -f sImage vmapus vmlinux* miboot* zImage* zvmlinux*
+ rm -f sImage vmapus vmlinux* miboot* zImage* zvmlinux* uImage
diff -Nru a/arch/ppc/boot/utils/mkimage.wrapper b/arch/ppc/boot/utils/mkimage.wrapper
--- a/arch/ppc/boot/utils/mkimage.wrapper Mon Sep 22 13:12:43 2003
+++ /dev/null Wed Dec 31 16:00:00 1969
@@ -1,16 +0,0 @@
-#!/bin/bash
-
-#
-# Build PPCBoot image when `mkimage' tool is available.
-#
-
-MKIMAGE=$(type -path mkimage)
-
-if [ -z "${MKIMAGE}" ]; then
- # Doesn't exist
- echo '"mkimage" command not found - PPCBoot images will not be built' >&2
- exit 0;
-fi
-
-# Call "mkimage" to create PPCBoot image
-${MKIMAGE} "$@"
diff -Nru a/scripts/mkuboot.sh b/scripts/mkuboot.sh
--- /dev/null Wed Dec 31 16:00:00 1969
+++ b/scripts/mkuboot.sh Mon Sep 22 13:12:43 2003
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+#
+# Build U-Boot image when `mkimage' tool is available.
+#
+
+MKIMAGE=$(type -path mkimage)
+
+if [ -z "${MKIMAGE}" ]; then
+ # Doesn't exist
+ echo '"mkimage" command not found - U-Boot images will not be built' >&2
+ exit 0;
+fi
+
+# Call "mkimage" to create U-Boot image
+${MKIMAGE} "$@"

--
Tom Rini
http://gate.crashing.org/~trini/

2003-09-23 06:02:06

by Robert Schwebel

[permalink] [raw]
Subject: Re: [PATCH] Add 'make uImage' for PPC32

On Mon, Sep 22, 2003 at 11:29:28AM -0700, Tom Rini wrote:
> Hello. The following BK patch adds support for a 'uImage' target on
> PPC32. This will create an image for the U-Boot (and formerly PPCBoot)
> firmware. The patch adds a scripts/mkuboot.sh as a wrapper for the
> U-Boot mkimage program. We put mkuboot.sh into scripts/ because
> U-Boot works on a number of other platforms, and it's likely that they
> will add a uImage target at some point. Please apply.

Integrating the U-Boot mkimage into the kernel would be a great thing
for us Embedded folks (U-Boot supports most interesting platforms these
days), but I don't like your way to provide a script wrapper around the
"real" mkimage; I'm not sure what the maintainers think about this but I
would prefer a "native" mkuimage.c -> mkuimage.

Robert
--
Dipl.-Ing. Robert Schwebel | http://www.pengutronix.de
Pengutronix - Linux Solutions for Science and Industry
Handelsregister: Amtsgericht Hildesheim, HRA 2686
Hornemannstra?e 12, 31137 Hildesheim, Germany
Phone: +49-5121-28619-0 | Fax: +49-5121-28619-4

2003-09-24 15:37:27

by Tom Rini

[permalink] [raw]
Subject: Re: [PATCH] Add 'make uImage' for PPC32

On Tue, Sep 23, 2003 at 08:01:58AM +0200, Robert Schwebel wrote:
> On Mon, Sep 22, 2003 at 11:29:28AM -0700, Tom Rini wrote:
> > Hello. The following BK patch adds support for a 'uImage' target on
> > PPC32. This will create an image for the U-Boot (and formerly PPCBoot)
> > firmware. The patch adds a scripts/mkuboot.sh as a wrapper for the
> > U-Boot mkimage program. We put mkuboot.sh into scripts/ because
> > U-Boot works on a number of other platforms, and it's likely that they
> > will add a uImage target at some point. Please apply.
>
> Integrating the U-Boot mkimage into the kernel would be a great thing
> for us Embedded folks (U-Boot supports most interesting platforms these
> days), but I don't like your way to provide a script wrapper around the
> "real" mkimage; I'm not sure what the maintainers think about this but I
> would prefer a "native" mkuimage.c -> mkuimage.

>From what I recall this originally (when it was 'pImage') came from
Wolfgang, or at least he was happy with it. If someone else wants to
fight for the inclusion of the true mkimage.c program from U-Boot,
that's fine with me.

--
Tom Rini
http://gate.crashing.org/~trini/