summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuli Piippo <samuli.piippo@qt.io>2018-09-28 17:02:54 +0300
committerSamuli Piippo <samuli.piippo@qt.io>2018-10-01 09:20:35 +0000
commit1d7a1b9784aabb69babecf2a47a809cad6c9bb28 (patch)
tree921ed2344957ce49208e2b0cdcc57c8a670cc756
parent0d7ea04f33c2914a094c38d4810b1d1382d621d8 (diff)
downloadmeta-boot2qt-1d7a1b9784aabb69babecf2a47a809cad6c9bb28.tar.gz
imx8: adapt to sumo
Use WIC to create the image. Change-Id: I0413f60f96f2f4d3300dc84fdd2baabcc9bb120d Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
-rw-r--r--meta-boot2qt-distro/conf/distro/include/apalis-imx8.conf30
-rw-r--r--meta-boot2qt-distro/conf/distro/include/fsl-imx8.inc79
-rw-r--r--meta-boot2qt-distro/conf/distro/include/imx8qmlpddr4arm2.conf30
-rw-r--r--meta-fsl-extras/recipes-bsp/firmware-imx/firmware-imx.inc81
-rw-r--r--meta-fsl-extras/recipes-bsp/imx-vpu/imx-vpu.inc28
-rw-r--r--meta-fsl-extras/recipes/linux/linux-imx_4.%.bbappend3
-rw-r--r--meta-fsl-extras/recipes/linux/linux-toradex_4.%.bbappend5
-rw-r--r--meta-fsl-extras/wic/imx8-uboot-bootpart.wks19
8 files changed, 216 insertions, 59 deletions
diff --git a/meta-boot2qt-distro/conf/distro/include/apalis-imx8.conf b/meta-boot2qt-distro/conf/distro/include/apalis-imx8.conf
index d570e3a..7a7728c 100644
--- a/meta-boot2qt-distro/conf/distro/include/apalis-imx8.conf
+++ b/meta-boot2qt-distro/conf/distro/include/apalis-imx8.conf
@@ -27,36 +27,8 @@
27## 27##
28############################################################################ 28############################################################################
29 29
30include conf/distro/include/fsl.inc 30include conf/distro/include/fsl-imx8.inc
31 31
32DEPLOY_CONF_NAME = "Toradex Apalis iMX8" 32DEPLOY_CONF_NAME = "Toradex Apalis iMX8"
33 33
34SERIAL_CONSOLE = "115200 ttyLP1" 34SERIAL_CONSOLE = "115200 ttyLP1"
35
36FSL_EULA_FILE := "${COREBASE}/../meta-fsl-bsp-release/imx/EULA.txt"
37
38RDEPENDS_gstreamer1.0-meta-base_remove_pn-gstreamer1.0-meta-base = " gstreamer1.0-plugins-good-souphttpsrc"
39RDEPENDS_gstreamer1.0-meta-base_append_pn-gstreamer1.0-meta-base = " gstreamer1.0-plugins-good-soup"
40
41BBMASK += "\
42 meta-fsl-bsp-release/imx/meta-bsp/recipes-browser \
43 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/bluez5 \
44 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/nfs-utils \
45 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/wpa-supplicant \
46 meta-fsl-bsp-release/imx/meta-bsp/recipes-core/systemd/systemd_%.bbappend \
47 meta-fsl-bsp-release/imx/meta-bsp/recipes-multimedia/alsa/alsa-lib_%.bbappend \
48 meta-fsl-bsp-release/imx/meta-bsp/recipes-multimedia/pulseaudio \
49 meta-fsl-bsp-release/imx/meta-sdk/recipes-fsl/fsl-rc-local \
50 meta-fsl-bsp-release/imx/meta-sdk/recipes-fsl/images \
51 meta-fsl-bsp-release/imx/meta-sdk/recipes-fsl/packagegroup \
52 meta-fsl-bsp-release/imx/meta-sdk/recipes-graphics/devil \
53 meta-fsl-bsp-release/imx/meta-sdk/recipes-qt5/qt5 \
54 meta-boot2qt/meta-fsl-extras/recipes/u-boot/u-boot-toradex_%.bbappend \
55 meta-boot2qt-distro/recipes-connectivity/connman/connman_%.bbappend \
56 meta-freescale/recipes-graphics/wayland/weston \
57 "
58
59KERNEL_MODULE_PACKAGE_SUFFIX ?= "-${@d.getVar('KERNEL_VERSION', True).replace('_','-')}"
60EXTRA_OECONF_append_pn-gstreamer1.0-plugins-base = " --disable-introspection"
61
62MACHINE_GSTREAMER_1_0_PLUGIN += "imx-gst1.0-plugin"
diff --git a/meta-boot2qt-distro/conf/distro/include/fsl-imx8.inc b/meta-boot2qt-distro/conf/distro/include/fsl-imx8.inc
new file mode 100644
index 0000000..4e4256b
--- /dev/null
+++ b/meta-boot2qt-distro/conf/distro/include/fsl-imx8.inc
@@ -0,0 +1,79 @@
1############################################################################
2##
3## Copyright (C) 2018 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/
5##
6## This file is part of the Boot to Qt meta layer.
7##
8## $QT_BEGIN_LICENSE:GPL$
9## Commercial License Usage
10## Licensees holding valid commercial Qt licenses may use this file in
11## accordance with the commercial license agreement provided with the
12## Software or, alternatively, in accordance with the terms contained in
13## a written agreement between you and The Qt Company. For licensing terms
14## and conditions see https://www.qt.io/terms-conditions. For further
15## information use the contact form at https://www.qt.io/contact-us.
16##
17## GNU General Public License Usage
18## Alternatively, this file may be used under the terms of the GNU
19## General Public License version 3 or (at your option) any later version
20## approved by the KDE Free Qt Foundation. The licenses are as published by
21## the Free Software Foundation and appearing in the file LICENSE.GPL3
22## included in the packaging of this file. Please review the following
23## information to ensure the GNU General Public License requirements will
24## be met: https://www.gnu.org/licenses/gpl-3.0.html.
25##
26## $QT_END_LICENSE$
27##
28############################################################################
29
30include conf/distro/include/fsl.inc
31
32FSL_EULA_FILE := "${COREBASE}/../meta-fsl-bsp-release/imx/EULA.txt"
33
34DISTRO_FEATURES_remove = "vulkan"
35
36RDEPENDS_gstreamer1.0-meta-base_remove_pn-gstreamer1.0-meta-base = " gstreamer1.0-plugins-good-souphttpsrc"
37RDEPENDS_gstreamer1.0-meta-base_append_pn-gstreamer1.0-meta-base = " gstreamer1.0-plugins-good-soup"
38
39BBMASK += "\
40 meta-boot2qt-distro/recipes-connectivity/connman/connman_%.bbappend \
41 meta-boot2qt/meta-fsl-extras/recipes/u-boot/u-boot-toradex_%.bbappend \
42 meta-freescale/recipes-graphics/wayland/weston \
43 meta-fsl-bsp-release/imx/meta-bsp/recipes-browser \
44 meta-fsl-bsp-release/imx/meta-bsp/recipes-bsp/imx-test \
45 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/bluez5 \
46 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/connman \
47 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/nfs-utils \
48 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/wpa-supplicant \
49 meta-fsl-bsp-release/imx/meta-bsp/recipes-core/systemd/systemd_%.bbappend \
50 meta-fsl-bsp-release/imx/meta-bsp/recipes-devtools/gdb \
51 meta-fsl-bsp-release/imx/meta-bsp/recipes-extended/logrotate \
52 meta-fsl-bsp-release/imx/meta-bsp/recipes-graphics/opencv \
53 meta-fsl-bsp-release/imx/meta-bsp/recipes-graphics/xorg-driver \
54 meta-fsl-bsp-release/imx/meta-bsp/recipes-kernel/cryptodev \
55 meta-fsl-bsp-release/imx/meta-bsp/recipes-multimedia/alsa \
56 meta-fsl-bsp-release/imx/meta-bsp/recipes-multimedia/pulseaudio \
57 meta-fsl-bsp-release/imx/meta-sdk/recipes-fsl/fsl-rc-local \
58 meta-fsl-bsp-release/imx/meta-sdk/recipes-fsl/images \
59 meta-fsl-bsp-release/imx/meta-sdk/recipes-fsl/packagegroup \
60 meta-fsl-bsp-release/imx/meta-sdk/recipes-graphics/devil \
61 meta-fsl-bsp-release/imx/meta-sdk/recipes-qt5/qt5 \
62 "
63
64KERNEL_MODULE_PACKAGE_SUFFIX ?= "-${@d.getVar('KERNEL_VERSION', True).replace('_','-')}"
65EXTRA_OECONF_append_pn-gstreamer1.0-plugins-base = " --disable-introspection"
66
67MACHINE_GSTREAMER_1_0_PLUGIN += "imx-gst1.0-plugin"
68
69WKS_FILE = "imx8-uboot-bootpart.wks"
70WIC_CREATE_EXTRA_ARGS = "--no-fstab-update"
71WKS_FILE_DEPENDS += "imx-boot"
72
73BOOT_CONFIG_MACHINE_pn-imx-boot = "${BOOT_NAME}-${UBOOT_CONFIG}.bin"
74
75IMAGE_BOOT_FILES = "\
76 Image \
77 fsl-*.dtb \
78 hdmitxfw.bin \
79 "
diff --git a/meta-boot2qt-distro/conf/distro/include/imx8qmlpddr4arm2.conf b/meta-boot2qt-distro/conf/distro/include/imx8qmlpddr4arm2.conf
index 6dfaa3a..a3a2c29 100644
--- a/meta-boot2qt-distro/conf/distro/include/imx8qmlpddr4arm2.conf
+++ b/meta-boot2qt-distro/conf/distro/include/imx8qmlpddr4arm2.conf
@@ -27,36 +27,8 @@
27## 27##
28############################################################################ 28############################################################################
29 29
30include conf/distro/include/fsl.inc 30include conf/distro/include/fsl-imx8.inc
31 31
32DEPLOY_CONF_NAME = "NXP iMX8QM" 32DEPLOY_CONF_NAME = "NXP iMX8QM"
33 33
34PREFERRED_PROVIDER_virtual/bootloader = "u-boot-imx" 34PREFERRED_PROVIDER_virtual/bootloader = "u-boot-imx"
35
36FSL_EULA_FILE := "${COREBASE}/../meta-fsl-bsp-release/imx/EULA.txt"
37
38RDEPENDS_gstreamer1.0-meta-base_remove_pn-gstreamer1.0-meta-base = " gstreamer1.0-plugins-good-souphttpsrc"
39RDEPENDS_gstreamer1.0-meta-base_append_pn-gstreamer1.0-meta-base = " gstreamer1.0-plugins-good-soup"
40
41BBMASK += "\
42 meta-fsl-bsp-release/imx/meta-bsp/recipes-browser \
43 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/bluez5 \
44 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/nfs-utils \
45 meta-fsl-bsp-release/imx/meta-bsp/recipes-connectivity/wpa-supplicant \
46 meta-fsl-bsp-release/imx/meta-bsp/recipes-core/systemd/systemd_%.bbappend \
47 meta-fsl-bsp-release/imx/meta-bsp/recipes-multimedia/alsa/alsa-lib_%.bbappend \
48 meta-fsl-bsp-release/imx/meta-bsp/recipes-multimedia/pulseaudio \
49 meta-fsl-bsp-release/imx/meta-sdk/recipes-fsl/fsl-rc-local \
50 meta-fsl-bsp-release/imx/meta-sdk/recipes-fsl/images \
51 meta-fsl-bsp-release/imx/meta-sdk/recipes-fsl/packagegroup \
52 meta-fsl-bsp-release/imx/meta-sdk/recipes-graphics/devil \
53 meta-fsl-bsp-release/imx/meta-sdk/recipes-qt5/qt5 \
54 meta-boot2qt/meta-fsl-extras/recipes/u-boot/u-boot-toradex_%.bbappend \
55 meta-boot2qt-distro/recipes-connectivity/connman/connman_%.bbappend \
56 meta-freescale/recipes-graphics/wayland/weston \
57 "
58
59KERNEL_MODULE_PACKAGE_SUFFIX ?= "-${@d.getVar('KERNEL_VERSION', True).replace('_','-')}"
60EXTRA_OECONF_append_pn-gstreamer1.0-plugins-base = " --disable-introspection"
61
62MACHINE_GSTREAMER_1_0_PLUGIN += "imx-gst1.0-plugin"
diff --git a/meta-fsl-extras/recipes-bsp/firmware-imx/firmware-imx.inc b/meta-fsl-extras/recipes-bsp/firmware-imx/firmware-imx.inc
new file mode 100644
index 0000000..5407a5a
--- /dev/null
+++ b/meta-fsl-extras/recipes-bsp/firmware-imx/firmware-imx.inc
@@ -0,0 +1,81 @@
1SUMMARY = "Freescale IMX firmware"
2DESCRIPTION = "Freescale IMX firmware such as for the VPU"
3SECTION = "base"
4LICENSE = "Proprietary"
5LIC_FILES_CHKSUM = "file://COPYING;md5=8cf95184c220e247b9917e7244124c5a"
6
7PE = "1"
8
9#BRCM firmware git
10SRCBRANCH ?= "master"
11
12SRC_URI = "${FSL_MIRROR}/firmware-imx-${PV}.bin;fsl-eula=true \
13 git://git.freescale.com/imx/imx-firmware.git;branch=${SRCBRANCH};destsuffix=${S}/git "
14
15inherit fsl-eula-unpack allarch
16
17do_install() {
18 install -d ${D}${base_libdir}/firmware/imx
19 install -d ${D}${base_libdir}/firmware/bcm
20 install -d ${D}${sysconfdir}/firmware
21
22 cp -rfv firmware/* ${D}${base_libdir}/firmware/
23
24 #1BW_BCM43340
25 install -d ${D}${base_libdir}/firmware/bcm/1BW_BCM43340
26 cp -rfv git/brcm/1BW_BCM43340/*.bin ${D}${base_libdir}/firmware/bcm/1BW_BCM43340
27 cp -rfv git/brcm/1BW_BCM43340/*.cal ${D}${base_libdir}/firmware/bcm/1BW_BCM43340
28 cp -rfv git/brcm/1BW_BCM43340/*.hcd ${D}${sysconfdir}/firmware/
29
30 #1DX_BCM4343W
31 install -d ${D}${base_libdir}/firmware/bcm/1DX_BCM4343W
32 cp -rfv git/brcm/1DX_BCM4343W/*.bin ${D}${base_libdir}/firmware/bcm/1DX_BCM4343W
33 cp -rfv git/brcm/1DX_BCM4343W/*.cal ${D}${base_libdir}/firmware/bcm/1DX_BCM4343W
34 cp -rfv git/brcm/1DX_BCM4343W/*.hcd ${D}${sysconfdir}/firmware/
35
36 #SN8000_BCM43362
37 install -d ${D}${base_libdir}/firmware/bcm/SN8000_BCM43362
38 cp -rfv git/brcm/SN8000_BCM43362/*.bin ${D}${base_libdir}/firmware/bcm/SN8000_BCM43362
39 cp -rfv git/brcm/SN8000_BCM43362/*.cal ${D}${base_libdir}/firmware/bcm/SN8000_BCM43362
40 cp -rfv git/brcm/1DX_BCM4343W/*.hcd ${D}${sysconfdir}/firmware/
41
42 #ZP_BCM4339
43 install -d ${D}${base_libdir}/firmware/bcm/ZP_BCM4339
44 cp -rfv git/brcm/ZP_BCM4339/*.bin ${D}${base_libdir}/firmware/bcm/ZP_BCM4339
45 cp -rfv git/brcm/ZP_BCM4339/*.cal ${D}${base_libdir}/firmware/bcm/ZP_BCM4339
46 cp -rfv git/brcm/ZP_BCM4339/*.hcd ${D}${sysconfdir}/firmware/
47
48 mv ${D}${base_libdir}/firmware/epdc/ ${D}${base_libdir}/firmware/imx/epdc/
49 mv ${D}${base_libdir}/firmware/imx/epdc/epdc_ED060XH2C1.fw.nonrestricted ${D}${base_libdir}/firmware/imx/epdc/epdc_ED060XH2C1.fw
50
51 find ${D}${base_libdir}/firmware -type f -exec chmod 644 '{}' ';'
52 find ${D}${base_libdir}/firmware -type f -exec chown root:root '{}' ';'
53
54 # Remove files not going to be installed
55 find ${D}${base_libdir}/firmware/ -name '*.mk' -exec rm '{}' ';'
56}
57
58python populate_packages_prepend() {
59 vpudir = bb.data.expand('${base_libdir}/firmware/vpu', d)
60 do_split_packages(d, vpudir, '^vpu_fw_([^_]*).*\.bin',
61 output_pattern='firmware-imx-vpu-%s',
62 description='Freescale IMX Firmware %s',
63 extra_depends='',
64 prepend=True)
65
66 sdmadir = bb.data.expand('${base_libdir}/firmware/sdma', d)
67 do_split_packages(d, sdmadir, '^sdma-([^-]*).*\.bin',
68 output_pattern='firmware-imx-sdma-%s',
69 description='Freescale IMX Firmware %s',
70 extra_depends='',
71 prepend=True)
72}
73
74ALLOW_EMPTY_${PN} = "1"
75
76PACKAGES_DYNAMIC = "${PN}-vpu-* ${PN}-sdma-*"
77
78PACKAGES =+ "${PN}-epdc ${PN}-brcm"
79
80FILES_${PN}-epdc = "${base_libdir}/firmware/imx/epdc/"
81FILES_${PN}-brcm = "${base_libdir}/firmware/bcm/*/*.bin ${base_libdir}/firmware/bcm/*/*.cal ${sysconfdir}/firmware/"
diff --git a/meta-fsl-extras/recipes-bsp/imx-vpu/imx-vpu.inc b/meta-fsl-extras/recipes-bsp/imx-vpu/imx-vpu.inc
new file mode 100644
index 0000000..7b33956
--- /dev/null
+++ b/meta-fsl-extras/recipes-bsp/imx-vpu/imx-vpu.inc
@@ -0,0 +1,28 @@
1# Copyright (C) 2013-2017 O.S. Systems Software LTDA.
2# Copyright (C) 2013 Freescale Semiconductor
3# Copyright 2017 NXP
4
5DESCRIPTION = "Freescale VPU library"
6LICENSE = "Proprietary"
7LIC_FILES_CHKSUM = "file://vpu/EULA.txt;md5=b063366b066c9f10037c59756a9ced54"
8DEPENDS = "virtual/kernel"
9
10PROVIDES = "virtual/imxvpu"
11
12inherit fsl-eula-unpack
13
14PLATFORM_mx6 = "IMX6Q"
15
16SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true"
17
18do_compile () {
19 INCLUDE_DIR="-I${STAGING_KERNEL_DIR}/include/uapi -I${STAGING_KERNEL_DIR}/include"
20
21 oe_runmake CROSS_COMPILE="${HOST_PREFIX}" PLATFORM="${PLATFORM}" INCLUDE="${INCLUDE_DIR}" all
22}
23
24do_install () {
25 oe_runmake PLATFORM="${PLATFORM}" DEST_DIR="${D}" install
26}
27
28PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta-fsl-extras/recipes/linux/linux-imx_4.%.bbappend b/meta-fsl-extras/recipes/linux/linux-imx_4.%.bbappend
index eb5364d..9b4cc9b 100644
--- a/meta-fsl-extras/recipes/linux/linux-imx_4.%.bbappend
+++ b/meta-fsl-extras/recipes/linux/linux-imx_4.%.bbappend
@@ -30,6 +30,9 @@
30# kernel image files are not needed in the image 30# kernel image files are not needed in the image
31RDEPENDS_${KERNEL_PACKAGE_NAME}-base = "" 31RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
32 32
33# remove from imx8 kernel build
34SRC_URI_remove = " file://Install-dma-buf-h.patch"
35
33do_preconfigure_prepend() { 36do_preconfigure_prepend() {
34 # FunctionFS for qdbd 37 # FunctionFS for qdbd
35 echo "CONFIG_USB_FUNCTIONFS=m" >> ${WORKDIR}/defconfig 38 echo "CONFIG_USB_FUNCTIONFS=m" >> ${WORKDIR}/defconfig
diff --git a/meta-fsl-extras/recipes/linux/linux-toradex_4.%.bbappend b/meta-fsl-extras/recipes/linux/linux-toradex_4.%.bbappend
index 9298747..df39774 100644
--- a/meta-fsl-extras/recipes/linux/linux-toradex_4.%.bbappend
+++ b/meta-fsl-extras/recipes/linux/linux-toradex_4.%.bbappend
@@ -1,6 +1,6 @@
1############################################################################ 1############################################################################
2## 2##
3## Copyright (C) 2016 The Qt Company Ltd. 3## Copyright (C) 2018 The Qt Company Ltd.
4## Contact: https://www.qt.io/licensing/ 4## Contact: https://www.qt.io/licensing/
5## 5##
6## This file is part of the Boot to Qt meta layer. 6## This file is part of the Boot to Qt meta layer.
@@ -29,6 +29,9 @@
29 29
30RDEPENDS_${KERNEL_PACKAGE_NAME}-base = "${KERNEL_PACKAGE_NAME}-image ${KERNEL_PACKAGE_NAME}-devicetree" 30RDEPENDS_${KERNEL_PACKAGE_NAME}-base = "${KERNEL_PACKAGE_NAME}-image ${KERNEL_PACKAGE_NAME}-devicetree"
31 31
32# remove from imx8 kernel build
33SRC_URI_remove = " file://Install-dma-buf-h.patch"
34
32do_preconfigure_prepend () { 35do_preconfigure_prepend () {
33 # FunctionFS for qdbd 36 # FunctionFS for qdbd
34 echo "CONFIG_USB_FUNCTIONFS=m" >> ${WORKDIR}/defconfig 37 echo "CONFIG_USB_FUNCTIONFS=m" >> ${WORKDIR}/defconfig
diff --git a/meta-fsl-extras/wic/imx8-uboot-bootpart.wks b/meta-fsl-extras/wic/imx8-uboot-bootpart.wks
new file mode 100644
index 0000000..33de776
--- /dev/null
+++ b/meta-fsl-extras/wic/imx8-uboot-bootpart.wks
@@ -0,0 +1,19 @@
1# short-description: Create SD card image with a boot partition
2# long-description:
3# Create an image that can be written onto a SD card using dd for use
4# with i.MX SoC family
5# It uses u-boot
6#
7# The disk layout used is:
8# - --------- -------------- --------------
9# | | u-boot | boot | rootfs |
10# - --------- -------------- --------------
11# ^ ^ ^ ^
12# | | | |
13# 0 33kiB 4MiB 32MiB + rootfs + IMAGE_EXTRA_SPACE (default 10MiB)
14#
15part u-boot --source rawcopy --sourceparams="file=imx-boot-sd.bin" --ondisk mmcblk --no-table --align 33
16part /boot --source bootimg-partition --ondisk mmcblk --fstype=vfat --label boot --active --align 4096 --size 32
17part / --source rootfs --ondisk mmcblk --fstype=ext4 --label root --align 4096
18
19bootloader --ptable msdos