buildroot/board/freescale/imx8qmmek
Julien Olivain 80004b1dbb configs/freescale_imx8qmmek: 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_imx8qmmek_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/imx8qmmek/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 imx8qmmek 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/7422089474

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

readme.txt

***************************
Freescale i.MX8QM MEK board
***************************

This file documents the Buildroot support for the NXP i.MX8QM MEK board.

You will find a reference to the board on nxp.com:
https://www.nxp.com/design/development-boards/i.mx-evaluation-and-development-boards/i.mx-8quadmax-multisensory-enablement-kit-mek:MCIMX8QM-CPU

You can also find the get started guide here:
https://www.nxp.com/document/guide/get-started-with-the-i.mx-8quadmax-mek:GS-iMX-8QM-MEK

Build
=====

First, configure Buildroot for the i.MX8QM MEK board:

$ make freescale_imx8qmmek_defconfig

Build all components:

$ make

You will find in output/images/ the following files:
  - ahab-container.img
  - bl31.bin
  - boot.vfat
  - fsl-imx8qm-mek.dtb
  - Image
  - imx8-boot-sd.bin
  - mkimg.commit
  - mx8qm-mek-scfw-tcm.bin
  - mx8qm-val-scfw-tcm.bin
  - mx8qm-a0-ddr4-scfw-tcm.bin
  - mx8qm-a0-mek-scfw-tcm.bin
  - mx8qm-a0-val-scfw-tcm.bin
  - mx8qm-ddr4-scfw-tcm.bin
  - rootfs.ext2
  - rootfs.ext4
  - rootfs.tar
  - sdcard.img
  - u-boot-atf.bin
  - u-boot.bin
  - u-boot-hash.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.MX8QM MEK board
==========================

To boot your newly created system:
- insert the SD card in the SD slot of the board;
- Configure the boot switch as follows:
SW2:	OFF	OFF	ON	ON	OFF	OFF
- 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!