summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/checksums.ini16
-rw-r--r--conf/distro/include/angstrom.inc6
-rw-r--r--conf/machine/da830-omapl137-evm.conf1
-rw-r--r--conf/machine/da850-omapl138-evm.conf1
-rw-r--r--conf/machine/davinci-sffsdr.conf1
-rw-r--r--conf/machine/dm365-evm.conf1
-rw-r--r--conf/machine/dm6446-evm.conf1
-rw-r--r--conf/machine/include/davinci.inc2
-rw-r--r--conf/machine/include/dm355.inc9
-rw-r--r--conf/machine/include/dm365.inc12
-rw-r--r--conf/machine/include/dm6446.inc13
-rw-r--r--conf/machine/include/omap3.inc13
-rw-r--r--conf/machine/include/omapl137.conf2
-rw-r--r--conf/machine/include/omapl138.conf1
-rw-r--r--conf/machine/neuros-osd2.conf1
-rw-r--r--recipes/linux/linux-davinci_git.bb43
-rw-r--r--recipes/ti/bitblit_svn.bb12
-rw-r--r--[-rwxr-xr-x]recipes/ti/files/Makefile-dsplink-dsp0
-rw-r--r--[-rwxr-xr-x]recipes/ti/files/Makefile-dsplink-gpp0
-rw-r--r--recipes/ti/files/dm355mm.patch498
-rw-r--r--recipes/ti/files/loadmodules-ti-dmai-dm365_al.sh14
-rw-r--r--[-rwxr-xr-x]recipes/ti/files/mapdmaqbin7680 -> 7680 bytes
-rw-r--r--[-rwxr-xr-x]recipes/ti/files/unloadmodules-ti-dmai-apps.sh0
-rw-r--r--recipes/ti/gstreamer-ti/gstreamer-ti-dm355-rc.sh61
-rw-r--r--recipes/ti/gstreamer-ti/gstreamer-ti-dm6446-rc.sh71
-rw-r--r--recipes/ti/gstreamer-ti/gstreamer-ti-omap3530-rc.sh10
-rw-r--r--recipes/ti/gstreamer-ti_svn.bb101
-rw-r--r--recipes/ti/ti-cgt6x-native_6.1.9.bb4
-rw-r--r--recipes/ti/ti-cgt6x.inc39
-rw-r--r--recipes/ti/ti-cmem-module_2.23.1.bb68
-rw-r--r--recipes/ti/ti-cmem-module_2.23.bb51
-rw-r--r--recipes/ti/ti-cmem-module_2.24.01.bb66
-rw-r--r--recipes/ti/ti-codec-combo-dm355.inc38
-rw-r--r--recipes/ti/ti-codec-combo-dm355_1.13.bb28
-rw-r--r--recipes/ti/ti-codec-combo-dm6446.inc39
-rw-r--r--recipes/ti/ti-codec-combo-omap3530.inc46
-rw-r--r--recipes/ti/ti-codec-combo-omap3530_3.16.1.bb51
-rw-r--r--recipes/ti/ti-codec-combos_3.16.bb90
-rw-r--r--recipes/ti/ti-codec-engine.inc27
-rw-r--r--recipes/ti/ti-codec-engine_2.21.bb278
-rw-r--r--recipes/ti/ti-codec-engine_2.23.1.bb32
-rw-r--r--recipes/ti/ti-codec-engine_2.24.01.bb66
-rw-r--r--recipes/ti/ti-codec-engine_2.25.01.bb7
-rw-r--r--recipes/ti/ti-codecs-dm355.inc37
-rw-r--r--recipes/ti/ti-codecs-dm355_1.13.bb6
-rw-r--r--recipes/ti/ti-codecs-dm365.inc26
-rw-r--r--recipes/ti/ti-codecs-dm365_1.0.6.bb6
-rw-r--r--recipes/ti/ti-codecs-dm6446_2.05.bb (renamed from recipes/ti/ti-codec-combo-dm6446_2.05.bb)6
-rw-r--r--recipes/ti/ti-codecs-omap3530_1.01.bb (renamed from recipes/ti/ti-cs1-omap3530_1.0.1.bb)8
-rw-r--r--recipes/ti/ti-codecs-omapl137_1.0.bb (renamed from recipes/ti/ti-codec-combo-omapl137_1.0.bb)2
-rw-r--r--recipes/ti/ti-cs1-omap3530.inc41
-rw-r--r--recipes/ti/ti-dm355mm-module_1.13.bb33
-rw-r--r--recipes/ti/ti-dm365mm-module.inc28
-rw-r--r--recipes/ti/ti-dm365mm-module_1.0.1.bb9
-rw-r--r--recipes/ti/ti-dmai.inc15
-rw-r--r--recipes/ti/ti-dmai_svn.bb47
-rw-r--r--recipes/ti/ti-dspbios-native_5.33.02.bb2
-rw-r--r--recipes/ti/ti-dspbios.inc38
-rw-r--r--recipes/ti/ti-dsplink-module_1.61.3.bb40
-rw-r--r--recipes/ti/ti-dvsdk-demos.inc41
-rw-r--r--recipes/ti/ti-dvsdk-demos_3.10.00.00.bb5
-rw-r--r--recipes/ti/ti-eula-unpack.inc62
-rw-r--r--recipes/ti/ti-framework-components.inc23
-rw-r--r--recipes/ti/ti-framework-components_2.25.00.04.bb5
-rw-r--r--recipes/ti/ti-linuxutils.inc82
-rw-r--r--recipes/ti/ti-linuxutils_2.25.01.06.bb3
-rw-r--r--recipes/ti/ti-lpm-module_2.23.1.bb65
-rw-r--r--recipes/ti/ti-lpm-module_2.24.01.bb45
-rw-r--r--recipes/ti/ti-multimedia-common.inc55
-rw-r--r--recipes/ti/ti-paths.inc45
-rw-r--r--recipes/ti/ti-sdma-module_2.23.1.bb56
-rw-r--r--recipes/ti/ti-sdma-module_2.24.01.bb54
-rw-r--r--recipes/ti/ti-xdais-native_6.23.bb13
-rw-r--r--recipes/ti/ti-xdais.inc10
-rw-r--r--recipes/ti/ti-xdctools-native_3.10.03.bb21
-rw-r--r--recipes/ti/ti-xdctools-native_3.15.01.59.bb20
-rw-r--r--recipes/ti/ti-xdctools.inc38
77 files changed, 1359 insertions, 1448 deletions
diff --git a/conf/checksums.ini b/conf/checksums.ini
index ca1c6b1aec..e195a71a40 100644
--- a/conf/checksums.ini
+++ b/conf/checksums.ini
@@ -7678,6 +7678,10 @@ sha256=44b7e18ba9ae5667dd64c89f7b04627bda5807a3a90255a125702d63c0c4ee17
md5=d5e8be59e307cef76bc479e1684df705
sha256=9f3b3ed7c9fffccefefa9af432eee7244a65592118851f75b5897814cb79b86f
+[http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/fc/2_25_00_04/exports/framework_components_2_25_00_04.tar.gz]
+md5=11410b5cf4142ae415b683af0e9929b5
+sha256=161432f5cf184f96de290f807a4a6fddf11f2612d5b2efd91f8187c0ac612a40
+
[http://downloads.sourceforge.net/free42/free42.tgz]
md5=1fc21e04b3b77150846027dc7cb5210d
sha256=9d348a9d2d5bf8eabc7e7bb6f0907e611403e4abe6dc1e11b1b2ad1118b3088a
@@ -17406,6 +17410,10 @@ sha256=e4b6ab08eaff2766c3bf85ea8d63ab31ae774266b8351772117fcc94d1318ade
md5=de958cdb8d00e74792dd69f3c945b037
sha256=371f8133db705bde6c2f79cccb0b1a1f626a0d94bf41acceba5d76a69155f057
+[http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/linuxutils/2_25_01_06/exports/linuxutils_2_25_01_06.tar.gz]
+md5=15486b27c9960f06b53f8a60e90f941d
+sha256=61b86cdb5c1b2f9eb766fece6ea5ae89f29cf84d0c3eecbcc9b5d0ffd42d2bcb
+
[http://gpephone.linuxtogo.org/download/gpephone/liblipsevent-0.1/lips_event-0.1.tar.gz]
md5=1fd0f41f9676ef0c882921bc37628d07
sha256=7182cf3f63e11e7ea6c6a994f9e70ef3bf6e430a5db643f5b29a0fd0996ddfd5
@@ -27938,6 +27946,10 @@ sha256=8290616302932e72d4224cbe27d872efa5f44b0b8553ded0bbfb3537abe76907
md5=59d8d79fb950a55722c0089496fd18b1
sha256=ae38043c9dbf99a516f4edc58ef6235ceba975d8b5f374244a2b3e96793d7d5a
+[http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/xdais/6_23/exports/xdais_6_23.tar.gz]
+md5=09b0a14b9f8fb98686a98857eedd10a1
+sha256=12e60870930d9392c37dabdd25988e6dd5fb66ce0fe1e3b0d72250c90c8c26b7
+
[http://xorg.freedesktop.org/releases/individual/app/xdbedizzy-1.0.2.tar.bz2]
md5=ecef9cfd197d00980e0d69ee4126d890
sha256=74e882e9fee7ebeb274caf43071afff92531b8a41f34650376146a131166012d
@@ -27958,6 +27970,10 @@ sha256=d398bfb7a5d9657b802db835c28db892ec8fe54cf332420edef0b3ba1c231fcb
md5=c7cd094cdc49459018b6f0e1eb95af30
sha256=0d5fbc8cfdaa968090ad11b0b84cfb122e2a1c54c4d261fd722b27c6d6972c23
+[http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/rtsc/xdctools_3_15/exports/xdctools_setuplinux_3_15_01_59.bin]
+md5=c7cd094cdc49459018b6f0e1eb95af30
+sha256=0d5fbc8cfdaa968090ad11b0b84cfb122e2a1c54c4d261fd722b27c6d6972c23
+
[http://gpe.linuxtogo.org/download/source/xdemineur-2.1.1.tar.bz2]
md5=b3884eaec59a63691f66bc29ce57a56d
sha256=75378ad3eacbe32c625de3b4af3e1f6fc9772ab45c1cd1393483d95ac4da3b22
diff --git a/conf/distro/include/angstrom.inc b/conf/distro/include/angstrom.inc
index 6e65285e99..8647dd7ec4 100644
--- a/conf/distro/include/angstrom.inc
+++ b/conf/distro/include/angstrom.inc
@@ -11,8 +11,10 @@ BUILDNAME = "Angstrom ${DISTRO_VERSION}"
TARGET_VENDOR = "-angstrom"
-# Add FEED_ARCH to overrides
-OVERRIDES .= ":${FEED_ARCH}"
+SOC_FAMILY ?= "Unknown"
+
+# Add FEED_ARCH and SOC_FAMILY to overrides
+OVERRIDES .= ":${FEED_ARCH}:${SOC_FAMILY}"
# Put links to sources in deploy/sources to make it easier for people to be GPL compliant
INHERIT += "src_distribute_local"
diff --git a/conf/machine/da830-omapl137-evm.conf b/conf/machine/da830-omapl137-evm.conf
index 4df4d63cca..0164e1c27d 100644
--- a/conf/machine/da830-omapl137-evm.conf
+++ b/conf/machine/da830-omapl137-evm.conf
@@ -3,6 +3,7 @@
#@DESCRIPTION: Machine configuration for the TI DA830/OMAPL137 EVM board
require conf/machine/include/davinci.inc
+require conf/machine/include/omapl137.inc
UBOOT_MACHINE = "da830_omapl137_evm_config"
UBOOT_ENTRYPOINT = "0xc0008000"
diff --git a/conf/machine/da850-omapl138-evm.conf b/conf/machine/da850-omapl138-evm.conf
index bbcb45002e..746518b355 100644
--- a/conf/machine/da850-omapl138-evm.conf
+++ b/conf/machine/da850-omapl138-evm.conf
@@ -3,6 +3,7 @@
#@DESCRIPTION: Machine configuration for the TI DA850/OMAPL138 EVM board
require conf/machine/include/davinci.inc
+require conf/machine/include/omapl137.inc
UBOOT_MACHINE = "da850_omapl138_evm_config"
UBOOT_ENTRYPOINT = "0xc0008000"
diff --git a/conf/machine/davinci-sffsdr.conf b/conf/machine/davinci-sffsdr.conf
index e3c0554f71..63fc2cacc4 100644
--- a/conf/machine/davinci-sffsdr.conf
+++ b/conf/machine/davinci-sffsdr.conf
@@ -28,4 +28,5 @@ MACHINE_FEATURES = "kernel26 serial"
#MACHINE_EXTRA_RRECOMMENDS = "dsplink-module"
require conf/machine/include/tune-arm926ejs.inc
+require conf/machine/include/dm6446.inc
diff --git a/conf/machine/dm365-evm.conf b/conf/machine/dm365-evm.conf
index 7cea5dc727..1fd51234e2 100644
--- a/conf/machine/dm365-evm.conf
+++ b/conf/machine/dm365-evm.conf
@@ -3,5 +3,6 @@
#@DESCRIPTION: Machine configuration for the TI Davinci DM365 EVM board
require conf/machine/include/davinci.inc
+require conf/machine/include/dm365.inc
UBOOT_MACHINE = "davinci_dm365evm_config"
diff --git a/conf/machine/dm6446-evm.conf b/conf/machine/dm6446-evm.conf
index 8b048a5474..aaa7492991 100644
--- a/conf/machine/dm6446-evm.conf
+++ b/conf/machine/dm6446-evm.conf
@@ -3,5 +3,6 @@
#@DESCRIPTION: Machine configuration for the TI Davinci DM6446 EVM board
require conf/machine/include/davinci.inc
+require conf/machine/include/dm6446.inc
UBOOT_MACHINE = "davinci_dvevm_config"
diff --git a/conf/machine/include/davinci.inc b/conf/machine/include/davinci.inc
index ceafa800b2..3f8254aff4 100644
--- a/conf/machine/include/davinci.inc
+++ b/conf/machine/include/davinci.inc
@@ -1,7 +1,7 @@
require conf/machine/include/tune-arm926ejs.inc
# Increase this everytime you change something in the kernel
-MACHINE_KERNEL_PR = "r12"
+MACHINE_KERNEL_PR = "r28"
TARGET_ARCH = "arm"
diff --git a/conf/machine/include/dm355.inc b/conf/machine/include/dm355.inc
index dffafe4460..d666d5e030 100644
--- a/conf/machine/include/dm355.inc
+++ b/conf/machine/include/dm355.inc
@@ -1,9 +1,2 @@
-
-DEVICES = "DM355"
-GPPOS = "LINUX_GCC"
-PLATFORM = "dm355"
-PROGRAMS = "APP_LOCAL"
-TARGET = "dm355_al"
-XDC_PLATFORM = ti.platforms.evmDM355
-
+SOC_FAMILY = "dm355"
diff --git a/conf/machine/include/dm365.inc b/conf/machine/include/dm365.inc
new file mode 100644
index 0000000000..c53680ea63
--- /dev/null
+++ b/conf/machine/include/dm365.inc
@@ -0,0 +1,12 @@
+SOC_FAMILY = "dm365"
+
+
+# DMAI
+PLATFORM = "dm365"
+XDC_PLATFORM = ti.platforms.evmDM365
+
+# Obsoleted (CE examples rebuild)
+#GPPOS = "LINUX_GCC"
+
+# DMAI recipe
+#TARGET = "dm365_al"
diff --git a/conf/machine/include/dm6446.inc b/conf/machine/include/dm6446.inc
new file mode 100644
index 0000000000..c14e573c74
--- /dev/null
+++ b/conf/machine/include/dm6446.inc
@@ -0,0 +1,13 @@
+SOC_FAMILY = "dm6446"
+
+# TI DVSDK stuff:
+DSPCFG ?= "DM6446GEMSHMEM"
+DSPLINKDSPCFG ?= "DM6446GEMSHMEM"
+DSPLINKGPPOS ?= "MVL5G"
+DSPLINKPLATFORM ?= "DAVINCI"
+DSPLINKSOC ?= "DM6446"
+DSPPOWERSOC ?= "DM6446"
+GPPOS ?= "LINUX_GCC"
+PLATFORM ?= "dm6446"
+XDC_PLATFORM ?= "ti.platforms.evmDM6446"
+
diff --git a/conf/machine/include/omap3.inc b/conf/machine/include/omap3.inc
index 2f242a4b38..9ff7b91ad9 100644
--- a/conf/machine/include/omap3.inc
+++ b/conf/machine/include/omap3.inc
@@ -1,3 +1,5 @@
+SOC_FAMILY = "omap3"
+
require conf/machine/include/tune-cortexa8.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-omap"
# Increase this everytime you change something in the kernel
@@ -12,17 +14,10 @@ UBOOT_LOADADDRESS = "0x80008000"
EXTRA_IMAGEDEPENDS += "u-boot"
# TI DVSDK stuff:
-CODEC_INSTALL_DIR ?= "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-combo"
-CODEC ?= "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-combo"
-DEVICES ?= "OMAP3530"
-DSPCFG ?= "OMAP3530SHMEM"
+# DSPLink rebuild
DSPLINKDSPCFG ?= "OMAP3530SHMEM"
DSPLINKGPPOS ?= "OMAPLSP"
DSPLINKPLATFORM ?= "OMAP3530"
DSPLINKSOC ?= "3530"
-DSPPOWERSOC ?= "omap3530"
-GPPOS ?= "LINUX_GCC"
-LPMDSPPOWERSOC ?= "omap3530"
-PLATFORM ?= "omap3530"
-XDC_PLATFORM ?= "ti.platforms.evm3530"
+
diff --git a/conf/machine/include/omapl137.conf b/conf/machine/include/omapl137.conf
new file mode 100644
index 0000000000..34d0e9a754
--- /dev/null
+++ b/conf/machine/include/omapl137.conf
@@ -0,0 +1,2 @@
+SOC_FAMILY = "omapl137"
+
diff --git a/conf/machine/include/omapl138.conf b/conf/machine/include/omapl138.conf
new file mode 100644
index 0000000000..4c222753df
--- /dev/null
+++ b/conf/machine/include/omapl138.conf
@@ -0,0 +1 @@
+SOC_FAMILY = "omapl138"
diff --git a/conf/machine/neuros-osd2.conf b/conf/machine/neuros-osd2.conf
index b751cbcac2..9b552a462a 100644
--- a/conf/machine/neuros-osd2.conf
+++ b/conf/machine/neuros-osd2.conf
@@ -26,4 +26,5 @@ MACHINE_FEATURES = "kernel26 pcmcia usbhost screen"
require conf/machine/include/tune-arm926ejs.inc
require conf/machine/include/neuros.inc
+require conf/machine/include/dm6446.inc
diff --git a/recipes/linux/linux-davinci_git.bb b/recipes/linux/linux-davinci_git.bb
index f99f8ae937..05b8eba45e 100644
--- a/recipes/linux/linux-davinci_git.bb
+++ b/recipes/linux/linux-davinci_git.bb
@@ -8,8 +8,7 @@ COMPATIBLE_MACHINE = "(dm355-evm|dm365-evm|dm6446-evm|dm6467-evm|dm6467t-evm|da8
DEFAULT_PREFERENCE = "1"
BRANCH = "master"
-
-# DAVINCI
+SRC_URI = "file://defconfig "
# dm355-evm/dm365-evm/dm6446-evm/dm6467-evm/dm6467t-evm Davinci PSP.03.01.00.28 (Phase 3 Build r28)
SRCREV_dm355-evm = "7b2683fd0168df1576fcea947ef9f63e905de807"
@@ -25,38 +24,34 @@ PV_dm6446-evm = "2.6.31+2.6.32-rc2-${PR}+gitr${SRCREV}"
PV_dm6467-evm = "2.6.31+2.6.32-rc2-${PR}+gitr${SRCREV}"
PV_dm6467t-evm = "2.6.31+2.6.32-rc2-${PR}+gitr${SRCREV}"
-SRC_URI_dm355-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git \
- file://defconfig"
-SRC_URI_dm365-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git \
- file://defconfig"
-SRC_URI_dm6446-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git \
- file://defconfig"
-SRC_URI_dm6467-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git \
- file://defconfig"
-SRC_URI_dm6467t-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git \
- file://defconfig"
+BRANCH_dm355-evm = "r28"
+BRANCH_dm365-evm = "r28"
+BRANCH_dm6446-evm = "r28"
+BRANCH_dm6467-evm = "r28"
+BRANCH_dm6467t-evm = "r28"
+
+SRC_URI_append_dm355-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git;branch=${BRANCH}"
+SRC_URI_append_dm365-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git;branch=${BRANCH}"
+SRC_URI_append_dm6446-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git;branch=${BRANCH}"
+SRC_URI_append_dm6467-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git;branch=${BRANCH}"
+SRC_URI_append_dm6467t-evm = "git://arago-project.org/git/projects/linux-davinci.git;protocol=git;branch=${BRANCH}"
# OMAPL
# da830-omapl137-evm/da850-omapl138-evm/hawkboard OMAPL PSP.3.20.00.07 (Beta)
-SRCREV_da830-omapl137-evm = "b60234a5b0ee985912ecb59d3e689c1ed4baa46c"
-SRCREV_da850-omapl138-evm = "b60234a5b0ee985912ecb59d3e689c1ed4baa46c"
-SRCREV_hawkboard = "b60234a5b0ee985912ecb59d3e689c1ed4baa46c"
+SRCREV_da830-omapl137-evm = "b306b47248ef6b4e5927a6baa2849ff434c12ddb"
+SRCREV_da850-omapl138-evm = "b306b47248ef6b4e5927a6baa2849ff434c12ddb"
+SRCREV_hawkboard = "b306b47248ef6b4e5927a6baa2849ff434c12ddb"
# The main PR is now using MACHINE_KERNEL_PR, for davinci see conf/machine/include/davinci.inc
PV_da830-omapl137-evm = "2.6.31+2.6.32-rc6-${PR}+gitr${SRCREV}"
PV_da850-omapl138-evm = "2.6.31+2.6.32-rc6-${PR}+gitr${SRCREV}"
PV_hawkboard = "2.6.31+2.6.32-rc6-${PR}+gitr${SRCREV}"
-SRC_URI_da830-omapl137-evm = "git://arago-project.org/git/people/sekhar/linux-omapl1.git;protocol=git;branch=${BRANCH} \
- file://defconfig"
-
-SRC_URI_da850-omapl138-evm = "git://arago-project.org/git/people/sekhar/linux-omapl1.git;protocol=git;branch=${BRANCH} \
- file://defconfig"
-
-SRC_URI_hawkboard = "git://arago-project.org/git/people/sekhar/linux-omapl1.git;protocol=git;branch=${BRANCH} \
- file://patch_hawk.diff;patch=1 \
- file://defconfig"
+SRC_URI_append_da830-omapl137-evm = "git://arago-project.org/git/people/sekhar/linux-omapl1.git;protocol=git;branch=${BRANCH}"
+SRC_URI_append_da850-omapl138-evm = "git://arago-project.org/git/people/sekhar/linux-omapl1.git;protocol=git;branch=${BRANCH}"
+SRC_URI_append_hawkboard = "git://arago-project.org/git/people/sekhar/linux-omapl1.git;protocol=git;branch=${BRANCH} \
+ file://patch_hawk.diff;patch=1"
S = "${WORKDIR}/git"
diff --git a/recipes/ti/bitblit_svn.bb b/recipes/ti/bitblit_svn.bb
index f813b31f06..cc7dbf9a6b 100644
--- a/recipes/ti/bitblit_svn.bb
+++ b/recipes/ti/bitblit_svn.bb
@@ -18,18 +18,6 @@ PR = "r1"
S = "${WORKDIR}/trunk/bitblit"
-XDC_TARGET = gnu.targets.arm.GCArmv5T
-XDC_PLATFORM_dm6446-evm = ti.platforms.evmDM6446
-XDC_PLATFORM_da830-omapl137-evm = ti.platforms.omapl137
-PLATFORM_XDC = ${XDC_PLATFORM}
-
-export XDC_TARGET
-export XDC_PLATFORM
-export PLATFORM_XDC
-
-PLATFORM_dm6446-evm = "dm6446"
-PLATFORM_da830-omapl137-evm = "ol137"
-
export LINUXLIBS_INSTALL_DIR="${STAGING_DIR_HOST}/usr"
export EXEC_DIR = "${D}${datadir}/ti/bitblit/"
diff --git a/recipes/ti/files/Makefile-dsplink-dsp b/recipes/ti/files/Makefile-dsplink-dsp
index 0861f1ee21..0861f1ee21 100755..100644
--- a/recipes/ti/files/Makefile-dsplink-dsp
+++ b/recipes/ti/files/Makefile-dsplink-dsp
diff --git a/recipes/ti/files/Makefile-dsplink-gpp b/recipes/ti/files/Makefile-dsplink-gpp
index d9f2f6209a..d9f2f6209a 100755..100644
--- a/recipes/ti/files/Makefile-dsplink-gpp
+++ b/recipes/ti/files/Makefile-dsplink-gpp
diff --git a/recipes/ti/files/dm355mm.patch b/recipes/ti/files/dm355mm.patch
new file mode 100644
index 0000000000..6ee6064f5a
--- /dev/null
+++ b/recipes/ti/files/dm355mm.patch
@@ -0,0 +1,498 @@
+diff -uNr dm355_codecs_1_13_000/dm355mm/module/dm350mmap.c dm355_codecs_1_13_000.new/dm355mm/module/dm350mmap.c
+--- dm355_codecs_1_13_000/dm355mm/module/dm350mmap.c 2009-05-20 11:22:57.000000000 -0500
++++ dm355_codecs_1_13_000.new/dm355mm/module/dm350mmap.c 2009-06-09 10:43:25.000000000 -0500
+@@ -7,7 +7,7 @@
+ * Use of this software is controlled by the terms and conditions found in the
+ * license agreement under which this software has been supplied or provided.
+ * ============================================================================
+- */
++ */
+ #include <linux/module.h>
+ #include <linux/init.h>
+ #include <linux/moduleparam.h>
+@@ -20,274 +20,283 @@
+ #include <linux/proc_fs.h>
+ #include <linux/kernel.h>
+ #include <linux/device.h>
+-
++#include <linux/clk.h>
++
+ #include <asm/page.h>
+ #include <asm/uaccess.h>
+ #include <asm/pgtable.h>
+ #include <asm/io.h>
+-#include<asm/system.h>
+-#include<asm-arm/memory.h>
++#include <asm/system.h>
++#include <asm/memory.h>
++
+ #include <asm/irq.h>
+-
++
++#include <linux/version.h>
+ #include <linux/completion.h>
+-#include <asm/arch/edma.h>
+-
++#include <mach/edma.h>
++
+ #define ASQINT_ENABLE
+- typedef struct _edma_params
+-{
+- unsigned long src;
+- unsigned long dst;
+- unsigned int srcmode;
+- unsigned int srcfifowidth;
+- int srcbidx;
+- int srccidx;
+- unsigned int dstmode;
+- unsigned int dstfifowidth;
+- int dstbidx;
+- int dstcidx;
+- int acnt;
+- int bcnt;
+- int ccnt;
+- int bcntrld;
+- int syncmode;
+- } edma_params;
++typedef struct _edma_params {
++ unsigned long src;
++ unsigned long dst;
++ unsigned int srcmode;
++ unsigned int srcfifowidth;
++ int srcbidx;
++ int srccidx;
++ unsigned int dstmode;
++ unsigned int dstfifowidth;
++ int dstbidx;
++ int dstcidx;
++ int acnt;
++ int bcnt;
++ int ccnt;
++ int bcntrld;
++ int syncmode;
++} edma_params;
+
+ #define DM350MMAP_IOCMEMCPY 0x7
+ #define DM350MMAP_IOCWAIT 0x8
+ #define DM350MMAP_IOCCLEAR_PENDING 0x9
+-
++
+ #ifdef __DEBUG
+-#define __D(fmt, args...) printk(KERN_DEBUG "DM350MMAP Debug: " fmt, ## args)
++# define __D(fmt, args...) printk(KERN_DEBUG "DM350MMAP Debug: " fmt, ## args)
+ #else /* */
+-#define __D(fmt, args...)
++# define __D(fmt, args...)
+ #endif /* */
+-
++
+ #define __E(fmt, args...) printk(KERN_ERR "DM350MMAP Error: " fmt, ## args)
+-
++
+ #define MAXTYPE(T) ((T) (((T)1 << ((sizeof(T) * 8) - 1) ^ ((T) -1))))
+-
++
+ static int major = 0;
+
+ #if (USE_UDEV==1)
+ static struct class *dm350mmap_class;
+-
+ #endif // USE_UDEV
+-static DECLARE_MUTEX_LOCKED (dm350mmap_reply_mutex);
+-int master_ch;
+-struct completion edmacompletion;
+-
+-/* Forward declaration of system calls */
+-static int ioctl (struct inode *inode, struct file *filp, unsigned int cmd,
+- unsigned long args);
+-static int mmap (struct file *filp, struct vm_area_struct *vma);
+-static int open (struct inode *inode, struct file *filp);
+-static int release (struct inode *inode, struct file *filp);
++
++static DECLARE_MUTEX(dm350mmap_reply_mutex);
++static struct completion edmacompletion;
++
++/* Forward declaration of system calls */
++static int ioctl(struct inode *inode, struct file *filp, unsigned int cmd,
++ unsigned long args);
++static int mmap(struct file *filp, struct vm_area_struct *vma);
++static int open(struct inode *inode, struct file *filp);
++static int release(struct inode *inode, struct file *filp);
+ static struct file_operations dm350mmap_fxns = { ioctl: ioctl, mmap: mmap, open: open, release:release
+-
+ };
+
+-static irqreturn_t irq_handler (int irq, void *dev_id, struct pt_regs *regs)
++/* Structure to hold mjcp clock info */
++static struct clk *mjcp = NULL;
++
++//static irqreturn_t irq_handler (int irq, void *dev_id, struct pt_regs *regs)
++static irqreturn_t irq_handler(int irq, void *dev_id)
+ {
+-
+- /* Release the mutex, suggesting sequencer processing complete */
+- up (&dm350mmap_reply_mutex);
+- return IRQ_HANDLED;
++ /* Release the mutex, suggesting sequencer processing complete */
++ up(&dm350mmap_reply_mutex);
++ return IRQ_HANDLED;
+ }
+
+-static void memcpy_dma_irq_handler (int lch, u16 ch_status, void *data)
++static void memcpy_dma_irq_handler(unsigned lch, u16 ch_status, void *data)
+ {
+- complete_all (&edmacompletion);
+-}
++ complete_all(&edmacompletion);
++}
+
+-static int mmap (struct file *filp, struct vm_area_struct *vma)
++static int mmap(struct file *filp, struct vm_area_struct *vma)
+ {
+- __D ("mmap: vma->vm_start = %#lx\n", vma->vm_start);
+- __D ("mmap: vma->vm_pgoff = %#lx\n", vma->vm_pgoff);
+- __D ("mmap: vma->vm_end = %#lx\n", vma->vm_end);
+- __D ("mmap: size = %#lx\n", vma->vm_end - vma->vm_start);
+- vma->vm_page_prot = pgprot_noncached (vma->vm_page_prot);
+- if (remap_pfn_range (vma, vma->vm_start,
+-
+-#ifdef LINUX_2_6_18
+- (vma->vm_pgoff >> PAGE_SHIFT),
++ __D("mmap: vma->vm_start = %#lx\n", vma->vm_start);
++ __D("mmap: vma->vm_pgoff = %#lx\n", vma->vm_pgoff);
++ __D("mmap: vma->vm_end = %#lx\n", vma->vm_end);
++ __D("mmap: size = %#lx\n", vma->vm_end - vma->vm_start);
++ vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
++ if (remap_pfn_range(vma, vma->vm_start,
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++ (vma->vm_pgoff >> PAGE_SHIFT),
+ #else /* */
+- vma->vm_pgoff,
++ vma->vm_pgoff,
+ #endif /* */
+-
+- vma->vm_end - vma->vm_start, vma->vm_page_prot))
+- {
+- __E ("mmap: failed remap_pfn_range\n");
+- return -EAGAIN;
++ vma->vm_end - vma->vm_start, vma->vm_page_prot)) {
++ __E("mmap: failed remap_pfn_range\n");
++ return -EAGAIN;
+ }
+- return 0;
++ return 0;
+ }
+
+
+-static int ioctl (struct inode *inode, struct file *filp, unsigned int cmd,
+- unsigned long args)
++static int ioctl(struct inode *inode, struct file *filp, unsigned int cmd,
++ unsigned long args)
+ {
+- unsigned int __user *argp = (unsigned int __user *) args;
+- edma_params edmaparams;
+- int err = 0, tcc = EDMA_TCC_ANY;
+- struct paramentry_descriptor paramentry;
+- switch (cmd)
+- {
+-
+- /*
+- * Tries to clear any previously unaccounted interrupt.
+- */
+- case DM350MMAP_IOCCLEAR_PENDING:
+-
+- {
+- int retval;
+- __D ("Clear Pending Call received.\n");
+- init_MUTEX_LOCKED(&dm350mmap_reply_mutex);
+- return 0;
+- }
+- break;
+-
+- /*
+- * Blocks till the sequencer completion interrupt arrives.
+- */
+- case DM350MMAP_IOCWAIT:
+-
+- {
+- int retval;
+- __D ("WAIT Call received.\n");
+- retval = down_interruptible (&dm350mmap_reply_mutex);
+- return retval;
+- }
+- break;
+- case DM350MMAP_IOCMEMCPY:
+- __D ("MEMCPY ioctl received.\n");
+- if (copy_from_user (&edmaparams, argp, sizeof (edmaparams)))
+- {
+- return -EFAULT;
+- }
+- err =
+- davinci_request_dma (EDMA_DMA_CHANNEL_ANY, "EDMA memcpy",
+- memcpy_dma_irq_handler, NULL, &master_ch, &tcc,
+- EVENTQ_1);
+-
+- /* Handle Failure condition here */
+- if (err < 0)
+- {
+- __E ("Error in requesting Master channel %d = 0x%x\n", master_ch,
+- err);
+- return err;
+- }
+- davinci_stop_dma (master_ch);
+- init_completion (&edmacompletion);
+- davinci_set_dma_src_params (master_ch,
+- (unsigned long) edmaparams.src,
+- edmaparams.srcmode,
+- edmaparams.srcfifowidth);
+- davinci_set_dma_dest_params (master_ch,
+- (unsigned long) edmaparams.dst,
+- edmaparams.dstmode,
+- edmaparams.dstfifowidth);
+- davinci_set_dma_src_index (master_ch, edmaparams.srcbidx,
+- edmaparams.srccidx);
+- davinci_set_dma_dest_index (master_ch, edmaparams.dstbidx,
+- edmaparams.dstcidx);
+- davinci_set_dma_transfer_params (master_ch, edmaparams.acnt,
+- edmaparams.bcnt, edmaparams.ccnt,
+- edmaparams.bcntrld,
+- edmaparams.syncmode);
+- davinci_get_dma_params (master_ch, &paramentry);
+-
+- /*printk("%x : %x : %x : %x : %x : %x : %x\n", paramentry.opt,
+- paramentry.a_b_cnt, paramentry.src_dst_bidx,
+- paramentry.src_dst_cidx, paramentry.ccnt, paramentry.src,
+- paramentry.dst); */
+- davinci_set_dma_params (master_ch, &paramentry);
+- davinci_start_dma (master_ch);
+- wait_for_completion (&edmacompletion);
+-
+- //printk("Dma completed... \n");
+- davinci_stop_dma (master_ch);
+- davinci_free_dma (master_ch);
+- break;
+- default:
+- __E ("Unknown ioctl received = %d.\n", cmd);
+- return -EINVAL;
++ unsigned int __user *argp = (unsigned int __user *) args;
++ edma_params edmaparams;
++ int edma_channel;
++ int retval = 0;
++ struct edmacc_param p_ram;
++
++ switch (cmd) {
++
++ /*
++ * Tries to clear any previously unaccounted interrupt.
++ */
++ case DM350MMAP_IOCCLEAR_PENDING:
++ __D("Clear Pending Call received.\n");
++ init_MUTEX_LOCKED(&dm350mmap_reply_mutex);
++ break;
++
++ /*
++ * Blocks till the sequencer completion interrupt arrives.
++ */
++ case DM350MMAP_IOCWAIT:
++ __D("WAIT Call received.\n");
++ retval = down_interruptible(&dm350mmap_reply_mutex);
++ break;
++
++ case DM350MMAP_IOCMEMCPY:
++ __D("MEMCPY ioctl received.\n");
++ if (copy_from_user(&edmaparams, argp, sizeof(edmaparams))) {
++ retval = -EFAULT;
++ break;
++ }
++
++ edma_channel =
++ edma_alloc_channel(EDMA_CHANNEL_ANY, &memcpy_dma_irq_handler,
++ NULL, EVENTQ_1);
++
++ /* Handle Failure condition here */
++ if (edma_channel < 0) {
++ __E("Error in requesting Master channel = 0x%x\n",
++ edma_channel);
++ retval = edma_channel;
++ break;
++ }
++
++ edma_stop(edma_channel);
++
++ init_completion(&edmacompletion);
++
++ edma_set_src(edma_channel,
++ (dma_addr_t) edmaparams.src,
++ edmaparams.srcmode, edmaparams.srcfifowidth);
++
++ edma_set_dest(edma_channel,
++ (dma_addr_t) edmaparams.dst,
++ edmaparams.dstmode, edmaparams.dstfifowidth);
++
++ edma_set_src_index(edma_channel, edmaparams.srcbidx,
++ edmaparams.srccidx);
++ edma_set_dest_index(edma_channel, edmaparams.dstbidx,
++ edmaparams.dstcidx);
++
++ edma_set_transfer_params(edma_channel,
++ edmaparams.acnt,
++ edmaparams.bcnt,
++ edmaparams.ccnt,
++ edmaparams.bcntrld, edmaparams.syncmode);
++
++ edma_read_slot(edma_channel, &p_ram);
++ p_ram.opt |= TCINTEN | EDMA_TCC(edma_channel);
++ edma_write_slot(edma_channel, &p_ram);
++
++ edma_start(edma_channel);
++ wait_for_completion(&edmacompletion);
++ edma_stop(edma_channel);
++ edma_free_channel(edma_channel);
++ break;
++
++ default:
++ __E("Unknown ioctl received = %d.\n", cmd);
++ retval = -EINVAL;
++ break;
+ }
+- return 0;
++
++ return retval;
+ }
+
+
+-static int open (struct inode *inode, struct file *filp)
++static int open(struct inode *inode, struct file *filp)
+ {
+- __D ("open: called.\n");
+- return 0;
++ __D("open: called.\n");
++ return 0;
+ }
+
+
+-static int release (struct inode *inode, struct file *filp)
++static int release(struct inode *inode, struct file *filp)
+ {
+- __D ("close: called.");
+- return 0;
++ __D("close: called.");
++ return 0;
+ }
+
+
+-int __init dm350mmap_init (void)
++int __init dm350mmap_init(void)
+ {
+- __D ("** DM350MMAP kernel module built: " __DATE__ " " __TIME__ "\n");
+- major = register_chrdev (0, "dm350mmap", &dm350mmap_fxns);
+- if (major < 0)
+- {
+- __E ("Failed to allocate major number.\n");
+- return -ENODEV;
++ /* In the GIT kernel unused clocks are disabled. To run codec we need to
++ * enable mjcp clock.
++ */
++ mjcp = clk_get(NULL, "mjcp");
++ if (IS_ERR(mjcp))
++ printk(KERN_WARNING "unable to get MJCP clock\n");
++ else
++ clk_enable(mjcp);
++
++ __D("** DM350MMAP kernel module built: " __DATE__ " " __TIME__ "\n");
++ major = register_chrdev(0, "dm350mmap", &dm350mmap_fxns);
++ if (major < 0) {
++ __E("Failed to allocate major number.\n");
++ return -ENODEV;
+ }
+- __D ("Allocated major number: %d\n", major);
+-
++ __D("Allocated major number: %d\n", major);
++
+ #if (USE_UDEV==1)
+- dm350mmap_class = class_create (THIS_MODULE, "dm350mmap");
+- if (IS_ERR (dm350mmap_class))
+- {
+- __E ("Error creating dm350mmap device class.\n");
+- return -EIO;
++ dm350mmap_class = class_create(THIS_MODULE, "dm350mmap");
++ if (IS_ERR(dm350mmap_class)) {
++ __E("Error creating dm350mmap device class.\n");
++ return -EIO;
+ }
+- class_device_create (dm350mmap_class, NULL, MKDEV (major, 0), NULL,
+- "dm350mmap");
+-
++ class_device_create(dm350mmap_class, NULL, MKDEV(major, 0), NULL,
++ "dm350mmap");
++
+ #endif // USE_UDEV
+- __D ("Successfully initialized module\n");
+-
++ __D("Successfully initialized module\n");
++
+ #ifdef ASQINT_ENABLE
+- if (request_irq (IRQ_ASQINT, irq_handler, 0, "seq_arm_interrupt", NULL))
+- {
+- __D ("Could not install ISR\n");
++ if (request_irq(IRQ_ASQINT, irq_handler, 0, "seq_arm_interrupt", NULL)) {
++ __D("Could not install ISR\n");
+ }
+-
++
+ #endif /* */
++ init_MUTEX_LOCKED(&dm350mmap_reply_mutex);
+ return 0;
+ }
+
+
+-void __exit dm350mmap_exit (void)
++void __exit dm350mmap_exit(void)
+ {
+- __D ("In dm350mmap_exit()\n");
+-
++ /* if mjcp clock is enabled then free it */
++ if (mjcp) {
++ clk_disable(mjcp);
++ clk_put(mjcp);
++ }
++
++ __D("In dm350mmap_exit()\n");
++
+ #if (USE_UDEV==1)
+- class_device_destroy (dm350mmap_class, MKDEV (major, 0));
+- class_destroy (dm350mmap_class);
+-
++ class_device_destroy(dm350mmap_class, MKDEV(major, 0));
++ class_destroy(dm350mmap_class);
++
+ #endif // USE_UDEV
+- __D ("Unregistering character device dm350mmap\n");
+- unregister_chrdev (major, "dm350mmap");
+-
++ __D("Unregistering character device dm350mmap\n");
++ unregister_chrdev(major, "dm350mmap");
++
+ #ifdef ASQINT_ENABLE
+- free_irq (IRQ_ASQINT, NULL);
+-
++ free_irq(IRQ_ASQINT, NULL);
++
+ #endif /* */
+- __D ("dm350mmap unregistered\n");
+-}
++ __D("dm350mmap unregistered\n");
++}
+
+-module_init (dm350mmap_init);
++module_init(dm350mmap_init);
+
+-module_exit (dm350mmap_exit);
+-MODULE_LICENSE ("GPL");
+-MODULE_AUTHOR ("Texas Instruments");
+-MODULE_DESCRIPTION ("DM350 mmap export to userland");
++module_exit(dm350mmap_exit);
++MODULE_LICENSE("GPL");
++MODULE_AUTHOR("Texas Instruments");
++MODULE_DESCRIPTION("DM350 mmap export to userland");
+
diff --git a/recipes/ti/files/loadmodules-ti-dmai-dm365_al.sh b/recipes/ti/files/loadmodules-ti-dmai-dm365_al.sh
new file mode 100644
index 0000000000..921c924b9a
--- /dev/null
+++ b/recipes/ti/files/loadmodules-ti-dmai-dm365_al.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+rmmod cmemk 2>/dev/null
+rmmod irqk 2>/dev/null
+rmmod edmak 2>/dev/null
+rmmod dm365mmap 2>/dev/null
+
+# Pools configuration
+insmod cmemk.ko phys_start=0x85000000 phys_end=0x88000000 pools=6x4096,2x8192,1x11908,2x13184,1x2697152,6x4096,1x30720,3x81920,1x3185664,64x56,1x320,1x640,1x81920,1x6650880,2x608,1x296,1x28,2x24,23x1548288,1x154288 allowOverlap=1 phys_start_1=0x00001000 phys_end_1=0x00008000 pools_1=1x28672
+
+insmod irqk.ko
+insmod edmak.ko
+insmod dm365mmap.ko
+rm -f /dev/dm365mmap
+mknod /dev/dm365mmap c `awk "\\$2==\"dm365mmap\" {print \\$1}" /proc/devices` 0
diff --git a/recipes/ti/files/mapdmaq b/recipes/ti/files/mapdmaq
index 5c11bc3141..5c11bc3141 100755..100644
--- a/recipes/ti/files/mapdmaq
+++ b/recipes/ti/files/mapdmaq
Binary files differ
diff --git a/recipes/ti/files/unloadmodules-ti-dmai-apps.sh b/recipes/ti/files/unloadmodules-ti-dmai-apps.sh
index 793d727f39..793d727f39 100755..100644
--- a/recipes/ti/files/unloadmodules-ti-dmai-apps.sh
+++ b/recipes/ti/files/unloadmodules-ti-dmai-apps.sh
diff --git a/recipes/ti/gstreamer-ti/gstreamer-ti-dm355-rc.sh b/recipes/ti/gstreamer-ti/gstreamer-ti-dm355-rc.sh
new file mode 100644
index 0000000000..d95658e44b
--- /dev/null
+++ b/recipes/ti/gstreamer-ti/gstreamer-ti-dm355-rc.sh
@@ -0,0 +1,61 @@
+#!/bin/sh
+#
+# configure kernel modules for TI DSP based gstreamer plugin
+#
+
+# Disable XDM 0.9 elements
+export GST_TI_TIViddec_DISABLE=1
+export GST_TI_TIAuddec_DISABLE=1
+export GST_TI_TIVidenc_DISABLE=1
+export GST_TI_TIImgdec_DISABLE=1
+export GST_TI_TIImgenc_DISABLE=1
+
+load_module() {
+ # CMEM Allocation
+ # 1x3628800 Circular buffer
+ # 4x829440 Video buffers (max D1 PAL)
+ # 1x829440 Underlying software components (codecs, etc.)
+ # 1x518400 Underlying software components (codecs, etc.)
+ # 1x4948 Underlying software components (codecs, etc.)
+ # 1x1505280 Underlying software components (codecs, etc.)
+ # 1x5760 Underlying software components (codecs, etc.)
+ # 1x8192 Underlying software components (codecs, etc.)
+ # 1x1 Dummy buffer used during final flush
+ modprobe cmemk phys_start=0x87400000 phys_end=0x88000000 \
+ pools=1x3628800,5x829440,1x518400,1x4948,1x1505280,1x5760,1x8192,1x1
+
+ modprobe dm350mmap
+ rm -f /dev/dm350mmap
+ mknod /dev/dm350mmap c `awk "\\$2==\"dm350mmap\" {print \\$1}" /proc/devices` 0
+
+}
+
+unload_module() {
+ rmmod cmemk
+ rmmod dm350mmap
+}
+
+case "$1" in
+ start)
+ echo -n "Loading kernel modules for gstreamer-ti... "
+ load_module
+ echo " done"
+ ;;
+ stop)
+ echo -n "Unloading kernel module ..."
+ unload_module
+ echo " done"
+ ;;
+ restart)
+ echo -n "Unloading kernel module ..."
+ unload_module
+ echo " done"
+ echo -n "Loading kernel modules for gstreamer-ti... "
+ load_module
+ echo " done"
+ ;;
+ *)
+ echo "$0 <start/stop/restart>"
+ ;;
+esac
+
diff --git a/recipes/ti/gstreamer-ti/gstreamer-ti-dm6446-rc.sh b/recipes/ti/gstreamer-ti/gstreamer-ti-dm6446-rc.sh
new file mode 100644
index 0000000000..69468977bd
--- /dev/null
+++ b/recipes/ti/gstreamer-ti/gstreamer-ti-dm6446-rc.sh
@@ -0,0 +1,71 @@
+#!/bin/sh
+#
+# configure kernel modules for TI DSP based gstreamer plugin
+#
+
+# Disable XDM 0.9 elements
+export GST_TI_TIViddec_DISABLE=1
+export GST_TI_TIAuddec_DISABLE=1
+export GST_TI_TIVidenc_DISABLE=1
+export GST_TI_TIImgdec_DISABLE=1
+export GST_TI_TIImgenc_DISABLE=1
+
+load_module() {
+ # insert cmemk, tell it to occupy physical 118MB-128MB.
+ #
+ # CMEM Allocation
+ # 1x5250000 Circular buffer
+ # 2x829440 Video buffers (max D1 PAL)
+ # 3x1036800 Video buffers (larger size needed for MPEG4 encoder)
+ # 1x8192 Underlying software components (codecs, etc.)
+ # 1x1 Dummy buffer used during final flush
+ modprobe cmemk phys_start=0x87600000 phys_end=0x88000000 \
+ pools=1x5250000,2x829440,3x1036800,1x8192,1x1
+
+ # Notes on using the "playbin" element:
+ # -------------------------------------
+ # Playbin requires one 6 video buffers, and we have only allocated five.
+ # If you replace the "2x829440,3x1036800" with "6x829440" it should work, but
+ # you will not be able to use the MPEG4 encoder.
+ #
+ #insmod cmemk.ko phys_start=0x87600000 phys_end=0x88000000 \
+ # pools=1x5250000,6x829440,1x8192,1x1
+
+ # insert dsplinkk
+ modprobe dsplinkk
+
+ # make /dev/dsplink
+ rm -f /dev/dsplink
+ mknod /dev/dsplink c `awk "\\$2==\"dsplink\" {print \\$1}" /proc/devices` 0
+}
+
+unload_module() {
+ rmmod cmemk
+ rmmod dsplinkk
+ rm -f /dev/dsplink
+}
+
+case "$1" in
+ start)
+ echo -n "Loading kernel modules for gstreamer-ti... "
+ load_module
+ echo " done"
+ ;;
+ stop)
+ echo -n "Unloading kernel module ..."
+ unload_module
+ echo " done"
+ ;;
+ restart)
+ echo -n "Unloading kernel module ..."
+ unload_module
+ echo " done"
+ echo -n "Loading kernel modules for gstreamer-ti... "
+ load_module
+ echo " done"
+ ;;
+ *)
+ echo "$0 <start/stop/restart>"
+ ;;
+esac
+
diff --git a/recipes/ti/gstreamer-ti/gstreamer-ti-omap3530-rc.sh b/recipes/ti/gstreamer-ti/gstreamer-ti-omap3530-rc.sh
index 9a19cf926b..b61b40c176 100644
--- a/recipes/ti/gstreamer-ti/gstreamer-ti-omap3530-rc.sh
+++ b/recipes/ti/gstreamer-ti/gstreamer-ti-omap3530-rc.sh
@@ -12,11 +12,11 @@
#
# Disable XDM 0.9 elements
-export GST_TI_TIViddec_DISABLED=1
-export GST_TI_TIAuddec_DISABLED=1
-export GST_TI_TIVidenc_DISABLED=1
-export GST_TI_TIImgdec_DISABLED=1
-export GST_TI_TIImgenc_DISABLED=1
+export GST_TI_TIViddec_DISABLE=1
+export GST_TI_TIAuddec_DISABLE=1
+export GST_TI_TIVidenc_DISABLE=1
+export GST_TI_TIImgdec_DISABLE=1
+export GST_TI_TIImgenc_DISABLE=1
load_module() {
#
diff --git a/recipes/ti/gstreamer-ti_svn.bb b/recipes/ti/gstreamer-ti_svn.bb
index 099ca1d91b..de09d36caa 100644
--- a/recipes/ti/gstreamer-ti_svn.bb
+++ b/recipes/ti/gstreamer-ti_svn.bb
@@ -1,90 +1,85 @@
DESCRIPTION = "Gstreamer plugin for TI Davinci and OMAP processors"
-
-require ti-paths.inc
-
-inherit update-rc.d
-inherit autotools
-
DEPENDS = "ti-dmai gstreamer gst-plugins-base gst-plugins-good gst-plugins-ugly"
-GST_TI_RC_SCRIPT_armv7a="gstreamer-ti-omap3530-rc.sh"
-
-# Fetch source from svn repo
SRCREV = "459"
+# Again, no '.' in PWD allowed :(
+PV = "svnr${SRCREV}"
+PR = "r37"
+
+GST_TI_RC_SCRIPT_omap3 = "gstreamer-ti-omap3530-rc.sh"
+GST_TI_RC_SCRIPT_dm6446="gstreamer-ti-dm6446-rc.sh"
+GST_TI_RC_SCRIPT_dm355="gstreamer-ti-dm355-rc.sh"
+
SRC_URI = "svn://gforge.ti.com/svn/gstreamer_ti/trunk;module=gstreamer_ti;proto=https;user=anonymous;pswd='' \
file://gstreamer-ti-tracker-462.patch;patch=1 \
file://gstreamer-ti-remove-mp3-decode-support-from-auddec1.patch;patch=1 \
- file://${GST_TI_RC_SCRIPT} \
+ file://${GST_TI_RC_SCRIPT} \
"
-SRC_URI_append_armv7a = " \
+SRC_URI_append_omap3 = " \
file://gstreamer-ti-add-omapfb.patch;patch=1 \
"
-# Again, no '.' in PWD allowed :(
-PR = "r37"
-PV = "svnr${SRCREV}"
-
S = "${WORKDIR}/gstreamer_ti/ti_build/ticodecplugin"
-INITSCRIPT_NAME = "gstti-init"
-INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."
-
-XDC_TARGET = gnu.targets.arm.GCArmv5T
-XDC_PLATFORM_dm6446-evm = ti.platforms.evmDM6446
-XDC_PLATFORM_da830-omapl137-evm = ti.platforms.omapl137
-PLATFORM_XDC = ${XDC_PLATFORM}
-export XDC_TARGET
-export XDC_PLATFORM
-export PLATFORM_XDC
+inherit autotools update-rc.d
-PLATFORM_dm6446-evm = "dm6446"
-PLATFORM_da830-omapl137-evm = "ol137"
-
-CPPFLAGS_append = " -DPlatform_${PLATFORM}"
+require ti-paths.inc
-PACKAGE_ARCH = "${MACHINE_ARCH}"
+XDC_TARGET = "gnu.targets.arm.GCArmv5T"
+XDC_PLATFORM_dm6446 = "ti.platforms.evmDM6446"
+XDC_PLATFORM_omapl137 = "ti.platforms.omapl137"
+PLATFORM_XDC = "${XDC_PLATFORM}"
+PLATFORM_dm6446 = "dm6446"
+PLATFORM_omapl137 = "ol137"
+export XDC_TARGET
+export XDC_PLATFORM
+export PLATFORM_XDC
# export codec combo (or server) locations
export HMJCP_COMBO = "${installdir}/codec-combo/hmjcp.accel"
export CODEC_SERVER = "${installdir}/codec-combo/cs.x64P"
-export ENCODE_COMBO = "${installdir}/codec-combo/encodeCombo.x64P"
+export ENCODE_COMBO = "${installdir}/codec-combo/encodeCombo.x64P"
export DECODE_COMBO = "${installdir}/codec-combo/decodeCombo.x64P"
-do_install_prepend () {
- # install gstreamer demo scripts
- install -d ${D}/${installdir}/gst
- cp -r ${WORKDIR}/gstreamer_ti/gstreamer_demo/shared ${D}/${installdir}/gst
- cp -r ${WORKDIR}/gstreamer_ti/gstreamer_demo/${PLATFORM} ${D}/${installdir}/gst
-
- # default loadmodule script is hard-coded for insmod, change to modprobe
- sed -i 's/insmod/modprobe/g' ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
- sed -i 's/.ko//g' ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
- if [ "${PLATFORM}" = "omap3530" ]; then
- echo "modprobe sdmak" >> ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
- fi
- chmod 0755 ${D}/${installdir}/gst -R
-
- install -d ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/${GST_TI_RC_SCRIPT} ${D}${sysconfdir}/init.d/gstti-init
-}
+CPPFLAGS_append = " -DPlatform_${PLATFORM}"
-pkg_postinst_gstreamer-ti-demo-script () {
- ln -sf ${installdir}/codec-combo/* ${installdir}/gst/${PLATFORM}/
+do_install_prepend () {
+ # install gstreamer demo scripts
+ install -d ${D}/${installdir}/gst
+ cp -r ${WORKDIR}/gstreamer_ti/gstreamer_demo/shared ${D}/${installdir}/gst
+ cp -r ${WORKDIR}/gstreamer_ti/gstreamer_demo/${PLATFORM} ${D}/${installdir}/gst
+ # default loadmodule script is hard-coded for insmod, change to modprobe
+ sed -i 's/insmod/modprobe/g' ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
+ sed -i 's/.ko//g' ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
+ if [ "${PLATFORM}" = "omap3530" ]; then
+ echo "modprobe sdmak" >> ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
+ fi
+ chmod 0755 ${D}/${installdir}/gst -R
+ install -d ${D}${sysconfdir}/init.d/
+ install -m 0755 ${WORKDIR}/${GST_TI_RC_SCRIPT} ${D}${sysconfdir}/init.d/gstti-init
}
+PACKAGE_ARCH = "${MACHINE_ARCH}"
PACKAGES += "gstreamer-ti-demo-script"
-FILES_gstreamer-ti-demo-script = "${installdir}/gst/*"
-RDEPENDS_gstreamer-ti-demo-script = "gstreamer-ti"
-RDEPENDS_${PN} = " \
+RDEPENDS_gstreamer-ti-demo-script = "${PN}"
+RRECOMMENDS_${PN} = " \
gst-plugins-base-meta \
gst-plugins-good-meta \
gst-plugins-bad-meta \
gst-plugins-ugly-meta \
ti-dmai-apps"
+FILES_gstreamer-ti-demo-script = "${installdir}/gst/*"
FILES_${PN} += "${libdir}/gstreamer-0.10/*.so ${sysconfdir}"
FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*.a ${libdir}/gstreamer-0.10/*.la"
FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug"
+pkg_postinst_gstreamer-ti-demo-script () {
+ ln -sf ${installdir}/codec-combo/* ${installdir}/gst/${PLATFORM}/
+}
+
+INITSCRIPT_NAME = "gstti-init"
+INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."
+
diff --git a/recipes/ti/ti-cgt6x-native_6.1.9.bb b/recipes/ti/ti-cgt6x-native_6.1.9.bb
index f8d9d98c1b..9674e7699c 100644
--- a/recipes/ti/ti-cgt6x-native_6.1.9.bb
+++ b/recipes/ti/ti-cgt6x-native_6.1.9.bb
@@ -1,9 +1,9 @@
require ti-cgt6x.inc
inherit native
-# download ti_cgt_c6000_6.1.9_setup_linux_x86.bin from https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm and copy in Arago (or OE) download directory.
+# download ti_cgt_c6000_6.1.9_setup_linux_x86.bin from https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm and copy in Arago/OE download directory.
-SRC_URI = "http://install.source.dir.local/ti_cgt_c6000_6.1.9_setup_linux_x86.bin"
+SRC_URI = "http://install.source.dir.local/ti_cgt_c6000_6.1.9_setup_linux_x86.bin"
BINFILE = "ti_cgt_c6000_6.1.9_setup_linux_x86.bin"
diff --git a/recipes/ti/ti-cgt6x.inc b/recipes/ti/ti-cgt6x.inc
index 35a9252cfe..fa46d12aeb 100644
--- a/recipes/ti/ti-cgt6x.inc
+++ b/recipes/ti/ti-cgt6x.inc
@@ -2,41 +2,8 @@ DESCRIPTION = "Code Generation Tools for TI DaVinci and OMAP"
# This file defines function used for extracting .bin file
-python do_unpack () {
- bb.build.exec_func('base_do_unpack', d)
- bb.build.exec_func('ti_bin_do_unpack', d)
-}
+TI_BIN_UNPK_CMDS="Y:qY:workdir: : "
+TI_BIN_UNPK_WDEXT="/cgt"
-python ti_bin_do_unpack() {
-
- import os
-
- localdata = bb.data.createCopy(d)
- bb.data.update_data(localdata)
-
- binfile = bb.data.getVar('BINFILE', localdata)
-
- # Change to the working directory
- save_cwd = os.getcwd()
- workdir = bb.data.getVar('WORKDIR', localdata)
- workdir = bb.data.expand(workdir, localdata)
- os.chdir(workdir)
-
- # Make the InstallJammer binary executable so we can run it
- os.chmod(binfile, 0755)
-
- # Run the InstallJammer binary and accept the EULA
- filename = "HOME=%s ./%s" % (workdir, binfile)
- f = os.popen(filename,'w')
- print >>f, "Y\n"
- print >>f, "qY\n"
- print >>f, "%s/cgt\n" % workdir
- print >>f, " \n"
- print >>f, " \n"
-
- f.close()
-
- # Return to the previous directory
- os.chdir(save_cwd)
-}
+require ti-eula-unpack.inc
diff --git a/recipes/ti/ti-cmem-module_2.23.1.bb b/recipes/ti/ti-cmem-module_2.23.1.bb
deleted file mode 100644
index 7af1216cd3..0000000000
--- a/recipes/ti/ti-cmem-module_2.23.1.bb
+++ /dev/null
@@ -1,68 +0,0 @@
-DESCRIPTION = "CMEM module for TI ARM/DSP processors"
-inherit module
-
-# compile and run time dependencies
-DEPENDS = "virtual/kernel perl-native"
-RDEPENDS = "update-modules"
-
-# Download codec_engine_2_23_01.tar.gz from https://www-a.ti.com/downloads/sds_support/targetcontent/CE/ce_2_23/index.html and copy in Arago (or OE) download directory.
-
-SRC_URI = "http://install.source.dir.local/codec_engine_2_23_01.tar.gz \
- file://cmem-remove-show-pte-function.patch;patch=1 "
-
-# Set the source directory
-S = "${WORKDIR}/codec_engine_2_23_01"
-
-#This is a kernel module, don't set PR directly
-MACHINE_KERNEL_PR_append = "a"
-
-PV = "2231"
-
-do_compile() {
- # TODO :: KERNEL_CC, etc need replacing with user CC
- # TODO :: Need to understand why OBJDUMP is required for kernel module
- # Unset these since LDFLAGS gets picked up and used incorrectly.... need
- # investigation
-
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
-
- cd ${S}/cetools/packages/ti/sdo/linuxutils/cmem
- make \
- LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
- MVTOOL_PREFIX="${TARGET_PREFIX}" \
- UCTOOL_PREFIX="${TARGET_PREFIX}" \
- clean debug release
-}
-
-do_install () {
- install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
- install -m 0755 ${S}/cetools/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
-
- cd ${S}/cetools/packages/ti/sdo/linuxutils/cmem/apps
- make \
- LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
- MVTOOL_PREFIX="${TARGET_PREFIX}" \
- UCTOOL_PREFIX="${TARGET_PREFIX}" \
- EXEC_DIR="${D}${datadir}/ti/ti-cmem-apps" \
- install
-}
-
-pkg_postinst () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm () {
- update-modules || true
-}
-
-INHIBIT_PACKAGE_STRIP = "1"
-FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/cmemk.ko"
-PACKAGES += " ti-cmem-apps"
-FILES_ti-cmem-apps = "${datadir}/ti/ti-cmem-apps/*"
-INSANE_SKIP_ti-cmem-apps = True
-
-
diff --git a/recipes/ti/ti-cmem-module_2.23.bb b/recipes/ti/ti-cmem-module_2.23.bb
deleted file mode 100644
index 0200369501..0000000000
--- a/recipes/ti/ti-cmem-module_2.23.bb
+++ /dev/null
@@ -1,51 +0,0 @@
-DESCRIPTION = "CMEM module for TI ARM/DSP processors"
-inherit module
-
-# compile and run time dependencies
-DEPENDS = "virtual/kernel perl-native"
-RDEPENDS = "update-modules"
-
-SRC_URI = "http://install.source.dir.local/codec_engine_2_23.tar.gz"
-
-# Set the source directory
-S = "${WORKDIR}/codec_engine_2_23"
-
-#This is a kernel module, don't set PR directly
-MACHINE_KERNEL_PR_append = "a"
-PV = "223"
-
-do_compile() {
- # TODO :: KERNEL_CC, etc need replacing with user CC
- # TODO :: Need to understand why OBJDUMP is required for kernel module
- # Unset these since LDFLAGS gets picked up and used incorrectly.... need
- # investigation
-
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
- cd ${S}/cetools/packages/ti/sdo/linuxutils/cmem
- make \
- LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
- MVTOOL_PREFIX="${TARGET_PREFIX}" \
- UCTOOL_PREFIX="${TARGET_PREFIX}" \
- clean debug release
-}
-
-do_install () {
- install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
- install -m 0755 ${S}/cetools/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
-}
-
-pkg_postinst () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm () {
- update-modules || true
-}
-
-INHIBIT_PACKAGE_STRIP = "1"
-FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/cmemk.ko"
-
diff --git a/recipes/ti/ti-cmem-module_2.24.01.bb b/recipes/ti/ti-cmem-module_2.24.01.bb
deleted file mode 100644
index 625d292a55..0000000000
--- a/recipes/ti/ti-cmem-module_2.24.01.bb
+++ /dev/null
@@ -1,66 +0,0 @@
-DESCRIPTION = "CMEM module for TI ARM/DSP processors"
-inherit module
-
-# compile and run time dependencies
-DEPENDS = "virtual/kernel perl-native"
-RDEPENDS = "update-modules"
-
-SRC_URI = "http://install.source.dir.local/codec_engine_2_24_01.tar.gz \
- file://cmem-remove-show-pte-function.patch;patch=1 "
-
-# Set the source directory
-S = "${WORKDIR}/codec_engine_2_24_01"
-
-#This is a kernel module, don't set PR directly
-MACHINE_KERNEL_PR_append = "a"
-
-PV = "2241"
-
-do_compile() {
- # TODO :: KERNEL_CC, etc need replacing with user CC
- # TODO :: Need to understand why OBJDUMP is required for kernel module
- # Unset these since LDFLAGS gets picked up and used incorrectly.... need
- # investigation
-
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
-
- cd ${S}/cetools/packages/ti/sdo/linuxutils/cmem
- make \
- LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
- MVTOOL_PREFIX="${TARGET_PREFIX}" \
- UCTOOL_PREFIX="${TARGET_PREFIX}" \
- clean debug release
-}
-
-do_install () {
- install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
- install -m 0755 ${S}/cetools/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
-
- cd ${S}/cetools/packages/ti/sdo/linuxutils/cmem/apps
- make \
- LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
- MVTOOL_PREFIX="${TARGET_PREFIX}" \
- UCTOOL_PREFIX="${TARGET_PREFIX}" \
- EXEC_DIR="${D}${prefix}/ti/ti-cmem-apps" \
- install
-}
-
-pkg_postinst () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm () {
- update-modules || true
-}
-
-INHIBIT_PACKAGE_STRIP = "1"
-FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/cmemk.ko"
-PACKAGES += " ti-cmem-apps"
-FILES_ti-cmem-apps = "${prefix}/ti/ti-cmem-apps/*"
-INSANE_SKIP_ti-cmem-apps = True
-
-
diff --git a/recipes/ti/ti-codec-combo-dm355.inc b/recipes/ti/ti-codec-combo-dm355.inc
deleted file mode 100644
index e975793082..0000000000
--- a/recipes/ti/ti-codec-combo-dm355.inc
+++ /dev/null
@@ -1,38 +0,0 @@
-# This file defines function used for extracting .bin file
-
-python do_unpack () {
- bb.build.exec_func('base_do_unpack', d)
- bb.build.exec_func('ti_bin_do_unpack', d)
-}
-
-python ti_bin_do_unpack() {
-
- import os
-
- localdata = bb.data.createCopy(d)
- bb.data.update_data(localdata)
-
- binfile = bb.data.getVar('BINFILE', localdata)
-
- # Change to the working directory
- save_cwd = os.getcwd()
- workdir = bb.data.getVar('WORKDIR', localdata)
- workdir = bb.data.expand(workdir, localdata)
- os.chdir(workdir)
-
- # Make the InstallJammer binary executable so we can run it
- os.chmod(binfile, 0755)
-
- # Run the InstallJammer binary and accept the EULA
- filename = "HOME=%s ./%s" % (workdir, binfile)
- f = os.popen(filename,'w')
- print >>f, "Y\n"
- print >>f, "Y\n"
- print >>f, " qY\n"
- print >>f, "%s\n" % workdir
- f.close()
-
- # Return to the previous directory
- os.chdir(save_cwd)
-}
-
diff --git a/recipes/ti/ti-codec-combo-dm355_1.13.bb b/recipes/ti/ti-codec-combo-dm355_1.13.bb
deleted file mode 100644
index 2db0720c6a..0000000000
--- a/recipes/ti/ti-codec-combo-dm355_1.13.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-require ti-codec.inc
-require ti-codec-combo-dm355.inc
-
-SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dvsdk/codecs/dm355_codecs_setuplinux_1_13_000.bin \
- file://mapdmaq \
- "
-
-BINFILE = "dm355_codecs_setuplinux_1_13_000.bin"
-
-S = "${WORKDIR}/dm355_codecs_1_13_000"
-
-# Yes, the xdc stuff still breaks with a '.' in PWD
-PV = "113"
-PR = "r15"
-
-do_compile() {
- echo "Do nothing"
-}
-
-do_install () {
- # install mapdmaq on target
- install -d ${D}/${installdir}/codec-combo
- install -m 0755 ${WORKDIR}/mapdmaq ${D}/${installdir}/codec-combo
-}
-
-INHIBIT_PACKAGE_STRIP = "1"
-INSANE_SKIP_${PN} = True
-
diff --git a/recipes/ti/ti-codec-combo-dm6446.inc b/recipes/ti/ti-codec-combo-dm6446.inc
deleted file mode 100644
index 44508bf49e..0000000000
--- a/recipes/ti/ti-codec-combo-dm6446.inc
+++ /dev/null
@@ -1,39 +0,0 @@
-# This file defines function used for extracting .bin file
-
-python do_unpack () {
- bb.build.exec_func('base_do_unpack', d)
- bb.build.exec_func('ti_bin_do_unpack', d)
-}
-
-python ti_bin_do_unpack() {
-
- import os
-
- localdata = bb.data.createCopy(d)
- bb.data.update_data(localdata)
-
- binfile = bb.data.getVar('BINFILE', localdata)
-
- # Change to the working directory
- save_cwd = os.getcwd()
- workdir = bb.data.getVar('WORKDIR', localdata)
- workdir = bb.data.expand(workdir, localdata)
- os.chdir(workdir)
-
- # Make the InstallJammer binary executable so we can run it
- os.chmod(binfile, 0755)
-
- # Run the InstallJammer binary and accept the EULA
- filename = "HOME=%s ./%s" % (workdir, binfile)
- f = os.popen(filename,'w')
- print >>f, "Y\n"
- print >>f, "Y\n"
- print >>f, " \n"
- print >>f, " qY\n"
- print >>f, "%s\n" % workdir
- f.close()
-
- # Return to the previous directory
- os.chdir(save_cwd)
-}
-
diff --git a/recipes/ti/ti-codec-combo-omap3530.inc b/recipes/ti/ti-codec-combo-omap3530.inc
deleted file mode 100644
index a884549622..0000000000
--- a/recipes/ti/ti-codec-combo-omap3530.inc
+++ /dev/null
@@ -1,46 +0,0 @@
-# This file defines function used for unpacking the .bin file downloaded over
-# the http and display EULA.
-# BINFILE - name of the install jammer .bin file
-# TARFILE - name of the tar file inside the install jammer
-
-python do_unpack () {
- bb.build.exec_func('base_do_unpack', d)
- bb.build.exec_func('ti_bin_do_unpack', d)
-}
-
-python ti_bin_do_unpack() {
-
- import os
-
- localdata = bb.data.createCopy(d)
- bb.data.update_data(localdata)
-
- binfile = bb.data.getVar('BINFILE', localdata)
- tarfile = bb.data.getVar('TARFILE', localdata)
-
- # Change to the working directory
- save_cwd = os.getcwd()
- workdir = bb.data.getVar('WORKDIR', localdata)
- workdir = bb.data.expand(workdir, localdata)
- os.chdir(workdir)
-
- # Make the InstallJammer binary executable so we can run it
- os.chmod(binfile, 0755)
-
- # Run the InstallJammer binary and accept the EULA
- filename = "HOME=%s ./%s" % (workdir, binfile)
- f = os.popen(filename,'w')
- print >>f, "Y\n"
- print >>f, " qY\n"
- print >>f, "%s\n" % workdir
- f.close()
-
- # Expand the tarball that was created
- cmd = 'tar xz --no-same-owner -f %s -C %s' % (tarfile, workdir)
- ret = os.system(cmd)
-
- # Return to the previous directory
- os.chdir(save_cwd)
- return ret == 0
-}
-
diff --git a/recipes/ti/ti-codec-combo-omap3530_3.16.1.bb b/recipes/ti/ti-codec-combo-omap3530_3.16.1.bb
deleted file mode 100644
index 3a9efdd60d..0000000000
--- a/recipes/ti/ti-codec-combo-omap3530_3.16.1.bb
+++ /dev/null
@@ -1,51 +0,0 @@
-require ti-codec.inc
-require ti-codec-combo-omap3530.inc
-
-SRC_URI = "http://software-dl.ti.com/sdo/sdo_apps_public_sw/omap3530_dvsdk_combos_tspa/omap3530_dvsdk_combos_tspa-3_16_01-Linux-x86.bin"
-
-# Specify names of the InstallJammer binary file and the tarball it extracts
-BINFILE = "omap3530_dvsdk_combos_tspa-3_16_01-Linux-x86.bin"
-TARFILE = "omap3530_dvsdk_combos_tspa/omap3530_dvsdk_combos_tspa_3_16_01.tar.gz"
-
-S = "${WORKDIR}/omap3530_dvsdk_combos_tspa_3_16_01"
-
-DEPENDS="ti-codec-engine ti-dsplink-module"
-
-CODEC_INSTALL_DIR = "${S}"
-
-export CODEGEN_INSTALL_DIR
-
-# Yes, the xdc stuff still breaks with a '.' in PWD
-PV = "3161"
-PR = "r17"
-do_compile() {
- make CE_INSTALL_DIR=${CE_INSTALL_DIR} \
- FC_INSTALL_DIR=${FC_INSTALL_DIR} \
- LINK_INSTALL_DIR=${LINK_INSTALL_DIR} \
- CMEM_INSTALL_DIR=${CMEM_INSTALL_DIR} \
- LPM_INSTALL_DIR=${LPM_INSTALL_DIR} \
- BIOS_INSTALL_DIR=${BIOS_INSTALL_DIR} \
- CODEGEN_INSTALL_DIR=${CODEGEN_INSTALL_DIR} \
- CODEC_INSTALL_DIR=${CODEC_INSTALL_DIR} \
- XDC_INSTALL_DIR=${XDC_INSTALL_DIR} clean
-
- make CE_INSTALL_DIR=${CE_INSTALL_DIR} \
- FC_INSTALL_DIR=${FC_INSTALL_DIR} \
- LINK_INSTALL_DIR=${LINK_INSTALL_DIR} \
- CMEM_INSTALL_DIR=${CMEM_INSTALL_DIR} \
- LPM_INSTALL_DIR=${LPM_INSTALL_DIR} \
- BIOS_INSTALL_DIR=${BIOS_INSTALL_DIR} \
- CODEGEN_INSTALL_DIR=${CODEGEN_INSTALL_DIR} \
- CODEC_INSTALL_DIR=${CODEC_INSTALL_DIR} \
- XDC_INSTALL_DIR=${XDC_INSTALL_DIR}
-}
-
-do_install () {
- install -d ${D}/${installdir}/codec-combo
- cd ${S}
- for file in `find . -name *.x64P`; do
- cp ${file} ${D}/${installdir}/codec-combo
- done
-}
-
-
diff --git a/recipes/ti/ti-codec-combos_3.16.bb b/recipes/ti/ti-codec-combos_3.16.bb
deleted file mode 100644
index 5d8faca30f..0000000000
--- a/recipes/ti/ti-codec-combos_3.16.bb
+++ /dev/null
@@ -1,90 +0,0 @@
-DESCRIPTION = "Codec combos for omap3530"
-DEPENDS = "ti-codec-engine"
-LICENCE = "unknown"
-
-require ti-paths.inc
-
-# Tar-Up Codec Combos from the OMAP DVSDK (http://www.ti.com/dvevmupdates) and drop in files/
-SRC_URI = "file://omap3530_dvsdk_combos_3_16.tar.gz \
- "
-
-S = "${WORKDIR}/omap3530_dvsdk_combos_3_16"
-
-# Yes, the xdc stuff still breaks with a '.' in PWD
-PV = "316"
-PR = "r15"
-
-TARGET = "all"
-
-export CE_INSTALL_DIR="${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-engine/packages;${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-engine/cetools"
-
-# Needed for now since makefile in latest package assumes this is set
-export CODEC_INSTALL_DIR="${S}"
-
-do_compile() {
-
- # For now, remove the reference to Rules.make and swap prod for eval, since this only has eval libs included
- sed -i \
- -e '/Rules.make/d' \
- -e 's:$(FC_INSTALL_DIR)/packages;::g' \
- -e 's:$(XDAIS_INSTALL_DIR)/packages;::g' \
- -e 's:$(FC_INSTALL_DIR)/fctools/packages;::g' \
- -e 's:$(BIOSUTILS_INSTALL_DIR)/packages;::g' \
- -e 's:$(CMEM_INSTALL_DIR)/packages;::g' \
- -e 's:$(LINK_INSTALL_DIR)/packages;::g' \
- -e 's:$(LPM_INSTALL_DIR)/packages;::g' \
- -e s:prod:eval:g \
- ${S}/Makefile
-
- # Fix-up config.bld to swap out hardcoded references to tools paths
- sed -i -e s:/opt/dmsw/cg6x_6_0_16:${TITOOLSDIR}/${TICGTOOLSDIR}:g \
- ${S}/config.bld
-
- # Add make target to allow package to be prepared for building (normally this package is a binary release)
- echo "makebuildable:
- \$(XDC) .make -PR .
-" >> ${S}/Makefile
-
- oe_runmake makebuildable
- oe_runmake clean
- oe_runmake
-}
-
-do_install () {
- echo oe_runmake install
-
- install -d ${D}/${datadir}/ti-codec-combos
-
- cd ${S}
-
- # grab the server executables
- for i in $(find . -name "*.x64P") ; do
- install ${i} ${D}/${datadir}/ti-codec-combos
- done
-
- # copy the generated data sheets as well for reference
- #for i in $(find . -name "*.DataSheet.*") ; do
-
- # infact, just copy all the html files (including the server datasheets) from the distro
- # - this includes top level html (with codec versions) + some qualiTI codec test reports
- for i in $(find . -name "*.html") ; do
- install ${i} ${D}/${datadir}/ti-codec-combos
- done
-
-}
-
-do_stage () {
- install -d ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-combos
- cp -pPrf ${S}/* ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-combos
- for codec in encode decode ; do
- mkdir -p ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-combos/packages/ti/sdo/servers/$codec/package/info/${datadir}/ti-codec-combos
- ln -sf ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-combos/packages/ti/sdo/servers/$codec/package/info/$codec* ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-combos/packages/ti/sdo/servers/$codec/package/info/${datadir}/ti-codec-combos
- done
-}
-
-FILES_ti-codec-combos = "${datadir}/ti-codec-combos/*"
-
-INHIBIT_PACKAGE_STRIP = "1"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
diff --git a/recipes/ti/ti-codec-engine.inc b/recipes/ti/ti-codec-engine.inc
new file mode 100644
index 0000000000..81dae36bda
--- /dev/null
+++ b/recipes/ti/ti-codec-engine.inc
@@ -0,0 +1,27 @@
+DESCRIPTION = "Codec Engine for TI ARM/DSP processors"
+
+# compile time dependencies
+DEPENDS = "ti-xdctools-native ti-xdais-native ti-linuxutils ti-framework-components"
+DEPENDS_append_dm6446 = " ti-cgt6x-native ti-dspbios-native"
+DEPENDS_append_omap3 = " ti-cgt6x-native ti-dspbios-native"
+
+BASE_SRC_URI = "http://install.source.dir.local"
+SRC_URI = "${BASE_SRC_URI}/codec_engine_${PV},lite.tar.gz "
+
+# Set the source directory
+S = "${WORKDIR}/codec_engine_${PV}"
+
+do_compile () {
+ echo "! Do not rebuild for now !"
+}
+
+# stage tree - other packages may need this
+do_stage() {
+ install -d ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${PN}
+ cp -pPrf ${S}/* ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+
+INHIBIT_PACKAGE_STRIP = "1"
diff --git a/recipes/ti/ti-codec-engine_2.21.bb b/recipes/ti/ti-codec-engine_2.21.bb
deleted file mode 100644
index d0cd18e8e9..0000000000
--- a/recipes/ti/ti-codec-engine_2.21.bb
+++ /dev/null
@@ -1,278 +0,0 @@
-require dsplink.inc
-
-INSANE_SKIP_ti-codec-engine-apps = True
-INSANE_SKIP_ti-dsplink-apps = True
-INSANE_SKIP_${PN} = True
-
-DESCRIPTION = "Codec Engine for TI ARM/DSP processors"
-
-DEPENDS = "virtual/kernel perl-native"
-RDEPENDS = "update-modules"
-
-inherit module
-
-# tconf from xdctools dislikes '.' in pwd :/
-PV = "221"
-
-# Get CE tarball from TI website, place in sources and calculate
-# md5sum
-# Look for tarball at https://www-a.ti.com/downloads/sds_support/targetcontent/CE/index.html
-
-SRC_URI = "http://install.tarball.in.source.dir/codec_engine_2_21.tar.gz \
- file://cmem-class-device-27-and-sched-include-fix.patch;patch=1 \
- file://sdma-class-device-and-includes-fix.patch;patch=1 \
- file://dsplink-semaphore-27.patch;patch=1 \
- file://dsplink-add-class-device-create-support.patch;patch=1 \
- file://lpm-device-create-and-semaphore-include-fix.patch;patch=1 \
- file://lpm-make-symbol-warnings-fix.patch;patch=1 \
- file://Makefile-dsplink-gpp \
- file://Makefile-dsplink-dsp \
- file://loadmodules-ti-dsplink-apps.sh \
- file://unloadmodules-ti-dsplink-apps.sh \
- file://loadmodules-ti-codec-engine-apps.sh \
- file://unloadmodules-ti-codec-engine-apps.sh \
-"
-
-S = "${WORKDIR}/codec_engine_2_21"
-
-require ti-paths.inc
-
-export DSPLINK="${S}/cetools/packages/dsplink"
-
-PARALLEL_MAKE = ""
-
-# the include files on top define do_compile for the submodules
-do_compile_append() {
-
-#dsplink already done from inclusion of require dsplink.inc
-
-#lpm bits
- if [ -e ${S}/cetools/packages/ti/bios/power/ ] ; then
-
- # Build the DSP power manager kernel module
- cd ${S}/cetools/packages/ti/bios/power/modules/${DSPPOWERSOC}/lpm
-
- # Still need to move this into the patch file
- if [ $(echo ${KERNEL_VERSION} | cut -c5,6) -gt 26 ] ; then
- sed -i -e s:asm/semaphore:linux/semaphore: lpm_driver.c
- fi
-
- #what is this for?
- rm -f *o
-
- # lpm also needs KERNEL_INSTALL_DIR and MVTOOL_PREFIX which come from ti-paths.inc
- export DSPLINK_REPO=${DSPLINK}/..
- # should move the clean step into the clean stage..
- #oe_runmake clean
- oe_runmake
- fi
-
-#cmemk bits
- if [ -e ${S}/cetools/packages/ti/sdo/linuxutils/cmem ] ; then
- echo "MVTOOL_PREFIX=${TARGET_PREFIX}" > ${S}/Rules.make
- echo "UCTOOL_PREFIX=${TARGET_PREFIX}" >> ${S}/Rules.make
- echo "LINUXKERNEL_INSTALL_DIR=${STAGING_KERNEL_DIR}" >> ${S}/Rules.make
- #export DSPLINK=${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/dsplink
-
- # Build the cmem kernel module and associated test apps
- # We unset CFLAGS because kernel modules need different ones, this is basically a verbatim copy of kernel.bbclass and module-base.bbclass
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
-
- cd ${S}/cetools/packages/ti/sdo/linuxutils/cmem
- oe_runmake clean
- oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \
- KERNEL_SRC=${STAGING_KERNEL_DIR} \
- KERNEL_VERSION=${KERNEL_VERSION} \
- CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
- AR="${KERNEL_AR}"
- fi
-
-#sdma bits
- if [ -e ${S}/cetools/packages/ti/sdo/linuxutils/sdma ] ; then
- echo "MVTOOL_PREFIX=${TARGET_PREFIX}" > ${S}/Rules.make
- echo "UCTOOL_PREFIX=${TARGET_PREFIX}" >> ${S}/Rules.make
- echo "LINUXKERNEL_INSTALL_DIR=${STAGING_KERNEL_DIR}" >> ${S}/Rules.make
-
- # Build the sdma kernel module and associated test apps
- # We unset CFLAGS because kernel modules need different ones, this is basically a verbatim copy of kernel.bbclass and module-base.bbclass
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
-
- cd ${S}/cetools/packages/ti/sdo/linuxutils/sdma
- oe_runmake clean
- oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \
- KERNEL_SRC=${STAGING_KERNEL_DIR} \
- KERNEL_VERSION=${KERNEL_VERSION} \
- CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
- AR="${KERNEL_AR}"
- fi
-
-
-#need to add other modules here, like IRQ, etc
-
-
-#now build the CE examples
- cd ${S}/examples
-
- # Fix paths to arm crosstools, c6x codegen and x86 gcc
- # Also disable uclibc and x86 builds
- sed -i -e s:/db/toolsrc/library/tools/vendors/cs/arm/arm-2007q3:${CROSS_DIR}:g \
- -e s:/db/toolsrc/library/tools/vendors/ti/c6x/6.0.16/Linux:${TITOOLSDIR}/${TICGTOOLSDIR}:g \
- -e s:/db/toolsrc/library/tools/vendors/opensource/gcc/4.1.0/Linux/gcc-4.1.0-glibc-2.3.6/i686-unknown-linux-gnu:/usr:g \
- -e s:arm-none-linux-gnueabi-:${TARGET_PREFIX}:g \
- -e 's:true, // build for uC Linux:false,:g' \
- -e 's:true, // build for PC Linux:false,:g' \
- ${S}/examples/user.bld
-
- # For now, remove all targets, except dm6446 and omap3530
- sed -i \
- -e '/evmDM357/d' \
- -e '/evmDM6446/d' \
- -e '/evmDM6467/d' \
- -e '/evmDM355/d' \
- -e '/evmDM6437/d' \
- -e '/evmDM648/d' \
- -e '/sdp3430/d' \
- -e '/evm2530/d' \
- ${S}/examples/user.bld
-
- # Fix path to c6x codegen
- sed -i -e s:/db/toolsrc/library/tools/vendors/ti/c6x/6.0.16/Linux:${TITOOLSDIR}/${TICGTOOLSDIR}:g \
- xdcpaths.mak
-
- # Start building the CE examples: codecs, extensions, servers (codec bundles) and ARM side apps
- # the DSP side uses CC to point to the c6x codegen, but would get the gcc tool
- unset CC
-
- # Make clean doesn't do what you'd expect, it only cleans stuff you've enabled, so some cruft remains
-
- # First clean
- for i in codecs extensions servers apps ; do
- make -e -C ${S}/examples/ti/sdo/ce/examples/$i clean
- done
-
- # Then build the examples
- for i in codecs extensions servers apps ; do
- make -e -C ${S}/examples/ti/sdo/ce/examples/$i
- done
-}
-
-do_install_append () {
- #driver - kernel module
- install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
- cp ${S}/cetools/packages/ti/bios/power/modules/${DSPPOWERSOC}/lpm/*.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp || true
- cp ${S}/cetools/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp || true
- cp ${S}/cetools/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp || true
-
- #library
- #install -d ${D}/${libdir}
- #install -m 0755 ${DSPLINK}/gpp/BUILD/EXPORT/RELEASE/dsplink.lib ${D}/${libdir}
-
- #sample apps - this is very 64x / v5T specific at the moment - we really need CE to give us this list...
- install -d ${D}/${datadir}/ti-codec-engine
- # we change pwd so that find gives us relative path to the files, which we use to create the same structure on the target
- cd ${S}/examples/ti/sdo/ce
-
- #test app module un/load scripts
- install ${WORKDIR}/loadmodules-ti-dsplink-apps.sh ${D}/${datadir}/ti-dsplink
- install ${WORKDIR}/unloadmodules-ti-dsplink-apps.sh ${D}/${datadir}/ti-dsplink
-
- #ce samples
- # first find all the app files named '.out'
- for i in $(find . -name "*.out") ; do
- # first create the directory
- install -d ${D}/${datadir}/ti-codec-engine/`dirname ${i}`
- # now copy the file
- install ${i} ${D}/${datadir}/ti-codec-engine/`dirname ${i}`
- done
-
- # next find all the app files named '.xv5T'
- for i in $(find . -name "*.xv5T") ; do
- # first create the directory
- install -d ${D}/${datadir}/ti-codec-engine/`dirname ${i}`
- # now copy the file
- install ${i} ${D}/${datadir}/ti-codec-engine/`dirname ${i}`
- done
-
- # then find all the app/server files named '.x64P'
- for i in $(find . -name "*.x64P") ; do
- # first create the directory
- install -d ${D}/${datadir}/ti-codec-engine/`dirname ${i}`
- # now copy the file
- install ${i} ${D}/${datadir}/ti-codec-engine/`dirname ${i}`
- done
-
- # finally find all the app files named '.dat'
- for i in $(find . -name "*.dat") ; do
- # first create the directory
- install -d ${D}/${datadir}/ti-codec-engine/`dirname ${i}`
- # now copy the file
- install ${i} ${D}/${datadir}/ti-codec-engine/`dirname ${i}`
- done
-
- #test app module un/load scripts
- install ${WORKDIR}/loadmodules-ti-codec-engine-apps.sh ${D}/${datadir}/ti-codec-engine
- install ${WORKDIR}/unloadmodules-ti-codec-engine-apps.sh ${D}/${datadir}/ti-codec-engine
-
- # we should install the CMEM apps as well here
-
- # finally, strip targets that we're not supporting here
- # - TODO...
-}
-
-PACKAGES =+ "ti-lpm-module ti-cmem-module ti-sdma-module ti-codec-engine-apps"
-
-FILES_ti-lpm-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/*lpm*ko"
-FILES_ti-cmem-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/cmemk.ko"
-FILES_ti-sdma-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/sdmak.ko"
-FILES_ti-codec-engine-apps = "${datadir}/ti-codec-engine/*"
-
-pkg_postinst_ti-lpm-module () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm_ti-lpm-module () {
- update-modules || true
-}
-
-pkg_postinst_ti-cmem-module () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm_ti-cmem-module () {
- update-modules || true
-}
-
-pkg_postinst_ti-sdma-module () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm_ti-sdma-module () {
- update-modules || true
-}
-
-INHIBIT_PACKAGE_STRIP = "1"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-#legacy upgrade helpers
-RPROVIDES_ti-cmem-module += "ti-cmemk-module"
-RREPLACES_ti-cmem-module += "ti-cmemk-module"
-
-# ti-dsplink-module can be built by either codec-engine or standalone dsplink - tell it to use this one, else unwanted dependence
-PREFERRED_PROVIDER_ti-dsplink-module = "ti-codec-engine"
-
-#add run-time dependencies - note for kernel module we can only use RRECOMMENDS, since modules might be built into the kernel
-RRECOMMENDS_ti-codec-engine-apps += "ti-dsplink-module ti-lpm-module ti-cmem-module ti-sdma-module"
-
diff --git a/recipes/ti/ti-codec-engine_2.23.1.bb b/recipes/ti/ti-codec-engine_2.23.1.bb
deleted file mode 100644
index e002850a9e..0000000000
--- a/recipes/ti/ti-codec-engine_2.23.1.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-DESCRIPTION = "Codec Engine 2.23.01 for TI ARM/DSP processors"
-
-# compile time dependencies
-DEPENDS_dm6446-evm += "ti-xdctools-native ti-cgt6x-native ti-dspbios-native"
-DEPENDS_omap3evm += "ti-cgt6x-native ti-dspbios-native ti-xdctools-native"
-DEPENDS_armv7a += "ti-cgt6x-native ti-dspbios-native ti-xdctools-native"
-DEPENDS_dm355-evm += "ti-xdctools-native"
-
-# tconf from xdctools dislikes '.' in pwd :/
-PR = "r16"
-PV = "2231"
-
-# Download codec_engine_2_23_01.tar.gz from https://www-a.ti.com/downloads/sds_support/targetcontent/CE/ce_2_23/index.html and copy in Arago (or OE) download directory.
-
-SRC_URI = "http://install.source.dir.local/codec_engine_2_23_01.tar.gz "
-
-# Set the source directory
-S = "${WORKDIR}/codec_engine_2_23_01"
-
-do_compile () {
- echo "! Do not rebuild for now !"
-}
-
-# stage tree - other packages may need this
-do_stage() {
- install -d ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${PN}
- cp -pPrf ${S}/* ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/
-}
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-INHIBIT_PACKAGE_STRIP = "1"
-
diff --git a/recipes/ti/ti-codec-engine_2.24.01.bb b/recipes/ti/ti-codec-engine_2.24.01.bb
index 9be02046a4..ae0197e3d2 100644
--- a/recipes/ti/ti-codec-engine_2.24.01.bb
+++ b/recipes/ti/ti-codec-engine_2.24.01.bb
@@ -3,14 +3,14 @@ DESCRIPTION = "Codec Engine 2.24.01 for TI ARM/DSP processors"
require ti-paths.inc
# compile time dependencies
-DEPENDS = "ti-xdctools-native"
+DEPENDS = "ti-framework-components ti-xdais-native ti-xdctools-native ti-cgt6x-native"
-DEPENDS_append_dm6446-evm = " ti-cgt6x-native ti-dspbios-native ti-dsplink-module"
-DEPENDS_append_armv7a = " ti-cgt6x-native ti-dspbios-native ti-dsplink-module"
+DEPENDS_append_dm6446 = " ti-dspbios-native ti-linuxutils ti-dsplink-module"
+DEPENDS_append_omap3 = " ti-dspbios-native ti-linuxutils ti-dsplink-module"
# tconf from xdctools dislikes '.' in pwd :/
PR = "r7"
-PV = "2241"
+PV = "2_24_01"
SRC_URI = "http://install.source.dir.local/codec_engine_2_24_01.tar.gz "
@@ -18,19 +18,18 @@ SRC_URI = "http://install.source.dir.local/codec_engine_2_24_01.tar.gz "
S = "${WORKDIR}/codec_engine_2_24_01"
# Define Device variable
-DEVICES_dm6446-evm ?= "DM6446"
-
-# define gppos variable
-GPPOS_dm6446-evm ?= "LINUX_GCC"
+DEVICES_dm6446 ?= "DM6446"
+DEVICES_omap3 ?= "OMAP3530"
+DEVICES_dm355 ?= "DM355"
#define PROGRAM variables
-PROGRAMS = "APP_CLIENT DSP_SERVER"
+PROGRAMS ?= "APP_CLIENT DSP_SERVER"
+PROGRAMS_dm355 = "APP_LOCAL"
LINK_INSTALL_DIR="${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-dsplink-module/packages"
-DSPBIOS_DIR="${STAGING_DIR_NATIVE}/ti-dspbios-native"
-CGT6x_DIR="${STAGING_DIR_NATIVE}/ti-cgt6x-native"
-XDCTOOLS_DIR="${STAGING_DIR_NATIVE}/ti-xdctools-native"
-CE_INSTALL_DIR="${S}"
+CGT6x_DIR = "${STAGING_DIR_NATIVE}/ti-cgt6x-native"
+XDCTOOLS_DIR = "${STAGING_DIR_NATIVE}/ti-xdctools-native"
+CE_INSTALL_DIR = "${S}"
do_compile () {
@@ -38,35 +37,34 @@ do_compile () {
-e s:arm-none-linux-gnueabi-:${TARGET_PREFIX}:g \
${S}/examples/xdcpaths.mak
- for i in codecs extensions servers apps ; do
- cd ${S}/examples/ti/sdo/ce/examples/$i
- make DEVICES="${DEVICES}" \
- GPPOS="${GPPOS}" \
- PROGRAMS="${PROGRAMS}" \
- CE_INSTALL_DIR="${CE_INSTALL_DIR}" \
- XDC_INSTALL_DIR="${XDCTOOLS_DIR}" \
- BIOS_INSTALL_DIR="${DSPBIOS_DIR}"\
- DSPLINK_INSTALL_DIR="${LINK_INSTALL_DIR}" \
- XDAIS_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
- FC_INSTALL_DIR="${FC_INSTALL_DIR}" \
- CMEM_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
- LPM_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
- EDMA3_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
- FC_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
- CGTOOLS_V5T="${CROSS_DIR}"\
- CGTOOLS_C64P="${CGT6x_DIR}" \
- clean all
- done
+ for i in codecs extensions servers apps ; do
+ cd ${S}/examples/ti/sdo/ce/examples/$i
+ make DEVICES="${DEVICES}" \
+ GPPOS="${GPPOS}" \
+ PROGRAMS="${PROGRAMS}" \
+ CE_INSTALL_DIR="${CE_INSTALL_DIR}" \
+ XDC_INSTALL_DIR="${XDCTOOLS_DIR}" \
+ BIOS_INSTALL_DIR="${BIOS_INSTALL_DIR}"\
+ DSPLINK_INSTALL_DIR="${LINK_INSTALL_DIR}" \
+ XDAIS_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
+ FC_INSTALL_DIR="${FC_INSTALL_DIR}" \
+ CMEM_INSTALL_DIR="${CMEM_INSTALL_DIR}" \
+ LPM_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
+ EDMA3_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
+ CGTOOLS_V5T="${CROSS_DIR}"\
+ CGTOOLS_C64P="${CGT6x_DIR}" \
+ clean all
+ done
}
do_install() {
install -d ${D}/${installdir}/codec-engine-apps
- cp ${S}/examples/apps/system_files/${DEVICES}/loadmodules.sh ${D}/${installdir}/codec-engine-apps
+ cp ${S}/examples/apps/system_files/${DEVICES}/loadmodules.sh ${D}/${installdir}/codec-engine-apps
sed -i 's/insmod/modprobe/g' ${D}/${installdir}/codec-engine-apps/loadmodules.sh
cd ${S}/examples/ti/sdo/ce/examples
- for i in $(find . -name "*.xv5T"); do
+ for i in $(find . -name "*.xv5T"); do
install -d ${D}/${installdir}/codec-engine-apps/`dirname ${i} | cut -f3 -d /`
install ${i} ${D}/${installdir}/codec-engine-apps/`dirname ${i} | cut -f3 -d /`
diff --git a/recipes/ti/ti-codec-engine_2.25.01.bb b/recipes/ti/ti-codec-engine_2.25.01.bb
new file mode 100644
index 0000000000..5a5c7d3d44
--- /dev/null
+++ b/recipes/ti/ti-codec-engine_2.25.01.bb
@@ -0,0 +1,7 @@
+require ti-codec-engine.inc
+
+DEFAULT_PREFERENCE = "-1"
+
+PV = "2_25_00_01"
+PR = "r20"
+
diff --git a/recipes/ti/ti-codecs-dm355.inc b/recipes/ti/ti-codecs-dm355.inc
new file mode 100644
index 0000000000..8a95dc3751
--- /dev/null
+++ b/recipes/ti/ti-codecs-dm355.inc
@@ -0,0 +1,37 @@
+DESCRIPTION = "DM355 Codecs"
+
+BASE_SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dvsdk/codecs"
+SRC_URI = "${BASE_SRC_URI}/dm355_codecs_setuplinux_${PV}.bin \
+ file://mapdmaq \
+ "
+
+S = "${WORKDIR}/dm355_codecs_${PV}"
+
+require ti-paths.inc
+
+BINFILE = "dm355_codecs_setuplinux_${PV}.bin"
+TI_BIN_UNPK_CMDS = "Y:Y: qY:workdir"
+
+require ti-eula-unpack.inc
+
+do_compile() {
+ echo "Do nothing"
+}
+
+do_install () {
+ # install mapdmaq on target
+ install -d ${D}/${installdir}/codecs
+ install -m 0755 ${WORKDIR}/mapdmaq ${D}/${installdir}/codecs
+}
+
+do_stage() {
+ install -d ${CODEC_INSTALL_DIR}
+ cp -pPrf ${S}/* ${CODEC_INSTALL_DIR}
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+FILES_${PN} = "${installdir}/codecs/mapdmaq"
+
+INHIBIT_PACKAGE_STRIP = "1"
+INSANE_SKIP_${PN} = "True"
diff --git a/recipes/ti/ti-codecs-dm355_1.13.bb b/recipes/ti/ti-codecs-dm355_1.13.bb
new file mode 100644
index 0000000000..bb7adbdb8e
--- /dev/null
+++ b/recipes/ti/ti-codecs-dm355_1.13.bb
@@ -0,0 +1,6 @@
+PV = "1_13_000"
+PR = "r16"
+
+require ti-codecs-dm355.inc
+
+
diff --git a/recipes/ti/ti-codecs-dm365.inc b/recipes/ti/ti-codecs-dm365.inc
new file mode 100644
index 0000000000..b3166bef67
--- /dev/null
+++ b/recipes/ti/ti-codecs-dm365.inc
@@ -0,0 +1,26 @@
+DESCRIPTION = "DM365 Codecs"
+
+BASE_SRC_URI = "http://install.source.dir.local"
+SRC_URI = "${BASE_SRC_URI}/dm365_codecs_${PV}.tar.gz"
+
+S = "${WORKDIR}/dm365_codecs_${PV}"
+
+do_compile() {
+ echo "Do nothing"
+}
+
+do_install () {
+ # install mapdmaq on target
+ install -d ${D}/${installdir}/codecs
+}
+
+do_stage() {
+ install -d ${CODEC_INSTALL_DIR}
+ cp -pPrf ${S}/* ${CODEC_INSTALL_DIR}
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+FILES_${PN} = "${installdir}/codecs"
+INHIBIT_PACKAGE_STRIP = "1"
+INSANE_SKIP_${PN} = True
+
diff --git a/recipes/ti/ti-codecs-dm365_1.0.6.bb b/recipes/ti/ti-codecs-dm365_1.0.6.bb
new file mode 100644
index 0000000000..59f57223a9
--- /dev/null
+++ b/recipes/ti/ti-codecs-dm365_1.0.6.bb
@@ -0,0 +1,6 @@
+
+PV = "01_00_06"
+
+require ti-codecs-dm365.inc
+
+
diff --git a/recipes/ti/ti-codec-combo-dm6446_2.05.bb b/recipes/ti/ti-codecs-dm6446_2.05.bb
index 07d9dffe6b..63a57fef8f 100644
--- a/recipes/ti/ti-codec-combo-dm6446_2.05.bb
+++ b/recipes/ti/ti-codecs-dm6446_2.05.bb
@@ -1,12 +1,14 @@
-DEPENDS="ti-codec-engine ti-dsplink-module"
+DEPENDS="ti-codec-engine ti-linuxutils"
require ti-codec.inc
-require ti-codec-combo-dm6446.inc
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/S1SDKLNX/DVSDK_2_00/exports/dm6446_codecs_setuplinux_2_00_00_22.bin"
S = "${WORKDIR}/dvsdk_2_00_00_22/dm6446_dvsdk_combos_2_05"
BINFILE = "dm6446_codecs_setuplinux_2_00_00_22.bin"
+TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
+
+require ti-eula-unpack.inc
export ${CODEGEN_INSTALL_DIR}
diff --git a/recipes/ti/ti-cs1-omap3530_1.0.1.bb b/recipes/ti/ti-codecs-omap3530_1.01.bb
index 9779c33b71..104b128282 100644
--- a/recipes/ti/ti-cs1-omap3530_1.0.1.bb
+++ b/recipes/ti/ti-codecs-omap3530_1.01.bb
@@ -1,19 +1,21 @@
require ti-codec.inc
-require ti-cs1-omap3530.inc
SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dvsdk/DVSDK_3_00/latest//exports/cs1omap3530_setuplinux_1_00_01-42.bin"
# Specify names of the InstallJammer binary file and the tarball it extracts
BINFILE = "cs1omap3530_setuplinux_1_00_01-42.bin"
+TI_BIN_UNPK_CMDS = "Y:Y: qY:workdir"
+
+require ti-eula-unpack.inc
S = "${WORKDIR}/dvsdk_3_00_01_42/cs1omap3530_1_00_01"
-DEPENDS="ti-codec-engine ti-dsplink-module"
+DEPENDS="ti-codec-engine ti-linuxutils"
export CODEGEN_INSTALL_DIR
# Yes, the xdc stuff still breaks with a '.' in PWD
-PV = "101"
+PV = "1_00_1"
PR = "r5"
do_compile() {
diff --git a/recipes/ti/ti-codec-combo-omapl137_1.0.bb b/recipes/ti/ti-codecs-omapl137_1.0.bb
index 25baa694f5..269f9a3e00 100644
--- a/recipes/ti/ti-codec-combo-omapl137_1.0.bb
+++ b/recipes/ti/ti-codecs-omapl137_1.0.bb
@@ -6,7 +6,7 @@ SRC_URI = "http://install.source.dir.local/omapl137_dvsdk_combos_1_0.tar.gz"
S = "${WORKDIR}/omapl137_dvsdk_combos_1_0"
# Yes, the xdc stuff still breaks with a '.' in PWD
-PV = "100"
+PV = "1_0"
PR = "r1"
do_compile() {
diff --git a/recipes/ti/ti-cs1-omap3530.inc b/recipes/ti/ti-cs1-omap3530.inc
deleted file mode 100644
index cb9696d61d..0000000000
--- a/recipes/ti/ti-cs1-omap3530.inc
+++ /dev/null
@@ -1,41 +0,0 @@
-
-# This file defines function used for extracting .bin file
-
-python do_unpack () {
- bb.build.exec_func('base_do_unpack', d)
- bb.build.exec_func('ti_bin_do_unpack', d)
-}
-
-python ti_bin_do_unpack() {
-
- import os
-
- localdata = bb.data.createCopy(d)
- bb.data.update_data(localdata)
-
- binfile = bb.data.getVar('BINFILE', localdata)
-
- # Change to the working directory
- save_cwd = os.getcwd()
- workdir = bb.data.getVar('WORKDIR', localdata)
- workdir = bb.data.expand(workdir, localdata)
- os.chdir(workdir)
-
- # Make the InstallJammer binary executable so we can run it
- os.chmod(binfile, 0755)
-
- # Run the InstallJammer binary and accept the EULA
- filename = "HOME=%s ./%s" % (workdir, binfile)
- f = os.popen(filename,'w')
- print >>f, "Y\n"
- print >>f, "Y\n"
- print >>f, " \n"
- print >>f, "qY\n"
- print >>f, "%s\n" % workdir
-
- f.close()
-
- # Return to the previous directory
- os.chdir(save_cwd)
-}
-
diff --git a/recipes/ti/ti-dm355mm-module_1.13.bb b/recipes/ti/ti-dm355mm-module_1.13.bb
index 59cbd69e10..6941d0c741 100644
--- a/recipes/ti/ti-dm355mm-module_1.13.bb
+++ b/recipes/ti/ti-dm355mm-module_1.13.bb
@@ -1,25 +1,19 @@
DESCRIPTION = "User space DMA module for DM355"
-require ti-codec-combo-dm355.inc
+require ti-codecs-dm355.inc
inherit module
-# compile and run time dependencies
-DEPENDS = "virtual/kernel perl-native"
-RDEPENDS = "update-modules"
+PV = "1_13_000"
-SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dvsdk/codecs/dm355_codecs_setuplinux_1_13_000.bin \
- file://dm355mm_1_30.patch;patch=1 \
+SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dvsdk/codecs/dm355_codecs_setuplinux_${PV}.bin \
+ file://dm355mm.patch;patch=1 \
"
+S = "${WORKDIR}/dm355_codecs_${PV}"
+BINFILE="dm355_codecs_setuplinux_${PV}.bin"
-S = "${WORKDIR}/dm355_codecs_1_13_000"
-BINFILE = "dm355_codecs_setuplinux_1_13_000.bin"
-
-# Yes, the xdc stuff still breaks with a '.' in PWD
-PV = "113"
#This is a kernel module, don't set PR directly
MACHINE_KERNEL_PR_append = "a"
-
do_configure() {
find ${S} -name "*.ko" -exec rm {} \; || true
sed -i -e s:include:#include:g ${S}/dm355mm/Rules.make
@@ -39,19 +33,4 @@ do_install () {
install -m 0755 ${S}/dm355mm/module/dm350mmap.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
}
-pkg_postinst () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm () {
- update-modules || true
-}
-
INHIBIT_PACKAGE_STRIP = "1"
-FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/dm350mmap.ko"
-
-
diff --git a/recipes/ti/ti-dm365mm-module.inc b/recipes/ti/ti-dm365mm-module.inc
new file mode 100644
index 0000000000..55f48f137e
--- /dev/null
+++ b/recipes/ti/ti-dm365mm-module.inc
@@ -0,0 +1,28 @@
+DESCRIPTION = "User space DMA module for DM365"
+
+BASE_SRC_URI = "http://install.source.dir.local"
+
+SRC_URI = "${BASE_SRC_URI}/dm365mm_${PV}.tar.gz "
+
+S = "${WORKDIR}/dm365mm_${PV}"
+
+inherit module
+
+do_compile() {
+ unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+
+ find ${S} -name "*.ko" -exec rm {} \; || true
+ cd ${S}/module
+ make \
+ LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
+ MVTOOL_PREFIX="${TARGET_PREFIX}";
+}
+
+do_install () {
+ install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
+ install -m 0755 ${S}/module/dm365mmap.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
+}
+
+INHIBIT_PACKAGE_STRIP = "1"
+INSANE_SKIP_${PN} = True
+
diff --git a/recipes/ti/ti-dm365mm-module_1.0.1.bb b/recipes/ti/ti-dm365mm-module_1.0.1.bb
new file mode 100644
index 0000000000..d929350204
--- /dev/null
+++ b/recipes/ti/ti-dm365mm-module_1.0.1.bb
@@ -0,0 +1,9 @@
+
+require ti-dm365mm-module.inc
+
+PV = "01_00_01"
+
+#This is a kernel module, don't set PR directly
+MACHINE_KERNEL_PR_append = "a"
+
+
diff --git a/recipes/ti/ti-dmai.inc b/recipes/ti/ti-dmai.inc
index 3aafd47cf1..c52e46aaf1 100644
--- a/recipes/ti/ti-dmai.inc
+++ b/recipes/ti/ti-dmai.inc
@@ -1,15 +1,20 @@
DESCRIPTION = "DMAI for TI ARM/DSP processors"
-# NOTE: Use Brijesh' DMAI development branch. The URL *must* be updated once
-# we have stable DMAI 2.x on gforge.
-SRCREV = "342"
-SRC_URI = "svn://gforge.ti.com/svn/dmai/branches;module=BRANCH_BRIJESH_DMAI_DEV_2_xx;proto=https;user=anonymous;pswd='' \
+BRANCH = "BRANCH_BRIJESH_DMAI_DEV_2_xx"
+BRANCH_6467 = "GITPSP_INT_101009"
+
+SRCREV = "364"
+
+SRC_URI = "svn://gforge.ti.com/svn/dmai/branches;module=${BRANCH};proto=https;user=anonymous;pswd='' \
file://loadmodules-ti-dmai-dm355_al.sh \
+ file://loadmodules-ti-dmai-dm365_al.sh \
file://loadmodules-ti-dmai-dm6446_al.sh \
file://loadmodules-ti-dmai-o3530_al.sh \
"
-S = "${WORKDIR}/BRANCH_BRIJESH_DMAI_DEV_2_xx/davinci_multimedia_application_interface"
+S = "${WORKDIR}/${BRANCH}/davinci_multimedia_application_interface"
+
# Yes, the xdc stuff still breaks with a '.' in PWD
PV = "svnr${SRCREV}"
+INHIBIT_PACKAGE_STRIP = "1"
diff --git a/recipes/ti/ti-dmai_svn.bb b/recipes/ti/ti-dmai_svn.bb
index a204120fc2..1fa03e22fa 100644
--- a/recipes/ti/ti-dmai_svn.bb
+++ b/recipes/ti/ti-dmai_svn.bb
@@ -7,19 +7,24 @@ inherit module-base
MACHINE_KERNEL_PR_append = "c"
# compile time dependencies
-DEPENDS_omap3evm += "alsa-lib ti-codec-engine ti-xdctools-native ti-dspbios-native ti-cgt6x-native ti-cs1-omap3530 virtual/kernel ti-dsplink-module"
-DEPENDS_armv7a += "alsa-lib ti-codec-engine ti-xdctools-native ti-dspbios-native ti-cgt6x-native ti-cs1-omap3530 virtual/kernel ti-dsplink-module "
-DEPENDS_dm6446-evm += "alsa-lib ti-codec-engine ti-xdctools-native ti-dspbios-native ti-cgt6x-native ti-codec-combo-dm6446 virtual/kernel ti-dsplink-module "
-DEPENDS_dm355-evm += "alsa-lib ti-codec-engine ti-xdctools-native ti-codec-combo-dm355 virtual/kernel"
-DEPENDS_da830-omapl137-evm += "alsa-lib ti-codec-engine ti-xdctools-native ti-dspbios-native ti-cgt6x-native ti-codec-combo-omapl137 virtual/kernel ti-dsplink-module "
+DEPENDS = "alsa-lib ti-framework-components ti-codec-engine ti-xdctools-native"
+
+DEPENDS_append_omap3 = " ti-dspbios-native ti-cgt6x-native ti-codecs-omap3530 virtual/kernel ti-linuxutils"
+DEPENDS_append_dm6446 = " ti-dspbios-native ti-cgt6x-native ti-codecs-dm6446 virtual/kernel ti-linuxutils"
+DEPENDS_append_dm355 = " ti-codecs-dm355 virtual/kernel"
+DEPENDS_append_dm365 = " ti-codecs-dm365 virtual/kernel"
+DEPENDS_append_omapl137 = " ti-dspbios-native ti-cgt6x-native ti-codecs-omapl137 virtual/kernel ti-linuxutils"
+DEPENDS_append_omapl138 = " ti-dspbios-native ti-cgt6x-native ti-codecs-omapl138 virtual/kernel ti-linuxutils"
# Define DMAI build time variables
-TARGET ?= "all"
-TARGET_armv7a ?= "o3530_al"
-TARGET_dm6446-evm ?= "dm6446_al"
-TARGET_da830-omapl137-evm ?= "ol137_al"
+TARGET_omap3 = "o3530_al"
+TARGET_dm6446 = "dm6446_al"
+TARGET_omapl137 = "ol137_al"
+TARGET_omapl138 = "ol138_al"
+TARGET_dm355 = "dm355_al"
+TARGET_dm365 = "dm365_al"
+TARGET ?= "all"
-DSPBIOS_DIR = "${STAGING_DIR_NATIVE}/ti-dspbios-native"
CGT6x_DIR = "${STAGING_DIR_NATIVE}/ti-cgt6x-native"
XDCTOOLS_DIR = "${STAGING_DIR_NATIVE}/ti-xdctools-native"
USER_XDC_PATH = "${CE_INSTALL_DIR}/examples"
@@ -31,7 +36,7 @@ do_configure () {
# PSP kernel is based on older DSS. we need to replace linux/omapfb.h with
# mach/omapfb.h
- if [ ${MACHINE} == "omap3evm" ] ; then
+ if ![ -e ${STAGING_KERNEL_DIR}/include/linux/omapfb.h ] ; then
sed -i -e s:linux/omapfb:mach/omapfb:g ${S}/dmai/packages/ti/sdo/dmai/linux/Display_fbdev.c
sed -i -e s:linux/omapfb:mach/omapfb:g ${S}/dmai/packages/ti/sdo/dmai/linux/priv/_Display.h
fi
@@ -42,9 +47,9 @@ do_compile () {
unset DMAI_INSTALL_DIR
cd ${S}
- make XDC_INSTALL_DIR="${XDCTOOLS_DIR}" clean
+ make XDC_INSTALL_DIR="${XDCTOOLS_DIR}" PLATFORM="${TARGET}" clean
- # TODO: Figure out how to pass the alsa include location, currently
+ # TODO: Figure out how to pass the alsa require location, currently
# LINUXLIBS_INSTALL_DIR is hard-coded for armv5te
make CE_INSTALL_DIR="${CE_INSTALL_DIR}" \
CODEC_INSTALL_DIR="${CODEC}" \
@@ -52,14 +57,14 @@ do_compile () {
LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
XDC_INSTALL_DIR="${XDCTOOLS_DIR}" \
CODEGEN_INSTALL_DIR="${CGT6x_DIR}" \
- BIOS_INSTALL_DIR="${DSPBIOS_DIR}"\
+ BIOS_INSTALL_DIR="${BIOS_INSTALL_DIR}"\
LINUXLIBS_INSTALL_DIR="${STAGING_DIR_HOST}/usr" \
USER_XDC_PATH="${USER_XDC_PATH}" \
CROSS_COMPILE="${CROSS_DIR}/bin/${TARGET_PREFIX}" \
VERBOSE="true" \
- XDAIS_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
+ XDAIS_INSTALL_DIR="${XDAIS_INSTALL_DIR}" \
LINK_INSTALL_DIR="${LINK_INSTALL_DIR}" \
- CMEM_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
+ CMEM_INSTALL_DIR="${CMEM_INSTALL_DIR}" \
LPM_INSTALL_DIR="${CE_INSTALL_DIR}/cetools" \
PLATFORM="${TARGET}"
}
@@ -97,9 +102,9 @@ FILES_ti-dmai-apps = "${installdir}/dmai-apps/*"
FILES_ti-dmai-tests = "${installdir}/dmai-tests/*"
# run time dependencies
-RDEPENDS_ti-dmai-apps_dm355-evm += "ti-dm355mm-module ti-cmem-module ti-codec-combo-dm355"
-RDEPENDS_ti-dmai-apps_dm6446-evm += "ti-cmem-module ti-dsplink-module ti-codec-combo-dm6446"
-RDEPENDS_ti-dmai-apps_omap3evm += "ti-cmem-module ti-dsplink-module ti-cs1-omap3530 ti-lpm-module ti-sdma-module"
-RDEPENDS_ti-dmai-apps_armv7a += "ti-cmem-module ti-dsplink-module ti-cs1-omap3530 ti-lpm-module ti-sdma-module"
-RDEPENDS_ti-dmai-apps_da830-omapl137-evm += "ti-cmem-module ti-dsplink-module ti-codec-combo-ol137"
+RDEPENDS_ti-dmai-apps_dm355 += "ti-dm355mm-module ti-cmem-module ti-codecs-dm355"
+RDEPENDS_ti-dmai-apps_dm6446 += "ti-cmem-module ti-dsplink-module ti-codecs-dm6446"
+RDEPENDS_ti-dmai-apps_omap3 += "ti-cmem-module ti-dsplink-module ti-codecs-omap3530 ti-lpm-module ti-sdma-module"
+RDEPENDS_ti-dmai-apps_omapl137 += "ti-cmem-module ti-dsplink-module ti-codecs-omapl137"
+RDEPENDS_ti-dmai-apps_omapl138 += "ti-cmem-module ti-dsplink-module ti-codecs-omapl138"
diff --git a/recipes/ti/ti-dspbios-native_5.33.02.bb b/recipes/ti/ti-dspbios-native_5.33.02.bb
index 02c2d5690f..e1cf5fbee6 100644
--- a/recipes/ti/ti-dspbios-native_5.33.02.bb
+++ b/recipes/ti/ti-dspbios-native_5.33.02.bb
@@ -1,7 +1,7 @@
require ti-dspbios.inc
inherit native
-# download bios_setuplinux_5_33_02.bin from https://www-a.ti.com/downloads/sds_support/targetcontent/bios/bios_5_33/bios_5_33_02/index_external.html and copy in Arago (or OE) installation directory
+# download bios_setuplinux_5_33_02.bin from https://www-a.ti.com/downloads/sds_support/targetcontent/bios/bios_5_33/bios_5_33_02/index_external.html and copy in Arago/OE installation directory
SRC_URI = "http://install.source.dir.local/bios_setuplinux_5_33_02.bin"
BINFILE="bios_setuplinux_5_33_02.bin"
diff --git a/recipes/ti/ti-dspbios.inc b/recipes/ti/ti-dspbios.inc
index 9e79216554..08d797a6e3 100644
--- a/recipes/ti/ti-dspbios.inc
+++ b/recipes/ti/ti-dspbios.inc
@@ -1,40 +1,6 @@
DESCRIPTION = "TI DSP/BIOS for Davinci and OMAP processor"
-# This file defines function used for extracting .bin file
+TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
-python do_unpack () {
- bb.build.exec_func('base_do_unpack', d)
- bb.build.exec_func('ti_bin_do_unpack', d)
-}
-
-python ti_bin_do_unpack() {
-
- import os
-
- localdata = bb.data.createCopy(d)
- bb.data.update_data(localdata)
-
- binfile = bb.data.getVar('BINFILE', localdata)
-
- # Change to the working directory
- save_cwd = os.getcwd()
- workdir = bb.data.getVar('WORKDIR', localdata)
- workdir = bb.data.expand(workdir, localdata)
- os.chdir(workdir)
-
- # Make the InstallJammer binary executable so we can run it
- os.chmod(binfile, 0755)
-
- # Run the InstallJammer binary and accept the EULA
- filename = "HOME=%s ./%s" % (workdir, binfile)
- f = os.popen(filename,'w')
- print >>f, "Y\n"
- print >>f, " qY\n"
- print >>f, "%s\n" % workdir
- print >>f, "Y\n"
- f.close()
-
- # Return to the previous directory
- os.chdir(save_cwd)
-}
+require ti-eula-unpack.inc
diff --git a/recipes/ti/ti-dsplink-module_1.61.3.bb b/recipes/ti/ti-dsplink-module_1.61.3.bb
index 2cdf1a8e28..41fd212a0d 100644
--- a/recipes/ti/ti-dsplink-module_1.61.3.bb
+++ b/recipes/ti/ti-dsplink-module_1.61.3.bb
@@ -6,10 +6,11 @@ inherit module
# compile and run time dependencies
DEPENDS += "virtual/kernel perl-native ti-dspbios-native ti-cgt6x-native update-modules ti-xdctools-native"
-# tconf from xdctools dislikes '.' in pwd :/
#This is a kernel module, don't set PR directly
MACHINE_KERNEL_PR_append = "b"
-PV = "1613"
+
+# tconf from xdctools dislikes '.' in pwd :/
+PV = "1_61_03"
SRC_URI = "http://install.source.dir.local/dsplink_1_61_03.tar.gz \
file://loadmodules-ti-dsplink-apps.sh \
@@ -20,16 +21,16 @@ S = "${WORKDIR}/dsplink_1_61_03"
# DSPLINK - Config Variable for different platform
DSPLINKPLATFORM ?= "DAVINCI"
-DSPLINKPLATFORM_dm6446-evm ?= "DAVINCI"
-DSPLINKPLATFORM_da830-omapl137-evm ?= "OMAPL1XX"
+DSPLINKPLATFORM_dm6446 ?= "DAVINCI"
+DSPLINKPLATFORM_omapl137 ?= "OMAPL1XX"
DSPLINKDSPCFG ?= "DM6446GEMSHMEM"
-DSPLINKDSPCFG_dm6446-evm ?= "DM6446GEMSHMEM"
-DSPLINKDSPCFG_da830-omapl137-evm ?= "OMAPL1XXGEMSHMEM"
+DSPLINKDSPCFG_dm6446 ?= "DM6446GEMSHMEM"
+DSPLINKDSPCFG_omapl137 ?= "OMAPL1XXGEMSHMEM"
DSPLINKGPPOS ?= "MVL5G"
-DSPLINKGPPOS_dm6446-evm ?= "MVL5G"
-DSPLINKGPPOS_da830-omapl137-evm ?= "MVL5G"
+DSPLINKGPPOS_dm6446 ?= "MVL5G"
+DSPLINKGPPOS_omapl137 ?= "MVL5G"
DSPLINK = "${S}/dsplink"
export DSPLINK
@@ -65,7 +66,7 @@ do_compile() {
# Build the gpp user space library
cd ${DSPLINK}/gpp/src/api
- ${STAGING_TI_XDCTOOL_INSTALL_DIR}/gmake \
+ make \
CROSS_COMPILE="${TARGET_PREFIX}" \
CC="${KERNEL_CC}" \
AR="${KERNEL_AR}" \
@@ -77,7 +78,7 @@ do_compile() {
# Build the gpp kernel space (debug and release)
cd ${DSPLINK}/gpp/src
- ${STAGING_TI_XDCTOOL_INSTALL_DIR}/gmake \
+ make \
OBJDUMP="${TARGET_PREFIX}objdump" \
CROSS_COMPILE="${TARGET_PREFIX}" \
CC="${KERNEL_CC}" \
@@ -90,7 +91,7 @@ do_compile() {
# Build the gpp samples
cd ${DSPLINK}/gpp/src/samples
- ${STAGING_TI_XDCTOOL_INSTALL_DIR}/gmake \
+ make \
BASE_TOOLCHAIN="${CROSS_DIR}" \
BASE_CGTOOLS="${BASE_TOOLCHAIN}/bin" \
OSINC_PLATFORM="${CROSS_DIR}/lib/gcc/${TARGET_SYS}/$(${TARGET_PREFIX}gcc -dumpversion)/include" \
@@ -107,14 +108,14 @@ do_compile() {
# Build the dsp library (debug and release)
cd ${DSPLINK}/dsp/src
- ${STAGING_TI_XDCTOOL_INSTALL_DIR}/gmake \
+ make \
BASE_CGTOOLS="${STAGING_TI_CGT6x_DIR}" \
BASE_SABIOS="${STAGING_TI_DSPBIOS_DIR}" \
clean all
# Build the dsp samples (debug and release)
cd ${DSPLINK}/dsp/src/samples
- ${STAGING_TI_XDCTOOL_INSTALL_DIR}/gmake \
+ make \
BASE_CGTOOLS="${STAGING_TI_CGT6x_DIR}" \
BASE_SABIOS="${STAGING_TI_DSPBIOS_DIR}" \
clean all
@@ -148,22 +149,9 @@ do_stage () {
cp -pPrf ${S}/* ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/packages
}
-pkg_postrm () {
- update-modules || true
-}
-
-pkg_postinst () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
INHIBIT_PACKAGE_STRIP = "1"
PACKAGES += " ti-dsplink-apps"
-FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/*"
FILES_ti-dsplink-apps = "${installdir}/dsplink/*"
# Disable QA check untils we figure out how to pass LDFLAGS in build
diff --git a/recipes/ti/ti-dvsdk-demos.inc b/recipes/ti/ti-dvsdk-demos.inc
new file mode 100644
index 0000000000..44770c5207
--- /dev/null
+++ b/recipes/ti/ti-dvsdk-demos.inc
@@ -0,0 +1,41 @@
+DESCRIPTION = "DVSDK Demo applications for TI ARM/DSP processors"
+
+DEPENDS += "ti-dmai"
+DEPENDS += "alsa-lib libpng freetype jpeg"
+
+SRC_URI = "${BASE_SRC_URI}/dvsdk_demos_${PV}.tar.gz "
+
+S = "${WORKDIR}/dvsdk_demos_${PV}"
+
+inherit module-base
+require ti-multimedia-common.inc
+
+# Should go into machine config
+TARGET ?= "all"
+TARGET_dm355 ?= "dm355"
+TARGET_dm365-evm ?= "dm365"
+
+VERBOSE = "true"
+
+do_compile () {
+ cd ${S}
+ make -e clean
+ make -e ${PLATFORM}
+}
+do_install () {
+ cd ${S}
+ make -e ${TARGET} EXEC_DIR=${D}/${installdir}/dvsdk-demos install
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+RDEPENDS_ti-dvsdk-demos_dm355 += "ti-dm355mm-module ti-linuxutils alsa-lib libpng freetype jpeg"
+RDEPENDS_ti-dvsdk-demos_dm365-evm += "ti-dm365mm-module ti-linuxutils alsa-lib libpng freetype jpeg"
+
+FILES_${PN} = "${installdir}/dvsdk-demos/*"
+
+
+BASE_SRC_URI ?= "http://install.source.dir.local"
+
+INHIBIT_PACKAGE_STRIP = "1"
+INSANE_SKIP_${PN} = "True"
diff --git a/recipes/ti/ti-dvsdk-demos_3.10.00.00.bb b/recipes/ti/ti-dvsdk-demos_3.10.00.00.bb
new file mode 100644
index 0000000000..d724993130
--- /dev/null
+++ b/recipes/ti/ti-dvsdk-demos_3.10.00.00.bb
@@ -0,0 +1,5 @@
+require ti-dvsdk-demos.inc
+
+PV ?= "3_10_00_00"
+
+
diff --git a/recipes/ti/ti-eula-unpack.inc b/recipes/ti/ti-eula-unpack.inc
new file mode 100644
index 0000000000..1c5a776e0b
--- /dev/null
+++ b/recipes/ti/ti-eula-unpack.inc
@@ -0,0 +1,62 @@
+# This file defines function used for unpacking the .bin file downloaded over
+# the http and display EULA.
+# BINFILE - name of the install jammer .bin file
+# TARFILE - name of the tar file inside the install jammer
+# TI_BIN_UNPK_CMDS - contains list of commands separated with colon to be
+# passed while unpacking the bin file. The keyword
+# workdir expands to WORKDIR and commands are appendded
+# with '\n'. Eg. TI_BIN_UNPK_CMDS="Y:Y: qY:workdir"
+# TI_BIN_UNPK_WDEXT - This variable extends workdir path, if user wants to put
+# the output in some internal directory
+
+python do_unpack () {
+ bb.build.exec_func('base_do_unpack', d)
+ bb.build.exec_func('ti_bin_do_unpack', d)
+}
+
+TI_BIN_UNPK_WDEXT += ""
+python ti_bin_do_unpack() {
+
+ import os
+
+ localdata = bb.data.createCopy(d)
+ bb.data.update_data(localdata)
+
+ binfile = bb.data.getVar('BINFILE', localdata)
+ binfile = bb.data.expand(binfile, localdata)
+
+ # Change to the working directory
+ save_cwd = os.getcwd()
+ workdir = bb.data.getVar('WORKDIR', localdata)
+ workdir = bb.data.expand(workdir, localdata)
+ os.chdir(workdir)
+
+ # Get unpack commands
+ cmd_string = bb.data.getVar('TI_BIN_UNPK_CMDS', localdata)
+ cmd_list = cmd_string.split( ":" )
+
+ # Make the InstallJammer binary executable so we can run it
+ os.chmod(binfile, 0755)
+
+ # Run the InstallJammer binary and accept the EULA
+ filename = "HOME=%s ./%s" % (workdir, binfile)
+ f = os.popen(filename,'w')
+ for cmd in cmd_list:
+ if cmd == "workdir":
+ wdext = bb.data.getVar('TI_BIN_UNPK_WDEXT', localdata)
+ wdext = bb.data.expand(wdext, localdata)
+ cmd = workdir+wdext
+ print >>f, "%s\n" % cmd
+ f.close()
+
+ # Expand the tarball that was created if required
+ tarfile = bb.data.getVar('TARFILE', localdata)
+ if bool(tarfile) == True:
+ tarfile = bb.data.expand(tarfile, localdata)
+ tcmd = 'tar xz --no-same-owner -f %s -C %s' % (tarfile, workdir)
+ os.system(tcmd)
+
+ # Return to the previous directory
+ os.chdir(save_cwd)
+}
+
diff --git a/recipes/ti/ti-framework-components.inc b/recipes/ti/ti-framework-components.inc
new file mode 100644
index 0000000000..cd8a56193e
--- /dev/null
+++ b/recipes/ti/ti-framework-components.inc
@@ -0,0 +1,23 @@
+DESCRIPTION = "Framework Components for TI ARM/DSP processors"
+
+SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/fc/${PV}/exports/framework_components_${PV}.tar.gz"
+
+require ti-paths.inc
+
+S = "${WORKDIR}/framework_components_${PV}"
+
+# compile time dependencies
+DEPENDS += "ti-xdctools-native ti-xdais-native ti-linuxutils"
+
+do_compile () {
+ echo "! Do not rebuild for now !"
+}
+
+# stage tree - other packages may need this
+do_stage() {
+ install -d ${FC_INSTALL_DIR}
+ cp -pPrf ${S}/* ${FC_INSTALL_DIR}
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+INHIBIT_PACKAGE_STRIP = "1"
diff --git a/recipes/ti/ti-framework-components_2.25.00.04.bb b/recipes/ti/ti-framework-components_2.25.00.04.bb
new file mode 100644
index 0000000000..5ca4704364
--- /dev/null
+++ b/recipes/ti/ti-framework-components_2.25.00.04.bb
@@ -0,0 +1,5 @@
+require ti-framework-components.inc
+
+PV = "2_25_00_04"
+
+
diff --git a/recipes/ti/ti-linuxutils.inc b/recipes/ti/ti-linuxutils.inc
new file mode 100644
index 0000000000..b1f876d0d3
--- /dev/null
+++ b/recipes/ti/ti-linuxutils.inc
@@ -0,0 +1,82 @@
+DESCRIPTION = "MFP Linux utils for TI ARM/DSP processors"
+
+BASE_SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/linuxutils/${PV}/exports"
+SRC_URI = "${BASE_SRC_URI}/linuxutils_${PV}.tar.gz "
+
+S = "${WORKDIR}/linuxutils_${PV}"
+
+require ti-multimedia-common.inc
+
+#This is a kernel module, don't set PR directly
+MACHINE_KERNEL_PR_append = "a"
+
+inherit module
+
+do_compile() {
+ unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+
+ case ${SOC_FAMILY} in
+ dm365)
+ modules="cmem edma";;
+ omap3)
+ modules="cmem sdma";;
+ *)
+ modules="cmem"
+ esac
+
+ for module in $modules ; do
+ cd ${S}/packages/ti/sdo/linuxutils/$module
+ make \
+ LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
+ MVTOOL_PREFIX="${TARGET_PREFIX}" \
+ UCTOOL_PREFIX="${TARGET_PREFIX}" \
+ clean debug release
+ done
+}
+
+do_install () {
+ install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
+ # Install CMEM
+ for module in $(find ${S}/packages/ti/sdo/linuxutils/ -name "*.ko") ; do
+ install -m 0755 $module ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
+ done
+ cd ${S}/packages/ti/sdo/linuxutils/cmem/apps
+ make \
+ LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
+ MVTOOL_PREFIX="${TARGET_PREFIX}" \
+ UCTOOL_PREFIX="${TARGET_PREFIX}" \
+ EXEC_DIR="${D}${installdir}/ti-linuxutils-app/cmem-app" \
+ install
+ # Install EDMA
+ if [ ${SOC_FAMILY} == "dm365" ] ; then
+ cd ${S}/packages/ti/sdo/linuxutils/edma/apps
+ make \
+ LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
+ MVTOOL_PREFIX="${TARGET_PREFIX}" \
+ UCTOOL_PREFIX="${TARGET_PREFIX}" \
+ EXEC_DIR="${D}${installdir}/ti-linuxutils-app/edma-app" \
+ install
+ fi
+}
+
+# stage tree - other packages may need this
+do_stage() {
+ install -d ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${PN}
+ cp -pPrf ${S}/* ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/
+}
+
+PACKAGES =+ " ti-cmem-module \
+ ti-sdma-module \
+ ti-edma-module \
+ ti-irq-module \
+ ti-linuxutils-app"
+
+FILES_ti-cmem-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/cmem*.ko"
+FILES_ti-sdma-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/sdma*.ko"
+FILES_ti-edma-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/edma*.ko"
+FILES_ti-irq-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/irq*.ko"
+
+FILES_ti-linuxutils-app = "${installdir}/ti-linuxutils-app/*/*"
+
+INSANE_SKIP_ti-linuxutils-app = "True"
+INHIBIT_PACKAGE_STRIP = "1"
diff --git a/recipes/ti/ti-linuxutils_2.25.01.06.bb b/recipes/ti/ti-linuxutils_2.25.01.06.bb
new file mode 100644
index 0000000000..a75fdba30d
--- /dev/null
+++ b/recipes/ti/ti-linuxutils_2.25.01.06.bb
@@ -0,0 +1,3 @@
+require ti-linuxutils.inc
+
+PV = "2_25_01_06"
diff --git a/recipes/ti/ti-lpm-module_2.23.1.bb b/recipes/ti/ti-lpm-module_2.23.1.bb
deleted file mode 100644
index b478f64a98..0000000000
--- a/recipes/ti/ti-lpm-module_2.23.1.bb
+++ /dev/null
@@ -1,65 +0,0 @@
-DESCRIPTION = "LPM module for TI OMAP3 processors"
-
-require ti-paths.inc
-inherit module
-# compile and run time dependencies
-DEPENDS = " virtual/kernel perl-native ti-dsplink-module"
-
-#This is a kernel module, don't set PR directly
-MACHINE_KERNEL_PR_append = "a"
-
-PV = "2231"
-
-# Download codec_engine_2_23_01.tar.gz from https://www-a.ti.com/downloads/sds_support/targetcontent/CE/ce_2_23/index.html and copy in Arago (or OE) download directory.
-
-SRC_URI = "http://install.source.dir.local/codec_engine_2_23_01.tar.gz "
-
-# Set the source directory
-S = "${WORKDIR}/codec_engine_2_23_01"
-
-export DSPLINK="${S}/cetools/packages/dsplink"
-
-LPMDSPPOWERSOC ?= "omap3530"
-LPMDSPPOWERSOC_omap3evm ?= "omap3530"
-
-do_compile () {
- # TODO :: KERNEL_CC, etc need replacing with user CC
- # TODO :: Need to understand why OBJDUMP is required for kernel module
- # Unset these since LDFLAGS gets picked up and used incorrectly.... need
- # investigation
-
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
-
- cd ${S}/cetools/packages/ti/bios/power/modules/${LPMDSPPOWERSOC}/lpm
- make \
- DSPLINK_REPO="${DSPLINK}/.." \
- LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
- MVTOOL_PREFIX="${TARGET_PREFIX}" \
- clean default
-}
-
-do_install () {
-
- # LPM/CMEM/SDMA drivers - kernel modules
- install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
- install -m 0755 ${S}/cetools/packages/ti/bios/power/modules/${LPMDSPPOWERSOC}/lpm/*.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
-}
-
-
-pkg_postinst () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm () {
- update-modules || true
-}
-
-INHIBIT_PACKAGE_STRIP = "1"
-
-FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/*lpm*ko"
-RDEPENDS += " ti-dsplink-module"
-
diff --git a/recipes/ti/ti-lpm-module_2.24.01.bb b/recipes/ti/ti-lpm-module_2.24.01.bb
index 8c41dbf8c2..32bc02b1e5 100644
--- a/recipes/ti/ti-lpm-module_2.24.01.bb
+++ b/recipes/ti/ti-lpm-module_2.24.01.bb
@@ -1,29 +1,24 @@
DESCRIPTION = "LPM module for TI OMAP3 processors"
-require ti-paths.inc
-
-inherit module
-# compile and run time dependencies
-DEPENDS = " virtual/kernel perl-native ti-dsplink-module"
-
-#This is a kernel module, don't set PR directly
-MACHINE_KERNEL_PR_append = "a"
+DEPENDS = "ti-linuxutils"
-PV = "2241"
+# tconf breaks with '.' in PWD
+PV = "2_24_01"
SRC_URI = "http://install.source.dir.local/local_power_manager_1_24.tar.gz"
# Set the source directory
S = "${WORKDIR}/local_power_manager_1_24"
-do_compile () {
- # TODO :: KERNEL_CC, etc need replacing with user CC
- # TODO :: Need to understand why OBJDUMP is required for kernel module
- # Unset these since LDFLAGS gets picked up and used incorrectly.... need
- # investigation
+require ti-paths.inc
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+#This is a kernel module, don't set PR directly
+MACHINE_KERNEL_PR_append = "a"
+inherit module
+
+do_compile () {
+ unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
cd ${S}/packages/ti/bios/power/modules/${LPMDSPPOWERSOC}/lpm
make \
DSPLINK_REPO="${DSPLINK}/.." \
@@ -33,27 +28,13 @@ do_compile () {
}
do_install () {
-
# LPM/CMEM/SDMA drivers - kernel modules
install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
- install -m 0755 ${S}/packages/ti/bios/power/modules/${LPMDSPPOWERSOC}/lpm/*.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
+ install -m 0755 ${S}/packages/ti/bios/power/modules/${LPMDSPPOWERSOC}/lpm/*.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
}
-
-pkg_postinst () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm () {
- update-modules || true
-}
-
-INHIBIT_PACKAGE_STRIP = "1"
+RDEPENDS_${PN} += " ti-dsplink-module"
FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/*lpm*ko"
-RDEPENDS += " ti-dsplink-module"
+INHIBIT_PACKAGE_STRIP = "1"
diff --git a/recipes/ti/ti-multimedia-common.inc b/recipes/ti/ti-multimedia-common.inc
new file mode 100644
index 0000000000..170e77bfec
--- /dev/null
+++ b/recipes/ti/ti-multimedia-common.inc
@@ -0,0 +1,55 @@
+installdir = "${datadir}/ti"
+
+# needed for configuro:
+export CGTOOLS_V5T="${CROSS_DIR}"
+export CC_V5T="bin/${TARGET_PREFIX}gcc"
+export CROSS_COMPILE = "${CROSS_DIR}/bin/${TARGET_PREFIX}"
+export MVTOOL_PREFIX="${TARGET_PREFIX}"
+export MVTOOL_DIR="${CROSS_DIR}"
+export CSTOOL_PREFIX="${TARGET_PREFIX}"
+export CSTOOL_DIR="${CROSS_DIR}"
+export LINUXKERNEL_INSTALL_DIR=${STAGING_KERNEL_DIR}
+
+export CODEC_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codecs"
+
+export LINUXLIBS_INSTALL_DIR = "${STAGING_DIR_HOST}/usr"
+export CODEGEN_INSTALL_DIR = "${STAGING_DIR_NATIVE}/ti-cgt6x-native"
+export XDC_INSTALL_DIR = "${STAGING_DIR_NATIVE}/ti-xdctools-native"
+export XDAIS_INSTALL_DIR = "${STAGING_DIR_NATIVE}/ti-xdais"
+export BIOS_INSTALL_DIR = "${STAGING_DIR_NATIVE}/ti-dspbios-native"
+
+export CE_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-engine"
+export FC_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-framework-components"
+export LINUXKERNEL_INSTALL_DIR = "${STAGING_KERNEL_DIR}"
+export LINUXUTILS_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-linuxutils"
+export CMEM_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-linuxutils"
+#export LINK_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-engine/cetools"
+export LINK_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-dsplink-module"
+export LPM_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-engine/cetools"
+export DMAI_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-dmai"
+
+export USER_XDC_PATH = "${CE_INSTALL_DIR}/examples"
+export XDC_TARGET = gnu.targets.arm.GCArmv5T
+
+XDC_PLATFORM_dm355 = ti.platforms.evmDM355
+XDC_PLATFORM_dm365 = ti.platforms.evmDM365
+XDC_PLATFORM_dm6446 = ti.platforms.evmDM6446
+XDC_PLATFORM_omap3 = ti.platforms.evm3530
+XDC_PLATFORM_omapl137 = ti.platforms.omapl137
+XDC_PLATFORM_omapl138 = ti.platforms.omapl138
+export XDC_PLATFORM
+
+export PLATFORM_XDC = ${XDC_PLATFORM}
+
+LPMDSPPOWERSOC_omap3 = "omap3530"
+
+export LPMDSPPOWERSOC
+
+PLATFORM_dm355 = "dm355"
+PLATFORM_dm365 = "dm365"
+PLATFORM_dm6446 = "dm6446"
+PLATFORM_omap3 = "omap3530"
+PLATFORM_omapl137 = "ol137"
+PLATFORM_omapl138 = "ol138"
+export PLATFORM
+
diff --git a/recipes/ti/ti-paths.inc b/recipes/ti/ti-paths.inc
index 9ac7ac69e1..3a9eb3dbbc 100644
--- a/recipes/ti/ti-paths.inc
+++ b/recipes/ti/ti-paths.inc
@@ -7,14 +7,8 @@
# export some more variable to point to external TI tools
# information is duplicated between the js and make based tools
-# needed for configuro:
-export CGTOOLS_V5T="${CROSS_DIR}"
-export CC_V5T="bin/${TARGET_PREFIX}gcc"
-export MVTOOL_PREFIX="${TARGET_PREFIX}"
-export MVTOOL_DIR="${CROSS_DIR}"
-export CSTOOL_PREFIX="${TARGET_PREFIX}"
-export CSTOOL_DIR="${CROSS_DIR}"
-export LINUXKERNEL_INSTALL_DIR=${STAGING_KERNEL_DIR}
+
+require ti-multimedia-common.inc
export PLATFORM
@@ -22,25 +16,14 @@ export CROSS_COMPILE = "${CROSS_DIR}/bin/${TARGET_PREFIX}"
# This tells codec engine which targets to build
DEVICES ?= "DM6446"
-DEVICES_omap5912osk = "fixme-ti-paths.inc"
-
-# Set a default for armv7a now, change this when omap4 and friends become available
-DEVICES_armv7a = "OMAP3530"
-
-DEVICES_davinci-sffsdr = "DM6446"
-DEVICES_davinci-dvevm = "DM6446"
+DEVICES_omap3 = "OMAP3530"
+DEVICES_dm6446 = "DM6446"
DSPLINKPLATFORM ?= "DAVINCI"
-DSPLINKPLATFORM_omap5912osk = "OMAP"
-
-DSPLINKPLATFORM_davinci-sffsdr = "DAVINCI"
-DSPLINKPLATFORM_davinci-dvevm = "DAVINCI"
+DSPLINKPLATFORM_dm6446 = "DAVINCI"
PLATFORM ?= "dm6446"
-PLATFORM_omap5912osk = "OMAP"
-
-PLATFORM_davinci-sffsdr = "dm6446"
-PLATFORM_davinci-dvevm = "dm6446"
+PLATFORM_dm6446 = "dm6446"
DSPLINKDSP ?= "C64XX"
@@ -48,7 +31,7 @@ DSPLINKSOC ?= "DM6446"
DSPCFG ?= "DM6446GEMSHMEM"
-GPPOS ?= "MVL5G"
+GPPOS ?= "LINUX_GCC"
export DEVICES
export DSPLINKPLATFORM
@@ -61,20 +44,6 @@ export LPMDSPPOWERSOC
DSPPOWERSOC ?= "dm6446"
-export BIOS_INSTALL_DIR = "${STAGING_DIR_NATIVE}/ti-dspbios-native"
-export CE_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-engine"
-export CMEM_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-engine/cetools"
-export CODEGEN_INSTALL_DIR = "${STAGING_DIR_NATIVE}/ti-cgt6x-native"
-export CROSS_COMPILE = "${CROSS_DIR}/bin/${TARGET_PREFIX}"
-export DMAI_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-dmai"
-export FC_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-engine/cetools"
-export LINK_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-dsplink-module"
-export LINUXKERNEL_INSTALL_DIR = "${STAGING_KERNEL_DIR}"
-export LPM_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-engine/cetools"
-export XDC_INSTALL_DIR = "${STAGING_DIR_NATIVE}/ti-xdctools-native"
-export XDAIS_INSTALL_DIR = "${CE_INSTALL_DIR}/cetools"
-
-export CODEC_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-codec-combo"
export CODEC ?= "${CODEC_INSTALL_DIR}"
export DSPLINK = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/ti-dsplink-module/packages/dsplink/"
diff --git a/recipes/ti/ti-sdma-module_2.23.1.bb b/recipes/ti/ti-sdma-module_2.23.1.bb
deleted file mode 100644
index b64cd9b2bc..0000000000
--- a/recipes/ti/ti-sdma-module_2.23.1.bb
+++ /dev/null
@@ -1,56 +0,0 @@
-DESCRIPTION = "SDMA module for TI OMAP3 processors"
-
-inherit module
-# compile and run time dependencies
-DEPENDS = "virtual/kernel perl-native"
-
-#This is a kernel module, don't set PR directly
-MACHINE_KERNEL_PR_append = "a"
-
-PV = "2231"
-
-# Download codec_engine_2_23_01.tar.gz from https://www-a.ti.com/downloads/sds_support/targetcontent/CE/ce_2_23/index.html and copy in Arago (or OE) download directory.
-
-SRC_URI = "http://install.source.dir.local/codec_engine_2_23_01.tar.gz "
-
-# Set the source directory
-S = "${WORKDIR}/codec_engine_2_23_01"
-
-do_compile() {
- # SDMA - Build the sdma module
- # TODO :: KERNEL_CC, etc need replacing with user CC
- # TODO :: Need to understand why OBJDUMP is required for kernel module
- # Unset these since LDFLAGS gets picked up and used incorrectly.... need
- # investigation
-
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
-
- cd ${S}/cetools/packages/ti/sdo/linuxutils/sdma
- make \
- LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
- MVTOOL_PREFIX="${TARGET_PREFIX}" \
- UCTOOL_PREFIX="${TARGET_PREFIX}" \
- clean debug release
-}
-
-do_install () {
- install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
- install -m 0755 ${S}/cetools/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
-}
-
-pkg_postinst () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm () {
- update-modules || true
-}
-
-INHIBIT_PACKAGE_STRIP = "1"
-
-FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/sdmak.ko"
-
diff --git a/recipes/ti/ti-sdma-module_2.24.01.bb b/recipes/ti/ti-sdma-module_2.24.01.bb
deleted file mode 100644
index b5e3bc313e..0000000000
--- a/recipes/ti/ti-sdma-module_2.24.01.bb
+++ /dev/null
@@ -1,54 +0,0 @@
-DESCRIPTION = "SDMA module for TI OMAP3 processors"
-
-inherit module
-# compile and run time dependencies
-DEPENDS = "virtual/kernel perl-native"
-
-#This is a kernel module, don't set PR directly
-MACHINE_KERNEL_PR_append = "a"
-
-PV = "2241"
-
-SRC_URI = "http://install.source.dir.local/codec_engine_2_24_01.tar.gz "
-
-# Set the source directory
-S = "${WORKDIR}/codec_engine_2_24_01"
-
-do_compile() {
- # SDMA - Build the sdma module
- # TODO :: KERNEL_CC, etc need replacing with user CC
- # TODO :: Need to understand why OBJDUMP is required for kernel module
- # Unset these since LDFLAGS gets picked up and used incorrectly.... need
- # investigation
-
- unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
-
- cd ${S}/cetools/packages/ti/sdo/linuxutils/sdma
- make \
- LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \
- MVTOOL_PREFIX="${TARGET_PREFIX}" \
- UCTOOL_PREFIX="${TARGET_PREFIX}" \
- clean debug release
-}
-
-do_install () {
- install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
- install -m 0755 ${S}/cetools/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.ko ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp
-}
-
-pkg_postinst () {
- if [ -n "$D" ]; then
- exit 1
- fi
- depmod -a
- update-modules || true
-}
-
-pkg_postrm () {
- update-modules || true
-}
-
-INHIBIT_PACKAGE_STRIP = "1"
-
-FILES_${PN} = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/sdmak.ko"
-
diff --git a/recipes/ti/ti-xdais-native_6.23.bb b/recipes/ti/ti-xdais-native_6.23.bb
new file mode 100644
index 0000000000..9cf839c139
--- /dev/null
+++ b/recipes/ti/ti-xdais-native_6.23.bb
@@ -0,0 +1,13 @@
+require ti-xdais.inc
+
+PV = "6_23"
+
+inherit native
+
+do_stage() {
+ install -d ${STAGING_DIR_NATIVE}/ti-xdais
+ cp -pPrf ${S}/* ${STAGING_DIR_NATIVE}/ti-xdais
+}
+
+AUTOTOOLS_NATIVE_STAGE_INSTALL="1"
+
diff --git a/recipes/ti/ti-xdais.inc b/recipes/ti/ti-xdais.inc
new file mode 100644
index 0000000000..4816ee288a
--- /dev/null
+++ b/recipes/ti/ti-xdais.inc
@@ -0,0 +1,10 @@
+DESCRIPTION = "TI DSP Algorithm Interface Standard specification"
+
+PVEXTENSION ?= ""
+BASE_SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/xdais/${PV}/exports"
+
+SRC_URI = "${BASE_SRC_URI}/xdais_${PV}${PVEXTENSION}.tar.gz"
+
+S = "${WORKDIR}/xdais_${PV}${PVEXTENSION}"
+
+
diff --git a/recipes/ti/ti-xdctools-native_3.10.03.bb b/recipes/ti/ti-xdctools-native_3.10.03.bb
deleted file mode 100644
index ca1b7f5f0f..0000000000
--- a/recipes/ti/ti-xdctools-native_3.10.03.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-inherit native
-require ti-xdctools.inc
-
-# download xdctools_setuplinux_3_10_03.bin from https://www-a.ti.com/downloads/sds_support/targetcontent/rtsc/xdctools_3_10/xdctools_3_10_03/index_external.html and copy in Arago (or OE) download directory
-
-SRC_URI = "http://install.source.dir.local/xdctools_setuplinux_3_10_03.bin"
-BINFILE="xdctools_setuplinux_3_10_03.bin"
-
-S = "${WORKDIR}/xdctools_3_10_03"
-
-# Yes, the xdc stuff still breaks with a '.' in PWD
-PV = "310"
-PR = "r16"
-
-do_stage() {
- install -d ${STAGING_DIR_NATIVE}/${PN}
- cp -pPrf ${S}/* ${STAGING_DIR_NATIVE}/${PN}
-}
-
-AUTOTOOLS_NATIVE_STAGE_INSTALL="1"
-
diff --git a/recipes/ti/ti-xdctools-native_3.15.01.59.bb b/recipes/ti/ti-xdctools-native_3.15.01.59.bb
index d06cb8f615..ee34a5eec2 100644
--- a/recipes/ti/ti-xdctools-native_3.15.01.59.bb
+++ b/recipes/ti/ti-xdctools-native_3.15.01.59.bb
@@ -1,22 +1,16 @@
inherit native
-require ti-xdctools.inc
-
-SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/rtsc/xdctools_3_15//exports/xdctools_setuplinux_3_15_01_59.bin"
-BINFILE = "xdctools_setuplinux_3_15_01_59.bin"
-S = "${WORKDIR}/xdctools_3_15_01_59"
+BASE_PV = "3_15"
+PV = "3_15_01_59"
-# Yes, the xdc stuff still breaks with a '.' in PWD
-PV = "315"
-PR = "r4"
+require ti-xdctools.inc
do_stage() {
- install -d -m 0755 ${STAGING_DIR_NATIVE}/${PN}
+ install -d ${STAGING_DIR_NATIVE}/${PN}
cp -pPrf ${S}/* ${STAGING_DIR_NATIVE}/${PN}
- chmod 755 -R ${STAGING_DIR_NATIVE}/${PN}
- # rm_work fails if you don't chmod S:
- chmod 755 -R ${S}
+ chmod 755 -R ${STAGING_DIR_NATIVE}/${PN}
+ chmod 755 -R ${S}
}
-AUTOTOOLS_NATIVE_STAGE_INSTALL = "1"
+AUTOTOOLS_NATIVE_STAGE_INSTALL="1"
diff --git a/recipes/ti/ti-xdctools.inc b/recipes/ti/ti-xdctools.inc
index 9dbd35f24c..5d29436042 100644
--- a/recipes/ti/ti-xdctools.inc
+++ b/recipes/ti/ti-xdctools.inc
@@ -1,40 +1,12 @@
DESCRIPTION = "TI XDC tool"
-# This file defines function used for extracting .bin file
+SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/rtsc/xdctools_${BASE_PV}/exports/xdctools_setuplinux_${PV}.bin"
+BINFILE="xdctools_setuplinux_${PV}.bin"
-python do_unpack () {
- bb.build.exec_func('base_do_unpack', d)
- bb.build.exec_func('ti_bin_do_unpack', d)
-}
+S = "${WORKDIR}/xdctools_${PV}"
-python ti_bin_do_unpack() {
+TI_BIN_UNPK_CMDS="Y: qY:workdir:Y"
- import os
+require ti-eula-unpack.inc
- localdata = bb.data.createCopy(d)
- bb.data.update_data(localdata)
-
- binfile = bb.data.getVar('BINFILE', localdata)
-
- # Change to the working directory
- save_cwd = os.getcwd()
- workdir = bb.data.getVar('WORKDIR', localdata)
- workdir = bb.data.expand(workdir, localdata)
- os.chdir(workdir)
-
- # Make the InstallJammer binary executable so we can run it
- os.chmod(binfile, 0755)
-
- # Run the InstallJammer binary and accept the EULA
- filename = "HOME=%s ./%s" % (workdir, binfile)
- f = os.popen(filename,'w')
- print >>f, "Y\n"
- print >>f, " qY\n"
- print >>f, "%s\n" % workdir
- print >>f, "Y\n"
- f.close()
-
- # Return to the previous directory
- os.chdir(save_cwd)
-}