1
0
mirror of https://git.yoctoproject.org/meta-ti synced 2026-01-12 01:20:20 +00:00

Compare commits

...

52 Commits

Author SHA1 Message Date
Denys Dmytriyenko
1ae0cadb12 u-boot-ti-staging: update to ti2016.01-rc4 tag
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-06-02 20:12:04 -04:00
Denys Dmytriyenko
31212fec61 linux-ti-staging: update to 4.4.12 and ti2016.01-rc4 tag
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-06-02 20:12:00 -04:00
Denys Dmytriyenko
4b7a863b9d cm3-pm-firmware: correct license to TI-TSPA
It was incorrectly identified as BSD-3-Clause

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-06-01 23:55:42 -04:00
Sam Nelson
f43d380691 linux-ti-staging: Update uio entries for am572x
Rearranged memory sections
Added additional memory section to accomodate required sections more
than 8
Incremented PR append for linux-ti-staging

Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-06-01 15:45:37 -04:00
Sam Nelson
3ac974779d ti-ipc: Update to new version 3.43
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-06-01 15:45:19 -04:00
Ming Wei
10960c248c ti-ccsv6-native: update to new version 6.1.3.00033
updated ARM-CGT version and MD5/SHAR256 checksum

Signed-off-by: Ming Wei <mwei@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-06-01 15:45:14 -04:00
Sam Nelson
55dc15a8f4 ti-ipc-rtos: Update to include examples and documentation with the package
Updated to new version 3.42.01.03
Added procedures and source urls for adding examples and documentation
into src package.
Added dependency on doxygen for document creation
Added big endian c66 targets
Updated uniform formatting

Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-27 17:18:28 -04:00
e-ruei1@ti.com
2a57c4c768 ti-sgx-ddk-um: update srcrev and bump PR
* bring in the fix of QML overlay display problem

Signed-off-by: Eric Ruei <e-ruei1@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-26 21:59:31 -04:00
Denys Dmytriyenko
b094cd07c1 machine: explicitly list ubifs in IMAGE_FSTYPES, so RM_OLD_IMAGE works
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-26 21:59:16 -04:00
Jacob Stiffler
3f2d7dff00 k2g-evm: add opencl feature
Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-26 21:59:07 -04:00
Sam Nelson
d098dfccc1 linux-ti-staging: Update pru uio dtb entries
added additional entries to allow access to ecap and uart regions
Update Kernel PR to force rebuild

Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-26 21:58:57 -04:00
Denys Dmytriyenko
2658df4437 machine: bump max_leb_cnt for am3 and am4 platforms
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-22 23:58:42 -04:00
Denys Dmytriyenko
8599d32a62 u-boot-ti-staging: update to final 2016.05 and ti2016.01-rc3 tag
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-22 12:31:31 -04:00
Denys Dmytriyenko
594cbb0142 linux-ti-staging: update to 4.4.11 and ti2016.01-rc3 tag
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-22 12:31:29 -04:00
Denys Dmytriyenko
9954e289e6 machine: add opencl feature to corresponding platforms
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-22 12:31:24 -04:00
Sam Nelson
2a8d94c1fa linux-ti-staging: Add new device tree target am572x-idk-pru-excl-uio.dtb
This new device tree file is to support pruss with uio based drivers
alone.
Adds uio entries for pruss susbsystem and disables other drivers
controlling the same.
New dtb is added only if ENABLE_TI_UIO_DEVICES is enabled.

Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-18 16:50:38 -04:00
Denys Dmytriyenko
8166221b76 u-boot-ti-staging: update for ti2016.01-rc2 tag
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-16 12:21:34 -04:00
Denys Dmytriyenko
c59c597aae linux-ti-staging: update to 4.4.10 and ti2016.01-rc2 tag
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-16 12:21:30 -04:00
Sam Nelson
7656af805f uio-module-drv: Update to 2.0.0.0 GA version
Reformatted recipes to have one common PV between module and test
recipes

Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-13 14:57:16 -04:00
Anand Balagopalakrishnan
3f896e1c52 ti-sgx-ddk-um: update srcrev and bump PR
* rebuild SGX user mode driver with GCC 5.3

Signed-off-by: Anand Balagopalakrishnan <anandb@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-13 14:57:08 -04:00
Jacob Stiffler
6cc3e56407 ti-softhsmv2: bump SRCREV to version to 2.0.0.0
* License checksum has changed due to an updated date in the LICENSE
  file

Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-13 14:57:02 -04:00
Jacob Stiffler
0e804eb4d9 ti-sgx-ddk-um: Add DEPENDS based on REDEPENDS
* The ti-sgx-ddk-um recipe installs pre-built libraries
* Because of this, the dependencies are given as RDEPENDS as they are
  not needed for building the recipe
* However, this may break recipes which depend on ti-sgx-ddk-um, as
  the ti-sgx-ddk-um dependencies may not yet be populated in the
  sysroot.
* This resolves the break in the dependency chain by translating the
  RDEPENDS into a list of DEPENDS

Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-11 20:44:02 -04:00
Denys Dmytriyenko
ddbb13e225 u-boot-ti-staging: update to ti2016.01-rc1
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-09 12:50:36 -04:00
Denys Dmytriyenko
1fc1e6e5cf linux-ti-staging: update to ti2016.01-rc1
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-09 12:50:32 -04:00
Denys Dmytriyenko
f7c550cdfb prueth-fw: add FW images for am335x
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-09 12:50:28 -04:00
Denys Dmytriyenko
9b6527720c ti-sci-fw: update to the latest 0.1.1.12
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-09 10:40:15 -04:00
Denys Dmytriyenko
3f9714bd9f u-boot-ti-staging: 2016.05-rc3 with K2, PRU and other updates
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-05 16:44:03 -04:00
Denys Dmytriyenko
71380b1923 linux-ti-staging: 4.4.9 with SGX, A/D, platform, connectivity, rpmsg updates
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-05 16:43:58 -04:00
Anand Balagopalakrishnan
57e55c84c9 ti-sgx-ddk-km: update srcrev and branch name, bump PR
Signed-off-by: Anand Balagopalakrishnan <anandb@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-05 11:16:05 -04:00
Anand Balagopalakrishnan
ce947bca0e ti-sgx-ddk-um: update srcrev and bump PR
Signed-off-by: Anand Balagopalakrishnan <anandb@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-05 11:16:03 -04:00
Denys Dmytriyenko
d236f27110 machines: configure all used consoles regardless of UART driver
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-04 13:40:40 -04:00
Jacob Stiffler
c1eecb62f2 openmp-rtos: Add zip-native as a dependency
* The openmp-rtos build procedure uses zip to create the release
  package and is therefore the native zip is required as a dependency

Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-04 13:40:38 -04:00
Denys Dmytriyenko
e9729ddb00 eudev: install the new firmware rule
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-04 12:41:42 -04:00
Denys Dmytriyenko
a3c5205f4d linux-ti-staging: update with latest fixes, add new DTBs
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-04 12:41:40 -04:00
Denys Dmytriyenko
103171802b ti-unpack: update for new Ubuntu 32bit lib packaging
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-03 16:35:35 -04:00
Denys Dmytriyenko
55408800f8 recipes: replace remaining base_contains with bb.utils.contains
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-05-02 22:18:59 -04:00
Denys Dmytriyenko
9b2e9feb49 ti-osal: correct EPL license reference
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-29 21:32:58 -04:00
Denys Dmytriyenko
3b6b0b7d2f ti-cgt-pru: suppress already stripped warning
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-29 21:32:55 -04:00
Denys Dmytriyenko
b64a94a41f gcc-arm-none-eabi-native: suppress already stripped warning
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-29 21:32:51 -04:00
Denys Dmytriyenko
4b96409bcc eudev: immediately tell kernel that userspace FW loading failed
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-29 21:32:46 -04:00
Denys Dmytriyenko
ca43376a8c vis: prevent sysroot stripping due to DSP firmware
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-28 15:00:22 -04:00
Denys Dmytriyenko
398fb12007 u-boot: remove outdated versions
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-28 15:00:18 -04:00
Denys Dmytriyenko
a7e4b9560a u-boot-ti-staging: add version 2016.05 (rc1)
Set UBOOT_LOCALVERSION by default similar to KERNEL_LOCALVERSION

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-28 15:00:11 -04:00
Denys Dmytriyenko
ed03cab5fb linux-ti-staging: update to 4.4.8 and latest domain merges
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-28 15:00:06 -04:00
Denys Dmytriyenko
4f6c54d944 am335x-evm: bump max_leb_cnt
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-28 15:00:00 -04:00
Denys Dmytriyenko
497d0b774e am335x-evm: handle omap vs. 8250 uart gracefully b/w EVM and IDK
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-28 14:59:54 -04:00
Sam Nelson
257a370e7a cmem: Update to new eng version 4.11.00.00_eng
Resolves issues with kernel version 4.4

Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-28 14:59:45 -04:00
Denys Dmytriyenko
6dea1b68af sgx: drop old outdated omap3-sgx-modules and libgles-omap3 recipes
Besides being outdated and deprecated in favor of new ti-sgx-ddk recipes
(previously known as omapdrm-pvr and omap5-sgx-ddk), 3D graphics drivers
are kernel specific and corresponding kernel versions (prior to 4.0) have
all been dropped already.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-26 14:54:59 -04:00
Denys Dmytriyenko
c70102c671 sgx: rename and clean up kernel and user space components
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-26 14:54:54 -04:00
Jacob Stiffler
7ae1abe462 netapi: clean up recipes
* Define variables to abstract GIT SRC_URI parameters

Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-26 14:54:48 -04:00
Justin Sobota
701bb5c16f ipc-transport-rtos: Add RTOS packages for IPC transports
Signed-off-by: Justin Sobota <jsobota@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-26 14:54:42 -04:00
Justin Sobota
185cbba966 ipc-transport: Clean up recipe
Signed-off-by: Justin Sobota <jsobota@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
2016-04-26 14:54:36 -04:00
86 changed files with 589 additions and 3933 deletions

View File

@@ -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 \

View File

@@ -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:

View File

@@ -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:

View File

@@ -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"

View File

@@ -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"

View File

@@ -1,4 +1,4 @@
require conf/machine/include/omap-a15.inc
SOC_FAMILY_append = ":dra7xx"
MACHINE_FEATURES += "pci"
MACHINE_FEATURES += "pci opencl"

View File

@@ -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 = ""

View File

@@ -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 = ""

View File

@@ -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 = ""

View File

@@ -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 = ""

View File

@@ -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}""

View File

@@ -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}"

View File

@@ -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}"

View File

@@ -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}"

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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
}

View File

@@ -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())

View File

@@ -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;

View File

@@ -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
}

View File

@@ -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
}

View File

@@ -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
}

View File

@@ -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
}

View File

@@ -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"

View File

@@ -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

View File

@@ -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}"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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}
}

View File

@@ -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

View File

@@ -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 = ""

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"'

View 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"

View File

@@ -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
}

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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
}

View File

@@ -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"

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -1,8 +0,0 @@
[Desktop Entry]
Name=NAME Demo
Comment=OGLES Demo
Exec=EXEC
Icon=star
Type=Application
Categories=Graphics;

View File

@@ -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
}

View File

@@ -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"

View File

@@ -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
}

View File

@@ -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"

View File

@@ -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

View File

@@ -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

View File

@@ -1,8 +0,0 @@
[Desktop Entry]
Name=NAME Demo
Comment=OGLES Demo
Exec=EXEC
Icon=star
Type=Application
Categories=Graphics;

View File

@@ -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}"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View 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";
};

View File

@@ -6,4 +6,4 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-4.4:"
BRANCH = "ti-rt-linux-4.4.y"
SRCREV = "01711ca3dbed322591d9e0c2c20eb57afa2110e7"
SRCREV = "8c26434b1cf4e1c3011c7a9925aeb2bec735db6a"

View File

@@ -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 = ""

View File

@@ -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"

View File

@@ -19,3 +19,5 @@ do_install() {
}
FILES_${PN} = "${GCC_ARM_NONE_TOOLCHAIN_RECIPE}/*"
INSANE_SKIP_${PN} = "already-stripped"

View 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}

View File

@@ -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"

View File

@@ -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)

View 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/*"

View 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"

View File

@@ -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"

View 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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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
}

View File

@@ -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}"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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

View File

@@ -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"