[U-Boot] [PATCH v3] socfpga: Add a signer that is integrated into mkimage

2014-02-22 Thread Charles Manning
This adds a signer for the socfpga preloader built from SPL.

Instead of using the arcane Altera signing tool, this automatically
creates a signed version of the SPL in the u-boot root directory.

Changes since previous submissions:
* This version is integrated into mkimage, with image type socfpgaimage.
* This version passes checkpatch too :-)

Signed-off-by: Charles Manning 
---
 common/image.c   |1 +
 include/image.h  |1 +
 spl/Makefile |8 ++
 tools/Makefile   |2 +
 tools/mkimage.c  |2 +
 tools/mkimage.h  |1 +
 tools/socfpgaimage.c |  348 ++
 7 files changed, 363 insertions(+)
 create mode 100644 tools/socfpgaimage.c

diff --git a/common/image.c b/common/image.c
index 95498e6..1a2e107 100644
--- a/common/image.c
+++ b/common/image.c
@@ -144,6 +144,7 @@ static const table_entry_t uimage_type[] = {
{   IH_TYPE_INVALID,NULL, "Invalid Image",  },
{   IH_TYPE_MULTI,  "multi",  "Multi-File Image",   },
{   IH_TYPE_OMAPIMAGE,  "omapimage",  "TI OMAP SPL With GP CH",},
+   {   IH_TYPE_SOCFPGAIMAGE,  "socfpgaimage",  "Altera SOCFPGA 
preloader",},
{   IH_TYPE_PBLIMAGE,   "pblimage",   "Freescale PBL Boot Image",},
{   IH_TYPE_RAMDISK,"ramdisk","RAMDisk Image",  },
{   IH_TYPE_SCRIPT, "script", "Script", },
diff --git a/include/image.h b/include/image.h
index f5adc50..95a0bf7 100644
--- a/include/image.h
+++ b/include/image.h
@@ -166,6 +166,7 @@
 #define IH_TYPE_AISIMAGE   13  /* TI Davinci AIS Image */
 #define IH_TYPE_KERNEL_NOLOAD  14  /* OS Kernel Image, can run from any 
load address */
 #define IH_TYPE_PBLIMAGE   15  /* Freescale PBL Boot Image */
+#define IH_TYPE_SOCFPGAIMAGE   16  /* Altera SOCFPGA Preloader Image   
*/
 
 /*
  * Compression Types
diff --git a/spl/Makefile b/spl/Makefile
index c0abe3d..8f061b0 100644
--- a/spl/Makefile
+++ b/spl/Makefile
@@ -144,8 +144,12 @@ $(OBJTREE)/MLO:$(obj)u-boot-spl.bin
 
 $(OBJTREE)/MLO.byteswap: $(obj)u-boot-spl.bin
$(OBJTREE)/tools/mkimage -T omapimage -n byteswap \
+
-a $(CONFIG_SPL_TEXT_BASE) -d $< $@
 
+$(OBJTREE)/socfpga-signed-preloader.bin: $(obj)u-boot-spl.bin
+   $(OBJTREE)/tools/mkimage -T socfpgaimage -d $< $@
+
 ifneq ($(CONFIG_IMX_CONFIG),)
 $(OBJTREE)/SPL:$(obj)u-boot-spl.bin
$(OBJTREE)/tools/mkimage -n  $(SRCTREE)/$(CONFIG_IMX_CONFIG) -T 
imximage \
@@ -154,6 +158,10 @@ endif
 
 ALL-y  += $(obj)u-boot-spl.bin
 
+ifdef CONFIG_SOCFPGA
+ALL-y += $(OBJTREE)/socfpga-signed-preloader.bin
+endif
+
 ifdef CONFIG_SAMSUNG
 ALL-y  += $(obj)$(BOARD)-spl.bin
 endif
diff --git a/tools/Makefile b/tools/Makefile
index 686840a..52f4bfc 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -95,6 +95,7 @@ NOPED_OBJ_FILES-y += kwbimage.o
 NOPED_OBJ_FILES-y += pblimage.o
 NOPED_OBJ_FILES-y += imximage.o
 NOPED_OBJ_FILES-y += omapimage.o
+NOPED_OBJ_FILES-y += socfpgaimage.o
 NOPED_OBJ_FILES-y += mkenvimage.o
 NOPED_OBJ_FILES-y += mkimage.o
 OBJ_FILES-$(CONFIG_SMDK5250) += mkexynosspl.o
@@ -214,6 +215,7 @@ $(obj)mkimage$(SFX):$(obj)aisimage.o \
$(obj)mkimage.o \
$(obj)os_support.o \
$(obj)omapimage.o \
+   $(obj)socfpgaimage.o \
$(obj)sha1.o \
$(obj)ublimage.o \
$(LIBFDT_OBJS)
diff --git a/tools/mkimage.c b/tools/mkimage.c
index e43b09f..87bacc0 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -167,6 +167,8 @@ main (int argc, char **argv)
init_ubl_image_type();
/* Init Davinci AIS support */
init_ais_image_type();
+   /* Init Altera SOCFPGA image generation/list support */
+   init_socfpga_image_type();
 
params.cmdname = *argv;
params.addr = params.ep = 0;
diff --git a/tools/mkimage.h b/tools/mkimage.h
index ea45f5c..eda4832 100644
--- a/tools/mkimage.h
+++ b/tools/mkimage.h
@@ -157,5 +157,6 @@ void init_default_image_type (void);
 void init_fit_image_type (void);
 void init_ubl_image_type(void);
 void init_omap_image_type(void);
+void init_socfpga_image_type(void);
 
 #endif /* _MKIIMAGE_H_ */
diff --git a/tools/socfpgaimage.c b/tools/socfpgaimage.c
new file mode 100644
index 000..9944c78
--- /dev/null
+++ b/tools/socfpgaimage.c
@@ -0,0 +1,348 @@
+/*
+ * Copyright (C) 2014 Charles Manning 
+ *
+ * Use as you see fit.
+ *
+ * Reference doc http://www.altera.com.cn/literature/hb/cyclone-v/cv_5400A.pdf
+ * Note this doc is not entirely accurate.
+ *
+ * "Header" is a structure of the following format.
+ * this is positioned at 0x40.
+ *
+ * Endian is LSB.
+ *
+ * Offset   Length   Usage
+ * ---
+ *  04   Validation word 0x31305341
+ *  41   Version (whatever, zero is fine)
+ *  5 

Re: [U-Boot] [PATCH v3] socfpga: Add a signer that is integrated into mkimage

2014-02-23 Thread Wolfgang Denk
Dear Charles,


would you please start following the established rules?  Especially
after having been asked before to to so?

In http://article.gmane.org/gmane.comp.boot-loaders.u-boot/180904
I asked you:

| Would you please read [1] and especially [2], the section about
| posting modified versions of patches ?
| 
| You are posting multiple patches with the same subject but different
| content.  Do you think we have time to figure out what might be the
| difference?  Please make sure to include a version tagin the Subject:
| line, and to add a history oof changes in the comment section.
| 
| And - do you think that "This one passes checkpatch too :-)" is a
| helpful and descriptive commit message?  [No, it is not.]
| 
| [1] http://www.denx.de/wiki/U-Boot/Patches
| [2] http://www.denx.de/wiki/view/U-Boot/Patches#Sending_updated_patch_versions

In message <1393114104-7301-1-git-send-email-cdhmann...@gmail.com> you wrote:
> This adds a signer for the socfpga preloader built from SPL.
> 
> Instead of using the arcane Altera signing tool, this automatically
> creates a signed version of the SPL in the u-boot root directory.
> 
> Changes since previous submissions:
> * This version is integrated into mkimage, with image type socfpgaimage.
> * This version passes checkpatch too :-)

This belongs into the comment section, i. e. below the "---" line.

> Signed-off-by: Charles Manning 
> ---

This is the place where comments go.

> --- a/common/image.c
> +++ b/common/image.c
> @@ -144,6 +144,7 @@ static const table_entry_t uimage_type[] = {
>   {   IH_TYPE_INVALID,NULL, "Invalid Image",  },
>   {   IH_TYPE_MULTI,  "multi",  "Multi-File Image",   },
>   {   IH_TYPE_OMAPIMAGE,  "omapimage",  "TI OMAP SPL With GP CH",},
> + {   IH_TYPE_SOCFPGAIMAGE,  "socfpgaimage",  "Altera SOCFPGA 
> preloader",},
>   {   IH_TYPE_PBLIMAGE,   "pblimage",   "Freescale PBL Boot Image",},
>   {   IH_TYPE_RAMDISK,"ramdisk","RAMDisk Image",  },
>   {   IH_TYPE_SCRIPT, "script", "Script", },

I asked before:

| Please always keep such lists sorted.

Why do you ignore review comments?


> +++ b/spl/Makefile
> @@ -144,8 +144,12 @@ $(OBJTREE)/MLO:  $(obj)u-boot-spl.bin
>  
>  $(OBJTREE)/MLO.byteswap: $(obj)u-boot-spl.bin
>   $(OBJTREE)/tools/mkimage -T omapimage -n byteswap \
> +
>   -a $(CONFIG_SPL_TEXT_BASE) -d $< $@

Me and Gerhard have asked you about this.  Is this eve working? I
doubt that.  But you ignore all such comments.

> +ifdef CONFIG_SOCFPGA
> +ALL-y += $(OBJTREE)/socfpga-signed-preloader.bin
> +endif

I commented on this - you ignored it.

> @@ -95,6 +95,7 @@ NOPED_OBJ_FILES-y += kwbimage.o
>  NOPED_OBJ_FILES-y += pblimage.o
>  NOPED_OBJ_FILES-y += imximage.o
>  NOPED_OBJ_FILES-y += omapimage.o
> +NOPED_OBJ_FILES-y += socfpgaimage.o
>  NOPED_OBJ_FILES-y += mkenvimage.o
>  NOPED_OBJ_FILES-y += mkimage.o
>  OBJ_FILES-$(CONFIG_SMDK5250) += mkexynosspl.o

I commented on this - you ignored it.

> @@ -214,6 +215,7 @@ $(obj)mkimage$(SFX):  $(obj)aisimage.o \
>   $(obj)mkimage.o \
>   $(obj)os_support.o \
>   $(obj)omapimage.o \
> + $(obj)socfpgaimage.o \
>   $(obj)sha1.o \
>   $(obj)ublimage.o \
>   $(LIBFDT_OBJS)

I commented on this - you ignored it.

...
> + * Reference doc 
> http://www.altera.com.cn/literature/hb/cyclone-v/cv_5400A.pdf
> + * Note this doc is not entirely accurate.

I asked for more information which parts of the doc are not correct.
You ignored this.

> + * This uses the CRC32 calc out of the well known Apple
> + * crc32.c code. Copyright for the CRC code:
> + *
> + * COPYRIGHT (C) 1986 Gary S. Brown.  You may use this program, or
> + *  code or tables extracted from it, as desired without restriction.

Many more ignored review comments folow.

Sorry, but this is not the way how code reviews are supposed to work.

NAK!!!


Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
As in certain cults it is possible to kill a process if you know  its
true name.  -- Ken Thompson and Dennis M. Ritchie
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3] socfpga: Add a signer that is integrated into mkimage

2014-02-23 Thread Charles Manning
Hello All, but mainly a message to Wolfgang and Gerhard.

I would like to apologise for my recent flurry of postings causing some 
confusion and gnashing of teeth.

I only read some of the comments (relating to adding a version number on the 
patch). I had read that far then assumed the patch had already been NAKed at 
that point and did not read further.

I shall now read all the comments from Wolfgang and Gerhard again and resubmit 
another version which I hope is closer to the mark.

Thank you for my ongoing education.

Regards

Charles


___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot