diff options
18 files changed, 212 insertions, 10 deletions
diff --git a/b2qt-init-build-env b/b2qt-init-build-env index ef2e024..10a20c9 100755 --- a/b2qt-init-build-env +++ b/b2qt-init-build-env | |||
@@ -119,6 +119,9 @@ get_groups() { | |||
119 | nvidia-logan) | 119 | nvidia-logan) |
120 | PROJECT_GROUPS="nvidia-logan" | 120 | PROJECT_GROUPS="nvidia-logan" |
121 | ;; | 121 | ;; |
122 | tegra-x1|tegra-t18x) | ||
123 | PROJECT_GROUPS="nvidia-tegra" | ||
124 | ;; | ||
122 | emulator) | 125 | emulator) |
123 | PROJECT_GROUPS="emulator" | 126 | PROJECT_GROUPS="emulator" |
124 | ;; | 127 | ;; |
diff --git a/conf/bblayers.conf.nvidia-logan.sample b/conf/bblayers.conf.nvidia-logan.sample index 0c8fb99..47ddcf8 100644 --- a/conf/bblayers.conf.nvidia-logan.sample +++ b/conf/bblayers.conf.nvidia-logan.sample | |||
@@ -37,7 +37,7 @@ BBLAYERS ?= " \ | |||
37 | ${BSPDIR}/sources/meta-openembedded/meta-initramfs \ | 37 | ${BSPDIR}/sources/meta-openembedded/meta-initramfs \ |
38 | ${BSPDIR}/sources/meta-openembedded/meta-ruby \ | 38 | ${BSPDIR}/sources/meta-openembedded/meta-ruby \ |
39 | ${BSPDIR}/sources/meta-b2qt \ | 39 | ${BSPDIR}/sources/meta-b2qt \ |
40 | ${BSPDIR}/sources/meta-b2qt/meta-nvidia-logan-extras \ | 40 | ${BSPDIR}/sources/meta-b2qt/meta-nvidia-extras \ |
41 | ${BSPDIR}/sources/meta-mingw \ | 41 | ${BSPDIR}/sources/meta-mingw \ |
42 | ${BSPDIR}/sources/meta-qt5 \ | 42 | ${BSPDIR}/sources/meta-qt5 \ |
43 | " | 43 | " |
diff --git a/conf/bblayers.conf.nvidia-tegra.sample b/conf/bblayers.conf.nvidia-tegra.sample new file mode 100644 index 0000000..f0dfbb7 --- /dev/null +++ b/conf/bblayers.conf.nvidia-tegra.sample | |||
@@ -0,0 +1,49 @@ | |||
1 | ############################################################################## | ||
2 | ## | ||
3 | ## Copyright (C) 2016 The Qt Company Ltd. | ||
4 | ## Contact: http://www.qt.io/licensing/ | ||
5 | ## | ||
6 | ## This file is part of the Boot to Qt meta layer. | ||
7 | ## | ||
8 | ## $QT_BEGIN_LICENSE:COMM$ | ||
9 | ## | ||
10 | ## Commercial License Usage | ||
11 | ## Licensees holding valid commercial Qt licenses may use this file in | ||
12 | ## accordance with the commercial license agreement provided with the | ||
13 | ## Software or, alternatively, in accordance with the terms contained in | ||
14 | ## a written agreement between you and The Qt Company. For licensing terms | ||
15 | ## and conditions see http://www.qt.io/terms-conditions. For further | ||
16 | ## information use the contact form at http://www.qt.io/contact-us. | ||
17 | ## | ||
18 | ## $QT_END_LICENSE$ | ||
19 | ## | ||
20 | ############################################################################## | ||
21 | |||
22 | # LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf | ||
23 | # changes incompatibly | ||
24 | LCONF_VERSION = "6" | ||
25 | |||
26 | BBPATH = "${TOPDIR}" | ||
27 | BBFILES ?= "" | ||
28 | BSPDIR := "${@os.path.abspath(os.path.dirname(d.getVar('FILE', True)) + '/../..')}" | ||
29 | |||
30 | BBLAYERS ?= " \ | ||
31 | ${BSPDIR}/sources/poky/meta \ | ||
32 | ${BSPDIR}/sources/poky/meta-yocto \ | ||
33 | ${BSPDIR}/sources/meta-openembedded/meta-oe \ | ||
34 | ${BSPDIR}/sources/meta-openembedded/meta-python \ | ||
35 | ${BSPDIR}/sources/meta-openembedded/meta-networking \ | ||
36 | ${BSPDIR}/sources/meta-openembedded/meta-initramfs \ | ||
37 | ${BSPDIR}/sources/meta-qt5 \ | ||
38 | ${BSPDIR}/sources/meta-openembedded/meta-ruby \ | ||
39 | ${BSPDIR}/sources/nvidia-layer/meta-tegra \ | ||
40 | ${BSPDIR}/sources/nvidia-layer/meta-vib4 \ | ||
41 | ${BSPDIR}/sources/meta-b2qt \ | ||
42 | ${BSPDIR}/sources/meta-b2qt/meta-nvidia-extras \ | ||
43 | ${BSPDIR}/sources/meta-mingw \ | ||
44 | " | ||
45 | |||
46 | BBLAYERS_NON_REMOVABLE ?= " \ | ||
47 | ${BSPDIR}/sources/poky/meta \ | ||
48 | ${BSPDIR}/sources/poky/meta-yocto \ | ||
49 | " | ||
diff --git a/conf/distro/include/tegra-t18x.conf b/conf/distro/include/tegra-t18x.conf new file mode 100644 index 0000000..12b57d4 --- /dev/null +++ b/conf/distro/include/tegra-t18x.conf | |||
@@ -0,0 +1,67 @@ | |||
1 | ############################################################################# | ||
2 | ## | ||
3 | ## Copyright (C) 2016 Digia Plc and/or its subsidiary(-ies). | ||
4 | ## | ||
5 | ## This file is part of the Qt Enterprise Embedded Scripts of the Qt | ||
6 | ## framework. | ||
7 | ## | ||
8 | ## $QT_BEGIN_LICENSE$ | ||
9 | ## Commercial License Usage Only | ||
10 | ## Licensees holding valid commercial Qt license agreements with Digia | ||
11 | ## with an appropriate addendum covering the Qt Enterprise Embedded Scripts, | ||
12 | ## may use this file in accordance with the terms contained in said license | ||
13 | ## agreement. | ||
14 | ## | ||
15 | ## For further information use the contact form at | ||
16 | ## http://www.qt.io/contact-us. | ||
17 | ## | ||
18 | ## | ||
19 | ## $QT_END_LICENSE$ | ||
20 | ## | ||
21 | ############################################################################# | ||
22 | |||
23 | TARGET_CFLAGS += " -DWIN_INTERFACE_CUSTOM" | ||
24 | DISTRO_FEATURES_DEFAULT += "wayland weston" | ||
25 | |||
26 | MACHINE_EXTRA_INSTALL = "\ | ||
27 | tegra-firmware-fecs \ | ||
28 | tegra-firmware-gmicrocode \ | ||
29 | tegra-firmware-gpccs \ | ||
30 | tegra-firmware-gpmu \ | ||
31 | tegra-firmware-gshader \ | ||
32 | tegra-firmware-pmu \ | ||
33 | tegra-firmware-prod-fuse \ | ||
34 | tegra-firmware-xusb \ | ||
35 | tegra-firmware-vic \ | ||
36 | tegra-firmware-nvdec \ | ||
37 | tegra-firmware-nvenc \ | ||
38 | tegra-firmware-nvjpeg \ | ||
39 | tegra-drivers \ | ||
40 | virtual/libegl \ | ||
41 | virtual/libgles2 \ | ||
42 | libdrm-nv \ | ||
43 | asound-conf \ | ||
44 | " | ||
45 | |||
46 | PREFERRED_PROVIDER_virtual/libgles2 ?= "tegra-drivers" | ||
47 | PREFERRED_PROVIDER_virtual/libgles2-dev ?= "tegra-drivers" | ||
48 | PREFERRED_PROVIDER_virtual/libegl ?= "tegra-drivers" | ||
49 | PREFERRED_PROVIDER_virtual/libegl-dev ?= "tegra-drivers" | ||
50 | PREFERRED_PROVIDER_virtual/egl ?= "tegra-drivers" | ||
51 | |||
52 | PREFERRED_PROVIDER_wayland ?= "wayland-nv" | ||
53 | PREFERRED_PROVIDER_wayland-native ?= "wayland-nv" | ||
54 | PREFERRED_PROVIDER_nativesdk-wayland ?= "wayland-nv" | ||
55 | |||
56 | BBMASK ?= " " | ||
57 | BBMASK .= "\ | ||
58 | |meta-vib4/recipes-connectivity/connman\ | ||
59 | |meta-vib4/recipes-core/busybox\ | ||
60 | |meta-vib4/recipes-core/images\ | ||
61 | |meta-vib4/recipes-core/meta\ | ||
62 | |meta-vib4/recipes-core/packagegroups\ | ||
63 | |meta-vib4/recipes-core/systemd/systemd\ | ||
64 | |meta-vib4/recipes-devtools\ | ||
65 | |meta-vib4/recipes-extended\ | ||
66 | |meta-vib4/recipes-multimedia/audiomanager\ | ||
67 | " | ||
diff --git a/meta-nvidia-logan-extras/conf/layer.conf b/meta-nvidia-extras/conf/layer.conf index da03f5e..aa447a5 100644 --- a/meta-nvidia-logan-extras/conf/layer.conf +++ b/meta-nvidia-extras/conf/layer.conf | |||
@@ -27,6 +27,6 @@ BBFILES += "${LAYERDIR}/recipes*/*/*.bb \ | |||
27 | ${LAYERDIR}/recipes*/*/*.bbappend \ | 27 | ${LAYERDIR}/recipes*/*/*.bbappend \ |
28 | " | 28 | " |
29 | 29 | ||
30 | BBFILE_COLLECTIONS += "b2qt_nvidia-logan" | 30 | BBFILE_COLLECTIONS += "b2qt_nvidia" |
31 | BBFILE_PATTERN_b2qt_nvidia-logan := "^${LAYERDIR}/" | 31 | BBFILE_PATTERN_b2qt_nvidia := "^${LAYERDIR}/" |
32 | BBFILE_PRIORITY_b2qt_nvidia-logan = "20" | 32 | BBFILE_PRIORITY_b2qt_nvidia = "20" |
diff --git a/meta-nvidia-logan-extras/recipes/connman-conf/connman-conf.bbappend b/meta-nvidia-extras/recipes/connman-conf/connman-conf.bbappend index 86f0571..86f0571 100644 --- a/meta-nvidia-logan-extras/recipes/connman-conf/connman-conf.bbappend +++ b/meta-nvidia-extras/recipes/connman-conf/connman-conf.bbappend | |||
diff --git a/meta-nvidia-logan-extras/recipes/connman-conf/connman-conf/nvidia-logan/main.conf b/meta-nvidia-extras/recipes/connman-conf/connman-conf/nvidia-logan/main.conf index a1e45b9..a1e45b9 100644 --- a/meta-nvidia-logan-extras/recipes/connman-conf/connman-conf/nvidia-logan/main.conf +++ b/meta-nvidia-extras/recipes/connman-conf/connman-conf/nvidia-logan/main.conf | |||
diff --git a/meta-nvidia-extras/recipes/linux/linux-nvidia.bbappend b/meta-nvidia-extras/recipes/linux/linux-nvidia.bbappend new file mode 100644 index 0000000..f9d9cc6 --- /dev/null +++ b/meta-nvidia-extras/recipes/linux/linux-nvidia.bbappend | |||
@@ -0,0 +1,28 @@ | |||
1 | do_kernel_defconfig_prepend_tegra-t18x () { | ||
2 | } | ||
3 | |||
4 | do_install_append_tegra-t18x () { | ||
5 | s=$(readlink -m "${S}") | ||
6 | kernsrc="${STAGING_KERNEL_DIR}" | ||
7 | |||
8 | if [ "${s}" != "${kernsrc}" ]; then | ||
9 | mkdir -p "${kernsrc}" | ||
10 | rm -rf "${kernsrc}" | ||
11 | mv "${S}" "${STAGING_KERNEL_DIR}" | ||
12 | ln -sf "${kernsrc}" "${s}" | ||
13 | fi | ||
14 | } | ||
15 | |||
16 | do_compile_prepend_tegra-t18x () { | ||
17 | if [ -z "${TOOLCHAIN_PATH}" ] ; then | ||
18 | echo "TOOLCHAIN_PATH must be set" | ||
19 | exit -1 | ||
20 | fi | ||
21 | |||
22 | export PATH="${TOOLCHAIN_PATH}/usr/bin/aarch64-gnu-linux:${PATH}" | ||
23 | |||
24 | echo "CONFIG_USB_FUNCTIONFS=m" >> ${B}/.config | ||
25 | echo "CONFIG_USB_ACM=m" >> ${B}/.config | ||
26 | |||
27 | make olddefconfig | ||
28 | } | ||
diff --git a/meta-nvidia-extras/recipes/packagegroups/packagegroup-b2qt-embedded-toolchain-target.bbappend b/meta-nvidia-extras/recipes/packagegroups/packagegroup-b2qt-embedded-toolchain-target.bbappend new file mode 100644 index 0000000..1800e5e --- /dev/null +++ b/meta-nvidia-extras/recipes/packagegroups/packagegroup-b2qt-embedded-toolchain-target.bbappend | |||
@@ -0,0 +1,4 @@ | |||
1 | RDEPENDS_${PN}_remove_tegra-t18x = "\ | ||
2 | libgbm-dev \ | ||
3 | " | ||
4 | |||
diff --git a/meta-nvidia-logan-extras/recipes/qt5/qtbase_git.bbappend b/meta-nvidia-extras/recipes/qt5/qtbase_git.bbappend index c33ee23..cd74ddf 100644 --- a/meta-nvidia-logan-extras/recipes/qt5/qtbase_git.bbappend +++ b/meta-nvidia-extras/recipes/qt5/qtbase_git.bbappend | |||
@@ -19,5 +19,5 @@ | |||
19 | ## | 19 | ## |
20 | ############################################################################## | 20 | ############################################################################## |
21 | 21 | ||
22 | DEPENDS += "graphics-headers" | 22 | DEPENDS_nvidia-logan += "graphics-headers" |
23 | PACKAGECONFIG += "kms" | 23 | PACKAGECONFIG_nvidia-logan += "kms" |
diff --git a/meta-nvidia-logan-extras/recipes/qt5/qtwebengine_git.bbappend b/meta-nvidia-extras/recipes/qt5/qtwebengine_git.bbappend index 7f9ce03..97acf20 100644 --- a/meta-nvidia-logan-extras/recipes/qt5/qtwebengine_git.bbappend +++ b/meta-nvidia-extras/recipes/qt5/qtwebengine_git.bbappend | |||
@@ -20,4 +20,4 @@ | |||
20 | ############################################################################## | 20 | ############################################################################## |
21 | 21 | ||
22 | CXXFLAGS +=" -DWIN_INTERFACE_CUSTOM" | 22 | CXXFLAGS +=" -DWIN_INTERFACE_CUSTOM" |
23 | 23 | COMPATIBLE_MACHINE_aarch64 = "(.*)" | |
diff --git a/meta-nvidia-extras/recipes/systemd/systemd/tegra-t18x/0001-Disable-LTO-in-LDFLAGS-and-CFLAGS.patch b/meta-nvidia-extras/recipes/systemd/systemd/tegra-t18x/0001-Disable-LTO-in-LDFLAGS-and-CFLAGS.patch new file mode 100644 index 0000000..629ccf4 --- /dev/null +++ b/meta-nvidia-extras/recipes/systemd/systemd/tegra-t18x/0001-Disable-LTO-in-LDFLAGS-and-CFLAGS.patch | |||
@@ -0,0 +1,18 @@ | |||
1 | diff --git a/configure.ac b/configure.ac | ||
2 | index 97a29d6..b0e4060 100644 | ||
3 | --- a/configure.ac | ||
4 | +++ b/configure.ac | ||
5 | @@ -208,10 +208,6 @@ AS_CASE([$CC], [*clang*], | ||
6 | -Wno-gnu-variable-sized-type-not-at-end \ | ||
7 | ])]) | ||
8 | |||
9 | -AS_CASE([$CFLAGS], [*-O[[12345sz\ ]]*], | ||
10 | - [CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ | ||
11 | - -flto -ffat-lto-objects])], | ||
12 | - [AC_MSG_RESULT([skipping -flto, optimization not enabled])]) | ||
13 | AC_SUBST([OUR_CFLAGS], "$with_cflags $sanitizer_cflags") | ||
14 | |||
15 | AS_CASE([$CFLAGS], [*-O[[12345\ ]]*], | ||
16 | -- | ||
17 | 2.5.0 | ||
18 | |||
diff --git a/meta-nvidia-extras/recipes/systemd/systemd_%.bbappend b/meta-nvidia-extras/recipes/systemd/systemd_%.bbappend new file mode 100644 index 0000000..d86ee9d --- /dev/null +++ b/meta-nvidia-extras/recipes/systemd/systemd_%.bbappend | |||
@@ -0,0 +1 @@ | |||
FILESEXTRAPATHS_prepend_tegra-t18x := "${THISDIR}/${PN}:" | |||
diff --git a/meta-nvidia-extras/recipes/tegra-drivers/tegra-drivers_%.bbappend b/meta-nvidia-extras/recipes/tegra-drivers/tegra-drivers_%.bbappend new file mode 100644 index 0000000..85a2996 --- /dev/null +++ b/meta-nvidia-extras/recipes/tegra-drivers/tegra-drivers_%.bbappend | |||
@@ -0,0 +1,12 @@ | |||
1 | GRAPHICS_PACKAGES = " \ | ||
2 | virtual/libgles2 \ | ||
3 | virtual/libegl \ | ||
4 | virtual/egl \ | ||
5 | libgbm \ | ||
6 | libgbm-dev \ | ||
7 | " | ||
8 | |||
9 | PROVIDES_append = " ${GRAPHICS_PACKAGES}" | ||
10 | RPROVIDES_append_${PN} = " ${GRAPHICS_PACKAGES}" | ||
11 | CONFLICTS_append_${PN} = " ${GRAPHICS_PACKAGES}" | ||
12 | REPLACES_append_${PN} = " ${GRAPHICS_PACKAGES}" | ||
diff --git a/meta-nvidia-extras/recipes/wayland-nv/wayland-nv.bbappend b/meta-nvidia-extras/recipes/wayland-nv/wayland-nv.bbappend new file mode 100644 index 0000000..db0da64 --- /dev/null +++ b/meta-nvidia-extras/recipes/wayland-nv/wayland-nv.bbappend | |||
@@ -0,0 +1,9 @@ | |||
1 | EXTRA_PROVIDES = " \ | ||
2 | virtual/wayland-native \ | ||
3 | wayland-native \ | ||
4 | " | ||
5 | |||
6 | PROVIDES_append = "${EXTRA_PROVIDES}" | ||
7 | RPROVIDES_append_${PN} = "${EXTRA_PROVIDES}" | ||
8 | CONFLICTS_append_${PN} = "${EXTRA_PROVIDES}" | ||
9 | REPLACES_append_${PN} = "${EXTRA_PROVIDES}" | ||
diff --git a/recipes-qt/qt5/qtbase/tegra-t18x/oe-device-extra.pri b/recipes-qt/qt5/qtbase/tegra-t18x/oe-device-extra.pri new file mode 100644 index 0000000..4597a84 --- /dev/null +++ b/recipes-qt/qt5/qtbase/tegra-t18x/oe-device-extra.pri | |||
@@ -0,0 +1,11 @@ | |||
1 | TEGRA_T18X_CFLAGS = -DWIN_INTERFACE_CUSTOM | ||
2 | QMAKE_LIBS_EGL += -lEGL | ||
3 | QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL | ||
4 | QMAKE_CFLAGS += $$TEGRA_T18X_CFLAGS | ||
5 | QMAKE_CXXFLAGS += $$TEGRA_T18X_CFLAGS | ||
6 | |||
7 | QMAKE_PLATFORM += boot2qt | ||
8 | |||
9 | QT_QPA_DEFAULT_PLATFORM = eglfs | ||
10 | EGLFS_DEVICE_INTEGRATION = eglfs_kms_egldevice | ||
11 | |||
diff --git a/scripts/setup-environment.sh b/scripts/setup-environment.sh index 28adeec..b25a4cc 100755 --- a/scripts/setup-environment.sh +++ b/scripts/setup-environment.sh | |||
@@ -72,8 +72,8 @@ if [ ! -f ${PWD}/${BUILDDIRECTORY}/conf/bblayers.conf ]; then | |||
72 | nuc) | 72 | nuc) |
73 | LAYERSCONF="bblayers.conf.nuc.sample" | 73 | LAYERSCONF="bblayers.conf.nuc.sample" |
74 | ;; | 74 | ;; |
75 | nvidia-logan) | 75 | nvidia-logan|tegra-x1|tegra-t18x) |
76 | LAYERSCONF="bblayers.conf.nvidia-logan.sample" | 76 | LAYERSCONF="bblayers.conf.nvidia.sample" |
77 | ;; | 77 | ;; |
78 | emulator) | 78 | emulator) |
79 | LAYERSCONF="bblayers.conf.emulator.sample" | 79 | LAYERSCONF="bblayers.conf.emulator.sample" |
diff --git a/scripts/upload.sh b/scripts/upload.sh index e0d896a..60e7e14 100755 --- a/scripts/upload.sh +++ b/scripts/upload.sh | |||
@@ -33,7 +33,7 @@ elif [ -e tmp/deploy/images/${MACHINE}/b2qt-${PROJECT}-qt5-image-${MACHINE}.img | |||
33 | 7z a -l b2qt-${PROJECT}-qt5-image-${MACHINE}.7z \ | 33 | 7z a -l b2qt-${PROJECT}-qt5-image-${MACHINE}.7z \ |
34 | $PWD/tmp/deploy/images/${MACHINE}/b2qt-${PROJECT}-qt5-image-${MACHINE}.img \ | 34 | $PWD/tmp/deploy/images/${MACHINE}/b2qt-${PROJECT}-qt5-image-${MACHINE}.img \ |
35 | $PWD/tmp/deploy/images/${MACHINE}/b2qt-${PROJECT}-qt5-image-${MACHINE}.conf | 35 | $PWD/tmp/deploy/images/${MACHINE}/b2qt-${PROJECT}-qt5-image-${MACHINE}.conf |
36 | elif [ ${MACHINE} == "nvidia-logan" ] && [ -e tmp/deploy/images/${MACHINE}/b2qt-${PROJECT}-qt5-image-${MACHINE}.tar.gz ]; then | 36 | elif [ ${MACHINE} == "nvidia-logan" || ${MACHINE} == "tegra-x1" || ${MACHINE} == "tegra-t18x" ] && [ -e tmp/deploy/images/${MACHINE}/b2qt-${PROJECT}-qt5-image-${MACHINE}.tar.gz ]; then |
37 | 7z a -l b2qt-${PROJECT}-qt5-image-${MACHINE}.7z \ | 37 | 7z a -l b2qt-${PROJECT}-qt5-image-${MACHINE}.7z \ |
38 | $PWD/tmp/deploy/images/${MACHINE}/b2qt-${PROJECT}-qt5-image-${MACHINE}.tar.gz \ | 38 | $PWD/tmp/deploy/images/${MACHINE}/b2qt-${PROJECT}-qt5-image-${MACHINE}.tar.gz \ |
39 | $PWD/tmp/deploy/images/${MACHINE}/zImage | 39 | $PWD/tmp/deploy/images/${MACHINE}/zImage |