Skip to content
  • 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