Commit 555f45d8f916 ("image: Convert the IH_... values to enums")
accidentally changed some IH_ARCH_... values.

Prior to that commit, there existed a gap between IH_ARCH_M68K and
IH_ARCH_MICROBLAZE, like follows.

  #define IH_ARCH_SPARC64         11      /* Sparc 64 Bit */
  #define IH_ARCH_M68K            12      /* M68K         */
  #define IH_ARCH_MICROBLAZE      14      /* MicroBlaze   */
  #define IH_ARCH_NIOS2           15      /* Nios-II      */

The enum conversion broke the compatibility with existing uImage
files.  Reverting 555f45d8f916 will cause build error unfortunately,
so here is a more easy fix.

I dug the git history and figured out the gap was introduced by
commit 1117cbf2adac ("nios: remove nios-32 arch").  So, I revived
IH_ARCH_NIOS just for filling the gap.

I added comments to each enum block.  Once we assign a value to
IH_... it is not allowed to change it.

Signed-off-by: Masahiro Yamada <yamada.masah...@socionext.com>
Reviewed-by: Simon Glass <s...@chromium.org>
---

Changes in v2:
  - Different way to fix the issue
  - Add more comments

 include/image.h | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/include/image.h b/include/image.h
index 2a5b560..734def3 100644
--- a/include/image.h
+++ b/include/image.h
@@ -134,6 +134,9 @@ enum ih_category {
 
 /*
  * Operating System Codes
+ *
+ * The following are exposed to uImage header.
+ * Do not change values for backward compatibility.
  */
 enum {
        IH_OS_INVALID           = 0,    /* Invalid OS   */
@@ -167,6 +170,9 @@ enum {
 
 /*
  * CPU Architecture Codes (supported by Linux)
+ *
+ * The following are exposed to uImage header.
+ * Do not change values for backward compatibility.
  */
 enum {
        IH_ARCH_INVALID         = 0,    /* Invalid CPU  */
@@ -182,6 +188,7 @@ enum {
        IH_ARCH_SPARC,                  /* Sparc        */
        IH_ARCH_SPARC64,                /* Sparc 64 Bit */
        IH_ARCH_M68K,                   /* M68K         */
+       IH_ARCH_NIOS,                   /* Nios-32      */
        IH_ARCH_MICROBLAZE,             /* MicroBlaze   */
        IH_ARCH_NIOS2,                  /* Nios-II      */
        IH_ARCH_BLACKFIN,               /* Blackfin     */
@@ -234,6 +241,9 @@ enum {
  *     U-Boot's command interpreter; this feature is especially
  *     useful when you configure U-Boot to use a real shell (hush)
  *     as command interpreter (=> Shell Scripts).
+ *
+ * The following are exposed to uImage header.
+ * Do not change values for backward compatibility.
  */
 
 enum {
@@ -273,6 +283,9 @@ enum {
 
 /*
  * Compression Types
+ *
+ * The following are exposed to uImage header.
+ * Do not change values for backward compatibility.
  */
 enum {
        IH_COMP_NONE            = 0,    /*  No   Compression Used       */
-- 
1.9.1

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

Reply via email to