View Issue Details

IDProjectCategoryView StatusLast Update
0004933UBootU-Bootpublic2021-10-05 15:05
Reporterderksen Assigned To 
PrioritynormalSeverityminorReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Versionfsimx8mm-B2021.06 
Target Versionfsimx8mn-Y2021.09Fixed in Versionfsimx8mn-Y2021.09 
Summary0004933: Change fsimx8mn to use NBoot
DescriptionChange fsimx8mn to use NBoot

This commit changes the fsimx8mn architecture to use NBoot and the same
build process as fsimx8mm. This consists of the following changes:

- Use newer version of mkimage that understands i.MX8M images. This is
  in common/image.c, include/image.h, include/imximage.h, tools/Makefile,
  tools/imagetool.h, tools/mkimage.c and arch/arm/mach-imx/Makefile. There
  are also the new files include/imx8image.h, tools/imx8image.c,
  tools/imx8mimage.c, tools/imx8m_image.sh and tools/imx_cntr_image.sh.
  This is all backported from U-Boot 2020.04.
- The above change requires a new board/F+S/fsimx8mn/fsimx8mnimage.cfg.
- In arch/arm/mach-imx/imx8m/soc.c, the i.MX8MN already had a function
  env_get_location(). F&S needs its own version, so skip the generic
  version if configured for CONFIG_TARGET_FSIMX8MN.
- There is no extra CONFIG_TARGET_FSIMX8MX_NANO anymore, the board is
  now included in the regular CONFIG_TARGET_FSIMX8MN target. This has
  changes in arch/arm/mach-imx/imx8m/Kconfig and board/F+S/common/Kconfig.
- Add a version of fs_board_get_boot_dev_from_fuses() for i.MX8MN to
  board/F+S/common/fs_board_common.c.
- Change board/F+S/fsimx8mn/spl.c to work similar to the fsimx8mm version.
- Change board/F+S/fsimx8mn/fsimx8mn.c to work similar to the fsimx8mm
  version. This also needs the new files sec_mipi_dphy_ln14lpp.h and
  sec_mipi_pll_1432x.h.
- Change include/configs/fsimx8mn.h to work similar to fsimx8mm.
- Remove board/F+S/fsimx8mn/lpddr4_timing.c, the RAM timings are now
  separate files in the nboot subdirectory.
- Add all nboot files in board/F+S/fsimx8mn/nboot:
  Makefile, PCoreMX8MN*.dts, PCoreMX8MX*.dts, nboot-info-*.dtsi,
  ddr3l_*_timing.c, lpddr4_*_timing.c, dram-timings.lds.
- Change configs/fsimx8mn_defconfig to be similar to fsimx8mm.
- On i.MX8MN, the secondary image in case of eMMC is defined by fuses.
  Skip writing the Secondary Image Table for now in case of fsimx8mn
  in cmd/fsimage.c.
- In board/F+S/NXP-Firmware, add the CPU type to the ATF file name
  to be able to have different versions. So this is bl31-imx8mm.bin
  for i.MX8M-Mini and bl31-imx8mn.bin for i.MX8M-Nano. Change the
  NBoot makefiles for fsimx8mm and fsimx8mn accordingly.
Forum Link

Activities

There are no notes attached to this issue.