1. 02 Jan, 2017 1 commit
  2. 24 Jun, 2016 1 commit
  3. 11 Oct, 2015 1 commit
  4. 27 Jul, 2015 1 commit
    • Paul Kocialkowski's avatar
      Reproducible U-Boot build support, using SOURCE_DATE_EPOCH · f3f431a7
      Paul Kocialkowski authored
      In order to achieve reproducible builds in U-Boot, timestamps that are defined
      at build-time have to be somewhat eliminated. The SOURCE_DATE_EPOCH environment
      variable allows setting a fixed value for those timestamps.
      
      Simply by setting SOURCE_DATE_EPOCH to a fixed value, a number of targets can be
      built reproducibly. This is the case for e.g. sunxi devices.
      
      However, some other devices might need some more tweaks, especially regarding
      the image generation tools.
      Signed-off-by: default avatarPaul Kocialkowski <contact@paulk.fr>
      f3f431a7
  5. 29 Jan, 2015 4 commits
  6. 13 Dec, 2013 2 commits
    • Guilherme Maciel Ferreira's avatar
      Add dumpimage, a tool to extract data from U-Boot images · a804b5ce
      Guilherme Maciel Ferreira authored
      Given a multi-file image created through the mkimage's -d option:
      
        $ mkimage -A x86 -O linux -T multi -n x86 -d vmlinuz:initrd.img:System.map \
        multi.img
      
        Image Name:   x86
        Created:      Thu Jul 25 10:29:13 2013
        Image Type:   Intel x86 Linux Multi-File Image (gzip compressed)
        Data Size:    13722956 Bytes = 13401.32 kB = 13.09 MB
        Load Address: 00000000
        Entry Point:  00000000
        Contents:
           Image 0: 4040128 Bytes = 3945.44 kB = 3.85 MB
           Image 1: 7991719 Bytes = 7804.41 kB = 7.62 MB
           Image 2: 1691092 Bytes = 1651.46 kB = 1.61 MB
      
      It is possible to perform the innverse operation -- extracting any file from
      the image -- by using the dumpimage's -i option:
      
        $ dumpimage -i multi.img -p 2 System.map
      
      Although it's feasible to retrieve "data files" from image through scripting,
      the requirement to embed tools such 'dd', 'awk' and 'sed' for this sole purpose
      is cumbersome and unreliable -- once you must keep track of file sizes inside
      the image. Furthermore, extracting data files using "dumpimage" tool is faster
      than through scripting.
      Signed-off-by: default avatarGuilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>
      Signed-off-by: default avatarSimon Glass <sjg@chromium.org>
      a804b5ce
    • Guilherme Maciel Ferreira's avatar
      tools: moved code common to all image tools to a separated module. · f86ed6a8
      Guilherme Maciel Ferreira authored
      In order to avoid duplicating code and keep only one point of modification,
      the functions, structs and defines useful for "dumpimage" were moved from
      "mkimage" to a common module called "imagetool".
      
      This modification also weakens the coupling between image types (FIT, IMX, MXS,
      and so on) and image tools (mkimage and dumpimage). Any tool may initialize the
      "imagetool" through register_image_tool() function, while the image types
      register themselves within an image tool using the register_image_type()
      function:
      
                                                            +---------------+
                                                     +------|   fit_image   |
       +--------------+          +-----------+       |      +---------------+
       |    mkimage   |--------> |           | <-----+
       +--------------+          |           |              +---------------+
                                 | imagetool | <------------|    imximage   |
       +--------------+          |           |              +---------------+
       |  dumpimage   |--------> |           | <-----+
       +--------------+          +-----------+       |      +---------------+
                                                     +------| default_image |
                                                            +---------------+
      
                register_image_tool()           register_image_type()
      
      Also, the struct "mkimage_params" was renamed to "image_tool_params" to make
      clear its general purpose.
      Signed-off-by: default avatarGuilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>
      Signed-off-by: default avatarSimon Glass <sjg@chromium.org>
      f86ed6a8
  7. 24 Jul, 2013 1 commit
  8. 01 Dec, 2011 1 commit
    • Stephen Warren's avatar
      image: Implement IH_TYPE_KERNEL_NOLOAD · b9b50e89
      Stephen Warren authored
      The legacy uImage format includes an absolute load and entry-point
      address. When bootm operates on a kernel uImage in memory that isn't
      loaded at the address in the image's load address, U-Boot will copy
      the image to its address in the header.
      
      Some kernel images can actually be loaded and used at any arbitrary
      address. An example is an ARM Linux kernel zImage file. To represent
      this capability, IH_TYPE_KERNEL_NOLOAD is implemented, which operates
      just like IH_TYPE_KERNEL, except that the load address header is
      ignored, and U-Boot does not copy the image to its load address, but
      rather uses it in-place.
      
      This is useful when sharing a single (uImage-wrapped) zImage across
      multiple boards with different memory layouts; in this case, a specific
      load address need not be picked when creating the uImage, but instead
      is selected by the board-specific U-Boot environment used to load and
      boot that image.
      
      v2: Rename from IH_TYPE_KERNEL_ANYLOAD to IH_TYPE_KERNEL_NOLOAD.
      Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      b9b50e89
  9. 21 Oct, 2011 1 commit
    • Stephen Warren's avatar
      checkpatch whitespace cleanups · 712fbcf3
      Stephen Warren authored
      This avoids the following checkpatch warning in later patches:
      
      ERROR: "(foo*)" should be "(foo *)"
      ERROR: space required before the open brace '{'
      ERROR: space prohibited before that close parenthesis ')'
      ERROR: spaces required around that '||' (ctx:WxV)
      WARNING: space prohibited between function name and open parenthesis '('
      WARNING: line over 80 characters
      
      This fixes all the white-space warnings/errors in my subsequent patch,
      and within this current patch. A number of other checkpatch warnings
      and errors are still present in this patch itself, but are beyond simple
      whitespace fixes, so are not solved by this patch.
      
      v2: New patch
      Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
      Tested-by: default avatarSimon Glass <sjg@chromium.org>
      Tested-by: default avatarSimon Glass <sjg@chromium.org>
      712fbcf3
  10. 03 Oct, 2009 1 commit
    • Prafulla Wadaskar's avatar
      tools: mkimage: split code into core, default and FIT image specific · c7138920
      Prafulla Wadaskar authored
      This is a first step towards reorganizing the mkimage code to make it
      easier to add support for additional images types. Current mkimage
      code is specific to generating uImage and FIT image files, but the
      same framework can be used to generate other image types like
      Kirkwood boot images (kwbimage-TBD). For this, the mkimage code gets
      reworked:
      
      Here is the brief plan for the same:-
      a) Split mkimage code into core and image specific support
      b) Implement callback functions for image specific code
      c) Move image type specific code to respective C files
             Currently there are two types of file generation/list
             supported (i.e uImage, FIT), the code is abstracted from
             mkimage.c/.h and put in default_image.c and fit_image.c;
             all code in these file is static except init function call
      d) mkimage_register API is added to add new image type support
      All above is addressed in this patch
      e) Add kwbimage type support to this new framework (TBD)
      This will be implemented in a following commit.
      Signed-off-by: default avatarPrafulla Wadaskar <prafulla@marvell.com>
      Edit commit message, fix coding style and typos.
      Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
      c7138920
  11. 10 Sep, 2009 1 commit
    • Prafulla Wadaskar's avatar
      tools: mkimage: split code into core, default and FIT image specific · 89a4d6b1
      Prafulla Wadaskar authored
      This is a first step towards reorganizing the mkimage code to make it
      easier to add support for additional images types. Current mkimage
      code is specific to generating uImage and FIT image files, but the
      same framework can be used to generate other image types like
      Kirkwood boot images (kwbimage-TBD). For this, the mkimage code gets
      reworked:
      
      Here is the brief plan for the same:-
      a) Split mkimage code into core and image specific support
      b) Implement callback functions for image specific code
      c) Move image type specific code to respective C files
             Currently there are two types of file generation/list
             supported (i.e uImage, FIT), the code is abstracted from
             mkimage.c/.h and put in default_image.c and fit_image.c;
             all code in these file is static except init function call
      d) mkimage_register API is added to add new image type support
      All above is addressed in this patch
      e) Add kwbimage type support to this new framework (TBD)
      This will be implemented in a following commit.
      Signed-off-by: default avatarPrafulla Wadaskar <prafulla@marvell.com>
      Edit commit message, fix coding style and typos.
      Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
      89a4d6b1