summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-ti-bsp/conf/machine/am437x-evm.conf2
-rw-r--r--meta-ti-bsp/conf/machine/am69-sk.conf2
-rw-r--r--meta-ti-bsp/conf/machine/include/am69.inc19
-rw-r--r--meta-ti-bsp/conf/machine/j784s4-evm.conf1
-rw-r--r--meta-ti-bsp/recipes-bsp/powervr-drivers/ti-img-rogue-driver_24.1.6554834.bb44
-rw-r--r--meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc4
-rw-r--r--meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2023.04.bb2
-rw-r--r--meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2024.04.bb2
-rw-r--r--meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-gallium-Fix-build-with-llvm-17.patch40
-rw-r--r--meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson-Disable-cmake-dependency-detector-for-llvm.patch42
-rw-r--r--meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch25
-rw-r--r--meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson.build-check-for-all-linux-host_os-combinations.patch43
-rw-r--r--meta-ti-bsp/recipes-graphics/mesa/mesa-pvr_23.2.1.bb58
-rw-r--r--meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.1.6554834.bb148
-rw-r--r--meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.1.bb4
-rw-r--r--meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.6.bb4
-rw-r--r--meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.1.bb4
-rw-r--r--meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb4
18 files changed, 434 insertions, 14 deletions
diff --git a/meta-ti-bsp/conf/machine/am437x-evm.conf b/meta-ti-bsp/conf/machine/am437x-evm.conf
index 58b7996f..248add70 100644
--- a/meta-ti-bsp/conf/machine/am437x-evm.conf
+++ b/meta-ti-bsp/conf/machine/am437x-evm.conf
@@ -21,7 +21,7 @@ SERIAL_CONSOLES = "115200;ttyS0"
21# UBI: logical eraseblock size: 253952 bytes 21# UBI: logical eraseblock size: 253952 bytes
22# from ubiattach stdout: 22# from ubiattach stdout:
23# UBI device number 0, total 994 LEBs 23# UBI device number 0, total 994 LEBs
24MKUBIFS_ARGS = "-F -m 4096 -e 253952 -c 6000" 24MKUBIFS_ARGS = "-F -m 4096 -e 253952 -c 8000"
25 25
26# do ubiattach /dev/ubi_ctrl -m 11 -O 4096 26# do ubiattach /dev/ubi_ctrl -m 11 -O 4096
27# from dmesg: 27# from dmesg:
diff --git a/meta-ti-bsp/conf/machine/am69-sk.conf b/meta-ti-bsp/conf/machine/am69-sk.conf
index 233a4618..6341a6fa 100644
--- a/meta-ti-bsp/conf/machine/am69-sk.conf
+++ b/meta-ti-bsp/conf/machine/am69-sk.conf
@@ -2,7 +2,7 @@
2#@NAME: AM69 SK 2#@NAME: AM69 SK
3#@DESCRIPTION: Machine configuration for the TI AM69 SK 3#@DESCRIPTION: Machine configuration for the TI AM69 SK
4 4
5require conf/machine/include/j784s4.inc 5require conf/machine/include/am69.inc
6 6
7TFA_K3_USART = "0x8" 7TFA_K3_USART = "0x8"
8OPTEE_K3_USART = "0x8" 8OPTEE_K3_USART = "0x8"
diff --git a/meta-ti-bsp/conf/machine/include/am69.inc b/meta-ti-bsp/conf/machine/include/am69.inc
new file mode 100644
index 00000000..81be1397
--- /dev/null
+++ b/meta-ti-bsp/conf/machine/include/am69.inc
@@ -0,0 +1,19 @@
1require conf/machine/include/k3.inc
2SOC_FAMILY:append = ":j784s4"
3
4MACHINE_FEATURES += "screen gpu"
5
6require conf/machine/include/mesa-pvr.inc
7PREFERRED_PROVIDER_virtual/gpudriver ?= "ti-img-rogue-driver"
8
9# Default tiboot3.bin on AM69 is for SR1.0 HS-FS
10IMAGE_BOOT_FILES += "tiboot3-j784s4-hs-fs-evm.bin"
11
12# Since default tiboot3.bin on AM69 is for HS-FS, add a version for SR1.0 HS-SE
13IMAGE_BOOT_FILES += "tiboot3-j784s4-hs-evm.bin"
14
15TFA_BOARD = "j784s4"
16
17OPTEEMACHINE = "k3-j784s4"
18
19MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "cadence-mhdp-fw cnm-wave-fw ti-eth-fw"
diff --git a/meta-ti-bsp/conf/machine/j784s4-evm.conf b/meta-ti-bsp/conf/machine/j784s4-evm.conf
index 6573e5c5..e451bf47 100644
--- a/meta-ti-bsp/conf/machine/j784s4-evm.conf
+++ b/meta-ti-bsp/conf/machine/j784s4-evm.conf
@@ -11,6 +11,7 @@ KERNEL_DEVICETREE_PREFIX = " \
11 ti/k3-j784s4 \ 11 ti/k3-j784s4 \
12 ti/k3-fpdlink \ 12 ti/k3-fpdlink \
13 ti/k3-j7200-evm-mcspi-loopback \ 13 ti/k3-j7200-evm-mcspi-loopback \
14 ti/k3-am69-sk \
14 ti/k3-v3link \ 15 ti/k3-v3link \
15" 16"
16 17
diff --git a/meta-ti-bsp/recipes-bsp/powervr-drivers/ti-img-rogue-driver_24.1.6554834.bb b/meta-ti-bsp/recipes-bsp/powervr-drivers/ti-img-rogue-driver_24.1.6554834.bb
new file mode 100644
index 00000000..a1b76d27
--- /dev/null
+++ b/meta-ti-bsp/recipes-bsp/powervr-drivers/ti-img-rogue-driver_24.1.6554834.bb
@@ -0,0 +1,44 @@
1DESCRIPTION = "Kernel drivers for the PowerVR Rogue GPU found in the TI SoCs"
2HOMEPAGE = "http://git.ti.com/graphics/ti-img-rogue-driver"
3LICENSE = "MIT | GPL-2.0-only"
4LIC_FILES_CHKSUM = "file://README;beginline=14;endline=19;md5=0403c7dea01a2b8232261e805325fac2"
5
6DEFAULT_PREFERENCE = "-1"
7
8inherit module
9
10PROVIDES = "virtual/gpudriver"
11
12MACHINE_KERNEL_PR:append = "b"
13PR = "${MACHINE_KERNEL_PR}"
14
15PACKAGE_ARCH = "${MACHINE_ARCH}"
16
17COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|am62xx|am62pxx|j722s"
18
19DEPENDS = "virtual/kernel"
20
21BRANCH = "linuxws/scarthgap/k6.6/${PV}"
22
23SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-driver.git;protocol=https;branch=${BRANCH}"
24
25S = "${WORKDIR}/git"
26
27SRCREV = "e2dfdfee991dadc18175f27fe9e8676e910a2f8d"
28
29TARGET_PRODUCT:j721e = "j721e_linux"
30TARGET_PRODUCT:j721s2 = "j721s2_linux"
31TARGET_PRODUCT:j784s4 = "j784s4_linux"
32TARGET_PRODUCT:am62xx = "am62_linux"
33TARGET_PRODUCT:am62pxx = "am62p_linux"
34TARGET_PRODUCT:j722s = "j722s_linux"
35PVR_BUILD = "release"
36PVR_WS = "lws-generic"
37
38EXTRA_OEMAKE += 'KERNELDIR="${STAGING_KERNEL_DIR}" BUILD=${PVR_BUILD} PVR_BUILD_DIR=${TARGET_PRODUCT} WINDOW_SYSTEM=${PVR_WS}'
39
40do_install() {
41 make -C ${STAGING_KERNEL_DIR} M=${B}/binary_${TARGET_PRODUCT}_${PVR_WS}_${PVR_BUILD}/target_aarch64/kbuild INSTALL_MOD_PATH=${D}${root_prefix} PREFIX=${STAGING_DIR_HOST} modules_install
42}
43
44RRECOMMENDS:${PN} += "ti-img-rogue-umlibs"
diff --git a/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc b/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc
index 6f7e8813..adf8e698 100644
--- a/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc
+++ b/meta-ti-bsp/recipes-bsp/ti-linux-fw/ti-linux-fw.inc
@@ -15,9 +15,9 @@ CADENCE_MHDP_FW_VERSION = "2.1.0"
15IMG_DEC_FW_VERSION = "1.0" 15IMG_DEC_FW_VERSION = "1.0"
16CNM_WAVE521_FW_VERSION = "1.0.3" 16CNM_WAVE521_FW_VERSION = "1.0.3"
17TI_DM_FW_VERSION = "09.02.04" 17TI_DM_FW_VERSION = "09.02.04"
18TI_SYSFW_VERSION = "09.02.07" 18TI_SYSFW_VERSION = "09.02.08"
19 19
20TI_LINUX_FW_SRCREV ?= "58e3c376102aa8f42a0b1208afc91d75200b2d7b" 20TI_LINUX_FW_SRCREV ?= "3987d170fc522565c5e4a9293aba1db75951b8c0"
21SRCREV = "${TI_LINUX_FW_SRCREV}" 21SRCREV = "${TI_LINUX_FW_SRCREV}"
22 22
23BRANCH ?= "ti-linux-firmware" 23BRANCH ?= "ti-linux-firmware"
diff --git a/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2023.04.bb b/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2023.04.bb
index f2da156b..199b44f4 100644
--- a/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2023.04.bb
+++ b/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2023.04.bb
@@ -6,4 +6,4 @@ PR = "r0"
6 6
7BRANCH = "ti-u-boot-2023.04" 7BRANCH = "ti-u-boot-2023.04"
8 8
9SRCREV = "f9b966c674731a1a29a20a8e143c61d4e046f13c" 9SRCREV = "83660642085462346fbeb410f83bc99448ec7042"
diff --git a/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2024.04.bb b/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2024.04.bb
index bafd4f19..d268c8a5 100644
--- a/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2024.04.bb
+++ b/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti-staging_2024.04.bb
@@ -8,4 +8,4 @@ PR = "r0"
8 8
9BRANCH = "ti-u-boot-2024.04" 9BRANCH = "ti-u-boot-2024.04"
10 10
11SRCREV = "25049ad560826f7dc1c4740883b0016014a59789" 11SRCREV = "919b5bb5e9eea5324b6d8b469ae69ff1dae45b75"
diff --git a/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-gallium-Fix-build-with-llvm-17.patch b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-gallium-Fix-build-with-llvm-17.patch
new file mode 100644
index 00000000..738ff267
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-gallium-Fix-build-with-llvm-17.patch
@@ -0,0 +1,40 @@
1From 6d07f6aa7f92f40d78a2db645f16f0f3e7d3c2e8 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 23 Jun 2023 01:20:38 -0700
4Subject: [PATCH] gallium: Fix build with llvm 17
5
6These headers are not available for C files in llvm 17+
7and they seem to be not needed to compile after all with llvm 17
8so add conditions to exclude them for llvm >= 17
9
10Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23827]
11Signed-off-by: Khem Raj <raj.khem@gmail.com>
12
13---
14 src/gallium/auxiliary/gallivm/lp_bld_init.c | 6 +++++-
15 1 file changed, 5 insertions(+), 1 deletion(-)
16
17diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init.c b/src/gallium/auxiliary/gallivm/lp_bld_init.c
18index cd2108f..b1a4d03 100644
19--- a/src/gallium/auxiliary/gallivm/lp_bld_init.c
20+++ b/src/gallium/auxiliary/gallivm/lp_bld_init.c
21@@ -46,15 +46,19 @@
22 #if GALLIVM_USE_NEW_PASS == 1
23 #include <llvm-c/Transforms/PassBuilder.h>
24 #elif GALLIVM_HAVE_CORO == 1
25+#if LLVM_VERSION_MAJOR < 17
26 #include <llvm-c/Transforms/Scalar.h>
27-#if LLVM_VERSION_MAJOR >= 7
28+#endif
29+#if LLVM_VERSION_MAJOR >= 7 && LLVM_VERSION_MAJOR < 17
30 #include <llvm-c/Transforms/Utils.h>
31 #endif
32 #if LLVM_VERSION_MAJOR <= 8 && (DETECT_ARCH_AARCH64 || DETECT_ARCH_ARM || DETECT_ARCH_S390 || DETECT_ARCH_MIPS64)
33 #include <llvm-c/Transforms/IPO.h>
34 #endif
35+#if LLVM_VERSION_MAJOR < 17
36 #include <llvm-c/Transforms/Coroutines.h>
37 #endif
38+#endif
39
40 unsigned gallivm_perf = 0;
diff --git a/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson-Disable-cmake-dependency-detector-for-llvm.patch b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson-Disable-cmake-dependency-detector-for-llvm.patch
new file mode 100644
index 00000000..4cded054
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson-Disable-cmake-dependency-detector-for-llvm.patch
@@ -0,0 +1,42 @@
1From 00d41cd5aa3f4b494dc276c9b4ccdc096310c91f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 28 Sep 2023 15:34:22 -0700
4Subject: [PATCH] meson: use llvm-config instead of cmake to fix linking errors with meson 1.2.1
5
6meson dependency auto dependency detection uses cmake and then
7config-tool to process dependencies, in mesa the logic to detect llvm is
8using auto detection which means if it finds cmake then it will try to
9use cmake method. Cmake method works ok except a case when llvm-dev
10package is installed on the build host then it generates its own
11native.meson file and ignores OE supplied meson.native file which has
12correct llvm-config tool specified which is pointing to llvm-config from
13native sysroot. The generated meson.native file points to one found in
14/usr/bin and there onwards detector finds native install of llvm and
15configures that into building native mesa package.
16
17Since cmake detector does not always work, disable it by default and use
18config-tool which works in all cases. This is suggested in below issues
19too
20
21A similar issue is open in meson upstream [1] and mesa [2]
22
23[1] https://github.com/mesonbuild/meson/issues/10483
24[2] https://gitlab.freedesktop.org/mesa/mesa/-/issues/6738
25
26Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25438]
27
28Signed-off-by: Khem Raj <raj.khem@gmail.com>
29---
30 meson.build | 1 +
31 1 file changed, 1 insertion(+)
32
33--- a/meson.build
34+++ b/meson.build
35@@ -1659,6 +1659,7 @@ with_llvm = false
36 if _llvm.allowed()
37 dep_llvm = dependency(
38 'llvm',
39+ method : host_machine.system() == 'windows' ? 'auto' : 'config-tool',
40 version : _llvm_version,
41 modules : llvm_modules,
42 optional_modules : llvm_optional_modules,
diff --git a/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch
new file mode 100644
index 00000000..35bd0ea1
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson-misdetects-64bit-atomics-on-mips-clang.patch
@@ -0,0 +1,25 @@
1From 3ef37c63f03ad6f2af407de350486fdd25e9132a Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 13 Jan 2020 15:23:47 -0800
4Subject: [PATCH] meson misdetects 64bit atomics on mips/clang
5
6Upstream-Status: Pending
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8
9---
10 src/util/u_atomic.c | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/src/util/u_atomic.c b/src/util/u_atomic.c
14index 5a5eab4..e499516 100644
15--- a/src/util/u_atomic.c
16+++ b/src/util/u_atomic.c
17@@ -21,7 +21,7 @@
18 * IN THE SOFTWARE.
19 */
20
21-#if defined(MISSING_64BIT_ATOMICS) && defined(HAVE_PTHREAD)
22+#if !defined(__clang__) && defined(MISSING_64BIT_ATOMICS) && defined(HAVE_PTHREAD)
23
24 #include <stdint.h>
25 #include <pthread.h>
diff --git a/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson.build-check-for-all-linux-host_os-combinations.patch b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson.build-check-for-all-linux-host_os-combinations.patch
new file mode 100644
index 00000000..e9a6fd3f
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-23.2.1/0001-meson.build-check-for-all-linux-host_os-combinations.patch
@@ -0,0 +1,43 @@
1From b251af67df5a6840d2e9cc06edae2c387f8778f1 Mon Sep 17 00:00:00 2001
2From: Alistair Francis <alistair@alistair23.me>
3Date: Thu, 14 Nov 2019 13:04:49 -0800
4Subject: [PATCH] meson.build: check for all linux host_os combinations
5
6Make sure that we are also looking for our host_os combinations like
7linux-musl etc. when assuming support for DRM/KMS.
8
9Also delete a duplicate line.
10
11Upstream-Status: Pending
12
13Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
14Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
15Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
16Signed-off-by: Alistair Francis <alistair@alistair23.me>
17
18---
19 meson.build | 4 ++--
20 1 file changed, 2 insertions(+), 2 deletions(-)
21
22diff --git a/meson.build b/meson.build
23index 22385d8..15f48a6 100644
24--- a/meson.build
25+++ b/meson.build
26@@ -121,7 +121,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2
27 # Only build shared_glapi if at least one OpenGL API is enabled
28 with_shared_glapi = with_shared_glapi and with_any_opengl
29
30-system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos', 'android'].contains(host_machine.system())
31+system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos', 'android'].contains(host_machine.system()) or host_machine.system().startswith('linux')
32
33 gallium_drivers = get_option('gallium-drivers')
34 if gallium_drivers.contains('auto')
35@@ -909,7 +909,7 @@ if cc.has_function('fmemopen')
36 endif
37
38 # TODO: this is very incomplete
39-if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku', 'android'].contains(host_machine.system())
40+if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system()) or host_machine.system().startswith('linux')
41 pre_args += '-D_GNU_SOURCE'
42 elif host_machine.system() == 'sunos'
43 pre_args += '-D__EXTENSIONS__'
diff --git a/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr_23.2.1.bb b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr_23.2.1.bb
new file mode 100644
index 00000000..1e66acd2
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr_23.2.1.bb
@@ -0,0 +1,58 @@
1# PowerVR Graphics require several patches that have not made their way
2# upstream yet. This allows us to build the shims we need without completely
3# clobbering mesa.
4
5DEFAULT_PREFERENCE = "-1"
6
7require recipes-graphics/mesa/mesa.inc
8
9SUMMARY += " (with PowerVR support for TI platforms)"
10
11LIC_FILES_CHKSUM = "file://docs/license.rst;md5=63779ec98d78d823a9dc533a0735ef10"
12
13BRANCH = "powervr/${PV}"
14
15SRC_URI = " \
16 git://gitlab.freedesktop.org/StaticRocket/mesa.git;protocol=https;branch=${BRANCH} \
17 file://0001-meson.build-check-for-all-linux-host_os-combinations.patch \
18 file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
19 file://0001-gallium-Fix-build-with-llvm-17.patch \
20 file://0001-meson-Disable-cmake-dependency-detector-for-llvm.patch \
21"
22
23S = "${WORKDIR}/git"
24
25PACKAGECONFIG:append = " \
26 ${@bb.utils.contains('PREFERRED_PROVIDER_virtual/gpudriver', 'ti-img-rogue-driver', 'pvr', '', d)} \
27 ${@bb.utils.contains('PREFERRED_PROVIDER_virtual/gpudriver', 'ti-sgx-ddk-km', 'sgx', '', d)} \
28"
29
30SRCREV = "b12290126ba6a154f0e8b0a8c8b2b0d64f98e427"
31
32PVR_DISPLAY_CONTROLLER_ALIAS ??= "tidss"
33PACKAGECONFIG[pvr] = "-Dgallium-pvr-alias=${PVR_DISPLAY_CONTROLLER_ALIAS},"
34PACKAGECONFIG[sgx] = "-Dgallium-sgx-alias=${PVR_DISPLAY_CONTROLLER_ALIAS},"
35
36PACKAGECONFIG:remove = "video-codecs"
37PACKAGECONFIG[video-codecs] = ""
38PACKAGECONFIG:remove = "elf-tls"
39PACKAGECONFIG[elf-tls] = ""
40PACKAGECONFIG:remove = "xvmc"
41PACKAGECONFIG[xvmc] = ""
42
43PACKAGE_ARCH = "${MACHINE_ARCH}"
44
45GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'pvr', ',pvr', '', d)}"
46GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'sgx', ',sgx', '', d)}"
47
48VULKAN_DRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'pvr', ',pvr', '', d)}"
49
50do_install:append () {
51 # remove pvr custom pkgconfig
52 rm -rf ${D}${datadir}/pkgconfig
53}
54
55FILES:${PN}-dev += "${datadir}/mesa/wayland-drm.xml"
56FILES:mesa-vulkan-drivers += "${libdir}/libpvr_mesa_wsi.so"
57
58RRECOMMENDS:mesa-megadriver:append:class-target = " ${@d.getVar('PREFERRED_PROVIDER_virtual/gpudriver')}"
diff --git a/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.1.6554834.bb b/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.1.6554834.bb
new file mode 100644
index 00000000..d43d1635
--- /dev/null
+++ b/meta-ti-bsp/recipes-graphics/powervr-umlibs/ti-img-rogue-umlibs_24.1.6554834.bb
@@ -0,0 +1,148 @@
1DESCRIPTION = "Userspace libraries for PowerVR Rogue GPU on TI SoCs"
2HOMEPAGE = "http://git.ti.com/graphics/ti-img-rogue-umlibs"
3LICENSE = "TI-TFL"
4LIC_FILES_CHKSUM = "file://${WORKDIR}/git/LICENSE;md5=7232b98c1c58f99e3baa03de5207e76f"
5
6DEFAULT_PREFERENCE = "-1"
7
8inherit bin_package
9
10INHIBIT_DEFAULT_DEPS = ""
11
12PACKAGE_ARCH = "${MACHINE_ARCH}"
13COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|am62xx|am62pxx|j722s"
14
15PR = "r3"
16
17BRANCH = "linuxws/scarthgap/k6.6/${PV}"
18SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=${BRANCH}"
19SRCREV = "e473234158c736248cf71a60080b7faf76fca561"
20S = "${WORKDIR}/git/targetfs/${TARGET_PRODUCT}/${PVR_WS}/${PVR_BUILD}"
21
22TARGET_PRODUCT:j721e = "j721e_linux"
23TARGET_PRODUCT:j721s2 = "j721s2_linux"
24TARGET_PRODUCT:j784s4 = "j784s4_linux"
25TARGET_PRODUCT:am62xx = "am62_linux"
26TARGET_PRODUCT:am62pxx = "am62p_linux"
27TARGET_PRODUCT:j722s = "j722s_linux"
28PVR_BUILD = "release"
29PVR_WS = "lws-generic"
30
31RDEPENDS:${PN} = " \
32 libdrm \
33 ti-img-rogue-driver \
34 ${PN}-firmware \
35"
36
37PACKAGECONFIG ?= " \
38 ${@bb.utils.contains('DISTRO_FEATURES', 'vulkan wayland', 'vulkan', '', d)} \
39 ${@bb.utils.filter('DISTRO_FEATURES', 'opengl opencl', d)} \
40"
41
42PACKAGECONFIG[opengl] = ",,,,${GLES_PACKAGES}"
43PACKAGECONFIG[vulkan] = ",,,,${VULKAN_PACKAGES}"
44PACKAGECONFIG[opencl] = ",,,,${OPENCL_PACKAGES}"
45
46def get_file_list(package_list_var, d):
47 file_list = []
48 package_list = d.getVar(package_list_var)
49 prefix = f"{d.getVar('S')}/"
50 if package_list:
51 for package in package_list.split():
52 package_file_string = d.getVar(f"FILES:{package}")
53 if package_file_string:
54 for package_file in package_file_string.split():
55 file_list.append(f"{prefix}{package_file}")
56 return " ".join(file_list)
57
58do_install:prepend() {
59 if ${@bb.utils.contains('PACKAGECONFIG', 'opengl', 'false', 'true', d)}; then
60 for file in ${@get_file_list('GLES_PACKAGES', d)}; do
61 rm -rf ${file}
62 done
63 fi
64 if ${@bb.utils.contains('PACKAGECONFIG', 'vulkan', 'false', 'true', d)}; then
65 for file in ${@get_file_list('VULKAN_PACKAGES', d)}; do
66 rm -rf ${file}
67 done
68 fi
69 if ${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'false', 'true', d)}; then
70 for file in ${@get_file_list('OPENCL_PACKAGES', d)}; do
71 rm -rf ${file}
72 done
73 fi
74 if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
75 if [ -e ${S}/lib/firmware ]; then
76 mv ${S}/lib/firmware ${S}${nonarch_base_libdir}
77 fi
78 fi
79
80 # clean up any empty directories
81 find "${S}" -empty -type d -delete
82}
83
84GLES_PACKAGES = "libgles1-rogue libgles2-rogue libgles3-rogue"
85VULKAN_PACKAGES = "libvk-rogue"
86OPENCL_PACKAGES = "libopencl-rogue libopencl-rogue-tools"
87
88PACKAGES = " \
89 ${@bb.utils.contains('PACKAGECONFIG', 'opengl', d.getVar('GLES_PACKAGES'), '', d)} \
90 ${@bb.utils.contains('PACKAGECONFIG', 'vulkan', d.getVar('VULKAN_PACKAGES'), '', d)} \
91 ${@bb.utils.contains('PACKAGECONFIG', 'opencl', d.getVar('OPENCL_PACKAGES'), '', d)} \
92 ${PN}-tools \
93 ${PN}-firmware \
94 ${PN} \
95"
96
97# Inject variables so that packages don't get Debian-renamed (which would
98# remove the -rogue suffix), but don't RPROVIDEs/RCONFLICTs on the generic
99# libgl name to prevent colliding with swrast libs
100python __anonymous() {
101 suffix = ""
102 if "-native" in d.getVar("PN"):
103 suffix = "-native"
104 for p in (("vulkan", "libvk",),
105 ("gles", "libgles1", "libglesv1-cm1"),
106 ("gles", "libgles2", "libglesv2-2"),
107 ("gles", "libgles3",),
108 ("opencl", "libopencl",)):
109 mlprefix = d.getVar("MLPREFIX")
110 fullp = mlprefix + p[1] + "-rogue" + suffix
111 mlprefix = d.getVar("MLPREFIX")
112 pkgs = " " + " ".join(mlprefix + x + suffix for x in p[1:])
113 d.setVar("DEBIAN_NOAUTONAME:" + fullp, "1")
114 d.setVar("INSANE_SKIP:" + fullp, "dev-so ldflags")
115 d.appendVar("RRECOMMENDS:" + fullp, " ${MLPREFIX}ti-img-rogue-umlibs" + suffix)
116}
117
118# gles specific shared objects
119FILES:libgles1-rogue = "${libdir}/libGLESv1*.so*"
120FILES:libgles2-rogue = "${libdir}/libGLESv2*.so*"
121RDEPENDS:libgles1-rogue += "mesa-megadriver"
122RDEPENDS:libgles2-rogue += "mesa-megadriver"
123
124# vulkan specific shared objects and configs
125FILES:libvk-rogue = "${libdir}/libVK_IMG.so* ${datadir}/vulkan"
126RDEPENDS:libvk-rogue += "vulkan-loader wayland libdrm"
127
128# opencl specific shared objects and configs
129FILES:libopencl-rogue = "${libdir}/libPVROCL.so* ${sysconfdir}/OpenCL"
130RDEPENDS:libopencl-rogue += "opencl-icd-loader"
131RRECOMMENDS:libopencl-rogue += "libopencl-rogue-tools"
132FILES:libopencl-rogue-tools += "${bindir}/ocl*"
133DEBIAN_NOAUTONAME:libopencl-rogue-tools = "1"
134
135# optional tools and tests
136FILES:${PN}-tools = "${bindir}/"
137RDEPENDS:${PN}-tools = "python3-core libdrm ${PN}"
138INSANE_SKIP:${PN}-tools = "ldflags"
139
140# required firmware
141FILES:${PN}-firmware = "${base_libdir}/firmware/*"
142INSANE_SKIP:${PN}-firmware += "arch"
143
144RRECOMMENDS:${PN} += " \
145 ${PN}-tools \
146"
147
148INSANE_SKIP:${PN} += "already-stripped dev-so ldflags"
diff --git a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.1.bb b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.1.bb
index 45461419..80277aac 100644
--- a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.1.bb
+++ b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.1.bb
@@ -8,8 +8,8 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-6.1:"
8 8
9BRANCH = "ti-rt-linux-6.1.y" 9BRANCH = "ti-rt-linux-6.1.y"
10 10
11SRCREV = "01dbe4e64bacaa4c891c1997f2724c320698d61f" 11SRCREV = "96b0ebd82722d16e9ab646cd3a73080e6f790747"
12 12
13include ${@ 'recipes-kernel/linux/ti-extras-rt.inc' if d.getVar('TI_EXTRAS') else ''} 13include ${@ 'recipes-kernel/linux/ti-extras-rt.inc' if d.getVar('TI_EXTRAS') else ''}
14 14
15PV = "6.1.82+git" 15PV = "6.1.83+git"
diff --git a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.6.bb b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.6.bb
index e527e070..bccd856c 100644
--- a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.6.bb
+++ b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging-rt_6.6.bb
@@ -10,8 +10,8 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-6.6:"
10 10
11BRANCH = "ti-rt-linux-6.6.y" 11BRANCH = "ti-rt-linux-6.6.y"
12 12
13SRCREV = "82fd2ecb48b6bdb66081cb2f24b9bdfce218dea6" 13SRCREV = "7cceac93947da35755935827cd675925400d0102"
14 14
15include ${@ 'recipes-kernel/linux/ti-extras-rt.inc' if d.getVar('TI_EXTRAS') else ''} 15include ${@ 'recipes-kernel/linux/ti-extras-rt.inc' if d.getVar('TI_EXTRAS') else ''}
16 16
17PV = "6.6.23+git" 17PV = "6.6.25+git"
diff --git a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.1.bb b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.1.bb
index a58494df..51d0a6a5 100644
--- a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.1.bb
+++ b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.1.bb
@@ -23,8 +23,8 @@ S = "${WORKDIR}/git"
23 23
24BRANCH ?= "ti-linux-6.1.y" 24BRANCH ?= "ti-linux-6.1.y"
25 25
26SRCREV ?= "e44f83d2aa4366b3097307c5915d03696cf3e1b8" 26SRCREV ?= "c1c2f1971fbf6ddad93a8c94314fe8221e7aa6be"
27PV = "6.1.82+git" 27PV = "6.1.83+git"
28 28
29# Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a rebuild 29# Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a rebuild
30MACHINE_KERNEL_PR:append = "b" 30MACHINE_KERNEL_PR:append = "b"
diff --git a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb
index 4871f3cf..14fabb81 100644
--- a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb
+++ b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb
@@ -25,8 +25,8 @@ S = "${WORKDIR}/git"
25 25
26BRANCH ?= "ti-linux-6.6.y" 26BRANCH ?= "ti-linux-6.6.y"
27 27
28SRCREV ?= "02bfb99615b1c26a06d0af269e97401251a25c40" 28SRCREV ?= "f7f73d9d344c89081db499a2968d9033d7cac45c"
29PV = "6.6.23+git" 29PV = "6.6.25+git"
30 30
31# Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a rebuild 31# Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a rebuild
32MACHINE_KERNEL_PR:append = "b" 32MACHINE_KERNEL_PR:append = "b"