From bfee96400a603e7c8bcd26e9bbb723910508a072 Mon Sep 17 00:00:00 2001 From: Max Krummenacher Date: Wed, 4 Aug 2021 15:10:01 +0200 Subject: colibri-imx6ull-emmc: add machine configuration The Toradex Colibri iMX6ULL 1GB computer module is a variant which uses an eMMC instead of a raw NAND for storage its RAM size is increased to 1GB. For additional specifications please visit: https://www.toradex.com/de/computer-on-modules/colibri-arm-family/nxp-imx6ull Signed-off-by: Max Krummenacher Squashed cherry-picks: (cherry picked from commit 71ebff4acf5210722344b15b23a7c3f75faced40) (cherry picked from commit 8d54c5897f90f61b46bd832eadcdc6aa4a13a39f) --- conf/machine/colibri-imx6ull-emmc.conf | 41 +++++++++++++++++++++++++ conf/machine/include/colibri-imx6ull-emmc.inc | 29 +++++++++++++++++ recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb | 1 + recipes-support/bmode-usb/bmode-usb_1.0.bb | 1 + 4 files changed, 72 insertions(+) create mode 100644 conf/machine/colibri-imx6ull-emmc.conf create mode 100644 conf/machine/include/colibri-imx6ull-emmc.inc diff --git a/conf/machine/colibri-imx6ull-emmc.conf b/conf/machine/colibri-imx6ull-emmc.conf new file mode 100644 index 0000000..4484330 --- /dev/null +++ b/conf/machine/colibri-imx6ull-emmc.conf @@ -0,0 +1,41 @@ +#@TYPE: Machine +#@NAME: Toradex Colibri iMX6ULL 1GB (eMMC) +#@SOC: i.MX6ULL +#@DESCRIPTION: Machine configuration for Toradex Colibri iMX6 ULL 1GB (eMMC) SOM +#@MAINTAINER: Max Krummenacher + +MACHINEOVERRIDES =. "mx6:mx6ul:mx6ull:" + +include conf/machine/include/imx-base.inc +include conf/machine/include/tune-cortexa7.inc + +PREFERRED_PROVIDER_virtual/kernel_use-nxp-bsp ?= "linux-toradex" + +KERNEL_DEVICETREE_use-nxp-bsp = " \ + imx6ull-colibri-emmc-aster.dtb \ + imx6ull-colibri-emmc-eval-v3.dtb \ + imx6ull-colibri-emmc-iris.dtb \ + imx6ull-colibri-emmc-iris-v2.dtb \ +" + +KERNEL_IMAGETYPE = "zImage" +# The kernel lives in its own ubi volume. +RDEPENDS_${KERNEL_PACKAGE_NAME}-base = "" + +PREFERRED_PROVIDER_u-boot ?= "u-boot-toradex" +PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-toradex" +PREFERRED_PROVIDER_u-boot-fw-utils ?= "u-boot-toradex-fw-utils" +PREFERRED_RPROVIDER_u-boot-fw-utils ?= "u-boot-toradex-fw-utils" +PREFERRED_PROVIDER_u-boot-default-script ?= "u-boot-script-toradex" + +UBOOT_MAKE_TARGET = "u-boot.imx" +UBOOT_MACHINE ?= "colibri-imx6ull-emmc_defconfig" + +IMAGE_FSTYPES += "tar.xz" +# wic support +IMAGE_BOOT_FILES_append = " boot.scr-${MACHINE};boot.scr" +WKS_FILE_DEPENDS_append = " u-boot-default-script" +WKS_FILE = "sdimage-bootpart.wks" + +MACHINE_FEATURES += "screen usbgadget usbhost vfat ext2 alsa touchscreen wifi bluetooth 3g" +MACHINE_FIRMWARE_remove = "firmware-imx-epdc" diff --git a/conf/machine/include/colibri-imx6ull-emmc.inc b/conf/machine/include/colibri-imx6ull-emmc.inc new file mode 100644 index 0000000..ac96560 --- /dev/null +++ b/conf/machine/include/colibri-imx6ull-emmc.inc @@ -0,0 +1,29 @@ +IMAGE_CLASSES_append = " image_type_tezi" +IMAGE_FSTYPES_append = " teziimg" +# The payload offsets are given in number of 512 byte blocks. +OFFSET_BOOTROM_PAYLOAD = "2" +TORADEX_PRODUCT_IDS = "0062" +TORADEX_FLASH_TYPE = "emmc" + +WIC_CREATE_EXTRA_ARGS_append = " --no-fstab-update" + +MACHINE_NAME = "Colibri-iMX6ULL-eMMC" + +PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot" + +# MACHINEOVERRIDES_append_upstream = ":use-mainline-bsp" + +UBOOT_MAKE_TARGET_colibri-imx6ull-emmc = "u-boot.imx" +UBOOT_ENTRYPOINT_colibri-imx6ull-emmc = "0x81000000" +UBOOT_DTB_LOADADDRESS_colibri-imx6ull-emmc = "0x82100000" +UBOOT_DTBO_LOADADDRESS_colibri-imx6ull-emmc = "0x87000000" + +# commented for now as the dtb and the overlays are not yet ready +# TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "colibri-imx6ull-emmc_lcd-vga_overlay.dtbo colibri-imx6ull-emmc_ad7879_overlay.dtbo" +# TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT_use-mainline-bsp = "colibri-imx6ull_parallel-rgb_overlay.dtbo colibri-imx6ull_ad7879_overlay.dtbo display-vga_overlay.dtbo" + +PREFERRED_PROVIDER_virtual/kernel = "linux-toradex" +PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex" +PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp = "linux-toradex-mainline" +PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp_preempt-rt = "linux-toradex-mainline" +PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline" diff --git a/recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb b/recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb index b1909f1..800a5e6 100644 --- a/recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb +++ b/recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb @@ -31,6 +31,7 @@ COMPATIBLE_MACHINE = "(mx6|mx7|mx8)" KBUILD_DEFCONFIG_apalis-imx6 ?= "apalis_imx6_defconfig" KBUILD_DEFCONFIG_colibri-imx6 ?= "colibri_imx6_defconfig" KBUILD_DEFCONFIG_colibri-imx6ull ?= "colibri-imx6ull_defconfig" +KBUILD_DEFCONFIG_colibri-imx6ull-emmc ?= "colibri-imx6ull_defconfig" KBUILD_DEFCONFIG_mx7 ?= "colibri_imx7_defconfig" KBUILD_DEFCONFIG_mx8 ?= "toradex_defconfig" diff --git a/recipes-support/bmode-usb/bmode-usb_1.0.bb b/recipes-support/bmode-usb/bmode-usb_1.0.bb index 752c09b..62d48b4 100644 --- a/recipes-support/bmode-usb/bmode-usb_1.0.bb +++ b/recipes-support/bmode-usb/bmode-usb_1.0.bb @@ -8,6 +8,7 @@ DEFINE = "NO_MACHINE" DEFINE_apalis-imx6 = "MX6" DEFINE_colibri-imx6 = "MX6" DEFINE_colibri-imx6ull = "MX6ULL" +DEFINE_colibri-imx6ull-emmc = "MX6ULL" do_compile() { ${CC} -o bmode_usb bmode_usb.c ${CFLAGS} ${LDFLAGS} -D ${DEFINE} -- cgit v1.2.3