]> git.sur5r.net Git - u-boot/blobdiff - include/image.h
libfdt: Fix error in documentation for fdt_get_alias_namelen()
[u-boot] / include / image.h
index 653cbc6ce377853ebbf3aa3cd899fc02814b0ed6..82e63457f9171a9634060944c1e84c979afb0864 100644 (file)
@@ -85,6 +85,7 @@
 #define IH_OS_RTEMS            18      /* RTEMS        */
 #define IH_OS_ARTOS            19      /* ARTOS        */
 #define IH_OS_UNITY            20      /* Unity OS     */
+#define IH_OS_INTEGRITY                21      /* INTEGRITY    */
 
 /*
  * CPU Architecture Codes (supported by Linux)
 #define IH_COMP_NONE           0       /*  No   Compression Used       */
 #define IH_COMP_GZIP           1       /* gzip  Compression Used       */
 #define IH_COMP_BZIP2          2       /* bzip2 Compression Used       */
+#define IH_COMP_LZMA           3       /* lzma  Compression Used       */
 
 #define IH_MAGIC       0x27051956      /* Image Magic Number           */
 #define IH_NMLEN               32      /* Image Name Length            */
@@ -187,6 +189,13 @@ typedef struct image_header {
        uint8_t         ih_name[IH_NMLEN];      /* Image Name           */
 } image_header_t;
 
+typedef struct image_info {
+       ulong           start, end;             /* start/end of blob */
+       ulong           image_start, image_len; /* start of image within blob, len of image */
+       ulong           load;                   /* load addr for the image */
+       uint8_t         comp, type, os;         /* compression, type of image, os type */
+} image_info_t;
+
 /*
  * Legacy and FIT format headers used by do_bootm() and do_bootm_<os>()
  * routines.
@@ -219,6 +228,7 @@ typedef struct bootm_headers {
 #endif
 #endif
 
+       image_info_t    os;             /* os image info */
        ulong           ep;             /* entry point of OS */
 
        ulong           rd_start, rd_end;/* ramdisk start/end */
@@ -229,7 +239,10 @@ typedef struct bootm_headers {
        ulong           ft_len;         /* length of flat device tree */
 
        int             verify;         /* getenv("verify")[0] != 'n' */
-       struct lmb      *lmb;           /* for memory mgmt */
+       int             valid;          /* set to 1 if we've set values in the header */
+#ifndef USE_HOSTCC
+       struct lmb      lmb;            /* for memory mgmt */
+#endif
 } bootm_headers_t;
 
 /*
@@ -562,6 +575,7 @@ int fit_image_hash_set_value (void *fit, int noffset, uint8_t *value,
                                int value_len);
 
 int fit_image_check_hashes (const void *fit, int noffset);
+int fit_all_image_check_hashes (const void *fit);
 int fit_image_check_os (const void *fit, int noffset, uint8_t os);
 int fit_image_check_arch (const void *fit, int noffset, uint8_t arch);
 int fit_image_check_type (const void *fit, int noffset, uint8_t type);