mirror of
https://git.yoctoproject.org/meta-ti
synced 2026-01-12 01:20:20 +00:00
Compare commits
52 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1ae0cadb12 | ||
|
|
31212fec61 | ||
|
|
4b7a863b9d | ||
|
|
f43d380691 | ||
|
|
3ac974779d | ||
|
|
10960c248c | ||
|
|
55dc15a8f4 | ||
|
|
2a57c4c768 | ||
|
|
b094cd07c1 | ||
|
|
3f2d7dff00 | ||
|
|
d098dfccc1 | ||
|
|
2658df4437 | ||
|
|
8599d32a62 | ||
|
|
594cbb0142 | ||
|
|
9954e289e6 | ||
|
|
2a8d94c1fa | ||
|
|
8166221b76 | ||
|
|
c59c597aae | ||
|
|
7656af805f | ||
|
|
3f896e1c52 | ||
|
|
6cc3e56407 | ||
|
|
0e804eb4d9 | ||
|
|
ddbb13e225 | ||
|
|
1fc1e6e5cf | ||
|
|
f7c550cdfb | ||
|
|
9b6527720c | ||
|
|
3f9714bd9f | ||
|
|
71380b1923 | ||
|
|
57e55c84c9 | ||
|
|
ce947bca0e | ||
|
|
d236f27110 | ||
|
|
c1eecb62f2 | ||
|
|
e9729ddb00 | ||
|
|
a3c5205f4d | ||
|
|
103171802b | ||
|
|
55408800f8 | ||
|
|
9b2e9feb49 | ||
|
|
3b6b0b7d2f | ||
|
|
b64a94a41f | ||
|
|
4b96409bcc | ||
|
|
ca43376a8c | ||
|
|
398fb12007 | ||
|
|
a7e4b9560a | ||
|
|
ed03cab5fb | ||
|
|
4f6c54d944 | ||
|
|
497d0b774e | ||
|
|
257a370e7a | ||
|
|
6dea1b68af | ||
|
|
c70102c671 | ||
|
|
7ae1abe462 | ||
|
|
701bb5c16f | ||
|
|
185cbba966 |
@@ -11,8 +11,8 @@ BBFILE_PRIORITY_meta-ti = "6"
|
||||
LICENSE_PATH += "${LAYERDIR}/licenses"
|
||||
|
||||
SIGGEN_EXCLUDERECIPES_ABISAFE += " \
|
||||
omapdrm-pvr \
|
||||
omap5-sgx-ddk-um-linux \
|
||||
ti-sgx-ddk-km \
|
||||
ti-sgx-ddk-um \
|
||||
ti-ipc \
|
||||
ti-ipc-rtos \
|
||||
cmem-mod \
|
||||
|
||||
@@ -9,10 +9,10 @@ XSERVER += "xf86-input-tslib"
|
||||
MACHINE_GUI_CLASS = "smallscreen"
|
||||
MACHINE_FEATURES += "touchscreen"
|
||||
|
||||
IMAGE_FSTYPES += "ubi tar.gz tar.xz"
|
||||
IMAGE_FSTYPES += "ubifs ubi tar.gz tar.xz"
|
||||
|
||||
SERIAL_CONSOLE = ""
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyS3"
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyO0 115200;ttyS3 115200;ttyO3"
|
||||
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
|
||||
|
||||
# UBI information. Note that this is board and kernel specific. Changes
|
||||
@@ -26,7 +26,7 @@ SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
|
||||
# UBI: logical eraseblock size: 126976 bytes
|
||||
# from ubiattach stdout:
|
||||
# UBI device number 0, total 1988 LEBs
|
||||
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 4600"
|
||||
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 4900"
|
||||
|
||||
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
|
||||
# from dmesg:
|
||||
|
||||
@@ -9,9 +9,11 @@ XSERVER += "xf86-input-tslib"
|
||||
MACHINE_GUI_CLASS = "smallscreen"
|
||||
MACHINE_FEATURES += "touchscreen"
|
||||
|
||||
IMAGE_FSTYPES += "ubi tar.gz tar.xz"
|
||||
IMAGE_FSTYPES += "ubifs ubi tar.gz tar.xz"
|
||||
|
||||
SERIAL_CONSOLE = "115200 ttyO0"
|
||||
SERIAL_CONSOLE = ""
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyO0"
|
||||
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
|
||||
|
||||
# UBI information. Note that this is board and kernel specific. Changes
|
||||
# in your kernel port may require changes in these variables. For more
|
||||
@@ -24,7 +26,7 @@ SERIAL_CONSOLE = "115200 ttyO0"
|
||||
# UBI: logical eraseblock size: 253952 bytes
|
||||
# from ubiattach stdout:
|
||||
# UBI device number 0, total 994 LEBs
|
||||
MKUBIFS_ARGS = "-F -m 4096 -e 253952 -c 2200"
|
||||
MKUBIFS_ARGS = "-F -m 4096 -e 253952 -c 2300"
|
||||
|
||||
# do ubiattach /dev/ubi_ctrl -m 11 -O 4096
|
||||
# from dmesg:
|
||||
|
||||
@@ -6,9 +6,11 @@ require conf/machine/include/dra7xx.inc
|
||||
|
||||
MACHINE_FEATURES += "touchscreen"
|
||||
|
||||
IMAGE_FSTYPES += "ubi tar.gz tar.xz"
|
||||
IMAGE_FSTYPES += "ubifs ubi tar.gz tar.xz"
|
||||
|
||||
SERIAL_CONSOLE = "115200 ttyO2"
|
||||
SERIAL_CONSOLE = ""
|
||||
SERIAL_CONSOLES = "115200;ttyS2 115200;ttyO2"
|
||||
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
|
||||
|
||||
UBOOT_MACHINE = "am57xx_evm_config"
|
||||
|
||||
|
||||
@@ -6,9 +6,11 @@ require conf/machine/include/dra7xx.inc
|
||||
|
||||
MACHINE_FEATURES += "touchscreen"
|
||||
|
||||
IMAGE_FSTYPES += "ubi tar.gz tar.xz"
|
||||
IMAGE_FSTYPES += "ubifs ubi tar.gz tar.xz"
|
||||
|
||||
SERIAL_CONSOLE = "115200 ttyO0"
|
||||
SERIAL_CONSOLE = ""
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyO0"
|
||||
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
|
||||
|
||||
UBOOT_MACHINE = "dra7xx_evm_config"
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
require conf/machine/include/omap-a15.inc
|
||||
SOC_FAMILY_append = ":dra7xx"
|
||||
|
||||
MACHINE_FEATURES += "pci"
|
||||
MACHINE_FEATURES += "pci opencl"
|
||||
|
||||
@@ -4,13 +4,17 @@
|
||||
|
||||
require conf/machine/include/keystone.inc
|
||||
|
||||
MACHINE_FEATURES += "opencl"
|
||||
|
||||
UBOOT_MACHINE = "k2e_evm_config"
|
||||
|
||||
BOOT_MONITOR_MAKE_TARGET = "k2e"
|
||||
|
||||
IMAGE_FSTYPES += "ubi tar.gz tar.xz cpio"
|
||||
IMAGE_FSTYPES += "ubifs ubi tar.gz tar.xz cpio"
|
||||
|
||||
SERIAL_CONSOLE = "115200 ttyS0"
|
||||
SERIAL_CONSOLE = ""
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyO0"
|
||||
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
|
||||
|
||||
SYSVINIT_ENABLED_GETTYS = ""
|
||||
|
||||
|
||||
@@ -4,15 +4,17 @@
|
||||
|
||||
require conf/machine/include/keystone.inc
|
||||
|
||||
MACHINE_FEATURES += "alsa"
|
||||
MACHINE_FEATURES += "alsa opencl"
|
||||
|
||||
UBOOT_MACHINE = "k2g_evm_config"
|
||||
|
||||
BOOT_MONITOR_MAKE_TARGET = "k2g"
|
||||
|
||||
IMAGE_FSTYPES += "ubi tar.gz tar.xz cpio"
|
||||
IMAGE_FSTYPES += "ubifs ubi tar.gz tar.xz cpio"
|
||||
|
||||
SERIAL_CONSOLE = "115200 ttyS0"
|
||||
SERIAL_CONSOLE = ""
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyO0"
|
||||
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
|
||||
|
||||
SYSVINIT_ENABLED_GETTYS = ""
|
||||
|
||||
|
||||
@@ -4,13 +4,17 @@
|
||||
|
||||
require conf/machine/include/keystone.inc
|
||||
|
||||
MACHINE_FEATURES += "opencl"
|
||||
|
||||
UBOOT_MACHINE = "k2hk_evm_config"
|
||||
|
||||
BOOT_MONITOR_MAKE_TARGET = "k2hk"
|
||||
|
||||
IMAGE_FSTYPES += "ubi tar.gz tar.xz cpio"
|
||||
IMAGE_FSTYPES += "ubifs ubi tar.gz tar.xz cpio"
|
||||
|
||||
SERIAL_CONSOLE = "115200 ttyS0"
|
||||
SERIAL_CONSOLE = ""
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyO0"
|
||||
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
|
||||
|
||||
SYSVINIT_ENABLED_GETTYS = ""
|
||||
|
||||
|
||||
@@ -4,13 +4,17 @@
|
||||
|
||||
require conf/machine/include/keystone.inc
|
||||
|
||||
MACHINE_FEATURES += "opencl"
|
||||
|
||||
UBOOT_MACHINE = "k2l_evm_config"
|
||||
|
||||
BOOT_MONITOR_MAKE_TARGET = "k2l"
|
||||
|
||||
IMAGE_FSTYPES += "ubi tar.gz tar.xz cpio"
|
||||
IMAGE_FSTYPES += "ubifs ubi tar.gz tar.xz cpio"
|
||||
|
||||
SERIAL_CONSOLE = "115200 ttyS0"
|
||||
SERIAL_CONSOLE = ""
|
||||
SERIAL_CONSOLES = "115200;ttyS0 115200;ttyO0"
|
||||
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
|
||||
|
||||
SYSVINIT_ENABLED_GETTYS = ""
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ SRCREV = "035329caed63abe7193c855ad5d561ae783b19d7"
|
||||
|
||||
BOOT_MONITOR_IMAGE ?= "skern-${BOOT_MONITOR_MAKE_TARGET}.bin"
|
||||
|
||||
FLOATABI = "${@base_contains("TUNE_FEATURES", "vfp", base_contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
|
||||
FLOATABI = "${@bb.utils.contains("TUNE_FEATURES", "vfp", bb.utils.contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
|
||||
|
||||
EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS} ${FLOATABI}" LD="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS} ${FLOATABI}""
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
DESCRIPTION = "Cortex-M3 binary blob for suspend-resume"
|
||||
|
||||
LICENSE = "BSD-3-Clause"
|
||||
LICENSE = "TI-TSPA"
|
||||
LIC_FILES_CHKSUM = "file://License.txt;md5=7bdc54a749ab7a7dea999d25d99a41b8"
|
||||
|
||||
PV = "1.9.0"
|
||||
@@ -14,7 +14,7 @@ SRC_URI = "git://git.ti.com/processor-firmware/ti-amx3-cm3-pm-firmware.git;proto
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
FLOATABI = "${@base_contains("TUNE_FEATURES", "vfp", base_contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
|
||||
FLOATABI = "${@bb.utils.contains("TUNE_FEATURES", "vfp", bb.utils.contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
|
||||
|
||||
do_compile() {
|
||||
make CROSS_COMPILE="${TARGET_PREFIX}" CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS} ${FLOATABI}"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
DESCRIPTION = "Cortex-M3 binary blob for suspend-resume"
|
||||
|
||||
LICENSE = "BSD-3-Clause"
|
||||
LICENSE = "TI-TSPA"
|
||||
LIC_FILES_CHKSUM = "file://License.txt;md5=7bdc54a749ab7a7dea999d25d99a41b8"
|
||||
|
||||
PV = "1.9.1"
|
||||
@@ -13,7 +13,7 @@ SRC_URI = "git://git.ti.com/processor-firmware/ti-amx3-cm3-pm-firmware.git;proto
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
FLOATABI = "${@base_contains("TUNE_FEATURES", "vfp", base_contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
|
||||
FLOATABI = "${@bb.utils.contains("TUNE_FEATURES", "vfp", bb.utils.contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
|
||||
|
||||
do_compile() {
|
||||
make CROSS_COMPILE="${TARGET_PREFIX}" CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS} ${FLOATABI}"
|
||||
|
||||
@@ -4,10 +4,10 @@ LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://include/ti/cmem.h;beginline=1;endline=30;md5=9b745e2765a6ba8a636c91aed4b02ac1"
|
||||
|
||||
BRANCH ?= "lu-next"
|
||||
# This corresponds to version 4.10.02.05_eng
|
||||
SRCREV = "8df44102413c2d653341c5b7e6caee882e206d8c"
|
||||
# This corresponds to version 4.11.00.00_eng
|
||||
SRCREV = "852e97b5584cbdb6aa0fdef02a7c4e245409bcb6"
|
||||
|
||||
PV = "4.10.02.05+git${SRCPV}"
|
||||
PV = "4.11.00.00+git${SRCPV}"
|
||||
|
||||
SRC_URI = "git://git.ti.com/ipc/ludev.git;protocol=git;branch=${BRANCH}"
|
||||
|
||||
|
||||
@@ -1,52 +0,0 @@
|
||||
From e2db38959a70d1be604a297276a0b0c2ac219bf5 Mon Sep 17 00:00:00 2001
|
||||
From: Darren Etheridge <detheridge@ti.com>
|
||||
Date: Tue, 29 Jul 2014 16:06:17 -0500
|
||||
Subject: [PATCH 1/4] PoC: GFX: SDK: Make 5_01_01_01 work against 3.14 LTS
|
||||
|
||||
An API rename is the main change. Also hacked in some function prototypes
|
||||
for enabling use of the tilcdc DRM driver instead of the fbdev driver on
|
||||
AM335x. However this all really needs a good cleanup as it is hacky at
|
||||
the moment.
|
||||
|
||||
Signed-off-by: Darren Etheridge <detheridge@ti.com>
|
||||
---
|
||||
GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c | 5 +++++
|
||||
GFX_Linux_KM/services4/srvkm/env/linux/mutils.h | 6 +++++-
|
||||
2 files changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c
|
||||
index 5c3fc48..3857b95 100644
|
||||
--- a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c
|
||||
+++ b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c
|
||||
@@ -93,6 +93,11 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#include <linux/mutex.h>
|
||||
|
||||
#include <video/da8xx-fb.h>
|
||||
+/* used by SGX OMAPLFB drvier */
|
||||
+typedef void (*vsync_callback_t)(void *arg);
|
||||
+int register_vsync_cb(vsync_callback_t handler, void *arg, int idx);
|
||||
+int unregister_vsync_cb(vsync_callback_t handler, void *arg, int idx);
|
||||
+
|
||||
#if defined(PVR_OMAPLFB_DRM_FB)
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,0,0))
|
||||
#include <plat/display.h>
|
||||
diff --git a/GFX_Linux_KM/services4/srvkm/env/linux/mutils.h b/GFX_Linux_KM/services4/srvkm/env/linux/mutils.h
|
||||
index 31e0dac..90ec41c 100644
|
||||
--- a/GFX_Linux_KM/services4/srvkm/env/linux/mutils.h
|
||||
+++ b/GFX_Linux_KM/services4/srvkm/env/linux/mutils.h
|
||||
@@ -79,7 +79,11 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#define IOREMAP(pa, bytes) ioremap_cache(pa, bytes)
|
||||
#else
|
||||
#if defined(__arm__) && (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
|
||||
- #define IOREMAP(pa, bytes) ioremap_cached(pa, bytes)
|
||||
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0))
|
||||
+ #define IOREMAP(pa, bytes) ioremap_cache(pa, bytes)
|
||||
+ #else
|
||||
+ #define IOREMAP(pa, bytes) ioremap_cached(pa, bytes)
|
||||
+ #endif
|
||||
#else
|
||||
#define IOREMAP(pa, bytes) ioremap(pa, bytes)
|
||||
#endif
|
||||
--
|
||||
1.9.1
|
||||
|
||||
@@ -1,121 +0,0 @@
|
||||
From 7886ef77e4b48a7edd14acbcbe48f6a898251e78 Mon Sep 17 00:00:00 2001
|
||||
From: Darren Etheridge <detheridge@ti.com>
|
||||
Date: Fri, 25 Jul 2014 16:03:14 -0500
|
||||
Subject: [PATCH 2/5] SGX: linux: use platform data to provide reset info
|
||||
|
||||
In ti-linux-3.14.y we will not have a reset driver unlike ti-linux-3.12.y
|
||||
so this commit removes the dependency on the reset driver and instead
|
||||
uses the platform data that in a dt environment is configured in
|
||||
mach-omap2/pdata-quirks.c
|
||||
|
||||
Signed-off-by: Darren Etheridge <detheridge@ti.com>
|
||||
---
|
||||
GFX_Linux_KM/services4/srvkm/env/linux/module.c | 34 ++++++++++++++++++++-----
|
||||
1 file changed, 28 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/GFX_Linux_KM/services4/srvkm/env/linux/module.c b/GFX_Linux_KM/services4/srvkm/env/linux/module.c
|
||||
index e03dc00..90e16ce 100644
|
||||
--- a/GFX_Linux_KM/services4/srvkm/env/linux/module.c
|
||||
+++ b/GFX_Linux_KM/services4/srvkm/env/linux/module.c
|
||||
@@ -47,6 +47,10 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#endif
|
||||
#endif
|
||||
|
||||
+#ifndef CONFIG_RESET_CONTROLLER
|
||||
+#include <linux/platform_data/sgx-omap.h>
|
||||
+#endif
|
||||
+
|
||||
#if defined(SUPPORT_DRI_DRM) && !defined(SUPPORT_DRI_DRM_PLUGIN)
|
||||
#define PVR_MOD_STATIC
|
||||
#else
|
||||
@@ -344,9 +348,11 @@ static LDM_DRV powervr_driver = {
|
||||
LDM_DEV *gpsPVRLDMDev;
|
||||
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
|
||||
+#ifdef CONFIG_RESET_CONTROLLER
|
||||
struct reset_control *rstc;
|
||||
bool already_deasserted = false;
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#if defined(MODULE) && defined(PVR_LDM_PLATFORM_MODULE) && \
|
||||
!defined(PVR_USE_PRE_REGISTERED_PLATFORM_DEV)
|
||||
@@ -388,11 +394,14 @@ static int __devinit PVRSRVDriverProbe(LDM_DEV *pDevice, const struct pci_device
|
||||
#endif
|
||||
{
|
||||
SYS_DATA *psSysData;
|
||||
- int ret;
|
||||
+ int ret;
|
||||
+ struct device *dev = &pDevice->dev;
|
||||
+ struct gfx_sgx_platform_data *pdata = dev->platform_data;
|
||||
+
|
||||
PVR_TRACE(("PVRSRVDriverProbe(pDevice=%p)", pDevice));
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
|
||||
+#ifdef CONFIG_RESET_CONTROLLER
|
||||
rstc = reset_control_get(&pDevice->dev, NULL);
|
||||
-
|
||||
if (IS_ERR(rstc))
|
||||
{
|
||||
dev_err(&pDevice->dev, "%s: error: reset_control_get\n", __func__);
|
||||
@@ -403,7 +412,7 @@ static int __devinit PVRSRVDriverProbe(LDM_DEV *pDevice, const struct pci_device
|
||||
|
||||
if (ret < 0)
|
||||
{
|
||||
- dev_err(&pDevice->dev, "%s: error: reset_control_clear_reset\n", __func__);
|
||||
+ dev_err(dev, "%s: error: reset_control_clear_reset\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -413,11 +422,22 @@ static int __devinit PVRSRVDriverProbe(LDM_DEV *pDevice, const struct pci_device
|
||||
{
|
||||
already_deasserted = true;
|
||||
}
|
||||
- else if (ret < 0)
|
||||
+ else if (ret < 0)
|
||||
{
|
||||
- dev_err(&pDevice->dev, "%s: error: reset_control_deassert\n", __func__);
|
||||
+ dev_err(dev, "%s: error: reset_control_deassert\n", __func__);
|
||||
return ret;
|
||||
}
|
||||
+#else
|
||||
+ if (pdata && pdata->deassert_reset) {
|
||||
+ ret = pdata->deassert_reset(pDevice, pdata->reset_name);
|
||||
+ if (ret) {
|
||||
+ dev_err(dev, "Unable to reset SGX!\n");
|
||||
+ }
|
||||
+ } else {
|
||||
+ dev_err(dev, "SGX Platform data missing deassert_reset!\n");
|
||||
+ return -ENODEV;
|
||||
+ }
|
||||
+#endif /* CONFIG_RESET_CONTROLLER */
|
||||
#endif
|
||||
|
||||
#if 0 /* INTEGRATION_POINT */
|
||||
@@ -432,7 +452,7 @@ static int __devinit PVRSRVDriverProbe(LDM_DEV *pDevice, const struct pci_device
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
-#endif
|
||||
+#endif
|
||||
/* SysInitialise only designed to be called once.
|
||||
*/
|
||||
psSysData = SysAcquireDataNoCheck();
|
||||
@@ -445,6 +465,7 @@ static int __devinit PVRSRVDriverProbe(LDM_DEV *pDevice, const struct pci_device
|
||||
}
|
||||
}
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
|
||||
+#ifdef CONFIG_RESET_CONTROLLER
|
||||
if (!already_deasserted)
|
||||
{
|
||||
ret = reset_control_is_reset(rstc);
|
||||
@@ -454,6 +475,7 @@ static int __devinit PVRSRVDriverProbe(LDM_DEV *pDevice, const struct pci_device
|
||||
}
|
||||
}
|
||||
reset_control_put(rstc);
|
||||
+#endif /* CONFIG_RESET_CONTROLLER */
|
||||
#endif
|
||||
|
||||
return PVRSRVIONClientCreate();
|
||||
--
|
||||
1.9.1
|
||||
|
||||
@@ -1,153 +0,0 @@
|
||||
From cf5156ff82e14fe01a194f9fa9a9adc528ac72f0 Mon Sep 17 00:00:00 2001
|
||||
From: Darren Etheridge <detheridge@ti.com>
|
||||
Date: Tue, 29 Jul 2014 15:39:56 -0500
|
||||
Subject: [PATCH 3/4] SGX: displayclass: am335x, am437x - fix mutex deadlock
|
||||
warning
|
||||
|
||||
Rearrange the locking semantics in the Unblank screen function to
|
||||
remove the kernel warning about a possible deadlock scenario.
|
||||
|
||||
The warning presents itself on the console like this:
|
||||
[ 2976.202979] ======================================================
|
||||
[ 2976.202983] [ INFO: possible circular locking dependency detected ]
|
||||
[ 2976.202994] 3.14.11-00997-gb20d0ac-dirty #53 Tainted: G O
|
||||
[ 2976.202997] -------------------------------------------------------
|
||||
[ 2976.203005] OGLES2Chameleon/1203 is trying to acquire lock:
|
||||
[ 2976.203058] (console_lock){+.+.+.}, at: [<bf07a310>]
|
||||
OMAPLFBUnblankDisplay+0x24/0xbc [omaplfb]
|
||||
[ 2976.203062]
|
||||
[ 2976.203062] but task is already holding lock:
|
||||
[ 2976.203087] (&fb_info->lock){+.+.+.}, at: [<c0312358>]
|
||||
lock_fb_info+0x18/0x3c
|
||||
[ 2976.203090]
|
||||
[ 2976.203090] which lock already depends on the new lock.
|
||||
[ 2976.203090]
|
||||
[ 2976.203093]
|
||||
[ 2976.203093] the existing dependency chain (in reverse order) is:
|
||||
[ 2976.203101]
|
||||
[ 2976.203101] -> #1 (&fb_info->lock){+.+.+.}:
|
||||
[ 2976.203112] [<c0312358>] lock_fb_info+0x18/0x3c
|
||||
[ 2976.203124] [<c0313a7c>] register_framebuffer+0x174/0x26c
|
||||
[ 2976.203146] [<c033c314>] omapfb_create_framebuffers+0x48c/0x7ac
|
||||
[ 2976.203157] [<c033d3c4>] omapfb_probe+0x4d4/0x848
|
||||
[ 2976.203170] [<c0381cc8>] platform_drv_probe+0x18/0x48
|
||||
[ 2976.203189] [<c038096c>] driver_probe_device+0x10c/0x238
|
||||
[ 2976.203199] [<c0380b2c>] __driver_attach+0x94/0x98
|
||||
[ 2976.203208] [<c037f0f0>] bus_for_each_dev+0x54/0x88
|
||||
[ 2976.203216] [<c03800f0>] bus_add_driver+0xd8/0x1d8
|
||||
[ 2976.203223] [<c038115c>] driver_register+0x78/0xf4
|
||||
[ 2976.203234] [<c0008968>] do_one_initcall+0xe4/0x144
|
||||
[ 2976.203250] [<c07d3c18>] kernel_init_freeable+0xfc/0x1cc
|
||||
[ 2976.203261] [<c0563260>] kernel_init+0x8/0xec
|
||||
[ 2976.203275] [<c000e648>] ret_from_fork+0x14/0x2c
|
||||
[ 2976.203284]
|
||||
[ 2976.203284] -> #0 (console_lock){+.+.+.}:
|
||||
[ 2976.203301] [<c008bc00>] console_lock+0x4c/0x60
|
||||
[ 2976.203328] [<bf07a310>] OMAPLFBUnblankDisplay+0x24/0xbc [omaplfb]
|
||||
[ 2976.203340] [<bf0797f4>] OpenDCDevice+0x60/0x78 [omaplfb]
|
||||
[ 2976.203459] [<bf041ac0>] PVRSRVOpenDCDeviceKM+0xec/0x178 [pvrsrvkm]
|
||||
[ 2976.203654] [<bf05645c>] PVRSRVOpenDCDeviceBW+0x6c/0xac [pvrsrvkm]
|
||||
[ 2976.203811] [<bf056d10>] BridgedDispatchKM+0xf4/0x14c [pvrsrvkm]
|
||||
[ 2976.203966] [<bf04f304>] PVRSRV_BridgeDispatchKM+0xf0/0x204
|
||||
[pvrsrvkm]
|
||||
[ 2976.203987] [<c0129500>] do_vfs_ioctl+0x78/0x61c
|
||||
[ 2976.203997] [<c0129b08>] SyS_ioctl+0x64/0x74
|
||||
[ 2976.204013] [<c000e580>] ret_fast_syscall+0x0/0x48
|
||||
[ 2976.204016]
|
||||
[ 2976.204016] other info that might help us debug this:
|
||||
[ 2976.204016]
|
||||
[ 2976.204019] Possible unsafe locking scenario:
|
||||
[ 2976.204019]
|
||||
[ 2976.204022] CPU0 CPU1
|
||||
[ 2976.204024] ---- ----
|
||||
[ 2976.204030] lock(&fb_info->lock);
|
||||
[ 2976.204036] lock(console_lock);
|
||||
[ 2976.204041] lock(&fb_info->lock);
|
||||
[ 2976.204046] lock(console_lock);
|
||||
[ 2976.204048]
|
||||
[ 2976.204048] *** DEADLOCK ***
|
||||
[ 2976.204048]
|
||||
[ 2976.204055] 2 locks held by OGLES2Chameleon/1203:
|
||||
[ 2976.204217] #0: (psPVRSRVMutex#2/1){+.+.+.}, at: [<bf04f238>]
|
||||
PVRSRV_BridgeDispatchKM+0x24/0x204 [pvrsrvkm]
|
||||
[ 2976.204240] #1: (&fb_info->lock){+.+.+.}, at: [<c0312358>]
|
||||
lock_fb_info+0x18/0x3c
|
||||
|
||||
Signed-off-by: Darren Etheridge <detheridge@ti.com>
|
||||
---
|
||||
GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c | 8 +++++---
|
||||
GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c | 7 +++++--
|
||||
2 files changed, 10 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c
|
||||
index 3857b95..a5cc7d0 100644
|
||||
--- a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c
|
||||
+++ b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/omaplfb_linux.c
|
||||
@@ -812,10 +812,13 @@ static OMAPLFB_ERROR OMAPLFBBlankOrUnblankDisplay(OMAPLFB_DEVINFO *psDevInfo, IM
|
||||
{
|
||||
#ifdef FBDEV_PRESENT
|
||||
int res;
|
||||
+
|
||||
+ OMAPLFB_CONSOLE_LOCK();
|
||||
if (!lock_fb_info(psDevInfo->psLINFBInfo))
|
||||
{
|
||||
printk(KERN_ERR DRIVER_PREFIX
|
||||
": %s: Device %u: Couldn't lock FB info\n", __FUNCTION__, psDevInfo->uiFBDevID);
|
||||
+ OMAPLFB_CONSOLE_UNLOCK();
|
||||
return (OMAPLFB_ERROR_GENERIC);
|
||||
}
|
||||
|
||||
@@ -825,14 +828,13 @@ static OMAPLFB_ERROR OMAPLFBBlankOrUnblankDisplay(OMAPLFB_DEVINFO *psDevInfo, IM
|
||||
* notification.
|
||||
*/
|
||||
|
||||
-
|
||||
- OMAPLFB_CONSOLE_LOCK();
|
||||
psDevInfo->psLINFBInfo->flags |= FBINFO_MISC_USEREVENT;
|
||||
res = fb_blank(psDevInfo->psLINFBInfo, bBlank ? 1 : 0);
|
||||
psDevInfo->psLINFBInfo->flags &= ~FBINFO_MISC_USEREVENT;
|
||||
|
||||
- OMAPLFB_CONSOLE_UNLOCK();
|
||||
unlock_fb_info(psDevInfo->psLINFBInfo);
|
||||
+ OMAPLFB_CONSOLE_UNLOCK();
|
||||
+
|
||||
if (res != 0 && res != -EINVAL)
|
||||
{
|
||||
printk(KERN_ERR DRIVER_PREFIX
|
||||
diff --git a/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c b/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c
|
||||
index c79dbd0..58b8640 100755
|
||||
--- a/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c
|
||||
+++ b/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/omaplfb_linux.c
|
||||
@@ -948,10 +948,13 @@ static OMAPLFB_ERROR OMAPLFBBlankOrUnblankDisplay(OMAPLFB_DEVINFO *psDevInfo, IM
|
||||
{
|
||||
#ifdef FBDEV_PRESENT
|
||||
int res;
|
||||
+
|
||||
+ OMAPLFB_CONSOLE_LOCK();
|
||||
if (!lock_fb_info(psDevInfo->psLINFBInfo))
|
||||
{
|
||||
printk(KERN_ERR DRIVER_PREFIX
|
||||
": %s: Device %u: Couldn't lock FB info\n", __FUNCTION__, psDevInfo->uiFBDevID);
|
||||
+ OMAPLFB_CONSOLE_UNLOCK();
|
||||
return (OMAPLFB_ERROR_GENERIC);
|
||||
}
|
||||
|
||||
@@ -961,13 +964,13 @@ static OMAPLFB_ERROR OMAPLFBBlankOrUnblankDisplay(OMAPLFB_DEVINFO *psDevInfo, IM
|
||||
* notification.
|
||||
*/
|
||||
|
||||
- OMAPLFB_CONSOLE_LOCK();
|
||||
psDevInfo->psLINFBInfo->flags |= FBINFO_MISC_USEREVENT;
|
||||
res = fb_blank(psDevInfo->psLINFBInfo, bBlank ? 1 : 0);
|
||||
psDevInfo->psLINFBInfo->flags &= ~FBINFO_MISC_USEREVENT;
|
||||
|
||||
- OMAPLFB_CONSOLE_UNLOCK();
|
||||
unlock_fb_info(psDevInfo->psLINFBInfo);
|
||||
+ OMAPLFB_CONSOLE_UNLOCK();
|
||||
+
|
||||
if (res != 0 && res != -EINVAL)
|
||||
{
|
||||
printk(KERN_ERR DRIVER_PREFIX
|
||||
--
|
||||
1.9.1
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
From c9258e090aec91e70efa814e5a38048b0c45754a Mon Sep 17 00:00:00 2001
|
||||
From: Darren Etheridge <detheridge@ti.com>
|
||||
Date: Tue, 29 Jul 2014 15:54:14 -0500
|
||||
Subject: [PATCH 4/4] SGX: linux: make it building against ti-linux-3.14.y
|
||||
|
||||
The fbdev drivers moved into their own directory under drivers/video.
|
||||
All of the omap2 dss stuff moved there as well so update the Makefile
|
||||
to point to the right place.
|
||||
|
||||
Keep the old directory around to not break builds against older kernel.
|
||||
|
||||
Signed-off-by: Darren Etheridge <detheridge@ti.com>
|
||||
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
|
||||
---
|
||||
GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild | 1 +
|
||||
GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild | 1 +
|
||||
2 files changed, 2 insertions(+)
|
||||
|
||||
diff --git a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild
|
||||
index 1ae2359..9e0c843 100755
|
||||
--- a/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild
|
||||
+++ b/GFX_Linux_KM/services4/3rdparty/dc_ti335x_linux/Kbuild
|
||||
@@ -15,6 +15,7 @@ EXTRA_CFLAGS = -DLINUX \
|
||||
-I$(PVR_BUILD_DIR)/services4/include \
|
||||
-I$(PVR_BUILD_DIR)/services4/system/$(PVR_SYSTEM) \
|
||||
-I$(KERNELDIR)/drivers/video/omap2 \
|
||||
+ -I$(KERNELDIR)/drivers/video/fbdev/omap2 \
|
||||
-I$(PVR_BUILD_DIR)/services4/system/include \
|
||||
$(SYS_CFLAGS.1) \
|
||||
|
||||
diff --git a/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild b/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild
|
||||
index 1ae2359..9e0c843 100755
|
||||
--- a/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild
|
||||
+++ b/GFX_Linux_KM/services4/3rdparty/dc_ti43xx_linux/Kbuild
|
||||
@@ -15,6 +15,7 @@ EXTRA_CFLAGS = -DLINUX \
|
||||
-I$(PVR_BUILD_DIR)/services4/include \
|
||||
-I$(PVR_BUILD_DIR)/services4/system/$(PVR_SYSTEM) \
|
||||
-I$(KERNELDIR)/drivers/video/omap2 \
|
||||
+ -I$(KERNELDIR)/drivers/video/fbdev/omap2 \
|
||||
-I$(PVR_BUILD_DIR)/services4/system/include \
|
||||
$(SYS_CFLAGS.1) \
|
||||
|
||||
--
|
||||
2.0.2
|
||||
|
||||
@@ -1,81 +0,0 @@
|
||||
DESCRIPTION = "Kernel drivers for the PowerVR SGX chipset found in the omap3 SoCs (for X11)"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=ea5743acf520dd81ca172e69f818a3d4"
|
||||
|
||||
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
|
||||
require ../../recipes-ti/includes/ti-eula-unpack.inc
|
||||
|
||||
SGXPV = "4_09_00_01"
|
||||
IMGPV = "1.9.2188537"
|
||||
|
||||
inherit module
|
||||
|
||||
MACHINE_KERNEL_PR_append = "d"
|
||||
PR = "${MACHINE_KERNEL_PR}"
|
||||
|
||||
# Select the corresponding hardfp/softfp filename and checksums based on tune flags
|
||||
BINFILE_SOFTFP = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin"
|
||||
MD5SUM_SOFTFP = "bd35e9d8843aff3a2aca9d41e7db1c7d"
|
||||
SHA256SUM_SOFTFP = "eb37f75ddde4640b09e760fa86e689beb394330ecdf68786188c34f249247647"
|
||||
|
||||
BINFILE_HARDFP = "Graphics_SDK_setuplinux_${SGXPV}_hardfp_minimal_demos.bin"
|
||||
MD5SUM_HARDFP = "c9f656dce062d1ab10afffd4dfb71b67"
|
||||
SHA256SUM_HARDFP = "dbfeba8e1298f139495816334edec1455e6b49b1e11bd1b2aa0a888e5788bb6b"
|
||||
|
||||
BINFILE = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${BINFILE_HARDFP}', '${BINFILE_SOFTFP}', d)}"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE}"
|
||||
|
||||
SRC_URI[md5sum] := "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${MD5SUM_HARDFP}', '${MD5SUM_SOFTFP}', d)}"
|
||||
SRC_URI[sha256sum] := "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${SHA256SUM_HARDFP}', '${SHA256SUM_SOFTFP}', d)}"
|
||||
|
||||
TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}"
|
||||
S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM"
|
||||
|
||||
PVRBUILD = "release"
|
||||
export KERNELDIR = "${STAGING_KERNEL_DIR}"
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
|
||||
TI_PLATFORM_omap3 = "omap3630"
|
||||
TI_PLATFORM_ti814x = "ti81xx"
|
||||
TI_PLATFORM_ti816x = "ti81xx"
|
||||
TI_PLATFORM_ti33x = "ti335x"
|
||||
|
||||
MODULESLOCATION_omap3 = "dc_omapfb3_linux"
|
||||
MODULESLOCATION_ti814x = "dc_ti81xx_linux"
|
||||
MODULESLOCATION_ti816x = "dc_ti81xx_linux"
|
||||
MODULESLOCATION_ti33x = "dc_ti335x_linux"
|
||||
|
||||
export SUPPORT_XORG ?= "1"
|
||||
|
||||
MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=${SUPPORT_XORG}"
|
||||
|
||||
do_compile() {
|
||||
export TOOLCHAIN="${TOOLCHAIN_PATH}"
|
||||
export PLAT_CC="${CC}"
|
||||
export PLAT_CPP="${CXX}"
|
||||
export PLAR_AR="${AR}"
|
||||
for kernelver in ${WORKDIR}/../../${PREFERRED_PROVIDER_virtual/kernel}/* ; do
|
||||
cp -f $kernelver/git/drivers/gpu/drm/*.c ${S}/services4/3rdparty/linux_drm/
|
||||
done
|
||||
if [ $(echo -e "${KERNEL_VERSION}\n3.3" | sort --version-sort | head -1) = "3.3" ] ; then
|
||||
cp -f ${S}/services4/3rdparty/linux_drm/Kbuild_3.3 \
|
||||
${S}/services4/3rdparty/linux_drm/Kbuild || true
|
||||
else
|
||||
if [ $(echo -e "${KERNEL_VERSION}\n3.2" | sort --version-sort | head -1) = "3.2" ] ; then
|
||||
cp -f ${S}/services4/3rdparty/linux_drm/Kbuild_3.2 \
|
||||
${S}/services4/3rdparty/linux_drm/Kbuild || true
|
||||
fi
|
||||
fi
|
||||
oe_runmake BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=${SUPPORT_XORG}
|
||||
}
|
||||
|
||||
do_install() {
|
||||
mkdir -p ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
|
||||
cp ${S}/pvrsrvkm.ko \
|
||||
${S}/services4/3rdparty/bufferclass_ti/bufferclass_ti.ko \
|
||||
${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
|
||||
|
||||
cp ${S}/services4/3rdparty/linux_drm/drm.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/gpu/pvr
|
||||
}
|
||||
@@ -1,346 +0,0 @@
|
||||
--- GFX_Linux_KM/services4/3rdparty/dc_omap3430_linux/omaplfb_displayclass.c-orig 2011-03-08 04:27:35.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/3rdparty/dc_omap3430_linux/omaplfb_displayclass.c 2011-03-17 13:11:31.000000000 -0700
|
||||
@@ -235,9 +235,20 @@ static OMAP_ERROR UnblankDisplay(OMAPLFB
|
||||
{
|
||||
int res;
|
||||
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38)
|
||||
+ console_lock();
|
||||
+#else
|
||||
acquire_console_sem();
|
||||
+#endif
|
||||
+
|
||||
res = fb_blank(psDevInfo->psLINFBInfo, 0);
|
||||
+
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38)
|
||||
+ console_unlock();
|
||||
+#else
|
||||
release_console_sem();
|
||||
+#endif
|
||||
+
|
||||
#if !defined (CONFIG_OMAP2_DSS)
|
||||
if (res != 0 && res != -EINVAL)
|
||||
{
|
||||
@@ -1118,7 +1129,11 @@ static OMAP_ERROR InitDev(OMAPLFB_DEVINF
|
||||
OMAP_ERROR eError = OMAP_ERROR_GENERIC;
|
||||
unsigned long FBSize;
|
||||
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38)
|
||||
+ console_lock();
|
||||
+#else
|
||||
acquire_console_sem();
|
||||
+#endif
|
||||
|
||||
if (fb_idx < 0 || fb_idx >= num_registered_fb)
|
||||
{
|
||||
@@ -1254,7 +1269,11 @@ static OMAP_ERROR InitDev(OMAPLFB_DEVINF
|
||||
errModPut:
|
||||
module_put(psLINFBOwner);
|
||||
errRelSem:
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38)
|
||||
+ console_unlock();
|
||||
+#else
|
||||
release_console_sem();
|
||||
+#endif
|
||||
return eError;
|
||||
}
|
||||
|
||||
@@ -1263,7 +1282,11 @@ static void DeInitDev(OMAPLFB_DEVINFO *p
|
||||
struct fb_info *psLINFBInfo = psDevInfo->psLINFBInfo;
|
||||
struct module *psLINFBOwner;
|
||||
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38)
|
||||
+ console_lock();
|
||||
+#else
|
||||
acquire_console_sem();
|
||||
+#endif
|
||||
|
||||
psLINFBOwner = psLINFBInfo->fbops->owner;
|
||||
|
||||
@@ -1274,7 +1297,11 @@ static void DeInitDev(OMAPLFB_DEVINFO *p
|
||||
|
||||
module_put(psLINFBOwner);
|
||||
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38)
|
||||
+ console_unlock();
|
||||
+#else
|
||||
release_console_sem();
|
||||
+#endif
|
||||
}
|
||||
|
||||
OMAP_ERROR OMAPLFBInit(void)
|
||||
--- GFX_Linux_KM/services4/3rdparty/dc_omap3430_linux/omaplfb_linux.c-orig 2011-03-08 04:27:35.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/3rdparty/dc_omap3430_linux/omaplfb_linux.c 2011-03-17 13:40:15.000000000 -0700
|
||||
@@ -24,11 +24,14 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
-#include <linux/version.h>
|
||||
#include <linux/module.h>
|
||||
|
||||
#include <linux/pci.h>
|
||||
--- GFX_Linux_KM/services4/srvkm/common/resman.c-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/common/resman.c 2011-03-17 14:20:07.000000000 -0700
|
||||
@@ -24,15 +24,17 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
#include "services_headers.h"
|
||||
#include "resman.h"
|
||||
|
||||
#ifdef __linux__
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
-#include <linux/version.h>
|
||||
#include <linux/sched.h>
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,9)
|
||||
#include <linux/hardirq.h>
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/pvr_debug.c-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/pvr_debug.c 2011-03-17 14:33:09.000000000 -0700
|
||||
@@ -24,9 +24,13 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <asm/uaccess.h>
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/pvr_uaccess.h-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/pvr_uaccess.h 2011-03-17 14:39:14.000000000 -0700
|
||||
@@ -27,11 +27,14 @@
|
||||
#ifndef __PVR_UACCESS_H__
|
||||
#define __PVR_UACCESS_H__
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
-#include <linux/version.h>
|
||||
#include <asm/uaccess.h>
|
||||
|
||||
static inline unsigned long pvr_copy_to_user(void __user *pvTo, const void *pvFrom, unsigned long ulBytes)
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/mm.c-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/mm.c 2011-03-17 14:46:23.000000000 -0700
|
||||
@@ -24,11 +24,14 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
-#include <linux/version.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/vmalloc.h>
|
||||
#include <asm/io.h>
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/mutils.h-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/mutils.h 2011-03-17 14:54:37.000000000 -0700
|
||||
@@ -27,11 +27,13 @@
|
||||
#ifndef __IMG_LINUX_MUTILS_H__
|
||||
#define __IMG_LINUX_MUTILS_H__
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
-
|
||||
-#include <linux/version.h>
|
||||
+#endif
|
||||
|
||||
#if !(defined(__i386__) && (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26)))
|
||||
#if defined(SUPPORT_LINUX_X86_PAT)
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/mm.h-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/mm.h 2011-03-17 15:33:56.000000000 -0700
|
||||
@@ -27,11 +27,14 @@
|
||||
#ifndef __IMG_LINUX_MM_H__
|
||||
#define __IMG_LINUX_MM_H__
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
-#include <linux/version.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/list.h>
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/mmap.c-orig 2011-03-17 20:39:31.000000000 -0700
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/mmap.c 2011-03-17 20:40:00.000000000 -0700
|
||||
@@ -24,11 +24,14 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
-#include <linux/version.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/vmalloc.h>
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/proc.c-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/proc.c 2011-03-17 21:01:35.000000000 -0700
|
||||
@@ -24,13 +24,16 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#include <linux/init.h>
|
||||
#include <linux/module.h>
|
||||
-#include <linux/version.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/proc_fs.h>
|
||||
#include <linux/seq_file.h>
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/module.c-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/module.c 2011-03-17 21:32:19.000000000 -0700
|
||||
@@ -24,9 +24,13 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#if !defined(SUPPORT_DRI_DRM)
|
||||
|
||||
@@ -44,7 +48,6 @@
|
||||
#include <linux/init.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
-#include <linux/version.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/proc_fs.h>
|
||||
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/event.c-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/event.c 2011-03-18 08:51:42.000000000 -0700
|
||||
@@ -24,11 +24,14 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
-#include <linux/version.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/page.h>
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22))
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/osfunc.c-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/osfunc.c 2011-03-18 08:58:16.000000000 -0700
|
||||
@@ -24,11 +24,14 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
-#include <linux/version.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/page.h>
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22))
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/pvr_drm.c-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/pvr_drm.c 2011-03-18 09:01:06.000000000 -0700
|
||||
@@ -26,14 +26,17 @@
|
||||
|
||||
#if defined(SUPPORT_DRI_DRM)
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#include <linux/init.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
-#include <linux/version.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/proc_fs.h>
|
||||
#include <asm/ioctl.h>
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/mutils.c-orig 2011-03-08 04:27:36.000000000 -0800
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/mutils.c 2011-03-18 09:08:12.000000000 -0700
|
||||
@@ -24,10 +24,13 @@
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
+#include <linux/version.h>
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
|
||||
#ifndef AUTOCONF_INCLUDED
|
||||
#include <linux/config.h>
|
||||
#endif
|
||||
-#include <linux/version.h>
|
||||
+#endif
|
||||
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/mm.h>
|
||||
--- GFX_Linux_KM/services4/srvkm/env/linux/pvr_debug.c-orig 2011-03-31 13:46:48.000000000 -0700
|
||||
+++ GFX_Linux_KM/services4/srvkm/env/linux/pvr_debug.c 2011-03-31 15:14:10.000000000 -0700
|
||||
@@ -76,7 +76,8 @@ static IMG_CHAR gszBufferIRQ[PVR_MAX_MSG
|
||||
static PVRSRV_LINUX_MUTEX gsDebugMutexNonIRQ;
|
||||
|
||||
|
||||
-static spinlock_t gsDebugLockIRQ = SPIN_LOCK_UNLOCKED;
|
||||
+static DEFINE_SPINLOCK(gsDebugLockIRQ);
|
||||
+
|
||||
|
||||
#if !defined (USE_SPIN_LOCK)
|
||||
#define USE_SPIN_LOCK (in_interrupt() || !preemptible())
|
||||
@@ -1,38 +0,0 @@
|
||||
From: Steve Sakoman
|
||||
Subject: omap3-sgx-modules: Fix build for Linux 3.0
|
||||
|
||||
This patch implements the header change from plat/display.h to video/omapdss.h
|
||||
|
||||
Signed-off-by: Steve Sakoman <steve at sakoman.com>
|
||||
|
||||
--- GFX_Linux_KM/services4/3rdparty/dc_omap3430_linux/omaplfb_linux.c-orig 2011-08-01 07:21:45.000000000 -0700
|
||||
+++ GFX_Linux_KM/services4/3rdparty/dc_omap3430_linux/omaplfb_linux.c 2011-08-01 07:29:32.000000000 -0700
|
||||
@@ -47,12 +47,12 @@
|
||||
#if defined (SUPPORT_TI_DSS_FW)
|
||||
#include <asm/io.h>
|
||||
|
||||
-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,26))
|
||||
-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,31))
|
||||
+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,39)))
|
||||
+#include <video/omapdss.h>
|
||||
+#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,31))
|
||||
#include <plat/display.h>
|
||||
-#else
|
||||
+#elif (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,26))
|
||||
#include <mach/display.h>
|
||||
-#endif
|
||||
#else
|
||||
#include <asm/arch-omap/display.h>
|
||||
#endif
|
||||
@@ -64,7 +64,11 @@ extern int omap_dispc_request_irq(unsign
|
||||
extern void omap_dispc_free_irq(unsigned long, void (*)(void *), void *);
|
||||
extern void omap_dispc_set_plane_base(int plane, IMG_UINT32 phys_addr);
|
||||
#else
|
||||
+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,39))
|
||||
+#include <video/omapdss.h>
|
||||
+#else
|
||||
#include <plat/display.h>
|
||||
+#endif
|
||||
#include <linux/console.h>
|
||||
#include <linux/fb.h>
|
||||
static omap_dispc_isr_t *pOMAPLFBVSyncISRHandle = NULL;
|
||||
@@ -1,39 +0,0 @@
|
||||
DESCRIPTION = "Kernel drivers for the PowerVR SGX chipset found in the omap3 SoCs"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=21228a42e27d1d104b31a83f7c9da935"
|
||||
|
||||
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
|
||||
require ../../recipes-ti/includes/ti-eula-unpack.inc
|
||||
|
||||
SGXPV = "4_05_00_03"
|
||||
BINFILE := "Graphics_SDK_setuplinux_${SGXPV}.bin"
|
||||
|
||||
inherit module
|
||||
|
||||
MACHINE_KERNEL_PR_append = "c"
|
||||
PR = "${MACHINE_KERNEL_PR}"
|
||||
|
||||
DEFAULT_PREFERENCE_omap3 = "99"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/Graphics_SDK_setuplinux_${SGXPV}.bin \
|
||||
"
|
||||
SRC_URI[md5sum] = "0e651eaa92bb91760f0b40a17697a7dc"
|
||||
SRC_URI[sha256sum] = "bfe764a8959556195545d6fff76f63a489642f345c105bbbc309a3f243c2dd0e"
|
||||
TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}"
|
||||
S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM"
|
||||
|
||||
PVRBUILD = "release"
|
||||
export KERNELDIR = "${STAGING_KERNEL_DIR}"
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
|
||||
TI_PLATFORM_omap3 = "omap3630"
|
||||
TI_PLATFORM_ti814x = "ti81xx"
|
||||
TI_PLATFORM_ti816x = "ti81xx"
|
||||
TI_PLATFORM_ti33x = "ti335x"
|
||||
|
||||
MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM}"
|
||||
|
||||
do_install() {
|
||||
make -C ${STAGING_KERNEL_DIR} SUBDIRS=${B} INSTALL_MOD_PATH=${D} PREFIX=${STAGING_DIR_HOST} modules_install
|
||||
}
|
||||
@@ -1,53 +0,0 @@
|
||||
DESCRIPTION = "Kernel drivers for the PowerVR SGX chipset found in the omap3 SoCs"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=ea5743acf520dd81ca172e69f818a3d4"
|
||||
|
||||
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
|
||||
require ../../recipes-ti/includes/ti-eula-unpack.inc
|
||||
|
||||
SGXPV = "4_09_00_01"
|
||||
IMGPV = "1.9.2188537"
|
||||
|
||||
inherit module
|
||||
|
||||
MACHINE_KERNEL_PR_append = "d"
|
||||
PR = "${MACHINE_KERNEL_PR}"
|
||||
|
||||
DEFAULT_PREFERENCE = "-1"
|
||||
|
||||
# Select the corresponding hardfp/softfp filename and checksums based on tune flags
|
||||
BINFILE_SOFTFP = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin"
|
||||
MD5SUM_SOFTFP = "bd35e9d8843aff3a2aca9d41e7db1c7d"
|
||||
SHA256SUM_SOFTFP = "eb37f75ddde4640b09e760fa86e689beb394330ecdf68786188c34f249247647"
|
||||
|
||||
BINFILE_HARDFP = "Graphics_SDK_setuplinux_${SGXPV}_hardfp_minimal_demos.bin"
|
||||
MD5SUM_HARDFP = "c9f656dce062d1ab10afffd4dfb71b67"
|
||||
SHA256SUM_HARDFP = "dbfeba8e1298f139495816334edec1455e6b49b1e11bd1b2aa0a888e5788bb6b"
|
||||
|
||||
BINFILE = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${BINFILE_HARDFP}', '${BINFILE_SOFTFP}', d)}"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE}"
|
||||
|
||||
SRC_URI[md5sum] := "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${MD5SUM_HARDFP}', '${MD5SUM_SOFTFP}', d)}"
|
||||
SRC_URI[sha256sum] := "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${SHA256SUM_HARDFP}', '${SHA256SUM_SOFTFP}', d)}"
|
||||
|
||||
TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}"
|
||||
S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM"
|
||||
|
||||
PVRBUILD = "release"
|
||||
export KERNELDIR = "${STAGING_KERNEL_DIR}"
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
|
||||
TI_PLATFORM_omap3 = "omap3630"
|
||||
TI_PLATFORM_ti814x = "ti81xx"
|
||||
TI_PLATFORM_ti816x = "ti81xx"
|
||||
TI_PLATFORM_ti33x = "ti335x"
|
||||
|
||||
MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=0"
|
||||
|
||||
MAKE_TARGETS_append_ti33x = " PM_RUNTIME=1"
|
||||
|
||||
do_install() {
|
||||
make -C ${STAGING_KERNEL_DIR} SUBDIRS=${B} INSTALL_MOD_PATH=${D} PREFIX=${STAGING_DIR_HOST} modules_install
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
DESCRIPTION = "Kernel drivers for the PowerVR SGX chipset found in the omap3 SoCs"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://GPL-COPYING;md5=60422928ba677faaa13d6ab5f5baaa1e"
|
||||
|
||||
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
|
||||
require ../../recipes-ti/includes/ti-eula-unpack.inc
|
||||
|
||||
SGXPV = "5_01_01_01"
|
||||
IMGPV = "1.10.2359475"
|
||||
|
||||
inherit module
|
||||
|
||||
MACHINE_KERNEL_PR_append = "d"
|
||||
PR = "${MACHINE_KERNEL_PR}"
|
||||
|
||||
BINFILE_HARDFP = "Graphics_SDK_setuplinux_hardfp_${SGXPV}.bin"
|
||||
MD5SUM_HARDFP = "94acdbd20152c905939c2448d5e80a72"
|
||||
SHA256SUM_HARDFP = "7f647bf45a5ce8ba9aaa28c4afe85fced4275f9a4567a1886d4460b76c9051ae"
|
||||
|
||||
# For now we only have hardfp version
|
||||
python __anonymous() {
|
||||
tunes = bb.data.getVar("TUNE_FEATURES", d, 1)
|
||||
if not tunes:
|
||||
return
|
||||
pkgn = bb.data.getVar("PN", d, 1)
|
||||
pkgv = bb.data.getVar("PV", d, 1)
|
||||
if "callconvention-hard" not in tunes:
|
||||
bb.warn("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
raise bb.parse.SkipPackage("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
}
|
||||
|
||||
BINFILE := "${BINFILE_HARDFP}"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/gfxsdk/${SGXPV}/exports/${BINFILE}"
|
||||
|
||||
SRC_URI += "file://0001-PoC-GFX-SDK-Make-5_01_01_01-work-against-3.14-LTS.patch;striplevel=2 \
|
||||
file://0002-SGX-linux-use-platform-data-to-provide-reset-info.patch;striplevel=2 \
|
||||
file://0003-SGX-displayclass-am335x-am437x-fix-mutex-deadlock-wa.patch;striplevel=2 \
|
||||
file://0004-SGX-linux-make-it-building-against-ti-linux-3.14.y.patch;striplevel=2"
|
||||
|
||||
SRC_URI[md5sum] := "${MD5SUM_HARDFP}"
|
||||
SRC_URI[sha256sum] := "${SHA256SUM_HARDFP}"
|
||||
|
||||
TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}"
|
||||
S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM"
|
||||
|
||||
PVRBUILD = "release"
|
||||
export KERNELDIR = "${STAGING_KERNEL_DIR}"
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
|
||||
TI_PLATFORM_omap3 = "omap3630"
|
||||
TI_PLATFORM_ti814x = "ti81xx"
|
||||
TI_PLATFORM_ti816x = "ti81xx"
|
||||
TI_PLATFORM_ti33x = "ti335x"
|
||||
TI_PLATFORM_ti43x = "ti43xx"
|
||||
|
||||
MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=${SUPPORT_XORG}"
|
||||
|
||||
do_install() {
|
||||
make -C ${STAGING_KERNEL_DIR} SUBDIRS=${B} INSTALL_MOD_PATH=${D} PREFIX=${STAGING_DIR_HOST} modules_install
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
DESCRIPTION = "Kernel drivers for the PowerVR SGX chipset found in the omap3 SoCs"
|
||||
LICENSE = "GPLv2"
|
||||
LIC_FILES_CHKSUM = "file://GPL-COPYING;md5=60422928ba677faaa13d6ab5f5baaa1e"
|
||||
|
||||
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
|
||||
require ../../recipes-ti/includes/ti-eula-unpack.inc
|
||||
|
||||
SGXPV = "5_01_01_02"
|
||||
IMGPV = "1.10.2359475"
|
||||
|
||||
inherit module
|
||||
|
||||
MACHINE_KERNEL_PR_append = "b"
|
||||
PR = "${MACHINE_KERNEL_PR}"
|
||||
|
||||
BINFILE_HARDFP = "Graphics_SDK_setuplinux_hardfp_${SGXPV}.bin"
|
||||
MD5SUM_HARDFP = "94bcb31ea7eb50df1dfa4037055b638e"
|
||||
SHA256SUM_HARDFP = "54641222cdb49b03f996cbd6412de227198d9e084f5647d706bbf4217e8cdb07"
|
||||
|
||||
# For now we only have hardfp version
|
||||
python __anonymous() {
|
||||
tunes = bb.data.getVar("TUNE_FEATURES", d, 1)
|
||||
if not tunes:
|
||||
return
|
||||
pkgn = bb.data.getVar("PN", d, 1)
|
||||
pkgv = bb.data.getVar("PV", d, 1)
|
||||
if "callconvention-hard" not in tunes:
|
||||
bb.warn("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
raise bb.parse.SkipPackage("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
}
|
||||
|
||||
BINFILE := "${BINFILE_HARDFP}"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/gfxsdk/${SGXPV}/exports/${BINFILE}"
|
||||
|
||||
|
||||
SRC_URI[md5sum] := "${MD5SUM_HARDFP}"
|
||||
SRC_URI[sha256sum] := "${SHA256SUM_HARDFP}"
|
||||
|
||||
TI_BIN_UNPK_WDEXT="/Graphics_SDK_${SGXPV}"
|
||||
S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}/GFX_Linux_KM"
|
||||
|
||||
PVRBUILD = "release"
|
||||
export KERNELDIR = "${STAGING_KERNEL_DIR}"
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
|
||||
TI_PLATFORM_omap3 = "omap3630"
|
||||
TI_PLATFORM_ti814x = "ti81xx"
|
||||
TI_PLATFORM_ti816x = "ti81xx"
|
||||
TI_PLATFORM_ti33x = "ti335x"
|
||||
TI_PLATFORM_ti43x = "ti43xx"
|
||||
|
||||
MAKE_TARGETS = " BUILD=${PVRBUILD} TI_PLATFORM=${TI_PLATFORM} SUPPORT_XORG=${SUPPORT_XORG}"
|
||||
|
||||
do_install() {
|
||||
make -C ${STAGING_KERNEL_DIR} SUBDIRS=${B} INSTALL_MOD_PATH=${D} PREFIX=${STAGING_DIR_HOST} modules_install
|
||||
}
|
||||
@@ -12,12 +12,20 @@ PR = "${MACHINE_KERNEL_PR}"
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
|
||||
BRANCH = "ti-img-sgx/${PV}/k4.1"
|
||||
DEPENDS = "virtual/kernel"
|
||||
|
||||
PROVIDES = "omapdrm-pvr"
|
||||
|
||||
RPROVIDES_${PN} = "omapdrm-pvr"
|
||||
RREPLACES_${PN} = "omapdrm-pvr"
|
||||
RCONFLICTS_${PN} = "omapdrm-pvr"
|
||||
|
||||
BRANCH = "ti-img-sgx/${PV}/k4.4"
|
||||
|
||||
SRC_URI = "git://git.ti.com/graphics/omap5-sgx-ddk-linux.git;protocol=git;branch=${BRANCH}"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
SRCREV = "fed0756f1b8b9d526da2821635c7d742989d47c3"
|
||||
SRCREV = "c8d280c2842bf4b1fdc63f5efd89595807c0a254"
|
||||
|
||||
TARGET_PRODUCT_omap-a15 = "jacinto6evm"
|
||||
TARGET_PRODUCT_ti33x = "ti335x"
|
||||
@@ -1,20 +1,21 @@
|
||||
DESCRIPTION = "PRU Ethernet firmware for AM57xx and AM437x"
|
||||
DESCRIPTION = "PRU Ethernet firmware for AM57xx, AM437x and AM335x"
|
||||
|
||||
LICENSE = "TI-TFL"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.ti;md5=b5aebf0668bdf95621259288c4a46d76"
|
||||
|
||||
PV_am57xx-evm = "1.0.0"
|
||||
PV_am437x-evm = "2.1.2"
|
||||
PV_am335x-evm = "2.1.2"
|
||||
|
||||
PR = "r1"
|
||||
PR = "r2"
|
||||
|
||||
CLEANBROKEN = "1"
|
||||
|
||||
COMPATIBLE_MACHINE = "am57xx-evm|am437x-evm"
|
||||
COMPATIBLE_MACHINE = "am57xx-evm|am437x-evm|am335x-evm"
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
|
||||
SRCREV = "f6c712fd26044d90939ff774f07dfcb951bcefc9"
|
||||
SRCREV = "4096bf1129c4a707069e685edd44ca64bd51421d"
|
||||
BRANCH ?= "ti-linux-firmware-4.1.y"
|
||||
|
||||
SRC_URI = "git://git.ti.com/processor-firmware/ti-linux-firmware.git;protocol=git;branch=${BRANCH}"
|
||||
@@ -23,6 +24,7 @@ S = "${WORKDIR}/git"
|
||||
|
||||
TARGET_am57xx-evm = "am57xx-pru0-prueth-fw.elf am57xx-pru1-prueth-fw.elf"
|
||||
TARGET_am437x-evm = "am437x-pru0-prueth-fw.elf am437x-pru1-prueth-fw.elf"
|
||||
TARGET_am335x-evm = "am335x-pru0-prueth-fw.elf am335x-pru1-prueth-fw.elf"
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${base_libdir}/firmware/ti-pruss
|
||||
|
||||
@@ -3,7 +3,7 @@ DESCRIPTION = "TI SCI firmware"
|
||||
LICENSE = "TI-TFL"
|
||||
LIC_FILES_CHKSUM = "file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c"
|
||||
|
||||
PV = "0.1.1.4"
|
||||
PV = "0.1.1.12"
|
||||
PR = "r0"
|
||||
|
||||
CLEANBROKEN = "1"
|
||||
@@ -12,7 +12,7 @@ COMPATIBLE_MACHINE = "k2g-evm"
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
|
||||
SRCREV = "11c3f5df2276c542966c32e95289ec49d111a696"
|
||||
SRCREV = "89c279adfdd0e58f002ba6f0c26a14869b2d74cb"
|
||||
BRANCH ?= "ti-linux-firmware-4.1.y"
|
||||
|
||||
SRC_URI = "git://git.ti.com/processor-firmware/ti-linux-firmware.git;protocol=git;branch=${BRANCH}"
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
require u-boot-ti.inc
|
||||
|
||||
DESCRIPTION = "u-boot bootloader for ARM MPU devices"
|
||||
|
||||
COMPATIBLE_MACHINE = "ti33x"
|
||||
|
||||
DEFAULT_PREFERENCE = "-1"
|
||||
|
||||
PR = "r6"
|
||||
PV_append = "+git${SRCPV}"
|
||||
|
||||
SRC_URI = "git://git.ti.com/ti-u-boot/ti-u-boot.git;protocol=git;branch=${BRANCH}"
|
||||
|
||||
# This version of u-boot is meant for 3.2 kernel which doesn't support device tree.
|
||||
BRANCH = "ti-u-boot-2013.01.01-amsdk-06.00.00.00"
|
||||
|
||||
SRCREV = "540aa6fbb0c9274bda598f7e8819ed28259cad6b"
|
||||
|
||||
# Set the name of the SPL that will built so that it is also packaged with u-boot.
|
||||
SPL_BINARY = "MLO"
|
||||
@@ -1,17 +0,0 @@
|
||||
require u-boot-ti.inc
|
||||
|
||||
DESCRIPTION = "u-boot bootloader for TI devices supported by the GLSDK product"
|
||||
|
||||
PR = "r1"
|
||||
PV_append = "+git${SRCPV}"
|
||||
|
||||
DEFAULT_PREFERENCE = "-1"
|
||||
|
||||
SRC_URI = "git://git.omapzoom.org/repo/u-boot.git;protocol=git;branch=${BRANCH}"
|
||||
|
||||
BRANCH ?= "p-ti-u-boot-2013.04"
|
||||
|
||||
SRCREV = "76447484441a4b8e00840a2bde74e66dbac9e631"
|
||||
|
||||
SPL_BINARY = "MLO"
|
||||
SPL_UART_BINARY = "u-boot-spl.bin"
|
||||
@@ -1,16 +0,0 @@
|
||||
require u-boot-ti.inc
|
||||
|
||||
DESCRIPTION = "u-boot bootloader for TI devices"
|
||||
|
||||
PR = "r5"
|
||||
PV_append = "+git${SRCPV}"
|
||||
|
||||
SRC_URI = "git://git.ti.com/ti-u-boot/ti-u-boot.git;protocol=git;branch=${BRANCH}"
|
||||
|
||||
BRANCH ?= "ti-u-boot-2013.01.01"
|
||||
|
||||
# This commit corresponds to ti2013.04.00 release tag
|
||||
SRCREV = "7552b4c906b0a50fbc5225dc43ed0192618e9d5d"
|
||||
|
||||
SPL_BINARY = "MLO"
|
||||
SPL_UART_BINARY = "u-boot-spl.bin"
|
||||
@@ -1,18 +0,0 @@
|
||||
require u-boot-ti.inc
|
||||
|
||||
DESCRIPTION = "u-boot bootloader for TI devices"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://Licenses/README;md5=025bf9f768cbcb1a165dbe1a110babfb"
|
||||
|
||||
PR = "r8"
|
||||
PV_append = "+git${SRCPV}"
|
||||
|
||||
SRC_URI = "git://git.ti.com/ti-u-boot/ti-u-boot.git;protocol=git;branch=${BRANCH}"
|
||||
|
||||
BRANCH ?= "ti-u-boot-2013.10"
|
||||
|
||||
# Corresponds to tag ti2013.12.01_amsdk-07.01
|
||||
SRCREV = "259ff9a577cc66cb40e3cdff3e41628e466f0fef"
|
||||
|
||||
SPL_BINARY = "MLO"
|
||||
SPL_UART_BINARY = "u-boot-spl.bin"
|
||||
@@ -1,28 +1,38 @@
|
||||
require u-boot-ti.inc
|
||||
|
||||
DESCRIPTION = "u-boot bootloader for Multi-Core BU devices"
|
||||
# u-boot needs devtree compiler to parse dts files
|
||||
DEPENDS += "dtc-native"
|
||||
|
||||
COMPATIBLE_MACHINE = "keystone"
|
||||
DESCRIPTION = "u-boot bootloader for TI devices"
|
||||
|
||||
PR = "r6"
|
||||
LIC_FILES_CHKSUM = "file://Licenses/README;md5=a2c678cfd4a4d97135585cad908541c6"
|
||||
|
||||
PR = "r5"
|
||||
PV_append = "+git${SRCPV}"
|
||||
|
||||
# Tag "K2_UBOOT_2013_01_15.07_01"
|
||||
SRCREV = "5eaedcc4c2bca0ed971ee46694df7edc0cfa36cf"
|
||||
BRANCH = "master"
|
||||
SRC_URI = "git://git.ti.com/ti-u-boot/ti-u-boot.git;protocol=git;branch=${BRANCH}"
|
||||
|
||||
SRC_URI = "git://git.ti.com/keystone-linux/u-boot.git;protocol=git;branch=${BRANCH}"
|
||||
BRANCH ?= "ti-u-boot-2016.05"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
SRCREV = "b4e185a8c3732f33d519453841f70236b8d29954"
|
||||
|
||||
UBOOT_SUFFIX = "bin"
|
||||
UBOOT_MAKE_TARGET = "u-boot-spi.gph u-boot-nand.gph"
|
||||
# Support for secure devices - detailed info is in doc/README.ti-secure
|
||||
TI_SECURE_DEV_PKG ?= ""
|
||||
TI_SECURE_DEV_PKG_dra7xx-hs-evm = "${TI_SECURE_DEV_PKG_DRA7}"
|
||||
TI_SECURE_DEV_PKG_am437x-hs-evm = "${TI_SECURE_DEV_PKG_AM4}"
|
||||
export TI_SECURE_DEV_PKG
|
||||
|
||||
SPL_BINARY = "MLO"
|
||||
SPL_UART_BINARY = "u-boot-spl.bin"
|
||||
|
||||
# Keystone specifics
|
||||
UBOOT_SUFFIX_keystone = "bin"
|
||||
SPL_UART_BINARY_keystone = ""
|
||||
|
||||
# SPI NOR Flash binaries
|
||||
UBOOT_SPI_SPL_BINARY = "u-boot-spl.bin"
|
||||
UBOOT_SPI_BINARY = "u-boot.img"
|
||||
UBOOT_SPI_GPH_BINARY = "u-boot-spi.gph"
|
||||
UBOOT_NAND_GPH_BINARY = "u-boot-nand.gph"
|
||||
|
||||
# SPI NOR Flash deployed images
|
||||
UBOOT_SPI_SPL_IMAGE = "u-boot-spl-${MACHINE}-${PV}-${PR}.bin"
|
||||
@@ -31,10 +41,15 @@ UBOOT_SPI_IMAGE = "u-boot-${MACHINE}-${PV}-${PR}.img"
|
||||
UBOOT_SPI_SYMLINK = "u-boot-${MACHINE}.img"
|
||||
UBOOT_SPI_GPH_IMAGE = "u-boot-spi-${MACHINE}-${PV}-${PR}.gph"
|
||||
UBOOT_SPI_GPH_SYMLINK = "u-boot-spi-${MACHINE}.gph"
|
||||
UBOOT_NAND_GPH_IMAGE = "u-boot-nand-${MACHINE}-${PV}-${PR}.gph"
|
||||
UBOOT_NAND_GPH_SYMLINK = "u-boot-nand-${MACHINE}.gph"
|
||||
|
||||
do_install_append () {
|
||||
do_compile_append_am437x-hs-evm () {
|
||||
if [ -f ${S}/u-boot-spl_HS_ISSW ]; then
|
||||
rm -rf ${S}/MLO
|
||||
cp ${S}/u-boot-spl_HS_ISSW ${S}/MLO
|
||||
fi
|
||||
}
|
||||
|
||||
do_install_append_keystone () {
|
||||
install ${S}/spl/${UBOOT_SPI_SPL_BINARY} ${D}/boot/${UBOOT_SPI_SPL_IMAGE}
|
||||
ln -sf ${UBOOT_SPI_SPL_IMAGE} ${D}/boot/${UBOOT_SPI_SPL_BINARY}
|
||||
|
||||
@@ -43,12 +58,9 @@ do_install_append () {
|
||||
|
||||
install ${S}/${UBOOT_SPI_GPH_BINARY} ${D}/boot/${UBOOT_SPI_GPH_IMAGE}
|
||||
ln -sf ${UBOOT_SPI_GPH_IMAGE} ${D}/boot/${UBOOT_SPI_GPH_BINARY}
|
||||
|
||||
install ${S}/${UBOOT_NAND_GPH_BINARY} ${D}/boot/${UBOOT_NAND_GPH_IMAGE}
|
||||
ln -sf ${UBOOT_NAND_GPH_IMAGE} ${D}/boot/${UBOOT_NAND_GPH_BINARY}
|
||||
}
|
||||
|
||||
do_deploy_append () {
|
||||
do_deploy_append_keystone () {
|
||||
install ${S}/spl/${UBOOT_SPI_SPL_BINARY} ${DEPLOYDIR}/${UBOOT_SPI_SPL_IMAGE}
|
||||
rm -f ${UBOOT_SPI_SPL_BINARY} ${UBOOT_SPI_SPL_SYMLINK}
|
||||
ln -sf ${UBOOT_SPI_SPL_IMAGE} ${UBOOT_SPI_SPL_SYMLINK}
|
||||
@@ -63,9 +75,4 @@ do_deploy_append () {
|
||||
rm -f ${UBOOT_SPI_GPH_BINARY} ${UBOOT_SPI_GPH_SYMLINK}
|
||||
ln -sf ${UBOOT_SPI_GPH_IMAGE} ${UBOOT_SPI_GPH_SYMLINK}
|
||||
ln -sf ${UBOOT_SPI_GPH_IMAGE} ${UBOOT_SPI_GPH_BINARY}
|
||||
|
||||
install ${S}/${UBOOT_NAND_GPH_BINARY} ${DEPLOYDIR}/${UBOOT_NAND_GPH_IMAGE}
|
||||
rm -f ${UBOOT_NAND_GPH_BINARY} ${UBOOT_NAND_GPH_SYMLINK}
|
||||
ln -sf ${UBOOT_NAND_GPH_IMAGE} ${UBOOT_NAND_GPH_SYMLINK}
|
||||
ln -sf ${UBOOT_NAND_GPH_IMAGE} ${UBOOT_NAND_GPH_BINARY}
|
||||
}
|
||||
@@ -1,3 +1,15 @@
|
||||
# UBOOT_LOCALVERSION can be set to add a tag to the end of the
|
||||
# U-boot version string. such as the commit id
|
||||
def get_git_revision(p):
|
||||
import subprocess
|
||||
|
||||
try:
|
||||
return subprocess.Popen("git rev-parse HEAD 2>/dev/null ", cwd=p, shell=True, stdout=subprocess.PIPE).communicate()[0].rstrip()
|
||||
except OSError:
|
||||
return None
|
||||
|
||||
UBOOT_LOCALVERSION = "-g${@get_git_revision('${S}').__str__()[:10]}"
|
||||
|
||||
UBOOT_SUFFIX ?= "img"
|
||||
|
||||
require ${COREBASE}/meta/recipes-bsp/u-boot/u-boot.inc
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
require u-boot-ti.inc
|
||||
|
||||
# DEPEND on dtc-native for mainline u-boot because the mainline u-boot depends
|
||||
# on some of the latest syntax constructs for an appended in dtb used for
|
||||
# items like secure boot/image signing.
|
||||
DEPENDS += "dtc-native"
|
||||
|
||||
DESCRIPTION = "Mainline u-boot bootloader"
|
||||
|
||||
DEFAULT_PREFERENCE = "-1"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://Licenses/README;md5=025bf9f768cbcb1a165dbe1a110babfb"
|
||||
|
||||
SRC_URI = "git://git.denx.de/u-boot.git;protocol=git;branch=${BRANCH}"
|
||||
|
||||
BRANCH ?= "master"
|
||||
|
||||
# Corresponds to tag v2014.07
|
||||
SRCREV = "524123a70761110c5cf3ccc5f52f6d4da071b959"
|
||||
|
||||
SPL_BINARY = "MLO"
|
||||
SPL_UART_BINARY = "u-boot-spl.bin"
|
||||
|
||||
SPL_BINARY_omapl138 = ""
|
||||
SPL_UART_BINARY_omapl138 = ""
|
||||
@@ -1,7 +1,8 @@
|
||||
DESCRIPTION = "Test code for user space IO (UIO) driver"
|
||||
|
||||
include uio-module-drv.inc
|
||||
PV = "1.0.2.3"
|
||||
|
||||
PR = "r1"
|
||||
|
||||
COMPATIBLE_MACHINE = "keystone"
|
||||
RDEPENDS_${PN} = "uio-module-drv"
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
LICENSE = "BSD"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2b7c96eb2aed7b0f6f922214dbde9016"
|
||||
|
||||
BRANCH = "linux4.1"
|
||||
# This corresponds to version 02.00.00.00_eng
|
||||
BRANCH = "master"
|
||||
# This corresponds to version 02.00.00.00
|
||||
SRCREV = "6a7eda36e390658593a5b8d87b0f00beb3997240"
|
||||
|
||||
PV = "2.0.0.0+git${SRCPV}"
|
||||
|
||||
SRC_URI = "git://git.ti.com/keystone-linux/uio-module-drv.git;protocol=git;branch=${BRANCH}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
DESCRIPTION="User space IO (UIO) driver for on-chip modules"
|
||||
|
||||
include uio-module-drv.inc
|
||||
PV = "2.0.0.0+git${SRCPV}"
|
||||
|
||||
# This package builds a kernel module, use kernel PR as base and append a local
|
||||
MACHINE_KERNEL_PR_append = "c"
|
||||
MACHINE_KERNEL_PR_append = "d"
|
||||
PR = "${MACHINE_KERNEL_PR}"
|
||||
|
||||
module_auto_load_uio-module-drv = "uio-module-drv"
|
||||
|
||||
@@ -32,3 +32,4 @@ FILES_${PN}-fw += "${base_libdir}/firmware/${DSPAPP}"
|
||||
INSANE_SKIP_${PN}-fw = "arch"
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_SYSROOT_STRIP = "1"
|
||||
|
||||
@@ -18,7 +18,7 @@ SRC_URI = "git://git.ti.com/vpe_tests/vpe_tests.git;protocol=git;branch=${BRANCH
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
FLOATABI = "${@base_contains("TUNE_FEATURES", "vfp", base_contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
|
||||
FLOATABI = "${@bb.utils.contains("TUNE_FEATURES", "vfp", bb.utils.contains("TUNE_FEATURES", "callconvention-hard", " -mfloat-abi=hard", " -mfloat-abi=softfp", d), "" ,d)}"
|
||||
|
||||
# The test application needs additional include headers from the kernel
|
||||
EXTRA_OEMAKE = 'CROSS_COMPILE="${TARGET_PREFIX}" CC="${TARGET_PREFIX}gcc ${FLOATABI}" KDIR="${STAGING_KERNEL_DIR}/include/uapi -I${STAGING_KERNEL_DIR}/include"'
|
||||
|
||||
3
recipes-core/udev/eudev/firmware.rules
Normal file
3
recipes-core/udev/eudev/firmware.rules
Normal file
@@ -0,0 +1,3 @@
|
||||
# stub for immediately telling the kernel that userspace firmware loading
|
||||
# failed; necessary to avoid long timeouts with CONFIG_FW_LOADER_USER_HELPER=y
|
||||
SUBSYSTEM=="firmware", ACTION=="add", ATTR{loading}="-1"
|
||||
@@ -1,25 +1,29 @@
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRC_URI_append = " file://omap-tty.rules"
|
||||
SRC_URI_append = " \
|
||||
file://omap-tty.rules \
|
||||
file://firmware.rules \
|
||||
"
|
||||
|
||||
PR_append = ".1"
|
||||
PR_append = ".3"
|
||||
|
||||
install_omap_rules() {
|
||||
install_ti_rules() {
|
||||
install -m 0644 ${WORKDIR}/omap-tty.rules ${D}${sysconfdir}/udev/rules.d/
|
||||
install -m 0644 ${WORKDIR}/firmware.rules ${D}${sysconfdir}/udev/rules.d/
|
||||
}
|
||||
|
||||
do_install_append_ti33x() {
|
||||
install_omap_rules
|
||||
install_ti_rules
|
||||
}
|
||||
|
||||
do_install_append_ti43x() {
|
||||
install_omap_rules
|
||||
install_ti_rules
|
||||
}
|
||||
|
||||
do_install_append_omap-a15() {
|
||||
install_omap_rules
|
||||
install_ti_rules
|
||||
}
|
||||
|
||||
do_install_append_keystone() {
|
||||
install_omap_rules
|
||||
install_ti_rules
|
||||
}
|
||||
|
||||
@@ -1,124 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/usr/sbin
|
||||
|
||||
# Check if an fb device is available. If not then just go ahead and
|
||||
# exit because we have no display.
|
||||
fbset > /dev/null 2>&1
|
||||
if [ "$?" == "1" ]
|
||||
then
|
||||
# looks like there is no display, so let's exit
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
|
||||
YRES="$(fbset | grep geom | awk '{print $3}')"
|
||||
|
||||
CPUTYPE="$(cputype)"
|
||||
|
||||
if [ "$1" = "" ]; then
|
||||
echo PVR-INIT: Please use start, stop, or restart.
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" -o "$1" = "restart" ]; then
|
||||
echo Stopping PVR
|
||||
rmmod bufferclass_ti
|
||||
rmmod omaplfb 2>/dev/null
|
||||
rmmod pvrsrvkm 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Set RGBA ordering to something the drivers like
|
||||
if [ "$BITSPERPIXEL" = "32" ] ; then
|
||||
fbset -rgba 8/16,8/8,8/0,8/24
|
||||
fi
|
||||
|
||||
# Try to enable triple buffering when there's enough VRAM
|
||||
fbset -vyres $(expr $YRES \* 3)
|
||||
|
||||
sgxprepare () {
|
||||
echo Starting PVR
|
||||
insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
echo "Could not find pvrsrvkm driver"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
modprobe omaplfb
|
||||
modprobe bufferclass_ti
|
||||
|
||||
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
|
||||
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`
|
||||
|
||||
if [ -e /dev/pvrsrvkm ] ; then
|
||||
rm -f /dev/pvrsrvkm
|
||||
fi
|
||||
|
||||
mknod /dev/pvrsrvkm c $pvr_maj 0
|
||||
chmod 666 /dev/pvrsrvkm
|
||||
|
||||
touch /etc/powervr-esrev
|
||||
|
||||
SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
|
||||
}
|
||||
|
||||
sgxfinish () {
|
||||
# Fix up a bug in opkg
|
||||
if [ $(readlink /usr/lib/libsrv_um.so) != $(readlink /usr/lib/libsrv_um.so.1) ] ; then
|
||||
cd /usr/lib
|
||||
ln -sf $(readlink /usr/lib/libsrv_um.so.1) libsrv_um.so
|
||||
fi
|
||||
|
||||
if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
|
||||
echo -n "Starting SGX fixup for"
|
||||
echo " ES${ES_REVISION}.x"
|
||||
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
|
||||
cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
|
||||
echo "${ES_REVISION}" > /etc/powervr-esrev
|
||||
fi
|
||||
|
||||
if ! /usr/bin/pvrsrvctl --start --no-module; then return; fi
|
||||
}
|
||||
|
||||
case $CPUTYPE in
|
||||
"OMAP3530")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48004B48 w 0x2 > /dev/null
|
||||
devmem2 0x48004B10 w 0x1 > /dev/null
|
||||
devmem2 0x48004B00 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x50000014 | sed -e s:0x00010205:5: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI33XX")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x44e01104 w 0x0 > /dev/null
|
||||
devmem2 0x44e00904 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI816x")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48180F04 w 0x0 > /dev/null
|
||||
devmem2 0x48180900 w 0x2 > /dev/null
|
||||
devmem2 0x48180920 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:6: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
*)
|
||||
echo No SGX hardware, not starting PVR
|
||||
;;
|
||||
esac
|
||||
@@ -1,136 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/usr/sbin
|
||||
|
||||
# Check if an fb device is available. If not then just go ahead and
|
||||
# exit because we have no display.
|
||||
fbset > /dev/null 2>&1
|
||||
if [ "$?" == "1" ]
|
||||
then
|
||||
# looks like there is no display, so let's exit
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
|
||||
YRES="$(fbset | grep geom | awk '{print $3}')"
|
||||
|
||||
CPUTYPE="$(cputype)"
|
||||
|
||||
if [ "$1" = "" ]; then
|
||||
echo PVR-INIT: Please use start, stop, or restart.
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" -o "$1" = "restart" ]; then
|
||||
echo Stopping PVR
|
||||
|
||||
# Stop the X Server.
|
||||
#
|
||||
[ -f /tmp/.X0-lock ] && read XPID < /tmp/.X0-lock && [ -n "$XPID" ] && kill $XPID && while [ -e /proc/$XPID ] ; do sleep 1; done
|
||||
|
||||
rmmod bufferclass_ti
|
||||
rmmod pvrsrvkm 2>/dev/null
|
||||
rmmod drm 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Set RGBA ordering to something the drivers like
|
||||
if [ "$BITSPERPIXEL" = "32" ] ; then
|
||||
fbset -rgba 8/16,8/8,8/0,8/24
|
||||
fi
|
||||
|
||||
# Try to enable triple buffering when there's enough VRAM
|
||||
fbset -vyres $(expr $YRES \* 3)
|
||||
|
||||
sgxprepare () {
|
||||
echo Starting PVR
|
||||
|
||||
# Start the X Server.
|
||||
# The X Server will load the PVR Services module.
|
||||
#
|
||||
/usr/local/XSGX/bin/X -verbose -config /usr/local/XSGX/etc/xorg.conf &
|
||||
|
||||
modprobe drm
|
||||
|
||||
insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
echo "Could not find pvrsrvkm driver"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
modprobe bufferclass_ti
|
||||
|
||||
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
|
||||
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`
|
||||
|
||||
if [ -e /dev/pvrsrvkm ] ; then
|
||||
rm -f /dev/pvrsrvkm
|
||||
fi
|
||||
|
||||
mknod /dev/pvrsrvkm c $pvr_maj 0
|
||||
chmod 666 /dev/pvrsrvkm
|
||||
|
||||
touch /etc/powervr-esrev
|
||||
|
||||
SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
|
||||
}
|
||||
|
||||
sgxfinish () {
|
||||
# Fix up a bug in opkg
|
||||
if [ $(readlink /usr/lib/libsrv_um.so) != $(readlink /usr/lib/libsrv_um.so.1) ] ; then
|
||||
cd /usr/lib
|
||||
ln -sf $(readlink /usr/lib/libsrv_um.so.1) libsrv_um.so
|
||||
fi
|
||||
|
||||
if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
|
||||
echo -n "Starting SGX fixup for"
|
||||
echo " ES${ES_REVISION}.x"
|
||||
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
|
||||
cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
|
||||
echo "${ES_REVISION}" > /etc/powervr-esrev
|
||||
fi
|
||||
|
||||
if ! /usr/bin/pvrsrvctl --start --no-module; then return; fi
|
||||
}
|
||||
|
||||
case $CPUTYPE in
|
||||
"OMAP3530")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48004B48 w 0x2 > /dev/null
|
||||
devmem2 0x48004B10 w 0x1 > /dev/null
|
||||
devmem2 0x48004B00 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x50000014 | sed -e s:0x00010205:5: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI33XX")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x44e01104 w 0x0 > /dev/null
|
||||
devmem2 0x44e00904 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI816x")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48180F04 w 0x0 > /dev/null
|
||||
devmem2 0x48180900 w 0x2 > /dev/null
|
||||
devmem2 0x48180920 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:6: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
*)
|
||||
echo No SGX hardware, not starting PVR
|
||||
;;
|
||||
esac
|
||||
@@ -1,134 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/usr/sbin
|
||||
|
||||
# Check if an fb device is available. If not then just go ahead and
|
||||
# exit because we have no display.
|
||||
fbset > /dev/null 2>&1
|
||||
if [ "$?" == "1" ]
|
||||
then
|
||||
# looks like there is no display, so let's exit
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
|
||||
YRES="$(fbset | grep geom | awk '{print $3}')"
|
||||
|
||||
CPUTYPE="$(cputype)"
|
||||
|
||||
if [ "$1" = "" ]; then
|
||||
echo PVR-INIT: Please use start, stop, or restart.
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" -o "$1" = "restart" ]; then
|
||||
echo Stopping PVR
|
||||
rmmod bufferclass_ti
|
||||
rmmod omaplfb 2>/dev/null
|
||||
rmmod pvrsrvkm 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Set RGBA ordering to something the drivers like
|
||||
if [ "$BITSPERPIXEL" = "32" ] ; then
|
||||
fbset -rgba 8/16,8/8,8/0,8/24
|
||||
fi
|
||||
|
||||
# Try to enable triple buffering when there's enough VRAM
|
||||
fbset -vyres $(expr $YRES \* 3)
|
||||
|
||||
sgxprepare () {
|
||||
echo Starting PVR
|
||||
|
||||
lsmod | grep pvrsrvkm > /dev/null
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
echo "Could not find pvrsrvkm driver"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
modprobe omaplfb
|
||||
modprobe bufferclass_ti
|
||||
|
||||
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
|
||||
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`
|
||||
|
||||
if [ -e /dev/pvrsrvkm ] ; then
|
||||
rm -f /dev/pvrsrvkm
|
||||
fi
|
||||
|
||||
mknod /dev/pvrsrvkm c $pvr_maj 0
|
||||
chmod 666 /dev/pvrsrvkm
|
||||
|
||||
touch /etc/powervr-esrev
|
||||
|
||||
SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
|
||||
}
|
||||
|
||||
sgxfinish () {
|
||||
# Fix up a bug in opkg
|
||||
if [ $(readlink /usr/lib/libsrv_um.so) != $(readlink /usr/lib/libsrv_um.so.1) ] ; then
|
||||
cd /usr/lib
|
||||
ln -sf $(readlink /usr/lib/libsrv_um.so.1) libsrv_um.so
|
||||
fi
|
||||
|
||||
if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
|
||||
echo -n "Starting SGX fixup for"
|
||||
echo " ES${ES_REVISION}.x"
|
||||
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
|
||||
cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
|
||||
echo "${ES_REVISION}" > /etc/powervr-esrev
|
||||
fi
|
||||
|
||||
if ! /usr/bin/pvrsrvctl --start --no-module; then return; fi
|
||||
}
|
||||
|
||||
case $CPUTYPE in
|
||||
"OMAP3530")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48004B48 w 0x2 > /dev/null
|
||||
devmem2 0x48004B10 w 0x1 > /dev/null
|
||||
devmem2 0x48004B00 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x50000014 | sed -e s:0x00010205:5: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI33XX")
|
||||
sgxprepare
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI43XX")
|
||||
sgxprepare
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI816x")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48180F04 w 0x0 > /dev/null
|
||||
devmem2 0x48180900 w 0x2 > /dev/null
|
||||
devmem2 0x48180920 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:6: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
*)
|
||||
echo No SGX hardware, not starting PVR
|
||||
;;
|
||||
esac
|
||||
@@ -1,145 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/usr/sbin
|
||||
|
||||
# Check if an fb device is available. If not then just go ahead and
|
||||
# exit because we have no display.
|
||||
fbset > /dev/null 2>&1
|
||||
if [ "$?" == "1" ]
|
||||
then
|
||||
# looks like there is no display, so let's exit
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
|
||||
YRES="$(fbset | grep geom | awk '{print $3}')"
|
||||
|
||||
CPUTYPE="$(cputype)"
|
||||
|
||||
if [ "$1" = "" ]; then
|
||||
echo PVR-INIT: Please use start, stop, or restart.
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" -o "$1" = "restart" ]; then
|
||||
echo Stopping PVR
|
||||
|
||||
# Stop the X Server.
|
||||
#
|
||||
[ -f /tmp/.X0-lock ] && read XPID < /tmp/.X0-lock && [ -n "$XPID" ] && kill $XPID && while [ -e /proc/$XPID ] ; do sleep 1; done
|
||||
|
||||
rmmod bufferclass_ti
|
||||
rmmod pvrsrvkm 2>/dev/null
|
||||
rmmod drm 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Set RGBA ordering to something the drivers like
|
||||
if [ "$BITSPERPIXEL" = "32" ] ; then
|
||||
fbset -rgba 8/16,8/8,8/0,8/24
|
||||
fi
|
||||
|
||||
# Try to enable triple buffering when there's enough VRAM
|
||||
fbset -vyres $(expr $YRES \* 3)
|
||||
|
||||
sgxprepare () {
|
||||
echo Starting PVR
|
||||
|
||||
# Start the X Server.
|
||||
# The X Server will load the PVR Services module.
|
||||
#
|
||||
/usr/local/XSGX/bin/X -verbose -config /usr/local/XSGX/etc/xorg.conf &
|
||||
|
||||
modprobe drm
|
||||
|
||||
lsmod | grep pvrsrvkm > /dev/null
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
echo "Could not find pvrsrvkm driver"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
modprobe bufferclass_ti
|
||||
|
||||
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
|
||||
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`
|
||||
|
||||
if [ -e /dev/pvrsrvkm ] ; then
|
||||
rm -f /dev/pvrsrvkm
|
||||
fi
|
||||
|
||||
mknod /dev/pvrsrvkm c $pvr_maj 0
|
||||
chmod 666 /dev/pvrsrvkm
|
||||
|
||||
touch /etc/powervr-esrev
|
||||
|
||||
SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
|
||||
}
|
||||
|
||||
sgxfinish () {
|
||||
# Fix up a bug in opkg
|
||||
if [ $(readlink /usr/lib/libsrv_um.so) != $(readlink /usr/lib/libsrv_um.so.1) ] ; then
|
||||
cd /usr/lib
|
||||
ln -sf $(readlink /usr/lib/libsrv_um.so.1) libsrv_um.so
|
||||
fi
|
||||
|
||||
if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
|
||||
echo -n "Starting SGX fixup for"
|
||||
echo " ES${ES_REVISION}.x"
|
||||
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
|
||||
cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
|
||||
echo "${ES_REVISION}" > /etc/powervr-esrev
|
||||
fi
|
||||
|
||||
if ! /usr/bin/pvrsrvctl --start --no-module; then return; fi
|
||||
}
|
||||
|
||||
case $CPUTYPE in
|
||||
"OMAP3530")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48004B48 w 0x2 > /dev/null
|
||||
devmem2 0x48004B10 w 0x1 > /dev/null
|
||||
devmem2 0x48004B00 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x50000014 | sed -e s:0x00010205:5: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI33XX")
|
||||
sgxprepare
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI43XX")
|
||||
sgxprepare
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI816x")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48180F04 w 0x0 > /dev/null
|
||||
devmem2 0x48180900 w 0x2 > /dev/null
|
||||
devmem2 0x48180920 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:6: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
*)
|
||||
echo No SGX hardware, not starting PVR
|
||||
;;
|
||||
esac
|
||||
@@ -1,134 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/usr/sbin
|
||||
|
||||
# Check if an fb device is available. If not then just go ahead and
|
||||
# exit because we have no display.
|
||||
fbset > /dev/null 2>&1
|
||||
if [ "$?" == "1" ]
|
||||
then
|
||||
# looks like there is no display, so let's exit
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
|
||||
YRES="$(fbset | grep geom | awk '{print $3}')"
|
||||
|
||||
CPUTYPE="$(cputype)"
|
||||
|
||||
if [ "$1" = "" ]; then
|
||||
echo PVR-INIT: Please use start, stop, or restart.
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" -o "$1" = "restart" ]; then
|
||||
echo Stopping PVR
|
||||
rmmod bufferclass_ti
|
||||
rmmod omaplfb 2>/dev/null
|
||||
rmmod pvrsrvkm 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Set RGBA ordering to something the drivers like
|
||||
if [ "$BITSPERPIXEL" = "32" ] ; then
|
||||
fbset -rgba 8/16,8/8,8/0,8/24
|
||||
fi
|
||||
|
||||
# Try to enable triple buffering when there's enough VRAM
|
||||
fbset -vyres $(expr $YRES \* 3)
|
||||
|
||||
sgxprepare () {
|
||||
echo Starting PVR
|
||||
|
||||
lsmod | grep pvrsrvkm > /dev/null
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
echo "Could not find pvrsrvkm driver"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
modprobe omaplfb
|
||||
modprobe bufferclass_ti
|
||||
|
||||
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
|
||||
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`
|
||||
|
||||
if [ -e /dev/pvrsrvkm ] ; then
|
||||
rm -f /dev/pvrsrvkm
|
||||
fi
|
||||
|
||||
mknod /dev/pvrsrvkm c $pvr_maj 0
|
||||
chmod 666 /dev/pvrsrvkm
|
||||
|
||||
touch /etc/powervr-esrev
|
||||
|
||||
SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
|
||||
}
|
||||
|
||||
sgxfinish () {
|
||||
# Fix up a bug in opkg
|
||||
if [ $(readlink /usr/lib/libsrv_um.so) != $(readlink /usr/lib/libsrv_um.so.1) ] ; then
|
||||
cd /usr/lib
|
||||
ln -sf $(readlink /usr/lib/libsrv_um.so.1) libsrv_um.so
|
||||
fi
|
||||
|
||||
if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
|
||||
echo -n "Starting SGX fixup for"
|
||||
echo " ES${ES_REVISION}.x"
|
||||
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
|
||||
cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
|
||||
echo "${ES_REVISION}" > /etc/powervr-esrev
|
||||
fi
|
||||
|
||||
if ! /usr/bin/pvrsrvctl --start --no-module; then return; fi
|
||||
}
|
||||
|
||||
case $CPUTYPE in
|
||||
"OMAP3530")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48004B48 w 0x2 > /dev/null
|
||||
devmem2 0x48004B10 w 0x1 > /dev/null
|
||||
devmem2 0x48004B00 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x50000014 | sed -e s:0x00010205:5: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI33XX")
|
||||
sgxprepare
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI43XX")
|
||||
sgxprepare
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI816x")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48180F04 w 0x0 > /dev/null
|
||||
devmem2 0x48180900 w 0x2 > /dev/null
|
||||
devmem2 0x48180920 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:6: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
*)
|
||||
echo No SGX hardware, not starting PVR
|
||||
;;
|
||||
esac
|
||||
@@ -1,145 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/usr/sbin
|
||||
|
||||
# Check if an fb device is available. If not then just go ahead and
|
||||
# exit because we have no display.
|
||||
fbset > /dev/null 2>&1
|
||||
if [ "$?" == "1" ]
|
||||
then
|
||||
# looks like there is no display, so let's exit
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
|
||||
YRES="$(fbset | grep geom | awk '{print $3}')"
|
||||
|
||||
CPUTYPE="$(cputype)"
|
||||
|
||||
if [ "$1" = "" ]; then
|
||||
echo PVR-INIT: Please use start, stop, or restart.
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" -o "$1" = "restart" ]; then
|
||||
echo Stopping PVR
|
||||
|
||||
# Stop the X Server.
|
||||
#
|
||||
[ -f /tmp/.X0-lock ] && read XPID < /tmp/.X0-lock && [ -n "$XPID" ] && kill $XPID && while [ -e /proc/$XPID ] ; do sleep 1; done
|
||||
|
||||
rmmod bufferclass_ti
|
||||
rmmod pvrsrvkm 2>/dev/null
|
||||
rmmod drm 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Set RGBA ordering to something the drivers like
|
||||
if [ "$BITSPERPIXEL" = "32" ] ; then
|
||||
fbset -rgba 8/16,8/8,8/0,8/24
|
||||
fi
|
||||
|
||||
# Try to enable triple buffering when there's enough VRAM
|
||||
fbset -vyres $(expr $YRES \* 3)
|
||||
|
||||
sgxprepare () {
|
||||
echo Starting PVR
|
||||
|
||||
# Start the X Server.
|
||||
# The X Server will load the PVR Services module.
|
||||
#
|
||||
/usr/local/XSGX/bin/X -verbose -config /usr/local/XSGX/etc/xorg.conf &
|
||||
|
||||
modprobe drm
|
||||
|
||||
lsmod | grep pvrsrvkm > /dev/null
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
echo "Could not find pvrsrvkm driver"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
modprobe bufferclass_ti
|
||||
|
||||
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
|
||||
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`
|
||||
|
||||
if [ -e /dev/pvrsrvkm ] ; then
|
||||
rm -f /dev/pvrsrvkm
|
||||
fi
|
||||
|
||||
mknod /dev/pvrsrvkm c $pvr_maj 0
|
||||
chmod 666 /dev/pvrsrvkm
|
||||
|
||||
touch /etc/powervr-esrev
|
||||
|
||||
SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
|
||||
}
|
||||
|
||||
sgxfinish () {
|
||||
# Fix up a bug in opkg
|
||||
if [ $(readlink /usr/lib/libsrv_um.so) != $(readlink /usr/lib/libsrv_um.so.1) ] ; then
|
||||
cd /usr/lib
|
||||
ln -sf $(readlink /usr/lib/libsrv_um.so.1) libsrv_um.so
|
||||
fi
|
||||
|
||||
if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
|
||||
echo -n "Starting SGX fixup for"
|
||||
echo " ES${ES_REVISION}.x"
|
||||
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
|
||||
cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
|
||||
echo "${ES_REVISION}" > /etc/powervr-esrev
|
||||
fi
|
||||
|
||||
if ! /usr/bin/pvrsrvctl --start --no-module; then return; fi
|
||||
}
|
||||
|
||||
case $CPUTYPE in
|
||||
"OMAP3530")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48004B48 w 0x2 > /dev/null
|
||||
devmem2 0x48004B10 w 0x1 > /dev/null
|
||||
devmem2 0x48004B00 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x50000014 | sed -e s:0x00010205:5: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI33XX")
|
||||
sgxprepare
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI43XX")
|
||||
sgxprepare
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI816x")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48180F04 w 0x0 > /dev/null
|
||||
devmem2 0x48180900 w 0x2 > /dev/null
|
||||
devmem2 0x48180920 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:6: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
*)
|
||||
echo No SGX hardware, not starting PVR
|
||||
;;
|
||||
esac
|
||||
@@ -1,341 +0,0 @@
|
||||
DESCRIPTION = "libGLES for the omap3"
|
||||
LICENSE = "proprietary-binary"
|
||||
# 'TSPA.txt' might not be the best file to md5sum
|
||||
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"
|
||||
|
||||
INC_PR = "r38"
|
||||
|
||||
EXCLUDE_FROM_WORLD = "1"
|
||||
|
||||
COMPATIBLE_MACHINE = "(omap3|ti814x|ti816x|ti33x|ti43x)"
|
||||
|
||||
PVR_INIT ?= "pvrsrvinit"
|
||||
|
||||
PROVIDES += "virtual/egl virtual/libgles1 virtual/libgles2"
|
||||
|
||||
RREPLACES_${PN} = "libegl libgles1 libgles2"
|
||||
RREPLACES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev"
|
||||
RREPLACES_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg"
|
||||
|
||||
RPROVIDES_${PN} = "libegl libgles1 libgles2"
|
||||
RPROVIDES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev"
|
||||
RPROVIDES_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg"
|
||||
|
||||
RCONFLICTS_${PN} = "libegl libgles1 libgles2"
|
||||
RCONFLICTS_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev"
|
||||
RCONFLICTS_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE} \
|
||||
file://cputype \
|
||||
file://rc.pvr \
|
||||
file://99-bufferclass.rules \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/OMAP35x_Graphics_SDK_${SGXPV}"
|
||||
|
||||
# Logic to unpack installjammer file
|
||||
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
|
||||
require ../../recipes-ti/includes/ti-eula-unpack.inc
|
||||
|
||||
export BINLOCATION ?= "${S}/gfx_rel"
|
||||
export ES3LOCATION ?= "${S}/gfx_rel_es3.x"
|
||||
export ES5LOCATION ?= "${S}/gfx_rel_es5.x"
|
||||
export ES6LOCATION ?= "${S}/gfx_rel_es6.x"
|
||||
export ES8LOCATION ?= "${S}/gfx_rel_es8.x"
|
||||
export ES9LOCATION ?= "${S}/gfx_rel_es9.x"
|
||||
|
||||
LIBGLESWINDOWSYSTEM ?= "libpvrPVR2D_FRONTWSEGL.so.1"
|
||||
|
||||
do_configure() {
|
||||
# Attempt to fix up the worst offenders for file permissions
|
||||
for i in $(find ${S} -name "*.h") $(find ${S} -name "*.c") $(find ${S} -name "Make*") ; do
|
||||
chmod 0644 $i
|
||||
done
|
||||
|
||||
# Attempt to create proper library softlinks
|
||||
for sofile in $(find ${S} -name "lib*Open*.so") $(find ${S} -name "lib*srv*.so") $(find ${S} -name "lib*gl*.so") $(find ${S} -name "libpvr*.so") $(find ${S} -name "lib*GL*.so"); do
|
||||
if [ "$(readlink -n ${sofile})" = "" ] ; then
|
||||
mv $sofile ${sofile}.${IMGPV}
|
||||
ln -sf $(basename ${sofile}.${IMGPV}) ${sofile}
|
||||
ln -sf $(basename ${sofile}.${IMGPV}) ${sofile}$(echo ${IMGPV} | awk -F. '{print "." $1}')
|
||||
ln -sf $(basename ${sofile}.${IMGPV}) ${sofile}$(echo ${IMGPV} | awk -F. '{print "." $1 "." $2}')
|
||||
fi
|
||||
done
|
||||
|
||||
# Due to recursive make PLAT_* isn't always passed down correctly, so use sed to fix those
|
||||
for mak in $(find ${S} -name "*.mak") ; do
|
||||
sed -i -e s:arm-none-linux-gnueabi-:${TARGET_PREFIX}:g $mak
|
||||
done
|
||||
|
||||
# clear out old stuff
|
||||
find Binaries/ | xargs rm -f || true
|
||||
}
|
||||
|
||||
# Force in GNU_HASH and paths to libs
|
||||
TARGET_CC_ARCH += " ${TARGET_LINK_HASH_STYLE} -Wl,-rpath-link,${BINLOCATION} -L${BINLOCATION} \
|
||||
-L${STAGING_DIR_TARGET}${libdir} -Wl,-rpath-link,${STAGING_DIR_TARGET}${libdir}"
|
||||
PARALLEL_MAKE = ""
|
||||
|
||||
PLATFORM ?= "LinuxOMAP3"
|
||||
|
||||
do_compile() {
|
||||
export TOOLCHAIN="${TOOLCHAIN_PATH}"
|
||||
export PLAT_CC="${CC}"
|
||||
export PLAT_CPP="${CXX}"
|
||||
export PLAR_AR="${AR}"
|
||||
|
||||
mkdir -p ${S}/demos/raw
|
||||
mkdir -p ${S}/trainingcourses/raw
|
||||
|
||||
# Rebuild demos
|
||||
for demo in ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Demos/* ; do
|
||||
cd $demo/OGLES/Build/LinuxGeneric
|
||||
oe_runmake Common=1 PLATFORM=${PLATFORM} X11BUILD=0
|
||||
rm $demo/OGLES/Build/${PLATFORM}/Release*/*.o
|
||||
|
||||
install -m 0755 $demo/OGLES/Build/${PLATFORM}/ReleaseRaw/* ${S}/demos/raw || true
|
||||
done
|
||||
|
||||
for demo in ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Demos/* ; do
|
||||
cd $demo/OGLES2/Build/LinuxGeneric
|
||||
oe_runmake Common=1 PLATFORM=${PLATFORM} X11BUILD=0
|
||||
rm -f $demo/OGLES2/Build/${PLATFORM}/Release*/*.o
|
||||
|
||||
install -m 0755 $demo/OGLES2/Build/${PLATFORM}/ReleaseRaw/* ${S}/demos/raw || true
|
||||
done
|
||||
|
||||
find ${S} -name "*_org" -delete
|
||||
|
||||
# Build OGLES2 Trainingcourses
|
||||
for training in ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/TrainingCourse/* ; do
|
||||
if [ -e $training/OGLES2/Build/LinuxGeneric/Makefile ] ; then
|
||||
cd $training/OGLES2/Build/LinuxGeneric
|
||||
fi
|
||||
|
||||
if [ -e $training/OGLES2/Build/${PLATFORM}/Makefile ] ; then
|
||||
cd $training/OGLES2/Build/${PLATFORM}
|
||||
fi
|
||||
|
||||
oe_runmake Common=1 PLATFORM=${PLATFORM} X11BUILD=0
|
||||
rm -f $training/OGLES2/Build/${PLATFORM}/Release*/*.o
|
||||
|
||||
install -m 0755 $training/OGLES2/Build/${PLATFORM}/ReleaseRaw/* ${S}/trainingcourses/raw || true
|
||||
done
|
||||
|
||||
}
|
||||
|
||||
do_install () {
|
||||
install -d ${D}${libdir}
|
||||
cp -pPR ${BINLOCATION}/*.so* ${D}${libdir}
|
||||
rm ${D}${libdir}/libpvrPVR2D_DRIWSEGL.so*
|
||||
rm ${D}${libdir}/libsrv_um_dri.so*
|
||||
rm ${D}${libdir}/pvr_drv.so*
|
||||
|
||||
install -m 0644 ${BINLOCATION}/*.a ${D}${libdir}
|
||||
|
||||
install -d ${D}${bindir}/
|
||||
install -m 0755 ${WORKDIR}/cputype ${D}${bindir}/
|
||||
|
||||
install -m 0755 ${BINLOCATION}/*_test ${D}${bindir}/
|
||||
install -m 0755 ${BINLOCATION}/gl* ${D}${bindir}/
|
||||
install -m 0755 ${BINLOCATION}/${PVR_INIT} ${D}${bindir}/
|
||||
|
||||
install -d ${D}${includedir}
|
||||
cp -pPR ${S}/GFX_Linux_KM/include4 ${D}${includedir}/
|
||||
cp -pPR ${S}/GFX_Linux_KM/services4 ${D}${includedir}/
|
||||
|
||||
cp -pPr ${S}/include/pvr2d/*.h ${D}${includedir}
|
||||
cp -pPr ${S}/include/OGLES2/* ${D}${includedir}/
|
||||
cp -pPr ${S}/include/wsegl/*.h ${D}${includedir}/
|
||||
|
||||
install -d ${D}${sysconfdir}/init.d/
|
||||
cp -pP ${WORKDIR}/rc.pvr ${D}${sysconfdir}/init.d/pvr-init
|
||||
chmod +x ${D}${sysconfdir}/init.d/pvr-init
|
||||
|
||||
install -d ${D}${sysconfdir}
|
||||
echo "[default]" > ${D}${sysconfdir}/powervr.ini
|
||||
echo "WindowSystem=${LIBGLESWINDOWSYSTEM}" >> ${D}${sysconfdir}/powervr.ini
|
||||
|
||||
#Create different folders for ease of installing into different platforms with different display drivers/ SGX core
|
||||
|
||||
shared_prog="eglinfo pvr2d_test ${PVR_INIT} services_test sgx_blit_test sgx_clipblit_test sgx_flip_test sgx_init_test sgx_render_flip_test"
|
||||
raw_prog="gles1test1 gles2test1"
|
||||
|
||||
for esrev in 3 5 6 8 9 ; do
|
||||
ESLOCATION=$(eval echo $(echo \$\{ES${esrev}LOCATION\}))
|
||||
if [ -e ${ESLOCATION} ] ; then
|
||||
install -d ${D}${libdir}/ES${esrev}.0
|
||||
install -d ${D}${bindir}/ES${esrev}.0
|
||||
cp -pPR ${ESLOCATION}/lib*${IMGPV} ${ESLOCATION}/pvr_drv.so ${ESLOCATION}/*.a ${D}${libdir}/ES${esrev}.0/
|
||||
for esprog in $shared_prog $raw_prog ; do
|
||||
install -m 0755 ${ESLOCATION}/$esprog ${D}${bindir}/ES${esrev}.0/ 2>/dev/null || true
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
rm ${D}${bindir}/ES*/*.h ${D}${bindir}/ES*/pdsasm ${D}${bindir}/pdsasm -f || true
|
||||
|
||||
install -d ${D}${bindir}/SGX/demos/Raw/
|
||||
install -m 0755 ${S}/demos/raw/* ${D}${bindir}/SGX/demos/Raw/
|
||||
install -d ${D}${bindir}/SGX/trainingcourses/Raw 2>/dev/null || true
|
||||
install -m 0755 ${S}/trainingcourses/raw/* ${D}${bindir}/SGX/trainingcourses/Raw/ 2>/dev/null || true
|
||||
|
||||
|
||||
# Delete objects and linker scripts hidden between the headers
|
||||
find ${D} -name "*.o" -delete
|
||||
find ${D} -name "*.o.cmd" -delete
|
||||
|
||||
install -d ${D}${sysconfdir}/udev/rules.d
|
||||
install -m 0644 ${WORKDIR}/99-bufferclass.rules ${D}${sysconfdir}/udev/rules.d/
|
||||
|
||||
touch ${D}${libdir}/ES5.0/ld-linux.so.3
|
||||
touch ${D}${libdir}/ES5.0/ld-linux.so.3\(GLIBC_2.4\)
|
||||
cp -pPR ${S}/gfx_rel_es5.x/libews.so ${D}${libdir}/ES5.0/
|
||||
}
|
||||
|
||||
PACKAGES =+ "${PN}-rawdemos ${PN}-rawtrainingcourses ${PN}-tests"
|
||||
# Package the base libraries per silicon revision
|
||||
PACKAGES =+ "${PN}-es3 ${PN}-es5 ${PN}-es6 ${PN}-es8 ${PN}-es9"
|
||||
RRECOMMENDS_${PN} += "${PN}-es3 ${PN}-es5 ${PN}-es6 ${PN}-es8 ${PN}-es9"
|
||||
FILES_${PN}-es3 = "${libdir}/ES3*/* ${bindir}/ES3*/*"
|
||||
FILES_${PN}-es5 = "${libdir}/ES5*/* ${bindir}/ES5*/*"
|
||||
FILES_${PN}-es6 = "${libdir}/ES6*/* ${bindir}/ES6*/*"
|
||||
FILES_${PN}-es8 = "${libdir}/ES8*/* ${bindir}/ES8*/*"
|
||||
FILES_${PN}-es9 = "${libdir}/ES9*/* ${bindir}/ES9*/*"
|
||||
|
||||
# Stop shlib code from picking a subpackage
|
||||
PRIVATE_LIBS_${PN}-es3 = "libGLESv2.so libIMGegl.so libsrv_um.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es5 = "libGLESv2.so libIMGegl.so libsrv_um.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es6 = "libGLESv2.so libIMGegl.so libsrv_um.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es8 = "libGLESv2.so libIMGegl.so libsrv_um.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es9 = "libGLESv2.so libIMGegl.so libsrv_um.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libglslcompiler.so libGLES_CM.so"
|
||||
|
||||
|
||||
RPROVIDES_${PN} += "libGLESv2.so libEGL.so libGLES_CM.so libpvr2d.so libIMGegl.so libsrv_init.so libsrv_um.so libsrv_um_dri.so libglslcompiler.so"
|
||||
RPROVIDES_${PN}-es5 += "ld-linux.so.3 ld-linux.so.3(GLIBC_2.4) libews.so"
|
||||
|
||||
PACKAGES =+ "${PN}-blitwsegl ${PN}-flipwsegl ${PN}-frontwsegl ${PN}-linuxfbwsegl"
|
||||
FILES_${PN}-blitwsegl = "${libdir}/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl = "${libdir}/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl = "${libdir}/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl = "${libdir}/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
|
||||
PACKAGES =+ "${PN}-blitwsegl-es3 ${PN}-blitwsegl-es5 ${PN}-blitwsegl-es6 ${PN}-blitwsegl-es8 ${PN}-blitwsegl-es9 ${PN}-flipwsegl-es3 ${PN}-flipwsegl-es5 ${PN}-flipwsegl-es6 ${PN}-flipwsegl-es8 ${PN}-flipwsegl-es9 ${PN}-frontwsegl-es3 ${PN}-frontwsegl-es5 ${PN}-frontwsegl-es6 ${PN}-frontwsegl-es8 ${PN}-frontwsegl-es9 ${PN}-linuxfbwsegl-es3 ${PN}-linuxfbwsegl-es5 ${PN}-linuxfbwsegl-es6 ${PN}-linuxfbwsegl-es8 ${PN}-linuxfbwsegl-es9"
|
||||
|
||||
FILES_${PN}-blitwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-blitwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-blitwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-blitwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-blitwsegl-es9 = "${libdir}/ES9*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
RRECOMMENDS_${PN}-blitwsegl = " ${PN}-blitwsegl-es3 ${PN}-blitwsegl-es5 ${PN}-blitwsegl-es6 ${PN}-blitwsegl-es8 ${PN}-blitwsegl-es9"
|
||||
|
||||
FILES_${PN}-flipwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl-es9 = "${libdir}/ES9*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
RRECOMMENDS_${PN}-flipwsegl = " ${PN}-flipwsegl-es3 ${PN}-flipwsegl-es5 ${PN}-flipwsegl-es6 ${PN}-flipwsegl-es8 ${PN}-flipwsegl-es9"
|
||||
|
||||
FILES_${PN}-frontwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl-es9 = "${libdir}/ES9*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
RRECOMMENDS_${PN}-frontwsegl = " ${PN}-frontwsegl-es3 ${PN}-frontwsegl-es5 ${PN}-frontwsegl-es6 ${PN}-frontwsegl-es8 ${PN}-frontwsegl-es9"
|
||||
|
||||
FILES_${PN}-linuxfbwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl-es9 = "${libdir}/ES9*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
RRECOMMENDS_${PN}-linuxfbwsegl = " ${PN}-linuxfbwsegl-es3 ${PN}-linuxfbwsegl-es5 ${PN}-linuxfbwsegl-es6 ${PN}-linuxfbwsegl-es8 ${PN}-linuxfbwsegl-es9"
|
||||
|
||||
CONFFILES_${PN} = "${sysconfdir}/powervr.ini"
|
||||
|
||||
FILES_${PN} = "${sysconfdir} ${libdir}/*.so* ${bindir}/${PVR_INIT} ${bindir}/cputype ${bindir}/*"
|
||||
|
||||
FILES_${PN}-tests = "${bindir}/*test*"
|
||||
FILES_${PN}-dbg = "${libdir}/.debug/* ${bindir}/.debug/* \
|
||||
${libdir}/ES*/.debug ${bindir}/*/.debug\
|
||||
${bindir}/SGX/demos/*/.debug/* \
|
||||
${bindir}/SGX/trainingcourses/*/.debug/* \
|
||||
"
|
||||
|
||||
FILES_${PN}-rawdemos = "${bindir}/SGX/demos/Raw/*"
|
||||
|
||||
FILES_${PN}-rawtrainingcourses = "${bindir}/SGX/trainingcourses/Raw/*"
|
||||
|
||||
# The libs need the kernel-modules
|
||||
RRECOMMENDS_${PN} += "omap3-sgx-modules"
|
||||
|
||||
# The initscript calls fbset, cputype calls devmem2
|
||||
RDEPENDS_${PN} += "fbset devmem2"
|
||||
|
||||
#HACK! These are binaries, so we can't guarantee that LDFLAGS match :(
|
||||
INSANE_SKIP_${PN} = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-es3 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es5 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es6 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es8 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es9 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-rawdemos = "ldflags dev-so useless-rpaths already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl-es3 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl-es5 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl-es6 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl-es8 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl-es9 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl-es3 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl-es5 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl-es6 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl-es8 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl-es9 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl-es3 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl-es5 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl-es6 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl-es8 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl-es9 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl-es3 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl-es5 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl-es6 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl-es8 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl-es9 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-tests = "ldflags already-stripped"
|
||||
|
||||
# Quality control is really poor on these SDKs, so hack around the latest madness:
|
||||
FILES_${PN} += "${libdir}/*.so "
|
||||
FILES_${PN}-dev = "${includedir}"
|
||||
|
||||
inherit update-rc.d
|
||||
|
||||
INITSCRIPT_NAME = "pvr-init"
|
||||
INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."
|
||||
|
||||
# Append to update-rc.d postinst
|
||||
pkg_postinst_${PN}_append() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-blitwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-flipwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-frontwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
pkg_postinst_${PN}-linuxfbwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-es5() {
|
||||
rm -f $D${libdir}/ES5.0/ld-linux.so.3*
|
||||
rm -f $D${libdir}/ES5.0/libews.so
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
# Give everyone access to bufferclass nodes and make a compatibility symlink for the first one
|
||||
SUBSYSTEM=="bccat", MODE="0666"
|
||||
KERNEL=="bccat0", SYMLINK+="bc_cat", MODE="0666"
|
||||
|
||||
# Give everyone access to v4l nodes
|
||||
SUBSYSTEM=="video4linux", MODE="0666"
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
machine_id() { # return the machine ID
|
||||
awk 'BEGIN { FS=": " } /Hardware/ \
|
||||
{ gsub(" ", "_", $2); print tolower($2) } ' </proc/cpuinfo
|
||||
}
|
||||
|
||||
if [ "$(machine_id)" = "ti8168evm" ] ; then
|
||||
echo TI816x
|
||||
elif [ "$(machine_id)" = "am335xevm" ] ; then
|
||||
echo TI33XX
|
||||
else
|
||||
devmem2 0x4800244c | \
|
||||
grep 'Read at address' | \
|
||||
sed -e 's/.*): //' | \
|
||||
sed -e 's/0x00005C00/OMAP3503/' -e 's/0x00001C00/OMAP3515/' -e 's/0x00004C00/OMAP3525/' -e 's/0x00000C00/OMAP3530/' -e 's/0x00005E00/OMAP3503/' -e 's/0x00001E00/OMAP3515/' -e 's/0x00004E00/OMAP3525/' -e 's/0x00000E00/OMAP3530/' -e 's/0x00000CC0/OMAP3530/'
|
||||
fi
|
||||
@@ -1,125 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/usr/sbin
|
||||
|
||||
# Check if an fb device is available. If not then just go ahead and
|
||||
# exit because we have no display.
|
||||
fbset > /dev/null 2>&1
|
||||
if [ "$?" == "1" ]
|
||||
then
|
||||
# looks like there is no display, so let's exit
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
|
||||
YRES="$(fbset | grep geom | awk '{print $3}')"
|
||||
|
||||
CPUTYPE="$(cputype)"
|
||||
|
||||
if [ "$1" = "" ]; then
|
||||
echo PVR-INIT: Please use start, stop, or restart.
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" -o "$1" = "restart" ]; then
|
||||
echo Stopping PVR
|
||||
rmmod bufferclass_ti
|
||||
rmmod omaplfb 2>/dev/null
|
||||
rmmod pvrsrvkm 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Set RGBA ordering to something the drivers like
|
||||
if [ "$BITSPERPIXEL" = "32" ] ; then
|
||||
fbset -rgba 8/16,8/8,8/0,8/24
|
||||
fi
|
||||
|
||||
# Try to enable triple buffering when there's enough VRAM
|
||||
fbset -vyres $(expr $YRES \* 3)
|
||||
|
||||
sgxprepare () {
|
||||
echo Starting PVR
|
||||
insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
echo "Could not find pvrsrvkm driver"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
modprobe omaplfb
|
||||
modprobe bufferclass_ti
|
||||
|
||||
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
|
||||
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`
|
||||
|
||||
if [ -e /dev/pvrsrvkm ] ; then
|
||||
rm -f /dev/pvrsrvkm
|
||||
fi
|
||||
|
||||
mknod /dev/pvrsrvkm c $pvr_maj 0
|
||||
chmod 666 /dev/pvrsrvkm
|
||||
|
||||
touch /etc/powervr-esrev
|
||||
|
||||
SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
|
||||
}
|
||||
|
||||
sgxfinish () {
|
||||
# Fix up a bug in opkg
|
||||
if [ $(readlink /usr/lib/libsrv_um.so) != $(readlink /usr/lib/libsrv_um.so.1) ] ; then
|
||||
cd /usr/lib
|
||||
ln -sf $(readlink /usr/lib/libsrv_um.so.1) libsrv_um.so
|
||||
fi
|
||||
|
||||
if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
|
||||
echo -n "Starting SGX fixup for"
|
||||
echo " ES${ES_REVISION}.x"
|
||||
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
|
||||
cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
|
||||
echo "${ES_REVISION}" > /etc/powervr-esrev
|
||||
fi
|
||||
|
||||
if ! /usr/bin/pvrsrvctl --start --no-module; then return; fi
|
||||
}
|
||||
|
||||
case $CPUTYPE in
|
||||
"OMAP3530")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48004B48 w 0x2 > /dev/null
|
||||
devmem2 0x48004B10 w 0x1 > /dev/null
|
||||
devmem2 0x48004B00 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x50000014 | sed -e s:0x00010205:5: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI33XX")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x44e01104 w 0x0 > /dev/null
|
||||
devmem2 0x44e00904 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI816x")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48180F04 w 0x0 > /dev/null
|
||||
devmem2 0x48180900 w 0x2 > /dev/null
|
||||
devmem2 0x48180920 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:6: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
*)
|
||||
echo No SGX hardware, not starting PVR
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -1,137 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/usr/sbin
|
||||
|
||||
# Check if an fb device is available. If not then just go ahead and
|
||||
# exit because we have no display.
|
||||
fbset > /dev/null 2>&1
|
||||
if [ "$?" == "1" ]
|
||||
then
|
||||
# looks like there is no display, so let's exit
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
|
||||
YRES="$(fbset | grep geom | awk '{print $3}')"
|
||||
|
||||
CPUTYPE="$(cputype)"
|
||||
|
||||
if [ "$1" = "" ]; then
|
||||
echo PVR-INIT: Please use start, stop, or restart.
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" -o "$1" = "restart" ]; then
|
||||
echo Stopping PVR
|
||||
|
||||
# Stop the X Server.
|
||||
#
|
||||
[ -f /tmp/.X0-lock ] && read XPID < /tmp/.X0-lock && [ -n "$XPID" ] && kill $XPID && while [ -e /proc/$XPID ] ; do sleep 1; done
|
||||
|
||||
rmmod bufferclass_ti
|
||||
rmmod pvrsrvkm 2>/dev/null
|
||||
rmmod drm 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Set RGBA ordering to something the drivers like
|
||||
if [ "$BITSPERPIXEL" = "32" ] ; then
|
||||
fbset -rgba 8/16,8/8,8/0,8/24
|
||||
fi
|
||||
|
||||
# Try to enable triple buffering when there's enough VRAM
|
||||
fbset -vyres $(expr $YRES \* 3)
|
||||
|
||||
sgxprepare () {
|
||||
echo Starting PVR
|
||||
|
||||
# Start the X Server.
|
||||
# The X Server will load the PVR Services module.
|
||||
#
|
||||
/usr/local/XSGX/bin/X -verbose -config /usr/local/XSGX/etc/xorg.conf &
|
||||
|
||||
modprobe drm
|
||||
|
||||
insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
echo "Could not find pvrsrvkm driver"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
modprobe bufferclass_ti
|
||||
|
||||
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
|
||||
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`
|
||||
|
||||
if [ -e /dev/pvrsrvkm ] ; then
|
||||
rm -f /dev/pvrsrvkm
|
||||
fi
|
||||
|
||||
mknod /dev/pvrsrvkm c $pvr_maj 0
|
||||
chmod 666 /dev/pvrsrvkm
|
||||
|
||||
touch /etc/powervr-esrev
|
||||
|
||||
SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
|
||||
}
|
||||
|
||||
sgxfinish () {
|
||||
# Fix up a bug in opkg
|
||||
if [ $(readlink /usr/lib/libsrv_um.so) != $(readlink /usr/lib/libsrv_um.so.1) ] ; then
|
||||
cd /usr/lib
|
||||
ln -sf $(readlink /usr/lib/libsrv_um.so.1) libsrv_um.so
|
||||
fi
|
||||
|
||||
if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
|
||||
echo -n "Starting SGX fixup for"
|
||||
echo " ES${ES_REVISION}.x"
|
||||
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
|
||||
cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
|
||||
echo "${ES_REVISION}" > /etc/powervr-esrev
|
||||
fi
|
||||
|
||||
if ! /usr/bin/pvrsrvctl --start --no-module; then return; fi
|
||||
}
|
||||
|
||||
case $CPUTYPE in
|
||||
"OMAP3530")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48004B48 w 0x2 > /dev/null
|
||||
devmem2 0x48004B10 w 0x1 > /dev/null
|
||||
devmem2 0x48004B00 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x50000014 | sed -e s:0x00010205:5: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI33XX")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x44e01104 w 0x0 > /dev/null
|
||||
devmem2 0x44e00904 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI816x")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48180F04 w 0x0 > /dev/null
|
||||
devmem2 0x48180900 w 0x2 > /dev/null
|
||||
devmem2 0x48180920 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:6: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
*)
|
||||
echo No SGX hardware, not starting PVR
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Name=NAME Demo
|
||||
Comment=OGLES Demo
|
||||
Exec=EXEC
|
||||
Icon=star
|
||||
Type=Application
|
||||
Categories=Graphics;
|
||||
|
||||
@@ -1,333 +0,0 @@
|
||||
DESCRIPTION = "libGLES for the omap3 (X11)"
|
||||
LICENSE = "proprietary-binary"
|
||||
# 'TSPA.txt' might not be the best file to md5sum
|
||||
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"
|
||||
|
||||
INC_PR = "r38"
|
||||
|
||||
EXCLUDE_FROM_WORLD = "1"
|
||||
|
||||
COMPATIBLE_MACHINE = "(omap3|ti814x|ti816x|ti33x|ti43x)"
|
||||
|
||||
DEPENDS = "virtual/libx11 libxau libxdmcp libdrm"
|
||||
|
||||
export SUPPORT_XORG ?= "1"
|
||||
PVR_INIT ?= "pvrsrvinit"
|
||||
|
||||
PROVIDES += "libgles-omap3 virtual/egl virtual/libgles1 virtual/libgles2"
|
||||
|
||||
RREPLACES_${PN} = "libegl libgles1 libgles2"
|
||||
RREPLACES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev"
|
||||
RREPLACES_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg"
|
||||
|
||||
RPROVIDES_${PN} = "libegl libgles1 libgles2"
|
||||
RPROVIDES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev"
|
||||
RPROVIDES_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg"
|
||||
|
||||
RCONFLICTS_${PN} = "libegl libgles1 libgles2"
|
||||
RCONFLICTS_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev"
|
||||
RCONFLICTS_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE} \
|
||||
file://cputype \
|
||||
file://rc_dri.pvr \
|
||||
file://sample.desktop \
|
||||
file://99-bufferclass.rules \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/OMAP35x_Graphics_SDK_${SGXPV}"
|
||||
|
||||
# Logic to unpack installjammer file
|
||||
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
|
||||
require ../../recipes-ti/includes/ti-eula-unpack.inc
|
||||
|
||||
export BINLOCATION ?= "${S}/gfx_rel"
|
||||
export ES3LOCATION ?= "${S}/gfx_rel_es3.x"
|
||||
export ES5LOCATION ?= "${S}/gfx_rel_es5.x"
|
||||
export ES6LOCATION ?= "${S}/gfx_rel_es6.x"
|
||||
export ES8LOCATION ?= "${S}/gfx_rel_es8.x"
|
||||
export ES9LOCATION ?= "${S}/gfx_rel_es9.x"
|
||||
|
||||
LIBGLESWINDOWSYSTEM ?= "libpvrPVR2D_DRIWSEGL.so"
|
||||
|
||||
python __anonymous() {
|
||||
if "x11" not in d.getVar("DISTRO_FEATURES", True).split():
|
||||
raise bb.parse.SkipPackage("Recipe is x11-specific, skipping")
|
||||
}
|
||||
|
||||
do_configure() {
|
||||
# Attempt to fix up the worst offenders for file permissions
|
||||
for i in $(find ${S} -name "*.h") $(find ${S} -name "*.c") $(find ${S} -name "Make*") ; do
|
||||
chmod 0644 $i
|
||||
done
|
||||
|
||||
# Attempt to create proper library softlinks
|
||||
for sofile in $(find ${S} -name "lib*Open*.so") $(find ${S} -name "lib*srv*.so") $(find ${S} -name "lib*gl*.so") $(find ${S} -name "libpvr*.so") $(find ${S} -name "lib*GL*.so"); do
|
||||
if [ "$(readlink -n ${sofile})" = "" ] ; then
|
||||
mv $sofile ${sofile}.${IMGPV}
|
||||
ln -sf $(basename ${sofile}.${IMGPV}) ${sofile}
|
||||
ln -sf $(basename ${sofile}.${IMGPV}) ${sofile}$(echo ${IMGPV} | awk -F. '{print "." $1}')
|
||||
ln -sf $(basename ${sofile}.${IMGPV}) ${sofile}$(echo ${IMGPV} | awk -F. '{print "." $1 "." $2}')
|
||||
fi
|
||||
done
|
||||
|
||||
# Due to recursive make PLAT_* isn't always passed down correctly, so use sed to fix those
|
||||
for mak in $(find ${S} -name "*.mak") ; do
|
||||
sed -i -e s:arm-none-linux-gnueabi-:${TARGET_PREFIX}:g $mak
|
||||
done
|
||||
|
||||
# clear out old stuff
|
||||
find Binaries/ | xargs rm -f || true
|
||||
}
|
||||
|
||||
# Force in GNU_HASH and paths to libs
|
||||
TARGET_CC_ARCH += " ${TARGET_LINK_HASH_STYLE} -Wl,-rpath-link,${BINLOCATION} -L${BINLOCATION} \
|
||||
-L${STAGING_DIR_TARGET}${libdir} -Wl,-rpath-link,${STAGING_DIR_TARGET}${libdir}"
|
||||
PARALLEL_MAKE = ""
|
||||
|
||||
PLATFORM ?= "LinuxOMAP3"
|
||||
|
||||
do_compile() {
|
||||
export TOOLCHAIN="${TOOLCHAIN_PATH}"
|
||||
export PLAT_CC="${CC}"
|
||||
export PLAT_CPP="${CXX}"
|
||||
export PLAR_AR="${AR}"
|
||||
|
||||
export X11ROOT="${STAGING_DIR_HOST}/usr"
|
||||
mkdir -p ${S}/demos/x11
|
||||
mkdir -p ${S}/trainingcourses/x11
|
||||
|
||||
mkdir -p ${S}/demos/raw
|
||||
mkdir -p ${S}/trainingcourses/raw
|
||||
|
||||
# Rebuild demos
|
||||
for demo in ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Demos/* ; do
|
||||
cd $demo/OGLES/Build/LinuxGeneric
|
||||
oe_runmake Common=1 PLATFORM=${PLATFORM} X11BUILD=1
|
||||
rm $demo/OGLES/Build/${PLATFORM}/Release*/*.o
|
||||
|
||||
install -m 0755 $demo/OGLES/Build/${PLATFORM}/ReleaseX11/* ${S}/demos/x11 || true
|
||||
sed -e s:NAME:$(basename $demo): \
|
||||
-e s:EXEC:${bindir}/SGX/demos/X11/$(basename $demo/OGLES/Build/${PLATFORM}/ReleaseX11/*): \
|
||||
${WORKDIR}/sample.desktop > ${WORKDIR}/$(basename $demo).desktop
|
||||
done
|
||||
|
||||
for demo in ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Demos/* ; do
|
||||
cd $demo/OGLES2/Build/LinuxGeneric
|
||||
oe_runmake Common=1 PLATFORM=${PLATFORM} X11BUILD=1
|
||||
rm -f $demo/OGLES2/Build/${PLATFORM}/Release*/*.o
|
||||
|
||||
install -m 0755 $demo/OGLES2/Build/${PLATFORM}/ReleaseX11/* ${S}/demos/x11 || true
|
||||
sed -e s:NAME:$(basename $demo): \
|
||||
-e s:EXEC:${bindir}/SGX/demos/X11/$(basename $demo/OGLES2/Build/${PLATFORM}/ReleaseX11/*): \
|
||||
${WORKDIR}/sample.desktop > ${WORKDIR}/$(basename $demo).desktop
|
||||
done
|
||||
|
||||
|
||||
find ${S} -name "*_org" -delete
|
||||
|
||||
# Build OGLES2 Trainingcourses
|
||||
for training in ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/TrainingCourse/* ; do
|
||||
if [ -e $training/OGLES2/Build/LinuxGeneric/Makefile ] ; then
|
||||
cd $training/OGLES2/Build/LinuxGeneric
|
||||
fi
|
||||
|
||||
if [ -e $training/OGLES2/Build/${PLATFORM}/Makefile ] ; then
|
||||
cd $training/OGLES2/Build/${PLATFORM}
|
||||
fi
|
||||
|
||||
oe_runmake Common=1 PLATFORM=${PLATFORM} X11BUILD=1
|
||||
rm -f $training/OGLES2/Build/${PLATFORM}/Release*/*.o
|
||||
|
||||
install -m 0755 $training/OGLES2/Build/${PLATFORM}/ReleaseX11/* ${S}/trainingcourses/x11 || true
|
||||
done
|
||||
}
|
||||
|
||||
do_install () {
|
||||
install -d ${D}${libdir}
|
||||
cp -pPR ${BINLOCATION}/*.so* ${D}${libdir}
|
||||
install -m 0644 ${BINLOCATION}/*.a ${D}${libdir}
|
||||
|
||||
install -d ${D}${bindir}/
|
||||
install -m 0755 ${WORKDIR}/cputype ${D}${bindir}/
|
||||
|
||||
install -m 0755 ${BINLOCATION}/*_test ${D}${bindir}/
|
||||
install -m 0755 ${BINLOCATION}/gl* ${D}${bindir}/
|
||||
install -m 0755 ${BINLOCATION}/${PVR_INIT} ${D}${bindir}/
|
||||
|
||||
install -m 0755 ${BINLOCATION}/xgles1test1 ${D}${bindir}/
|
||||
|
||||
install -d ${D}${includedir}
|
||||
cp -pPR ${S}/GFX_Linux_KM/include4 ${D}${includedir}/
|
||||
cp -pPR ${S}/GFX_Linux_KM/services4 ${D}${includedir}/
|
||||
|
||||
cp -pPR ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Builds/OGLES2/Include/* ${D}${includedir}/
|
||||
cp -pPR ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/Include/* ${D}${includedir}/
|
||||
cp -pPR ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/${PLATFORM}/Include/GLES/* ${D}${includedir}/GLES/ 2>/dev/null || true
|
||||
cp -pPr ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Builds/OGLES2/${PLATFORM}/Include/GLES/* ${D}${includedir}/GLES2/ 2>/dev/null || true
|
||||
cp -pPr ${S}/include/wsegl/*.h ${D}${includedir} || true
|
||||
|
||||
install -d ${D}${sysconfdir}/init.d/
|
||||
|
||||
install -d ${D}${sysconfdir}
|
||||
echo "[default]" > ${D}${sysconfdir}/powervr.ini
|
||||
echo "WindowSystem=${LIBGLESWINDOWSYSTEM}" >> ${D}${sysconfdir}/powervr.ini
|
||||
|
||||
# The ES3.x, ES5.x and ES6.x CPUs have different SGX hardware, so we need to install multiple sets of userspace
|
||||
|
||||
install -d ${D}${libdir}/ES9.0
|
||||
install -d ${D}${libdir}/ES8.0
|
||||
install -d ${D}${libdir}/ES6.0
|
||||
install -d ${D}${libdir}/ES5.0
|
||||
install -d ${D}${libdir}/ES3.0
|
||||
|
||||
install -d ${D}${bindir}/ES9.0
|
||||
install -d ${D}${bindir}/ES8.0
|
||||
install -d ${D}${bindir}/ES6.0
|
||||
install -d ${D}${bindir}/ES5.0
|
||||
install -d ${D}${bindir}/ES3.0
|
||||
|
||||
x11_prog="eglinfo_x xgles1test1 xgles2test1 xmultiegltest"
|
||||
|
||||
for esrev in 3 5 6 8 9; do
|
||||
ESLOCATION=$(eval echo $(echo \$\{ES${esrev}LOCATION\}))
|
||||
if [ -e ${ESLOCATION} ] ; then
|
||||
cp -pPR ${ESLOCATION}/lib*${IMGPV} ${ESLOCATION}/pvr_drv.so ${ESLOCATION}/*.a ${D}${libdir}/ES${esrev}.0/
|
||||
for esprog in $x11_prog ; do
|
||||
install -m 0755 ${ESLOCATION}/$esprog ${D}${bindir}/ES${esrev}.0/ 2>/dev/null || true
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
rm ${D}${bindir}/ES*/*.h ${D}${bindir}/ES*/pdsasm ${D}${bindir}/pdsasm -f || true
|
||||
|
||||
install -d ${D}${prefix}/share/applications
|
||||
cp ${WORKDIR}/*.desktop ${D}${prefix}/share/applications
|
||||
rm ${D}${prefix}/share/applications/sample.desktop
|
||||
|
||||
install -d ${D}${bindir}/SGX/demos/X11/
|
||||
install -m 0755 ${S}/demos/x11/* ${D}${bindir}/SGX/demos/X11/
|
||||
install -d ${D}${bindir}/SGX/trainingcourses/X11 2>/dev/null || true
|
||||
install -m 0755 ${S}/trainingcourses/x11/* ${D}${bindir}/SGX/trainingcourses/X11/ 2>/dev/null || true
|
||||
|
||||
# Delete objects and linker scripts hidden between the headers
|
||||
find ${D} -name "*.o" -delete
|
||||
find ${D} -name "*.o.cmd" -delete
|
||||
|
||||
install -d ${D}${sysconfdir}/udev/rules.d
|
||||
install -m 0644 ${WORKDIR}/99-bufferclass.rules ${D}${sysconfdir}/udev/rules.d/
|
||||
|
||||
}
|
||||
|
||||
PACKAGES =+ "${PN}-x11demos ${PN}-x11trainingcourses xserver-kdrive-powervrsgx"
|
||||
|
||||
# Package the base libraries per silicon revision
|
||||
PACKAGES =+ "${PN}-es3 ${PN}-es5 ${PN}-es6 ${PN}-es8 ${PN}-es9"
|
||||
RRECOMMENDS_${PN} += "${PN}-es3 ${PN}-es5 ${PN}-es6 ${PN}-es8 ${PN}-es9"
|
||||
FILES_${PN}-es3 = "${libdir}/ES3*/* ${bindir}/ES3*/*"
|
||||
FILES_${PN}-es5 = "${libdir}/ES5*/* ${bindir}/ES5*/*"
|
||||
FILES_${PN}-es6 = "${libdir}/ES6*/* ${bindir}/ES6*/*"
|
||||
FILES_${PN}-es8 = "${libdir}/ES8*/* ${bindir}/ES8*/*"
|
||||
FILES_${PN}-es9 = "${libdir}/ES9*/* ${bindir}/ES9*/*"
|
||||
|
||||
# Stop shlib code from picking a subpackage
|
||||
PRIVATE_LIBS_${PN}-es3 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es5 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es6 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es8 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es9 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
|
||||
PACKAGES =+ "${PN}-x11wsegl ${PN}-driwsegl"
|
||||
FILES_${PN}-x11wsegl = "${libdir}/libpvrPVR2D_X11WSEGL.so* ${bindir}/x* ${bindir}/*x"
|
||||
FILES_${PN}-driwsegl = "${libdir}/libpvrPVR2D_DRIWSEGL.so* ${libdir}/libsrv_um_dri*"
|
||||
|
||||
X11_SEGL = " ${PN}-x11wsegl-es2 ${PN}-x11wsegl-es3 ${PN}-x11wsegl-es5 ${PN}-x11wsegl-es6 ${PN}-x11wsegl-es8 ${PN}-x11wsegl-es9 ${PN}-driwsegl-es2 ${PN}-driwsegl-es3 ${PN}-driwsegl-es5 ${PN}-driwsegl-es6 ${PN}-driwsegl-es8 ${PN}-driwsegl-es9"
|
||||
PACKAGES =+ "${X11_SEGL}"
|
||||
FILES_${PN}-x11wsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES2*/x* ${bindir}/ES2*/*x"
|
||||
FILES_${PN}-x11wsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES3*/x* ${bindir}/ES3*/*x"
|
||||
FILES_${PN}-x11wsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES5*/x* ${bindir}/ES5*/*x"
|
||||
FILES_${PN}-x11wsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES6*/x* ${bindir}/ES6*/*x"
|
||||
FILES_${PN}-x11wsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES8*/x* ${bindir}/ES8*/*x"
|
||||
FILES_${PN}-x11wsegl-es9 = "${libdir}/ES9*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES9*/x* ${bindir}/ES9*/*x"
|
||||
RRECOMMENDS_${PN}-x11wsegl = " ${PN}-x11wsegl-es2 ${PN}-x11wsegl-es3 ${PN}-x11wsegl-es5 ${PN}-x11wsegl-es6 ${PN}-x11wsegl-es8 ${PN}-x11wsegl-es9"
|
||||
|
||||
FILES_${PN}-driwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES2*/libsrv_um_dri*"
|
||||
FILES_${PN}-driwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES3*/libsrv_um_dri*"
|
||||
FILES_${PN}-driwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES5*/libsrv_um_dri*"
|
||||
FILES_${PN}-driwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES6*/libsrv_um_dri*"
|
||||
FILES_${PN}-driwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES8*/libsrv_um_dri*"
|
||||
FILES_${PN}-driwsegl-es9 = "${libdir}/ES9*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES9*/libsrv_um_dri*"
|
||||
RRECOMMENDS_${PN}-driwsegl = " ${PN}-driwsegl-es2 ${PN}-driwsegl-es3 ${PN}-driwsegl-es5 ${PN}-driwsegl-es6 ${PN}-driwsegl-es8 ${PN}-driwsegl-es9"
|
||||
|
||||
CONFFILES_${PN} = "${sysconfdir}/powervr.ini"
|
||||
|
||||
FILES_${PN} = "${sysconfdir} ${libdir}/*.so* ${bindir}/${PVR_INIT} ${bindir}/cputype ${bindir}/*"
|
||||
|
||||
FILES_xserver-kdrive-powervrsgx = "${bindir}/Xsgx"
|
||||
FILES_${PN}-tests = "${bindir}/*test*"
|
||||
FILES_${PN}-dbg = "${libdir}/.debug/* ${bindir}/.debug/* \
|
||||
${libdir}/ES*/.debug ${bindir}/*/.debug\
|
||||
${bindir}/SGX/demos/*/.debug/* \
|
||||
${bindir}/SGX/trainingcourses/*/.debug/* \
|
||||
"
|
||||
|
||||
FILES_${PN}-x11demos = "${bindir}/SGX/demos/X11/* ${prefix}/share/applications "
|
||||
RRECOMMENDS_${PN}-x11demos = "${PN}-x11wsegl"
|
||||
|
||||
FILES_${PN}-x11trainingcourses = "${bindir}/SGX/trainingcourses/X11/*"
|
||||
RRECOMMENDS_${PN}-x11trainingcourses = "${PN}-x11wsegl"
|
||||
|
||||
# The libs need the kernel-modules
|
||||
RRECOMMENDS_${PN} += "omap3-sgx-modules-x11"
|
||||
|
||||
# The initscript calls fbset, cputype calls devmem2
|
||||
RDEPENDS_${PN} += "fbset devmem2"
|
||||
|
||||
#HACK! These are binaries, so we can't guarantee that LDFLAGS match :(
|
||||
INSANE_SKIP_${PN} = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-es3 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es5 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es6 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es8 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es9 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-x11demos = "ldflags dev-so useless-rpaths already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl-es3 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl-es5 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl-es6 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl-es8 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl-es9 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl-es3 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl-es5 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl-es6 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl-es8 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl-es9 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-tests = "ldflags already-stripped"
|
||||
INSANE_SKIP_xserver-kdrive-powervrsgx = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-dev = "ldflags dev-so already-stripped"
|
||||
|
||||
inherit update-rc.d
|
||||
|
||||
INITSCRIPT_NAME = "pvr-init"
|
||||
INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."
|
||||
|
||||
# Append to update-rc.d postinst
|
||||
pkg_postinst_${PN}_append() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
|
||||
ln -sf /usr/lib/libXdmcp.so.6.0.0 /usr/lib/libXdmcp.so.0
|
||||
ln -sf /usr/lib/libXau.so.6.0.0 /usr/lib/libXau.so.0
|
||||
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-x11wsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
|
||||
echo "[default]" > $D${sysconfdir}/powervr.ini
|
||||
echo "WindowSystem=libpvrPVR2D_X11WSEGL.so.1" >> $D${sysconfdir}/powervr.ini
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-driwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
@@ -1,90 +0,0 @@
|
||||
require libgles-omap3-x11.inc
|
||||
|
||||
LICENSE = "TI-TSPA"
|
||||
|
||||
PR = "${INC_PR}.3"
|
||||
|
||||
DEFAULT_PREFERENCE = "-1"
|
||||
|
||||
BINLOCATION_omap3 = "${S}/gfx_rel_es3.x"
|
||||
BINLOCATION_ti816x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti814x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti33x = "${S}/gfx_rel_es8.x"
|
||||
|
||||
PLATFORM = "LinuxARMV7"
|
||||
PVR_INIT = "pvrsrvctl"
|
||||
|
||||
# download required binary distribution from:
|
||||
# http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/latest/index_FDS.html
|
||||
# see libgles-omap3.inc for detailed installation instructions
|
||||
|
||||
SGXPV = "4_09_00_01"
|
||||
IMGPV = "1.9.2188537"
|
||||
|
||||
TI_BIN_UNPK_WDEXT := "/Graphics_SDK_${SGXPV}"
|
||||
|
||||
# Select the corresponding hardfp/softfp filename and checksums based on tune flags
|
||||
BINFILE_SOFTFP = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin"
|
||||
MD5SUM_SOFTFP = "bd35e9d8843aff3a2aca9d41e7db1c7d"
|
||||
SHA256SUM_SOFTFP = "eb37f75ddde4640b09e760fa86e689beb394330ecdf68786188c34f249247647"
|
||||
|
||||
BINFILE_HARDFP = "Graphics_SDK_setuplinux_${SGXPV}_hardfp_minimal_demos.bin"
|
||||
MD5SUM_HARDFP = "c9f656dce062d1ab10afffd4dfb71b67"
|
||||
SHA256SUM_HARDFP = "dbfeba8e1298f139495816334edec1455e6b49b1e11bd1b2aa0a888e5788bb6b"
|
||||
|
||||
BINFILE = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${BINFILE_HARDFP}', '${BINFILE_SOFTFP}', d)}"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE} \
|
||||
file://cputype \
|
||||
file://rc.pvr \
|
||||
file://rc_dri.pvr \
|
||||
file://sample.desktop \
|
||||
file://99-bufferclass.rules \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] := "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${MD5SUM_HARDFP}', '${MD5SUM_SOFTFP}', d)}"
|
||||
SRC_URI[sha256sum] := "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${SHA256SUM_HARDFP}', '${SHA256SUM_SOFTFP}', d)}"
|
||||
|
||||
S = "${WORKDIR}/Graphics_SDK_${SGXPV}"
|
||||
|
||||
LIBGLESWINDOWSYSTEM ?= "libpvrPVR2D_DRIWSEGL.so"
|
||||
|
||||
do_configure_append() {
|
||||
|
||||
# Change PVR server's user mode library to point to DRI
|
||||
for drifile in $(find ${S} -name "libsrv_um_dri.so"); do
|
||||
if [ "$drifile" != "" ]
|
||||
then
|
||||
dir=$(dirname ${drifile})
|
||||
if [ "$SUPPORT_XORG" = "1" ]
|
||||
then
|
||||
mv ${dir}/libsrv_um_dri.so ${dir}/libsrv_um.so
|
||||
else
|
||||
rm -rf ${dir}/libsrv_um_dri.so
|
||||
fi
|
||||
fi
|
||||
|
||||
done
|
||||
}
|
||||
|
||||
do_install_append() {
|
||||
|
||||
# In this version of the graphics SDK the following directories do not exist:
|
||||
# /GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/Include/pvr2d.h (doesn't exist)
|
||||
# /GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/Include/GLES/egltypes.h (doesn't exist)
|
||||
# Therefore, need to copy these files manually at the only location that they do exist
|
||||
cp -pPr ${S}/include/pvr2d/*.h ${D}${includedir}
|
||||
cp -pPr ${S}/include/OGLES/GLES ${D}${includedir}/
|
||||
|
||||
rm -f ${D}${sysconfdir}/init.d/pvr-init
|
||||
|
||||
if [ "$SUPPORT_XORG" = "1" ]; then
|
||||
cp -pP ${WORKDIR}/rc_dri.pvr ${D}${sysconfdir}/init.d/pvr-init
|
||||
else
|
||||
cp -pP ${WORKDIR}/rc.pvr ${D}${sysconfdir}/init.d/pvr-init
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
RRECOMMENDS_${PN}-x11demos = "${PN}-driwsegl"
|
||||
RRECOMMENDS_${PN}-x11trainingcourses = "${PN}-driwsegl"
|
||||
@@ -1,439 +0,0 @@
|
||||
DESCRIPTION = "libGLES for the omap3"
|
||||
LICENSE = "proprietary-binary"
|
||||
# 'TSPA.txt' might not be the best file to md5sum
|
||||
LIC_FILES_CHKSUM = "file://TSPA.txt;md5=c0d5d9c1e38b41677144c4e24d6ddee1"
|
||||
|
||||
PR = "r35"
|
||||
|
||||
COMPATIBLE_MACHINE = "(omap3|ti814x|ti816x|ti33x)"
|
||||
|
||||
X11DEPENDS = "virtual/libx11 libxau libxdmcp libdrm"
|
||||
DEPENDS = "${@base_contains('DISTRO_FEATURES', 'x11', '${X11DEPENDS}', '', d)}"
|
||||
|
||||
export SUPPORT_XORG ?= "${@base_contains('DISTRO_FEATURES', 'x11', '1', '0', d)}"
|
||||
PVR_INIT ?= "pvrsrvinit"
|
||||
|
||||
PROVIDES += "virtual/egl virtual/libgles1 virtual/libgles2"
|
||||
|
||||
RREPLACES_${PN} = "libegl libgles1 libgles2"
|
||||
RREPLACES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev"
|
||||
RREPLACES_${PN}-dbg = "libegl-dbg"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE} \
|
||||
file://cputype \
|
||||
file://rc.pvr \
|
||||
file://sample.desktop \
|
||||
file://99-bufferclass.rules \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/OMAP35x_Graphics_SDK_${SGXPV}"
|
||||
|
||||
# Logic to unpack installjammer file
|
||||
TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
|
||||
require ../../recipes-ti/includes/ti-eula-unpack.inc
|
||||
|
||||
export BINLOCATION ?= "${S}/gfx_rel"
|
||||
export ES2LOCATION ?= "${S}/gfx_rel_es2.x"
|
||||
export ES3LOCATION ?= "${S}/gfx_rel_es3.x"
|
||||
export ES5LOCATION ?= "${S}/gfx_rel_es5.x"
|
||||
export ES6LOCATION ?= "${S}/gfx_rel_es6.x"
|
||||
export ES8LOCATION ?= "${S}/gfx_rel_es8.x"
|
||||
|
||||
LIBGLESWINDOWSYSTEM ?= "libpvrPVR2D_FRONTWSEGL.so.1"
|
||||
|
||||
do_configure() {
|
||||
# Attempt to fix up the worst offenders for file permissions
|
||||
for i in $(find ${S} -name "*.h") $(find ${S} -name "*.c") $(find ${S} -name "Make*") ; do
|
||||
chmod 0644 $i
|
||||
done
|
||||
|
||||
# Attempt to create proper library softlinks
|
||||
for sofile in $(find ${S} -name "lib*Open*.so") $(find ${S} -name "lib*srv*.so") $(find ${S} -name "lib*gl*.so") $(find ${S} -name "libpvr*.so") $(find ${S} -name "lib*GL*.so"); do
|
||||
if [ "$(readlink -n ${sofile})" = "" ] ; then
|
||||
mv $sofile ${sofile}.${IMGPV}
|
||||
ln -sf $(basename ${sofile}.${IMGPV}) ${sofile}
|
||||
ln -sf $(basename ${sofile}.${IMGPV}) ${sofile}$(echo ${IMGPV} | awk -F. '{print "." $1}')
|
||||
ln -sf $(basename ${sofile}.${IMGPV}) ${sofile}$(echo ${IMGPV} | awk -F. '{print "." $1 "." $2}')
|
||||
fi
|
||||
done
|
||||
|
||||
# Due to recursive make PLAT_* isn't always passed down correctly, so use sed to fix those
|
||||
for mak in $(find ${S} -name "*.mak") ; do
|
||||
sed -i -e s:arm-none-linux-gnueabi-:${TARGET_PREFIX}:g $mak
|
||||
done
|
||||
|
||||
# clear out old stuff
|
||||
find Binaries/ | xargs rm -f || true
|
||||
}
|
||||
|
||||
# Force in GNU_HASH and paths to libs
|
||||
TARGET_CC_ARCH += " ${TARGET_LINK_HASH_STYLE} -Wl,-rpath-link,${BINLOCATION} -L${BINLOCATION} \
|
||||
-L${STAGING_DIR_TARGET}${libdir} -Wl,-rpath-link,${STAGING_DIR_TARGET}${libdir}"
|
||||
PARALLEL_MAKE = ""
|
||||
|
||||
PLATFORM ?= "LinuxOMAP3"
|
||||
|
||||
do_compile() {
|
||||
export TOOLCHAIN="${TOOLCHAIN_PATH}"
|
||||
export PLAT_CC="${CC}"
|
||||
export PLAT_CPP="${CXX}"
|
||||
export PLAR_AR="${AR}"
|
||||
|
||||
if [ ${SUPPORT_XORG} -eq 1 ] ; then
|
||||
export X11ROOT="${STAGING_DIR_HOST}/usr"
|
||||
mkdir -p ${S}/demos/x11
|
||||
mkdir -p ${S}/trainingcourses/x11
|
||||
fi
|
||||
|
||||
mkdir -p ${S}/demos/raw
|
||||
mkdir -p ${S}/trainingcourses/raw
|
||||
|
||||
# Rebuild demos
|
||||
for X11BUILD in 0 1 ; do
|
||||
# Don't rebuild demos with X11 support for a non X11 distro
|
||||
if [ ${SUPPORT_XORG} -eq 0 -a $X11BUILD -eq 1 ] ; then
|
||||
continue
|
||||
fi
|
||||
|
||||
for demo in ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Demos/* ; do
|
||||
cd $demo/OGLES/Build/LinuxGeneric
|
||||
oe_runmake Common=1 PLATFORM=${PLATFORM} X11BUILD=$X11BUILD
|
||||
rm $demo/OGLES/Build/${PLATFORM}/Release*/*.o
|
||||
|
||||
if [ $X11BUILD -eq 1 ] ; then
|
||||
install -m 0755 $demo/OGLES/Build/${PLATFORM}/ReleaseX11/* ${S}/demos/x11 || true
|
||||
sed -e s:NAME:$(basename $demo): \
|
||||
-e s:EXEC:${bindir}/SGX/demos/X11/$(basename $demo/OGLES/Build/${PLATFORM}/ReleaseX11/*): \
|
||||
${WORKDIR}/sample.desktop > ${WORKDIR}/$(basename $demo).desktop
|
||||
else
|
||||
install -m 0755 $demo/OGLES/Build/${PLATFORM}/ReleaseRaw/* ${S}/demos/raw || true
|
||||
fi
|
||||
done
|
||||
|
||||
for demo in ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Demos/* ; do
|
||||
cd $demo/OGLES2/Build/LinuxGeneric
|
||||
oe_runmake Common=1 PLATFORM=${PLATFORM} X11BUILD=$X11BUILD
|
||||
rm -f $demo/OGLES2/Build/${PLATFORM}/Release*/*.o
|
||||
|
||||
if [ $X11BUILD -eq 1 ] ; then
|
||||
install -m 0755 $demo/OGLES2/Build/${PLATFORM}/ReleaseX11/* ${S}/demos/x11 || true
|
||||
sed -e s:NAME:$(basename $demo): \
|
||||
-e s:EXEC:${bindir}/SGX/demos/X11/$(basename $demo/OGLES2/Build/${PLATFORM}/ReleaseX11/*): \
|
||||
${WORKDIR}/sample.desktop > ${WORKDIR}/$(basename $demo).desktop
|
||||
else
|
||||
install -m 0755 $demo/OGLES2/Build/${PLATFORM}/ReleaseRaw/* ${S}/demos/raw || true
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
find ${S} -name "*_org" -delete
|
||||
|
||||
# Build OGLES2 Trainingcourses
|
||||
for X11BUILD in 0 1 ; do
|
||||
# Don't rebuild training courses with X11 support for a non X11 distro
|
||||
if [ ${SUPPORT_XORG} -eq 0 -a $X11BUILD -eq 1 ] ; then
|
||||
continue
|
||||
fi
|
||||
|
||||
for training in ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/TrainingCourse/* ; do
|
||||
if [ -e $training/OGLES2/Build/LinuxGeneric/Makefile ] ; then
|
||||
cd $training/OGLES2/Build/LinuxGeneric
|
||||
fi
|
||||
|
||||
if [ -e $training/OGLES2/Build/${PLATFORM}/Makefile ] ; then
|
||||
cd $training/OGLES2/Build/${PLATFORM}
|
||||
fi
|
||||
|
||||
oe_runmake Common=1 PLATFORM=${PLATFORM} X11BUILD=$X11BUILD
|
||||
rm -f $training/OGLES2/Build/${PLATFORM}/Release*/*.o
|
||||
|
||||
if [ $X11BUILD -eq 1 ] ; then
|
||||
install -m 0755 $training/OGLES2/Build/${PLATFORM}/ReleaseX11/* ${S}/trainingcourses/x11 || true
|
||||
else
|
||||
install -m 0755 $training/OGLES2/Build/${PLATFORM}/ReleaseRaw/* ${S}/trainingcourses/raw || true
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
}
|
||||
|
||||
do_install () {
|
||||
install -d ${D}${libdir}
|
||||
cp -pPR ${BINLOCATION}/*.so* ${D}${libdir}
|
||||
install -m 0644 ${BINLOCATION}/*.a ${D}${libdir}
|
||||
|
||||
install -d ${D}${bindir}/
|
||||
install -m 0755 ${WORKDIR}/cputype ${D}${bindir}/
|
||||
|
||||
install -m 0755 ${BINLOCATION}/*_test ${D}${bindir}/
|
||||
install -m 0755 ${BINLOCATION}/gl* ${D}${bindir}/
|
||||
install -m 0755 ${BINLOCATION}/${PVR_INIT} ${D}${bindir}/
|
||||
|
||||
if [ ${SUPPORT_XORG} -eq 1 ] ; then
|
||||
install -m 0755 ${BINLOCATION}/xgles1test1 ${D}${bindir}/
|
||||
install -m 0755 ${BINLOCATION}/freedesktop/kdrive/usr/X11R6_SGX/bin/Xsgx ${D}${bindir}/|| true
|
||||
cp -pPR ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Builds/OGLES2/${PLATFORM}/lib/*X11WS* ${D}${libdir} || true
|
||||
fi
|
||||
|
||||
install -d ${D}${includedir}
|
||||
cp -pPR ${S}/GFX_Linux_KM/include4 ${D}${includedir}/
|
||||
cp -pPR ${S}/GFX_Linux_KM/services4 ${D}${includedir}/
|
||||
|
||||
cp -pPR ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Builds/OGLES2/Include/* ${D}${includedir}/
|
||||
cp -pPR ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/Include/* ${D}${includedir}/
|
||||
cp -pPR ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/${PLATFORM}/Include/GLES/* ${D}${includedir}/GLES/ 2>/dev/null || true
|
||||
cp -pPr ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Builds/OGLES2/${PLATFORM}/Include/GLES/* ${D}${includedir}/GLES2/ 2>/dev/null || true
|
||||
cp -pPr ${S}/GFX_Linux_SDK/OVG/SDKPackage/Builds/OVG/Include/v* ${D}${includedir}/ 2>/dev/null || true
|
||||
cp -pPr ${S}/GFX_Linux_SDK/OVG/SDKPackage/Builds/OVG/Include/V* ${D}${includedir}/ 2>/dev/null || true
|
||||
cp -pPr ${S}/include/*.h ${D}${includedir} || true
|
||||
cp -pPr ${S}/include/wsegl/*.h ${D}${includedir} || true
|
||||
|
||||
install -d ${D}${sysconfdir}/init.d/
|
||||
cp -pP ${WORKDIR}/rc.pvr ${D}${sysconfdir}/init.d/pvr-init
|
||||
|
||||
install -d ${D}${sysconfdir}
|
||||
echo "[default]" > ${D}${sysconfdir}/powervr.ini
|
||||
echo "WindowSystem=${LIBGLESWINDOWSYSTEM}" >> ${D}${sysconfdir}/powervr.ini
|
||||
|
||||
# The ES2.x, ES3.x, ES5.x and ES6.x CPUs have different SGX hardware, so we need to install multiple sets of userspace
|
||||
|
||||
install -d ${D}${libdir}/ES8.0
|
||||
install -d ${D}${libdir}/ES6.0
|
||||
install -d ${D}${libdir}/ES5.0
|
||||
install -d ${D}${libdir}/ES3.0
|
||||
install -d ${D}${libdir}/ES2.0
|
||||
|
||||
install -d ${D}${bindir}/ES8.0
|
||||
install -d ${D}${bindir}/ES6.0
|
||||
install -d ${D}${bindir}/ES5.0
|
||||
install -d ${D}${bindir}/ES3.0
|
||||
install -d ${D}${bindir}/ES2.0
|
||||
|
||||
shared_prog="eglinfo pvr2d_test ${PVR_INIT} services_test sgx_blit_test sgx_clipblit_test sgx_flip_test sgx_init_test sgx_render_flip_test"
|
||||
raw_prog="gles1test1 gles2test1 ovg_unit_test"
|
||||
x11_prog="eglinfo_x xgles1test1 xgles2test1 xmultiegltest xovg_unit_test"
|
||||
|
||||
for esrev in 2 3 5 6 8 ; do
|
||||
ESLOCATION=$(eval echo $(echo \$\{ES${esrev}LOCATION\}))
|
||||
if [ -e ${ESLOCATION} ] ; then
|
||||
cp -pPR ${ESLOCATION}/lib*${IMGPV} ${ESLOCATION}/pvr_drv.so ${ESLOCATION}/*.a ${D}${libdir}/ES${esrev}.0/
|
||||
for esprog in $shared_prog $raw_prog ${@base_contains('DISTRO_FEATURES', 'x11',"$x11_prog","",d)} ; do
|
||||
install -m 0755 ${ESLOCATION}/$esprog ${D}${bindir}/ES${esrev}.0/ 2>/dev/null || true
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
rm ${D}${bindir}/ES*/*.h ${D}${bindir}/ES*/pdsasm ${D}${bindir}/pdsasm -f || true
|
||||
|
||||
install -d ${D}${prefix}/share/applications
|
||||
cp ${WORKDIR}/*.desktop ${D}${prefix}/share/applications
|
||||
rm ${D}${prefix}/share/applications/sample.desktop
|
||||
|
||||
if [ ${SUPPORT_XORG} -eq 1 ] ; then
|
||||
install -d ${D}${bindir}/SGX/demos/X11/
|
||||
install -m 0755 ${S}/demos/x11/* ${D}${bindir}/SGX/demos/X11/
|
||||
install -d ${D}${bindir}/SGX/trainingcourses/X11 2>/dev/null || true
|
||||
install -m 0755 ${S}/trainingcourses/x11/* ${D}${bindir}/SGX/trainingcourses/X11/ 2>/dev/null || true
|
||||
fi
|
||||
|
||||
install -d ${D}${bindir}/SGX/demos/Raw/
|
||||
install -m 0755 ${S}/demos/raw/* ${D}${bindir}/SGX/demos/Raw/
|
||||
install -d ${D}${bindir}/SGX/trainingcourses/Raw 2>/dev/null || true
|
||||
install -m 0755 ${S}/trainingcourses/raw/* ${D}${bindir}/SGX/trainingcourses/Raw/ 2>/dev/null || true
|
||||
|
||||
|
||||
# Delete objects and linker scripts hidden between the headers
|
||||
find ${D} -name "*.o" -delete
|
||||
find ${D} -name "*.o.cmd" -delete
|
||||
|
||||
install -d ${D}${sysconfdir}/udev/rules.d
|
||||
install -m 0644 ${WORKDIR}/99-bufferclass.rules ${D}${sysconfdir}/udev/rules.d/
|
||||
|
||||
}
|
||||
|
||||
PACKAGES =+ "${@base_contains('DISTRO_FEATURES', 'x11',"${PN}-x11demos ${PN}-x11trainingcourses xserver-kdrive-powervrsgx" ,"", d)} \
|
||||
${PN}-rawdemos ${PN}-rawtrainingcourses ${PN}-tests"
|
||||
# Package the base libraries per silicon revision
|
||||
PACKAGES =+ "${PN}-es2 ${PN}-es3 ${PN}-es5 ${PN}-es6 ${PN}-es8"
|
||||
RRECOMMENDS_${PN} += "${PN}-es2 ${PN}-es3 ${PN}-es5 ${PN}-es6 ${PN}-es8"
|
||||
FILES_${PN}-es2 = "${libdir}/ES2*/* ${bindir}/ES2*/*"
|
||||
FILES_${PN}-es3 = "${libdir}/ES3*/* ${bindir}/ES3*/*"
|
||||
FILES_${PN}-es5 = "${libdir}/ES5*/* ${bindir}/ES5*/*"
|
||||
FILES_${PN}-es6 = "${libdir}/ES6*/* ${bindir}/ES6*/*"
|
||||
FILES_${PN}-es8 = "${libdir}/ES8*/* ${bindir}/ES8*/*"
|
||||
|
||||
# Stop shlib code from picking a subpackage
|
||||
PRIVATE_LIBS_${PN}-es2 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es3 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es5 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es6 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
PRIVATE_LIBS_${PN}-es8 = "libGLESv2.so libIMGegl.so libsrv_um.so libOpenVG.so libpvr2d.so libsrv_init.so libEGL.so libsrv_um_dri.so libOpenVGU.so libglslcompiler.so libGLES_CM.so"
|
||||
|
||||
|
||||
PACKAGES =+ "${PN}-blitwsegl ${PN}-flipwsegl ${PN}-frontwsegl ${PN}-linuxfbwsegl"
|
||||
PACKAGES =+ "${@base_contains('DISTRO_FEATURES', 'x11',"${PN}-x11wsegl ${PN}-driwsegl" ,"", d)}"
|
||||
FILES_${PN}-blitwsegl = "${libdir}/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl = "${libdir}/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl = "${libdir}/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl = "${libdir}/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
FILES_${PN}-x11wsegl = "${libdir}/libpvrPVR2D_X11WSEGL.so* ${bindir}/x* ${bindir}/*x"
|
||||
FILES_${PN}-driwsegl = "${libdir}/libpvrPVR2D_DRIWSEGL.so* ${libdir}/libsrv_um_dri*"
|
||||
|
||||
PACKAGES =+ "${PN}-blitwsegl-es2 ${PN}-blitwsegl-es3 ${PN}-blitwsegl-es5 ${PN}-blitwsegl-es6 ${PN}-blitwsegl-es8 ${PN}-flipwsegl-es2 ${PN}-flipwsegl-es3 ${PN}-flipwsegl-es5 ${PN}-flipwsegl-es6 ${PN}-flipwsegl-es8 ${PN}-frontwsegl-es2 ${PN}-frontwsegl-es3 ${PN}-frontwsegl-es5 ${PN}-frontwsegl-es6 ${PN}-frontwsegl-es8 ${PN}-linuxfbwsegl-es2 ${PN}-linuxfbwsegl-es3 ${PN}-linuxfbwsegl-es5 ${PN}-linuxfbwsegl-es6 ${PN}-linuxfbwsegl-es8"
|
||||
|
||||
X11_SEGL = " ${PN}-x11wsegl-es2 ${PN}-x11wsegl-es3 ${PN}-x11wsegl-es5 ${PN}-x11wsegl-es6 ${PN}-x11wsegl-es8 ${PN}-driwsegl-es2 ${PN}-driwsegl-es3 ${PN}-driwsegl-es5 ${PN}-driwsegl-es6 ${PN}-driwsegl-es8 "
|
||||
PACKAGES =+ "${@base_contains('DISTRO_FEATURES', 'x11',"${X11_SEGL}" ,"", d)}"
|
||||
FILES_${PN}-blitwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-blitwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-blitwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-blitwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
FILES_${PN}-blitwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_BLITWSEGL.so.*"
|
||||
RRECOMMENDS_${PN}-blitwsegl = " ${PN}-blitwsegl-es2 ${PN}-blitwsegl-es3 ${PN}-blitwsegl-es5 ${PN}-blitwsegl-es6 ${PN}-blitwsegl-es8"
|
||||
|
||||
FILES_${PN}-flipwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
FILES_${PN}-flipwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_FLIPWSEGL.so.*"
|
||||
RRECOMMENDS_${PN}-flipwsegl = " ${PN}-flipwsegl-es2 ${PN}-flipwsegl-es3 ${PN}-flipwsegl-es5 ${PN}-flipwsegl-es6 ${PN}-flipwsegl-es8"
|
||||
|
||||
FILES_${PN}-frontwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
FILES_${PN}-frontwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_FRONTWSEGL.so.*"
|
||||
RRECOMMENDS_${PN}-frontwsegl = " ${PN}-frontwsegl-es2 ${PN}-frontwsegl-es3 ${PN}-frontwsegl-es5 ${PN}-frontwsegl-es6 ${PN}-frontwsegl-es8"
|
||||
|
||||
FILES_${PN}-linuxfbwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
FILES_${PN}-linuxfbwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_LINUXFBWSEGL.so.*"
|
||||
RRECOMMENDS_${PN}-linuxfbwsegl = " ${PN}-linuxfbwsegl-es2 ${PN}-linuxfbwsegl-es3 ${PN}-linuxfbwsegl-es5 ${PN}-linuxfbwsegl-es6 ${PN}-linuxfbwsegl-es8"
|
||||
|
||||
FILES_${PN}-x11wsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES2*/x* ${bindir}/ES2*/*x"
|
||||
FILES_${PN}-x11wsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES3*/x* ${bindir}/ES3*/*x"
|
||||
FILES_${PN}-x11wsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES5*/x* ${bindir}/ES5*/*x"
|
||||
FILES_${PN}-x11wsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES6*/x* ${bindir}/ES6*/*x"
|
||||
FILES_${PN}-x11wsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_X11WSEGL.so.* ${bindir}/ES8*/x* ${bindir}/ES8*/*x"
|
||||
RRECOMMENDS_${PN}-x11wsegl = " ${PN}-x11wsegl-es2 ${PN}-x11wsegl-es3 ${PN}-x11wsegl-es5 ${PN}-x11wsegl-es6 ${PN}-x11wsegl-es8"
|
||||
|
||||
FILES_${PN}-driwsegl-es2 = "${libdir}/ES2*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES2*/libsrv_um_dri*"
|
||||
FILES_${PN}-driwsegl-es3 = "${libdir}/ES3*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES3*/libsrv_um_dri*"
|
||||
FILES_${PN}-driwsegl-es5 = "${libdir}/ES5*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES5*/libsrv_um_dri*"
|
||||
FILES_${PN}-driwsegl-es6 = "${libdir}/ES6*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES6*/libsrv_um_dri*"
|
||||
FILES_${PN}-driwsegl-es8 = "${libdir}/ES8*/libpvrPVR2D_DRIWSEGL.so.* ${libdir}/ES8*/libsrv_um_dri*"
|
||||
RRECOMMENDS_${PN}-driwsegl = " ${PN}-driwsegl-es2 ${PN}-driwsegl-es3 ${PN}-driwsegl-es5 ${PN}-driwsegl-es6 ${PN}-driwsegl-es8"
|
||||
|
||||
CONFFILES_${PN} = "${sysconfdir}/powervr.ini"
|
||||
|
||||
FILES_${PN} = "${sysconfdir} ${libdir}/*.so* ${bindir}/${PVR_INIT} ${bindir}/cputype ${bindir}/*"
|
||||
|
||||
FILES_xserver-kdrive-powervrsgx = "${bindir}/Xsgx"
|
||||
FILES_${PN}-tests = "${bindir}/*test*"
|
||||
FILES_${PN}-dbg = "${libdir}/.debug/* ${bindir}/.debug/* \
|
||||
${libdir}/ES*/.debug ${bindir}/*/.debug\
|
||||
${bindir}/SGX/demos/*/.debug/* \
|
||||
${bindir}/SGX/trainingcourses/*/.debug/* \
|
||||
"
|
||||
|
||||
FILES_${PN}-rawdemos = "${bindir}/SGX/demos/Raw/*"
|
||||
FILES_${PN}-x11demos = "${bindir}/SGX/demos/X11/* ${prefix}/share/applications "
|
||||
RRECOMMENDS_${PN}-x11demos = "${PN}-x11wsegl"
|
||||
|
||||
FILES_${PN}-rawtrainingcourses = "${bindir}/SGX/trainingcourses/Raw/*"
|
||||
FILES_${PN}-x11trainingcourses = "${bindir}/SGX/trainingcourses/X11/*"
|
||||
RRECOMMENDS_${PN}-x11trainingcourses = "${PN}-x11wsegl"
|
||||
|
||||
# The libs need the kernel-modules
|
||||
RRECOMMENDS_${PN} += "omap3-sgx-modules"
|
||||
|
||||
# The initscript calls fbset, cputype calls devmem2
|
||||
RDEPENDS_${PN} += "fbset devmem2"
|
||||
|
||||
#HACK! These are binaries, so we can't guarantee that LDFLAGS match :(
|
||||
INSANE_SKIP_${PN} = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-es3 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es5 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es6 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-es8 = "ldflags dev-so staticdev already-stripped"
|
||||
INSANE_SKIP_${PN}-rawdemos = "ldflags dev-so useless-rpaths already-stripped"
|
||||
INSANE_SKIP_${PN}-x11demos = "ldflags dev-so useless-rpaths already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl-es3 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl-es5 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl-es6 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-blitwsegl-es8 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl-es3 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl-es5 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl-es6 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-flipwsegl-es8 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl-es3 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl-es5 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl-es6 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-frontwsegl-es8 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl-es3 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl-es5 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl-es6 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-linuxfbwsegl-es8 = "ldflags already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl-es3 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl-es5 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl-es6 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-x11wsegl-es8 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl-es3 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl-es5 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl-es6 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-driwsegl-es8 = "ldflags dev-so already-stripped"
|
||||
INSANE_SKIP_${PN}-tests = "ldflags already-stripped"
|
||||
INSANE_SKIP_xserver-kdrive-powervrsgx = "ldflags already-stripped"
|
||||
|
||||
# Quality control is really poor on these SDKs, so hack around the latest madness:
|
||||
FILES_${PN} += "${libdir}/*.so "
|
||||
FILES_${PN}-dev = "${includedir}"
|
||||
|
||||
inherit update-rc.d
|
||||
|
||||
INITSCRIPT_NAME = "pvr-init"
|
||||
INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."
|
||||
|
||||
# Append to update-rc.d postinst
|
||||
pkg_postinst_${PN}_append() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
|
||||
if [ ${SUPPORT_XORG} -eq 1 ] ; then
|
||||
ln -sf /usr/lib/libXdmcp.so.6.0.0 /usr/lib/libXdmcp.so.0
|
||||
ln -sf /usr/lib/libXau.so.6.0.0 /usr/lib/libXau.so.0
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-blitwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-flipwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-frontwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
pkg_postinst_${PN}-linuxfbwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-x11wsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
|
||||
echo "[default]" > $D${sysconfdir}/powervr.ini
|
||||
echo "WindowSystem=libpvrPVR2D_X11WSEGL.so.1" >> $D${sysconfdir}/powervr.ini
|
||||
}
|
||||
|
||||
pkg_postinst_${PN}-driwsegl() {
|
||||
rm -f $D${sysconfdir}/powervr-esrev
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
# Give everyone access to bufferclass nodes and make a compatibility symlink for the first one
|
||||
SUBSYSTEM=="bccat", MODE="0666"
|
||||
KERNEL=="bccat0", SYMLINK+="bc_cat", MODE="0666"
|
||||
|
||||
# Give everyone access to v4l nodes
|
||||
SUBSYSTEM=="video4linux", MODE="0666"
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
legacy_machine_id() { # return the machine ID
|
||||
awk 'BEGIN { FS=": " } /Hardware/ \
|
||||
{ gsub(" ", "_", $2); print tolower($2) } ' </proc/cpuinfo
|
||||
}
|
||||
|
||||
machine_id() { # return the machine ID
|
||||
cat /proc/cpuinfo | grep Hardware | awk -F" " '{ print $4 }'
|
||||
}
|
||||
|
||||
if [ "$(machine_id)" = "ti8168evm" -o "$(legacy_machine_id)" = "ti8168evm" ] ; then
|
||||
echo TI816x
|
||||
elif [ "$(machine_id)" = "AM33XX" -o "$(legacy_machine_id)" = "am335xevm" ] ; then
|
||||
echo TI33XX
|
||||
elif [ "$(machine_id)" = "AM43" ] ; then
|
||||
echo TI43XX
|
||||
else
|
||||
devmem2 0x4800244c | \
|
||||
grep 'Read at address' | \
|
||||
sed -e 's/.*): //' | \
|
||||
sed -e 's/0x00005C00/OMAP3503/' -e 's/0x00001C00/OMAP3515/' -e 's/0x00004C00/OMAP3525/' -e 's/0x00000C00/OMAP3530/' \
|
||||
-e 's/0x00005E00/OMAP3503/' -e 's/0x00001E00/OMAP3515/' -e 's/0x00004E00/OMAP3525/' -e 's/0x00000E00/OMAP3530/' \
|
||||
-e 's/0x00000CC0/OMAP3530/'
|
||||
fi
|
||||
@@ -1,124 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/usr/sbin
|
||||
|
||||
# Check if an fb device is available. If not then just go ahead and
|
||||
# exit because we have no display.
|
||||
fbset > /dev/null 2>&1
|
||||
if [ "$?" == "1" ]
|
||||
then
|
||||
# looks like there is no display, so let's exit
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BITSPERPIXEL="$(fbset | grep geom | awk '{print $6}')"
|
||||
YRES="$(fbset | grep geom | awk '{print $3}')"
|
||||
|
||||
CPUTYPE="$(cputype)"
|
||||
|
||||
if [ "$1" = "" ]; then
|
||||
echo PVR-INIT: Please use start, stop, or restart.
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" -o "$1" = "restart" ]; then
|
||||
echo Stopping PVR
|
||||
rmmod bufferclass_ti
|
||||
rmmod omaplfb 2>/dev/null
|
||||
rmmod pvrsrvkm 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = "stop" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Set RGBA ordering to something the drivers like
|
||||
if [ "$BITSPERPIXEL" = "32" ] ; then
|
||||
fbset -rgba 8/16,8/8,8/0,8/24
|
||||
fi
|
||||
|
||||
# Try to enable triple buffering when there's enough VRAM
|
||||
fbset -vyres $(expr $YRES \* 3)
|
||||
|
||||
sgxprepare () {
|
||||
echo Starting PVR
|
||||
insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko")
|
||||
|
||||
if [ "$?" != "0" ]
|
||||
then
|
||||
echo "Could not find pvrsrvkm driver"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
modprobe omaplfb
|
||||
modprobe bufferclass_ti
|
||||
|
||||
pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3`
|
||||
bc_maj=`grep "bc" /proc/devices | cut -b1,2,3`
|
||||
|
||||
if [ -e /dev/pvrsrvkm ] ; then
|
||||
rm -f /dev/pvrsrvkm
|
||||
fi
|
||||
|
||||
mknod /dev/pvrsrvkm c $pvr_maj 0
|
||||
chmod 666 /dev/pvrsrvkm
|
||||
|
||||
touch /etc/powervr-esrev
|
||||
|
||||
SAVED_ESREVISION="$(cat /etc/powervr-esrev)"
|
||||
}
|
||||
|
||||
sgxfinish () {
|
||||
# Fix up a bug in opkg
|
||||
if [ $(readlink /usr/lib/libsrv_um.so) != $(readlink /usr/lib/libsrv_um.so.1) ] ; then
|
||||
cd /usr/lib
|
||||
ln -sf $(readlink /usr/lib/libsrv_um.so.1) libsrv_um.so
|
||||
fi
|
||||
|
||||
if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then
|
||||
echo -n "Starting SGX fixup for"
|
||||
echo " ES${ES_REVISION}.x"
|
||||
cp -a /usr/lib/ES${ES_REVISION}.0/* /usr/lib
|
||||
cp -a /usr/bin/ES${ES_REVISION}.0/* /usr/bin
|
||||
echo "${ES_REVISION}" > /etc/powervr-esrev
|
||||
fi
|
||||
|
||||
/usr/bin/pvrsrvinit
|
||||
}
|
||||
|
||||
case $CPUTYPE in
|
||||
"OMAP3530")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48004B48 w 0x2 > /dev/null
|
||||
devmem2 0x48004B10 w 0x1 > /dev/null
|
||||
devmem2 0x48004B00 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x50000014 | sed -e s:0x00010205:5: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI33XX")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x44e01104 w 0x0 > /dev/null
|
||||
devmem2 0x44e00904 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:8: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
"TI816x")
|
||||
sgxprepare
|
||||
|
||||
devmem2 0x48180F04 w 0x0 > /dev/null
|
||||
devmem2 0x48180900 w 0x2 > /dev/null
|
||||
devmem2 0x48180920 w 0x2 > /dev/null
|
||||
|
||||
ES_REVISION="$(devmem2 0x56000014 | sed -e s:0x00010205:6: -e s:0x00010201:3: -e s:0x00010003:2: | tail -n1 | awk -F': ' '{print $2}')"
|
||||
|
||||
sgxfinish
|
||||
;;
|
||||
*)
|
||||
echo No SGX hardware, not starting PVR
|
||||
;;
|
||||
esac
|
||||
@@ -1,8 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Name=NAME Demo
|
||||
Comment=OGLES Demo
|
||||
Exec=EXEC
|
||||
Icon=star
|
||||
Type=Application
|
||||
Categories=Graphics;
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
BINLOCATION_omap3 = "${S}/gfx_rel_es3.x"
|
||||
BINLOCATION_ti814x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti816x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti33x = "${S}/gfx_rel_es8.x"
|
||||
|
||||
require libgles-omap3.inc
|
||||
|
||||
DEFAULT_PREFERENCE_omap3 = "99"
|
||||
|
||||
# download required binary distribution from:
|
||||
# http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/latest/index_FDS.html
|
||||
# see libgles-omap3.inc for detailed installation instructions
|
||||
|
||||
SGXPV = "4_05_00_03"
|
||||
IMGPV = "1.6.16.4117"
|
||||
BINFILE := "Graphics_SDK_setuplinux_${SGXPV}.bin"
|
||||
TI_BIN_UNPK_WDEXT := "/Graphics_SDK_${SGXPV}"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE} \
|
||||
file://cputype \
|
||||
file://rc.pvr \
|
||||
file://sample.desktop \
|
||||
file://99-bufferclass.rules \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "0e651eaa92bb91760f0b40a17697a7dc"
|
||||
SRC_URI[sha256sum] = "bfe764a8959556195545d6fff76f63a489642f345c105bbbc309a3f243c2dd0e"
|
||||
|
||||
S = "${WORKDIR}/Graphics_SDK_${SGXPV}"
|
||||
@@ -1,46 +0,0 @@
|
||||
require libgles-omap3-no-x.inc
|
||||
|
||||
LICENSE = "TI-TSPA"
|
||||
|
||||
PR = "${INC_PR}.3"
|
||||
|
||||
BINLOCATION_omap3 = "${S}/gfx_rel_es3.x"
|
||||
BINLOCATION_ti816x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti814x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti33x = "${S}/gfx_rel_es8.x"
|
||||
|
||||
PLATFORM = "LinuxARMV7"
|
||||
PVR_INIT = "pvrsrvctl"
|
||||
|
||||
# download required binary distribution from:
|
||||
# http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/latest/index_FDS.html
|
||||
# see libgles-omap3.inc for detailed installation instructions
|
||||
|
||||
SGXPV = "4_09_00_01"
|
||||
IMGPV = "1.9.2188537"
|
||||
|
||||
TI_BIN_UNPK_WDEXT := "/Graphics_SDK_${SGXPV}"
|
||||
|
||||
# Select the corresponding hardfp/softfp filename and checksums based on tune flags
|
||||
BINFILE_SOFTFP = "Graphics_SDK_setuplinux_${SGXPV}_minimal_demos.bin"
|
||||
MD5SUM_SOFTFP = "bd35e9d8843aff3a2aca9d41e7db1c7d"
|
||||
SHA256SUM_SOFTFP = "eb37f75ddde4640b09e760fa86e689beb394330ecdf68786188c34f249247647"
|
||||
|
||||
BINFILE_HARDFP = "Graphics_SDK_setuplinux_${SGXPV}_hardfp_minimal_demos.bin"
|
||||
MD5SUM_HARDFP = "c9f656dce062d1ab10afffd4dfb71b67"
|
||||
SHA256SUM_HARDFP = "dbfeba8e1298f139495816334edec1455e6b49b1e11bd1b2aa0a888e5788bb6b"
|
||||
|
||||
BINFILE = "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${BINFILE_HARDFP}', '${BINFILE_SOFTFP}', d)}"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/gfxsdk/${SGXPV}/exports/${BINFILE} \
|
||||
file://cputype \
|
||||
file://rc.pvr \
|
||||
file://99-bufferclass.rules \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] := "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${MD5SUM_HARDFP}', '${MD5SUM_SOFTFP}', d)}"
|
||||
SRC_URI[sha256sum] := "${@base_contains('TUNE_FEATURES', 'callconvention-hard', '${SHA256SUM_HARDFP}', '${SHA256SUM_SOFTFP}', d)}"
|
||||
|
||||
S = "${WORKDIR}/Graphics_SDK_${SGXPV}"
|
||||
|
||||
LIBGLESWINDOWSYSTEM ?= "libpvrPVR2D_FRONTWSEGL.so.1"
|
||||
@@ -1,50 +0,0 @@
|
||||
require libgles-omap3-no-x.inc
|
||||
|
||||
LICENSE = "TI-TSPA"
|
||||
|
||||
PR = "${INC_PR}.1"
|
||||
|
||||
BINLOCATION_omap3 = "${S}/gfx_rel_es3.x"
|
||||
BINLOCATION_ti816x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti814x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti33x = "${S}/gfx_rel_es8.x"
|
||||
BINLOCATION_ti43x = "${S}/gfx_rel_es9.x"
|
||||
|
||||
PLATFORM = "LinuxARMV7"
|
||||
PVR_INIT = "pvrsrvctl"
|
||||
|
||||
SGXPV = "5_01_01_01"
|
||||
IMGPV = "1.10.2359475"
|
||||
|
||||
TI_BIN_UNPK_WDEXT := "/Graphics_SDK_${SGXPV}"
|
||||
|
||||
BINFILE_HARDFP = "Graphics_SDK_setuplinux_hardfp_${SGXPV}.bin"
|
||||
MD5SUM_HARDFP = "94acdbd20152c905939c2448d5e80a72"
|
||||
SHA256SUM_HARDFP = "7f647bf45a5ce8ba9aaa28c4afe85fced4275f9a4567a1886d4460b76c9051ae"
|
||||
|
||||
# For now we only have hardfp version
|
||||
python __anonymous() {
|
||||
tunes = bb.data.getVar("TUNE_FEATURES", d, 1)
|
||||
if not tunes:
|
||||
return
|
||||
pkgn = bb.data.getVar("PN", d, 1)
|
||||
pkgv = bb.data.getVar("PV", d, 1)
|
||||
if "callconvention-hard" not in tunes:
|
||||
bb.warn("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
raise bb.parse.SkipPackage("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
}
|
||||
|
||||
BINFILE := "${BINFILE_HARDFP}"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/gfxsdk/${SGXPV}/exports/${BINFILE} \
|
||||
file://cputype \
|
||||
file://rc.pvr \
|
||||
file://99-bufferclass.rules \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] := "${MD5SUM_HARDFP}"
|
||||
SRC_URI[sha256sum] := "${SHA256SUM_HARDFP}"
|
||||
|
||||
S = "${WORKDIR}/Graphics_SDK_${SGXPV}"
|
||||
|
||||
LIBGLESWINDOWSYSTEM ?= "libpvrPVR2D_FRONTWSEGL.so.1"
|
||||
@@ -1,50 +0,0 @@
|
||||
require libgles-omap3-no-x.inc
|
||||
|
||||
LICENSE = "TI-TSPA"
|
||||
|
||||
PR = "${INC_PR}.1"
|
||||
|
||||
BINLOCATION_omap3 = "${S}/gfx_rel_es3.x"
|
||||
BINLOCATION_ti816x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti814x = "${S}/gfx_rel_es6.x"
|
||||
BINLOCATION_ti33x = "${S}/gfx_rel_es8.x"
|
||||
BINLOCATION_ti43x = "${S}/gfx_rel_es9.x"
|
||||
|
||||
PLATFORM = "LinuxARMV7"
|
||||
PVR_INIT = "pvrsrvctl"
|
||||
|
||||
SGXPV = "5_01_01_02"
|
||||
IMGPV = "1.10.2359475"
|
||||
|
||||
TI_BIN_UNPK_WDEXT := "/Graphics_SDK_${SGXPV}"
|
||||
|
||||
BINFILE_HARDFP = "Graphics_SDK_setuplinux_hardfp_${SGXPV}.bin"
|
||||
MD5SUM_HARDFP = "94bcb31ea7eb50df1dfa4037055b638e"
|
||||
SHA256SUM_HARDFP = "54641222cdb49b03f996cbd6412de227198d9e084f5647d706bbf4217e8cdb07"
|
||||
|
||||
# For now we only have hardfp version
|
||||
python __anonymous() {
|
||||
tunes = bb.data.getVar("TUNE_FEATURES", d, 1)
|
||||
if not tunes:
|
||||
return
|
||||
pkgn = bb.data.getVar("PN", d, 1)
|
||||
pkgv = bb.data.getVar("PV", d, 1)
|
||||
if "callconvention-hard" not in tunes:
|
||||
bb.warn("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
raise bb.parse.SkipPackage("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
}
|
||||
|
||||
BINFILE := "${BINFILE_HARDFP}"
|
||||
|
||||
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/gfxsdk/${SGXPV}/exports/${BINFILE} \
|
||||
file://cputype \
|
||||
file://rc.pvr \
|
||||
file://99-bufferclass.rules \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] := "${MD5SUM_HARDFP}"
|
||||
SRC_URI[sha256sum] := "${SHA256SUM_HARDFP}"
|
||||
|
||||
S = "${WORKDIR}/Graphics_SDK_${SGXPV}"
|
||||
|
||||
LIBGLESWINDOWSYSTEM ?= "libpvrPVR2D_FRONTWSEGL.so.1"
|
||||
@@ -8,7 +8,19 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
BRANCH = "ti-img-sgx/${PV}"
|
||||
|
||||
SRC_URI = "git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git;protocol=git;branch=${BRANCH}"
|
||||
SRCREV = "626c4f773b7c704f1d9a55ca80f60a79f809186d"
|
||||
SRCREV = "54ba970e33d3c13f726d7c035f3b5c3dcb74afdc"
|
||||
|
||||
# There's only hardfp version available
|
||||
python __anonymous() {
|
||||
tunes = bb.data.getVar("TUNE_FEATURES", d, 1)
|
||||
if not tunes:
|
||||
return
|
||||
pkgn = bb.data.getVar("PN", d, 1)
|
||||
pkgv = bb.data.getVar("PV", d, 1)
|
||||
if "callconvention-hard" not in tunes:
|
||||
bb.warn("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
raise bb.parse.SkipPackage("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv))
|
||||
}
|
||||
|
||||
TARGET_PRODUCT_omap-a15 = "jacinto6evm"
|
||||
TARGET_PRODUCT_ti33x = "ti335x"
|
||||
@@ -19,14 +31,23 @@ INITSCRIPT_PARAMS = "defaults 8"
|
||||
|
||||
inherit update-rc.d
|
||||
|
||||
PR = "r8"
|
||||
PROVIDES += "virtual/egl virtual/libgles1 virtual/libgles2"
|
||||
PR = "r12"
|
||||
PROVIDES += "virtual/egl virtual/libgles1 virtual/libgles2 omap5-sgx-ddk-um-linux"
|
||||
|
||||
DEPENDS += "libdrm udev libgbm wayland libffi"
|
||||
RDEPENDS_${PN} += "libdrm libudev libgbm wayland libffi libdrm-omap"
|
||||
|
||||
RREPLACES_${PN} = "libegl libgles1 libgles2"
|
||||
RREPLACES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev"
|
||||
RREPLACES_${PN}-dbg = "libegl-dbg"
|
||||
RPROVIDES_${PN} = "libegl libgles1 libgles2 omap5-sgx-ddk-um-linux"
|
||||
RPROVIDES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev omap5-sgx-ddk-um-linux-dev"
|
||||
RPROVIDES_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg omap5-sgx-ddk-um-linux-dbg"
|
||||
|
||||
RREPLACES_${PN} = "libegl libgles1 libgles2 omap5-sgx-ddk-um-linux"
|
||||
RREPLACES_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev omap5-sgx-ddk-um-linux-dev"
|
||||
RREPLACES_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg omap5-sgx-ddk-um-linux-dbg"
|
||||
|
||||
RCONFLICTS_${PN} = "libegl libgles1 libgles2 omap5-sgx-ddk-um-linux"
|
||||
RCONFLICTS_${PN}-dev = "libegl-dev libgles1-dev libgles2-dev omap5-sgx-ddk-um-linux-dev"
|
||||
RCONFLICTS_${PN}-dbg = "libegl-dbg libgles1-dbg libgles2-dbg omap5-sgx-ddk-um-linux-dbg"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
@@ -48,6 +69,7 @@ RDEPENDS_${PN} += "${PN}-plugins"
|
||||
ALLOW_EMPTY_${PN}-plugins = "1"
|
||||
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_SYSROOT_STRIP = "1"
|
||||
|
||||
INSANE_SKIP_${PN} += "dev-so ldflags useless-rpaths"
|
||||
INSANE_SKIP_${PN}-plugins = "dev-so"
|
||||
195
recipes-kernel/linux/files/dra7xx/am572x-pru-uio.dtsi
Normal file
195
recipes-kernel/linux/files/dra7xx/am572x-pru-uio.dtsi
Normal file
@@ -0,0 +1,195 @@
|
||||
/ {
|
||||
ocp {
|
||||
pruss2_eth {
|
||||
status = "disabled";
|
||||
};
|
||||
uio_pruss1_mem: uio_pruss1_mem {
|
||||
compatible = "ti,uio-module-drv";
|
||||
ti,hwmods = "pruss1";
|
||||
mem = <0x4b200000 0x2000>,
|
||||
<0x4b202000 0x2000>,
|
||||
<0x4b210000 0x8000>,
|
||||
<0x4b220000 0x2000>,
|
||||
<0x4b226000 0x2000>,
|
||||
<0x4b22e000 0x31c>,
|
||||
<0x4b232000 0x58>;
|
||||
mem-names = "dram0", "dram1", "shrdram2", "intc", "cfg",
|
||||
"iep", "mii_rt";
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss1_mem2: uio_pruss1_mem2 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
mem = <0x4b228000 0x38>,
|
||||
<0x4b230000 0x60>,
|
||||
<0x4b232400 0x90>;
|
||||
mem-names = "uart", "ecap", "mdio";
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss1_evt0: uio_pruss1_evt0 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 186 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss1_evt1: uio_pruss1_evt1 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 187 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss1_evt2: uio_pruss1_evt2 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 188 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss1_evt3: uio_pruss1_evt3 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss1_evt4: uio_pruss1_evt4 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss1_evt5: uio_pruss1_evt5 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss1_evt6: uio_pruss1_evt6 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 192 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss1_evt7: uio_pruss1_evt7 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 193 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
uio_pruss1_0_mem: uio_pruss1_0_mem {
|
||||
compatible = "ti,uio-module-drv";
|
||||
mem = <0x4b234000 0x3000>,
|
||||
<0x4b222000 0x400>,
|
||||
<0x4b222400 0x100>;
|
||||
mem-names = "iram", "control", "debug";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
uio_pruss1_1_mem: uio_pruss1_1_mem {
|
||||
compatible = "ti,uio-module-drv";
|
||||
mem = <0x4b238000 0x3000>,
|
||||
<0x4b224000 0x400>,
|
||||
<0x4b224400 0x100>;
|
||||
mem-names = "iram", "control", "debug";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
uio_pruss2_mem: uio_pruss2_mem {
|
||||
compatible = "ti,uio-module-drv";
|
||||
ti,hwmods = "pruss2";
|
||||
mem = <0x4b280000 0x2000>,
|
||||
<0x4b282000 0x2000>,
|
||||
<0x4b290000 0x8000>,
|
||||
<0x4b2a0000 0x2000>,
|
||||
<0x4b2a6000 0x2000>,
|
||||
<0x4b2ae000 0x31c>,
|
||||
<0x4b2b2000 0x58>;
|
||||
mem-names = "dram0", "dram1", "shrdram2", "intc", "cfg",
|
||||
"iep", "mii_rt";
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_mem2: uio_pruss2_mem2 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
mem = <0x4b2a8000 0x38>,
|
||||
<0x4b2b0000 0x60>,
|
||||
<0x4b2b2400 0x90>;
|
||||
mem-names = "uart", "ecap", "mdio";
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_evt0: uio_pruss2_evt0 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 196 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_evt1: uio_pruss2_evt1 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 197 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_evt2: uio_pruss2_evt2 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_evt3: uio_pruss2_evt3 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 199 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_evt4: uio_pruss2_evt4 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 200 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_evt5: uio_pruss2_evt5 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 201 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_evt6: uio_pruss2_evt6 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 202 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_evt7: uio_pruss2_evt7 {
|
||||
compatible = "ti,uio-module-drv";
|
||||
interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
uio_pruss2_0_mem: uio_pruss2_0_mem {
|
||||
compatible = "ti,uio-module-drv";
|
||||
mem = <0x4b2b4000 0x3000>,
|
||||
<0x4b2a2000 0x400>,
|
||||
<0x4b2a2400 0x100>;
|
||||
mem-names = "iram", "control", "debug";
|
||||
status = "okay";
|
||||
};
|
||||
uio_pruss2_1_mem: uio_pruss2_1_mem {
|
||||
compatible = "ti,uio-module-drv";
|
||||
mem = <0x4b2b8000 0x3000>,
|
||||
<0x4b2a4000 0x400>,
|
||||
<0x4b2a4400 0x100>;
|
||||
mem-names = "iram", "control", "debug";
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pruss1 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&pru1_0 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&pru1_1 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&pruss2 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&pru2_0 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&pru2_1 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&pruss2_mdio {
|
||||
status = "disabled";
|
||||
};
|
||||
@@ -6,4 +6,4 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-4.4:"
|
||||
|
||||
BRANCH = "ti-rt-linux-4.4.y"
|
||||
|
||||
SRCREV = "01711ca3dbed322591d9e0c2c20eb57afa2110e7"
|
||||
SRCREV = "8c26434b1cf4e1c3011c7a9925aeb2bec735db6a"
|
||||
|
||||
@@ -42,16 +42,17 @@ RDEPENDS_kernel-base_append_k2l-evm = " netcp-pa-fw"
|
||||
# Add run-time dependency for PRU Ethernet firmware to the rootfs
|
||||
RDEPENDS_kernel-base_append_am57xx-evm = " prueth-fw"
|
||||
RDEPENDS_kernel-base_append_am437x-evm = " prueth-fw"
|
||||
RDEPENDS_kernel-base_append_am335x-evm = " prueth-fw"
|
||||
|
||||
# Default is to package all dtb files for ti33x devices unless building
|
||||
# for the specific beaglebone machine.
|
||||
KERNEL_DEVICETREE_ti33x = "am335x-evm.dtb am335x-evmsk.dtb am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb"
|
||||
KERNEL_DEVICETREE_ti33x = "am335x-evm.dtb am335x-evmsk.dtb am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb am335x-icev2.dtb"
|
||||
KERNEL_DEVICETREE_ti43x = "am43x-epos-evm.dtb am437x-gp-evm.dtb am437x-gp-evm-hdmi.dtb am437x-sk-evm.dtb am437x-idk-evm.dtb"
|
||||
KERNEL_DEVICETREE_beaglebone = "am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb"
|
||||
KERNEL_DEVICETREE_omap5-evm = "omap5-uevm.dtb"
|
||||
KERNEL_DEVICETREE_dra7xx-evm = "dra7-evm.dtb dra7-evm-lcd-lg.dtb dra7-evm-lcd-osd.dtb dra72-evm.dtb dra72-evm-revc.dtb dra72-evm-lcd-lg.dtb dra72-evm-lcd-osd.dtb"
|
||||
KERNEL_DEVICETREE_dra7xx-hs-evm = "${KERNEL_DEVICETREE_dra7xx-evm}"
|
||||
KERNEL_DEVICETREE_am57xx-evm = "am57xx-beagle-x15.dtb am57xx-beagle-x15-revb1.dtb am57xx-evm.dtb am57xx-evm-reva3.dtb am571x-idk.dtb am572x-idk.dtb"
|
||||
KERNEL_DEVICETREE_am57xx-evm = "am57xx-beagle-x15.dtb am57xx-beagle-x15-revb1.dtb am57xx-evm.dtb am57xx-evm-reva3.dtb am571x-idk.dtb am572x-idk.dtb am571x-idk-lcd-osd.dtb am572x-idk-lcd-osd.dtb"
|
||||
KERNEL_DEVICETREE_omap3 = "omap3-beagle.dtb omap3-beagle-xm.dtb omap3-beagle-xm-ab.dtb omap3-evm.dtb omap3-evm-37xx.dtb am3517-evm.dtb"
|
||||
KERNEL_DEVICETREE_am3517-evm = "am3517-evm.dtb"
|
||||
KERNEL_DEVICETREE_am37x-evm = "omap3-evm-37xx.dtb"
|
||||
@@ -70,8 +71,8 @@ S = "${WORKDIR}/git"
|
||||
|
||||
BRANCH = "ti-lsk-linux-4.4.y"
|
||||
|
||||
SRCREV = "a4f797e3abb23234fb1fdf6694faaf91822f1a1c"
|
||||
PV = "4.4.7+git${SRCPV}"
|
||||
SRCREV = "51452e46647ed57ae83e6a95e1a4d700260e6bf0"
|
||||
PV = "4.4.12+git${SRCPV}"
|
||||
|
||||
# Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a rebuild
|
||||
MACHINE_KERNEL_PR_append = "a"
|
||||
@@ -79,10 +80,10 @@ PR = "${MACHINE_KERNEL_PR}"
|
||||
|
||||
KERNEL_CONFIG_DIR = "${S}/ti_config_fragments"
|
||||
|
||||
# SoC specific config fragments are not enabled yet
|
||||
KERNEL_CONFIG_FRAGMENTS_append_ti33x = " ${KERNEL_CONFIG_DIR}/am33xx_only.cfg"
|
||||
KERNEL_CONFIG_FRAGMENTS_append_ti43x = " ${KERNEL_CONFIG_DIR}/am43xx_only.cfg"
|
||||
KERNEL_CONFIG_FRAGMENTS_append_dra7xx = " ${KERNEL_CONFIG_DIR}/dra7_only.cfg"
|
||||
KERNEL_CONFIG_FRAGMENTS_append_k2g-evm = " ${KERNEL_CONFIG_DIR}/k2g_only.cfg"
|
||||
|
||||
MULTI_CONFIG_BASE_SUFFIX = ""
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@ SRC_URI_append_keystone = " file://keystone-uio.dtsi"
|
||||
SRC_URI_append_k2hk-evm = " file://k2hk-uio.dtsi"
|
||||
SRC_URI_append_k2l-evm = " file://k2l-uio.dtsi"
|
||||
SRC_URI_append_k2e-evm = " file://k2e-uio.dtsi"
|
||||
SRC_URI_append_am57xx-evm = " file://am572x-pru-uio.dtsi"
|
||||
|
||||
DTSI_LIST = ""
|
||||
DTSI_LIST_append_keystone = " keystone-uio.dtsi"
|
||||
@@ -9,6 +10,8 @@ DTSI_LIST_append_k2hk-evm = " k2hk-uio.dtsi"
|
||||
DTSI_LIST_append_k2l-evm = " k2l-uio.dtsi"
|
||||
DTSI_LIST_append_k2e-evm = " k2e-uio.dtsi"
|
||||
|
||||
KERNEL_DEVICETREE_append_am57xx-evm = "${@base_conditional("ENABLE_TI_UIO_DEVICES", "1", " am572x-idk-pru-excl-uio.dtb", "", d)}"
|
||||
|
||||
do_setup_uio() {
|
||||
if [ "${ENABLE_TI_UIO_DEVICES}" == "1" ]
|
||||
then
|
||||
@@ -24,4 +27,16 @@ do_setup_uio() {
|
||||
fi
|
||||
}
|
||||
|
||||
do_setup_uio_append_am57xx-evm() {
|
||||
|
||||
if [ "${ENABLE_TI_UIO_DEVICES}" == "1" ]
|
||||
then
|
||||
dts="am572x-idk-pru-excl-uio.dts"
|
||||
dtsi="am572x-pru-uio.dtsi"
|
||||
cp ${S}/arch/arm/boot/dts/am572x-idk.dts ${S}/arch/arm/boot/dts/$dts
|
||||
cp ${WORKDIR}/${dtsi} ${S}/arch/arm/boot/dts/
|
||||
echo "#include \"${dtsi}\"" >> ${S}/arch/arm/boot/dts/$dts
|
||||
fi
|
||||
}
|
||||
|
||||
do_patch[postfuncs] += "do_setup_uio"
|
||||
|
||||
@@ -19,3 +19,5 @@ do_install() {
|
||||
}
|
||||
|
||||
FILES_${PN} = "${GCC_ARM_NONE_TOOLCHAIN_RECIPE}/*"
|
||||
|
||||
INSANE_SKIP_${PN} = "already-stripped"
|
||||
|
||||
6
recipes-ti/devtools/ti-ccsv6-native_6.1.2.00015.bb → recipes-ti/devtools/ti-ccsv6-native_6.1.3.00033.bb
Normal file → Executable file
6
recipes-ti/devtools/ti-ccsv6-native_6.1.2.00015.bb → recipes-ti/devtools/ti-ccsv6-native_6.1.3.00033.bb
Normal file → Executable file
@@ -10,7 +10,7 @@ require recipes-ti/includes/ti-unpack.inc
|
||||
require recipes-ti/includes/ti-staging.inc
|
||||
require recipes-ti/includes/ti-paths.inc
|
||||
|
||||
TI_CGT_ARM_VERSION = "5.2.5"
|
||||
TI_CGT_ARM_VERSION = "15.12.1.LTS"
|
||||
|
||||
SRC_URI = "http://install.source.dir.local/CCS${PV}_linux.tar.gz;name=ccsv6"
|
||||
|
||||
@@ -20,8 +20,8 @@ BINFILE = "CCS${PV}_linux/ccs_setup_${PV}.bin"
|
||||
TI_BIN_UNPK_ARGS = "--mode unattended --prefix ${WORKDIR}"
|
||||
TI_BIN_UNPK_CMDS = ""
|
||||
|
||||
SRC_URI[ccsv6.md5sum] = "cfe5a759068809df5b5926dfc9889683"
|
||||
SRC_URI[ccsv6.sha256sum] = "6c25c046898812dcc72f08af512321bb4c9833ab932e4792560e14c13fbc7dc5"
|
||||
SRC_URI[ccsv6.md5sum] = "d95121970f8bcee944bf8b8e576bf3ec"
|
||||
SRC_URI[ccsv6.sha256sum] = "b785f040de8cccbc571923e34303fea92484677845df64a65abee2d3c248fa5b"
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${CCSV6_INSTALL_DIR_RECIPE}
|
||||
@@ -40,6 +40,6 @@ FILES_${PN}-dbg = "${TI_CGT_PRU_INSTALL_DIR_RECIPE}/bin/.debug \
|
||||
${TI_CGT_PRU_INSTALL_DIR_RECIPE}/lib/.debug \
|
||||
"
|
||||
|
||||
INSANE_SKIP_${PN} += "arch staticdev"
|
||||
INSANE_SKIP_${PN} += "arch staticdev already-stripped"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
@@ -24,8 +24,8 @@ python ti_bin_do_unpack() {
|
||||
lib32path = '/lib'
|
||||
if os.path.exists('/lib64') and (os.path.islink('/lib64') or os.path.islink('/lib') or os.path.exists('/lib32')):
|
||||
lib32path = '/lib32'
|
||||
if not os.path.exists('%s/libc.so.6' % lib32path):
|
||||
bb.warn("TI installer requires 32bit glibc libraries for proper operation\nrun 'yum install glibc.i686' on Fedora or 'apt-get install ia32-libs' on Ubuntu/Debian")
|
||||
if not os.path.exists('%s/libc.so.6' % lib32path) and not os.path.exists('%s/i386-linux-gnu/libc.so.6' % lib32path):
|
||||
bb.warn("TI installer requires 32bit glibc libraries for proper operation\nrun 'yum install glibc.i686' on Fedora or 'apt-get install libc6:i386' on Ubuntu/Debian")
|
||||
|
||||
localdata = bb.data.createCopy(d)
|
||||
bb.data.update_data(localdata)
|
||||
|
||||
23
recipes-ti/ipc/ipc-transport-common-rtos_git.bb
Normal file
23
recipes-ti/ipc/ipc-transport-common-rtos_git.bb
Normal file
@@ -0,0 +1,23 @@
|
||||
require recipes-ti/includes/ti-paths.inc
|
||||
require ipc-transport.inc
|
||||
|
||||
PR = "${INC_PR}.1"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://common_src/bench_common.h;beginline=1;endline=31;md5=a6ddfb26d2097041d513e3881f40e4e8"
|
||||
|
||||
COMPATIBLE_MACHINE = "k2hk-evm|k2l-evm|k2e-evm"
|
||||
|
||||
IPC_TRANSPORT_COMMON_DESTSUFFIX = "git/c66/example"
|
||||
|
||||
S = "${WORKDIR}/${IPC_TRANSPORT_COMMON_DESTSUFFIX}"
|
||||
|
||||
do_compile() {
|
||||
:
|
||||
}
|
||||
|
||||
do_install () {
|
||||
install -d ${D}${PDK_INSTALL_DIR_RECIPE}/packages/ti/transport/ipc/c66/example
|
||||
cp -r ${S} ${D}${PDK_INSTALL_DIR_RECIPE}/packages/ti/transport/ipc/c66
|
||||
}
|
||||
|
||||
FILES_${PN} += "${PDK_INSTALL_DIR_RECIPE}/packages/ti/transport/ipc/c66/example/*"
|
||||
25
recipes-ti/ipc/ipc-transport-qmss-rtos_git.bb
Normal file
25
recipes-ti/ipc/ipc-transport-qmss-rtos_git.bb
Normal file
@@ -0,0 +1,25 @@
|
||||
inherit ti-pdk
|
||||
require ipc-transport.inc
|
||||
|
||||
PR = "${INC_PR}.4"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://TransportQmss.xdc;beginline=1;endline=35;md5=ad783760d74a4cc5b8d4ad3d8a1f28a2"
|
||||
|
||||
COMPATIBLE_MACHINE = "k2hk-evm|k2l-evm|k2e-evm"
|
||||
|
||||
DEPENDS_append = " qmss-lld-rtos \
|
||||
cppi-lld-rtos \
|
||||
ti-ipc-rtos \
|
||||
ipc-transport-common-rtos \
|
||||
"
|
||||
|
||||
IPC_TRANSPORT_QMSS_DESTSUFFIX = "git/c66/qmss"
|
||||
|
||||
S = "${WORKDIR}/${IPC_TRANSPORT_QMSS_DESTSUFFIX}"
|
||||
|
||||
XDCARGS_k2hk-evm = "k2h k2k"
|
||||
XDCARGS_k2e-evm = "k2e"
|
||||
XDCARGS_k2l-evm = "k2l"
|
||||
|
||||
export IPC_INSTALL_PATH = "${IPC_INSTALL_DIR}"
|
||||
XDCPATH_append = ";${IPC_INSTALL_DIR}/packages"
|
||||
@@ -3,7 +3,9 @@ LICENSE = "BSD-3-Clause"
|
||||
|
||||
require ipc-transport.inc
|
||||
|
||||
INC_PR_append = ".0"
|
||||
INC_PR_append = ".1"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING.txt;md5=27bb0deb260c60120a8d7b91da7c3b02"
|
||||
|
||||
COMPATIBLE_MACHINE = "keystone"
|
||||
|
||||
|
||||
24
recipes-ti/ipc/ipc-transport-srio-rtos_git.bb
Normal file
24
recipes-ti/ipc/ipc-transport-srio-rtos_git.bb
Normal file
@@ -0,0 +1,24 @@
|
||||
inherit ti-pdk
|
||||
require ipc-transport.inc
|
||||
|
||||
PR = "${INC_PR}.2"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://TransportSrio.xdc;beginline=1;endline=35;md5=4d466471e4b933a0cc353a46bb546fe7"
|
||||
|
||||
COMPATIBLE_MACHINE = "k2hk-evm"
|
||||
|
||||
DEPENDS_append = " qmss-lld-rtos \
|
||||
cppi-lld-rtos \
|
||||
srio-lld-rtos \
|
||||
ti-ipc-rtos \
|
||||
ipc-transport-common-rtos \
|
||||
"
|
||||
|
||||
IPC_TRANSPORT_SRIO_DESTSUFFIX = "git/c66/srio"
|
||||
|
||||
S = "${WORKDIR}/${IPC_TRANSPORT_SRIO_DESTSUFFIX}"
|
||||
|
||||
XDCARGS_k2hk-evm = "k2h k2k"
|
||||
|
||||
export IPC_INSTALL_PATH = "${IPC_INSTALL_DIR}"
|
||||
XDCPATH_append = ";${IPC_INSTALL_DIR}/packages"
|
||||
@@ -3,7 +3,9 @@ LICENSE = "BSD-3-Clause"
|
||||
|
||||
require ipc-transport.inc
|
||||
|
||||
INC_PR_append = ".0"
|
||||
INC_PR_append = ".1"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING.txt;md5=27bb0deb260c60120a8d7b91da7c3b02"
|
||||
|
||||
COMPATIBLE_MACHINE = "k2hk-evm"
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
LIC_FILES_CHKSUM = "file://COPYING.txt;md5=27bb0deb260c60120a8d7b91da7c3b02"
|
||||
LICENSE = "BSD-3-Clause"
|
||||
|
||||
IPC_TRANSPORT_GIT_URI = "git://git.ti.com/keystone-linux/ipc-transport.git"
|
||||
IPC_TRANSPORT_GIT_BRANCH = "master"
|
||||
IPC_TRANSPORT_GIT_PROTOCOL = "git"
|
||||
IPC_TRANSPORT_GIT_BRANCH = "master"
|
||||
|
||||
# Below commit ID corresponds to DEV.IPC-TRANSPORT.02.00.00.01
|
||||
# Below commit ID corresponds to "DEV.IPC-TRANSPORT.02.00.00.01"
|
||||
IPC_TRANSPORT_SRCREV = "88ea336c584ccec4b2c281cd7f75df9dff6d4edf"
|
||||
|
||||
BRANCH="${IPC_TRANSPORT_GIT_BRANCH}"
|
||||
BRANCH = "${IPC_TRANSPORT_GIT_BRANCH}"
|
||||
SRC_URI = "${IPC_TRANSPORT_GIT_URI};protocol=${IPC_TRANSPORT_GIT_PROTOCOL};branch=${BRANCH}"
|
||||
|
||||
SRCREV = "${IPC_TRANSPORT_SRCREV}"
|
||||
PV = "02.00.00.01"
|
||||
|
||||
INC_PR = "r1"
|
||||
INC_PR = "r2"
|
||||
|
||||
@@ -2,9 +2,42 @@ require recipes-ti/includes/ti-paths.inc
|
||||
require recipes-ti/includes/ti-staging.inc
|
||||
require ti-ipc.inc
|
||||
|
||||
PR = "${INC_PR}.4"
|
||||
TI_IPC_EXAMPLES_GIT_URI = "git://git.ti.com/ipc/ipc-examples.git"
|
||||
TI_IPC_EXAMPLES_DEST_SUFFIX = "git/ipc-examples"
|
||||
TI_IPC_EXAMPLES_GIT_PROTOCOL = "git"
|
||||
TI_IPC_EXAMPLES_GIT_BRANCH = "master"
|
||||
TI_IPC_EXAMPLES_NAME = "ipc-examples"
|
||||
|
||||
DEPENDS = "ti-xdctools ti-sysbios"
|
||||
SRC_URI += "${TI_IPC_EXAMPLES_GIT_URI};\
|
||||
destsuffix=${TI_IPC_EXAMPLES_DEST_SUFFIX};\
|
||||
protocol=${TI_IPC_EXAMPLES_GIT_PROTOCOL};\
|
||||
branch=${TI_IPC_EXAMPLES_GIT_BRANCH};\
|
||||
name=${TI_IPC_EXAMPLES_NAME}"
|
||||
|
||||
TI_IPC_METADATA_GIT_URI = "git://git.ti.com/ipc/ipc-metadata.git"
|
||||
TI_IPC_METADATA_DEST_SUFFIX = "git/ipc-metadata"
|
||||
TI_IPC_METADATA_GIT_PROTOCOL = "git"
|
||||
TI_IPC_METADATA_GIT_BRANCH = "master"
|
||||
TI_IPC_METADATA_NAME = "ipc-metadata"
|
||||
|
||||
SRC_URI += "${TI_IPC_METADATA_GIT_URI};\
|
||||
destsuffix=${TI_IPC_METADATA_DEST_SUFFIX};\
|
||||
protocol=${TI_IPC_METADATA_GIT_PROTOCOL};\
|
||||
branch=${TI_IPC_METADATA_GIT_BRANCH};\
|
||||
name=${TI_IPC_METADATA_NAME}"
|
||||
|
||||
# Corresponds to tag: 3.43.00.01
|
||||
SRCREV_ipc-examples = "54df963e83f2fd613f794dc3b1b72c8ed855e0ac"
|
||||
|
||||
# Corresponds to tag: 3.43.00.01
|
||||
SRCREV_ipc-metadata = "8829b3cf2068c87140ac062849c33cd1a21de636"
|
||||
|
||||
S_ipc-examples = "${WORKDIR}/git/ipc-examples"
|
||||
S_ipc-metadata = "${WORKDIR}/git/ipc-metadata"
|
||||
|
||||
PR = "${INC_PR}.0"
|
||||
|
||||
DEPENDS = "ti-xdctools ti-sysbios doxygen-native"
|
||||
DEPENDS_append_keystone = " ti-cgt6x-native \
|
||||
gcc-arm-none-eabi-native \
|
||||
"
|
||||
@@ -26,6 +59,7 @@ IPC_TARGETS = ""
|
||||
IPC_TARGETS_omap-a15 = "\
|
||||
gnu.targets.arm.A15F="${GCC_ARM_NONE_TOOLCHAIN}" \
|
||||
ti.targets.elf.C66="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \
|
||||
ti.targets.elf.C66_big_endian="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \
|
||||
ti.targets.arm.elf.M4="${M4_TOOLCHAIN_INSTALL_DIR}" \
|
||||
ti.targets.arm.elf.M4F="${M4_TOOLCHAIN_INSTALL_DIR}" \
|
||||
"
|
||||
@@ -33,18 +67,60 @@ IPC_TARGETS_omap-a15 = "\
|
||||
IPC_TARGETS_keystone = " \
|
||||
gnu.targets.arm.A15F="${GCC_ARM_NONE_TOOLCHAIN}" \
|
||||
ti.targets.elf.C66="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \
|
||||
ti.targets.elf.C66_big_endian="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \
|
||||
"
|
||||
|
||||
EXTRA_OEMAKE = "\
|
||||
PLATFORM=${PLATFORM} \
|
||||
XDC_INSTALL_DIR="${XDC_INSTALL_DIR}" \
|
||||
BIOS_INSTALL_DIR="${SYSBIOS_INSTALL_DIR}" \
|
||||
${IPC_TARGETS} -f ipc-bios.mak\
|
||||
${IPC_TARGETS} \
|
||||
"
|
||||
|
||||
RELEASE_TYPE = "GA"
|
||||
RELEASE_SUFFIX = ""
|
||||
|
||||
IPC_PACKAGE_DIR = "${S}/ipc-package"
|
||||
|
||||
do_compile() {
|
||||
oe_runmake clean
|
||||
oe_runmake all
|
||||
oe_runmake -f ipc-bios.mak clean
|
||||
oe_runmake -f ipc-bios.mak release
|
||||
|
||||
cd ${S_ipc-metadata}
|
||||
oe_runmake .all-files IPC_INSTALL_DIR="${S}" \
|
||||
BUILD_HOST_OS="linux" \
|
||||
RELEASE_TYPE="${RELEASE_TYPE}"
|
||||
|
||||
cd ${S_ipc-examples}/src
|
||||
oe_runmake .examples \
|
||||
IPCTOOLS="${S_ipc-metadata}/src/etc"
|
||||
|
||||
if [ "${PLATFORM}" != "UNKNOWN" ]; then
|
||||
oe_runmake extract HOSTOS="bios" IPC_INSTALL_DIR="${S}"
|
||||
oe_runmake extract HOSTOS="linux" IPC_INSTALL_DIR="${S}"
|
||||
|
||||
if [ ! -z ${ALT_PLATFORM} ]; then
|
||||
oe_runmake extract PLATFORM=${ALT_PLATFORM} HOSTOS="bios" IPC_INSTALL_DIR="${S}"
|
||||
oe_runmake extract PLATFORM=${ALT_PLATFORM} HOSTOS="linux" IPC_INSTALL_DIR="${S}"
|
||||
fi
|
||||
fi
|
||||
|
||||
IPC_VERSION=`echo ${PV}${RELEASE_SUFFIX} | sed -e 's|\.|_|g'`
|
||||
install -d ${IPC_PACKAGE_DIR}
|
||||
# Copy docs and other meta files
|
||||
cp -pPrf ${S_ipc-metadata}/exports/ipc_${IPC_VERSION}/* -d ${IPC_PACKAGE_DIR}
|
||||
|
||||
# Copy example folders corresponding to the platforms
|
||||
if [ "${PLATFORM}" != "UNKNOWN" ]; then
|
||||
install -d ${IPC_PACKAGE_DIR}/examples
|
||||
cp -pPf ${S_ipc-examples}/src/examples/*.* ${IPC_PACKAGE_DIR}/examples/
|
||||
cp -pPf ${S_ipc-examples}/src/examples/makefile ${IPC_PACKAGE_DIR}/examples/
|
||||
cp -pPrf ${S_ipc-examples}/src/examples/${PLATFORM}* ${IPC_PACKAGE_DIR}/examples/
|
||||
if [ ! -z ${ALT_PLATFORM} ]; then
|
||||
cp -pPrf ${S_ipc-examples}/src/examples/${ALT_PLATFORM}* ${IPC_PACKAGE_DIR}/examples/
|
||||
fi
|
||||
find ${IPC_PACKAGE_DIR}/examples/ -name "*zip" -type f | xargs -I {} rm {}
|
||||
fi
|
||||
}
|
||||
|
||||
do_compile_append() {
|
||||
@@ -52,25 +128,27 @@ do_compile_append() {
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${IPC_INSTALL_DIR_RECIPE}
|
||||
cp -pPrf ${S}/* ${D}${IPC_INSTALL_DIR_RECIPE}
|
||||
IPC_VERSION=`echo ${PV}${RELEASE_SUFFIX} | sed -e 's|\.|_|g'`
|
||||
# Copy docs and other meta files
|
||||
install -d ${D}${IPC_INSTALL_DIR_RECIPE}
|
||||
cp -pPrf ${IPC_PACKAGE_DIR}/* -d ${D}${IPC_INSTALL_DIR_RECIPE}
|
||||
|
||||
install -d ${D}${base_libdir}/firmware/ipc
|
||||
cp -pPrf ${S}/packages/ti/ipc/tests/bin/* ${D}${base_libdir}/firmware/ipc
|
||||
install -d ${D}${base_libdir}/firmware/ipc
|
||||
cp -pPrf ${S}/packages/ti/ipc/tests/bin/* ${D}${base_libdir}/firmware/ipc || true
|
||||
}
|
||||
|
||||
ALTERNATIVE_PRIORITY = "5"
|
||||
|
||||
pkg_postinst_${PN}-fw_omap-a15 () {
|
||||
update-alternatives --install /lib/firmware/dra7-dsp1-fw.xe66 dra7-dsp1-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp1/test_omx_dsp1_vayu.xe66 ${ALTERNATIVE_PRIORITY}
|
||||
update-alternatives --install /lib/firmware/dra7-dsp2-fw.xe66 dra7-dsp2-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp2/test_omx_dsp2_vayu.xe66 ${ALTERNATIVE_PRIORITY}
|
||||
update-alternatives --install /lib/firmware/dra7-ipu1-fw.xem4 dra7-ipu1-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu1/test_omx_ipu1_vayu.xem4 ${ALTERNATIVE_PRIORITY}
|
||||
update-alternatives --install /lib/firmware/dra7-ipu2-fw.xem4 dra7-ipu2-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu2/test_omx_ipu2_vayu.xem4 ${ALTERNATIVE_PRIORITY}
|
||||
update-alternatives --install /lib/firmware/dra7-dsp1-fw.xe66 dra7-dsp1-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp1/test_omx_dsp1_vayu.xe66 ${ALTERNATIVE_PRIORITY}
|
||||
update-alternatives --install /lib/firmware/dra7-dsp2-fw.xe66 dra7-dsp2-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp2/test_omx_dsp2_vayu.xe66 ${ALTERNATIVE_PRIORITY}
|
||||
update-alternatives --install /lib/firmware/dra7-ipu1-fw.xem4 dra7-ipu1-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu1/test_omx_ipu1_vayu.xem4 ${ALTERNATIVE_PRIORITY}
|
||||
update-alternatives --install /lib/firmware/dra7-ipu2-fw.xem4 dra7-ipu2-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu2/test_omx_ipu2_vayu.xem4 ${ALTERNATIVE_PRIORITY}
|
||||
}
|
||||
|
||||
pkg_postrm_${PN}-fw_omap-a15 () {
|
||||
update-alternatives --remove dra7-dsp1-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp1/test_omx_dsp1_vayu.xe66
|
||||
update-alternatives --remove dra7-dsp2-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp2/test_omx_dsp2_vayu.xe66
|
||||
update-alternatives --remove dra7-ipu1-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu1/test_omx_ipu1_vayu.xem4
|
||||
update-alternatives --remove dra7-ipu2-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu2/test_omx_ipu2_vayu.xem4
|
||||
update-alternatives --remove dra7-dsp1-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp1/test_omx_dsp1_vayu.xe66
|
||||
update-alternatives --remove dra7-dsp2-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp2/test_omx_dsp2_vayu.xe66
|
||||
update-alternatives --remove dra7-ipu1-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu1/test_omx_ipu1_vayu.xem4
|
||||
update-alternatives --remove dra7-ipu2-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu2/test_omx_ipu2_vayu.xem4
|
||||
}
|
||||
|
||||
@@ -6,17 +6,17 @@ LIC_FILES_CHKSUM = "file://${S}/ipc-linux.mak;beginline=1;endline=30;md5=7b327f9
|
||||
|
||||
TI_IPC_GIT_URI = "git://git.ti.com/ipc/ipcdev.git"
|
||||
TI_IPC_GIT_PROTOCOL = "git"
|
||||
TI_IPC_GIT_BRANCH = "3.42"
|
||||
TI_IPC_GIT_BRANCH = "3.43"
|
||||
|
||||
#Corresponds to 3.42.00.02
|
||||
TI_IPC_SRCREV = "a520969994378fb2629d7dfc25f306c3a711b5bc"
|
||||
#Corresponds to 3.43.00.01
|
||||
TI_IPC_SRCREV = "9e6ebc02c14ed4150dad5d45d8a7e35258bf37ad"
|
||||
|
||||
BRANCH = "${TI_IPC_GIT_BRANCH}"
|
||||
SRC_URI = "${TI_IPC_GIT_URI};protocol=${TI_IPC_GIT_PROTOCOL};branch=${BRANCH}"
|
||||
SRC_URI = "${TI_IPC_GIT_URI};protocol=${TI_IPC_GIT_PROTOCOL};branch=${BRANCH};name=ipcdev"
|
||||
SRCREV = "${TI_IPC_SRCREV}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
PV = "3.42.00.02"
|
||||
PV = "3.43.00.01"
|
||||
INC_PR = "r0"
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
|
||||
@@ -9,13 +9,19 @@ DEBIAN_NOAUTONAME_${PN}-dev = "1"
|
||||
DEBIAN_NOAUTONAME_${PN}-dbg = "1"
|
||||
DEBIAN_NOAUTONAME_${PN}-staticdev = "1"
|
||||
|
||||
BRANCH = "master"
|
||||
SRC_URI = "git://git.ti.com/keystone-rtos/netapi.git;protocol=git;branch=${BRANCH}"
|
||||
NETAPI_GIT_URI = "git://git.ti.com/keystone-rtos/netapi.git"
|
||||
NETAPI_GIT_PROTOCOL = "git"
|
||||
NETAPI_GIT_BRANCH = "master"
|
||||
|
||||
# Below Commit ID corresponds to "DEV.NETAPI.01.01.00.06"
|
||||
SRCREV = "8180b61615965954eaaedc26053f9a8939d9a273"
|
||||
NETAPI_SRCREV = "8180b61615965954eaaedc26053f9a8939d9a273"
|
||||
|
||||
BRANCH = "${NETAPI_GIT_BRANCH}"
|
||||
SRC_URI = "${NETAPI_GIT_URI};protocol=${NETAPI_GIT_PROTOCOL};branch=${BRANCH}"
|
||||
SRCREV = "${NETAPI_SRCREV}"
|
||||
|
||||
PV = "01.01.00.06"
|
||||
INC_PR = "r4"
|
||||
INC_PR = "r5"
|
||||
|
||||
DEVICELIST_k2hk-evm = "k2h k2k"
|
||||
DEVICELIST_k2l-evm = "k2l"
|
||||
|
||||
@@ -5,7 +5,7 @@ LICENSE = "BSD"
|
||||
require recipes-ti/includes/ti-paths.inc
|
||||
|
||||
PV = "2_02_01_03"
|
||||
PR = "r0"
|
||||
PR = "r1"
|
||||
|
||||
OPENMP_RTOS_GIT_URI = "git://git.ti.com/openmp/ti-openmp-dsp-runtime.git"
|
||||
OPENMP_RTOS_GIT_PROTOCOL = "git"
|
||||
@@ -19,7 +19,7 @@ SRCREV = "9bf371e9618297f8783113bff05995800535c27d"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://docs/license/omp_manifest_template.html;md5=61a6972303c0447b7c056195d7ebafee"
|
||||
|
||||
DEPENDS = "common-csl-ip-rtos ti-xdctools ti-ipc-rtos ti-sysbios ti-cgt6x-native libulm"
|
||||
DEPENDS = "common-csl-ip-rtos ti-xdctools ti-ipc-rtos ti-sysbios ti-cgt6x-native libulm zip-native"
|
||||
DEPENDS_append_k2hk-evm = " qmss-lld-rtos cppi-lld-rtos"
|
||||
DEPENDS_append_k2e-evm = " qmss-lld-rtos cppi-lld-rtos"
|
||||
DEPENDS_append_k2l-evm = " qmss-lld-rtos cppi-lld-rtos"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
DESCRIPTION = "TI Operating System Abstraction Library (OSAL)"
|
||||
HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/osal"
|
||||
LICENSE = "BSD & EPL"
|
||||
LICENSE = "BSD & EPL-1.0"
|
||||
SECTION = "devel"
|
||||
|
||||
require ../includes/ti-paths.inc
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
DESCRIPTION = "TI softhsmv2 package"
|
||||
LICENSE = "BSD-2-Clause | BSD-3-Clause | ISC | IBM-License | FSFULLR | Zlib"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=664f3daf042b19d634189e709d5d558e"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=700a883962ccff663f888f3f7221ce8f"
|
||||
SECTION = "libs"
|
||||
|
||||
mntdir = "/mnt"
|
||||
@@ -10,12 +10,12 @@ inherit autotools pkgconfig
|
||||
DEPENDS = "openssl libdaemon zlib"
|
||||
COMPATIBLE_MACHINE = "(tci6614-evm|keystone)"
|
||||
|
||||
BRANCH="master"
|
||||
BRANCH="ti-softhsm-rebase"
|
||||
SRC_URI = "git://git.ti.com/keystone-linux/ti-softhsmv2.git;protocol=git;branch=${BRANCH}"
|
||||
#Following commit corresponds to tag DEV.SOFTHSM-01.03.00.04
|
||||
SRCREV = "c2688afb9373309751e640088705cb739997665d"
|
||||
PV = "1.3.0.4"
|
||||
PR = "r1"
|
||||
#Following commit corresponds to tag DEV.SOFTHSM-02.00.00.00
|
||||
SRCREV = "b0eef602c03583e59c289ba113b64eaa4f5cac13"
|
||||
PV = "2.0.0.0"
|
||||
PR = "r0"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user