buildroot/board/freescale/imx8mmevk
Julien Olivain afd4c4d708 configs/freescale_imx8mmevk: bump BSP components to lf-6.6.23-2.0.0
Bump ATF, U-Boot and Linux kernel to the NXP BSP lf-6.6.23-2.0.0
versions.

Also, since commit dc0f721 "package/gcc: switch to 13.x as default",
this freescale_imx8mmevk_defconfig is failing to build the Kernel
with output:

    drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c:5769:1: error: conflicting types for '_QuerySignal' due to enum/integer mismatch; have 'gceSTATUS(struct _gckOS *, void *)' {aka 'enum _gceSTATUS(struct _gckOS *, void *)'} [-Werror=enum-int-mismatch]
     5769 | _QuerySignal(
          | ^~~~~~~~~~~~

This commit fixes the issue by updating the Kernel.

The BR2_GLOBAL_PATCH_DIR is also changed from
"board/freescale/common/patches" to
"board/freescale/imx8mmevk/patches". This for two reasons:

1. the common patch directory is removed, because the patches for
   arm-trusted-firmware are no longer needed. Patch 0001 is included
   in this new version, and patch 0002 no longer needed due a code
   rewrite in this new version. The common patch files are kept,
   because they are used in other freescale_ defconfigs.

2. the imx8mmevk patch directory is introduced, to include the needed
   hash files, because this commit enables
   BR2_DOWNLOAD_FORCE_CHECK_HASHES=y. Those hash files are introduced
   in a board specific directory to allow updating this defconfig
   independently of the other i.MX defconfigs: there is 16
   freescale_imx*_defconfigs, with more or less dependencies
   (firmwares, gpu drivers, ...). The ".checkpackageignore" entry for
   this defconfig is also removed.

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/7422089464

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-01 23:42:00 +02:00
..
patches configs/freescale_imx8mmevk: bump BSP components to lf-6.6.23-2.0.0 2024-08-01 23:42:00 +02:00
readme.txt

readme.txt

***************************
Freescale i.MX8MM EVK board
***************************

This file documents the Buildroot support for the Freescale i.MX8MM
EVK board.

Build
=====

First, configure Buildroot for the i.MX8MM EVK board:

  make freescale_imx8mmevk_defconfig

Build all components:

  make

You will find in output/images/ the following files:
  - bl31.bin
  - boot.vfat
  - fsl-imx8mm-evk.dtb
  - Image
  - imx8-boot-sd.bin
  - lpddr4_pmu_train_fw.bin
  - rootfs.ext2
  - rootfs.ext4
  - rootfs.tar
  - sdcard.img
  - u-boot.bin
  - u-boot.imx
  - u-boot-nodtb.bin
  - u-boot-spl-ddr.bin

Create a bootable SD card
=========================

To determine the device associated to the SD card have a look in the
/proc/partitions file:

  cat /proc/partitions

Buildroot prepares a bootable "sdcard.img" image in the output/images/
directory, ready to be dumped on a SD card. Launch the following
command as root:

  dd if=output/images/sdcard.img of=/dev/<your-sd-device>

*** WARNING! This will destroy all the card content. Use with care! ***

For details about the medium image layout, see the definition in
board/freescale/common/imx/genimage.cfg.template_imx8.

Boot the i.MX8MM EVK board
==========================

To boot your newly created system (refer to the i.MX8MMini EVK Quick Start Guide
[1] for guidance):
- insert the SD card in the SD slot of the board;
- Configure the switches as follows:
SW1101:	0110110010 [D1-D10]
SW1102:	0001101000 [D1-D10]
- put a micro USB cable into the Debug USB Port and connect using a terminal
  emulator at 115200 bps, 8n1;
- power on the board.

Enjoy!

References
==========
[1] https://www.nxp.com/document/guide/Get-Started-with-the-i.MX-8M-Mini-EVK:GS-iMX-8M-Mini-EVK