Message ID | 1527175458-16091-1-git-send-email-tolvupostur@gmail.com |
---|---|
State | Changes Requested |
Headers | show |
Series | [1/1] ti-sgx-*: bump from SDK 02.00 to SDK 04.00 | expand |
Hi, Just to explain this one. The ti-sgx-* drivers are very old, but nothing is using them except beaglebone_qt5_defconfig. I bumped beaglebone_qt5_defconfig to the same level as beaglebone_defconfig (the SDK 4.00 version in http://www.ti.com/tool/PROCESSOR-SDK-AM335X) The ti-sdx-* drivers have been bumped to the same SDK 4.00 version. The ti-sdx-um has a dependency on a new package ti-sdx-libgdm, which in turn depends on wayland. This again gives QT a valid EGL backend for beaglebone_qt5. Let me know if this should be done differently. Best regards, Einar Jón On 24 May 2018 at 17:24, Einar Jon Gunnarsson <tolvupostur@gmail.com> wrote: > Added new package ti-sgx-libgbm > Fixed build and added license file hashes. > > Bumped beaglebone_qt5 to same level as beaglebone > > Signed-off-by: Einar Jon Gunnarsson <tolvupostur@gmail.com> > --- > ...nux-4.1-sgx.fragment => linux-4.9-sgx.fragment} | 0 > configs/beaglebone_qt5_defconfig | 14 +++++------ > package/Config.in | 1 + > package/ti-sgx-demos/ti-sgx-demos.hash | 3 ++- > package/ti-sgx-demos/ti-sgx-demos.mk | 20 ++++++++++++--- > package/ti-sgx-km/Config.in | 17 +++++-------- > package/ti-sgx-km/ti-sgx-km.hash | 3 ++- > package/ti-sgx-km/ti-sgx-km.mk | 22 ++++++++-------- > package/ti-sgx-libgbm/Config.in | 9 +++++++ > package/ti-sgx-libgbm/ti-sgx-libgbm.hash | 3 +++ > package/ti-sgx-libgbm/ti-sgx-libgbm.mk | 17 +++++++++++++ > package/ti-sgx-um/Config.in | 3 ++- > package/ti-sgx-um/S80ti-sgx | 14 ----------- > package/ti-sgx-um/powervr.ini | 4 +-- > package/ti-sgx-um/ti-sgx-um.hash | 3 ++- > package/ti-sgx-um/ti-sgx-um.mk | 29 ++++++++++++++++------ > 16 files changed, 100 insertions(+), 62 deletions(-) > rename board/beaglebone/{linux-4.1-sgx.fragment => linux-4.9-sgx.fragment} (100%) > create mode 100644 package/ti-sgx-libgbm/Config.in > create mode 100644 package/ti-sgx-libgbm/ti-sgx-libgbm.hash > create mode 100644 package/ti-sgx-libgbm/ti-sgx-libgbm.mk > delete mode 100644 package/ti-sgx-um/S80ti-sgx > > diff --git a/board/beaglebone/linux-4.1-sgx.fragment b/board/beaglebone/linux-4.9-sgx.fragment > similarity index 100% > rename from board/beaglebone/linux-4.1-sgx.fragment > rename to board/beaglebone/linux-4.9-sgx.fragment > diff --git a/configs/beaglebone_qt5_defconfig b/configs/beaglebone_qt5_defconfig > index fb61bf5..9af4b5a 100644 > --- a/configs/beaglebone_qt5_defconfig > +++ b/configs/beaglebone_qt5_defconfig > @@ -1,9 +1,8 @@ > BR2_arm=y > BR2_cortex_a8=y > BR2_GLOBAL_PATCH_DIR="board/beaglebone/patches" > -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y > BR2_TOOLCHAIN_BUILDROOT_GLIBC=y > -BR2_GCC_VERSION_5_X=y > +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y > BR2_TOOLCHAIN_BUILDROOT_CXX=y > BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y > BR2_TARGET_GENERIC_GETTY_PORT="ttyO0" > @@ -11,16 +10,17 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/beaglebone/post-image.sh" > BR2_LINUX_KERNEL=y > BR2_LINUX_KERNEL_CUSTOM_GIT=y > BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.ti.com/processor-sdk/processor-sdk-linux.git" > -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="52c4aa7cdb93d61f8008f380135beaf7b8fa6593" > +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="a75d8e93056181d512f6c818e8627bd4554aaf92" > BR2_LINUX_KERNEL_DEFCONFIG="omap2plus" > -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/beaglebone/linux-4.1-sgx.fragment" > +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/beaglebone/linux-4.9-sgx.fragment" > BR2_LINUX_KERNEL_DTS_SUPPORT=y > -BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-evmsk" > +BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk" > BR2_PACKAGE_FBV=y > BR2_PACKAGE_QT5=y > BR2_PACKAGE_QT5BASE_EXAMPLES=y > BR2_PACKAGE_QT5BASE_EGLFS=y > BR2_PACKAGE_QT5QUICKCONTROLS=y > +BR2_PACKAGE_QT5WAYLAND=y > BR2_PACKAGE_TI_SGX_DEMOS=y > BR2_PACKAGE_TI_SGX_KM=y > BR2_PACKAGE_TI_SGX_UM=y > @@ -30,13 +30,11 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="124M" > BR2_TARGET_UBOOT=y > BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y > BR2_TARGET_UBOOT_CUSTOM_VERSION=y > -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.09.01" > +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.01" > BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am335x_evm" > BR2_TARGET_UBOOT_NEEDS_DTC=y > # BR2_TARGET_UBOOT_FORMAT_BIN is not set > BR2_TARGET_UBOOT_FORMAT_IMG=y > -BR2_TARGET_UBOOT_FORMAT_CUSTOM=y > -BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="spl/u-boot-spl.bin" > BR2_TARGET_UBOOT_SPL=y > BR2_TARGET_UBOOT_SPL_NAME="MLO" > BR2_PACKAGE_HOST_DOSFSTOOLS=y > diff --git a/package/Config.in b/package/Config.in > index ecee493..dae396f 100644 > --- a/package/Config.in > +++ b/package/Config.in > @@ -518,6 +518,7 @@ endmenu > source "package/ti-sgx-demos/Config.in" > source "package/ti-sgx-km/Config.in" > source "package/ti-sgx-um/Config.in" > + source "package/ti-sgx-libgbm/Config.in" > source "package/ti-uim/Config.in" > source "package/ti-utils/Config.in" > source "package/triggerhappy/Config.in" > diff --git a/package/ti-sgx-demos/ti-sgx-demos.hash b/package/ti-sgx-demos/ti-sgx-demos.hash > index 43acf91..2b8be48 100644 > --- a/package/ti-sgx-demos/ti-sgx-demos.hash > +++ b/package/ti-sgx-demos/ti-sgx-demos.hash > @@ -1,2 +1,3 @@ > # Locally computed: > -sha256 9d1d4da2c2b35303e239f99eb4003b8b206078a682aa083d5fb831ee4197f3bf ti-sgx-demos-f24650bc8243b25c23d6a0a502ed79fc472ac424.tar.gz > +sha256 32e6887fbed83bd937bf9761ee51adc5253c22161d7d6b720713cecaf0c212fc ti-sgx-demos-f09e59b2467cb0a5b88b6329fe35527cf65ed6e9.tar.gz > +sha256 052741ea66a4a48e0ef8cab259d2dc136e7cf52fda694af8d1fe9bd28abe333b LegalNotice.txt > diff --git a/package/ti-sgx-demos/ti-sgx-demos.mk b/package/ti-sgx-demos/ti-sgx-demos.mk > index 80af79b..c5e1555 100644 > --- a/package/ti-sgx-demos/ti-sgx-demos.mk > +++ b/package/ti-sgx-demos/ti-sgx-demos.mk > @@ -4,15 +4,27 @@ > # > ################################################################################ > > -# This correpsonds to SDK 02.00.00.00 > -TI_SGX_DEMOS_VERSION = f24650bc8243b25c23d6a0a502ed79fc472ac424 > +# This corresponds to SDK 04.00.00.00 > +TI_SGX_DEMOS_VERSION = f09e59b2467cb0a5b88b6329fe35527cf65ed6e9 > TI_SGX_DEMOS_SITE = git://git.ti.com/graphics/img-pvr-sdk.git > TI_SGX_DEMOS_LICENSE = Imagination Technologies License Agreement > TI_SGX_DEMOS_LICENSE_FILES = LegalNotice.txt > > +# Wayland demos seem to need at least X11 > +TI_SGX_DEMOS_SUBDIR = NullWS > + > +# The full demo folder is +100MB, so limit to 5 like in SDK 02.00.00.00 > +TI_SGX_DEMOS_BINARIES = OGLES2ChameleonMan \ > + OGLES2FilmTV \ > + OGLES2MagicLantern \ > + OGLES2ParticleSystem \ > + OGLES2PhantomMask > + > define TI_SGX_DEMOS_INSTALL_TARGET_CMDS > - cp -dpfr $(@D)/targetfs/Examples/Advanced/OGLES* \ > - $(TARGET_DIR)/usr/bin/ > + for i in $(TI_SGX_DEMOS_BINARIES) ; do \ > + cp -dpfr $(@D)/targetfs/Examples/Advanced/$(TI_SGX_DEMOS_SUBDIR)/$$i \ > + $(TARGET_DIR)/usr/bin/ ; \ > + done > endef > > $(eval $(generic-package)) > diff --git a/package/ti-sgx-km/Config.in b/package/ti-sgx-km/Config.in > index db3d3f9..b2a01db 100644 > --- a/package/ti-sgx-km/Config.in > +++ b/package/ti-sgx-km/Config.in > @@ -8,7 +8,7 @@ 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 AM33xx, AM43xx and AM57xx. > It builds the kernel module and the user space binaries. > For older CPUs or kernels use the ti-gfx package. > > @@ -27,22 +27,17 @@ choice > config BR2_PACKAGE_TI_SGX_KM_AM335X > bool "AM335x" > help > - AM335x CPU > + All AM33xx derivatives > > config BR2_PACKAGE_TI_SGX_KM_AM437X > bool "AM437x" > help > - AM437x CPU > + All AM43xx derivatives > > -config BR2_PACKAGE_TI_SGX_KM_AM4430 > - bool "AM4430" > +config BR2_PACKAGE_TI_SGX_KM_AM57x > + bool "AM57x" > help > - AM4430 CPU > - > -config BR2_PACKAGE_TI_SGX_KM_AM5430 > - bool "AM5430" > - help > - AM5430 CPU > + All DRA7xx / AM57xx derivatives > > endchoice > > diff --git a/package/ti-sgx-km/ti-sgx-km.hash b/package/ti-sgx-km/ti-sgx-km.hash > index 7f7e0ac..f02ddce 100644 > --- a/package/ti-sgx-km/ti-sgx-km.hash > +++ b/package/ti-sgx-km/ti-sgx-km.hash > @@ -1,2 +1,3 @@ > # Locally computed: > -sha256 47728ff8fc48827116cc042efa777a22a83dd4bd17c494e2a53b8c204ca59624 ti-sgx-km-2b7523d07a13ab704a24a7664749551f4a13ed32.tar.gz > +sha256 c9023eb01d611be71bada4903645b60dea4529b8276a7827db48fbd2bae27583 ti-sgx-km-0086977380d3320d70a3abc78b95fa0641427073.tar.gz > +sha256 e9d660547691b2a9232850fd43aac16d40fd063023166fd27162020c30dc2bd4 eurasia_km/GPL-COPYING > diff --git a/package/ti-sgx-km/ti-sgx-km.mk b/package/ti-sgx-km/ti-sgx-km.mk > index 0e1bc33..ed827ef 100644 > --- a/package/ti-sgx-km/ti-sgx-km.mk > +++ b/package/ti-sgx-km/ti-sgx-km.mk > @@ -4,11 +4,11 @@ > # > ################################################################################ > > -# This correpsonds to SDK 02.00.00.00 > -TI_SGX_KM_VERSION = 2b7523d07a13ab704a24a7664749551f4a13ed32 > +# This corresponds to SDK 04.00.00.00 > +TI_SGX_KM_VERSION = 0086977380d3320d70a3abc78b95fa0641427073 > TI_SGX_KM_SITE = git://git.ti.com/graphics/omap5-sgx-ddk-linux.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 > > @@ -17,25 +17,23 @@ TI_SGX_KM_MAKE_OPTS = \ > KERNELDIR=$(LINUX_DIR) \ > PVR_NULLDRM=1 > > +TI_SGX_KM_PLATFORM_NAME = omap > + > 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 > +TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti335x > +else ifeq ($(BR2_PACKAGE_TI_KM_SGX_AM437X),y) > +TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti437x > endif > > TI_SGX_KM_SUBDIR = eurasia_km/eurasiacon/build/linux2/$(TI_SGX_KM_PLATFORM_NAME)_linux > > define TI_SGX_KM_BUILD_CMDS > - $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ > + $(TI_SGX_KM_MAKE_ENV) $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ > -C $(@D)/$(TI_SGX_KM_SUBDIR) > endef > > define TI_SGX_KM_INSTALL_TARGET_CMDS > - $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ > + $(TI_SGX_KM_MAKE_ENV) $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ > DISCIMAGE=$(TARGET_DIR) \ > kbuild_install -C $(@D)/$(TI_SGX_KM_SUBDIR) > endef > diff --git a/package/ti-sgx-libgbm/Config.in b/package/ti-sgx-libgbm/Config.in > new file mode 100644 > index 0000000..07536d9 > --- /dev/null > +++ b/package/ti-sgx-libgbm/Config.in > @@ -0,0 +1,9 @@ > +config BR2_PACKAGE_TI_SGX_LIBGBM > + bool "ti-sgx-libgbm" > + depends on BR2_PACKAGE_TI_SGX_KM > + select BR2_PACKAGE_WAYLAND > + help > + This package provides libgbm.so.2 for the > + TI SGX implementation > + > + https://git.ti.com/glsdk/libgbm > diff --git a/package/ti-sgx-libgbm/ti-sgx-libgbm.hash b/package/ti-sgx-libgbm/ti-sgx-libgbm.hash > new file mode 100644 > index 0000000..ffcf134 > --- /dev/null > +++ b/package/ti-sgx-libgbm/ti-sgx-libgbm.hash > @@ -0,0 +1,3 @@ > +# locally computed: > +sha256 758872d87137a919274bdbb9b9c811e2f309ab0338e58a4c67df6db7b2a6c6f5 ti-sgx-libgbm-43cc786d0e5b8274fa93048c7f3bb8d6b62522db.tar.gz > +sha256 dd6e66175f7f4ffe27f5f4dcc35005e07e6ef3aae2ec6fafaf52a53adb450cc1 debian/copyright > diff --git a/package/ti-sgx-libgbm/ti-sgx-libgbm.mk b/package/ti-sgx-libgbm/ti-sgx-libgbm.mk > new file mode 100644 > index 0000000..29f6866 > --- /dev/null > +++ b/package/ti-sgx-libgbm/ti-sgx-libgbm.mk > @@ -0,0 +1,17 @@ > +################################################################################ > +# > +# ti-sgx-libgbm > +# > +################################################################################ > + > +# This is the current "next" branch, which corresponds to SDK 04.00.00.00 > +TI_SGX_LIBGBM_VERSION = 43cc786d0e5b8274fa93048c7f3bb8d6b62522db > +TI_SGX_LIBGBM_SITE = git://git.ti.com/glsdk/libgbm.git > +TI_SGX_LIBGBM_INSTALL_STAGING = YES > +TI_SGX_LIBGBM_AUTORECONF = YES > +TI_SGX_LIBGBM_LICENSE = MIT > +TI_SGX_LIBGBM_LICENSE_FILES = debian/copyright > + > +TI_SGX_LIBGBM_DEPENDENCIES = wayland > + > +$(eval $(autotools-package)) > diff --git a/package/ti-sgx-um/Config.in b/package/ti-sgx-um/Config.in > index 8e1e4fb..e27e500 100644 > --- a/package/ti-sgx-um/Config.in > +++ b/package/ti-sgx-um/Config.in > @@ -15,9 +15,10 @@ 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 > help > Graphics libraries for TI CPUs with SGX5xx GPU. > - This package supports AM335x, AM437x, AM4430 and AM5430. > + This package supports AM33xx, AM43xx and AM54xx. > For older CPUs or kernels use the ti-gfx package. > > http://git.ti.com/graphics/omap5-sgx-ddk-um-linux > diff --git a/package/ti-sgx-um/S80ti-sgx b/package/ti-sgx-um/S80ti-sgx > deleted file mode 100644 > index 8cae52f..0000000 > --- a/package/ti-sgx-um/S80ti-sgx > +++ /dev/null > @@ -1,14 +0,0 @@ > -#!/bin/sh > -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 > - ;; > -esac > diff --git a/package/ti-sgx-um/powervr.ini b/package/ti-sgx-um/powervr.ini > index fc92d45..229d143 100644 > --- a/package/ti-sgx-um/powervr.ini > +++ b/package/ti-sgx-um/powervr.ini > @@ -1,6 +1,6 @@ > [default] > -#defaul library without double buffering: > -WindowSystem=libpvrDRMWSEGL_FRONT.so > +#default library: > +#WindowSystem=libpvrws_WAYLAND.so > #alternative library, slower but with double buffering > #WindowSystem=libpvrDRMWSEGL.so > DisableHWTQTextureUpload=1 > diff --git a/package/ti-sgx-um/ti-sgx-um.hash b/package/ti-sgx-um/ti-sgx-um.hash > index a6a0566..e7bae03 100644 > --- a/package/ti-sgx-um/ti-sgx-um.hash > +++ b/package/ti-sgx-um/ti-sgx-um.hash > @@ -1,2 +1,3 @@ > # Locally computed: > -sha256 c17f23d255cff8fe72fc3f5cae3d7550e387af07d036954b4f08e573379406d0 ti-sgx-um-e15f1543bab4de9e8927a2c4934addf3fd16ffcb.tar.gz > +sha256 c6d9cfc4806d44f8dd73abe52ca0a292d004e68886ba1657ca5ac39ec1ab0025 ti-sgx-um-358fe42d34a7570896e5d1639869da564ddd0484.tar.gz > +sha256 733aedfdd192ef955f775f820729ac8ee5d26f7cfefd4c6bcbae80e68b7062dc TI-Linux-Graphics-DDK-UM-Manifest.doc > diff --git a/package/ti-sgx-um/ti-sgx-um.mk b/package/ti-sgx-um/ti-sgx-um.mk > index d5c50a0..e89755e 100644 > --- a/package/ti-sgx-um/ti-sgx-um.mk > +++ b/package/ti-sgx-um/ti-sgx-um.mk > @@ -4,22 +4,30 @@ > # > ################################################################################ > > -# This correpsonds to SDK 02.00.00.00 > -TI_SGX_UM_VERSION = e15f1543bab4de9e8927a2c4934addf3fd16ffcb > +# This correpsonds to SDK 04.00.00.00 > +TI_SGX_UM_VERSION = 358fe42d34a7570896e5d1639869da564ddd0484 > TI_SGX_UM_SITE = git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.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 is a egl/gles provider only if libdrm is installed > TI_SGX_UM_DEPENDENCIES = libdrm > +# ti-sgx-libgbm must be built before QT to find EGL > +TI_SGX_UM_DEPENDENCIES += ti-sgx-libgbm > + > +ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM335X),y) > +TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti335x > +else ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM437X),y) > +TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti437x > +endif > > define TI_SGX_UM_INSTALL_STAGING_CMDS > - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(STAGING_DIR) install > + $(TI_SGX_UM_MAKE_ENV) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(STAGING_DIR) install > endef > > define TI_SGX_UM_INSTALL_TARGET_CMDS > - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(TARGET_DIR) install > + $(TI_SGX_UM_MAKE_ENV) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(TARGET_DIR) install > endef > > # libs use the following file for configuration > @@ -28,11 +36,18 @@ define TI_SGX_UM_INSTALL_CONF > $(TARGET_DIR)/etc/powervr.ini > endef > > -TI_SGX_UM_POST_INSTALL_TARGET_HOOKS += TI_SGX_UM_INSTALL_CONF > +# Many binaries depend on libGLESv2.so.1, but libGLESv2.so.2 is installed > +define TI_SGX_UM_INSTALL_FIX_MESA_STYLE_SYMLINK > + cp -dpf $(TARGET_DIR)/usr/lib/libGLESv2.so.2 $(TARGET_DIR)/usr/lib/libGLESv2.so.1 > +endef > + > +TI_SGX_UM_POST_INSTALL_TARGET_HOOKS += TI_SGX_UM_INSTALL_CONF TI_SGX_UM_INSTALL_FIX_MESA_STYLE_SYMLINK > > +# sysV file has the wrong name. Copy it from staging and delete the installed one > define TI_SGX_UM_INSTALL_INIT_SYSV > - $(INSTALL) -D -m 0755 package/ti-sgx-um/S80ti-sgx \ > + $(INSTALL) -D -m 0755 $(STAGING_DIR)/etc/init.d/rc.pvr \ > $(TARGET_DIR)/etc/init.d/S80ti-sgx > + $(RM) $(TARGET_DIR)/etc/init.d/rc.pvr > endef > > $(eval $(generic-package)) > -- > 2.7.4 >
Hi Einar, Le 24/05/2018 à 17:38, Einar Jón a écrit : > Hi, > > Just to explain this one. The ti-sgx-* drivers are very old, but > nothing is using them except beaglebone_qt5_defconfig. > I bumped beaglebone_qt5_defconfig to the same level as > beaglebone_defconfig (the SDK 4.00 version in > http://www.ti.com/tool/PROCESSOR-SDK-AM335X) > > The ti-sdx-* drivers have been bumped to the same SDK 4.00 version. > The ti-sdx-um has a dependency on a new package ti-sdx-libgdm, which > in turn depends on wayland. > > This again gives QT a valid EGL backend for beaglebone_qt5. > > Let me know if this should be done differently. Thanks for this patch. We will need it soon in order to remove the gcc 5 dependency in beaglebone_qt5 defconfig. I'm not sure if we must bump all packages related to the TI SDK or bump all packages one by one to ease the review. This patch add a new ti-sgx-libgbm package, it should be added in a separate patch. Also, BR2_PACKAGE_TI_SGX_KM_AM4430 and BR2_PACKAGE_TI_SGX_KM_AM5430 symbols are removed. It must be handled in Config.in.legacy. Why S80ti-sgx is removed ? Best regards, Romain > > Best regards, > Einar Jón > > On 24 May 2018 at 17:24, Einar Jon Gunnarsson <tolvupostur@gmail.com> wrote: >> Added new package ti-sgx-libgbm >> Fixed build and added license file hashes. >> >> Bumped beaglebone_qt5 to same level as beaglebone >> >> Signed-off-by: Einar Jon Gunnarsson <tolvupostur@gmail.com> >> --- >> ...nux-4.1-sgx.fragment => linux-4.9-sgx.fragment} | 0 >> configs/beaglebone_qt5_defconfig | 14 +++++------ >> package/Config.in | 1 + >> package/ti-sgx-demos/ti-sgx-demos.hash | 3 ++- >> package/ti-sgx-demos/ti-sgx-demos.mk | 20 ++++++++++++--- >> package/ti-sgx-km/Config.in | 17 +++++-------- >> package/ti-sgx-km/ti-sgx-km.hash | 3 ++- >> package/ti-sgx-km/ti-sgx-km.mk | 22 ++++++++-------- >> package/ti-sgx-libgbm/Config.in | 9 +++++++ >> package/ti-sgx-libgbm/ti-sgx-libgbm.hash | 3 +++ >> package/ti-sgx-libgbm/ti-sgx-libgbm.mk | 17 +++++++++++++ >> package/ti-sgx-um/Config.in | 3 ++- >> package/ti-sgx-um/S80ti-sgx | 14 ----------- >> package/ti-sgx-um/powervr.ini | 4 +-- >> package/ti-sgx-um/ti-sgx-um.hash | 3 ++- >> package/ti-sgx-um/ti-sgx-um.mk | 29 ++++++++++++++++------
Hi. See inline. I’m on holidays until Wednesday with only mobile devices, so if someone else wants to step in, please do. On Sunday, 27 May 2018, Romain Naour <romain.naour@gmail.com> wrote: > Hi Einar, > > Le 24/05/2018 à 17:38, Einar Jón a écrit : > > Hi, > > > > Just to explain this one. The ti-sgx-* drivers are very old, but > > nothing is using them except beaglebone_qt5_defconfig. > > I bumped beaglebone_qt5_defconfig to the same level as > > beaglebone_defconfig (the SDK 4.00 version in > > http://www.ti.com/tool/PROCESSOR-SDK-AM335X) > > > > The ti-sdx-* drivers have been bumped to the same SDK 4.00 version. > > The ti-sdx-um has a dependency on a new package ti-sdx-libgdm, which > > in turn depends on wayland. > > > > This again gives QT a valid EGL backend for beaglebone_qt5. > > > > Let me know if this should be done differently. > > Thanks for this patch. We will need it soon in order to remove the gcc 5 > dependency in beaglebone_qt5 defconfig. > > I'm not sure if we must bump all packages related to the TI SDK or bump all > packages one by one to ease the review. I did this in a single commit since any split (except a standalone ti-sgx-libgbm) would be a commit with a broken build. The places I’ve worked for for the last 5 years hate those. > > This patch add a new ti-sgx-libgbm package, it should be added in a > separate patch. Sounds reasonable. > > Also, BR2_PACKAGE_TI_SGX_KM_AM4430 and BR2_PACKAGE_TI_SGX_KM_AM5430 > symbols are > removed. It must be handled in Config.in.legacy. True. I didn’t think of that since none of the defconfigs use it. I can see that now there is a legacy patch for the _KM addition. Also, the new _KM addition to these keywords makes these parameters a bit weird, because it is used in both ti-sgx-km and ti-sgx-um. Maybe 3 _UM bools should be made that are just set to the same value as the _KM ones. Like bool BR2_PACKAGE_TI_SGX_UM_AM3350 default BR2_PACKAGE_TI_SGX_KM_AM3350 > Why S80ti-sgx is removed ? > Because it is both unneeded and obsolete. The current repo of ti-sgx-um has 3 subfolders, one for each BR2_PACKAGE_TI_SGX_KM_AMxxx option. Each one has a sysV init file (called rc-???) that is very different from the one I deleted. Now I simply rename rc-??? to S80ti-sgx in the post-hook that previously copied it from package/ti-sgx-um. It actually is a very ugly $(INSTALL) && $(RM), since it seems weird to “mv” files on target/. And I copy it from staging instead of target to be sure that it always exists - but now I realize that I did that because I was running the hook twice (as post_install and sysv_init). Best regards, > Romain > > > > > Best regards, > > Einar Jón > > > > On 24 May 2018 at 17:24, Einar Jon Gunnarsson <tolvupostur@gmail.com> > wrote: > >> Added new package ti-sgx-libgbm > >> Fixed build and added license file hashes. > >> > >> Bumped beaglebone_qt5 to same level as beaglebone > >> > >> Signed-off-by: Einar Jon Gunnarsson <tolvupostur@gmail.com> > >> --- > >> ...nux-4.1-sgx.fragment => linux-4.9-sgx.fragment} | 0 > >> configs/beaglebone_qt5_defconfig | 14 +++++------ > >> package/Config.in | 1 + > >> package/ti-sgx-demos/ti-sgx-demos.hash | 3 ++- > >> package/ti-sgx-demos/ti-sgx-demos.mk | 20 > ++++++++++++--- > >> package/ti-sgx-km/Config.in | 17 +++++-------- > >> package/ti-sgx-km/ti-sgx-km.hash | 3 ++- > >> package/ti-sgx-km/ti-sgx-km.mk | 22 > ++++++++-------- > >> package/ti-sgx-libgbm/Config.in | 9 +++++++ > >> package/ti-sgx-libgbm/ti-sgx-libgbm.hash | 3 +++ > >> package/ti-sgx-libgbm/ti-sgx-libgbm.mk | 17 +++++++++++++ > >> package/ti-sgx-um/Config.in | 3 ++- > >> package/ti-sgx-um/S80ti-sgx | 14 ----------- > >> package/ti-sgx-um/powervr.ini | 4 +-- > >> package/ti-sgx-um/ti-sgx-um.hash | 3 ++- > >> package/ti-sgx-um/ti-sgx-um.mk | 29 > ++++++++++++++++------ >
Hello, On Mon, 28 May 2018 14:20:44 +0200, Einar Jón wrote: > > I'm not sure if we must bump all packages related to the TI SDK or bump all > > packages one by one to ease the review. > > I did this in a single commit since any split (except a standalone > ti-sgx-libgbm) would be a commit with a broken build. The places I’ve > worked for for the last 5 years hate those. We definitely want a bisectable patch series, where everything works between each commit. > > Also, BR2_PACKAGE_TI_SGX_KM_AM4430 and BR2_PACKAGE_TI_SGX_KM_AM5430 > > symbols are > > removed. It must be handled in Config.in.legacy. > > > True. I didn’t think of that since none of the defconfigs use it. I can see > that now there is a legacy patch for the _KM addition. > Also, the new _KM addition to these keywords makes these parameters a bit > weird, because it is used in both ti-sgx-km and ti-sgx-um. I don't see where those renamed symbols are used in ti-sgx-um. The symbols that have been renamed are: BR2_PACKAGE_TI_SGX_AM335X BR2_PACKAGE_TI_SGX_AM437X BR2_PACKAGE_TI_SGX_AM4430 BR2_PACKAGE_TI_SGX_AM5430 > > Why S80ti-sgx is removed ? > > > > Because it is both unneeded and obsolete. > The current repo of ti-sgx-um has 3 subfolders, one for each > BR2_PACKAGE_TI_SGX_KM_AMxxx option. Each one has a sysV init file (called > rc-???) that is very different from the one I deleted. > Now I simply rename rc-??? to S80ti-sgx in the post-hook that previously > copied it from package/ti-sgx-um. Is the init script provided by upstream reasonably compatible with Buildroot requirements (it should work with Busybox, etc.) ? We very often have our own init scripts to make sure they are compatible with Buildroot-generated systems. Best regards, Thomas
Hello Einar, Please don't reply just to me, keep the mailing list in Cc. Thanks! On Wed, 30 May 2018 16:21:49 +0200, Einar Jón wrote: > > We definitely want a bisectable patch series, where everything works > > between each commit. > > I could do these a patchset: > Beaglebone_qt5 bump > package/ti-sgx-km bump > package/ti-sgx-um bump > package/ti-sgx-demos bump > new package ti-sgx-libgbm > > Is that preferred, or just the buildable: > ti-sgx and Beaglebone_qt5 bump > new package ti-sgx-libgbm This doesn't work because your ti-sgx-um package update has: select BR2_PACKAGE_TI_SGX_LIBGBM which implies it requires ti-sgx-libgbm to exist first. Here it was you should do instead: ti-sgx-libgbm: new package ti-sgx-{um,km}: bump version configs/beablebone_qt5: update this configs/beablebone_qt5: update that Indeed, in beaglebone_qt5_defconfig, you're doing lots of changes that are completely unrelated to ti-sgx stuff: updating U-Boot, adding Qt5Wayland, adding am335x-bonegreen in the list of DTs, etc. > From my committed package/ti-sgx-km/ti-sgx-km.mk, with line numbers > 22 ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM335X),y) > 23 TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti335x > 24 else ifeq ($(BR2_PACKAGE_TI_KM_SGX_AM437X),y) > 25 TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti437x > 26 endif > > From my committed package/ti-sgx-um/ti-sgx-um.mk > 19 ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM335X),y) > 20 TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti335x > 21 else ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM437X),y) > 22 TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti437x > 23 endif These lines don't exist in the ti-sgx-um package in the current master branch. So I don't see where the problem is. Just base your patches on the current master branch, and use the new name of the Config.in options. > Perfectly compatible with busybox. I'm using it myself. > It's just a /bin/sh script with args "start"|stop|reload|restart, > calling modprobe/rmmod wrappers in local functions load_pvr and unload_pvr. > It does call echo "Loaded PowerVR consumer services." instead of the standard > printf "Loading PowerVR consumer services:" + OK/FAIL OK, fair enough then. Thanks, Thomas
On 30 May 2018 at 16:49, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > Hello Einar, > > Please don't reply just to me, keep the mailing list in Cc. Thanks! > > On Wed, 30 May 2018 16:21:49 +0200, Einar Jón wrote: > >> > We definitely want a bisectable patch series, where everything works >> > between each commit. >> >> I could do these a patchset: >> Beaglebone_qt5 bump >> package/ti-sgx-km bump >> package/ti-sgx-um bump >> package/ti-sgx-demos bump >> new package ti-sgx-libgbm >> >> Is that preferred, or just the buildable: >> ti-sgx and Beaglebone_qt5 bump >> new package ti-sgx-libgbm > > This doesn't work because your ti-sgx-um package update has: > > select BR2_PACKAGE_TI_SGX_LIBGBM > > which implies it requires ti-sgx-libgbm to exist first. > > Here it was you should do instead: > > ti-sgx-libgbm: new package > ti-sgx-{um,km}: bump version > configs/beablebone_qt5: update this > configs/beablebone_qt5: update that I've spent too much time with git - My order meant the git history order, committing the new package first, and beaglebone last. > Indeed, in beaglebone_qt5_defconfig, you're doing lots of changes that > are completely unrelated to ti-sgx stuff: updating U-Boot, adding > Qt5Wayland, adding am335x-bonegreen in the list of DTs, etc. True. ti-sgx requires a 4.9 kernel, which beaglebone_defconfig has. I think the only reason why beaglebone_qt5 was not bumped up to kernel 4.9 with beaglebone was that the ti-sgx would have been broken. So bumping the other changes to match seemed to make sense. After this commit beaglebone_qt5_defconfig is bumped to the same level as beaglebone_defconfig. Qt5Wayland is added because wayland is a new dependency pulled in by libgbm. > >> From my committed package/ti-sgx-km/ti-sgx-km.mk, with line numbers >> 22 ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM335X),y) >> 23 TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti335x >> 24 else ifeq ($(BR2_PACKAGE_TI_KM_SGX_AM437X),y) >> 25 TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti437x >> 26 endif >> >> From my committed package/ti-sgx-um/ti-sgx-um.mk >> 19 ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM335X),y) >> 20 TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti335x >> 21 else ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM437X),y) >> 22 TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti437x >> 23 endif > > These lines don't exist in the ti-sgx-um package in the current master > branch. So I don't see where the problem is. Yep. these are only in my new commit. In the current master, ti-sgx-km.mk uses these variables to choose a target subfolder, but ti-sgx-um had the same code for all target products. This has changed in both repos, and now they have only 3 targets, instead of 4 earlier. > > Just base your patches on the current master branch, and use the new > name of the Config.in options. OK. I'll send in a new patchset tomorrow.
Hi all, I split this into a set of 3 patches, sent out yesterday On 31 May 2018 at 22:39, Einar Jón <tolvupostur@gmail.com> wrote: > On 30 May 2018 at 16:49, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: >> Hello Einar, >> >> Please don't reply just to me, keep the mailing list in Cc. Thanks! >> >> On Wed, 30 May 2018 16:21:49 +0200, Einar Jón wrote: >> >>> > We definitely want a bisectable patch series, where everything works >>> > between each commit. >>> >>> I could do these a patchset: >>> Beaglebone_qt5 bump >>> package/ti-sgx-km bump >>> package/ti-sgx-um bump >>> package/ti-sgx-demos bump >>> new package ti-sgx-libgbm >>> >>> Is that preferred, or just the buildable: >>> ti-sgx and Beaglebone_qt5 bump >>> new package ti-sgx-libgbm >> >> This doesn't work because your ti-sgx-um package update has: >> >> select BR2_PACKAGE_TI_SGX_LIBGBM >> >> which implies it requires ti-sgx-libgbm to exist first. >> >> Here it was you should do instead: >> >> ti-sgx-libgbm: new package >> ti-sgx-{um,km}: bump version >> configs/beablebone_qt5: update this >> configs/beablebone_qt5: update that > > I've spent too much time with git - My order meant the git history > order, committing the new package first, and beaglebone last. > >> Indeed, in beaglebone_qt5_defconfig, you're doing lots of changes that >> are completely unrelated to ti-sgx stuff: updating U-Boot, adding >> Qt5Wayland, adding am335x-bonegreen in the list of DTs, etc. > > True. ti-sgx requires a 4.9 kernel, which beaglebone_defconfig has. > I think the only reason why beaglebone_qt5 was not bumped up to kernel > 4.9 with beaglebone was that > the ti-sgx would have been broken. So bumping the other changes to > match seemed to make sense. > After this commit beaglebone_qt5_defconfig is bumped to the same level > as beaglebone_defconfig. > Qt5Wayland is added because wayland is a new dependency pulled in by libgbm. > >> >>> From my committed package/ti-sgx-km/ti-sgx-km.mk, with line numbers >>> 22 ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM335X),y) >>> 23 TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti335x >>> 24 else ifeq ($(BR2_PACKAGE_TI_KM_SGX_AM437X),y) >>> 25 TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti437x >>> 26 endif >>> >>> From my committed package/ti-sgx-um/ti-sgx-um.mk >>> 19 ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM335X),y) >>> 20 TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti335x >>> 21 else ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM437X),y) >>> 22 TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti437x >>> 23 endif >> >> These lines don't exist in the ti-sgx-um package in the current master >> branch. So I don't see where the problem is. > > Yep. these are only in my new commit. > In the current master, ti-sgx-km.mk uses these variables to choose a > target subfolder, > but ti-sgx-um had the same code for all target products. This has > changed in both repos, > and now they have only 3 targets, instead of 4 earlier. > >> >> Just base your patches on the current master branch, and use the new >> name of the Config.in options. > > OK. I'll send in a new patchset tomorrow. > > -- > Regards > Einar Jón > >>> Perfectly compatible with busybox. I'm using it myself. >>> It's just a /bin/sh script with args "start"|stop|reload|restart, >>> calling modprobe/rmmod wrappers in local functions load_pvr and unload_pvr. >>> It does call echo "Loaded PowerVR consumer services." instead of the standard >>> printf "Loading PowerVR consumer services:" + OK/FAIL >> >> OK, fair enough then. >> >> Thanks, >> >> Thomas >> -- >> Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons) >> Embedded Linux and Kernel engineering >> https://bootlin.com
Hello,
On Fri, 6 Jul 2018 15:36:41 +0200, Einar Jón wrote:
> I split this into a set of 3 patches, sent out yesterday
Thanks, seen it. I wanted to give it a try, hopefully next week.
Thanks,
Thomas
Hello again Please note that this build DOES NOT work. I get an error loading the graphics libraries, and Lothar also has issues. This was originally built using the GCC 6.4 toolchain. The update to GCC 7 wasn't caught because I didn't reload the defconfig after the rebase against origin/master. I'll try again next week, and only send it in if it clean builds against master. Sorry about that, Einar Jón On Fri, 6 Jul 2018, 15:49 Thomas Petazzoni, <thomas.petazzoni@bootlin.com> wrote: > Hello, > > On Fri, 6 Jul 2018 15:36:41 +0200, Einar Jón wrote: > > > I split this into a set of 3 patches, sent out yesterday > > Thanks, seen it. I wanted to give it a try, hopefully next week. > > Thanks, > > Thomas > -- > Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons) > Embedded Linux and Kernel engineering > https://bootlin.com > <div dir="auto">Hello again<div dir="auto"><br></div><div dir="auto">Please note that this build DOES NOT work. </div><div dir="auto">I get an error loading the graphics libraries, and Lothar also has issues. </div><div dir="auto"><br></div><div dir="auto">This was originally built using the GCC 6.4 toolchain. The update to GCC 7 wasn't caught because I didn't reload the defconfig after the rebase against origin/master.</div><div dir="auto"><br></div>I'll try again next week, and only send it in if it clean builds against master. <br><br>Sorry about that, <div dir="auto">Einar Jón <br><br><div class="gmail_quote" dir="auto"><div dir="ltr">On Fri, 6 Jul 2018, 15:49 Thomas Petazzoni, <<a href="mailto:thomas.petazzoni@bootlin.com">thomas.petazzoni@bootlin.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br> <br> On Fri, 6 Jul 2018 15:36:41 +0200, Einar Jón wrote:<br> <br> > I split this into a set of 3 patches, sent out yesterday<br> <br> Thanks, seen it. I wanted to give it a try, hopefully next week.<br> <br> Thanks,<br> <br> Thomas<br> -- <br> Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)<br> Embedded Linux and Kernel engineering<br> <a href="https://bootlin.com" rel="noreferrer noreferrer" target="_blank">https://bootlin.com</a><br> </blockquote></div></div></div>
diff --git a/board/beaglebone/linux-4.1-sgx.fragment b/board/beaglebone/linux-4.9-sgx.fragment similarity index 100% rename from board/beaglebone/linux-4.1-sgx.fragment rename to board/beaglebone/linux-4.9-sgx.fragment diff --git a/configs/beaglebone_qt5_defconfig b/configs/beaglebone_qt5_defconfig index fb61bf5..9af4b5a 100644 --- a/configs/beaglebone_qt5_defconfig +++ b/configs/beaglebone_qt5_defconfig @@ -1,9 +1,8 @@ BR2_arm=y BR2_cortex_a8=y BR2_GLOBAL_PATCH_DIR="board/beaglebone/patches" -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y BR2_TOOLCHAIN_BUILDROOT_GLIBC=y -BR2_GCC_VERSION_5_X=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y BR2_TARGET_GENERIC_GETTY_PORT="ttyO0" @@ -11,16 +10,17 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/beaglebone/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.ti.com/processor-sdk/processor-sdk-linux.git" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="52c4aa7cdb93d61f8008f380135beaf7b8fa6593" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="a75d8e93056181d512f6c818e8627bd4554aaf92" BR2_LINUX_KERNEL_DEFCONFIG="omap2plus" -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/beaglebone/linux-4.1-sgx.fragment" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/beaglebone/linux-4.9-sgx.fragment" BR2_LINUX_KERNEL_DTS_SUPPORT=y -BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-evmsk" +BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk" BR2_PACKAGE_FBV=y BR2_PACKAGE_QT5=y BR2_PACKAGE_QT5BASE_EXAMPLES=y BR2_PACKAGE_QT5BASE_EGLFS=y BR2_PACKAGE_QT5QUICKCONTROLS=y +BR2_PACKAGE_QT5WAYLAND=y BR2_PACKAGE_TI_SGX_DEMOS=y BR2_PACKAGE_TI_SGX_KM=y BR2_PACKAGE_TI_SGX_UM=y @@ -30,13 +30,11 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="124M" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.09.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.01" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am335x_evm" BR2_TARGET_UBOOT_NEEDS_DTC=y # BR2_TARGET_UBOOT_FORMAT_BIN is not set BR2_TARGET_UBOOT_FORMAT_IMG=y -BR2_TARGET_UBOOT_FORMAT_CUSTOM=y -BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="spl/u-boot-spl.bin" BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="MLO" BR2_PACKAGE_HOST_DOSFSTOOLS=y diff --git a/package/Config.in b/package/Config.in index ecee493..dae396f 100644 --- a/package/Config.in +++ b/package/Config.in @@ -518,6 +518,7 @@ endmenu source "package/ti-sgx-demos/Config.in" source "package/ti-sgx-km/Config.in" source "package/ti-sgx-um/Config.in" + source "package/ti-sgx-libgbm/Config.in" source "package/ti-uim/Config.in" source "package/ti-utils/Config.in" source "package/triggerhappy/Config.in" diff --git a/package/ti-sgx-demos/ti-sgx-demos.hash b/package/ti-sgx-demos/ti-sgx-demos.hash index 43acf91..2b8be48 100644 --- a/package/ti-sgx-demos/ti-sgx-demos.hash +++ b/package/ti-sgx-demos/ti-sgx-demos.hash @@ -1,2 +1,3 @@ # Locally computed: -sha256 9d1d4da2c2b35303e239f99eb4003b8b206078a682aa083d5fb831ee4197f3bf ti-sgx-demos-f24650bc8243b25c23d6a0a502ed79fc472ac424.tar.gz +sha256 32e6887fbed83bd937bf9761ee51adc5253c22161d7d6b720713cecaf0c212fc ti-sgx-demos-f09e59b2467cb0a5b88b6329fe35527cf65ed6e9.tar.gz +sha256 052741ea66a4a48e0ef8cab259d2dc136e7cf52fda694af8d1fe9bd28abe333b LegalNotice.txt diff --git a/package/ti-sgx-demos/ti-sgx-demos.mk b/package/ti-sgx-demos/ti-sgx-demos.mk index 80af79b..c5e1555 100644 --- a/package/ti-sgx-demos/ti-sgx-demos.mk +++ b/package/ti-sgx-demos/ti-sgx-demos.mk @@ -4,15 +4,27 @@ # ################################################################################ -# This correpsonds to SDK 02.00.00.00 -TI_SGX_DEMOS_VERSION = f24650bc8243b25c23d6a0a502ed79fc472ac424 +# This corresponds to SDK 04.00.00.00 +TI_SGX_DEMOS_VERSION = f09e59b2467cb0a5b88b6329fe35527cf65ed6e9 TI_SGX_DEMOS_SITE = git://git.ti.com/graphics/img-pvr-sdk.git TI_SGX_DEMOS_LICENSE = Imagination Technologies License Agreement TI_SGX_DEMOS_LICENSE_FILES = LegalNotice.txt +# Wayland demos seem to need at least X11 +TI_SGX_DEMOS_SUBDIR = NullWS + +# The full demo folder is +100MB, so limit to 5 like in SDK 02.00.00.00 +TI_SGX_DEMOS_BINARIES = OGLES2ChameleonMan \ + OGLES2FilmTV \ + OGLES2MagicLantern \ + OGLES2ParticleSystem \ + OGLES2PhantomMask + define TI_SGX_DEMOS_INSTALL_TARGET_CMDS - cp -dpfr $(@D)/targetfs/Examples/Advanced/OGLES* \ - $(TARGET_DIR)/usr/bin/ + for i in $(TI_SGX_DEMOS_BINARIES) ; do \ + cp -dpfr $(@D)/targetfs/Examples/Advanced/$(TI_SGX_DEMOS_SUBDIR)/$$i \ + $(TARGET_DIR)/usr/bin/ ; \ + done endef $(eval $(generic-package)) diff --git a/package/ti-sgx-km/Config.in b/package/ti-sgx-km/Config.in index db3d3f9..b2a01db 100644 --- a/package/ti-sgx-km/Config.in +++ b/package/ti-sgx-km/Config.in @@ -8,7 +8,7 @@ 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 AM33xx, AM43xx and AM57xx. It builds the kernel module and the user space binaries. For older CPUs or kernels use the ti-gfx package. @@ -27,22 +27,17 @@ choice config BR2_PACKAGE_TI_SGX_KM_AM335X bool "AM335x" help - AM335x CPU + All AM33xx derivatives config BR2_PACKAGE_TI_SGX_KM_AM437X bool "AM437x" help - AM437x CPU + All AM43xx derivatives -config BR2_PACKAGE_TI_SGX_KM_AM4430 - bool "AM4430" +config BR2_PACKAGE_TI_SGX_KM_AM57x + bool "AM57x" help - AM4430 CPU - -config BR2_PACKAGE_TI_SGX_KM_AM5430 - bool "AM5430" - help - AM5430 CPU + All DRA7xx / AM57xx derivatives endchoice diff --git a/package/ti-sgx-km/ti-sgx-km.hash b/package/ti-sgx-km/ti-sgx-km.hash index 7f7e0ac..f02ddce 100644 --- a/package/ti-sgx-km/ti-sgx-km.hash +++ b/package/ti-sgx-km/ti-sgx-km.hash @@ -1,2 +1,3 @@ # Locally computed: -sha256 47728ff8fc48827116cc042efa777a22a83dd4bd17c494e2a53b8c204ca59624 ti-sgx-km-2b7523d07a13ab704a24a7664749551f4a13ed32.tar.gz +sha256 c9023eb01d611be71bada4903645b60dea4529b8276a7827db48fbd2bae27583 ti-sgx-km-0086977380d3320d70a3abc78b95fa0641427073.tar.gz +sha256 e9d660547691b2a9232850fd43aac16d40fd063023166fd27162020c30dc2bd4 eurasia_km/GPL-COPYING diff --git a/package/ti-sgx-km/ti-sgx-km.mk b/package/ti-sgx-km/ti-sgx-km.mk index 0e1bc33..ed827ef 100644 --- a/package/ti-sgx-km/ti-sgx-km.mk +++ b/package/ti-sgx-km/ti-sgx-km.mk @@ -4,11 +4,11 @@ # ################################################################################ -# This correpsonds to SDK 02.00.00.00 -TI_SGX_KM_VERSION = 2b7523d07a13ab704a24a7664749551f4a13ed32 +# This corresponds to SDK 04.00.00.00 +TI_SGX_KM_VERSION = 0086977380d3320d70a3abc78b95fa0641427073 TI_SGX_KM_SITE = git://git.ti.com/graphics/omap5-sgx-ddk-linux.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 @@ -17,25 +17,23 @@ TI_SGX_KM_MAKE_OPTS = \ KERNELDIR=$(LINUX_DIR) \ PVR_NULLDRM=1 +TI_SGX_KM_PLATFORM_NAME = omap + 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 +TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti335x +else ifeq ($(BR2_PACKAGE_TI_KM_SGX_AM437X),y) +TI_SGX_KM_MAKE_ENV += TARGET_PRODUCT=ti437x endif TI_SGX_KM_SUBDIR = eurasia_km/eurasiacon/build/linux2/$(TI_SGX_KM_PLATFORM_NAME)_linux define TI_SGX_KM_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ + $(TI_SGX_KM_MAKE_ENV) $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ -C $(@D)/$(TI_SGX_KM_SUBDIR) endef define TI_SGX_KM_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ + $(TI_SGX_KM_MAKE_ENV) $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ DISCIMAGE=$(TARGET_DIR) \ kbuild_install -C $(@D)/$(TI_SGX_KM_SUBDIR) endef diff --git a/package/ti-sgx-libgbm/Config.in b/package/ti-sgx-libgbm/Config.in new file mode 100644 index 0000000..07536d9 --- /dev/null +++ b/package/ti-sgx-libgbm/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_TI_SGX_LIBGBM + bool "ti-sgx-libgbm" + depends on BR2_PACKAGE_TI_SGX_KM + select BR2_PACKAGE_WAYLAND + help + This package provides libgbm.so.2 for the + TI SGX implementation + + https://git.ti.com/glsdk/libgbm diff --git a/package/ti-sgx-libgbm/ti-sgx-libgbm.hash b/package/ti-sgx-libgbm/ti-sgx-libgbm.hash new file mode 100644 index 0000000..ffcf134 --- /dev/null +++ b/package/ti-sgx-libgbm/ti-sgx-libgbm.hash @@ -0,0 +1,3 @@ +# locally computed: +sha256 758872d87137a919274bdbb9b9c811e2f309ab0338e58a4c67df6db7b2a6c6f5 ti-sgx-libgbm-43cc786d0e5b8274fa93048c7f3bb8d6b62522db.tar.gz +sha256 dd6e66175f7f4ffe27f5f4dcc35005e07e6ef3aae2ec6fafaf52a53adb450cc1 debian/copyright diff --git a/package/ti-sgx-libgbm/ti-sgx-libgbm.mk b/package/ti-sgx-libgbm/ti-sgx-libgbm.mk new file mode 100644 index 0000000..29f6866 --- /dev/null +++ b/package/ti-sgx-libgbm/ti-sgx-libgbm.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# ti-sgx-libgbm +# +################################################################################ + +# This is the current "next" branch, which corresponds to SDK 04.00.00.00 +TI_SGX_LIBGBM_VERSION = 43cc786d0e5b8274fa93048c7f3bb8d6b62522db +TI_SGX_LIBGBM_SITE = git://git.ti.com/glsdk/libgbm.git +TI_SGX_LIBGBM_INSTALL_STAGING = YES +TI_SGX_LIBGBM_AUTORECONF = YES +TI_SGX_LIBGBM_LICENSE = MIT +TI_SGX_LIBGBM_LICENSE_FILES = debian/copyright + +TI_SGX_LIBGBM_DEPENDENCIES = wayland + +$(eval $(autotools-package)) diff --git a/package/ti-sgx-um/Config.in b/package/ti-sgx-um/Config.in index 8e1e4fb..e27e500 100644 --- a/package/ti-sgx-um/Config.in +++ b/package/ti-sgx-um/Config.in @@ -15,9 +15,10 @@ 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 help Graphics libraries for TI CPUs with SGX5xx GPU. - This package supports AM335x, AM437x, AM4430 and AM5430. + This package supports AM33xx, AM43xx and AM54xx. For older CPUs or kernels use the ti-gfx package. http://git.ti.com/graphics/omap5-sgx-ddk-um-linux diff --git a/package/ti-sgx-um/S80ti-sgx b/package/ti-sgx-um/S80ti-sgx deleted file mode 100644 index 8cae52f..0000000 --- a/package/ti-sgx-um/S80ti-sgx +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh -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 - ;; -esac diff --git a/package/ti-sgx-um/powervr.ini b/package/ti-sgx-um/powervr.ini index fc92d45..229d143 100644 --- a/package/ti-sgx-um/powervr.ini +++ b/package/ti-sgx-um/powervr.ini @@ -1,6 +1,6 @@ [default] -#defaul library without double buffering: -WindowSystem=libpvrDRMWSEGL_FRONT.so +#default library: +#WindowSystem=libpvrws_WAYLAND.so #alternative library, slower but with double buffering #WindowSystem=libpvrDRMWSEGL.so DisableHWTQTextureUpload=1 diff --git a/package/ti-sgx-um/ti-sgx-um.hash b/package/ti-sgx-um/ti-sgx-um.hash index a6a0566..e7bae03 100644 --- a/package/ti-sgx-um/ti-sgx-um.hash +++ b/package/ti-sgx-um/ti-sgx-um.hash @@ -1,2 +1,3 @@ # Locally computed: -sha256 c17f23d255cff8fe72fc3f5cae3d7550e387af07d036954b4f08e573379406d0 ti-sgx-um-e15f1543bab4de9e8927a2c4934addf3fd16ffcb.tar.gz +sha256 c6d9cfc4806d44f8dd73abe52ca0a292d004e68886ba1657ca5ac39ec1ab0025 ti-sgx-um-358fe42d34a7570896e5d1639869da564ddd0484.tar.gz +sha256 733aedfdd192ef955f775f820729ac8ee5d26f7cfefd4c6bcbae80e68b7062dc TI-Linux-Graphics-DDK-UM-Manifest.doc diff --git a/package/ti-sgx-um/ti-sgx-um.mk b/package/ti-sgx-um/ti-sgx-um.mk index d5c50a0..e89755e 100644 --- a/package/ti-sgx-um/ti-sgx-um.mk +++ b/package/ti-sgx-um/ti-sgx-um.mk @@ -4,22 +4,30 @@ # ################################################################################ -# This correpsonds to SDK 02.00.00.00 -TI_SGX_UM_VERSION = e15f1543bab4de9e8927a2c4934addf3fd16ffcb +# This correpsonds to SDK 04.00.00.00 +TI_SGX_UM_VERSION = 358fe42d34a7570896e5d1639869da564ddd0484 TI_SGX_UM_SITE = git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.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 is a egl/gles provider only if libdrm is installed TI_SGX_UM_DEPENDENCIES = libdrm +# ti-sgx-libgbm must be built before QT to find EGL +TI_SGX_UM_DEPENDENCIES += ti-sgx-libgbm + +ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM335X),y) +TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti335x +else ifeq ($(BR2_PACKAGE_TI_SGX_KM_AM437X),y) +TI_SGX_UM_MAKE_ENV += TARGET_PRODUCT=ti437x +endif define TI_SGX_UM_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(STAGING_DIR) install + $(TI_SGX_UM_MAKE_ENV) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(STAGING_DIR) install endef define TI_SGX_UM_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(TARGET_DIR) install + $(TI_SGX_UM_MAKE_ENV) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(TARGET_DIR) install endef # libs use the following file for configuration @@ -28,11 +36,18 @@ define TI_SGX_UM_INSTALL_CONF $(TARGET_DIR)/etc/powervr.ini endef -TI_SGX_UM_POST_INSTALL_TARGET_HOOKS += TI_SGX_UM_INSTALL_CONF +# Many binaries depend on libGLESv2.so.1, but libGLESv2.so.2 is installed +define TI_SGX_UM_INSTALL_FIX_MESA_STYLE_SYMLINK + cp -dpf $(TARGET_DIR)/usr/lib/libGLESv2.so.2 $(TARGET_DIR)/usr/lib/libGLESv2.so.1 +endef + +TI_SGX_UM_POST_INSTALL_TARGET_HOOKS += TI_SGX_UM_INSTALL_CONF TI_SGX_UM_INSTALL_FIX_MESA_STYLE_SYMLINK +# sysV file has the wrong name. Copy it from staging and delete the installed one define TI_SGX_UM_INSTALL_INIT_SYSV - $(INSTALL) -D -m 0755 package/ti-sgx-um/S80ti-sgx \ + $(INSTALL) -D -m 0755 $(STAGING_DIR)/etc/init.d/rc.pvr \ $(TARGET_DIR)/etc/init.d/S80ti-sgx + $(RM) $(TARGET_DIR)/etc/init.d/rc.pvr endef $(eval $(generic-package))
Added new package ti-sgx-libgbm Fixed build and added license file hashes. Bumped beaglebone_qt5 to same level as beaglebone Signed-off-by: Einar Jon Gunnarsson <tolvupostur@gmail.com> --- ...nux-4.1-sgx.fragment => linux-4.9-sgx.fragment} | 0 configs/beaglebone_qt5_defconfig | 14 +++++------ package/Config.in | 1 + package/ti-sgx-demos/ti-sgx-demos.hash | 3 ++- package/ti-sgx-demos/ti-sgx-demos.mk | 20 ++++++++++++--- package/ti-sgx-km/Config.in | 17 +++++-------- package/ti-sgx-km/ti-sgx-km.hash | 3 ++- package/ti-sgx-km/ti-sgx-km.mk | 22 ++++++++-------- package/ti-sgx-libgbm/Config.in | 9 +++++++ package/ti-sgx-libgbm/ti-sgx-libgbm.hash | 3 +++ package/ti-sgx-libgbm/ti-sgx-libgbm.mk | 17 +++++++++++++ package/ti-sgx-um/Config.in | 3 ++- package/ti-sgx-um/S80ti-sgx | 14 ----------- package/ti-sgx-um/powervr.ini | 4 +-- package/ti-sgx-um/ti-sgx-um.hash | 3 ++- package/ti-sgx-um/ti-sgx-um.mk | 29 ++++++++++++++++------ 16 files changed, 100 insertions(+), 62 deletions(-) rename board/beaglebone/{linux-4.1-sgx.fragment => linux-4.9-sgx.fragment} (100%) create mode 100644 package/ti-sgx-libgbm/Config.in create mode 100644 package/ti-sgx-libgbm/ti-sgx-libgbm.hash create mode 100644 package/ti-sgx-libgbm/ti-sgx-libgbm.mk delete mode 100644 package/ti-sgx-um/S80ti-sgx