Integrate meta-seco-rk/u-boot-seco-rk/seco_2017.09_next_develop_fit_ym
Integrate u-boot-seco-rk/seco_2017.09_next_develop_fit_ym
--
[FDT] Enable multi-DTB FIT to be embedded inside u-boot with CONFIG_OF_EMBED
CONFIG_OF_EMBED is used to embed the FDT into the u-boot ELF image as rodata. In the case CONFIG_MULTI_DTB_FIT is used, we need to embed the multi-DTB FIT, so we add the command to generate it inside dts/Makefile and we replace the default devicetree (dts/dt.dtb).
--
[FIT] Do not use external data when generating fit-dtb.blob
-E option is used to place data outside the FIT image (usually appended at the end of it). This works fine when the image is generated from a .its file, but without it (auto format), it causes problems. In particular, the scripts fail to compute correctly the data offset, causing the resulting FIT to be non-functional. We prefer to use embedded data instead.
--
[FIT] Improve DTB location in FIT
fdt_offset() looks for "data-offset" property inside the DTB node. This property can be absent when the FIT is generated without -E option (external data). In this case, DTB data is inside the FIT rather than appended to it. Using fit_image_get_data we can retrieve the DTB regardless of its position.
--
[FIT] Include multiple DTB blob inside FIT when using CONFIG_MULTI_DTB_FIT
Rockchip scripts for FIT node generation are used to generate u-boot.its; this file is then used to generate u-boot FIT image. When using CONFIG_MULTI_DTB_FIT we need to insert multiple DTB blob (fit-dtb.blob) in the place of u-boot.dtb. This blob is again a FIT image, containing all the possible DTBs for the board, listed in CONFIG_OF_LIST.