Skip to content

[iMX8][ENVIRONMENT] Add firmware management through environment

The i.MX8 SOCs need to load some firmware for video I/F. These firmware have to be load via specific commands at u-boot command shell. This patch introduces the managemnt of these fw:

  • where are placed them;
  • how to load them in RAM;
  • when to perform these actions. The management is done with seco_config tool and is an add-on to the already present video management. When a video interface is selected, also the relative fw is selected and loaded befor the boot. To associate the video I/F with a firmware, a set of data structures has been added. The updated structure is video_mode_t where the following implementation is now allowed:

{ ... .has_fw = 2, .fw = { [0] = { .file_name = ENV_FW_HDMI_FILE, .address = ENV_FW_HDP_ADDRESS, .cmd_laod_fw = ENV_FW_CMD_LOAD, }, [1] = { .file_name = ENV_FW_HDMIRX_FILE, .address = ENV_FW_HDMIRX_ADDRESS, .cmd_laod_fw = ENV_FW_CMD_LOAD, }, }, },

  • has_fw is the number of fw to load when the relative video I/F is selected;
  • for each fw the following parameters must be adressed:
    • file_name: file name of the fw
    • address: RAM address to load the fw
    • cmd_load_fw: command to execute for load the fw.

For each sub-field there is a set of commands to use (see file include/configs/seco_mx8_env.h)

Merge request reports