All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
@ 2022-01-31 15:30 Heiko Thiery
  2022-01-31 15:36 ` Michael Nazzareno Trimarchi
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Heiko Thiery @ 2022-01-31 15:30 UTC (permalink / raw)
  To: buildroot
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni,
	Giulio Benetti, Michael Trimarchi, Fabio Estevam, Yann E . MORIN,
	Heiko Thiery

The BL i.MX8M Mini is a baseboard that includes the SoM SL i.MX8M Mini.

https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549

Cc: Frieder Schrempf <frieder.schrempf@kontron.de>
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---
v5:
 - remove BR2_PACKAGE_HOST_UBOOT_TOOLS

v4:
 - remove BR2_ARM_FPU_VFPV3 since this option is not used for aarch64.
   The FPU options are set implicit.

v3:
 - change offset value to use capitol 'K' value (thanks Guilio)
 - add info to uboot patches about submitting to upstream

v2:
 - switch to extlinux
 - directly call genimage.sh
  - remove post-image.sh
 - remove BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT
 - add BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME

 DEVELOPERS                                    |   2 +
 board/kontron/bl-imx8mm/extlinux.conf         |   4 +
 board/kontron/bl-imx8mm/genimage.cfg          |  18 ++
 ...m-kontron-n801x-s-convert-options-to.patch |  31 ++
 ...m-kontron-n801x-s-add-common-board-u.patch | 305 ++++++++++++++++++
 board/kontron/bl-imx8mm/post-build.sh         |   7 +
 board/kontron/bl-imx8mm/readme.txt            |  85 +++++
 configs/kontron_bl_imx8mm_defconfig           |  58 ++++
 8 files changed, 510 insertions(+)
 create mode 100644 board/kontron/bl-imx8mm/extlinux.conf
 create mode 100644 board/kontron/bl-imx8mm/genimage.cfg
 create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
 create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
 create mode 100755 board/kontron/bl-imx8mm/post-build.sh
 create mode 100644 board/kontron/bl-imx8mm/readme.txt
 create mode 100644 configs/kontron_bl_imx8mm_defconfig

diff --git a/DEVELOPERS b/DEVELOPERS
index a1ec9a091e..38724726d4 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1183,7 +1183,9 @@ F:	package/python-sip/
 F:	package/uhd/
 
 N:	Heiko Thiery <heiko.thiery@gmail.com>
+F:	board/kontron/bl-imx8mm/
 F:	board/kontron/pitx-imx8m/
+F:	configs/kontron_bl_imx8mm_defconfig
 F:	configs/kontron_pitx_imx8m_defconfig
 F:	package/altera-stapl/
 F:	package/ipmitool/
diff --git a/board/kontron/bl-imx8mm/extlinux.conf b/board/kontron/bl-imx8mm/extlinux.conf
new file mode 100644
index 0000000000..d38f7f81b7
--- /dev/null
+++ b/board/kontron/bl-imx8mm/extlinux.conf
@@ -0,0 +1,4 @@
+label buildroot
+  kernel /boot/Image
+  devicetree /boot/freescale/imx8mm-kontron-n801x-s.dtb
+  append root=PARTUUID=%PARTUUID% rootwait rw
diff --git a/board/kontron/bl-imx8mm/genimage.cfg b/board/kontron/bl-imx8mm/genimage.cfg
new file mode 100644
index 0000000000..c98bc4f150
--- /dev/null
+++ b/board/kontron/bl-imx8mm/genimage.cfg
@@ -0,0 +1,18 @@
+image sdcard.img {
+	hdimage {
+		partition-table-type = "gpt"
+		gpt-location = 16K
+	}
+
+	partition imx-boot {
+		in-partition-table = "no"
+		image = "flash.bin"
+		offset = 33K
+	}
+
+	partition rootfs {
+		image = "rootfs.ext4"
+		offset = 8M
+		partition-uuid = %PARTUUID%
+	}
+}
diff --git a/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
new file mode 100644
index 0000000000..6d76282def
--- /dev/null
+++ b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
@@ -0,0 +1,31 @@
+From 95a311af81cd47c44d3d6e3f717f06a06d8f3dfd Mon Sep 17 00:00:00 2001
+From: Heiko Thiery <heiko.thiery@gmail.com>
+Date: Mon, 10 Jan 2022 14:13:02 +0100
+Subject: [PATCH 1/2] imx: imx8mm: imx8mm-kontron-n801x-s: convert options to Kconfig
+
+CONFIG_SPL_MMC and CONFIG_SPL_SERIAL
+
+Patch submitted upstream:
+https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-1-heiko.thiery@gmail.com/
+
+Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
+---
+ configs/kontron-sl-mx8mm_defconfig | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
+index 35d12fca32..940bf07a92 100644
+--- a/configs/kontron-sl-mx8mm_defconfig
++++ b/configs/kontron-sl-mx8mm_defconfig
+@@ -15,6 +15,8 @@ CONFIG_SPL_DM_SPI=y
+ CONFIG_DEFAULT_DEVICE_TREE="imx8mm-kontron-n801x-s"
+ CONFIG_SPL_TEXT_BASE=0x7E1000
+ CONFIG_TARGET_KONTRON_MX8MM=y
++CONFIG_SPL_MMC=y
++CONFIG_SPL_SERIAL=y
+ CONFIG_BOOTCOUNT_BOOTLIMIT=3
+ CONFIG_SPL=y
+ CONFIG_DISTRO_DEFAULTS=y
+-- 
+2.30.2
+
diff --git a/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
new file mode 100644
index 0000000000..a88d7aba87
--- /dev/null
+++ b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
@@ -0,0 +1,305 @@
+From ef694c19c074333fd16589ec6ffef3e7ca895186 Mon Sep 17 00:00:00 2001
+From: Heiko Thiery <heiko.thiery@gmail.com>
+Date: Wed, 12 Jan 2022 08:44:36 +0100
+Subject: [PATCH 2/2] imx: imx8mm: imx8mm-kontron-n801x-s: add common board
+ u-boot.dtsi
+
+When using a board variant that selects the lvds specific dtb the
+*.u-boot.dtsi file will not be included. To have a lvds dtb specific
+u-boot.dtsi file move this part to a common board u-boot.dtsi file and
+include this in the board base u-boot.dtsi and create an additional one
+for the lvds variant.
+
+Patch submitted upstream:
+https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-2-heiko.thiery@gmail.com/
+
+Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
+---
+ .../imx8mm-kontron-n801x-s-lvds-u-boot.dtsi   |   6 +
+ .../dts/imx8mm-kontron-n801x-s-u-boot.dtsi    | 124 +----------------
+ arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi | 128 ++++++++++++++++++
+ 3 files changed, 135 insertions(+), 123 deletions(-)
+ create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
+ create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
+
+diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
+new file mode 100644
+index 0000000000..4bf75722bf
+--- /dev/null
++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
+@@ -0,0 +1,6 @@
++// SPDX-License-Identifier: GPL-2.0+
++/*
++ * Copyright (C) 2019 Kontron Electronics GmbH
++ */
++
++#include "imx8mm-kontron-n801x-u-boot.dtsi"
+diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
+index 22d18e6f1c..4bf75722bf 100644
+--- a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
+@@ -3,126 +3,4 @@
+  * Copyright (C) 2019 Kontron Electronics GmbH
+  */
+ 
+-#include "imx8mm-u-boot.dtsi"
+-
+-/ {
+-	aliases {
+-		usb0 = &usbotg1;
+-		usb1 = &usbotg2;
+-	};
+-
+-	wdt-reboot {
+-		compatible = "wdt-reboot";
+-		wdt = <&wdog1>;
+-		u-boot,dm-spl;
+-	};
+-
+-	firmware {
+-		optee {
+-			compatible = "linaro,optee-tz";
+-			method = "smc";
+-		};
+-	};
+-};
+-
+-&fec1 {
+-	phy-mode = "rgmii-rxid";
+-};
+-
+-&i2c1 {
+-	u-boot,dm-spl;
+-	u-boot,dm-pre-reloc;
+-};
+-
+-&i2c2 {
+-	status = "okay";
+-	u-boot,dm-spl;
+-	u-boot,dm-pre-reloc;
+-};
+-
+-&pinctrl_ecspi1 {
+-	u-boot,dm-spl;
+-};
+-
+-&pinctrl_i2c1 {
+-	u-boot,dm-spl;
+-};
+-
+-&pinctrl_pmic {
+-	u-boot,dm-spl;
+-	fsl,pins = <
+-		MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0		0x141
+-		/* Disable Pullup for SD_VSEL */
+-		MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4		0x41
+-	>;
+-};
+-
+-&pinctrl_uart3 {
+-	u-boot,dm-spl;
+-	u-boot,dm-pre-reloc;
+-};
+-
+-&pinctrl_usdhc1 {
+-	u-boot,dm-spl;
+-};
+-
+-&pinctrl_usdhc1_100mhz {
+-	u-boot,dm-spl;
+-};
+-
+-&pinctrl_usdhc1_200mhz {
+-	u-boot,dm-spl;
+-};
+-
+-&pinctrl_usdhc2 {
+-	u-boot,dm-spl;
+-};
+-
+-&pca9450 {
+-	u-boot,dm-spl;
+-};
+-
+-&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
+-	u-boot,dm-spl;
+-};
+-
+-&ecspi1 {
+-	u-boot,dm-spl;
+-};
+-
+-&gpio1 {
+-	u-boot,dm-spl;
+-};
+-
+-&gpio2 {
+-	u-boot,dm-spl;
+-};
+-
+-&gpio3 {
+-	u-boot,dm-spl;
+-};
+-
+-&gpio4 {
+-	u-boot,dm-spl;
+-};
+-
+-&gpio5 {
+-	u-boot,dm-spl;
+-};
+-
+-&uart3 {
+-	u-boot,dm-spl;
+-	u-boot,dm-pre-reloc;
+-};
+-
+-&usdhc1 {
+-	u-boot,dm-spl;
+-};
+-
+-&usdhc2 {
+-	u-boot,dm-spl;
+-};
+-
+-&wdog1 {
+-	u-boot,dm-spl;
+-};
++#include "imx8mm-kontron-n801x-u-boot.dtsi"
+diff --git a/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
+new file mode 100644
+index 0000000000..22d18e6f1c
+--- /dev/null
++++ b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
+@@ -0,0 +1,128 @@
++// SPDX-License-Identifier: GPL-2.0+
++/*
++ * Copyright (C) 2019 Kontron Electronics GmbH
++ */
++
++#include "imx8mm-u-boot.dtsi"
++
++/ {
++	aliases {
++		usb0 = &usbotg1;
++		usb1 = &usbotg2;
++	};
++
++	wdt-reboot {
++		compatible = "wdt-reboot";
++		wdt = <&wdog1>;
++		u-boot,dm-spl;
++	};
++
++	firmware {
++		optee {
++			compatible = "linaro,optee-tz";
++			method = "smc";
++		};
++	};
++};
++
++&fec1 {
++	phy-mode = "rgmii-rxid";
++};
++
++&i2c1 {
++	u-boot,dm-spl;
++	u-boot,dm-pre-reloc;
++};
++
++&i2c2 {
++	status = "okay";
++	u-boot,dm-spl;
++	u-boot,dm-pre-reloc;
++};
++
++&pinctrl_ecspi1 {
++	u-boot,dm-spl;
++};
++
++&pinctrl_i2c1 {
++	u-boot,dm-spl;
++};
++
++&pinctrl_pmic {
++	u-boot,dm-spl;
++	fsl,pins = <
++		MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0		0x141
++		/* Disable Pullup for SD_VSEL */
++		MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4		0x41
++	>;
++};
++
++&pinctrl_uart3 {
++	u-boot,dm-spl;
++	u-boot,dm-pre-reloc;
++};
++
++&pinctrl_usdhc1 {
++	u-boot,dm-spl;
++};
++
++&pinctrl_usdhc1_100mhz {
++	u-boot,dm-spl;
++};
++
++&pinctrl_usdhc1_200mhz {
++	u-boot,dm-spl;
++};
++
++&pinctrl_usdhc2 {
++	u-boot,dm-spl;
++};
++
++&pca9450 {
++	u-boot,dm-spl;
++};
++
++&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
++	u-boot,dm-spl;
++};
++
++&ecspi1 {
++	u-boot,dm-spl;
++};
++
++&gpio1 {
++	u-boot,dm-spl;
++};
++
++&gpio2 {
++	u-boot,dm-spl;
++};
++
++&gpio3 {
++	u-boot,dm-spl;
++};
++
++&gpio4 {
++	u-boot,dm-spl;
++};
++
++&gpio5 {
++	u-boot,dm-spl;
++};
++
++&uart3 {
++	u-boot,dm-spl;
++	u-boot,dm-pre-reloc;
++};
++
++&usdhc1 {
++	u-boot,dm-spl;
++};
++
++&usdhc2 {
++	u-boot,dm-spl;
++};
++
++&wdog1 {
++	u-boot,dm-spl;
++};
+-- 
+2.30.2
+
diff --git a/board/kontron/bl-imx8mm/post-build.sh b/board/kontron/bl-imx8mm/post-build.sh
new file mode 100755
index 0000000000..bf8861f6a9
--- /dev/null
+++ b/board/kontron/bl-imx8mm/post-build.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+BOARD_DIR="$(dirname $0)"
+PARTUUID="$($HOST_DIR/bin/uuidgen)"
+
+install -d "$TARGET_DIR/boot/extlinux/"
+sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/extlinux.conf" > "$TARGET_DIR/boot/extlinux/extlinux.conf"
+sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/genimage.cfg" > "$BINARIES_DIR/genimage.cfg"
diff --git a/board/kontron/bl-imx8mm/readme.txt b/board/kontron/bl-imx8mm/readme.txt
new file mode 100644
index 0000000000..df47ba5174
--- /dev/null
+++ b/board/kontron/bl-imx8mm/readme.txt
@@ -0,0 +1,85 @@
+Kontron BL i.MX8M Mini
+======================
+
+https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
+
+
+How to build it
+===============
+
+Configure buildroot:
+
+  $ make kontron_bl_imx8mm_defconfig
+
+Change settings to fit your needs (optional):
+
+  $ make menuconfig
+
+Compile everything and build the rootfs image:
+
+  $ make
+
+
+Result of the build
+===================
+
+After building, the output/images directory contains:
+
+  output/images/
+    ├── bl31.bin
+    ├── boot.scr
+    ├── ddr_fw.bin
+    ├── flash.bin
+    ├── Image
+    ├── imx8mm-kontron-n801x-s.dtb
+    ├── lpddr4_pmu_train_1d_dmem_201904.bin
+    ├── lpddr4_pmu_train_1d_dmem_202006.bin
+    ├── lpddr4_pmu_train_1d_dmem.bin
+    ├── lpddr4_pmu_train_1d_dmem_pad.bin
+    ├── lpddr4_pmu_train_1d_fw.bin
+    ├── lpddr4_pmu_train_1d_imem_201904.bin
+    ├── lpddr4_pmu_train_1d_imem_202006.bin
+    ├── lpddr4_pmu_train_1d_imem.bin
+    ├── lpddr4_pmu_train_1d_imem_pad.bin
+    ├── lpddr4_pmu_train_2d_dmem_201904.bin
+    ├── lpddr4_pmu_train_2d_dmem_202006.bin
+    ├── lpddr4_pmu_train_2d_dmem.bin
+    ├── lpddr4_pmu_train_2d_dmem_pad.bin
+    ├── lpddr4_pmu_train_2d_fw.bin
+    ├── lpddr4_pmu_train_2d_imem_201904.bin
+    ├── lpddr4_pmu_train_2d_imem_202006.bin
+    ├── lpddr4_pmu_train_2d_imem.bin
+    ├── lpddr4_pmu_train_2d_imem_pad.bin
+    ├── lpddr4_pmu_train_fw.bin
+    ├── rootfs.ext2
+    ├── rootfs.ext4 -> rootfs.ext2
+    ├── rootfs.tar
+    ├── sdcard.img
+    ├── u-boot.bin
+    └── u-boot-spl.bin
+
+
+Flashing the SD card image
+==========================
+
+To install the image on a SDCard simply copy sdcard.img to the storage (e.g. SD, eMMC)
+
+  $ sudo dd if=output/images/sdcard.img of=<your-sd-device>
+
+
+Preparing the board
+===================
+
+ * Connect a serial line to the board
+ * Insert the SD card
+ * Power-up the board
+
+
+Booting the board
+=================
+
+By default the bootloader will search for the first valid image, starting
+with the internal eMMC. To make sure the bootloader loads bootscript from
+the correct location (SD card) set the boot_targets environment variable:
+
+  $ setenv boot_targets mmc1
diff --git a/configs/kontron_bl_imx8mm_defconfig b/configs/kontron_bl_imx8mm_defconfig
new file mode 100644
index 0000000000..0cf0115bfa
--- /dev/null
+++ b/configs/kontron_bl_imx8mm_defconfig
@@ -0,0 +1,58 @@
+# Architecture
+BR2_aarch64=y
+BR2_ARM_FPU_VFPV3=y
+
+BR2_GLOBAL_PATCH_DIR="board/kontron/bl-imx8mm/patches"
+
+# System
+BR2_TARGET_GENERIC_GETTY_PORT="ttymxc2"
+
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mm-kontron-n801x-s"
+BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y
+BR2_LINUX_KERNEL_INSTALL_TARGET=y
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
+
+BR2_PACKAGE_FREESCALE_IMX=y
+BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM=y
+BR2_PACKAGE_FIRMWARE_IMX=y
+
+# Filesystem / image
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
+
+# Bootloader
+BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30880000"
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="kontron-sl-mx8mm"
+BR2_TARGET_UBOOT_NEEDS_DTC=y
+BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
+BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
+BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+BR2_TARGET_UBOOT_NEEDS_ATF_BL31_BIN=y
+BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y
+BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
+BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin"
+BR2_TARGET_UBOOT_SPL=y
+
+# Required host tools to create the SD/eMMC image
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/kontron/bl-imx8mm/post-build.sh"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
+BR2_PACKAGE_HOST_GENIMAGE=y
-- 
2.30.2

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 15:30 [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig Heiko Thiery
@ 2022-01-31 15:36 ` Michael Nazzareno Trimarchi
  2022-01-31 15:42   ` Heiko Thiery
  2022-01-31 15:37 ` Giulio Benetti
  2022-02-12 13:40 ` Arnout Vandecappelle
  2 siblings, 1 reply; 11+ messages in thread
From: Michael Nazzareno Trimarchi @ 2022-01-31 15:36 UTC (permalink / raw)
  To: Heiko Thiery
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni, buildroot,
	Giulio Benetti, Fabio Estevam, Yann E . MORIN

Hi Heiko

On Mon, Jan 31, 2022 at 4:30 PM Heiko Thiery <heiko.thiery@gmail.com> wrote:
>
> The BL i.MX8M Mini is a baseboard that includes the SoM SL i.MX8M Mini.
>
> https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
>
> Cc: Frieder Schrempf <frieder.schrempf@kontron.de>
> Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> ---
> v5:
>  - remove BR2_PACKAGE_HOST_UBOOT_TOOLS
>
> v4:
>  - remove BR2_ARM_FPU_VFPV3 since this option is not used for aarch64.
>    The FPU options are set implicit.
>
> v3:
>  - change offset value to use capitol 'K' value (thanks Guilio)
>  - add info to uboot patches about submitting to upstream
>
> v2:
>  - switch to extlinux
>  - directly call genimage.sh
>   - remove post-image.sh
>  - remove BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT
>  - add BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME
>
>  DEVELOPERS                                    |   2 +
>  board/kontron/bl-imx8mm/extlinux.conf         |   4 +
>  board/kontron/bl-imx8mm/genimage.cfg          |  18 ++
>  ...m-kontron-n801x-s-convert-options-to.patch |  31 ++
>  ...m-kontron-n801x-s-add-common-board-u.patch | 305 ++++++++++++++++++
>  board/kontron/bl-imx8mm/post-build.sh         |   7 +
>  board/kontron/bl-imx8mm/readme.txt            |  85 +++++
>  configs/kontron_bl_imx8mm_defconfig           |  58 ++++
>  8 files changed, 510 insertions(+)
>  create mode 100644 board/kontron/bl-imx8mm/extlinux.conf
>  create mode 100644 board/kontron/bl-imx8mm/genimage.cfg
>  create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
>  create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
>  create mode 100755 board/kontron/bl-imx8mm/post-build.sh
>  create mode 100644 board/kontron/bl-imx8mm/readme.txt
>  create mode 100644 configs/kontron_bl_imx8mm_defconfig
>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index a1ec9a091e..38724726d4 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1183,7 +1183,9 @@ F:        package/python-sip/
>  F:     package/uhd/
>
>  N:     Heiko Thiery <heiko.thiery@gmail.com>
> +F:     board/kontron/bl-imx8mm/
>  F:     board/kontron/pitx-imx8m/
> +F:     configs/kontron_bl_imx8mm_defconfig
>  F:     configs/kontron_pitx_imx8m_defconfig
>  F:     package/altera-stapl/
>  F:     package/ipmitool/
> diff --git a/board/kontron/bl-imx8mm/extlinux.conf b/board/kontron/bl-imx8mm/extlinux.conf
> new file mode 100644
> index 0000000000..d38f7f81b7
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/extlinux.conf
> @@ -0,0 +1,4 @@
> +label buildroot
> +  kernel /boot/Image
> +  devicetree /boot/freescale/imx8mm-kontron-n801x-s.dtb
> +  append root=PARTUUID=%PARTUUID% rootwait rw
> diff --git a/board/kontron/bl-imx8mm/genimage.cfg b/board/kontron/bl-imx8mm/genimage.cfg
> new file mode 100644
> index 0000000000..c98bc4f150
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/genimage.cfg
> @@ -0,0 +1,18 @@
> +image sdcard.img {
> +       hdimage {
> +               partition-table-type = "gpt"
> +               gpt-location = 16K
> +       }
> +
> +       partition imx-boot {
> +               in-partition-table = "no"
> +               image = "flash.bin"
> +               offset = 33K
> +       }
> +
> +       partition rootfs {
> +               image = "rootfs.ext4"
> +               offset = 8M
> +               partition-uuid = %PARTUUID%
> +       }
> +}
> diff --git a/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> new file mode 100644
> index 0000000000..6d76282def
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> @@ -0,0 +1,31 @@
> +From 95a311af81cd47c44d3d6e3f717f06a06d8f3dfd Mon Sep 17 00:00:00 2001
> +From: Heiko Thiery <heiko.thiery@gmail.com>
> +Date: Mon, 10 Jan 2022 14:13:02 +0100
> +Subject: [PATCH 1/2] imx: imx8mm: imx8mm-kontron-n801x-s: convert options to Kconfig
> +
> +CONFIG_SPL_MMC and CONFIG_SPL_SERIAL
> +
> +Patch submitted upstream:
> +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-1-heiko.thiery@gmail.com/
> +
> +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> +---
> + configs/kontron-sl-mx8mm_defconfig | 2 ++
> + 1 file changed, 2 insertions(+)
> +
> +diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
> +index 35d12fca32..940bf07a92 100644
> +--- a/configs/kontron-sl-mx8mm_defconfig
> ++++ b/configs/kontron-sl-mx8mm_defconfig
> +@@ -15,6 +15,8 @@ CONFIG_SPL_DM_SPI=y
> + CONFIG_DEFAULT_DEVICE_TREE="imx8mm-kontron-n801x-s"
> + CONFIG_SPL_TEXT_BASE=0x7E1000
> + CONFIG_TARGET_KONTRON_MX8MM=y
> ++CONFIG_SPL_MMC=y
> ++CONFIG_SPL_SERIAL=y
> + CONFIG_BOOTCOUNT_BOOTLIMIT=3
> + CONFIG_SPL=y
> + CONFIG_DISTRO_DEFAULTS=y
> +--
> +2.30.2
> +
> diff --git a/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> new file mode 100644
> index 0000000000..a88d7aba87
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> @@ -0,0 +1,305 @@
> +From ef694c19c074333fd16589ec6ffef3e7ca895186 Mon Sep 17 00:00:00 2001
> +From: Heiko Thiery <heiko.thiery@gmail.com>
> +Date: Wed, 12 Jan 2022 08:44:36 +0100
> +Subject: [PATCH 2/2] imx: imx8mm: imx8mm-kontron-n801x-s: add common board
> + u-boot.dtsi
> +
> +When using a board variant that selects the lvds specific dtb the
> +*.u-boot.dtsi file will not be included. To have a lvds dtb specific
> +u-boot.dtsi file move this part to a common board u-boot.dtsi file and
> +include this in the board base u-boot.dtsi and create an additional one
> +for the lvds variant.
> +
> +Patch submitted upstream:
> +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-2-heiko.thiery@gmail.com/
> +
> +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> +---
> + .../imx8mm-kontron-n801x-s-lvds-u-boot.dtsi   |   6 +
> + .../dts/imx8mm-kontron-n801x-s-u-boot.dtsi    | 124 +----------------
> + arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi | 128 ++++++++++++++++++
> + 3 files changed, 135 insertions(+), 123 deletions(-)
> + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> +
> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> +new file mode 100644
> +index 0000000000..4bf75722bf
> +--- /dev/null
> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> +@@ -0,0 +1,6 @@
> ++// SPDX-License-Identifier: GPL-2.0+
> ++/*
> ++ * Copyright (C) 2019 Kontron Electronics GmbH
> ++ */
> ++
> ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> +index 22d18e6f1c..4bf75722bf 100644
> +--- a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> +@@ -3,126 +3,4 @@
> +  * Copyright (C) 2019 Kontron Electronics GmbH
> +  */
> +
> +-#include "imx8mm-u-boot.dtsi"
> +-
> +-/ {
> +-      aliases {
> +-              usb0 = &usbotg1;
> +-              usb1 = &usbotg2;
> +-      };
> +-
> +-      wdt-reboot {
> +-              compatible = "wdt-reboot";
> +-              wdt = <&wdog1>;
> +-              u-boot,dm-spl;
> +-      };
> +-
> +-      firmware {
> +-              optee {
> +-                      compatible = "linaro,optee-tz";
> +-                      method = "smc";
> +-              };
> +-      };
> +-};
> +-
> +-&fec1 {
> +-      phy-mode = "rgmii-rxid";
> +-};
> +-
> +-&i2c1 {
> +-      u-boot,dm-spl;
> +-      u-boot,dm-pre-reloc;
> +-};
> +-
> +-&i2c2 {
> +-      status = "okay";
> +-      u-boot,dm-spl;
> +-      u-boot,dm-pre-reloc;
> +-};
> +-
> +-&pinctrl_ecspi1 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_i2c1 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_pmic {
> +-      u-boot,dm-spl;
> +-      fsl,pins = <
> +-              MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0               0x141
> +-              /* Disable Pullup for SD_VSEL */
> +-              MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4               0x41
> +-      >;
> +-};
> +-
> +-&pinctrl_uart3 {
> +-      u-boot,dm-spl;
> +-      u-boot,dm-pre-reloc;
> +-};
> +-
> +-&pinctrl_usdhc1 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_usdhc1_100mhz {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_usdhc1_200mhz {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_usdhc2 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&pca9450 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&ecspi1 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&gpio1 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&gpio2 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&gpio3 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&gpio4 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&gpio5 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&uart3 {
> +-      u-boot,dm-spl;
> +-      u-boot,dm-pre-reloc;
> +-};
> +-
> +-&usdhc1 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&usdhc2 {
> +-      u-boot,dm-spl;
> +-};
> +-
> +-&wdog1 {
> +-      u-boot,dm-spl;
> +-};
> ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> +new file mode 100644
> +index 0000000000..22d18e6f1c
> +--- /dev/null
> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> +@@ -0,0 +1,128 @@
> ++// SPDX-License-Identifier: GPL-2.0+
> ++/*
> ++ * Copyright (C) 2019 Kontron Electronics GmbH
> ++ */
> ++
> ++#include "imx8mm-u-boot.dtsi"
> ++
> ++/ {
> ++      aliases {
> ++              usb0 = &usbotg1;
> ++              usb1 = &usbotg2;
> ++      };
> ++
> ++      wdt-reboot {
> ++              compatible = "wdt-reboot";
> ++              wdt = <&wdog1>;
> ++              u-boot,dm-spl;
> ++      };
> ++
> ++      firmware {
> ++              optee {
> ++                      compatible = "linaro,optee-tz";
> ++                      method = "smc";
> ++              };
> ++      };
> ++};
> ++
> ++&fec1 {
> ++      phy-mode = "rgmii-rxid";
> ++};
> ++
> ++&i2c1 {
> ++      u-boot,dm-spl;
> ++      u-boot,dm-pre-reloc;
> ++};
> ++
> ++&i2c2 {
> ++      status = "okay";
> ++      u-boot,dm-spl;
> ++      u-boot,dm-pre-reloc;
> ++};
> ++
> ++&pinctrl_ecspi1 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_i2c1 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_pmic {
> ++      u-boot,dm-spl;
> ++      fsl,pins = <
> ++              MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0               0x141
> ++              /* Disable Pullup for SD_VSEL */
> ++              MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4               0x41
> ++      >;
> ++};
> ++
> ++&pinctrl_uart3 {
> ++      u-boot,dm-spl;
> ++      u-boot,dm-pre-reloc;
> ++};
> ++
> ++&pinctrl_usdhc1 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_usdhc1_100mhz {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_usdhc1_200mhz {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_usdhc2 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&pca9450 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&ecspi1 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&gpio1 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&gpio2 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&gpio3 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&gpio4 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&gpio5 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&uart3 {
> ++      u-boot,dm-spl;
> ++      u-boot,dm-pre-reloc;
> ++};
> ++
> ++&usdhc1 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&usdhc2 {
> ++      u-boot,dm-spl;
> ++};
> ++
> ++&wdog1 {
> ++      u-boot,dm-spl;
> ++};
> +--
> +2.30.2
> +
> diff --git a/board/kontron/bl-imx8mm/post-build.sh b/board/kontron/bl-imx8mm/post-build.sh
> new file mode 100755
> index 0000000000..bf8861f6a9
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/post-build.sh
> @@ -0,0 +1,7 @@
> +#!/bin/sh
> +BOARD_DIR="$(dirname $0)"
> +PARTUUID="$($HOST_DIR/bin/uuidgen)"
> +
> +install -d "$TARGET_DIR/boot/extlinux/"
> +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/extlinux.conf" > "$TARGET_DIR/boot/extlinux/extlinux.conf"
> +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/genimage.cfg" > "$BINARIES_DIR/genimage.cfg"
> diff --git a/board/kontron/bl-imx8mm/readme.txt b/board/kontron/bl-imx8mm/readme.txt
> new file mode 100644
> index 0000000000..df47ba5174
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/readme.txt
> @@ -0,0 +1,85 @@
> +Kontron BL i.MX8M Mini
> +======================
> +
> +https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
> +
> +
> +How to build it
> +===============
> +
> +Configure buildroot:
> +
> +  $ make kontron_bl_imx8mm_defconfig
> +
> +Change settings to fit your needs (optional):
> +
> +  $ make menuconfig
> +
> +Compile everything and build the rootfs image:
> +
> +  $ make
> +
> +
> +Result of the build
> +===================
> +
> +After building, the output/images directory contains:
> +
> +  output/images/
> +    ├── bl31.bin
> +    ├── boot.scr
> +    ├── ddr_fw.bin
> +    ├── flash.bin
> +    ├── Image
> +    ├── imx8mm-kontron-n801x-s.dtb
> +    ├── lpddr4_pmu_train_1d_dmem_201904.bin
> +    ├── lpddr4_pmu_train_1d_dmem_202006.bin
> +    ├── lpddr4_pmu_train_1d_dmem.bin
> +    ├── lpddr4_pmu_train_1d_dmem_pad.bin
> +    ├── lpddr4_pmu_train_1d_fw.bin
> +    ├── lpddr4_pmu_train_1d_imem_201904.bin
> +    ├── lpddr4_pmu_train_1d_imem_202006.bin
> +    ├── lpddr4_pmu_train_1d_imem.bin
> +    ├── lpddr4_pmu_train_1d_imem_pad.bin
> +    ├── lpddr4_pmu_train_2d_dmem_201904.bin
> +    ├── lpddr4_pmu_train_2d_dmem_202006.bin
> +    ├── lpddr4_pmu_train_2d_dmem.bin
> +    ├── lpddr4_pmu_train_2d_dmem_pad.bin
> +    ├── lpddr4_pmu_train_2d_fw.bin
> +    ├── lpddr4_pmu_train_2d_imem_201904.bin
> +    ├── lpddr4_pmu_train_2d_imem_202006.bin
> +    ├── lpddr4_pmu_train_2d_imem.bin
> +    ├── lpddr4_pmu_train_2d_imem_pad.bin
> +    ├── lpddr4_pmu_train_fw.bin
> +    ├── rootfs.ext2
> +    ├── rootfs.ext4 -> rootfs.ext2
> +    ├── rootfs.tar
> +    ├── sdcard.img
> +    ├── u-boot.bin
> +    └── u-boot-spl.bin
> +
> +
> +Flashing the SD card image
> +==========================
> +
> +To install the image on a SDCard simply copy sdcard.img to the storage (e.g. SD, eMMC)
> +
> +  $ sudo dd if=output/images/sdcard.img of=<your-sd-device>
> +
> +
> +Preparing the board
> +===================
> +
> + * Connect a serial line to the board
> + * Insert the SD card
> + * Power-up the board
> +
> +
> +Booting the board
> +=================
> +
> +By default the bootloader will search for the first valid image, starting
> +with the internal eMMC. To make sure the bootloader loads bootscript from
> +the correct location (SD card) set the boot_targets environment variable:
> +
> +  $ setenv boot_targets mmc1
> diff --git a/configs/kontron_bl_imx8mm_defconfig b/configs/kontron_bl_imx8mm_defconfig
> new file mode 100644
> index 0000000000..0cf0115bfa
> --- /dev/null
> +++ b/configs/kontron_bl_imx8mm_defconfig
> @@ -0,0 +1,58 @@
> +# Architecture
> +BR2_aarch64=y
> +BR2_ARM_FPU_VFPV3=y
> +
> +BR2_GLOBAL_PATCH_DIR="board/kontron/bl-imx8mm/patches"
> +
> +# System
> +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc2"
> +
> +# Kernel
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_VERSION=y
> +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16"
> +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mm-kontron-n801x-s"
> +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y
> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> +
> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
> +
> +BR2_PACKAGE_FREESCALE_IMX=y
> +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM=y
> +BR2_PACKAGE_FIRMWARE_IMX=y
> +
> +# Filesystem / image
> +BR2_TARGET_ROOTFS_EXT2=y
> +BR2_TARGET_ROOTFS_EXT2_4=y
> +BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
> +
> +# Bootloader
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30880000"
> +BR2_TARGET_UBOOT=y
> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
> +BR2_TARGET_UBOOT_CUSTOM_VERSION=y
> +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="kontron-sl-mx8mm"
> +BR2_TARGET_UBOOT_NEEDS_DTC=y
> +BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
> +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_BIN=y
> +BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y
> +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
> +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin"
> +BR2_TARGET_UBOOT_SPL=y
> +
> +# Required host tools to create the SD/eMMC image
> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/kontron/bl-imx8mm/post-build.sh"
> +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
> +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
> +BR2_PACKAGE_HOST_GENIMAGE=y

I have seen that some people like to have this organization but it's
not really nice to maintain. I would like
to savedefconfig and use that one instead of having nice commented
part. Is this mandatory?

Michael

> --
> 2.30.2
>


-- 
Michael Nazzareno Trimarchi
Co-Founder & Chief Executive Officer
M. +39 347 913 2170
michael@amarulasolutions.com
__________________________________

Amarula Solutions BV
Joop Geesinkweg 125, 1114 AB, Amsterdam, NL
T. +31 (0)85 111 9172
info@amarulasolutions.com
www.amarulasolutions.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 15:30 [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig Heiko Thiery
  2022-01-31 15:36 ` Michael Nazzareno Trimarchi
@ 2022-01-31 15:37 ` Giulio Benetti
  2022-02-12 13:40 ` Arnout Vandecappelle
  2 siblings, 0 replies; 11+ messages in thread
From: Giulio Benetti @ 2022-01-31 15:37 UTC (permalink / raw)
  To: Heiko Thiery
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni, buildroot,
	Michael Trimarchi, Fabio Estevam, Yann E . MORIN

Hi Heiko,

> Il giorno 31 gen 2022, alle ore 16:31, Heiko Thiery <heiko.thiery@gmail.com> ha scritto:
> 
> The BL i.MX8M Mini is a baseboard that includes the SoM SL i.MX8M Mini.
> 
> https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
> 
> Cc: Frieder Schrempf <frieder.schrempf@kontron.de>
> Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>

Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>

Best regards
Giulio

> ---
> v5:
> - remove BR2_PACKAGE_HOST_UBOOT_TOOLS
> 
> v4:
> - remove BR2_ARM_FPU_VFPV3 since this option is not used for aarch64.
>   The FPU options are set implicit.
> 
> v3:
> - change offset value to use capitol 'K' value (thanks Guilio)
> - add info to uboot patches about submitting to upstream
> 
> v2:
> - switch to extlinux
> - directly call genimage.sh
>  - remove post-image.sh
> - remove BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT
> - add BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME
> 
> DEVELOPERS                                    |   2 +
> board/kontron/bl-imx8mm/extlinux.conf         |   4 +
> board/kontron/bl-imx8mm/genimage.cfg          |  18 ++
> ...m-kontron-n801x-s-convert-options-to.patch |  31 ++
> ...m-kontron-n801x-s-add-common-board-u.patch | 305 ++++++++++++++++++
> board/kontron/bl-imx8mm/post-build.sh         |   7 +
> board/kontron/bl-imx8mm/readme.txt            |  85 +++++
> configs/kontron_bl_imx8mm_defconfig           |  58 ++++
> 8 files changed, 510 insertions(+)
> create mode 100644 board/kontron/bl-imx8mm/extlinux.conf
> create mode 100644 board/kontron/bl-imx8mm/genimage.cfg
> create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> create mode 100755 board/kontron/bl-imx8mm/post-build.sh
> create mode 100644 board/kontron/bl-imx8mm/readme.txt
> create mode 100644 configs/kontron_bl_imx8mm_defconfig
> 
> diff --git a/DEVELOPERS b/DEVELOPERS
> index a1ec9a091e..38724726d4 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1183,7 +1183,9 @@ F:    package/python-sip/
> F:    package/uhd/
> 
> N:    Heiko Thiery <heiko.thiery@gmail.com>
> +F:    board/kontron/bl-imx8mm/
> F:    board/kontron/pitx-imx8m/
> +F:    configs/kontron_bl_imx8mm_defconfig
> F:    configs/kontron_pitx_imx8m_defconfig
> F:    package/altera-stapl/
> F:    package/ipmitool/
> diff --git a/board/kontron/bl-imx8mm/extlinux.conf b/board/kontron/bl-imx8mm/extlinux.conf
> new file mode 100644
> index 0000000000..d38f7f81b7
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/extlinux.conf
> @@ -0,0 +1,4 @@
> +label buildroot
> +  kernel /boot/Image
> +  devicetree /boot/freescale/imx8mm-kontron-n801x-s.dtb
> +  append root=PARTUUID=%PARTUUID% rootwait rw
> diff --git a/board/kontron/bl-imx8mm/genimage.cfg b/board/kontron/bl-imx8mm/genimage.cfg
> new file mode 100644
> index 0000000000..c98bc4f150
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/genimage.cfg
> @@ -0,0 +1,18 @@
> +image sdcard.img {
> +    hdimage {
> +        partition-table-type = "gpt"
> +        gpt-location = 16K
> +    }
> +
> +    partition imx-boot {
> +        in-partition-table = "no"
> +        image = "flash.bin"
> +        offset = 33K
> +    }
> +
> +    partition rootfs {
> +        image = "rootfs.ext4"
> +        offset = 8M
> +        partition-uuid = %PARTUUID%
> +    }
> +}
> diff --git a/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> new file mode 100644
> index 0000000000..6d76282def
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> @@ -0,0 +1,31 @@
> +From 95a311af81cd47c44d3d6e3f717f06a06d8f3dfd Mon Sep 17 00:00:00 2001
> +From: Heiko Thiery <heiko.thiery@gmail.com>
> +Date: Mon, 10 Jan 2022 14:13:02 +0100
> +Subject: [PATCH 1/2] imx: imx8mm: imx8mm-kontron-n801x-s: convert options to Kconfig
> +
> +CONFIG_SPL_MMC and CONFIG_SPL_SERIAL
> +
> +Patch submitted upstream:
> +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-1-heiko.thiery@gmail.com/
> +
> +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> +---
> + configs/kontron-sl-mx8mm_defconfig | 2 ++
> + 1 file changed, 2 insertions(+)
> +
> +diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
> +index 35d12fca32..940bf07a92 100644
> +--- a/configs/kontron-sl-mx8mm_defconfig
> ++++ b/configs/kontron-sl-mx8mm_defconfig
> +@@ -15,6 +15,8 @@ CONFIG_SPL_DM_SPI=y
> + CONFIG_DEFAULT_DEVICE_TREE="imx8mm-kontron-n801x-s"
> + CONFIG_SPL_TEXT_BASE=0x7E1000
> + CONFIG_TARGET_KONTRON_MX8MM=y
> ++CONFIG_SPL_MMC=y
> ++CONFIG_SPL_SERIAL=y
> + CONFIG_BOOTCOUNT_BOOTLIMIT=3
> + CONFIG_SPL=y
> + CONFIG_DISTRO_DEFAULTS=y
> +-- 
> +2.30.2
> +
> diff --git a/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> new file mode 100644
> index 0000000000..a88d7aba87
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> @@ -0,0 +1,305 @@
> +From ef694c19c074333fd16589ec6ffef3e7ca895186 Mon Sep 17 00:00:00 2001
> +From: Heiko Thiery <heiko.thiery@gmail.com>
> +Date: Wed, 12 Jan 2022 08:44:36 +0100
> +Subject: [PATCH 2/2] imx: imx8mm: imx8mm-kontron-n801x-s: add common board
> + u-boot.dtsi
> +
> +When using a board variant that selects the lvds specific dtb the
> +*.u-boot.dtsi file will not be included. To have a lvds dtb specific
> +u-boot.dtsi file move this part to a common board u-boot.dtsi file and
> +include this in the board base u-boot.dtsi and create an additional one
> +for the lvds variant.
> +
> +Patch submitted upstream:
> +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-2-heiko.thiery@gmail.com/
> +
> +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> +---
> + .../imx8mm-kontron-n801x-s-lvds-u-boot.dtsi   |   6 +
> + .../dts/imx8mm-kontron-n801x-s-u-boot.dtsi    | 124 +----------------
> + arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi | 128 ++++++++++++++++++
> + 3 files changed, 135 insertions(+), 123 deletions(-)
> + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> +
> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> +new file mode 100644
> +index 0000000000..4bf75722bf
> +--- /dev/null
> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> +@@ -0,0 +1,6 @@
> ++// SPDX-License-Identifier: GPL-2.0+
> ++/*
> ++ * Copyright (C) 2019 Kontron Electronics GmbH
> ++ */
> ++
> ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> +index 22d18e6f1c..4bf75722bf 100644
> +--- a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> +@@ -3,126 +3,4 @@
> +  * Copyright (C) 2019 Kontron Electronics GmbH
> +  */
> + 
> +-#include "imx8mm-u-boot.dtsi"
> +-
> +-/ {
> +-    aliases {
> +-        usb0 = &usbotg1;
> +-        usb1 = &usbotg2;
> +-    };
> +-
> +-    wdt-reboot {
> +-        compatible = "wdt-reboot";
> +-        wdt = <&wdog1>;
> +-        u-boot,dm-spl;
> +-    };
> +-
> +-    firmware {
> +-        optee {
> +-            compatible = "linaro,optee-tz";
> +-            method = "smc";
> +-        };
> +-    };
> +-};
> +-
> +-&fec1 {
> +-    phy-mode = "rgmii-rxid";
> +-};
> +-
> +-&i2c1 {
> +-    u-boot,dm-spl;
> +-    u-boot,dm-pre-reloc;
> +-};
> +-
> +-&i2c2 {
> +-    status = "okay";
> +-    u-boot,dm-spl;
> +-    u-boot,dm-pre-reloc;
> +-};
> +-
> +-&pinctrl_ecspi1 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_i2c1 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_pmic {
> +-    u-boot,dm-spl;
> +-    fsl,pins = <
> +-        MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0        0x141
> +-        /* Disable Pullup for SD_VSEL */
> +-        MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4        0x41
> +-    >;
> +-};
> +-
> +-&pinctrl_uart3 {
> +-    u-boot,dm-spl;
> +-    u-boot,dm-pre-reloc;
> +-};
> +-
> +-&pinctrl_usdhc1 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_usdhc1_100mhz {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_usdhc1_200mhz {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&pinctrl_usdhc2 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&pca9450 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&ecspi1 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&gpio1 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&gpio2 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&gpio3 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&gpio4 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&gpio5 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&uart3 {
> +-    u-boot,dm-spl;
> +-    u-boot,dm-pre-reloc;
> +-};
> +-
> +-&usdhc1 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&usdhc2 {
> +-    u-boot,dm-spl;
> +-};
> +-
> +-&wdog1 {
> +-    u-boot,dm-spl;
> +-};
> ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> +new file mode 100644
> +index 0000000000..22d18e6f1c
> +--- /dev/null
> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> +@@ -0,0 +1,128 @@
> ++// SPDX-License-Identifier: GPL-2.0+
> ++/*
> ++ * Copyright (C) 2019 Kontron Electronics GmbH
> ++ */
> ++
> ++#include "imx8mm-u-boot.dtsi"
> ++
> ++/ {
> ++    aliases {
> ++        usb0 = &usbotg1;
> ++        usb1 = &usbotg2;
> ++    };
> ++
> ++    wdt-reboot {
> ++        compatible = "wdt-reboot";
> ++        wdt = <&wdog1>;
> ++        u-boot,dm-spl;
> ++    };
> ++
> ++    firmware {
> ++        optee {
> ++            compatible = "linaro,optee-tz";
> ++            method = "smc";
> ++        };
> ++    };
> ++};
> ++
> ++&fec1 {
> ++    phy-mode = "rgmii-rxid";
> ++};
> ++
> ++&i2c1 {
> ++    u-boot,dm-spl;
> ++    u-boot,dm-pre-reloc;
> ++};
> ++
> ++&i2c2 {
> ++    status = "okay";
> ++    u-boot,dm-spl;
> ++    u-boot,dm-pre-reloc;
> ++};
> ++
> ++&pinctrl_ecspi1 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_i2c1 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_pmic {
> ++    u-boot,dm-spl;
> ++    fsl,pins = <
> ++        MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0        0x141
> ++        /* Disable Pullup for SD_VSEL */
> ++        MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4        0x41
> ++    >;
> ++};
> ++
> ++&pinctrl_uart3 {
> ++    u-boot,dm-spl;
> ++    u-boot,dm-pre-reloc;
> ++};
> ++
> ++&pinctrl_usdhc1 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_usdhc1_100mhz {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_usdhc1_200mhz {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&pinctrl_usdhc2 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&pca9450 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&ecspi1 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&gpio1 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&gpio2 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&gpio3 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&gpio4 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&gpio5 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&uart3 {
> ++    u-boot,dm-spl;
> ++    u-boot,dm-pre-reloc;
> ++};
> ++
> ++&usdhc1 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&usdhc2 {
> ++    u-boot,dm-spl;
> ++};
> ++
> ++&wdog1 {
> ++    u-boot,dm-spl;
> ++};
> +-- 
> +2.30.2
> +
> diff --git a/board/kontron/bl-imx8mm/post-build.sh b/board/kontron/bl-imx8mm/post-build.sh
> new file mode 100755
> index 0000000000..bf8861f6a9
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/post-build.sh
> @@ -0,0 +1,7 @@
> +#!/bin/sh
> +BOARD_DIR="$(dirname $0)"
> +PARTUUID="$($HOST_DIR/bin/uuidgen)"
> +
> +install -d "$TARGET_DIR/boot/extlinux/"
> +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/extlinux.conf" > "$TARGET_DIR/boot/extlinux/extlinux.conf"
> +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/genimage.cfg" > "$BINARIES_DIR/genimage.cfg"
> diff --git a/board/kontron/bl-imx8mm/readme.txt b/board/kontron/bl-imx8mm/readme.txt
> new file mode 100644
> index 0000000000..df47ba5174
> --- /dev/null
> +++ b/board/kontron/bl-imx8mm/readme.txt
> @@ -0,0 +1,85 @@
> +Kontron BL i.MX8M Mini
> +======================
> +
> +https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
> +
> +
> +How to build it
> +===============
> +
> +Configure buildroot:
> +
> +  $ make kontron_bl_imx8mm_defconfig
> +
> +Change settings to fit your needs (optional):
> +
> +  $ make menuconfig
> +
> +Compile everything and build the rootfs image:
> +
> +  $ make
> +
> +
> +Result of the build
> +===================
> +
> +After building, the output/images directory contains:
> +
> +  output/images/
> +    ├── bl31.bin
> +    ├── boot.scr
> +    ├── ddr_fw.bin
> +    ├── flash.bin
> +    ├── Image
> +    ├── imx8mm-kontron-n801x-s.dtb
> +    ├── lpddr4_pmu_train_1d_dmem_201904.bin
> +    ├── lpddr4_pmu_train_1d_dmem_202006.bin
> +    ├── lpddr4_pmu_train_1d_dmem.bin
> +    ├── lpddr4_pmu_train_1d_dmem_pad.bin
> +    ├── lpddr4_pmu_train_1d_fw.bin
> +    ├── lpddr4_pmu_train_1d_imem_201904.bin
> +    ├── lpddr4_pmu_train_1d_imem_202006.bin
> +    ├── lpddr4_pmu_train_1d_imem.bin
> +    ├── lpddr4_pmu_train_1d_imem_pad.bin
> +    ├── lpddr4_pmu_train_2d_dmem_201904.bin
> +    ├── lpddr4_pmu_train_2d_dmem_202006.bin
> +    ├── lpddr4_pmu_train_2d_dmem.bin
> +    ├── lpddr4_pmu_train_2d_dmem_pad.bin
> +    ├── lpddr4_pmu_train_2d_fw.bin
> +    ├── lpddr4_pmu_train_2d_imem_201904.bin
> +    ├── lpddr4_pmu_train_2d_imem_202006.bin
> +    ├── lpddr4_pmu_train_2d_imem.bin
> +    ├── lpddr4_pmu_train_2d_imem_pad.bin
> +    ├── lpddr4_pmu_train_fw.bin
> +    ├── rootfs.ext2
> +    ├── rootfs.ext4 -> rootfs.ext2
> +    ├── rootfs.tar
> +    ├── sdcard.img
> +    ├── u-boot.bin
> +    └── u-boot-spl.bin
> +
> +
> +Flashing the SD card image
> +==========================
> +
> +To install the image on a SDCard simply copy sdcard.img to the storage (e.g. SD, eMMC)
> +
> +  $ sudo dd if=output/images/sdcard.img of=<your-sd-device>
> +
> +
> +Preparing the board
> +===================
> +
> + * Connect a serial line to the board
> + * Insert the SD card
> + * Power-up the board
> +
> +
> +Booting the board
> +=================
> +
> +By default the bootloader will search for the first valid image, starting
> +with the internal eMMC. To make sure the bootloader loads bootscript from
> +the correct location (SD card) set the boot_targets environment variable:
> +
> +  $ setenv boot_targets mmc1
> diff --git a/configs/kontron_bl_imx8mm_defconfig b/configs/kontron_bl_imx8mm_defconfig
> new file mode 100644
> index 0000000000..0cf0115bfa
> --- /dev/null
> +++ b/configs/kontron_bl_imx8mm_defconfig
> @@ -0,0 +1,58 @@
> +# Architecture
> +BR2_aarch64=y
> +BR2_ARM_FPU_VFPV3=y
> +
> +BR2_GLOBAL_PATCH_DIR="board/kontron/bl-imx8mm/patches"
> +
> +# System
> +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc2"
> +
> +# Kernel
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_VERSION=y
> +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16"
> +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mm-kontron-n801x-s"
> +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y
> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> +
> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
> +
> +BR2_PACKAGE_FREESCALE_IMX=y
> +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM=y
> +BR2_PACKAGE_FIRMWARE_IMX=y
> +
> +# Filesystem / image
> +BR2_TARGET_ROOTFS_EXT2=y
> +BR2_TARGET_ROOTFS_EXT2_4=y
> +BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
> +
> +# Bootloader
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30880000"
> +BR2_TARGET_UBOOT=y
> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
> +BR2_TARGET_UBOOT_CUSTOM_VERSION=y
> +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="kontron-sl-mx8mm"
> +BR2_TARGET_UBOOT_NEEDS_DTC=y
> +BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
> +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_BIN=y
> +BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y
> +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
> +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin"
> +BR2_TARGET_UBOOT_SPL=y
> +
> +# Required host tools to create the SD/eMMC image
> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/kontron/bl-imx8mm/post-build.sh"
> +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
> +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
> +BR2_PACKAGE_HOST_GENIMAGE=y
> -- 
> 2.30.2
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 15:36 ` Michael Nazzareno Trimarchi
@ 2022-01-31 15:42   ` Heiko Thiery
  2022-01-31 16:38     ` Giulio Benetti
  0 siblings, 1 reply; 11+ messages in thread
From: Heiko Thiery @ 2022-01-31 15:42 UTC (permalink / raw)
  To: Michael Nazzareno Trimarchi
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni, buildroot,
	Giulio Benetti, Fabio Estevam, Yann E . MORIN

Hi Michael,


Am Mo., 31. Jan. 2022 um 16:36 Uhr schrieb Michael Nazzareno Trimarchi
<michael@amarulasolutions.com>:
>
> Hi Heiko
>
> On Mon, Jan 31, 2022 at 4:30 PM Heiko Thiery <heiko.thiery@gmail.com> wrote:
> >
> > The BL i.MX8M Mini is a baseboard that includes the SoM SL i.MX8M Mini.
> >
> > https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
> >
> > Cc: Frieder Schrempf <frieder.schrempf@kontron.de>
> > Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> > ---
> > v5:
> >  - remove BR2_PACKAGE_HOST_UBOOT_TOOLS
> >
> > v4:
> >  - remove BR2_ARM_FPU_VFPV3 since this option is not used for aarch64.
> >    The FPU options are set implicit.
> >
> > v3:
> >  - change offset value to use capitol 'K' value (thanks Guilio)
> >  - add info to uboot patches about submitting to upstream
> >
> > v2:
> >  - switch to extlinux
> >  - directly call genimage.sh
> >   - remove post-image.sh
> >  - remove BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT
> >  - add BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME
> >
> >  DEVELOPERS                                    |   2 +
> >  board/kontron/bl-imx8mm/extlinux.conf         |   4 +
> >  board/kontron/bl-imx8mm/genimage.cfg          |  18 ++
> >  ...m-kontron-n801x-s-convert-options-to.patch |  31 ++
> >  ...m-kontron-n801x-s-add-common-board-u.patch | 305 ++++++++++++++++++
> >  board/kontron/bl-imx8mm/post-build.sh         |   7 +
> >  board/kontron/bl-imx8mm/readme.txt            |  85 +++++
> >  configs/kontron_bl_imx8mm_defconfig           |  58 ++++
> >  8 files changed, 510 insertions(+)
> >  create mode 100644 board/kontron/bl-imx8mm/extlinux.conf
> >  create mode 100644 board/kontron/bl-imx8mm/genimage.cfg
> >  create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> >  create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> >  create mode 100755 board/kontron/bl-imx8mm/post-build.sh
> >  create mode 100644 board/kontron/bl-imx8mm/readme.txt
> >  create mode 100644 configs/kontron_bl_imx8mm_defconfig
> >
> > diff --git a/DEVELOPERS b/DEVELOPERS
> > index a1ec9a091e..38724726d4 100644
> > --- a/DEVELOPERS
> > +++ b/DEVELOPERS
> > @@ -1183,7 +1183,9 @@ F:        package/python-sip/
> >  F:     package/uhd/
> >
> >  N:     Heiko Thiery <heiko.thiery@gmail.com>
> > +F:     board/kontron/bl-imx8mm/
> >  F:     board/kontron/pitx-imx8m/
> > +F:     configs/kontron_bl_imx8mm_defconfig
> >  F:     configs/kontron_pitx_imx8m_defconfig
> >  F:     package/altera-stapl/
> >  F:     package/ipmitool/
> > diff --git a/board/kontron/bl-imx8mm/extlinux.conf b/board/kontron/bl-imx8mm/extlinux.conf
> > new file mode 100644
> > index 0000000000..d38f7f81b7
> > --- /dev/null
> > +++ b/board/kontron/bl-imx8mm/extlinux.conf
> > @@ -0,0 +1,4 @@
> > +label buildroot
> > +  kernel /boot/Image
> > +  devicetree /boot/freescale/imx8mm-kontron-n801x-s.dtb
> > +  append root=PARTUUID=%PARTUUID% rootwait rw
> > diff --git a/board/kontron/bl-imx8mm/genimage.cfg b/board/kontron/bl-imx8mm/genimage.cfg
> > new file mode 100644
> > index 0000000000..c98bc4f150
> > --- /dev/null
> > +++ b/board/kontron/bl-imx8mm/genimage.cfg
> > @@ -0,0 +1,18 @@
> > +image sdcard.img {
> > +       hdimage {
> > +               partition-table-type = "gpt"
> > +               gpt-location = 16K
> > +       }
> > +
> > +       partition imx-boot {
> > +               in-partition-table = "no"
> > +               image = "flash.bin"
> > +               offset = 33K
> > +       }
> > +
> > +       partition rootfs {
> > +               image = "rootfs.ext4"
> > +               offset = 8M
> > +               partition-uuid = %PARTUUID%
> > +       }
> > +}
> > diff --git a/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> > new file mode 100644
> > index 0000000000..6d76282def
> > --- /dev/null
> > +++ b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> > @@ -0,0 +1,31 @@
> > +From 95a311af81cd47c44d3d6e3f717f06a06d8f3dfd Mon Sep 17 00:00:00 2001
> > +From: Heiko Thiery <heiko.thiery@gmail.com>
> > +Date: Mon, 10 Jan 2022 14:13:02 +0100
> > +Subject: [PATCH 1/2] imx: imx8mm: imx8mm-kontron-n801x-s: convert options to Kconfig
> > +
> > +CONFIG_SPL_MMC and CONFIG_SPL_SERIAL
> > +
> > +Patch submitted upstream:
> > +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-1-heiko.thiery@gmail.com/
> > +
> > +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> > +---
> > + configs/kontron-sl-mx8mm_defconfig | 2 ++
> > + 1 file changed, 2 insertions(+)
> > +
> > +diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
> > +index 35d12fca32..940bf07a92 100644
> > +--- a/configs/kontron-sl-mx8mm_defconfig
> > ++++ b/configs/kontron-sl-mx8mm_defconfig
> > +@@ -15,6 +15,8 @@ CONFIG_SPL_DM_SPI=y
> > + CONFIG_DEFAULT_DEVICE_TREE="imx8mm-kontron-n801x-s"
> > + CONFIG_SPL_TEXT_BASE=0x7E1000
> > + CONFIG_TARGET_KONTRON_MX8MM=y
> > ++CONFIG_SPL_MMC=y
> > ++CONFIG_SPL_SERIAL=y
> > + CONFIG_BOOTCOUNT_BOOTLIMIT=3
> > + CONFIG_SPL=y
> > + CONFIG_DISTRO_DEFAULTS=y
> > +--
> > +2.30.2
> > +
> > diff --git a/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> > new file mode 100644
> > index 0000000000..a88d7aba87
> > --- /dev/null
> > +++ b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> > @@ -0,0 +1,305 @@
> > +From ef694c19c074333fd16589ec6ffef3e7ca895186 Mon Sep 17 00:00:00 2001
> > +From: Heiko Thiery <heiko.thiery@gmail.com>
> > +Date: Wed, 12 Jan 2022 08:44:36 +0100
> > +Subject: [PATCH 2/2] imx: imx8mm: imx8mm-kontron-n801x-s: add common board
> > + u-boot.dtsi
> > +
> > +When using a board variant that selects the lvds specific dtb the
> > +*.u-boot.dtsi file will not be included. To have a lvds dtb specific
> > +u-boot.dtsi file move this part to a common board u-boot.dtsi file and
> > +include this in the board base u-boot.dtsi and create an additional one
> > +for the lvds variant.
> > +
> > +Patch submitted upstream:
> > +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-2-heiko.thiery@gmail.com/
> > +
> > +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> > +---
> > + .../imx8mm-kontron-n801x-s-lvds-u-boot.dtsi   |   6 +
> > + .../dts/imx8mm-kontron-n801x-s-u-boot.dtsi    | 124 +----------------
> > + arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi | 128 ++++++++++++++++++
> > + 3 files changed, 135 insertions(+), 123 deletions(-)
> > + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> > + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> > +
> > +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> > +new file mode 100644
> > +index 0000000000..4bf75722bf
> > +--- /dev/null
> > ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> > +@@ -0,0 +1,6 @@
> > ++// SPDX-License-Identifier: GPL-2.0+
> > ++/*
> > ++ * Copyright (C) 2019 Kontron Electronics GmbH
> > ++ */
> > ++
> > ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
> > +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> > +index 22d18e6f1c..4bf75722bf 100644
> > +--- a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> > ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> > +@@ -3,126 +3,4 @@
> > +  * Copyright (C) 2019 Kontron Electronics GmbH
> > +  */
> > +
> > +-#include "imx8mm-u-boot.dtsi"
> > +-
> > +-/ {
> > +-      aliases {
> > +-              usb0 = &usbotg1;
> > +-              usb1 = &usbotg2;
> > +-      };
> > +-
> > +-      wdt-reboot {
> > +-              compatible = "wdt-reboot";
> > +-              wdt = <&wdog1>;
> > +-              u-boot,dm-spl;
> > +-      };
> > +-
> > +-      firmware {
> > +-              optee {
> > +-                      compatible = "linaro,optee-tz";
> > +-                      method = "smc";
> > +-              };
> > +-      };
> > +-};
> > +-
> > +-&fec1 {
> > +-      phy-mode = "rgmii-rxid";
> > +-};
> > +-
> > +-&i2c1 {
> > +-      u-boot,dm-spl;
> > +-      u-boot,dm-pre-reloc;
> > +-};
> > +-
> > +-&i2c2 {
> > +-      status = "okay";
> > +-      u-boot,dm-spl;
> > +-      u-boot,dm-pre-reloc;
> > +-};
> > +-
> > +-&pinctrl_ecspi1 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&pinctrl_i2c1 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&pinctrl_pmic {
> > +-      u-boot,dm-spl;
> > +-      fsl,pins = <
> > +-              MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0               0x141
> > +-              /* Disable Pullup for SD_VSEL */
> > +-              MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4               0x41
> > +-      >;
> > +-};
> > +-
> > +-&pinctrl_uart3 {
> > +-      u-boot,dm-spl;
> > +-      u-boot,dm-pre-reloc;
> > +-};
> > +-
> > +-&pinctrl_usdhc1 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&pinctrl_usdhc1_100mhz {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&pinctrl_usdhc1_200mhz {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&pinctrl_usdhc2 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&pca9450 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&ecspi1 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&gpio1 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&gpio2 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&gpio3 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&gpio4 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&gpio5 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&uart3 {
> > +-      u-boot,dm-spl;
> > +-      u-boot,dm-pre-reloc;
> > +-};
> > +-
> > +-&usdhc1 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&usdhc2 {
> > +-      u-boot,dm-spl;
> > +-};
> > +-
> > +-&wdog1 {
> > +-      u-boot,dm-spl;
> > +-};
> > ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
> > +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> > +new file mode 100644
> > +index 0000000000..22d18e6f1c
> > +--- /dev/null
> > ++++ b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> > +@@ -0,0 +1,128 @@
> > ++// SPDX-License-Identifier: GPL-2.0+
> > ++/*
> > ++ * Copyright (C) 2019 Kontron Electronics GmbH
> > ++ */
> > ++
> > ++#include "imx8mm-u-boot.dtsi"
> > ++
> > ++/ {
> > ++      aliases {
> > ++              usb0 = &usbotg1;
> > ++              usb1 = &usbotg2;
> > ++      };
> > ++
> > ++      wdt-reboot {
> > ++              compatible = "wdt-reboot";
> > ++              wdt = <&wdog1>;
> > ++              u-boot,dm-spl;
> > ++      };
> > ++
> > ++      firmware {
> > ++              optee {
> > ++                      compatible = "linaro,optee-tz";
> > ++                      method = "smc";
> > ++              };
> > ++      };
> > ++};
> > ++
> > ++&fec1 {
> > ++      phy-mode = "rgmii-rxid";
> > ++};
> > ++
> > ++&i2c1 {
> > ++      u-boot,dm-spl;
> > ++      u-boot,dm-pre-reloc;
> > ++};
> > ++
> > ++&i2c2 {
> > ++      status = "okay";
> > ++      u-boot,dm-spl;
> > ++      u-boot,dm-pre-reloc;
> > ++};
> > ++
> > ++&pinctrl_ecspi1 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&pinctrl_i2c1 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&pinctrl_pmic {
> > ++      u-boot,dm-spl;
> > ++      fsl,pins = <
> > ++              MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0               0x141
> > ++              /* Disable Pullup for SD_VSEL */
> > ++              MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4               0x41
> > ++      >;
> > ++};
> > ++
> > ++&pinctrl_uart3 {
> > ++      u-boot,dm-spl;
> > ++      u-boot,dm-pre-reloc;
> > ++};
> > ++
> > ++&pinctrl_usdhc1 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&pinctrl_usdhc1_100mhz {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&pinctrl_usdhc1_200mhz {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&pinctrl_usdhc2 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&pca9450 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&ecspi1 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&gpio1 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&gpio2 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&gpio3 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&gpio4 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&gpio5 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&uart3 {
> > ++      u-boot,dm-spl;
> > ++      u-boot,dm-pre-reloc;
> > ++};
> > ++
> > ++&usdhc1 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&usdhc2 {
> > ++      u-boot,dm-spl;
> > ++};
> > ++
> > ++&wdog1 {
> > ++      u-boot,dm-spl;
> > ++};
> > +--
> > +2.30.2
> > +
> > diff --git a/board/kontron/bl-imx8mm/post-build.sh b/board/kontron/bl-imx8mm/post-build.sh
> > new file mode 100755
> > index 0000000000..bf8861f6a9
> > --- /dev/null
> > +++ b/board/kontron/bl-imx8mm/post-build.sh
> > @@ -0,0 +1,7 @@
> > +#!/bin/sh
> > +BOARD_DIR="$(dirname $0)"
> > +PARTUUID="$($HOST_DIR/bin/uuidgen)"
> > +
> > +install -d "$TARGET_DIR/boot/extlinux/"
> > +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/extlinux.conf" > "$TARGET_DIR/boot/extlinux/extlinux.conf"
> > +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/genimage.cfg" > "$BINARIES_DIR/genimage.cfg"
> > diff --git a/board/kontron/bl-imx8mm/readme.txt b/board/kontron/bl-imx8mm/readme.txt
> > new file mode 100644
> > index 0000000000..df47ba5174
> > --- /dev/null
> > +++ b/board/kontron/bl-imx8mm/readme.txt
> > @@ -0,0 +1,85 @@
> > +Kontron BL i.MX8M Mini
> > +======================
> > +
> > +https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
> > +
> > +
> > +How to build it
> > +===============
> > +
> > +Configure buildroot:
> > +
> > +  $ make kontron_bl_imx8mm_defconfig
> > +
> > +Change settings to fit your needs (optional):
> > +
> > +  $ make menuconfig
> > +
> > +Compile everything and build the rootfs image:
> > +
> > +  $ make
> > +
> > +
> > +Result of the build
> > +===================
> > +
> > +After building, the output/images directory contains:
> > +
> > +  output/images/
> > +    ├── bl31.bin
> > +    ├── boot.scr
> > +    ├── ddr_fw.bin
> > +    ├── flash.bin
> > +    ├── Image
> > +    ├── imx8mm-kontron-n801x-s.dtb
> > +    ├── lpddr4_pmu_train_1d_dmem_201904.bin
> > +    ├── lpddr4_pmu_train_1d_dmem_202006.bin
> > +    ├── lpddr4_pmu_train_1d_dmem.bin
> > +    ├── lpddr4_pmu_train_1d_dmem_pad.bin
> > +    ├── lpddr4_pmu_train_1d_fw.bin
> > +    ├── lpddr4_pmu_train_1d_imem_201904.bin
> > +    ├── lpddr4_pmu_train_1d_imem_202006.bin
> > +    ├── lpddr4_pmu_train_1d_imem.bin
> > +    ├── lpddr4_pmu_train_1d_imem_pad.bin
> > +    ├── lpddr4_pmu_train_2d_dmem_201904.bin
> > +    ├── lpddr4_pmu_train_2d_dmem_202006.bin
> > +    ├── lpddr4_pmu_train_2d_dmem.bin
> > +    ├── lpddr4_pmu_train_2d_dmem_pad.bin
> > +    ├── lpddr4_pmu_train_2d_fw.bin
> > +    ├── lpddr4_pmu_train_2d_imem_201904.bin
> > +    ├── lpddr4_pmu_train_2d_imem_202006.bin
> > +    ├── lpddr4_pmu_train_2d_imem.bin
> > +    ├── lpddr4_pmu_train_2d_imem_pad.bin
> > +    ├── lpddr4_pmu_train_fw.bin
> > +    ├── rootfs.ext2
> > +    ├── rootfs.ext4 -> rootfs.ext2
> > +    ├── rootfs.tar
> > +    ├── sdcard.img
> > +    ├── u-boot.bin
> > +    └── u-boot-spl.bin
> > +
> > +
> > +Flashing the SD card image
> > +==========================
> > +
> > +To install the image on a SDCard simply copy sdcard.img to the storage (e.g. SD, eMMC)
> > +
> > +  $ sudo dd if=output/images/sdcard.img of=<your-sd-device>
> > +
> > +
> > +Preparing the board
> > +===================
> > +
> > + * Connect a serial line to the board
> > + * Insert the SD card
> > + * Power-up the board
> > +
> > +
> > +Booting the board
> > +=================
> > +
> > +By default the bootloader will search for the first valid image, starting
> > +with the internal eMMC. To make sure the bootloader loads bootscript from
> > +the correct location (SD card) set the boot_targets environment variable:
> > +
> > +  $ setenv boot_targets mmc1
> > diff --git a/configs/kontron_bl_imx8mm_defconfig b/configs/kontron_bl_imx8mm_defconfig
> > new file mode 100644
> > index 0000000000..0cf0115bfa
> > --- /dev/null
> > +++ b/configs/kontron_bl_imx8mm_defconfig
> > @@ -0,0 +1,58 @@
> > +# Architecture
> > +BR2_aarch64=y
> > +BR2_ARM_FPU_VFPV3=y
> > +
> > +BR2_GLOBAL_PATCH_DIR="board/kontron/bl-imx8mm/patches"
> > +
> > +# System
> > +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc2"
> > +
> > +# Kernel
> > +BR2_LINUX_KERNEL=y
> > +BR2_LINUX_KERNEL_CUSTOM_VERSION=y
> > +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16"
> > +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
> > +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> > +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mm-kontron-n801x-s"
> > +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y
> > +BR2_LINUX_KERNEL_INSTALL_TARGET=y
> > +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> > +
> > +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
> > +
> > +BR2_PACKAGE_FREESCALE_IMX=y
> > +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM=y
> > +BR2_PACKAGE_FIRMWARE_IMX=y
> > +
> > +# Filesystem / image
> > +BR2_TARGET_ROOTFS_EXT2=y
> > +BR2_TARGET_ROOTFS_EXT2_4=y
> > +BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
> > +
> > +# Bootloader
> > +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> > +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
> > +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6"
> > +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
> > +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
> > +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30880000"
> > +BR2_TARGET_UBOOT=y
> > +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
> > +BR2_TARGET_UBOOT_CUSTOM_VERSION=y
> > +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
> > +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="kontron-sl-mx8mm"
> > +BR2_TARGET_UBOOT_NEEDS_DTC=y
> > +BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
> > +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
> > +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> > +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_BIN=y
> > +BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y
> > +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
> > +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin"
> > +BR2_TARGET_UBOOT_SPL=y
> > +
> > +# Required host tools to create the SD/eMMC image
> > +BR2_ROOTFS_POST_BUILD_SCRIPT="board/kontron/bl-imx8mm/post-build.sh"
> > +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
> > +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
> > +BR2_PACKAGE_HOST_GENIMAGE=y
>
> I have seen that some people like to have this organization but it's
> not really nice to maintain. I would like
> to savedefconfig and use that one instead of having nice commented
> part. Is this mandatory?

As far as I know there is no rule how to do that. For me it seems to
be more readable and clean. But this is only my opinion.

-- 
Heiko
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 15:42   ` Heiko Thiery
@ 2022-01-31 16:38     ` Giulio Benetti
  2022-01-31 16:42       ` Michael Nazzareno Trimarchi
  0 siblings, 1 reply; 11+ messages in thread
From: Giulio Benetti @ 2022-01-31 16:38 UTC (permalink / raw)
  To: Heiko Thiery, Michael Nazzareno Trimarchi
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni, buildroot,
	Fabio Estevam, Yann E . MORIN

Hi Michael,

On 31/01/22 16:42, Heiko Thiery wrote:
> Hi Michael,
> 
> 
> Am Mo., 31. Jan. 2022 um 16:36 Uhr schrieb Michael Nazzareno Trimarchi
> <michael@amarulasolutions.com>:
>>
>> Hi Heiko
>>
>> On Mon, Jan 31, 2022 at 4:30 PM Heiko Thiery <heiko.thiery@gmail.com> wrote:
>>>
>>> The BL i.MX8M Mini is a baseboard that includes the SoM SL i.MX8M Mini.
>>>
>>> https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
>>>
>>> Cc: Frieder Schrempf <frieder.schrempf@kontron.de>
>>> Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
>>> ---
>>> v5:
>>>   - remove BR2_PACKAGE_HOST_UBOOT_TOOLS
>>>
>>> v4:
>>>   - remove BR2_ARM_FPU_VFPV3 since this option is not used for aarch64.
>>>     The FPU options are set implicit.
>>>
>>> v3:
>>>   - change offset value to use capitol 'K' value (thanks Guilio)
>>>   - add info to uboot patches about submitting to upstream
>>>
>>> v2:
>>>   - switch to extlinux
>>>   - directly call genimage.sh
>>>    - remove post-image.sh
>>>   - remove BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT
>>>   - add BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME
>>>
>>>   DEVELOPERS                                    |   2 +
>>>   board/kontron/bl-imx8mm/extlinux.conf         |   4 +
>>>   board/kontron/bl-imx8mm/genimage.cfg          |  18 ++
>>>   ...m-kontron-n801x-s-convert-options-to.patch |  31 ++
>>>   ...m-kontron-n801x-s-add-common-board-u.patch | 305 ++++++++++++++++++
>>>   board/kontron/bl-imx8mm/post-build.sh         |   7 +
>>>   board/kontron/bl-imx8mm/readme.txt            |  85 +++++
>>>   configs/kontron_bl_imx8mm_defconfig           |  58 ++++
>>>   8 files changed, 510 insertions(+)
>>>   create mode 100644 board/kontron/bl-imx8mm/extlinux.conf
>>>   create mode 100644 board/kontron/bl-imx8mm/genimage.cfg
>>>   create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
>>>   create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
>>>   create mode 100755 board/kontron/bl-imx8mm/post-build.sh
>>>   create mode 100644 board/kontron/bl-imx8mm/readme.txt
>>>   create mode 100644 configs/kontron_bl_imx8mm_defconfig
>>>
>>> diff --git a/DEVELOPERS b/DEVELOPERS
>>> index a1ec9a091e..38724726d4 100644
>>> --- a/DEVELOPERS
>>> +++ b/DEVELOPERS
>>> @@ -1183,7 +1183,9 @@ F:        package/python-sip/
>>>   F:     package/uhd/
>>>
>>>   N:     Heiko Thiery <heiko.thiery@gmail.com>
>>> +F:     board/kontron/bl-imx8mm/
>>>   F:     board/kontron/pitx-imx8m/
>>> +F:     configs/kontron_bl_imx8mm_defconfig
>>>   F:     configs/kontron_pitx_imx8m_defconfig
>>>   F:     package/altera-stapl/
>>>   F:     package/ipmitool/
>>> diff --git a/board/kontron/bl-imx8mm/extlinux.conf b/board/kontron/bl-imx8mm/extlinux.conf
>>> new file mode 100644
>>> index 0000000000..d38f7f81b7
>>> --- /dev/null
>>> +++ b/board/kontron/bl-imx8mm/extlinux.conf
>>> @@ -0,0 +1,4 @@
>>> +label buildroot
>>> +  kernel /boot/Image
>>> +  devicetree /boot/freescale/imx8mm-kontron-n801x-s.dtb
>>> +  append root=PARTUUID=%PARTUUID% rootwait rw
>>> diff --git a/board/kontron/bl-imx8mm/genimage.cfg b/board/kontron/bl-imx8mm/genimage.cfg
>>> new file mode 100644
>>> index 0000000000..c98bc4f150
>>> --- /dev/null
>>> +++ b/board/kontron/bl-imx8mm/genimage.cfg
>>> @@ -0,0 +1,18 @@
>>> +image sdcard.img {
>>> +       hdimage {
>>> +               partition-table-type = "gpt"
>>> +               gpt-location = 16K
>>> +       }
>>> +
>>> +       partition imx-boot {
>>> +               in-partition-table = "no"
>>> +               image = "flash.bin"
>>> +               offset = 33K
>>> +       }
>>> +
>>> +       partition rootfs {
>>> +               image = "rootfs.ext4"
>>> +               offset = 8M
>>> +               partition-uuid = %PARTUUID%
>>> +       }
>>> +}
>>> diff --git a/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
>>> new file mode 100644
>>> index 0000000000..6d76282def
>>> --- /dev/null
>>> +++ b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
>>> @@ -0,0 +1,31 @@
>>> +From 95a311af81cd47c44d3d6e3f717f06a06d8f3dfd Mon Sep 17 00:00:00 2001
>>> +From: Heiko Thiery <heiko.thiery@gmail.com>
>>> +Date: Mon, 10 Jan 2022 14:13:02 +0100
>>> +Subject: [PATCH 1/2] imx: imx8mm: imx8mm-kontron-n801x-s: convert options to Kconfig
>>> +
>>> +CONFIG_SPL_MMC and CONFIG_SPL_SERIAL
>>> +
>>> +Patch submitted upstream:
>>> +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-1-heiko.thiery@gmail.com/
>>> +
>>> +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
>>> +---
>>> + configs/kontron-sl-mx8mm_defconfig | 2 ++
>>> + 1 file changed, 2 insertions(+)
>>> +
>>> +diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
>>> +index 35d12fca32..940bf07a92 100644
>>> +--- a/configs/kontron-sl-mx8mm_defconfig
>>> ++++ b/configs/kontron-sl-mx8mm_defconfig
>>> +@@ -15,6 +15,8 @@ CONFIG_SPL_DM_SPI=y
>>> + CONFIG_DEFAULT_DEVICE_TREE="imx8mm-kontron-n801x-s"
>>> + CONFIG_SPL_TEXT_BASE=0x7E1000
>>> + CONFIG_TARGET_KONTRON_MX8MM=y
>>> ++CONFIG_SPL_MMC=y
>>> ++CONFIG_SPL_SERIAL=y
>>> + CONFIG_BOOTCOUNT_BOOTLIMIT=3
>>> + CONFIG_SPL=y
>>> + CONFIG_DISTRO_DEFAULTS=y
>>> +--
>>> +2.30.2
>>> +
>>> diff --git a/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
>>> new file mode 100644
>>> index 0000000000..a88d7aba87
>>> --- /dev/null
>>> +++ b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
>>> @@ -0,0 +1,305 @@
>>> +From ef694c19c074333fd16589ec6ffef3e7ca895186 Mon Sep 17 00:00:00 2001
>>> +From: Heiko Thiery <heiko.thiery@gmail.com>
>>> +Date: Wed, 12 Jan 2022 08:44:36 +0100
>>> +Subject: [PATCH 2/2] imx: imx8mm: imx8mm-kontron-n801x-s: add common board
>>> + u-boot.dtsi
>>> +
>>> +When using a board variant that selects the lvds specific dtb the
>>> +*.u-boot.dtsi file will not be included. To have a lvds dtb specific
>>> +u-boot.dtsi file move this part to a common board u-boot.dtsi file and
>>> +include this in the board base u-boot.dtsi and create an additional one
>>> +for the lvds variant.
>>> +
>>> +Patch submitted upstream:
>>> +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-2-heiko.thiery@gmail.com/
>>> +
>>> +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
>>> +---
>>> + .../imx8mm-kontron-n801x-s-lvds-u-boot.dtsi   |   6 +
>>> + .../dts/imx8mm-kontron-n801x-s-u-boot.dtsi    | 124 +----------------
>>> + arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi | 128 ++++++++++++++++++
>>> + 3 files changed, 135 insertions(+), 123 deletions(-)
>>> + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
>>> + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
>>> +
>>> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
>>> +new file mode 100644
>>> +index 0000000000..4bf75722bf
>>> +--- /dev/null
>>> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
>>> +@@ -0,0 +1,6 @@
>>> ++// SPDX-License-Identifier: GPL-2.0+
>>> ++/*
>>> ++ * Copyright (C) 2019 Kontron Electronics GmbH
>>> ++ */
>>> ++
>>> ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
>>> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
>>> +index 22d18e6f1c..4bf75722bf 100644
>>> +--- a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
>>> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
>>> +@@ -3,126 +3,4 @@
>>> +  * Copyright (C) 2019 Kontron Electronics GmbH
>>> +  */
>>> +
>>> +-#include "imx8mm-u-boot.dtsi"
>>> +-
>>> +-/ {
>>> +-      aliases {
>>> +-              usb0 = &usbotg1;
>>> +-              usb1 = &usbotg2;
>>> +-      };
>>> +-
>>> +-      wdt-reboot {
>>> +-              compatible = "wdt-reboot";
>>> +-              wdt = <&wdog1>;
>>> +-              u-boot,dm-spl;
>>> +-      };
>>> +-
>>> +-      firmware {
>>> +-              optee {
>>> +-                      compatible = "linaro,optee-tz";
>>> +-                      method = "smc";
>>> +-              };
>>> +-      };
>>> +-};
>>> +-
>>> +-&fec1 {
>>> +-      phy-mode = "rgmii-rxid";
>>> +-};
>>> +-
>>> +-&i2c1 {
>>> +-      u-boot,dm-spl;
>>> +-      u-boot,dm-pre-reloc;
>>> +-};
>>> +-
>>> +-&i2c2 {
>>> +-      status = "okay";
>>> +-      u-boot,dm-spl;
>>> +-      u-boot,dm-pre-reloc;
>>> +-};
>>> +-
>>> +-&pinctrl_ecspi1 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&pinctrl_i2c1 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&pinctrl_pmic {
>>> +-      u-boot,dm-spl;
>>> +-      fsl,pins = <
>>> +-              MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0               0x141
>>> +-              /* Disable Pullup for SD_VSEL */
>>> +-              MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4               0x41
>>> +-      >;
>>> +-};
>>> +-
>>> +-&pinctrl_uart3 {
>>> +-      u-boot,dm-spl;
>>> +-      u-boot,dm-pre-reloc;
>>> +-};
>>> +-
>>> +-&pinctrl_usdhc1 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&pinctrl_usdhc1_100mhz {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&pinctrl_usdhc1_200mhz {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&pinctrl_usdhc2 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&pca9450 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&ecspi1 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&gpio1 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&gpio2 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&gpio3 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&gpio4 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&gpio5 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&uart3 {
>>> +-      u-boot,dm-spl;
>>> +-      u-boot,dm-pre-reloc;
>>> +-};
>>> +-
>>> +-&usdhc1 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&usdhc2 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> +-
>>> +-&wdog1 {
>>> +-      u-boot,dm-spl;
>>> +-};
>>> ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
>>> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
>>> +new file mode 100644
>>> +index 0000000000..22d18e6f1c
>>> +--- /dev/null
>>> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
>>> +@@ -0,0 +1,128 @@
>>> ++// SPDX-License-Identifier: GPL-2.0+
>>> ++/*
>>> ++ * Copyright (C) 2019 Kontron Electronics GmbH
>>> ++ */
>>> ++
>>> ++#include "imx8mm-u-boot.dtsi"
>>> ++
>>> ++/ {
>>> ++      aliases {
>>> ++              usb0 = &usbotg1;
>>> ++              usb1 = &usbotg2;
>>> ++      };
>>> ++
>>> ++      wdt-reboot {
>>> ++              compatible = "wdt-reboot";
>>> ++              wdt = <&wdog1>;
>>> ++              u-boot,dm-spl;
>>> ++      };
>>> ++
>>> ++      firmware {
>>> ++              optee {
>>> ++                      compatible = "linaro,optee-tz";
>>> ++                      method = "smc";
>>> ++              };
>>> ++      };
>>> ++};
>>> ++
>>> ++&fec1 {
>>> ++      phy-mode = "rgmii-rxid";
>>> ++};
>>> ++
>>> ++&i2c1 {
>>> ++      u-boot,dm-spl;
>>> ++      u-boot,dm-pre-reloc;
>>> ++};
>>> ++
>>> ++&i2c2 {
>>> ++      status = "okay";
>>> ++      u-boot,dm-spl;
>>> ++      u-boot,dm-pre-reloc;
>>> ++};
>>> ++
>>> ++&pinctrl_ecspi1 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&pinctrl_i2c1 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&pinctrl_pmic {
>>> ++      u-boot,dm-spl;
>>> ++      fsl,pins = <
>>> ++              MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0               0x141
>>> ++              /* Disable Pullup for SD_VSEL */
>>> ++              MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4               0x41
>>> ++      >;
>>> ++};
>>> ++
>>> ++&pinctrl_uart3 {
>>> ++      u-boot,dm-spl;
>>> ++      u-boot,dm-pre-reloc;
>>> ++};
>>> ++
>>> ++&pinctrl_usdhc1 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&pinctrl_usdhc1_100mhz {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&pinctrl_usdhc1_200mhz {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&pinctrl_usdhc2 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&pca9450 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&ecspi1 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&gpio1 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&gpio2 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&gpio3 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&gpio4 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&gpio5 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&uart3 {
>>> ++      u-boot,dm-spl;
>>> ++      u-boot,dm-pre-reloc;
>>> ++};
>>> ++
>>> ++&usdhc1 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&usdhc2 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> ++
>>> ++&wdog1 {
>>> ++      u-boot,dm-spl;
>>> ++};
>>> +--
>>> +2.30.2
>>> +
>>> diff --git a/board/kontron/bl-imx8mm/post-build.sh b/board/kontron/bl-imx8mm/post-build.sh
>>> new file mode 100755
>>> index 0000000000..bf8861f6a9
>>> --- /dev/null
>>> +++ b/board/kontron/bl-imx8mm/post-build.sh
>>> @@ -0,0 +1,7 @@
>>> +#!/bin/sh
>>> +BOARD_DIR="$(dirname $0)"
>>> +PARTUUID="$($HOST_DIR/bin/uuidgen)"
>>> +
>>> +install -d "$TARGET_DIR/boot/extlinux/"
>>> +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/extlinux.conf" > "$TARGET_DIR/boot/extlinux/extlinux.conf"
>>> +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/genimage.cfg" > "$BINARIES_DIR/genimage.cfg"
>>> diff --git a/board/kontron/bl-imx8mm/readme.txt b/board/kontron/bl-imx8mm/readme.txt
>>> new file mode 100644
>>> index 0000000000..df47ba5174
>>> --- /dev/null
>>> +++ b/board/kontron/bl-imx8mm/readme.txt
>>> @@ -0,0 +1,85 @@
>>> +Kontron BL i.MX8M Mini
>>> +======================
>>> +
>>> +https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
>>> +
>>> +
>>> +How to build it
>>> +===============
>>> +
>>> +Configure buildroot:
>>> +
>>> +  $ make kontron_bl_imx8mm_defconfig
>>> +
>>> +Change settings to fit your needs (optional):
>>> +
>>> +  $ make menuconfig
>>> +
>>> +Compile everything and build the rootfs image:
>>> +
>>> +  $ make
>>> +
>>> +
>>> +Result of the build
>>> +===================
>>> +
>>> +After building, the output/images directory contains:
>>> +
>>> +  output/images/
>>> +    ├── bl31.bin
>>> +    ├── boot.scr
>>> +    ├── ddr_fw.bin
>>> +    ├── flash.bin
>>> +    ├── Image
>>> +    ├── imx8mm-kontron-n801x-s.dtb
>>> +    ├── lpddr4_pmu_train_1d_dmem_201904.bin
>>> +    ├── lpddr4_pmu_train_1d_dmem_202006.bin
>>> +    ├── lpddr4_pmu_train_1d_dmem.bin
>>> +    ├── lpddr4_pmu_train_1d_dmem_pad.bin
>>> +    ├── lpddr4_pmu_train_1d_fw.bin
>>> +    ├── lpddr4_pmu_train_1d_imem_201904.bin
>>> +    ├── lpddr4_pmu_train_1d_imem_202006.bin
>>> +    ├── lpddr4_pmu_train_1d_imem.bin
>>> +    ├── lpddr4_pmu_train_1d_imem_pad.bin
>>> +    ├── lpddr4_pmu_train_2d_dmem_201904.bin
>>> +    ├── lpddr4_pmu_train_2d_dmem_202006.bin
>>> +    ├── lpddr4_pmu_train_2d_dmem.bin
>>> +    ├── lpddr4_pmu_train_2d_dmem_pad.bin
>>> +    ├── lpddr4_pmu_train_2d_fw.bin
>>> +    ├── lpddr4_pmu_train_2d_imem_201904.bin
>>> +    ├── lpddr4_pmu_train_2d_imem_202006.bin
>>> +    ├── lpddr4_pmu_train_2d_imem.bin
>>> +    ├── lpddr4_pmu_train_2d_imem_pad.bin
>>> +    ├── lpddr4_pmu_train_fw.bin
>>> +    ├── rootfs.ext2
>>> +    ├── rootfs.ext4 -> rootfs.ext2
>>> +    ├── rootfs.tar
>>> +    ├── sdcard.img
>>> +    ├── u-boot.bin
>>> +    └── u-boot-spl.bin
>>> +
>>> +
>>> +Flashing the SD card image
>>> +==========================
>>> +
>>> +To install the image on a SDCard simply copy sdcard.img to the storage (e.g. SD, eMMC)
>>> +
>>> +  $ sudo dd if=output/images/sdcard.img of=<your-sd-device>
>>> +
>>> +
>>> +Preparing the board
>>> +===================
>>> +
>>> + * Connect a serial line to the board
>>> + * Insert the SD card
>>> + * Power-up the board
>>> +
>>> +
>>> +Booting the board
>>> +=================
>>> +
>>> +By default the bootloader will search for the first valid image, starting
>>> +with the internal eMMC. To make sure the bootloader loads bootscript from
>>> +the correct location (SD card) set the boot_targets environment variable:
>>> +
>>> +  $ setenv boot_targets mmc1
>>> diff --git a/configs/kontron_bl_imx8mm_defconfig b/configs/kontron_bl_imx8mm_defconfig
>>> new file mode 100644
>>> index 0000000000..0cf0115bfa
>>> --- /dev/null
>>> +++ b/configs/kontron_bl_imx8mm_defconfig
>>> @@ -0,0 +1,58 @@
>>> +# Architecture
>>> +BR2_aarch64=y
>>> +BR2_ARM_FPU_VFPV3=y
>>> +
>>> +BR2_GLOBAL_PATCH_DIR="board/kontron/bl-imx8mm/patches"
>>> +
>>> +# System
>>> +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc2"
>>> +
>>> +# Kernel
>>> +BR2_LINUX_KERNEL=y
>>> +BR2_LINUX_KERNEL_CUSTOM_VERSION=y
>>> +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16"
>>> +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
>>> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
>>> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mm-kontron-n801x-s"
>>> +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y
>>> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
>>> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
>>> +
>>> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
>>> +
>>> +BR2_PACKAGE_FREESCALE_IMX=y
>>> +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM=y
>>> +BR2_PACKAGE_FIRMWARE_IMX=y
>>> +
>>> +# Filesystem / image
>>> +BR2_TARGET_ROOTFS_EXT2=y
>>> +BR2_TARGET_ROOTFS_EXT2_4=y
>>> +BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
>>> +
>>> +# Bootloader
>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6"
>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30880000"
>>> +BR2_TARGET_UBOOT=y
>>> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
>>> +BR2_TARGET_UBOOT_CUSTOM_VERSION=y
>>> +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
>>> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="kontron-sl-mx8mm"
>>> +BR2_TARGET_UBOOT_NEEDS_DTC=y
>>> +BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
>>> +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
>>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
>>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_BIN=y
>>> +BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y
>>> +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
>>> +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin"
>>> +BR2_TARGET_UBOOT_SPL=y
>>> +
>>> +# Required host tools to create the SD/eMMC image
>>> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/kontron/bl-imx8mm/post-build.sh"
>>> +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
>>> +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
>>> +BR2_PACKAGE_HOST_GENIMAGE=y
>>
>> I have seen that some people like to have this organization but it's
>> not really nice to maintain. I would like
>> to savedefconfig and use that one instead of having nice commented
>> part. Is this mandatory?
> 
> As far as I know there is no rule how to do that. For me it seems to
> be more readable and clean. But this is only my opinion.

As Heiko pointed it's a very good habit.

One thing that must be taken into account while doing it, is to keep the 
various BR2_* configs ordered as they are ordere inside the various 
Config.in

Best regards
-- 
Giulio Benetti
Benetti Engineering sas
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 16:38     ` Giulio Benetti
@ 2022-01-31 16:42       ` Michael Nazzareno Trimarchi
  2022-01-31 17:11         ` Giulio Benetti
  0 siblings, 1 reply; 11+ messages in thread
From: Michael Nazzareno Trimarchi @ 2022-01-31 16:42 UTC (permalink / raw)
  To: Giulio Benetti
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni, buildroot,
	Heiko Thiery, Fabio Estevam, Yann E . MORIN

Hi

On Mon, Jan 31, 2022 at 5:38 PM Giulio Benetti
<giulio.benetti@benettiengineering.com> wrote:
>
> Hi Michael,
>
> On 31/01/22 16:42, Heiko Thiery wrote:
> > Hi Michael,
> >
> >
> > Am Mo., 31. Jan. 2022 um 16:36 Uhr schrieb Michael Nazzareno Trimarchi
> > <michael@amarulasolutions.com>:
> >>
> >> Hi Heiko
> >>
> >> On Mon, Jan 31, 2022 at 4:30 PM Heiko Thiery <heiko.thiery@gmail.com> wrote:
> >>>
> >>> The BL i.MX8M Mini is a baseboard that includes the SoM SL i.MX8M Mini.
> >>>
> >>> https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
> >>>
> >>> Cc: Frieder Schrempf <frieder.schrempf@kontron.de>
> >>> Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> >>> ---
> >>> v5:
> >>>   - remove BR2_PACKAGE_HOST_UBOOT_TOOLS
> >>>
> >>> v4:
> >>>   - remove BR2_ARM_FPU_VFPV3 since this option is not used for aarch64.
> >>>     The FPU options are set implicit.
> >>>
> >>> v3:
> >>>   - change offset value to use capitol 'K' value (thanks Guilio)
> >>>   - add info to uboot patches about submitting to upstream
> >>>
> >>> v2:
> >>>   - switch to extlinux
> >>>   - directly call genimage.sh
> >>>    - remove post-image.sh
> >>>   - remove BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT
> >>>   - add BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME
> >>>
> >>>   DEVELOPERS                                    |   2 +
> >>>   board/kontron/bl-imx8mm/extlinux.conf         |   4 +
> >>>   board/kontron/bl-imx8mm/genimage.cfg          |  18 ++
> >>>   ...m-kontron-n801x-s-convert-options-to.patch |  31 ++
> >>>   ...m-kontron-n801x-s-add-common-board-u.patch | 305 ++++++++++++++++++
> >>>   board/kontron/bl-imx8mm/post-build.sh         |   7 +
> >>>   board/kontron/bl-imx8mm/readme.txt            |  85 +++++
> >>>   configs/kontron_bl_imx8mm_defconfig           |  58 ++++
> >>>   8 files changed, 510 insertions(+)
> >>>   create mode 100644 board/kontron/bl-imx8mm/extlinux.conf
> >>>   create mode 100644 board/kontron/bl-imx8mm/genimage.cfg
> >>>   create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> >>>   create mode 100644 board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> >>>   create mode 100755 board/kontron/bl-imx8mm/post-build.sh
> >>>   create mode 100644 board/kontron/bl-imx8mm/readme.txt
> >>>   create mode 100644 configs/kontron_bl_imx8mm_defconfig
> >>>
> >>> diff --git a/DEVELOPERS b/DEVELOPERS
> >>> index a1ec9a091e..38724726d4 100644
> >>> --- a/DEVELOPERS
> >>> +++ b/DEVELOPERS
> >>> @@ -1183,7 +1183,9 @@ F:        package/python-sip/
> >>>   F:     package/uhd/
> >>>
> >>>   N:     Heiko Thiery <heiko.thiery@gmail.com>
> >>> +F:     board/kontron/bl-imx8mm/
> >>>   F:     board/kontron/pitx-imx8m/
> >>> +F:     configs/kontron_bl_imx8mm_defconfig
> >>>   F:     configs/kontron_pitx_imx8m_defconfig
> >>>   F:     package/altera-stapl/
> >>>   F:     package/ipmitool/
> >>> diff --git a/board/kontron/bl-imx8mm/extlinux.conf b/board/kontron/bl-imx8mm/extlinux.conf
> >>> new file mode 100644
> >>> index 0000000000..d38f7f81b7
> >>> --- /dev/null
> >>> +++ b/board/kontron/bl-imx8mm/extlinux.conf
> >>> @@ -0,0 +1,4 @@
> >>> +label buildroot
> >>> +  kernel /boot/Image
> >>> +  devicetree /boot/freescale/imx8mm-kontron-n801x-s.dtb
> >>> +  append root=PARTUUID=%PARTUUID% rootwait rw
> >>> diff --git a/board/kontron/bl-imx8mm/genimage.cfg b/board/kontron/bl-imx8mm/genimage.cfg
> >>> new file mode 100644
> >>> index 0000000000..c98bc4f150
> >>> --- /dev/null
> >>> +++ b/board/kontron/bl-imx8mm/genimage.cfg
> >>> @@ -0,0 +1,18 @@
> >>> +image sdcard.img {
> >>> +       hdimage {
> >>> +               partition-table-type = "gpt"
> >>> +               gpt-location = 16K
> >>> +       }
> >>> +
> >>> +       partition imx-boot {
> >>> +               in-partition-table = "no"
> >>> +               image = "flash.bin"
> >>> +               offset = 33K
> >>> +       }
> >>> +
> >>> +       partition rootfs {
> >>> +               image = "rootfs.ext4"
> >>> +               offset = 8M
> >>> +               partition-uuid = %PARTUUID%
> >>> +       }
> >>> +}
> >>> diff --git a/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> >>> new file mode 100644
> >>> index 0000000000..6d76282def
> >>> --- /dev/null
> >>> +++ b/board/kontron/bl-imx8mm/patches/uboot/0001-imx-imx8mm-imx8mm-kontron-n801x-s-convert-options-to.patch
> >>> @@ -0,0 +1,31 @@
> >>> +From 95a311af81cd47c44d3d6e3f717f06a06d8f3dfd Mon Sep 17 00:00:00 2001
> >>> +From: Heiko Thiery <heiko.thiery@gmail.com>
> >>> +Date: Mon, 10 Jan 2022 14:13:02 +0100
> >>> +Subject: [PATCH 1/2] imx: imx8mm: imx8mm-kontron-n801x-s: convert options to Kconfig
> >>> +
> >>> +CONFIG_SPL_MMC and CONFIG_SPL_SERIAL
> >>> +
> >>> +Patch submitted upstream:
> >>> +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-1-heiko.thiery@gmail.com/
> >>> +
> >>> +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> >>> +---
> >>> + configs/kontron-sl-mx8mm_defconfig | 2 ++
> >>> + 1 file changed, 2 insertions(+)
> >>> +
> >>> +diff --git a/configs/kontron-sl-mx8mm_defconfig b/configs/kontron-sl-mx8mm_defconfig
> >>> +index 35d12fca32..940bf07a92 100644
> >>> +--- a/configs/kontron-sl-mx8mm_defconfig
> >>> ++++ b/configs/kontron-sl-mx8mm_defconfig
> >>> +@@ -15,6 +15,8 @@ CONFIG_SPL_DM_SPI=y
> >>> + CONFIG_DEFAULT_DEVICE_TREE="imx8mm-kontron-n801x-s"
> >>> + CONFIG_SPL_TEXT_BASE=0x7E1000
> >>> + CONFIG_TARGET_KONTRON_MX8MM=y
> >>> ++CONFIG_SPL_MMC=y
> >>> ++CONFIG_SPL_SERIAL=y
> >>> + CONFIG_BOOTCOUNT_BOOTLIMIT=3
> >>> + CONFIG_SPL=y
> >>> + CONFIG_DISTRO_DEFAULTS=y
> >>> +--
> >>> +2.30.2
> >>> +
> >>> diff --git a/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> >>> new file mode 100644
> >>> index 0000000000..a88d7aba87
> >>> --- /dev/null
> >>> +++ b/board/kontron/bl-imx8mm/patches/uboot/0002-imx-imx8mm-imx8mm-kontron-n801x-s-add-common-board-u.patch
> >>> @@ -0,0 +1,305 @@
> >>> +From ef694c19c074333fd16589ec6ffef3e7ca895186 Mon Sep 17 00:00:00 2001
> >>> +From: Heiko Thiery <heiko.thiery@gmail.com>
> >>> +Date: Wed, 12 Jan 2022 08:44:36 +0100
> >>> +Subject: [PATCH 2/2] imx: imx8mm: imx8mm-kontron-n801x-s: add common board
> >>> + u-boot.dtsi
> >>> +
> >>> +When using a board variant that selects the lvds specific dtb the
> >>> +*.u-boot.dtsi file will not be included. To have a lvds dtb specific
> >>> +u-boot.dtsi file move this part to a common board u-boot.dtsi file and
> >>> +include this in the board base u-boot.dtsi and create an additional one
> >>> +for the lvds variant.
> >>> +
> >>> +Patch submitted upstream:
> >>> +https://patchwork.ozlabs.org/project/uboot/patch/20220112085755.7396-2-heiko.thiery@gmail.com/
> >>> +
> >>> +Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
> >>> +---
> >>> + .../imx8mm-kontron-n801x-s-lvds-u-boot.dtsi   |   6 +
> >>> + .../dts/imx8mm-kontron-n801x-s-u-boot.dtsi    | 124 +----------------
> >>> + arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi | 128 ++++++++++++++++++
> >>> + 3 files changed, 135 insertions(+), 123 deletions(-)
> >>> + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> >>> + create mode 100644 arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> >>> +
> >>> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> >>> +new file mode 100644
> >>> +index 0000000000..4bf75722bf
> >>> +--- /dev/null
> >>> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-lvds-u-boot.dtsi
> >>> +@@ -0,0 +1,6 @@
> >>> ++// SPDX-License-Identifier: GPL-2.0+
> >>> ++/*
> >>> ++ * Copyright (C) 2019 Kontron Electronics GmbH
> >>> ++ */
> >>> ++
> >>> ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
> >>> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> >>> +index 22d18e6f1c..4bf75722bf 100644
> >>> +--- a/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> >>> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-s-u-boot.dtsi
> >>> +@@ -3,126 +3,4 @@
> >>> +  * Copyright (C) 2019 Kontron Electronics GmbH
> >>> +  */
> >>> +
> >>> +-#include "imx8mm-u-boot.dtsi"
> >>> +-
> >>> +-/ {
> >>> +-      aliases {
> >>> +-              usb0 = &usbotg1;
> >>> +-              usb1 = &usbotg2;
> >>> +-      };
> >>> +-
> >>> +-      wdt-reboot {
> >>> +-              compatible = "wdt-reboot";
> >>> +-              wdt = <&wdog1>;
> >>> +-              u-boot,dm-spl;
> >>> +-      };
> >>> +-
> >>> +-      firmware {
> >>> +-              optee {
> >>> +-                      compatible = "linaro,optee-tz";
> >>> +-                      method = "smc";
> >>> +-              };
> >>> +-      };
> >>> +-};
> >>> +-
> >>> +-&fec1 {
> >>> +-      phy-mode = "rgmii-rxid";
> >>> +-};
> >>> +-
> >>> +-&i2c1 {
> >>> +-      u-boot,dm-spl;
> >>> +-      u-boot,dm-pre-reloc;
> >>> +-};
> >>> +-
> >>> +-&i2c2 {
> >>> +-      status = "okay";
> >>> +-      u-boot,dm-spl;
> >>> +-      u-boot,dm-pre-reloc;
> >>> +-};
> >>> +-
> >>> +-&pinctrl_ecspi1 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&pinctrl_i2c1 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&pinctrl_pmic {
> >>> +-      u-boot,dm-spl;
> >>> +-      fsl,pins = <
> >>> +-              MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0               0x141
> >>> +-              /* Disable Pullup for SD_VSEL */
> >>> +-              MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4               0x41
> >>> +-      >;
> >>> +-};
> >>> +-
> >>> +-&pinctrl_uart3 {
> >>> +-      u-boot,dm-spl;
> >>> +-      u-boot,dm-pre-reloc;
> >>> +-};
> >>> +-
> >>> +-&pinctrl_usdhc1 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&pinctrl_usdhc1_100mhz {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&pinctrl_usdhc1_200mhz {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&pinctrl_usdhc2 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&pca9450 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&ecspi1 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&gpio1 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&gpio2 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&gpio3 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&gpio4 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&gpio5 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&uart3 {
> >>> +-      u-boot,dm-spl;
> >>> +-      u-boot,dm-pre-reloc;
> >>> +-};
> >>> +-
> >>> +-&usdhc1 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&usdhc2 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> +-
> >>> +-&wdog1 {
> >>> +-      u-boot,dm-spl;
> >>> +-};
> >>> ++#include "imx8mm-kontron-n801x-u-boot.dtsi"
> >>> +diff --git a/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> >>> +new file mode 100644
> >>> +index 0000000000..22d18e6f1c
> >>> +--- /dev/null
> >>> ++++ b/arch/arm/dts/imx8mm-kontron-n801x-u-boot.dtsi
> >>> +@@ -0,0 +1,128 @@
> >>> ++// SPDX-License-Identifier: GPL-2.0+
> >>> ++/*
> >>> ++ * Copyright (C) 2019 Kontron Electronics GmbH
> >>> ++ */
> >>> ++
> >>> ++#include "imx8mm-u-boot.dtsi"
> >>> ++
> >>> ++/ {
> >>> ++      aliases {
> >>> ++              usb0 = &usbotg1;
> >>> ++              usb1 = &usbotg2;
> >>> ++      };
> >>> ++
> >>> ++      wdt-reboot {
> >>> ++              compatible = "wdt-reboot";
> >>> ++              wdt = <&wdog1>;
> >>> ++              u-boot,dm-spl;
> >>> ++      };
> >>> ++
> >>> ++      firmware {
> >>> ++              optee {
> >>> ++                      compatible = "linaro,optee-tz";
> >>> ++                      method = "smc";
> >>> ++              };
> >>> ++      };
> >>> ++};
> >>> ++
> >>> ++&fec1 {
> >>> ++      phy-mode = "rgmii-rxid";
> >>> ++};
> >>> ++
> >>> ++&i2c1 {
> >>> ++      u-boot,dm-spl;
> >>> ++      u-boot,dm-pre-reloc;
> >>> ++};
> >>> ++
> >>> ++&i2c2 {
> >>> ++      status = "okay";
> >>> ++      u-boot,dm-spl;
> >>> ++      u-boot,dm-pre-reloc;
> >>> ++};
> >>> ++
> >>> ++&pinctrl_ecspi1 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&pinctrl_i2c1 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&pinctrl_pmic {
> >>> ++      u-boot,dm-spl;
> >>> ++      fsl,pins = <
> >>> ++              MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0               0x141
> >>> ++              /* Disable Pullup for SD_VSEL */
> >>> ++              MX8MM_IOMUXC_GPIO1_IO04_GPIO1_IO4               0x41
> >>> ++      >;
> >>> ++};
> >>> ++
> >>> ++&pinctrl_uart3 {
> >>> ++      u-boot,dm-spl;
> >>> ++      u-boot,dm-pre-reloc;
> >>> ++};
> >>> ++
> >>> ++&pinctrl_usdhc1 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&pinctrl_usdhc1_100mhz {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&pinctrl_usdhc1_200mhz {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&pinctrl_usdhc2 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&pca9450 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&{/soc@0/bus@30800000/i2c@30a20000/pmic@25/regulators} {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&ecspi1 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&gpio1 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&gpio2 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&gpio3 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&gpio4 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&gpio5 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&uart3 {
> >>> ++      u-boot,dm-spl;
> >>> ++      u-boot,dm-pre-reloc;
> >>> ++};
> >>> ++
> >>> ++&usdhc1 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&usdhc2 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> ++
> >>> ++&wdog1 {
> >>> ++      u-boot,dm-spl;
> >>> ++};
> >>> +--
> >>> +2.30.2
> >>> +
> >>> diff --git a/board/kontron/bl-imx8mm/post-build.sh b/board/kontron/bl-imx8mm/post-build.sh
> >>> new file mode 100755
> >>> index 0000000000..bf8861f6a9
> >>> --- /dev/null
> >>> +++ b/board/kontron/bl-imx8mm/post-build.sh
> >>> @@ -0,0 +1,7 @@
> >>> +#!/bin/sh
> >>> +BOARD_DIR="$(dirname $0)"
> >>> +PARTUUID="$($HOST_DIR/bin/uuidgen)"
> >>> +
> >>> +install -d "$TARGET_DIR/boot/extlinux/"
> >>> +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/extlinux.conf" > "$TARGET_DIR/boot/extlinux/extlinux.conf"
> >>> +sed "s/%PARTUUID%/$PARTUUID/g" "$BOARD_DIR/genimage.cfg" > "$BINARIES_DIR/genimage.cfg"
> >>> diff --git a/board/kontron/bl-imx8mm/readme.txt b/board/kontron/bl-imx8mm/readme.txt
> >>> new file mode 100644
> >>> index 0000000000..df47ba5174
> >>> --- /dev/null
> >>> +++ b/board/kontron/bl-imx8mm/readme.txt
> >>> @@ -0,0 +1,85 @@
> >>> +Kontron BL i.MX8M Mini
> >>> +======================
> >>> +
> >>> +https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
> >>> +
> >>> +
> >>> +How to build it
> >>> +===============
> >>> +
> >>> +Configure buildroot:
> >>> +
> >>> +  $ make kontron_bl_imx8mm_defconfig
> >>> +
> >>> +Change settings to fit your needs (optional):
> >>> +
> >>> +  $ make menuconfig
> >>> +
> >>> +Compile everything and build the rootfs image:
> >>> +
> >>> +  $ make
> >>> +
> >>> +
> >>> +Result of the build
> >>> +===================
> >>> +
> >>> +After building, the output/images directory contains:
> >>> +
> >>> +  output/images/
> >>> +    ├── bl31.bin
> >>> +    ├── boot.scr
> >>> +    ├── ddr_fw.bin
> >>> +    ├── flash.bin
> >>> +    ├── Image
> >>> +    ├── imx8mm-kontron-n801x-s.dtb
> >>> +    ├── lpddr4_pmu_train_1d_dmem_201904.bin
> >>> +    ├── lpddr4_pmu_train_1d_dmem_202006.bin
> >>> +    ├── lpddr4_pmu_train_1d_dmem.bin
> >>> +    ├── lpddr4_pmu_train_1d_dmem_pad.bin
> >>> +    ├── lpddr4_pmu_train_1d_fw.bin
> >>> +    ├── lpddr4_pmu_train_1d_imem_201904.bin
> >>> +    ├── lpddr4_pmu_train_1d_imem_202006.bin
> >>> +    ├── lpddr4_pmu_train_1d_imem.bin
> >>> +    ├── lpddr4_pmu_train_1d_imem_pad.bin
> >>> +    ├── lpddr4_pmu_train_2d_dmem_201904.bin
> >>> +    ├── lpddr4_pmu_train_2d_dmem_202006.bin
> >>> +    ├── lpddr4_pmu_train_2d_dmem.bin
> >>> +    ├── lpddr4_pmu_train_2d_dmem_pad.bin
> >>> +    ├── lpddr4_pmu_train_2d_fw.bin
> >>> +    ├── lpddr4_pmu_train_2d_imem_201904.bin
> >>> +    ├── lpddr4_pmu_train_2d_imem_202006.bin
> >>> +    ├── lpddr4_pmu_train_2d_imem.bin
> >>> +    ├── lpddr4_pmu_train_2d_imem_pad.bin
> >>> +    ├── lpddr4_pmu_train_fw.bin
> >>> +    ├── rootfs.ext2
> >>> +    ├── rootfs.ext4 -> rootfs.ext2
> >>> +    ├── rootfs.tar
> >>> +    ├── sdcard.img
> >>> +    ├── u-boot.bin
> >>> +    └── u-boot-spl.bin
> >>> +
> >>> +
> >>> +Flashing the SD card image
> >>> +==========================
> >>> +
> >>> +To install the image on a SDCard simply copy sdcard.img to the storage (e.g. SD, eMMC)
> >>> +
> >>> +  $ sudo dd if=output/images/sdcard.img of=<your-sd-device>
> >>> +
> >>> +
> >>> +Preparing the board
> >>> +===================
> >>> +
> >>> + * Connect a serial line to the board
> >>> + * Insert the SD card
> >>> + * Power-up the board
> >>> +
> >>> +
> >>> +Booting the board
> >>> +=================
> >>> +
> >>> +By default the bootloader will search for the first valid image, starting
> >>> +with the internal eMMC. To make sure the bootloader loads bootscript from
> >>> +the correct location (SD card) set the boot_targets environment variable:
> >>> +
> >>> +  $ setenv boot_targets mmc1
> >>> diff --git a/configs/kontron_bl_imx8mm_defconfig b/configs/kontron_bl_imx8mm_defconfig
> >>> new file mode 100644
> >>> index 0000000000..0cf0115bfa
> >>> --- /dev/null
> >>> +++ b/configs/kontron_bl_imx8mm_defconfig
> >>> @@ -0,0 +1,58 @@
> >>> +# Architecture
> >>> +BR2_aarch64=y
> >>> +BR2_ARM_FPU_VFPV3=y
> >>> +
> >>> +BR2_GLOBAL_PATCH_DIR="board/kontron/bl-imx8mm/patches"
> >>> +
> >>> +# System
> >>> +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc2"
> >>> +
> >>> +# Kernel
> >>> +BR2_LINUX_KERNEL=y
> >>> +BR2_LINUX_KERNEL_CUSTOM_VERSION=y
> >>> +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16"
> >>> +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
> >>> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> >>> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mm-kontron-n801x-s"
> >>> +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y
> >>> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
> >>> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> >>> +
> >>> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
> >>> +
> >>> +BR2_PACKAGE_FREESCALE_IMX=y
> >>> +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM=y
> >>> +BR2_PACKAGE_FIRMWARE_IMX=y
> >>> +
> >>> +# Filesystem / image
> >>> +BR2_TARGET_ROOTFS_EXT2=y
> >>> +BR2_TARGET_ROOTFS_EXT2_4=y
> >>> +BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
> >>> +
> >>> +# Bootloader
> >>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> >>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
> >>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6"
> >>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
> >>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
> >>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30880000"
> >>> +BR2_TARGET_UBOOT=y
> >>> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
> >>> +BR2_TARGET_UBOOT_CUSTOM_VERSION=y
> >>> +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
> >>> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="kontron-sl-mx8mm"
> >>> +BR2_TARGET_UBOOT_NEEDS_DTC=y
> >>> +BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
> >>> +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
> >>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> >>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_BIN=y
> >>> +BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y
> >>> +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
> >>> +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin"
> >>> +BR2_TARGET_UBOOT_SPL=y
> >>> +
> >>> +# Required host tools to create the SD/eMMC image
> >>> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/kontron/bl-imx8mm/post-build.sh"
> >>> +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
> >>> +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
> >>> +BR2_PACKAGE_HOST_GENIMAGE=y
> >>
> >> I have seen that some people like to have this organization but it's
> >> not really nice to maintain. I would like
> >> to savedefconfig and use that one instead of having nice commented
> >> part. Is this mandatory?
> >
> > As far as I know there is no rule how to do that. For me it seems to
> > be more readable and clean. But this is only my opinion.
>
> As Heiko pointed it's a very good habit.
>
> One thing that must be taken into account while doing it, is to keep the
> various BR2_* configs ordered as they are ordere inside the various
> Config.in

There are good information indeed but even those information must be
keep updated. Daily work show me that work on
savedefconfig make things nicely. Some of your option can be at some
point autoselect by another one and so on.

Michael

>
> Best regards
> --
> Giulio Benetti
> Benetti Engineering sas



-- 
Michael Nazzareno Trimarchi
Co-Founder & Chief Executive Officer
M. +39 347 913 2170
michael@amarulasolutions.com
__________________________________

Amarula Solutions BV
Joop Geesinkweg 125, 1114 AB, Amsterdam, NL
T. +31 (0)85 111 9172
info@amarulasolutions.com
www.amarulasolutions.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 16:42       ` Michael Nazzareno Trimarchi
@ 2022-01-31 17:11         ` Giulio Benetti
  2022-01-31 17:45           ` Bartosz Bilas
  0 siblings, 1 reply; 11+ messages in thread
From: Giulio Benetti @ 2022-01-31 17:11 UTC (permalink / raw)
  To: Michael Nazzareno Trimarchi
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni, buildroot,
	Heiko Thiery, Fabio Estevam, Yann E . MORIN

On 31/01/22 17:42, Michael Nazzareno Trimarchi wrote:

[SNIP]

>>>>> diff --git a/configs/kontron_bl_imx8mm_defconfig b/configs/kontron_bl_imx8mm_defconfig
>>>>> new file mode 100644
>>>>> index 0000000000..0cf0115bfa
>>>>> --- /dev/null
>>>>> +++ b/configs/kontron_bl_imx8mm_defconfig
>>>>> @@ -0,0 +1,58 @@
>>>>> +# Architecture
>>>>> +BR2_aarch64=y
>>>>> +BR2_ARM_FPU_VFPV3=y
>>>>> +
>>>>> +BR2_GLOBAL_PATCH_DIR="board/kontron/bl-imx8mm/patches"
>>>>> +
>>>>> +# System
>>>>> +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc2"
>>>>> +
>>>>> +# Kernel
>>>>> +BR2_LINUX_KERNEL=y
>>>>> +BR2_LINUX_KERNEL_CUSTOM_VERSION=y
>>>>> +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16"
>>>>> +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
>>>>> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
>>>>> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mm-kontron-n801x-s"
>>>>> +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y
>>>>> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
>>>>> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
>>>>> +
>>>>> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
>>>>> +
>>>>> +BR2_PACKAGE_FREESCALE_IMX=y
>>>>> +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM=y
>>>>> +BR2_PACKAGE_FIRMWARE_IMX=y
>>>>> +
>>>>> +# Filesystem / image
>>>>> +BR2_TARGET_ROOTFS_EXT2=y
>>>>> +BR2_TARGET_ROOTFS_EXT2_4=y
>>>>> +BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
>>>>> +
>>>>> +# Bootloader
>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6"
>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30880000"
>>>>> +BR2_TARGET_UBOOT=y
>>>>> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
>>>>> +BR2_TARGET_UBOOT_CUSTOM_VERSION=y
>>>>> +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
>>>>> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="kontron-sl-mx8mm"
>>>>> +BR2_TARGET_UBOOT_NEEDS_DTC=y
>>>>> +BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
>>>>> +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
>>>>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
>>>>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_BIN=y
>>>>> +BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y
>>>>> +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
>>>>> +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin"
>>>>> +BR2_TARGET_UBOOT_SPL=y
>>>>> +
>>>>> +# Required host tools to create the SD/eMMC image
>>>>> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/kontron/bl-imx8mm/post-build.sh"
>>>>> +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
>>>>> +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
>>>>> +BR2_PACKAGE_HOST_GENIMAGE=y
>>>>
>>>> I have seen that some people like to have this organization but it's
>>>> not really nice to maintain. I would like
>>>> to savedefconfig and use that one instead of having nice commented
>>>> part. Is this mandatory?
>>>
>>> As far as I know there is no rule how to do that. For me it seems to
>>> be more readable and clean. But this is only my opinion.
>>
>> As Heiko pointed it's a very good habit.
>>
>> One thing that must be taken into account while doing it, is to keep the
>> various BR2_* configs ordered as they are ordere inside the various
>> Config.in
> 
> There are good information indeed but even those information must be
> keep updated. Daily work show me that work on
> savedefconfig make things nicely. Some of your option can be at some
> point autoselect by another one and so on.

Yes, you're right, I've noticed that too. It's "not that automatic", but 
if you check the first 25 defconfigs you can see that more or less the 
70% use the "descriptive" way. So basically one should savedefconfig to 
another file and compare to the configs/*_defconfig and eventually modify.

Anyway there is still not a standard decided. So maintainers will accept 
both ways.

Cheers
-- 
Giulio Benetti
Benetti Engineering sas
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 17:11         ` Giulio Benetti
@ 2022-01-31 17:45           ` Bartosz Bilas
  2022-02-01  7:22             ` Heiko Thiery
  2022-02-01 20:51             ` Arnout Vandecappelle
  0 siblings, 2 replies; 11+ messages in thread
From: Bartosz Bilas @ 2022-01-31 17:45 UTC (permalink / raw)
  To: Giulio Benetti
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni, buildroot,
	Heiko Thiery, Michael Nazzareno Trimarchi, Fabio Estevam,
	Yann E . MORIN

Hello,

On 31.01.2022 18:11, Giulio Benetti wrote:
> On 31/01/22 17:42, Michael Nazzareno Trimarchi wrote:
>
> [SNIP]
>
>>>>>> diff --git a/configs/kontron_bl_imx8mm_defconfig 
>>>>>> b/configs/kontron_bl_imx8mm_defconfig
>>>>>> new file mode 100644
>>>>>> index 0000000000..0cf0115bfa
>>>>>> --- /dev/null
>>>>>> +++ b/configs/kontron_bl_imx8mm_defconfig
>>>>>> @@ -0,0 +1,58 @@
>>>>>> +# Architecture
>>>>>> +BR2_aarch64=y
>>>>>> +BR2_ARM_FPU_VFPV3=y
>>>>>> +
>>>>>> +BR2_GLOBAL_PATCH_DIR="board/kontron/bl-imx8mm/patches"
>>>>>> +
>>>>>> +# System
>>>>>> +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc2"
>>>>>> +
>>>>>> +# Kernel
>>>>>> +BR2_LINUX_KERNEL=y
>>>>>> +BR2_LINUX_KERNEL_CUSTOM_VERSION=y
>>>>>> +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16"
>>>>>> +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
>>>>>> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
>>>>>> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mm-kontron-n801x-s"
>>>>>> +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y
>>>>>> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
>>>>>> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
>>>>>> +
>>>>>> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
>>>>>> +
>>>>>> +BR2_PACKAGE_FREESCALE_IMX=y
>>>>>> +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM=y
>>>>>> +BR2_PACKAGE_FIRMWARE_IMX=y
>>>>>> +
>>>>>> +# Filesystem / image
>>>>>> +BR2_TARGET_ROOTFS_EXT2=y
>>>>>> +BR2_TARGET_ROOTFS_EXT2_4=y
>>>>>> +BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
>>>>>> +
>>>>>> +# Bootloader
>>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
>>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
>>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.6"
>>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
>>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
>>>>>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30880000" 
>>>>>>
>>>>>> +BR2_TARGET_UBOOT=y
>>>>>> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
>>>>>> +BR2_TARGET_UBOOT_CUSTOM_VERSION=y
>>>>>> +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
>>>>>> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="kontron-sl-mx8mm"
>>>>>> +BR2_TARGET_UBOOT_NEEDS_DTC=y
>>>>>> +BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
>>>>>> +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
>>>>>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
>>>>>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_BIN=y
>>>>>> +BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE=y
>>>>>> +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
>>>>>> +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="flash.bin"
>>>>>> +BR2_TARGET_UBOOT_SPL=y
>>>>>> +
>>>>>> +# Required host tools to create the SD/eMMC image
>>>>>> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/kontron/bl-imx8mm/post-build.sh" 
>>>>>>
>>>>>> +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
>>>>>> +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
>>>>>> +BR2_PACKAGE_HOST_GENIMAGE=y
>>>>>
>>>>> I have seen that some people like to have this organization but it's
>>>>> not really nice to maintain. I would like
>>>>> to savedefconfig and use that one instead of having nice commented
>>>>> part. Is this mandatory?
>>>>
>>>> As far as I know there is no rule how to do that. For me it seems to
>>>> be more readable and clean. But this is only my opinion.
>>>
>>> As Heiko pointed it's a very good habit.
>>>
>>> One thing that must be taken into account while doing it, is to keep 
>>> the
>>> various BR2_* configs ordered as they are ordere inside the various
>>> Config.in
>>
>> There are good information indeed but even those information must be
>> keep updated. Daily work show me that work on
>> savedefconfig make things nicely. Some of your option can be at some
>> point autoselect by another one and so on.
>
> Yes, you're right, I've noticed that too. It's "not that automatic", 
> but if you check the first 25 defconfigs you can see that more or less 
> the 70% use the "descriptive" way. So basically one should 
> savedefconfig to another file and compare to the configs/*_defconfig 
> and eventually modify.
>
> Anyway there is still not a standard decided. So maintainers will 
> accept both ways.

The global sync via `savedefconfig` for all existing configs should 
solve everything. Besides, it should be impossible to edit those files 
manually.

Best
Bartek
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 17:45           ` Bartosz Bilas
@ 2022-02-01  7:22             ` Heiko Thiery
  2022-02-01 20:51             ` Arnout Vandecappelle
  1 sibling, 0 replies; 11+ messages in thread
From: Heiko Thiery @ 2022-02-01  7:22 UTC (permalink / raw)
  To: Bartosz Bilas
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni, buildroot,
	Giulio Benetti, Michael Nazzareno Trimarchi, Fabio Estevam,
	Yann E . MORIN

Hi,


Am Mo., 31. Jan. 2022 um 18:45 Uhr schrieb Bartosz Bilas
<b.bilas@grinn-global.com>:
>
> Hello,
>
> On 31.01.2022 18:11, Giulio Benetti wrote:
> > On 31/01/22 17:42, Michael Nazzareno Trimarchi wrote:
> >

[SNIP]

> >>>>> I have seen that some people like to have this organization but it's
> >>>>> not really nice to maintain. I would like
> >>>>> to savedefconfig and use that one instead of having nice commented
> >>>>> part. Is this mandatory?
> >>>>
> >>>> As far as I know there is no rule how to do that. For me it seems to
> >>>> be more readable and clean. But this is only my opinion.
> >>>
> >>> As Heiko pointed it's a very good habit.
> >>>
> >>> One thing that must be taken into account while doing it, is to keep
> >>> the
> >>> various BR2_* configs ordered as they are ordere inside the various
> >>> Config.in
> >>
> >> There are good information indeed but even those information must be
> >> keep updated. Daily work show me that work on
> >> savedefconfig make things nicely. Some of your option can be at some
> >> point autoselect by another one and so on.
> >
> > Yes, you're right, I've noticed that too. It's "not that automatic",
> > but if you check the first 25 defconfigs you can see that more or less
> > the 70% use the "descriptive" way. So basically one should
> > savedefconfig to another file and compare to the configs/*_defconfig
> > and eventually modify.
> >
> > Anyway there is still not a standard decided. So maintainers will
> > accept both ways.
>
> The global sync via `savedefconfig` for all existing configs should
> solve everything. Besides, it should be impossible to edit those files
> manually.

For organizing "real"  projects I also prefer to use the
"savedefconfig" way. But here to have a new defconfig in mainline
buildroot I prefer a clean minimal defconfig. But I think that's just
a matter of taste.

-- 
Heiko
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 17:45           ` Bartosz Bilas
  2022-02-01  7:22             ` Heiko Thiery
@ 2022-02-01 20:51             ` Arnout Vandecappelle
  1 sibling, 0 replies; 11+ messages in thread
From: Arnout Vandecappelle @ 2022-02-01 20:51 UTC (permalink / raw)
  To: Bartosz Bilas, Giulio Benetti
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni, buildroot,
	Heiko Thiery, Michael Nazzareno Trimarchi, Fabio Estevam,
	Yann E . MORIN



On 31/01/2022 18:45, Bartosz Bilas wrote:
> Hello,
> 
> On 31.01.2022 18:11, Giulio Benetti wrote:
>> On 31/01/22 17:42, Michael Nazzareno Trimarchi wrote:
>>
>> [SNIP]

  Thank you for the snip. My arm was getting tired of scrolling through all the 
quoting :-)

[snip some more]
>>>>>>> +# Required host tools to create the SD/eMMC image
>>>>>>> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/kontron/bl-imx8mm/post-build.sh"
>>>>>>> +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
>>>>>>> +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
>>>>>>> +BR2_PACKAGE_HOST_GENIMAGE=y
>>>>>>
>>>>>> I have seen that some people like to have this organization but it's
>>>>>> not really nice to maintain. I would like
>>>>>> to savedefconfig and use that one instead of having nice commented
>>>>>> part. Is this mandatory?
>>>>>
>>>>> As far as I know there is no rule how to do that. For me it seems to
>>>>> be more readable and clean. But this is only my opinion.
>>>>
>>>> As Heiko pointed it's a very good habit.
>>>>
>>>> One thing that must be taken into account while doing it, is to keep the
>>>> various BR2_* configs ordered as they are ordere inside the various
>>>> Config.in
>>>
>>> There are good information indeed but even those information must be
>>> keep updated. Daily work show me that work on
>>> savedefconfig make things nicely. Some of your option can be at some
>>> point autoselect by another one and so on.
>>
>> Yes, you're right, I've noticed that too. It's "not that automatic", but if 
>> you check the first 25 defconfigs you can see that more or less the 70% use 
>> the "descriptive" way. So basically one should savedefconfig to another file 
>> and compare to the configs/*_defconfig and eventually modify.
>>
>> Anyway there is still not a standard decided. So maintainers will accept both 
>> ways.
> 
> The global sync via `savedefconfig` for all existing configs should solve 
> everything. Besides, it should be impossible to edit those files manually.

  The in-tree defconfigs should *not* be generated with "make savedefconfig": we 
want to explicitly set some options even if they're at their default value. The 
reason is that on master, the defaults can be updated. The typical example is 
the kernel headers version (cfr. [1]). But also arch options can change default 
(a few years ago this happened for ARM floating point), and others as well.

  We're not very good in making sure that options are properly set. For sure, 
however:

- global sync via savedefconfig is *not* what we want;
- a defconfig with comments makes it easier to be sure that options are set 
explicitly.


  Regards,
  Arnout


[1] 
https://patchwork.ozlabs.org/project/buildroot/patch/20220201183331.4009320-6-giulio.benetti@benettiengineering.com/


_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig
  2022-01-31 15:30 [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig Heiko Thiery
  2022-01-31 15:36 ` Michael Nazzareno Trimarchi
  2022-01-31 15:37 ` Giulio Benetti
@ 2022-02-12 13:40 ` Arnout Vandecappelle
  2 siblings, 0 replies; 11+ messages in thread
From: Arnout Vandecappelle @ 2022-02-12 13:40 UTC (permalink / raw)
  To: Heiko Thiery, buildroot
  Cc: Frieder Schrempf, Michael Walle, Thomas Petazzoni,
	Giulio Benetti, Michael Trimarchi, Fabio Estevam, Yann E . MORIN



On 31/01/2022 16:30, Heiko Thiery wrote:
> The BL i.MX8M Mini is a baseboard that includes the SoM SL i.MX8M Mini.
> 
> https://www.kontron.com/produkte/baseboard-bl-i.mx8m-mini/p158549
> 
> Cc: Frieder Schrempf <frieder.schrempf@kontron.de>
> Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>

  Applied to master, thanks.

  Regards,
  Arnout
[snip]
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2022-02-12 13:40 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-31 15:30 [Buildroot] [PATCH v5] configs/kontron_bl_imx8mm_defconfig: new defconfig Heiko Thiery
2022-01-31 15:36 ` Michael Nazzareno Trimarchi
2022-01-31 15:42   ` Heiko Thiery
2022-01-31 16:38     ` Giulio Benetti
2022-01-31 16:42       ` Michael Nazzareno Trimarchi
2022-01-31 17:11         ` Giulio Benetti
2022-01-31 17:45           ` Bartosz Bilas
2022-02-01  7:22             ` Heiko Thiery
2022-02-01 20:51             ` Arnout Vandecappelle
2022-01-31 15:37 ` Giulio Benetti
2022-02-12 13:40 ` Arnout Vandecappelle

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.