package/ti-sgx-{km, um, demos}: bump to latest TI version
authorLothar Felten <lothar.felten@gmail.com>
Fri, 15 Nov 2019 12:49:58 +0000 (09:49 -0300)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Mon, 30 Dec 2019 13:46:41 +0000 (14:46 +0100)
ti-sgx-um

- Bump the version that matches TI SDK 06.00.00.07 plus one pull request
  that updates the EGL/GLES headers required to build qt5base.
- Rewrite the init script, following the current template and using the
  pvrsrvctl command (pvrsrvinit does not exit anymore).
- Remove powervr.ini, no longer used in the TI SDK.
- Select and add a dependency on wayland, or else packages that link to
  libEGL (e.g. cairo) fail to link due to a missing libwayland-server.
- Update license file name.

ti-sgx-demos

- Bump the version that matches TI SDK 06.00.00.07 plus one pull request
  (matching ti-sgx-um).

ti-sgx-km

- Bump the version that matches TI SDK 06.00.00.07.
- Remove stray empty lines.
- Fix license file path.

All packages

- Use HTTP to clone Git repositories.
- Update URL in Config.in files, pointing to cgit and using HTTPS.
- Add hashes for all license files.

The buildroot package only supports the target am335x. Support for other
boards can be added by adding menu entries to select the correct target
product.

Signed-off-by: Lothar Felten <lothar.felten@gmail.com>
Signed-off-by: Carlos Santos <unixmania@gmail.com>
[Thomas:
 - add missing depends on BR2_PACKAGE_HAS_UDEV from Config.in,
   inherited from ti-sgx-libgbm]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
12 files changed:
package/ti-sgx-demos/Config.in
package/ti-sgx-demos/ti-sgx-demos.hash
package/ti-sgx-demos/ti-sgx-demos.mk
package/ti-sgx-km/Config.in
package/ti-sgx-km/ti-sgx-km.hash
package/ti-sgx-km/ti-sgx-km.mk
package/ti-sgx-um/0001-Makefile-do-not-install-init-script.patch [new file with mode: 0644]
package/ti-sgx-um/Config.in
package/ti-sgx-um/S80ti-sgx
package/ti-sgx-um/powervr.ini [deleted file]
package/ti-sgx-um/ti-sgx-um.hash
package/ti-sgx-um/ti-sgx-um.mk

index ea06fdb3ad0fb050739072407354aa60bb3c4680..ec7b8e6038f8d375e6fdaae6a5448f7a82626677 100644 (file)
@@ -6,4 +6,4 @@ config BR2_PACKAGE_TI_SGX_DEMOS
          Technologies are availabe as binaries only.  The binaries
          are compiled for the TI SGX implementation.
 
-         http://git.ti.com/graphics/img-pvr-sdk
+         https://git.ti.com/cgit/graphics/img-pvr-sdk
index 43acf9102adc2533f4e5e1ba64975ab3bdca9de0..31044e9e3f35a33a36cf8bb922c5c1f8b926b9bb 100644 (file)
@@ -1,2 +1,3 @@
 # Locally computed:
-sha256 9d1d4da2c2b35303e239f99eb4003b8b206078a682aa083d5fb831ee4197f3bf ti-sgx-demos-f24650bc8243b25c23d6a0a502ed79fc472ac424.tar.gz
+sha256 1324115da376bc8108923c596a3c4d8df24a968395461df11e0b715764a942d4  ti-sgx-demos-bb8b74cdd1323e76697b3eb2258f863b15fee287.tar.gz
+sha256 052741ea66a4a48e0ef8cab259d2dc136e7cf52fda694af8d1fe9bd28abe333b  LegalNotice.txt
index 80af79b983114170e981f77b1eaad8537912cda6..8599e88e9ba66e52b81e3503610207f734c6fb34 100644 (file)
@@ -4,14 +4,15 @@
 #
 ################################################################################
 
-# This correpsonds to SDK 02.00.00.00
-TI_SGX_DEMOS_VERSION = f24650bc8243b25c23d6a0a502ed79fc472ac424
-TI_SGX_DEMOS_SITE = git://git.ti.com/graphics/img-pvr-sdk.git
+# This correpsonds to SDK 06.00.00.07 plus one pull request
+TI_SGX_DEMOS_VERSION = bb8b74cdd1323e76697b3eb2258f863b15fee287
+TI_SGX_DEMOS_SITE = http://git.ti.com/git/graphics/img-pvr-sdk.git
+TI_SGX_DEMOS_SITE_METHOD = git
 TI_SGX_DEMOS_LICENSE = Imagination Technologies License Agreement
 TI_SGX_DEMOS_LICENSE_FILES = LegalNotice.txt
 
 define TI_SGX_DEMOS_INSTALL_TARGET_CMDS
-       cp -dpfr $(@D)/targetfs/Examples/Advanced/OGLES* \
+       cp -dpfr $(@D)/targetfs/arm/Examples/Advanced/Wayland/OGLES* \
                $(TARGET_DIR)/usr/bin/
 endef
 
index 348efdeb822f8be263724d1a83caf5cac429cfda..964889ff40a4d12861290f0d80bf714b9c8f6a1e 100644 (file)
@@ -8,46 +8,10 @@ config BR2_PACKAGE_TI_SGX_KM
        select BR2_LINUX_NEEDS_MODULES
        help
          Kernel modules for TI CPUs with SGX GPU.
-         This package supports AM335x, AM437x, AM4430 and AM5430.
+         This package supports AM335x only.
          It builds the kernel module and the user space binaries.
          For older CPUs or kernels use the ti-gfx package.
 
          Note: it needs a TI specific kernel to build properly.
 
-         http://git.ti.com/graphics/omap5-sgx-ddk-linux
-
-if BR2_PACKAGE_TI_SGX_KM
-
-choice
-       prompt "Target"
-       default BR2_PACKAGE_TI_SGX_KM_AM335X if BR2_PACKAGE_TI_SGX_AM335X # legacy
-       default BR2_PACKAGE_TI_SGX_KM_AM437X if BR2_PACKAGE_TI_SGX_AM437X # legacy
-       default BR2_PACKAGE_TI_SGX_KM_AM4430 if BR2_PACKAGE_TI_SGX_AM4430 # legacy
-       default BR2_PACKAGE_TI_SGX_KM_AM5430 if BR2_PACKAGE_TI_SGX_AM5430 # legacy
-       default BR2_PACKAGE_TI_SGX_KM_AM335X
-       help
-         Select the SOC for which you would like to install drivers.
-
-config BR2_PACKAGE_TI_SGX_KM_AM335X
-       bool "AM335x"
-       help
-         AM335x CPU
-
-config BR2_PACKAGE_TI_SGX_KM_AM437X
-       bool "AM437x"
-       help
-         AM437x CPU
-
-config BR2_PACKAGE_TI_SGX_KM_AM4430
-       bool "AM4430"
-       help
-         AM4430 CPU
-
-config BR2_PACKAGE_TI_SGX_KM_AM5430
-       bool "AM5430"
-       help
-         AM5430 CPU
-
-endchoice
-
-endif
+         https://git.ti.com/cgit/graphics/omap5-sgx-ddk-linux
index 7f7e0acd4d23a2e0e7a821b1d751111ee7a7c924..1fd07d74677d1f96c05cb0d4a54a7d716eb058d0 100644 (file)
@@ -1,2 +1,3 @@
 # Locally computed:
-sha256 47728ff8fc48827116cc042efa777a22a83dd4bd17c494e2a53b8c204ca59624 ti-sgx-km-2b7523d07a13ab704a24a7664749551f4a13ed32.tar.gz
+sha256 f1505f38f9e82f958673bb1755e65090bdbc513a68d41640561d9d491bc4b0e3  ti-sgx-km-4519ed3b83d1d72207ddc2874c7eb5e5a7f20d8d.tar.gz
+sha256 e9d660547691b2a9232850fd43aac16d40fd063023166fd27162020c30dc2bd4  eurasia_km/GPL-COPYING
index 0e1bc33902e511f2adb1cb79a367e983a5c64dc2..ae294c300a06f0b1c92f87d7785b97f39cee779a 100644 (file)
@@ -4,30 +4,23 @@
 #
 ################################################################################
 
-# This correpsonds to SDK 02.00.00.00
-TI_SGX_KM_VERSION = 2b7523d07a13ab704a24a7664749551f4a13ed32
-TI_SGX_KM_SITE = git://git.ti.com/graphics/omap5-sgx-ddk-linux.git
+# This correpsonds to SDK 06.00.00.07
+TI_SGX_KM_VERSION = 4519ed3b83d1d72207ddc2874c7eb5e5a7f20d8d
+TI_SGX_KM_SITE = http://git.ti.com/git/graphics/omap5-sgx-ddk-linux.git
+TI_SGX_KM_SITE_METHOD = git
 TI_SGX_KM_LICENSE = GPL-2.0
-TI_SGX_KM_LICENSE_FILES = GPL-COPYING
+TI_SGX_KM_LICENSE_FILES = eurasia_km/GPL-COPYING
 
 TI_SGX_KM_DEPENDENCIES = linux
 
 TI_SGX_KM_MAKE_OPTS = \
        $(LINUX_MAKE_FLAGS) \
        KERNELDIR=$(LINUX_DIR) \
-       PVR_NULLDRM=1
-
-ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM335X),y)
-TI_SGX_KM_PLATFORM_NAME = omap335x
-else ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM437X),y)
-TI_SGX_KM_PLATFORM_NAME = omap437x
-else ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM4430),y)
-TI_SGX_KM_PLATFORM_NAME = omap4430
-else ifeq ($(BR2_PACKAGE_TI_SGX_KM_5430),y)
-TI_SGX_KM_PLATFORM_NAME = omap5430
-endif
-
-TI_SGX_KM_SUBDIR = eurasia_km/eurasiacon/build/linux2/$(TI_SGX_KM_PLATFORM_NAME)_linux
+       TARGET_PRODUCT=$(TI_SGX_KM_PLATFORM_NAME)
+
+TI_SGX_KM_PLATFORM_NAME = ti335x
+
+TI_SGX_KM_SUBDIR = eurasia_km/eurasiacon/build/linux2/omap_linux
 
 define TI_SGX_KM_BUILD_CMDS
        $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \
diff --git a/package/ti-sgx-um/0001-Makefile-do-not-install-init-script.patch b/package/ti-sgx-um/0001-Makefile-do-not-install-init-script.patch
new file mode 100644 (file)
index 0000000..7509d4e
--- /dev/null
@@ -0,0 +1,39 @@
+From afb92e4b1cd05388f519868215d0e8a4672ebb0e Mon Sep 17 00:00:00 2001
+From: Carlos Santos <unixmania@gmail.com>
+Date: Sun, 10 Nov 2019 22:44:44 -0300
+Subject: [PATCH] Makefile: do not install init script
+
+Use a custom one, made for Buildroot, instead.
+
+Signed-off-by: Carlos Santos <unixmania@gmail.com>
+---
+ Makefile | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 649111a..19016f3 100755
+--- a/Makefile
++++ b/Makefile
+@@ -3,7 +3,6 @@ TARGET_PRODUCT ?= jacinto6evm
+ SRCDIR = ./targetfs/${TARGET_PRODUCT}
+ prefix = /usr
+-etcdir = /etc
+ bindir = ${prefix}/bin
+ incdir = ${prefix}/include
+ libdir = ${prefix}/lib
+@@ -11,11 +10,9 @@ libdir = ${prefix}/lib
+ all:
+ install: 
+-      mkdir -p ${DESTDIR}${etcdir}
+       mkdir -p ${DESTDIR}${bindir}
+       mkdir -p ${DESTDIR}${incdir}
+       mkdir -p ${DESTDIR}${libdir}
+-      cp -ar ${SRCDIR}/etc/* ${DESTDIR}${etcdir}
+       cp -ar ${SRCDIR}/bin/* ${DESTDIR}${bindir}
+       cp -ar ${SRCDIR}/include/* ${DESTDIR}${incdir}
+       cp -ar ${SRCDIR}/lib/* ${DESTDIR}${libdir}
+-- 
+2.18.1
+
index 8e1e4fb27011cdb8b4ee138aa2c6c99489193d8d..ee87d46aa4d33a403aa0e7d56c0a9ac029fa6b7b 100644 (file)
@@ -1,13 +1,15 @@
 comment "ti-sgx-um needs the ti-sgx-km driver"
        depends on !BR2_PACKAGE_TI_SGX_KM
 
-comment "ti-sgx-um needs a glibc toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_TOOLCHAIN_HAS_THREADS
+comment "ti-sgx-um needs udev and a glibc toolchain w/ threads"
+       depends on !BR2_PACKAGE_HAS_UDEV || !BR2_TOOLCHAIN_USES_GLIBC \
+               || !BR2_TOOLCHAIN_HAS_THREADS
 
 config BR2_PACKAGE_TI_SGX_UM
        bool "ti-sgx-um"
        depends on BR2_PACKAGE_TI_SGX_KM
        depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm
+       depends on BR2_PACKAGE_HAS_UDEV # ti-sgx-libgbm
        # pre-built binaries
        depends on BR2_TOOLCHAIN_USES_GLIBC
        select BR2_PACKAGE_LIBDRM
@@ -15,12 +17,15 @@ config BR2_PACKAGE_TI_SGX_UM
        select BR2_PACKAGE_HAS_LIBEGL
        select BR2_PACKAGE_HAS_LIBGLES
        select BR2_PACKAGE_HAS_POWERVR
+       select BR2_PACKAGE_TI_SGX_LIBGBM
+       select BR2_PACKAGE_LIBFFI
+       select BR2_PACKAGE_WAYLAND
        help
          Graphics libraries for TI CPUs with SGX5xx GPU.
          This package supports AM335x, AM437x, AM4430 and AM5430.
          For older CPUs or kernels use the ti-gfx package.
 
-         http://git.ti.com/graphics/omap5-sgx-ddk-um-linux
+         https://git.ti.com/cgit/graphics/omap5-sgx-ddk-um-linux
 
 if BR2_PACKAGE_TI_SGX_UM
 
index 8cae52fd6e2014a6038394abdd3a38f15cb275d7..2630a0576aa373881b0d6429049053fe303f1231 100644 (file)
@@ -1,14 +1,56 @@
 #!/bin/sh
+
+pvrsrvkm_ko="/lib/modules/$(/bin/uname -r)/extra/pvrsrvkm.ko"
+
+pvr_loaded() {
+       /sbin/lsmod | /bin/grep -q '^\<pvrsrvkm\>'
+}
+
+pvr_load() {
+       /sbin/insmod "$pvrsrvkm_ko" > /dev/null 2>&1
+}
+
+start() {
+       printf 'Loading pvrsrvkm module: '
+       pvr_loaded || pvr_load
+       status=$?
+       if [ "$status" -eq 0 ]; then
+               printf 'Starting PowerVR services: '
+               /usr/bin/pvrsrvctl --start --no-module > /dev/null 2>&1
+               status=$?
+       fi
+       if [ "$status" -eq 0 ]; then
+               echo "OK"
+       else
+               echo "FAIL"
+       fi
+       return "$status"
+}
+
+stop() {
+       printf 'Starting PowerVR services: '
+       /usr/bin/pvrsrvctl --stop > /dev/null 2>&1
+       status=$?
+       if [ "$status" -eq 0 ]; then
+               echo "OK"
+       else
+               echo "FAIL"
+       fi
+       return "$status"
+}
+
+restart() {
+       stop
+       sleep 1
+       start
+}
+
 case "$1" in
-  start)
-       printf "Initializing SGX graphics driver "
-       /usr/bin/pvrsrvinit
-       [ $? = 0 ] && echo "OK" || echo "FAIL"
-  ;;
-  stop)
-  ;;
-  *)
-    echo "Usage: $0 {start|stop}"
-    exit 1
-  ;;
+       start|stop|restart)
+               "$1";;
+       reload)
+               restart;;
+       *)
+               echo "Usage: $0 {start|stop|restart|reload}"
+               exit 1
 esac
diff --git a/package/ti-sgx-um/powervr.ini b/package/ti-sgx-um/powervr.ini
deleted file mode 100644 (file)
index fc92d45..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-[default]
-#defaul library without double buffering:
-WindowSystem=libpvrDRMWSEGL_FRONT.so
-#alternative library, slower but with double buffering
-#WindowSystem=libpvrDRMWSEGL.so
-DisableHWTQTextureUpload=1
index a6a0566469d919933a0bdf3c06125b012d7e13e1..ff54ecbd6dcd9fcaee38ef02b73c40e2a5d2fe5f 100644 (file)
@@ -1,2 +1,3 @@
 # Locally computed:
-sha256 c17f23d255cff8fe72fc3f5cae3d7550e387af07d036954b4f08e573379406d0 ti-sgx-um-e15f1543bab4de9e8927a2c4934addf3fd16ffcb.tar.gz
+sha256 cb1373a6335af3d3741c6b11cf217afc8bdbe182642229df359c38e3ccfc5866  ti-sgx-um-2a2e5bb090ced870d73ed4edbc54793e952cc6d8.tar.gz
+sha256 368c306246c9130b5c90a6fef2f80085f70b6225b3f552654a288c0f39fc1531  TI-Linux-Graphics-DDK-UM-Manifest.doc
index d5c50a0166931f23dda4f2bee845f3d17baa1135..0e26d057c12103366f5161da9f27a4b83c03efb6 100644 (file)
@@ -4,28 +4,26 @@
 #
 ################################################################################
 
-# This correpsonds to SDK 02.00.00.00
-TI_SGX_UM_VERSION = e15f1543bab4de9e8927a2c4934addf3fd16ffcb
-TI_SGX_UM_SITE = git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git
+# This correpsonds to SDK 06.00.00.07 plus one pull request
+TI_SGX_UM_VERSION = 2a2e5bb090ced870d73ed4edbc54793e952cc6d8
+TI_SGX_UM_SITE = http://git.ti.com/git/graphics/omap5-sgx-ddk-um-linux.git
+TI_SGX_UM_SITE_METHOD = git
 TI_SGX_UM_LICENSE = TI TSPA License
-TI_SGX_UM_LICENSE_FILES = OMAP5-Linux-Graphics-DDK-UM-Manifest.doc
+TI_SGX_UM_LICENSE_FILES = TI-Linux-Graphics-DDK-UM-Manifest.doc
 TI_SGX_UM_INSTALL_STAGING = YES
+TI_SGX_UM_TARGET=ti335x
 
 # ti-sgx-um is a egl/gles provider only if libdrm is installed
-TI_SGX_UM_DEPENDENCIES = libdrm
+TI_SGX_UM_DEPENDENCIES = libdrm wayland
 
 define TI_SGX_UM_INSTALL_STAGING_CMDS
-       $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(STAGING_DIR) install
+       $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(STAGING_DIR) \
+               TARGET_PRODUCT=$(TI_SGX_UM_TARGET) install
 endef
 
 define TI_SGX_UM_INSTALL_TARGET_CMDS
-       $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(TARGET_DIR) install
-endef
-
-# libs use the following file for configuration
-define TI_SGX_UM_INSTALL_CONF
-       $(INSTALL) -D -m 0644 package/ti-sgx-um/powervr.ini \
-               $(TARGET_DIR)/etc/powervr.ini
+       $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(TARGET_DIR) \
+               TARGET_PRODUCT=$(TI_SGX_UM_TARGET) install
 endef
 
 TI_SGX_UM_POST_INSTALL_TARGET_HOOKS += TI_SGX_UM_INSTALL_CONF