summaryrefslogtreecommitdiffstats
path: root/bsp/meta-freescale/conf/machine/include/imx-base.inc
diff options
context:
space:
mode:
authorToshikazuOhiwa <toshikazu_ohiwa@mail.toyota.co.jp>2020-03-30 09:24:26 +0900
committerToshikazuOhiwa <toshikazu_ohiwa@mail.toyota.co.jp>2020-03-30 09:24:26 +0900
commit5b80bfd7bffd4c20d80b7c70a7130529e9a755dd (patch)
treeb4bb18dcd1487dbf1ea8127e5671b7bb2eded033 /bsp/meta-freescale/conf/machine/include/imx-base.inc
parent706ad73eb02caf8532deaf5d38995bd258725cb8 (diff)
agl-basesystem
Diffstat (limited to 'bsp/meta-freescale/conf/machine/include/imx-base.inc')
-rw-r--r--bsp/meta-freescale/conf/machine/include/imx-base.inc329
1 files changed, 329 insertions, 0 deletions
diff --git a/bsp/meta-freescale/conf/machine/include/imx-base.inc b/bsp/meta-freescale/conf/machine/include/imx-base.inc
new file mode 100644
index 00000000..20f861f2
--- /dev/null
+++ b/bsp/meta-freescale/conf/machine/include/imx-base.inc
@@ -0,0 +1,329 @@
+# Provides the i.MX common settings
+
+include conf/machine/include/fsl-default-settings.inc
+include conf/machine/include/fsl-default-versions.inc
+
+require conf/machine/include/utilities.inc
+
+# Set specific make target and binary suffix
+IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER_mx8 = "u-boot-imx"
+
+PREFERRED_PROVIDER_u-boot ??= "${IMX_DEFAULT_BOOTLOADER}"
+PREFERRED_PROVIDER_virtual/bootloader ??= "${IMX_DEFAULT_BOOTLOADER}"
+
+PREFERRED_PROVIDER_u-boot-mxsboot-native ??= "u-boot-fslc-mxsboot-native"
+
+UBOOT_MAKE_TARGET ?= "u-boot.imx"
+UBOOT_MAKE_TARGET_mxs ?= "u-boot.sb"
+UBOOT_MAKE_TARGET_mx8 ?= ""
+
+UBOOT_SUFFIX ?= "imx"
+UBOOT_SUFFIX_mxs ?= "sb"
+UBOOT_SUFFIX_mx8 ?= "bin"
+
+UBOOT_ENTRYPOINT_mxs = "0x40008000"
+UBOOT_ENTRYPOINT_mx51 = "0x90008000"
+UBOOT_ENTRYPOINT_mx53 = "0x70008000"
+UBOOT_ENTRYPOINT_mx6 = "0x10008000"
+UBOOT_ENTRYPOINT_mx6sl = "0x80008000"
+UBOOT_ENTRYPOINT_mx6sll = "0x80008000"
+UBOOT_ENTRYPOINT_mx6sx = "0x80008000"
+UBOOT_ENTRYPOINT_mx6ul = "0x10008000"
+UBOOT_ENTRYPOINT_mx6ull = "0x10008000"
+UBOOT_ENTRYPOINT_mx7 = "0x80008000"
+UBOOT_ENTRYPOINT_mx8mq = "0x40480000"
+UBOOT_ENTRYPOINT_vf = "0x80008000"
+
+PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
+XSERVER_DRIVER = "xf86-video-fbdev"
+XSERVER_DRIVER_imxgpu2d = "xf86-video-imx-vivante"
+XSERVER_DRIVER_vf = "xf86-video-modesetting"
+XSERVER_DRIVER_append_mx8 = " xf86-video-modesetting"
+XSERVER_DRIVER_use-mainline-bsp = "xf86-video-armada"
+XSERVER = "xserver-xorg \
+ xf86-input-evdev \
+ ${XSERVER_DRIVER}"
+
+# Ship kernel modules
+MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
+
+# Tunes for hard/soft float-point selection. Note that we allow building for
+# thumb support giving distros the chance to enable thumb by setting
+# ARM_INSTRUCTION_SET = "thumb"
+#
+# handled by software
+# DEFAULTTUNE_mx6 ?= "cortexa9t-neon"
+# handled by hardware
+DEFAULTTUNE_mx6 ?= "cortexa9thf-neon"
+DEFAULTTUNE_mx6ul ?= "cortexa7thf-neon"
+DEFAULTTUNE_mx6ull ?= "cortexa7thf-neon"
+DEFAULTTUNE_mx7 ?= "cortexa7thf-neon"
+DEFAULTTUNE_vf ?= "cortexa5thf-neon"
+
+INHERIT += "machine-overrides-extender"
+
+MACHINEOVERRIDES_EXTENDER_mx25 = "use-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER_mx6q = "imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER_mx6dl = "imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
+MACHINEOVERRIDES_EXTENDER_mx6sx = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER_mx6sl = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
+MACHINEOVERRIDES_EXTENDER_mx6sll = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER_mx6ul = "imxfbdev:imxpxp"
+MACHINEOVERRIDES_EXTENDER_mx6ull = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER_mx7d = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER_mx7ulp = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER_mx8qm = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER_mx8mm = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER_mx8mq = "imxdrm:imxvpu:imxgpu:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER_mx8qxp = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+
+MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
+ mx6 \
+ mx6q \
+ mx6dl \
+ mx6sx \
+ mx6sl \
+ mx6sll \
+ mx6ul \
+ mx6ull \
+ \
+ mx7 \
+ mx7d \
+ mx7ulp \
+ \
+ mx8 \
+ mx8qm \
+ mx8mm \
+ mx8mq \
+ mx8qxp \
+"
+
+# Sub-architecture support
+MACHINE_SOCARCH_SUFFIX ?= ""
+MACHINE_SOCARCH_SUFFIX_mx23 = "-mxs"
+MACHINE_SOCARCH_SUFFIX_mx28 = "-mxs"
+MACHINE_SOCARCH_SUFFIX_mx51 = "-mx5"
+MACHINE_SOCARCH_SUFFIX_mx53 = "-mx5"
+MACHINE_SOCARCH_SUFFIX_mx6q = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX_mx6dl = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX_mx6sx = "-mx6sx"
+MACHINE_SOCARCH_SUFFIX_mx6sl = "-mx6sl"
+MACHINE_SOCARCH_SUFFIX_mx6sll= "-mx6sll"
+MACHINE_SOCARCH_SUFFIX_mx7d = "-mx7d"
+MACHINE_SOCARCH_SUFFIX_mx7ulp = "-mx7ulp"
+MACHINE_SOCARCH_SUFFIX_vf60 = "-vf60"
+MACHINE_SOCARCH_SUFFIX_vf50 = "-vf50"
+MACHINE_SOCARCH_SUFFIX_mx6ul = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX_mx6ull = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX_mx8qm = "-mx8"
+MACHINE_SOCARCH_SUFFIX_mx8mm = "-mx8mm"
+MACHINE_SOCARCH_SUFFIX_mx8mq = "-mx8m"
+MACHINE_SOCARCH_SUFFIX_mx8qxp = "-mx8"
+MACHINE_SOCARCH_SUFFIX_use-mainline-bsp = "-imx"
+
+MACHINE_ARCH_FILTER = "virtual/kernel"
+MACHINE_SOCARCH_FILTER_append_imx = " \
+ alsa-lib \
+ weston \
+"
+MACHINE_SOCARCH_FILTER_append_imxvpu = " \
+ imx-codec \
+ imx-parser \
+ imx-vpuwrap \
+ libimxvpuapi \
+ virtual/imxvpu \
+"
+MACHINE_SOCARCH_FILTER_append_imxgpu = " \
+ virtual/egl \
+ virtual/mesa \
+ virtual/libopenvg \
+ libdrm \
+ cairo \
+ gstreamer1.0-plugins-bad \
+ libgal-imx \
+ pango \
+"
+MACHINE_SOCARCH_FILTER_append_imxgpu2d = " \
+ virtual/libg2d \
+"
+MACHINE_SOCARCH_FILTER_append_imxgpu3d = " \
+ virtual/libgl \
+ virtual/libgles1 \
+ virtual/libgles2 \
+"
+MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
+ virtual/egl \
+ virtual/libopenvg \
+ virtual/libg2d \
+ virtual/libgl \
+ virtual/libgles1 \
+ virtual/libgles2 \
+ virtual/mesa \
+ cairo \
+ pango \
+ qtbase \
+"
+MACHINE_SOCARCH_FILTER_append_mx6q = " \
+ virtual/opencl-icd \
+ opencl-headers \
+"
+MACHINE_SOCARCH_FILTER_append_mx8 = " \
+ virtual/opencl-icd \
+ opencl-headers \
+"
+MACHINE_SOCARCH_FILTER_append_mx8qm = " \
+ virtual/libopenvx \
+"
+
+INHERIT += "fsl-dynamic-packagearch"
+
+SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \
+ imx-gpu-viv->kernel-module-imx-gpu-viv \
+ libimxvpuapi->virtual/imxvpu \
+ imx-vpuwrap->virtual/imxvpu \
+ imx-codec->virtual/imxvpu \
+ imx-test->virtual/imxvpu \
+"
+
+# Firmware
+MACHINE_FIRMWARE ?= ""
+MACHINE_FIRMWARE_append_mx25 = " firmware-imx-sdma-imx25"
+MACHINE_FIRMWARE_append_mx7d = " linux-firmware-imx-sdma-imx7d firmware-imx-epdc"
+MACHINE_FIRMWARE_append_mx6 = " linux-firmware-imx-sdma-imx6q"
+MACHINE_FIRMWARE_append_mx6q = " firmware-imx-vpu-imx6q"
+MACHINE_FIRMWARE_append_mx6dl = " firmware-imx-vpu-imx6d firmware-imx-epdc"
+MACHINE_FIRMWARE_append_mx6sl = " firmware-imx-epdc"
+MACHINE_FIRMWARE_append_mx6sll = " firmware-imx-epdc"
+MACHINE_FIRMWARE_append_mx6ull = " firmware-imx-epdc"
+MACHINE_FIRMWARE_append_mx53 = " firmware-imx-vpu-imx53 firmware-imx-sdma-imx53"
+MACHINE_FIRMWARE_append_mx51 = " firmware-imx-vpu-imx51 firmware-imx-sdma-imx51"
+MACHINE_FIRMWARE_append_mx8qxp = " firmware-imx-vpu-imx8qxp"
+MACHINE_FIRMWARE_append_use-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
+
+# FIXME: Needs addition of firmware-imx of official BSPs
+#MACHINE_FIRMWARE_append_mx27 = " firmware-imx-vpu-imx27"
+
+MACHINE_EXTRA_RRECOMMENDS += "${MACHINE_FIRMWARE}"
+
+# Extra audio support
+MACHINE_EXTRA_RRECOMMENDS_append_mx6 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'imx-alsa-plugins', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS_append_mx7 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'imx-alsa-plugins', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS_append_mx8 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'imx-alsa-plugins', '', d)}"
+
+# Extra udev rules
+MACHINE_EXTRA_RRECOMMENDS += "udev-rules-imx"
+
+# GStreamer 1.0 plugins
+MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6dl ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6q ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6sl ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6sx ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6ul ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6ull ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx7d ?= "gstreamer1.0-plugins-imx-meta"
+
+# Determines if the SoC has support for Vivante kernel driver
+SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0"
+SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_imxgpu = "1"
+
+# Handle Vivante kernel driver setting:
+# 0 - machine does not have Vivante GPU driver support
+# 1 - machine has Vivante GPU driver support
+MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT ?= "${SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT}"
+
+# Graphics libraries
+PREFERRED_PROVIDER_virtual/egl ?= "mesa"
+PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
+PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
+PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
+
+PREFERRED_PROVIDER_virtual/egl_imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgl_imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles1_imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles2_imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libg2d ?= "imx-gpu-g2d"
+
+PREFERRED_VERSION_weston_mx6 ?= "4.0.0.imx"
+PREFERRED_VERSION_weston_mx7 ?= "4.0.0.imx"
+PREFERRED_VERSION_weston_mx8 ?= "4.0.0.imx"
+
+PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.13.imx"
+PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.13.imx"
+PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.13.imx"
+
+# Use i.MX libdrm Version
+PREFERRED_VERSION_libdrm_mx6 ?= "2.4.91.imx"
+PREFERRED_VERSION_libdrm_mx7 ?= "2.4.91.imx"
+PREFERRED_VERSION_libdrm_mx8 ?= "2.4.91.imx"
+
+# Handle default kernel
+IMX_DEFAULT_KERNEL = "linux-imx"
+IMX_DEFAULT_KERNEL_mxs = "linux-fslc"
+IMX_DEFAULT_KERNEL_mx5 = "linux-fslc"
+IMX_DEFAULT_KERNEL_mx6 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL_mx7 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL_mx8 = "linux-imx"
+IMX_DEFAULT_KERNEL_mx7ulp = "linux-imx"
+IMX_DEFAULT_KERNEL_mx6sll = "linux-imx"
+IMX_DEFAULT_KERNEL_mx6ul = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL_mx6ull = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL_use-mainline-bsp = "linux-fslc"
+
+PREFERRED_PROVIDER_virtual/kernel ??= "${IMX_DEFAULT_KERNEL}"
+
+SOC_DEFAULT_IMAGE_FSTYPES = "wic.bmap wic.gz"
+SOC_DEFAULT_IMAGE_FSTYPES_mxs = "uboot-mxsboot-sdcard wic.gz"
+
+# Do not update fstab file when using wic images
+WIC_CREATE_EXTRA_ARGS ?= "--no-fstab-update"
+
+SDCARD_ROOTFS ?= "${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.ext4"
+IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"
+
+IMAGE_BOOT_FILES ?= " \
+ ${KERNEL_IMAGETYPE} \
+ ${@make_dtb_boot_files(d)} \
+"
+
+### wic default support
+WKS_FILE_DEPENDS ?= " \
+ virtual/bootloader \
+ \
+ e2fsprogs-native \
+ bmap-tools-native \
+"
+
+WKS_FILE_DEPENDS_mx8 += "imx-boot"
+
+SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks"
+SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in"
+
+WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"
+
+# Certain machines override the default fsl u-boot with the
+# fslc u-boot. To restore the fsl u-boot, add use-fsl-bsp like this:
+# MACHINEOVERRIDES_prepend_imx6ulevk = "use-fsl-bsp:"
+UBOOT_MAKE_TARGET_use-fsl-bsp_mx6 = "u-boot.imx"
+UBOOT_SUFFIX_use-fsl-bsp_mx6 = "imx"
+SPL_BINARY_use-fsl-bsp_mx6 = ""
+WKS_FILE_use-fsl-bsp_mx6 = "imx-uboot-bootpart.wks"
+UBOOT_MAKE_TARGET_use-fsl-bsp_mx7 = "u-boot.imx"
+UBOOT_SUFFIX_use-fsl-bsp_mx7 = "imx"
+SPL_BINARY_use-fsl-bsp_mx7 = ""
+WKS_FILE_use-fsl-bsp_mx7 = "imx-uboot-bootpart.wks"
+
+SERIAL_CONSOLE = "115200 ttymxc0"
+SERIAL_CONSOLE_mxs = "115200 ttyAMA0"
+
+KERNEL_IMAGETYPE = "zImage"
+KERNEL_IMAGETYPE_aarch64 = "Image"
+
+MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"
+
+# Add the ability to specify _imx machines
+MACHINEOVERRIDES =. "imx:"
+
+HOSTTOOLS_NONFATAL_append_mx8x = " sha384sum"