diff options
Diffstat (limited to 'meta-ti-extras')
98 files changed, 3453 insertions, 0 deletions
diff --git a/meta-ti-extras/COPYING.MIT b/meta-ti-extras/COPYING.MIT new file mode 100644 index 00000000..fb950dc6 --- /dev/null +++ b/meta-ti-extras/COPYING.MIT @@ -0,0 +1,17 @@ +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/meta-ti-extras/README b/meta-ti-extras/README new file mode 100644 index 00000000..1b38921a --- /dev/null +++ b/meta-ti-extras/README @@ -0,0 +1,31 @@ +OpenEmbedded/Yocto layer that extends and supplements Texas Instruments BSP layer. + +It is hosted on http://git.yoctoproject.org/cgit/cgit.cgi/meta-ti/ with the +source repository at git://git.yoctoproject.org/meta-ti + + +This layer depends on: + +URI: git://git.openembedded.org/openembedded-core +layers: meta +branch: master + +URI: git://git.yoctoproject.org/meta-arm +layers: meta-arm +branch: master + +URI: git://git.yoctoproject.org/meta-ti +branch: master +revision: HEAD +layers: meta-ti-bsp + + +Send pull requests, patches, comments or questions to: +meta-ti@lists.yoctoproject.org + +Please note - meta-ti mailing list requires subscription for posting: +https://lists.yoctoproject.org/g/meta-ti + +Maintainers: +Ryan Eatmon <reatmon@ti.com> +Denys Dmytriyenko <denys@konsulko.com> diff --git a/meta-ti-extras/conf/layer.conf b/meta-ti-extras/conf/layer.conf new file mode 100644 index 00000000..f2d6b250 --- /dev/null +++ b/meta-ti-extras/conf/layer.conf @@ -0,0 +1,18 @@ +# We have a conf and classes directory, append to BBPATH +BBPATH .= ":${LAYERDIR}" +METATIBASE := '${@os.path.normpath("${LAYERDIR}/")}' + +# We have a recipes directory, add to BBFILES +BBFILES += "${LAYERDIR}/recipes*/*/*.bb ${LAYERDIR}/recipes*/*/*.bbappend" + +BBFILE_COLLECTIONS += "meta-ti-extras" +BBFILE_PATTERN_meta-ti-extras := "^${LAYERDIR}/" +BBFILE_PRIORITY_meta-ti-extras = "6" + +LAYERSERIES_COMPAT_meta-ti-extras = "nanbield scarthgap styhead" + +LICENSE_PATH += "${LAYERDIR}/licenses" + +LAYERDEPENDS_meta-ti-extras = " \ + meta-ti-bsp \ +" diff --git a/meta-ti-extras/licenses/Hewlett-Packard b/meta-ti-extras/licenses/Hewlett-Packard new file mode 100644 index 00000000..569d009c --- /dev/null +++ b/meta-ti-extras/licenses/Hewlett-Packard @@ -0,0 +1,13 @@ +/* + * Copyright (c) 1994 + * Hewlett-Packard Company + * + * Permission to use, copy, modify, distribute and sell this software + * and its documentation for any purpose is hereby granted without fee, + * provided that the above copyright notice appear in all copies and + * that both that copyright notice and this permission notice appear + * in supporting documentation. Hewlett-Packard Company makes no + * representations about the suitability of this software for any + * purpose. It is provided "as is" without express or implied warranty. + * + */ diff --git a/meta-ti-extras/licenses/Patrick-Powell b/meta-ti-extras/licenses/Patrick-Powell new file mode 100644 index 00000000..9c6eac42 --- /dev/null +++ b/meta-ti-extras/licenses/Patrick-Powell @@ -0,0 +1,4 @@ +Copyright Patrick Powell 1995 +This code is based on code written by Patrick Powell (papowell@astart.com) +It may be used for any purpose as long as this notice remains intact +on all source code distributions diff --git a/meta-ti-extras/licenses/Thai-Open-Source-Software-Center b/meta-ti-extras/licenses/Thai-Open-Source-Software-Center new file mode 100644 index 00000000..3a3972dd --- /dev/null +++ b/meta-ti-extras/licenses/Thai-Open-Source-Software-Center @@ -0,0 +1,31 @@ +Copyright (c) 2002, 2003, 2008 Thai Open Source Software Center Ltd +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + Neither the name of the Thai Open Source Software Center Ltd nor + the names of its contributors may be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/meta-ti-extras/recipes-bsp/bt-fw/bt-fw_git.bb b/meta-ti-extras/recipes-bsp/bt-fw/bt-fw_git.bb new file mode 100644 index 00000000..9a5a6ffa --- /dev/null +++ b/meta-ti-extras/recipes-bsp/bt-fw/bt-fw_git.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "Firmware files for Bluetooth" +LICENSE = "TI-TSPA" +LIC_FILES_CHKSUM = "file://LICENSE;md5=f39eac9f4573be5b012e8313831e72a9" + +PV = "8.7.1+git" + +CLEANBROKEN = "1" + +SRCREV = "0ee619b598d023fffc77679f099bc2a4815510e4" +BRANCH = "master" +SRC_URI = "git://git.ti.com/git/ti-bt/service-packs.git;protocol=https;branch=${BRANCH}" + +S = "${WORKDIR}/git" + +do_compile() { + : +} + +do_install() { + install -d ${D}${nonarch_base_libdir}/firmware/ti-connectivity + oe_runmake "DEST_DIR=${D}" "BASE_LIB_DIR=${nonarch_base_libdir}" install +} + +FILES:${PN} += "${nonarch_base_libdir}/firmware/ti-connectivity/*" diff --git a/meta-ti-extras/recipes-bsp/dspdce-fw/dspdce-fw_git.bb b/meta-ti-extras/recipes-bsp/dspdce-fw/dspdce-fw_git.bb new file mode 100644 index 00000000..491ee0f3 --- /dev/null +++ b/meta-ti-extras/recipes-bsp/dspdce-fw/dspdce-fw_git.bb @@ -0,0 +1,65 @@ +SUMMARY = "Firmware for DSP for an example application called copycodectest" +LICENSE = "TI-TSPA" +LIC_FILES_CHKSUM = "file://src/ti/framework/dce/dce.c;startline=1;endline=31;md5=2c6e9aba6ed75f22b1a2b7544b1c809d" + +COMPATIBLE_MACHINE = "dra7xx" + +inherit features_check + +REQUIRED_MACHINE_FEATURES = "dsp" + +SRC_URI = "git://git.ti.com/git/glsdk/dspdce.git;protocol=https;branch=master" + +SRCREV = "de6e599f067b25c46cc0c8f74a22cc3b8aafbae8" + +PV = "1.00.00.07" + +S = "${WORKDIR}/git" + +require recipes-ti/includes/ti-paths.inc + +PR = "r4" +inherit update-alternatives + +DEPENDS = "ti-xdctools-native ti-sysbios ti-codec-engine ti-framework-components ti-xdais ti-ipc-rtos ti-osal ti-cgt6x-native" + +export HWVERSION = "ES10" +export BIOSTOOLSROOT = "${STAGING_DIR_TARGET}/usr/share/ti" + +export XDCVERSION = "ti-xdctools-tree" +export BIOSVERSION = "ti-sysbios-tree" +export IPCVERSION = "ti-ipc-tree" +export CEVERSION = "ti-codec-engine-tree" +export FCVERSION = "ti-framework-components-tree" +export XDAISVERSION = "ti-xdais-tree" +export OSALVERSION = "ti-osal-tree" + +export IPCSRC = "${STAGING_DIR_TARGET}/usr/share/ti/ti-ipc-tree" +export C66XCGTOOLSPATH = "${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" + +do_configure() { + cd ${S} + make unconfig + make vayu_config +} + +do_compile() { + cd ${S} + make dspbin +} + +TARGET = "dra7-dsp1-fw.xe66" + +do_install() { + install -d ${D}${nonarch_base_libdir}/firmware + install -m 0644 ${S}/dra7xx-c66x-dsp.xe66 ${D}${nonarch_base_libdir}/firmware/${TARGET}.${BPN} +} + +ALTERNATIVE:${PN} = "dra7-dsp1-fw.xe66" +ALTERNATIVE_LINK_NAME[dra7-dsp1-fw.xe66] = "${nonarch_base_libdir}/firmware/${TARGET}" +ALTERNATIVE_TARGET[dra7-dsp1-fw.xe66] = "${nonarch_base_libdir}/firmware/${TARGET}.${BPN}" +ALTERNATIVE_PRIORITY = "10" + +INSANE_SKIP:${PN} = "arch" + +FILES:${PN} += "${nonarch_base_libdir}/firmware/*" diff --git a/meta-ti-extras/recipes-bsp/dsptop/debugss-module-drv_git.bb b/meta-ti-extras/recipes-bsp/dsptop/debugss-module-drv_git.bb new file mode 100644 index 00000000..9d85829b --- /dev/null +++ b/meta-ti-extras/recipes-bsp/dsptop/debugss-module-drv_git.bb @@ -0,0 +1,22 @@ +DESCRIPTION = "Debug Sub-System (DebugSS) driver for Keystone and DRA7xx devices" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING.txt;md5=9d4316fe434ba450dca4da25348ca5a3" + +# This package builds a kernel module, use kernel PR as base and append a local +MACHINE_KERNEL_PR:append = "d" +PR = "${MACHINE_KERNEL_PR}" +PV:append = "+git" + +S = "${WORKDIR}/git/debugss_module/debugss-mod" + +inherit module + +PLATFORM = "" +PLATFORM:dra7xx = "DRA7xx_PLATFORM" + +EXTRA_OEMAKE = "'PLATFORM=${PLATFORM}' KVERSION=${KERNEL_VERSION} KERNEL_SRC=${STAGING_KERNEL_DIR}" + +COMPATIBLE_MACHINE = "dra7xx" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +include dsptop.inc diff --git a/meta-ti-extras/recipes-bsp/dsptop/dsptop.inc b/meta-ti-extras/recipes-bsp/dsptop/dsptop.inc new file mode 100644 index 00000000..ec159c75 --- /dev/null +++ b/meta-ti-extras/recipes-bsp/dsptop/dsptop.inc @@ -0,0 +1,8 @@ +# This corresponds to version 1.4.0 +SRCREV = "816485e68430bbec643eac9498bfa5303eb2c2e1" +PV = "1.4.0" +INC_PR = "r2" + +SRC_URI = "git://git.ti.com/git/sdo-emu/dsptop.git;protocol=https;branch=${BRANCH}" + +BRANCH = "master" diff --git a/meta-ti-extras/recipes-bsp/dsptop/dsptop_git.bb b/meta-ti-extras/recipes-bsp/dsptop/dsptop_git.bb new file mode 100644 index 00000000..90ce8943 --- /dev/null +++ b/meta-ti-extras/recipes-bsp/dsptop/dsptop_git.bb @@ -0,0 +1,28 @@ +DESCRIPTION = "TI dsptop utility." +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://debian/copyright;md5=309825aa8f5edfcf2c44912ac094b979" + +DEPENDS = "libulm ncurses" + +PR = "${INC_PR}.2" + +S = "${WORKDIR}/git/dsptop" + +DEVICE = "" +DEVICE:dra7xx = "DRA7xx" + +EXTRA_OEMAKE = "release DEVICE=${DEVICE} CROSS_COMPILE=${TARGET_PREFIX} CC="${CC}"" + +do_install() { + oe_runmake install DESTDIR=${D} + chown -R root:root ${D} +} + +COMPATIBLE_MACHINE = "dra7xx" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +RDEPENDS:${PN} = "debugss-module-drv bash" + +include dsptop.inc + +PARALLEL_MAKE = "" diff --git a/meta-ti-extras/recipes-bsp/dsptop/libulm_git.bb b/meta-ti-extras/recipes-bsp/dsptop/libulm_git.bb new file mode 100644 index 00000000..6a2cde30 --- /dev/null +++ b/meta-ti-extras/recipes-bsp/dsptop/libulm_git.bb @@ -0,0 +1,45 @@ +SUMMARY = "TI Usage & Load Monitor Implementation" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://../debian/copyright;md5=309825aa8f5edfcf2c44912ac094b979" + +inherit features_check + +REQUIRED_MACHINE_FEATURES = "dsp" + +DEPENDS = "ti-cgt6x-native" +PR = "${INC_PR}.0" + +S = "${WORKDIR}/git/dsptop/ulm" + +DEVICE="" +DEVICE:dra7xx = "DRA7xx" + +EXTRA_OEMAKE = "release DEVICE=${DEVICE} CROSS_COMPILE=${TARGET_PREFIX}" + +do_compile() { + oe_runmake arm XPORT_ONLY CC="${CC}" + oe_runmake dsp C6X_C_DIR=${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x/include +} + +do_install() { + install -d ${D}${includedir} + install -d ${D}${libdir} + install -d ${D}${datadir}/ti/ulm + cp -f tiulm.h ${D}${includedir} + cp -f release/libtiulm.a ${D}${libdir} + cp -f tiulm.h ${D}${datadir}/ti/ulm + cp -f release/libtiulm.ae66 ${D}${datadir}/ti/ulm +} + +COMPATIBLE_MACHINE = "dra7xx" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +FILES:${PN}-dev += "\ + ${datadir}/ti/ulm \ +" + +include dsptop.inc + +ALLOW_EMPTY:${PN} = "1" + +PARALLEL_MAKE= "" diff --git a/meta-ti-extras/recipes-bsp/ipumm-fw/ipumm-fw_git.bb b/meta-ti-extras/recipes-bsp/ipumm-fw/ipumm-fw_git.bb new file mode 100644 index 00000000..8d066eb0 --- /dev/null +++ b/meta-ti-extras/recipes-bsp/ipumm-fw/ipumm-fw_git.bb @@ -0,0 +1,67 @@ +SUMMARY = "Firmware for IPU to suppor Accelerated MM decode and encode" +LICENSE = "TI-TSPA" + +LIC_FILES_CHKSUM = "file://Texas_Instruments_ipumm_Manifest.pdf;md5=5cc572579f07af266ab57fc17d762c7f" + +COMPATIBLE_MACHINE = "dra7xx" + +inherit features_check + +REQUIRED_MACHINE_FEATURES = "mmip" + +RDEPENDS:${PN} = "libdce" + +SRC_URI = "git://git.ti.com/git/ivimm/ipumm.git;protocol=https;branch=master" + +SRCREV = "df4c50aecc9aad7ab3eb1ca9ebacfe473fcad7c5" + +S = "${WORKDIR}/git" + +PV = "3.00.15.00" +PR = "r7" + +require recipes-ti/includes/ti-paths.inc + +inherit update-alternatives + +DEPENDS = "ti-xdctools-native ti-sysbios ti-codec-engine ti-framework-components ti-xdais ti-cgt-arm-native ti-ipc-rtos" + +export HWVERSION="ES10" +export BIOSTOOLSROOT="${STAGING_DIR_TARGET}/usr/share/ti" + +export XDCVERSION="ti-xdctools-tree" +export BIOSVERSION="ti-sysbios-tree" +export IPCVERSION="ti-ipc-tree" +export CEVERSION="ti-codec-engine-tree" +export FCVERSION="ti-framework-components-tree" +export XDAISVERSION="ti-xdais-tree" + +export TMS470CGTOOLPATH="${M4_TOOLCHAIN_INSTALL_DIR}" +export IPCSRC="${STAGING_DIR_TARGET}/usr/share/ti/ti-ipc-tree" + +EXTRA_OEMAKE += "XDCDIST_TREE=${STAGING_DIR_NATIVE}/usr/share/ti/${XDCVERSION}" + +do_configure() { + oe_runmake unconfig + oe_runmake vayu_smp_config +} + +do_compile() { + oe_runmake +} + +TARGET = "dra7-ipu2-fw.xem4" +TARGET_MAP = "platform/ti/dce/baseimage/package/cfg/out/ipu/release/ipu.xem4.map" + +do_install() { + install -d ${D}${nonarch_base_libdir}/firmware + install -m 0644 ${S}/${TARGET} ${D}${nonarch_base_libdir}/firmware/${TARGET}.${BPN} + install -m 0644 ${S}/${TARGET_MAP} ${D}${nonarch_base_libdir}/firmware/${TARGET}.map +} + +ALTERNATIVE:${PN} = "dra7-ipu2-fw.xem4" +ALTERNATIVE_LINK_NAME[dra7-ipu2-fw.xem4] = "${nonarch_base_libdir}/firmware/${TARGET}" +ALTERNATIVE_TARGET[dra7-ipu2-fw.xem4] = "${nonarch_base_libdir}/firmware/${TARGET}.${BPN}" +ALTERNATIVE_PRIORITY = "20" + +FILES:${PN} += "${nonarch_base_libdir}/firmware/*" diff --git a/meta-ti-extras/recipes-bsp/pru/pru-icss_git.bb b/meta-ti-extras/recipes-bsp/pru/pru-icss_git.bb new file mode 100644 index 00000000..b01dd6a5 --- /dev/null +++ b/meta-ti-extras/recipes-bsp/pru/pru-icss_git.bb @@ -0,0 +1,383 @@ +DESCRIPTION = "Programmable Real-time Unit Software Package" +HOMEPAGE = "http://processors.wiki.ti.com/index.php/PRU-ICSS" +LICENSE = "BSD-3-Clause & PD" + +LIC_FILES_CHKSUM = "file://PRU-Package-v6.1-Manifest.html;md5=1e37797ebe9254922f4278bb6047211c" + +inherit update-alternatives + +BRANCH = "master" +SRC_URI = "git://git.ti.com/git/pru-software-support-package/pru-software-support-package.git;protocol=https;branch=${BRANCH}" +SRCREV = "00a5efa5157feb84cb2e4bf50b481f7082acca82" + +PV = "6.3.0" + +require recipes-ti/includes/ti-paths.inc + +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|am62xx|am64xx|am65xx|j721e" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +PACKAGES:prepend = " \ + ${PN}-halt \ + ${PN}-rpmsg-echo \ +" + +RDEPENDS:${PN}:append = " \ + ${PN}-halt \ + ${PN}-rpmsg-echo \ +" + +DEPENDS = "ti-cgt-pru-native" + +S = "${WORKDIR}/git" + +export PRU_CGT = "${TI_CGT_PRU_INSTALL_DIR}" +export PRU_SSP = "${S}" + +SUBDIRS = "examples pru_cape/pru_fw lib/src labs" + +PLATFORM:ti33x = "am335x" +PLATFORM:ti43x = "am437x" +PLATFORM:omap-a15 = "am572x" +PLATFORM:am62xx = "am62x" +PLATFORM:am64xx = "am64x" +PLATFORM:am65xx = "am65x" +PLATFORM:j721e = "j721e" + +do_compile() { + for dir in ${SUBDIRS} + do + make -C ${S}/$dir + done +} + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${nonarch_base_libdir}/firmware/pru + install -d ${D}${includedir} + cp ${CP_ARGS} ${S}/include/* ${D}${includedir} + install -d ${D}${libdir} + install -m 0644 ${S}/lib/rpmsg_lib.lib ${D}${libdir} +} + +FILES:${PN}-staticdev = "${libdir}" +FILES:${PN}-dev = "${includedir}" + +do_install:append:ti33x() { + install -m 644 ${S}/examples/${PLATFORM}/PRU_Halt/gen/PRU_Halt.out \ + ${D}${nonarch_base_libdir}/firmware/pru + for i in 0 1 + do + install -m 0644 ${S}/examples/am335x/PRU_RPMsg_Echo_Interrupt${i}/gen/PRU_RPMsg_Echo_Interrupt${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + done +} + +do_install:append:ti43x() { + install -m 644 ${S}/examples/${PLATFORM}/PRU_Halt/gen/PRU_Halt.out \ + ${D}${nonarch_base_libdir}/firmware/pru + for i in 0 1 + do + for j in 0 1 + do + install -m 0644 ${S}/examples/am437x/PRU_RPMsg_Echo_Interrupt${i}_${j}/gen/PRU_RPMsg_Echo_Interrupt${i}_${j}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + done + done +} + +do_install:append:omap-a15() { + install -m 644 ${S}/examples/${PLATFORM}/PRU_Halt/gen/PRU_Halt.out \ + ${D}${nonarch_base_libdir}/firmware/pru + for i in 1 2 + do + for j in 0 1 + do + install -m 0644 ${S}/examples/am572x/PRU_RPMsg_Echo_Interrupt${i}_${j}/gen/PRU_RPMsg_Echo_Interrupt${i}_${j}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + done + done +} + +do_install:append:am62xx() { + install -m 644 ${S}/examples/${PLATFORM}/PRU_Halt/gen/PRU_Halt.out \ + ${D}${nonarch_base_libdir}/firmware/pru + for i in 0 1 + do + install -m 0644 ${S}/examples/${PLATFORM}/PRU_RPMsg_Echo_Interrupt${i}/gen/PRU_RPMsg_Echo_Interrupt${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + done +} + +do_install:append:am64xx(){ + for i in 0 1 + do + install -m 644 ${S}/examples/${PLATFORM}/PRU_Halt/gen/PRU${i}/PRU_Halt_${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + install -m 644 ${S}/examples/${PLATFORM}/RTU_Halt/gen/RTU${i}/RTU_Halt_${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + install -m 644 ${S}/examples/${PLATFORM}/TX_PRU_Halt/gen/TX_PRU${i}/TX_PRU_Halt_${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + done + for i in 0 1 + do + for j in 0 1 + do + install -m 0644 ${S}/examples/${PLATFORM}/PRU_RPMsg_Echo_Interrupt${j}/gen/icssg${i}/PRU_RPMsg_Echo_Interrupt${i}_${j}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + install -m 0644 ${S}/examples/${PLATFORM}/RTU_RPMsg_Echo_Interrupt${j}/gen/icssg${i}/RTU_RPMsg_Echo_Interrupt${i}_${j}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + done + done +} + +do_install:append:am65xx() { + for i in 0 1 + do + install -m 644 ${S}/examples/${PLATFORM}/PRU_Halt/gen/PRU${i}/PRU_Halt_${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + install -m 644 ${S}/examples/${PLATFORM}/RTU_Halt/gen/RTU${i}/RTU_Halt_${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + install -m 644 ${S}/examples/${PLATFORM}/TX_PRU_Halt/gen/TX_PRU${i}/TX_PRU_Halt_${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + done + for i in 0 1 2 + do + for j in 0 1 + do + install -m 0644 ${S}/examples/am65x/PRU_RPMsg_Echo_Interrupt${j}/gen/icssg${i}/PRU_RPMsg_Echo_Interrupt${i}_${j}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + install -m 0644 ${S}/examples/am65x/RTU_RPMsg_Echo_Interrupt${j}/gen/icssg${i}/RTU_RPMsg_Echo_Interrupt${i}_${j}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + + done + done +} + +do_install:append:j721e() { + for i in 0 1 + do + install -m 644 ${S}/examples/${PLATFORM}/PRU_Halt/gen/PRU${i}/PRU_Halt_${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + install -m 644 ${S}/examples/${PLATFORM}/RTU_Halt/gen/RTU${i}/RTU_Halt_${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + install -m 644 ${S}/examples/${PLATFORM}/TX_PRU_Halt/gen/TX_PRU${i}/TX_PRU_Halt_${i}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + done + for i in 0 1 + do + for j in 0 1 + do + install -m 0644 ${S}/examples/j721e/PRU_RPMsg_Echo_Interrupt${j}/gen/icssg${i}/PRU_RPMsg_Echo_Interrupt${i}_${j}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + install -m 0644 ${S}/examples/j721e/RTU_RPMsg_Echo_Interrupt${j}/gen/icssg${i}/RTU_RPMsg_Echo_Interrupt${i}_${j}.out \ + ${D}${nonarch_base_libdir}/firmware/pru + + done + done +} + + +FILES:${PN}-halt = "${nonarch_base_libdir}/firmware/pru/PRU_Halt* ${nonarch_base_libdir}/firmware/pru/RTU_Halt* ${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt*" +FILES:${PN}-rpmsg-echo = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt* ${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt*" + +# Set up names for the firmwares +PRU_ICSS_ALTERNATIVES:ti33x = "am335x-pru0-fw am335x-pru1-fw" +PRU_ICSS_ALTERNATIVES:ti43x = "am437x-pru0_0-fw am437x-pru0_1-fw am437x-pru1_0-fw am437x-pru1_1-fw" +PRU_ICSS_ALTERNATIVES:omap-a15 = "am57xx-pru1_0-fw am57xx-pru1_1-fw am57xx-pru2_0-fw am57xx-pru2_1-fw" +PRU_ICSS_ALTERNATIVES:am62xx = "am62x-pru0-fw am62x-pru1-fw" +PRU_ICSS_ALTERNATIVES:am64xx = "am64x-pru0_0-fw am64x-pru0_1-fw am64x-pru1_0-fw am64x-pru1_1-fw am64x-rtu0_0-fw am64x-rtu0_1-fw am64x-rtu1_0-fw am64x-rtu1_1-fw" +PRU_ICSS_ALTERNATIVES:am65xx = "am65x-pru0_0-fw am65x-pru0_1-fw am65x-pru1_0-fw am65x-pru1_1-fw am65x-pru2_0-fw am65x-pru2_1-fw am65x-rtu0_0-fw am65x-rtu0_1-fw am65x-rtu1_0-fw am65x-rtu1_1-fw am65x-rtu2_0-fw am65x-rtu2_1-fw" +PRU_ICSS_ALTERNATIVES:j721e = "j7-pru0_0-fw j7-pru0_1-fw j7-pru1_0-fw j7-pru1_1-fw j7-rtu0_0-fw j7-rtu0_1-fw j7-rtu1_0-fw j7-rtu1_1-fw" + +# Set up link names for the firmwares +ALTERNATIVE_LINK_NAME[am335x-pru0-fw] = "${nonarch_base_libdir}/firmware/am335x-pru0-fw" +ALTERNATIVE_LINK_NAME[am335x-pru1-fw] = "${nonarch_base_libdir}/firmware/am335x-pru1-fw" + +ALTERNATIVE_LINK_NAME[am437x-pru0_0-fw] = "${nonarch_base_libdir}/firmware/am437x-pru0_0-fw" +ALTERNATIVE_LINK_NAME[am437x-pru0_1-fw] = "${nonarch_base_libdir}/firmware/am437x-pru0_1-fw" +ALTERNATIVE_LINK_NAME[am437x-pru1_0-fw] = "${nonarch_base_libdir}/firmware/am437x-pru1_0-fw" +ALTERNATIVE_LINK_NAME[am437x-pru1_1-fw] = "${nonarch_base_libdir}/firmware/am437x-pru1_1-fw" + +ALTERNATIVE_LINK_NAME[am57xx-pru1_0-fw] = "${nonarch_base_libdir}/firmware/am57xx-pru1_0-fw" +ALTERNATIVE_LINK_NAME[am57xx-pru1_1-fw] = "${nonarch_base_libdir}/firmware/am57xx-pru1_1-fw" +ALTERNATIVE_LINK_NAME[am57xx-pru2_0-fw] = "${nonarch_base_libdir}/firmware/am57xx-pru2_0-fw" +ALTERNATIVE_LINK_NAME[am57xx-pru2_1-fw] = "${nonarch_base_libdir}/firmware/am57xx-pru2_1-fw" + +ALTERNATIVE_LINK_NAME[am62x-pru0-fw] = "${nonarch_base_libdir}/firmware/am62x-pru0-fw" +ALTERNATIVE_LINK_NAME[am62x-pru1-fw] = "${nonarch_base_libdir}/firmware/am62x-pru1-fw" + +ALTERNATIVE_LINK_NAME[am64x-pru0_0-fw] = "${nonarch_base_libdir}/firmware/am64x-pru0_0-fw" +ALTERNATIVE_LINK_NAME[am64x-pru0_1-fw] = "${nonarch_base_libdir}/firmware/am64x-pru0_1-fw" +ALTERNATIVE_LINK_NAME[am64x-pru1_0-fw] = "${nonarch_base_libdir}/firmware/am64x-pru1_0-fw" +ALTERNATIVE_LINK_NAME[am64x-pru1_1-fw] = "${nonarch_base_libdir}/firmware/am64x-pru1_1-fw" +ALTERNATIVE_LINK_NAME[am64x-rtu0_0-fw] = "${nonarch_base_libdir}/firmware/am64x-rtu0_0-fw" +ALTERNATIVE_LINK_NAME[am64x-rtu0_1-fw] = "${nonarch_base_libdir}/firmware/am64x-rtu0_1-fw" +ALTERNATIVE_LINK_NAME[am64x-rtu1_0-fw] = "${nonarch_base_libdir}/firmware/am64x-rtu1_0-fw" +ALTERNATIVE_LINK_NAME[am64x-rtu1_1-fw] = "${nonarch_base_libdir}/firmware/am64x-rtu1_1-fw" +ALTERNATIVE_LINK_NAME[am64x-txpru0_0-fw] = "${nonarch_base_libdir}/firmware/am64x-txpru0_0-fw" +ALTERNATIVE_LINK_NAME[am64x-txpru0_1-fw] = "${nonarch_base_libdir}/firmware/am64x-txpru0_1-fw" +ALTERNATIVE_LINK_NAME[am64x-txpru1_0-fw] = "${nonarch_base_libdir}/firmware/am64x-txpru1_0-fw" +ALTERNATIVE_LINK_NAME[am64x-txpru1_1-fw] = "${nonarch_base_libdir}/firmware/am64x-txpru1_1-fw" + +ALTERNATIVE_LINK_NAME[am65x-pru0_0-fw] = "${nonarch_base_libdir}/firmware/am65x-pru0_0-fw" +ALTERNATIVE_LINK_NAME[am65x-pru0_1-fw] = "${nonarch_base_libdir}/firmware/am65x-pru0_1-fw" +ALTERNATIVE_LINK_NAME[am65x-pru1_0-fw] = "${nonarch_base_libdir}/firmware/am65x-pru1_0-fw" +ALTERNATIVE_LINK_NAME[am65x-pru1_1-fw] = "${nonarch_base_libdir}/firmware/am65x-pru1_1-fw" +ALTERNATIVE_LINK_NAME[am65x-pru2_0-fw] = "${nonarch_base_libdir}/firmware/am65x-pru2_0-fw" +ALTERNATIVE_LINK_NAME[am65x-pru2_1-fw] = "${nonarch_base_libdir}/firmware/am65x-pru2_1-fw" +ALTERNATIVE_LINK_NAME[am65x-rtu0_0-fw] = "${nonarch_base_libdir}/firmware/am65x-rtu0_0-fw" +ALTERNATIVE_LINK_NAME[am65x-rtu0_1-fw] = "${nonarch_base_libdir}/firmware/am65x-rtu0_1-fw" +ALTERNATIVE_LINK_NAME[am65x-rtu1_0-fw] = "${nonarch_base_libdir}/firmware/am65x-rtu1_0-fw" +ALTERNATIVE_LINK_NAME[am65x-rtu1_1-fw] = "${nonarch_base_libdir}/firmware/am65x-rtu1_1-fw" +ALTERNATIVE_LINK_NAME[am65x-rtu2_0-fw] = "${nonarch_base_libdir}/firmware/am65x-rtu2_0-fw" +ALTERNATIVE_LINK_NAME[am65x-rtu2_1-fw] = "${nonarch_base_libdir}/firmware/am65x-rtu2_1-fw" +ALTERNATIVE_LINK_NAME[am65x-txpru0_0-fw] = "${nonarch_base_libdir}/firmware/am65x-txpru0_0-fw" +ALTERNATIVE_LINK_NAME[am65x-txpru0_1-fw] = "${nonarch_base_libdir}/firmware/am65x-txpru0_1-fw" +ALTERNATIVE_LINK_NAME[am65x-txpru1_0-fw] = "${nonarch_base_libdir}/firmware/am65x-txpru1_0-fw" +ALTERNATIVE_LINK_NAME[am65x-txpru1_1-fw] = "${nonarch_base_libdir}/firmware/am65x-txpru1_1-fw" +ALTERNATIVE_LINK_NAME[am65x-txpru2_0-fw] = "${nonarch_base_libdir}/firmware/am65x-txpru2_0-fw" +ALTERNATIVE_LINK_NAME[am65x-txpru2_1-fw] = "${nonarch_base_libdir}/firmware/am65x-txpru2_1-fw" + +ALTERNATIVE_LINK_NAME[j7-pru0_0-fw] = "${nonarch_base_libdir}/firmware/j7-pru0_0-fw" +ALTERNATIVE_LINK_NAME[j7-pru0_1-fw] = "${nonarch_base_libdir}/firmware/j7-pru0_1-fw" +ALTERNATIVE_LINK_NAME[j7-pru1_0-fw] = "${nonarch_base_libdir}/firmware/j7-pru1_0-fw" +ALTERNATIVE_LINK_NAME[j7-pru1_1-fw] = "${nonarch_base_libdir}/firmware/j7-pru1_1-fw" +ALTERNATIVE_LINK_NAME[j7-rtu0_0-fw] = "${nonarch_base_libdir}/firmware/j7-rtu0_0-fw" +ALTERNATIVE_LINK_NAME[j7-rtu0_1-fw] = "${nonarch_base_libdir}/firmware/j7-rtu0_1-fw" +ALTERNATIVE_LINK_NAME[j7-rtu1_0-fw] = "${nonarch_base_libdir}/firmware/j7-rtu1_0-fw" +ALTERNATIVE_LINK_NAME[j7-rtu1_1-fw] = "${nonarch_base_libdir}/firmware/j7-rtu1_1-fw" +ALTERNATIVE_LINK_NAME[j7-txpru0_0-fw] = "${nonarch_base_libdir}/firmware/j7-txpru0_0-fw" +ALTERNATIVE_LINK_NAME[j7-txpru0_1-fw] = "${nonarch_base_libdir}/firmware/j7-txpru0_1-fw" +ALTERNATIVE_LINK_NAME[j7-txpru1_0-fw] = "${nonarch_base_libdir}/firmware/j7-txpru1_0-fw" +ALTERNATIVE_LINK_NAME[j7-txpru1_1-fw] = "${nonarch_base_libdir}/firmware/j7-txpru1_1-fw" + +# Create the pru-icss-halt firmware alternatives +ALTERNATIVE:pru-icss-halt = "${PRU_ICSS_ALTERNATIVES}" + +# Only Halt firmware images are supported for the Tx_PRU cores +ALTERNATIVE:pru-icss-halt:append:am64xx = " am64x-txpru0_0-fw am64x-txpru0_1-fw am64x-txpru1_0-fw am64x-txpru1_1-fw" +ALTERNATIVE:pru-icss-halt:append:am65xx = " am65x-txpru0_0-fw am65x-txpru0_1-fw am65x-txpru1_0-fw am65x-txpru1_1-fw am65x-txpru2_0-fw am65x-txpru2_1-fw" +ALTERNATIVE:pru-icss-halt:append:j721e = " j7-txpru0_0-fw j7-txpru0_1-fw j7-txpru1_0-fw j7-txpru1_1-fw" + +ALTERNATIVE_TARGET_pru-icss-halt[am335x-pru0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" +ALTERNATIVE_TARGET_pru-icss-halt[am335x-pru1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" + +ALTERNATIVE_TARGET_pru-icss-halt[am437x-pru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" +ALTERNATIVE_TARGET_pru-icss-halt[am437x-pru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" +ALTERNATIVE_TARGET_pru-icss-halt[am437x-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" +ALTERNATIVE_TARGET_pru-icss-halt[am437x-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" + +ALTERNATIVE_TARGET_pru-icss-halt[am57xx-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" +ALTERNATIVE_TARGET_pru-icss-halt[am57xx-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" +ALTERNATIVE_TARGET_pru-icss-halt[am57xx-pru2_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" +ALTERNATIVE_TARGET_pru-icss-halt[am57xx-pru2_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" + +ALTERNATIVE_TARGET_pru-icss-halt[am62x-pru0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" +ALTERNATIVE_TARGET_pru-icss-halt[am62x-pru1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt.out" + +ALTERNATIVE_TARGET_pru-icss-halt[am64x-pru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-pru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-rtu0_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-rtu0_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-rtu1_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-rtu1_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-txpru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-txpru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-txpru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am64x-txpru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_1.out" + +ALTERNATIVE_TARGET_pru-icss-halt[am65x-pru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-pru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-pru2_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-pru2_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-rtu0_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-rtu0_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-rtu1_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-rtu1_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-rtu2_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-rtu2_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-txpru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-txpru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-txpru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-txpru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-txpru2_0-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[am65x-txpru2_1-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_1.out" + +ALTERNATIVE_TARGET_pru-icss-halt[j7-pru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-pru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-rtu0_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-rtu0_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-rtu1_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-rtu1_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-txpru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-txpru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_1.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-txpru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_0.out" +ALTERNATIVE_TARGET_pru-icss-halt[j7-txpru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/TX_PRU_Halt_1.out" + + +ALTERNATIVE_PRIORITY_pru-icss-halt = "50" + +# Create the pru-icss-rpmsg-echo firmware alternatives +ALTERNATIVE:pru-icss-rpmsg-echo = "${PRU_ICSS_ALTERNATIVES}" + +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am335x-pru0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am335x-pru1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1.out" + +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am437x-pru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am437x-pru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am437x-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am437x-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_1.out" + +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am57xx-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am57xx-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am57xx-pru2_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt2_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am57xx-pru2_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt2_1.out" + +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am62x-pru0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am62x-pru1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1.out" + +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am64x-pru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am64x-pru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am64x-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am64x-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am64x-rtu0_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt0_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am64x-rtu0_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt0_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am64x-rtu1_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt1_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am64x-rtu1_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt1_1.out" + +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-pru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-pru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-pru2_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt2_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-pru2_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt2_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-rtu0_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt0_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-rtu0_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt0_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-rtu1_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt1_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-rtu1_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt1_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-rtu2_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt2_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[am65x-rtu2_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt2_1.out" + +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[j7-pru0_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[j7-pru0_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt0_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[j7-pru1_0-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[j7-pru1_1-fw] = "${nonarch_base_libdir}/firmware/pru/PRU_RPMsg_Echo_Interrupt1_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[j7-rtu0_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt0_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[j7-rtu0_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt0_1.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[j7-rtu1_0-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt1_0.out" +ALTERNATIVE_TARGET_pru-icss-rpmsg-echo[j7-rtu1_1-fw] = "${nonarch_base_libdir}/firmware/pru/RTU_RPMsg_Echo_Interrupt1_1.out" + +ALTERNATIVE_PRIORITY_pru-icss-rpmsg-echo = "100" + +ALLOW_EMPTY:${PN} = "1" + +# This installs PRU firmware, so skip "arch" QA check +INSANE_SKIP:${PN}-halt = "arch buildpaths" +INSANE_SKIP:${PN}-rpmsg-echo = "arch buildpaths" diff --git a/meta-ti-extras/recipes-bsp/wl18xx-fw/wl18xx-fw/0001-Add-Makefile-to-install-firmware-files.patch b/meta-ti-extras/recipes-bsp/wl18xx-fw/wl18xx-fw/0001-Add-Makefile-to-install-firmware-files.patch new file mode 100644 index 00000000..bb05c6fe --- /dev/null +++ b/meta-ti-extras/recipes-bsp/wl18xx-fw/wl18xx-fw/0001-Add-Makefile-to-install-firmware-files.patch @@ -0,0 +1,31 @@ +From 3a8fc3ccf00796254d6cef4b6d4cd70dc37012e1 Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko <denys@ti.com> +Date: Fri, 10 Mar 2017 13:28:29 -0500 +Subject: [PATCH] Add Makefile to install firmware files + +Upstream-Status: Pending + +Signed-off-by: Denys Dmytriyenko <denys@ti.com> +--- + Makefile | 9 +++++++++ + 1 file changed, 9 insertions(+) + create mode 100644 Makefile + +diff --git a/Makefile b/Makefile +new file mode 100644 +index 0000000..1cf38e3 +--- /dev/null ++++ b/Makefile +@@ -0,0 +1,9 @@ ++# Installs the the ti-connectivity wlan firmware files into the root file system ++ ++install: ++ @if [ ! -d $(DESTDIR) ] ; then \ ++ echo "Target filesystem directory doesn't exist."; \ ++ exit 1; \ ++ fi ++ install -d $(DEST_DIR)/lib/firmware/ti-connectivity ++ cp *.bin $(DEST_DIR)/lib/firmware/ti-connectivity/ +-- +2.7.4 + diff --git a/meta-ti-extras/recipes-bsp/wl18xx-fw/wl18xx-fw_8.9.0.0.86.bb b/meta-ti-extras/recipes-bsp/wl18xx-fw/wl18xx-fw_8.9.0.0.86.bb new file mode 100644 index 00000000..dbae5a21 --- /dev/null +++ b/meta-ti-extras/recipes-bsp/wl18xx-fw/wl18xx-fw_8.9.0.0.86.bb @@ -0,0 +1,29 @@ +DESCRIPTION = "Firmware files for use with TI wl18xx" +LICENSE = "TI-TSPA" +LIC_FILES_CHKSUM = "file://LICENCE;md5=4977a0fe767ee17765ae63c435a32a9e" + +SRC_URI = " \ + git://git.ti.com/git/wilink8-wlan/wl18xx_fw.git;protocol=https;branch=${BRANCH} \ + file://0001-Add-Makefile-to-install-firmware-files.patch \ +" + +SRCREV = "5ec05007f2662f460f881c5868311fd3ab7e6e71" +BRANCH = "master" + +S = "${WORKDIR}/git" + +CLEANBROKEN = "1" + +do_compile() { + : +} + +do_install() { + if ${@bb.utils.contains('DISTRO_FEATURES','usrmerge','true','false',d)}; then + oe_runmake 'DEST_DIR=${D}/usr' install + else + oe_runmake 'DEST_DIR=${D}' install + fi +} + +FILES:${PN} = "${nonarch_base_libdir}/firmware/ti-connectivity/*" diff --git a/meta-ti-extras/recipes-connectivity/uim/uim-sysfs_8.5.bb b/meta-ti-extras/recipes-connectivity/uim/uim-sysfs_8.5.bb new file mode 100644 index 00000000..2e528376 --- /dev/null +++ b/meta-ti-extras/recipes-connectivity/uim/uim-sysfs_8.5.bb @@ -0,0 +1,20 @@ +DESCRIPTION = "Shared Transport Line Discipline User Mode initialisation Manager Daemon" +LICENSE = "GPL-2.0-or-later" +LIC_FILES_CHKSUM = "file://uim.c;beginline=1;endline=18;md5=9f0bbfbc10c67689e81a523e2976c31e" + +INITSCRIPT_NAME = "uim-sysfs" +INITSCRIPT_PARAMS = "defaults 03" + +inherit update-rc.d + +SRCREV = "a75f45be2d5c74fc1dd913d08afc30f09a230aa9" +SRC_URI = "git://git.ti.com/git/ti-bt/uim.git;branch=master;protocol=https" + +S = "${WORKDIR}/git" + +do_install() { + install -d ${D}${bindir} + install -m 0755 uim ${D}${bindir} + install -d ${D}${sysconfdir}/init.d + install -m 0755 scripts/uim-sysfs ${D}${sysconfdir}/init.d +} diff --git a/meta-ti-extras/recipes-connectivity/wl18xx-calibrator/wl18xx-calibrator/0001-plt.h-Do-not-define-EFUSE_PARAMETER_TYPE_ENMT-type-e.patch b/meta-ti-extras/recipes-connectivity/wl18xx-calibrator/wl18xx-calibrator/0001-plt.h-Do-not-define-EFUSE_PARAMETER_TYPE_ENMT-type-e.patch new file mode 100644 index 00000000..fc5542e0 --- /dev/null +++ b/meta-ti-extras/recipes-connectivity/wl18xx-calibrator/wl18xx-calibrator/0001-plt.h-Do-not-define-EFUSE_PARAMETER_TYPE_ENMT-type-e.patch @@ -0,0 +1,35 @@ +From e3f694496322d3679dd9b007dc3caa4343f0f376 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 11 Aug 2020 18:12:58 -0700 +Subject: [PATCH] plt.h: Do not define EFUSE_PARAMETER_TYPE_ENMT type enum in + header file + +gcc10 uses -fno-common by default and this causes multiple definitions +of this enum in all files including plt.h file, therefore just define +the type in header file + +Fixes +arm-yoe-linux-musleabi-ld: misc_cmds.o:/usr/src/debug/wl18xx-calibrator/8.7.3-r0/git/./plt.h:402: multiple definition of `EFUSE_PARAMETER_TYPE_ENM'; nvs.o:/usr/src/debug/wl18xx-calibrator/8.7.3-r0/git/./plt.h:402: first defined here + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + plt.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/plt.h b/plt.h +index 8b534a9..43d5dbc 100644 +--- a/plt.h ++++ b/plt.h +@@ -399,7 +399,7 @@ enum EFUSE_PARAMETER_TYPE_ENMT { + TX_BIP_PD_BUFFER_VBIAS_ERROR_E, + EFUSE_NUMBER_OF_PARAMETERS_E, + EFUSE_LAST_PARAMETER_E = (EFUSE_NUMBER_OF_PARAMETERS_E - 1) +-} EFUSE_PARAMETER_TYPE_ENM; ++}; + + int get_mac_addr(int ifc_num, unsigned char *mac_addr); + +-- +2.28.0 + diff --git a/meta-ti-extras/recipes-connectivity/wl18xx-calibrator/wl18xx-calibrator_8.7.3.bb b/meta-ti-extras/recipes-connectivity/wl18xx-calibrator/wl18xx-calibrator_8.7.3.bb new file mode 100644 index 00000000..1e9c445d --- /dev/null +++ b/meta-ti-extras/recipes-connectivity/wl18xx-calibrator/wl18xx-calibrator_8.7.3.bb @@ -0,0 +1,26 @@ +DESCRIPTION = "The calibrator utility for TI wireless solution based on wl18xx driver" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://COPYING;md5=4725015cb0be7be389cf06deeae3683d" + +DEPENDS = "libnl" +RDEPENDS:${PN} = "wl18xx-fw" + +#Tag: R8.7_SP3 (8.7.3) +SRCREV = "5048b59a444ac59ba7171d6e122d5a84581aebf2" +SRC_URI = "git://git.ti.com/git/wilink8-wlan/18xx-ti-utils.git;branch=master;protocol=https \ + file://0001-plt.h-Do-not-define-EFUSE_PARAMETER_TYPE_ENMT-type-e.patch \ + " + +S = "${WORKDIR}/git" + +export CROSS_COMPILE = "${TARGET_PREFIX}" + +EXTRA_OEMAKE = "CFLAGS="${CFLAGS} -I${STAGING_INCDIR}/libnl3/ -DCONFIG_LIBNL32 " \ + LDFLAGS="${LDFLAGS} -L${STAGING_LIBDIR}" \ + CC="${CC}" \ + NLVER=3" + +do_install() { + install -d ${D}${bindir} + install -m 0755 calibrator ${D}${bindir}/ +} diff --git a/meta-ti-extras/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts/0001-print_stat.sh-replace-system-bin-sh-with-bin-sh.patch b/meta-ti-extras/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts/0001-print_stat.sh-replace-system-bin-sh-with-bin-sh.patch new file mode 100644 index 00000000..cde01541 --- /dev/null +++ b/meta-ti-extras/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts/0001-print_stat.sh-replace-system-bin-sh-with-bin-sh.patch @@ -0,0 +1,25 @@ +From ba1ac3862c8c3b2dbb615dc342b7fb1eaa96900f Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko <denys@ti.com> +Date: Fri, 10 Nov 2017 17:02:39 -0500 +Subject: [PATCH] print_stat.sh: replace /system/bin/sh with /bin/sh + +Upstream-Status: Pending + +Signed-off-by: Denys Dmytriyenko <denys@ti.com> +--- + testing/print_stat.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/testing/print_stat.sh b/testing/print_stat.sh +index 681a063..0a519f6 100755 +--- a/testing/print_stat.sh ++++ b/testing/print_stat.sh +@@ -1,4 +1,4 @@ +-#!/system/bin/sh ++#!/bin/sh + + PHY=`ls /sys/class/ieee80211/` + mkdir -p /debug +-- +2.7.4 + diff --git a/meta-ti-extras/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts_8.8.1.bb b/meta-ti-extras/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts_8.8.1.bb new file mode 100644 index 00000000..87890a31 --- /dev/null +++ b/meta-ti-extras/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts_8.8.1.bb @@ -0,0 +1,26 @@ +DESCRIPTION = "Scripts and configuration files for TI wireless drivers" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://README;beginline=1;endline=21;md5=b8d6a0865f50159bf5c0d175d1f4a705" + +# Tag: R8.8.1 +SRCREV = "8bcee075061527d61f26d6d506aebdfd496037d9" +BRANCH = "sitara-scripts" +SRC_URI = "git://git.ti.com/git/wilink8-wlan/wl18xx-target-scripts.git;protocol=https;branch=${BRANCH} \ +file://0001-print_stat.sh-replace-system-bin-sh-with-bin-sh.patch \ +" + +PR = "r1" + +S = "${WORKDIR}/git" + +FILES:${PN} += "${datadir}/wl18xx/" + +do_install() { + install -d ${D}${datadir}/wl18xx/ + + scripts=`find ./* -type f -name "*.*"` + for s in $scripts + do + install -m 0755 $s ${D}${datadir}/wl18xx/ + done +} diff --git a/meta-ti-extras/recipes-connectivity/wlconf/wlconf_8.7.3.bb b/meta-ti-extras/recipes-connectivity/wlconf/wlconf_8.7.3.bb new file mode 100644 index 00000000..a2a8b775 --- /dev/null +++ b/meta-ti-extras/recipes-connectivity/wlconf/wlconf_8.7.3.bb @@ -0,0 +1,39 @@ +DESCRIPTION = "Configuration utility for TI wireless drivers" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://README;beginline=1;endline=21;md5=adc05a1903d3f107f85c90328e3a9438" + +# Tag: R8.7_SP3 (8.7.3) +SRCREV = "5048b59a444ac59ba7171d6e122d5a84581aebf2" +SRC_URI = "git://git.ti.com/git/wilink8-wlan/18xx-ti-utils.git;branch=master;protocol=https" + +S = "${WORKDIR}/git/wlconf" + +EXTRA_OEMAKE = "CC="${CC}"" + +do_install() { + install -d ${D}${sbindir} + install -d ${D}${sbindir}/wlconf/ + install -d ${D}${sbindir}/wlconf/official_inis + install -d ${D}${nonarch_base_libdir}/firmware/ti-connectivity + + install -m 0755 wlconf ${D}${sbindir}/wlconf/ + install -m 0755 dictionary.txt ${D}${sbindir}/wlconf/ + install -m 0755 struct.bin ${D}${sbindir}/wlconf/ + install -m 0755 default.conf ${D}${sbindir}/wlconf/ + install -m 0755 wl18xx-conf-default.bin ${D}${sbindir}/wlconf/ + install -m 0755 wl18xx-conf-default.bin ${D}${nonarch_base_libdir}/firmware/ti-connectivity/wl18xx-conf.bin + install -m 0755 README ${D}${sbindir}/wlconf/ + install -m 0755 example.conf ${D}${sbindir}/wlconf/ + install -m 0755 example.ini ${D}${sbindir}/wlconf/ + install -m 0755 configure-device.sh ${D}${sbindir}/wlconf/ + install -m 0755 ${S}/official_inis/* \ + ${D}${sbindir}/wlconf/official_inis/ +} + +FILES:${PN} += " \ + ${sbindir}/wlconf \ + ${sbindir}/wlconf/official_inis \ + ${nonarch_base_libdir}/firmware/ti-connectivity/wl18xx-conf.bin \ +" + +FILES:${PN}-dbg += "${sbindir}/wlconf/.debug" diff --git a/meta-ti-extras/recipes-devtools/cuia/cuia_1.0.0.13.bb b/meta-ti-extras/recipes-devtools/cuia/cuia_1.0.0.13.bb new file mode 100644 index 00000000..8b16830f --- /dev/null +++ b/meta-ti-extras/recipes-devtools/cuia/cuia_1.0.0.13.bb @@ -0,0 +1,33 @@ +DESCRIPTION = "TI Unified Instrumentation Architecture in C (cUIA)" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://cuia_${CUIA_PV}_manifest.html;md5=0eea94e3bb94de4ddee77653eba1c7c5" + +CUIA_PV = "1_00_00_13" +CUIA_PVExtra = "" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_ccstudio/UIA/SCMCSDK/cuia_${CUIA_PV}${CUIA_PVExtra}.tar.gz;name=cuia" +SRC_URI[cuia.md5sum] = "ef53989ac70c191841cd656cdc8770be" +SRC_URI[cuia.sha256sum] = "f16d138a9146fdc7d52cba77bd30596da65835f6ffe4092baf2b33d1c1a4fb0d" + +S = "${WORKDIR}/cuia_${CUIA_PV}${CUIA_PVExtra}" + +CLEANBROKEN = "1" + +do_compile () { + cd ${S} + oe_runmake clean + oe_runmake all +} + +do_install() { + cd ${S} + oe_runmake DESTDIR=${D} libdir=${libdir} includedir=${includedir} install + rm -rf ${D}${libdir}/boot.* + rm -rf ${D}${libdir}/gnu.targets.* + rm -rf ${D}${libdir}/syscalls.* +} + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST:ti-soc = "(.*)" + +INSANE_SKIP:${PN} += "textrel" diff --git a/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x.inc b/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x.inc new file mode 100644 index 00000000..54115f4e --- /dev/null +++ b/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x.inc @@ -0,0 +1,9 @@ +# This corresponds to version 1.1.0 +SRCREV = "dd0c82fb5763a6b32dc6d68e561efb66ab8283d7" + +PV = "1.1.0" +INC_PR = "r7" + +SRC_URI = "git://git.ti.com/git/sdo-emu/gdbc6x.git;protocol=https;branch=${BRANCH}" + +BRANCH = "master" diff --git a/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x/0001-libbfd.h-suppress-GCC9-Wstringop-truncation.patch b/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x/0001-libbfd.h-suppress-GCC9-Wstringop-truncation.patch new file mode 100644 index 00000000..e52efa56 --- /dev/null +++ b/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x/0001-libbfd.h-suppress-GCC9-Wstringop-truncation.patch @@ -0,0 +1,30 @@ +From 0aa294e2bbd37a42266e59cb67687e57bfba4a88 Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko <denys@ti.com> +Date: Sat, 15 Feb 2020 15:59:37 -0500 +Subject: [PATCH] libbfd.h: suppress GCC9 -Wstringop-truncation + +Upstream-Status: Inappropriate [OE-specific] + +Signed-off-by: Denys Dmytriyenko <denys@ti.com> +--- + gdbc6x/bfd/libbfd.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/gdbc6x/bfd/libbfd.h b/gdbc6x/bfd/libbfd.h +index 72d3c50..3465f89 100644 +--- a/gdbc6x/bfd/libbfd.h ++++ b/gdbc6x/bfd/libbfd.h +@@ -34,6 +34,10 @@ + #pragma GCC diagnostic ignored "-Wcast-function-type" + #endif + ++#if __GNUC__ >= 9 ++#pragma GCC diagnostic ignored "-Wstringop-truncation" ++#endif ++ + #include "hashtab.h" + + /* Align an address upward to a boundary, expressed as a number of bytes. +-- +2.7.4 + diff --git a/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x/init b/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x/init new file mode 100644 index 00000000..90210b82 --- /dev/null +++ b/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x/init @@ -0,0 +1,48 @@ +#!/bin/bash + +GDB_DEVICE_NAME='/dev/gdbtty$i' +DSP_FIRMWARE_NAME='/lib/firmware/dra7-dsp$[$i+1]-fw.xe66' + +DSP_L2_GLOBAL_OFFSET="40000000" +DSP_L2_GLOBAL_SHIFT="00800000" + +case "$1" in + start) + + dsp_core_l2_offset=$DSP_L2_GLOBAL_OFFSET + + i=0 + while [ -c "`eval echo $GDB_DEVICE_NAME`" ] + do + dsp_firmware=`eval echo $DSP_FIRMWARE_NAME` + + if [ -f "`eval echo $DSP_FIRMWARE_NAME`" ] + then + eval echo "Initializing $GDB_DEVICE_NAME based on $DSP_FIRMWARE_NAME ..." + + gdb_data_local=`eval readelf -s "$DSP_FIRMWARE_NAME" | \ + grep 'gdb_globalData' | \ + awk '{print $2}'` + + echo "gdb_globalData (local) = $gdb_data_local" + printf "gdb_globalData (global) = %X\n" \ + $[0x$gdb_data_local + 0x$dsp_core_l2_offset] + + + printf "%X\n" $[0x$gdb_data_local + 0x$dsp_core_l2_offset] \ + >> `eval echo $GDB_DEVICE_NAME` + fi + i=$[$i + 1] + dsp_core_l2_offset=`printf "%X" $[0x$dsp_core_l2_offset + 0x$DSP_L2_GLOBAL_SHIFT]` + done + ;; + stop) + # Nothing to be done. + ;; + *) + echo "Usage: $0 {start|stop}" + exit 1 + ;; +esac + + diff --git a/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x_git.bb b/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x_git.bb new file mode 100644 index 00000000..d3ada9c6 --- /dev/null +++ b/meta-ti-extras/recipes-devtools/gdbc6x/gdbc6x_git.bb @@ -0,0 +1,49 @@ +DESCRIPTION = "GNU debugger for TI C6X DSP." +SECTION = "devel" +LICENSE = "GPL-3.0-or-later" +LIC_FILES_CHKSUM = "file://debian/copyright;md5=bf0fe2872eb3dfeebb2cbe38206fe81f" + +DEPENDS = "ncurses bison-native texinfo flex-native gettext" + +COMPATIBLE_MACHINE = "dra7xx" + +PR = "${INC_PR}.1" + +SRC_URI:append = " \ + file://init \ + file://0001-libbfd.h-suppress-GCC9-Wstringop-truncation.patch;striplevel=2 \ +" + +S = "${WORKDIR}/git/gdbc6x" + +inherit update-rc.d +inherit gettext + +CFLAGS += "-fcommon" + +do_configure () { + cd ${S} + ./configure --program-suffix=c6x --target=tic6x-elf-tirtos --host=${HOST_SYS} --prefix=${S}/install_gdb +} + +do_install () { + make install + + # Custom install to prevent conflict with standard GDB. + install -d ${D}${bindir} + install -d ${D}${includedir} + install -m 755 ${S}/install_gdb/bin/gdbc6x ${D}${bindir} + cp -rf ${S}/install_gdb/include/* ${D}${includedir} + + install -d ${D}${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/gdbserverproxy +} + +RDEPENDS:${PN} = "gdbserverproxy-module-drv bash" + +include gdbc6x.inc + +INITSCRIPT_NAME = "gdbserverproxy" +INITSCRIPT_PARAMS = "defaults 95" + +PARALLEL_MAKE = "" diff --git a/meta-ti-extras/recipes-devtools/gdbc6x/gdbserver-c6x_git.bb b/meta-ti-extras/recipes-devtools/gdbc6x/gdbserver-c6x_git.bb new file mode 100644 index 00000000..3460eadb --- /dev/null +++ b/meta-ti-extras/recipes-devtools/gdbc6x/gdbserver-c6x_git.bb @@ -0,0 +1,49 @@ +DESCRIPTION = "TI gdb-server to be used with c6xgdb." +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://../debian/copyright;md5=82c616b6c8f9c11c46feaaf8f9a11495" + +DEPENDS = "ti-xdais ti-framework-components ti-cgt6x-native ti-sysbios ti-xdctools-native" + +PR = "${INC_PR}.0" + +S = "${WORKDIR}/git/gdbserver-c6x/src" + +PLATFORM = "" +PLATFORM:dra7xx = "DRA7xx_PLATFORM" + +EXTRA_OEMAKE = "PLATFORM=${PLATFORM}" + +export XDAIS_DIR = "${XDAIS_INSTALL_DIR}" +export FC_DIR = "${FC_INSTALL_DIR}" +export TI_CGT_INSTALL = "${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" +export BIOS_DIR = "${SYSBIOS_INSTALL_DIR}" +export XDC_DIR = "${XDC_INSTALL_DIR}" + +# The following is to prevent an unused configure.ac from erroneously +# triggering the QA check for gettext. +EXTRA_OECONF = "--disable-nls" +do_configure() { + : +} + +do_install() { + install -d ${D}${datadir}/ti/gdbc6x/include + install -d ${D}${datadir}/ti/gdbc6x/lib + cp -f ../include/* ${D}${datadir}/ti/gdbc6x/include + cp -f ../lib/* ${D}${datadir}/ti/gdbc6x/lib +} + +COMPATIBLE_MACHINE = "dra7xx" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +FILES:${PN}-dev += "\ + ${datadir}/ti/gdbc6x \ +" + +include gdbc6x.inc + +require recipes-ti/includes/ti-paths.inc + +ALLOW_EMPTY:${PN} = "1" + +PARALLEL_MAKE = "" diff --git a/meta-ti-extras/recipes-devtools/gdbc6x/gdbserverproxy-module-drv/0001-Support-Linux-kernels-v5.15.patch b/meta-ti-extras/recipes-devtools/gdbc6x/gdbserverproxy-module-drv/0001-Support-Linux-kernels-v5.15.patch new file mode 100644 index 00000000..fdf7e95f --- /dev/null +++ b/meta-ti-extras/recipes-devtools/gdbc6x/gdbserverproxy-module-drv/0001-Support-Linux-kernels-v5.15.patch @@ -0,0 +1,40 @@ +From 7e6e1312629f9bc7a24871f7f395f2d288a1758f Mon Sep 17 00:00:00 2001 +From: Andrew Davis <afd@ti.com> +Date: Tue, 18 Apr 2023 11:38:54 -0500 +Subject: [PATCH] Support Linux kernels v5.15+ + +put_tty_driver was removed and write_room return type has changed. + +Function tty_driver_kref_put has been around a while, so no need +to do a kernel version check. + +Upstream-Status: Inactive-Upstream +Signed-off-by: Andrew Davis <afd@ti.com> +--- + kernel_module/gdbproxy-mod/gdbserverproxy.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/kernel_module/gdbproxy-mod/gdbserverproxy.c b/kernel_module/gdbproxy-mod/gdbserverproxy.c +index 418b6db..4b1c676 100644 +--- a/kernel_module/gdbproxy-mod/gdbserverproxy.c ++++ b/kernel_module/gdbproxy-mod/gdbserverproxy.c +@@ -540,7 +540,11 @@ static int gdb_write(struct tty_struct *tty, + * + * + */ ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,15,0)) ++static unsigned int gdb_write_room(struct tty_struct *tty) ++#else + static int gdb_write_room(struct tty_struct *tty) ++#endif + { + return GDB_STR_SIZE; + } +@@ -914,7 +918,7 @@ static int __init gdb_dev_init(void) + if (ret < 0) { + + printk(KERN_ERR "Couldn't register gdbtty driver.\n"); +- put_tty_driver(tty_gdb_driver); ++ tty_driver_kref_put(tty_gdb_driver); + return ret; + } diff --git a/meta-ti-extras/recipes-devtools/gdbc6x/gdbserverproxy-module-drv/0002-Support-Linux-kernels-v6.6.patch b/meta-ti-extras/recipes-devtools/gdbc6x/gdbserverproxy-module-drv/0002-Support-Linux-kernels-v6.6.patch new file mode 100644 index 00000000..1e897394 --- /dev/null +++ b/meta-ti-extras/recipes-devtools/gdbc6x/gdbserverproxy-module-drv/0002-Support-Linux-kernels-v6.6.patch @@ -0,0 +1,31 @@ +From: Ryan Eatmon <reatmon@ti.com> +Date: Wed, 08 Feb 2024 10:43:00 -0500 +Subject: [PATCH] Support Linux kernels v6.6+ + +gdb_write arg changed from int to unsigned int + +Upstream-Status: Inactive-Upstream + +Signed-off-by: Ryan Eatmon <reatmon@ti.com> +--- + kernel_module/gdbproxy-mod/gdbserverproxy.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/kernel_module/gdbproxy-mod/gdbserverproxy.c b/kernel_module/gdbproxy-mod/gdbserverproxy.c +index 418b6db..4b1c676 100644 +--- a/kernel_module/gdbproxy-mod/gdbserverproxy.c ++++ b/kernel_module/gdbproxy-mod/gdbserverproxy.c +@@ -496,8 +496,13 @@ static void gdb_close(struct tty_struct *tty, struct file *filp) + * + * + */ ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6,6,0)) ++static int gdb_write(struct tty_struct *tty, ++ const unsigned char *buf, unsigned int count) ++#else + static int gdb_write(struct tty_struct *tty, + const unsigned char *buf, int count) ++#endif + { + struct dsp_session *dsp = tty->driver_data; + int ret = 0; diff --git a/meta-ti-extras/recipes-devtools/gdbc6x/gdbserverproxy-module-drv_git.bb b/meta-ti-extras/recipes-devtools/gdbc6x/gdbserverproxy-module-drv_git.bb new file mode 100644 index 00000000..8bea12f7 --- /dev/null +++ b/meta-ti-extras/recipes-devtools/gdbc6x/gdbserverproxy-module-drv_git.bb @@ -0,0 +1,36 @@ +DESCRIPTION = "Interface for GDB to commincate witha TI C66X DSP" +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING.txt;md5=75859989545e37968a99b631ef42722e" + +# This package builds a kernel module, use kernel PR as base and append a local +MACHINE_KERNEL_PR:append = "b" +PR = "${MACHINE_KERNEL_PR}" +PV:append = "+git" + +SRC_URI:append = "\ + file://0001-Support-Linux-kernels-v5.15.patch;patchdir=../.. \ + file://0002-Support-Linux-kernels-v6.6.patch;patchdir=../.. \ +" + +S = "${WORKDIR}/git/kernel_module/gdbproxy-mod" + +inherit module + +PLATFORM = "" +PLATFORM:dra7xx = "DRA7xx_PLATFORM" + +EXTRA_OEMAKE = "PLATFORM=${PLATFORM} KVERSION=${KERNEL_VERSION} KERNEL_SRC=${STAGING_KERNEL_DIR}" + +# The following is to prevent an unused configure.ac from erroneously +# triggering the QA check for gettext. +EXTRA_OECONF = "--disable-nls" +do_configure() { + : +} + +COMPATIBLE_MACHINE = "dra7xx" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +include gdbc6x.inc + +KERNEL_MODULE_AUTOLOAD += "gdbserverproxy" diff --git a/meta-ti-extras/recipes-devtools/python-yamllint/python3-yamllint_1.33.0.bb b/meta-ti-extras/recipes-devtools/python-yamllint/python3-yamllint_1.33.0.bb new file mode 100644 index 00000000..4b7bd065 --- /dev/null +++ b/meta-ti-extras/recipes-devtools/python-yamllint/python3-yamllint_1.33.0.bb @@ -0,0 +1,15 @@ +SUMMARY = "A linter for YAML files." +HOMEPAGE = "https://github.com/adrienverge/yamllint" +LICENSE = "GPL-3.0-only" +LIC_FILES_CHKSUM = "file://LICENSE;md5=1ebbd3e34237af26da5dc08a4e440464" + +inherit pypi setuptools3 + +PYPI_PACKAGE = "yamllint" + +SRC_URI[sha256sum] = "2dceab9ef2d99518a2fcf4ffc964d44250ac4459be1ba3ca315118e4a1a81f7d" + +DEPENDS += "${PYTHON_PN}-setuptools-scm-native" +RDEPENDS:${PN} += "${PYTHON_PN}-pyyaml" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-ti-extras/recipes-multimedia/libdce/libdce_3.00.15.00.bb b/meta-ti-extras/recipes-multimedia/libdce/libdce_3.00.15.00.bb new file mode 100644 index 00000000..54f6ff8a --- /dev/null +++ b/meta-ti-extras/recipes-multimedia/libdce/libdce_3.00.15.00.bb @@ -0,0 +1,16 @@ +SUMMARY = "Library for remotely invoking HW accelerated codecs on IVA-HD" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://libdce.h;beginline=1;endline=31;md5=0a398cf815b8b5f31f552266cd453dae" + +inherit autotools pkgconfig + +DEPENDS = "libdrm ti-ipc" + +SRC_URI = "git://git.omapzoom.org/repo/libdce.git;protocol=git;branch=master" +SRCREV = "ec14e1d5cea1ed3c3ea0e2b9cf1fd581acff93e3" + +S = "${WORKDIR}/git" +EXTRA_OECONF += "IPC_HEADERS=${STAGING_INCDIR}/ti/ipc/mm" + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST:ti-soc = "(.*)" diff --git a/meta-ti-extras/recipes-ti/README b/meta-ti-extras/recipes-ti/README new file mode 100644 index 00000000..b32c2842 --- /dev/null +++ b/meta-ti-extras/recipes-ti/README @@ -0,0 +1 @@ +Note: some of the packages in this area are not actively maintained. diff --git a/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes.bb b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes.bb new file mode 100644 index 00000000..ceefe0d6 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes.bb @@ -0,0 +1,26 @@ +DESCRIPTION = "Userspace setup for beaglebone capes" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +PR = "r4" + +inherit allarch + +SRC_URI = "file://cape.service \ + file://cape.sh \ + file://cape-stop.sh \ + " + +do_install() { + install -d ${D}${base_libdir}/systemd/system/ + install -m 0644 ${WORKDIR}/cape.service ${D}${base_libdir}/systemd/system + + install -d ${D}${base_libdir}/systemd/system/basic.target.wants + ln -sf ../cape.service ${D}${base_libdir}/systemd/system/basic.target.wants/ + + install -d ${D}${bindir} + install -m 0755 ${WORKDIR}/cape*.sh ${D}${bindir} +} + +FILES:${PN} += "${base_libdir}/systemd/system" diff --git a/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes/cape-stop.sh b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes/cape-stop.sh new file mode 100755 index 00000000..222a010d --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes/cape-stop.sh @@ -0,0 +1,14 @@ +#!/bin/sh +for eeprom in /sys/bus/i2c/devices/3-005*/eeprom ; do + PARTNUMBER=$(hexdump -e '8/1 "%c"' $eeprom -s 58 -n16) + case $PARTNUMBER in + "BB-BONE-LCD3-01.") + echo "Turning off backlight for LCD3 cape" + i2cset -f -y 1 0x24 0x07 0x00;; + "BB-BONE-LCD4"*) + echo "Turning off backlight for LCD4 cape" + i2cset -f -y 1 0x24 0x07 0x00;; + *) + echo "unknown cape: $PARTNUMBER";; + esac +done diff --git a/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes/cape.service b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes/cape.service new file mode 100644 index 00000000..ce0db719 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes/cape.service @@ -0,0 +1,11 @@ +[Unit] +Description=Beaglebone cape support + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/usr/bin/cape.sh +ExecStop=/usr/bin/cape-stop.sh + +[Install] +WantedBy=basic.target diff --git a/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes/cape.sh b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes/cape.sh new file mode 100755 index 00000000..c279349d --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-capes/cape.sh @@ -0,0 +1,22 @@ +#!/bin/sh +for eeprom in /sys/bus/i2c/devices/3-005*/eeprom ; do + PARTNUMBER=$(hexdump -e '8/1 "%c"' $eeprom -s 58 -n16) + case $PARTNUMBER in + "BB-BONE-LCD3-01.") + echo "Turning on backlight for LCD3 cape" + i2cset -f -y 1 0x24 0x07 0x09 + i2cset -f -y 1 0x24 0x08 0x60;; + "BB-BONE-LCD4"*) + echo "Turning on backlight for LCD4 cape" + i2cset -f -y 1 0x24 0x07 0x09 + i2cset -f -y 1 0x24 0x08 0x60;; + "BB-BONE-WTHR-01.") + echo "Initializing I2C devices" + echo sht21 0x40 > /sys/class/i2c-adapter/i2c-3/new_device + echo bmp085 0x77 > /sys/class/i2c-adapter/i2c-3/new_device + echo tsl2550 0x39 > /sys/class/i2c-adapter/i2c-3/new_device + echo 1 > /sys/bus/i2c/devices/3-0039/operating_mode;; + *) + echo "unknown cape: $PARTNUMBER";; + esac +done diff --git a/meta-ti-extras/recipes-ti/beagleboard/beaglebone-getting-started.bb b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-getting-started.bb new file mode 100644 index 00000000..85ab861d --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/beaglebone-getting-started.bb @@ -0,0 +1,21 @@ +SUMMARY = "BeagleBone Getting Started Guide" + +PR = "r22" + +inherit allarch + +LICENSE = "CC-BY-SA-3.0 & GPL-3.0-or-later & MIT & PD" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=f6f02761e31334c48f7021fb94c89aaa" + +SRCREV = "05bedba192646152b7bc80b0accaea75aef864e5" +SRC_URI = "git://github.com/jadonk/beaglebone-getting-started.git;protocol=https;branch=master" + +S = "${WORKDIR}/git" + +do_install() { + install -d ${D}${datadir}/${PN} + cp -R --no-dereference --preserve=mode,links ${S}/* ${D}${datadir}/${PN} +} + +FILES:${PN} += "${datadir}/${PN}" +INSANE_SKIP:${PN} = "file-rdeps" diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init.bb b/meta-ti-extras/recipes-ti/beagleboard/gadget-init.bb new file mode 100644 index 00000000..3ab00ec3 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init.bb @@ -0,0 +1,60 @@ +DESCRIPTION = "Units to initialize usb gadgets" + +PR = "r19" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +COMPATIBLE_MACHINE = "(ti33x)" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +SRC_URI = "file://storage-gadget-init.service \ + file://network-gadget-init.service \ + file://udhcpd.service \ + file://udhcpd.conf \ + file://bone-gmass-eject.rules \ + file://udhcpd.rules \ + file://g-storage-reinsert.sh \ + file://g-ether-start-service.sh \ + file://g-ether-load.sh \ + file://update-image-info-on-mmcblk0p1.sh \ + " + +do_install() { + install -d ${D}${base_libdir}/systemd/system/basic.target.wants + install -m 0644 ${WORKDIR}/*.service ${D}${base_libdir}/systemd/system + + for i in ${WORKDIR}/storage-gadget-init.service ; do + install -m 0644 $i ${D}${base_libdir}/systemd/system + ln -sf ../$(basename $i) ${D}${base_libdir}/systemd/system/basic.target.wants/ + done + + install -d ${D}${sysconfdir}/udev/rules.d + install -m 0644 ${WORKDIR}/*.rules ${D}${sysconfdir}/udev/rules.d + install -m 0644 ${WORKDIR}/*.conf ${D}${sysconfdir} + + install -d ${D}${bindir} + install -m 0755 ${WORKDIR}/*.sh ${D}${bindir} +} + +PACKAGES =+ "${PN}-storage ${PN}-network ${PN}-udhcpd" + +ALLOW_EMPTY:${PN} = "1" + +FILES:${PN}-storage = "${base_libdir}/systemd/system/storage-gadget-init.service \ + ${base_libdir}/systemd/system/basic.target.wants/storage-gadget-init.service \ + ${bindir}/g-storage-reinsert.sh \ + ${bindir}/update-image-info-on-mmcblk0p1.sh \ + ${sysconfdir}/udev/rules.d/bone-gmass-eject.rules" + +FILES:${PN}-network = "${base_libdir}/systemd/system/network-gadget-init.service \ + ${base_libdir}/systemd/system/basic.target.wants/network-gadget-init.service \ + ${bindir}/g-ether-load.sh \ + ${bindir}/g-ether-start-service.sh \ + ${sysconfdir}/udev/rules.d/udhcpd.rules" + +FILES:${PN}-udhcpd = "${base_libdir}/systemd/system/udhcpd.service \ + ${base_libdir}/systemd/system/basic.target.wants/udhcpd.service \ + ${sysconfdir}/udhcpd.conf" + +RRECOMMENDS:${PN} = "${PN}-storage ${PN}-network ${PN}-udhcpd" diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/bone-gmass-eject.rules b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/bone-gmass-eject.rules new file mode 100644 index 00000000..ee6f93e2 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/bone-gmass-eject.rules @@ -0,0 +1 @@ +SUBSYSTEM=="block",ACTION=="change",KERNEL=="mmcblk0p1",RUN+="/usr/bin/g-ether-start-service.sh" diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/g-ether-load.sh b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/g-ether-load.sh new file mode 100755 index 00000000..f9400649 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/g-ether-load.sh @@ -0,0 +1,46 @@ +#!/bin/sh + +function get_devmem() +{ + /usr/bin/devmem2 $1 | grep ": " | cut -d ":" -f 2|cut -d "x" -f 2 +} + +function hex_to_mac_addr() +{ + addr=$1 + n=0 + mac_addr=$(echo ${addr} | while read -r -n2 c; do + if [ ! -z "$c" ]; then + if [ $n -ne 0 ] ; then + echo -n ":${c}" + else + echo -n "${c}" + fi + fi + n=$(($n+1)) + done) + echo ${mac_addr} +} + +function reverse_bytes() +{ + addr=$1 + New_addr=$(echo ${addr} | while read -r -n2 c; do + if [ ! -z "$c" ]; then + New_addr=${c}${New_addr} + else echo + echo ${New_addr} + fi + done) + echo ${New_addr} +} + +DEVMEM_ADDR_LO=$(get_devmem 0x44e10638|bc) +DEVMEM_ADDR_LO=$(reverse_bytes ${DEVMEM_ADDR_LO}) + +DEVMEM_ADDR_HI=$(get_devmem 0x44e1063C) +DEVMEM_ADDR_HI=$(reverse_bytes ${DEVMEM_ADDR_HI}) + +DEV_ADDR=$(hex_to_mac_addr "${DEVMEM_ADDR_HI}${DEVMEM_ADDR_LO}") + +modprobe g_ether host_addr=${DEV_ADDR} diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/g-ether-start-service.sh b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/g-ether-start-service.sh new file mode 100755 index 00000000..6e73b155 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/g-ether-start-service.sh @@ -0,0 +1,10 @@ +#!/bin/sh +if [ -a /sys/devices/platform/omap/musb-ti81xx/musb-hdrc.0/gadget/lun0/file ] +then + x=$(cat /sys/devices/platform/omap/musb-ti81xx/musb-hdrc.0/gadget/lun0/file) + if [ -z "$x" ] + then + /bin/systemctl stop storage-gadget-init.service + /bin/systemctl start network-gadget-init.service + fi +fi diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/g-storage-reinsert.sh b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/g-storage-reinsert.sh new file mode 100755 index 00000000..d358640a --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/g-storage-reinsert.sh @@ -0,0 +1,4 @@ +#!/bin/sh +/bin/systemctl stop storage-gadget-init.service +/bin/systemctl stop network-gadget-init.service +/bin/systemctl start storage-gadget-init.service diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/network-gadget-init.service b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/network-gadget-init.service new file mode 100644 index 00000000..0ee29147 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/network-gadget-init.service @@ -0,0 +1,11 @@ +[Unit] +Description=Start USB Ethernet gadget +Conflicts=storage-gadget-init.service + +[Service] +RemainAfterExit=yes +ExecStart=/usr/bin/g-ether-load.sh +ExecStop=/sbin/rmmod g_ether + +[Install] +WantedBy=gether.target diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/storage-gadget-init.service b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/storage-gadget-init.service new file mode 100644 index 00000000..9a8513e8 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/storage-gadget-init.service @@ -0,0 +1,11 @@ +[Unit] +Description=Start usb mass storage gadget +After=dev-mmcblk0p1.device + +[Service] +RemainAfterExit=yes +ExecStart=/sbin/modprobe g_mass_storage file=/dev/mmcblk0p1 cdrom=0 stall=0 removable=1 nofua=1 +ExecStop=/sbin/rmmod g_mass_storage + +[Install] +WantedBy=basic.target diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/udhcpd.conf b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/udhcpd.conf new file mode 100644 index 00000000..3bcf00f0 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/udhcpd.conf @@ -0,0 +1,5 @@ +start 192.168.7.1 +end 192.168.7.1 +interface usb0 +max_leases 1 +option subnet 255.255.255.252 diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/udhcpd.rules b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/udhcpd.rules new file mode 100644 index 00000000..db65f9ac --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/udhcpd.rules @@ -0,0 +1,2 @@ +SUBSYSTEM=="net",ACTION=="add",KERNEL=="usb0",RUN+="/sbin/ifconfig usb0 192.168.7.2 netmask 255.255.255.252",RUN+="/bin/systemctl start udhcpd.service" +SUBSYSTEM=="net",ACTION=="remove",KERNEL=="usb0",RUN+="/bin/systemctl stop udhcpd.service" diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/udhcpd.service b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/udhcpd.service new file mode 100644 index 00000000..1f4ac688 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/udhcpd.service @@ -0,0 +1,12 @@ +[Unit] +Description=DHCP server for USB0 network gadget +After=dev-usb0.device +Conflicts=storage-gadget-init.service + +[Service] +ExecStart=/usr/sbin/udhcpd -f -S /etc/udhcpd.conf +ExecStop=/bin/kill -TERM $MAINPID +KillSignal=SIGINT + +[Install] +WantedBy=gether.target diff --git a/meta-ti-extras/recipes-ti/beagleboard/gadget-init/update-image-info-on-mmcblk0p1.sh b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/update-image-info-on-mmcblk0p1.sh new file mode 100755 index 00000000..a4daf734 --- /dev/null +++ b/meta-ti-extras/recipes-ti/beagleboard/gadget-init/update-image-info-on-mmcblk0p1.sh @@ -0,0 +1,37 @@ +#!/bin/sh +mount /dev/mmcblk0p1 /mnt +echo "Image info snapshot" > /mnt/info.txt + +echo >> /mnt/info.txt +echo "/etc/angstrom-version:" >> /mnt/info.txt +cat /etc/angstrom-version >> /mnt/info.txt + +echo >> /mnt/info.txt +echo "/proc/cpuinfo:" >> /mnt/info.txt +cat /proc/cpuinfo >> /mnt/info.txt + +echo >> /mnt/info.txt +echo "uname -a:" >> /mnt/info.txt +uname -a >> /mnt/info.txt + +echo >> /mnt/info.txt +echo "/proc/cmdline:" >> /mnt/info.txt +cat /proc/cmdline >> /mnt/info.txt + +echo >> /mnt/info.txt +echo "ifconfig:" >> /mnt/info.txt +ifconfig >> /mnt/info.txt + +echo >> /mnt/info.txt +echo "/etc/angstrom-build-info:" >> /mnt/info.txt +cat /etc/angstrom-build-info >> /mnt/info.txt + +echo >> /mnt/info.txt +echo "/etc/image-version-info:" >> /mnt/info.txt +cat /etc/image-version-info >> /mnt/info.txt + +echo >> /mnt/info.txt +echo "opkg list-installed:" >> /mnt/info.txt +opkg list-installed >> /mnt/info.txt + +umount /mnt diff --git a/meta-ti-extras/recipes-ti/bios/ti-sysbios.inc b/meta-ti-extras/recipes-ti/bios/ti-sysbios.inc new file mode 100644 index 00000000..f31decec --- /dev/null +++ b/meta-ti-extras/recipes-ti/bios/ti-sysbios.inc @@ -0,0 +1,28 @@ +DESCRIPTION = "TI SYS/BIOS v6 Kernel" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/bios/sysbios" +SECTION = "devel" +LICENSE = "BSD-3-Clause" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc +require ../includes/ti-eula-unpack.inc + +S = "${WORKDIR}/bios_${PV}" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/bios/sysbios/${PV}/exports/bios_setuplinux_${PV}.bin;name=sysbiosbin" +BINFILE="bios_${PV}.bin" +TI_BIN_UNPK_CMDS="Y: q:workdir:Y" + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${SYSBIOS_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${SYSBIOS_INSTALL_DIR_RECIPE} +} + +ALLOW_EMPTY:${PN} = "1" +FILES:${PN}-dev += "${SYSBIOS_INSTALL_DIR_RECIPE}" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INSANE_SKIP:${PN}-dev = "arch ldflags staticdev file-rdeps" diff --git a/meta-ti-extras/recipes-ti/bios/ti-sysbios_6.76.03.01.bb b/meta-ti-extras/recipes-ti/bios/ti-sysbios_6.76.03.01.bb new file mode 100644 index 00000000..d242510f --- /dev/null +++ b/meta-ti-extras/recipes-ti/bios/ti-sysbios_6.76.03.01.bb @@ -0,0 +1,16 @@ +require recipes-ti/bios/ti-sysbios.inc + +PE = "1" +PV = "6_76_03_01" +PR = "r0" + +LIC_FILES_CHKSUM = "file://manifest_bios_${PV}.html;md5=5cf40699c51b26d36fc01647c0b27fb1" + +SRC_URI[sysbiosbin.md5sum] = "647243209d66d5dd35503b0ec5a84ab9" +SRC_URI[sysbiosbin.sha256sum] = "b762b7f2343d26d367f952488e529046785128005158cc921c3baef08e97116a" + +TI_BIN_UNPK_CMDS = "" +TI_BIN_UNPK_ARGS = "--mode unattended --prefix ${WORKDIR}" + +BINFILE = "bios_${PV}.run" +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/bios/sysbios/${PV}/exports/${BINFILE};name=sysbiosbin" diff --git a/meta-ti-extras/recipes-ti/codec-engine/ti-codec-engine_3.24.00.08.bb b/meta-ti-extras/recipes-ti/codec-engine/ti-codec-engine_3.24.00.08.bb new file mode 100644 index 00000000..2e25ea76 --- /dev/null +++ b/meta-ti-extras/recipes-ti/codec-engine/ti-codec-engine_3.24.00.08.bb @@ -0,0 +1,29 @@ +DESCRIPTION = "Codec Engine for TI ARM/DSP processors" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ce" +SECTION = "devel" +LICENSE = "BSD-3-Clause" + +require recipes-ti/includes/ti-paths.inc +require recipes-ti/includes/ti-staging.inc + +PV = "3_24_00_08" +PR = "r0" + +LIC_FILES_CHKSUM = "file://codec_engine_${PV}_Manifest.html;md5=de7d9c2594a6f3868e42a33b6a748ce7" + +SRC_URI[cetarball.md5sum] = "d66a8ccbd6cdfe9f735af9f4a07e2b9b" +SRC_URI[cetarball.sha256sum] = "ed7b7399903bbf76af06ee6457836f344ad75b903618339bae82b3967f27ffa1" + +S = "${WORKDIR}/codec_engine_${PV}" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ce/${PV}/exports/codec_engine_${PV},lite.tar.gz;name=cetarball " + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + # Install/Stage the Source Tree + install -d ${D}${CE_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${CE_INSTALL_DIR_RECIPE} +} + +ALLOW_EMPTY:${PN} = "1" +FILES:${PN}-dev += "${CE_INSTALL_DIR_RECIPE}" diff --git a/meta-ti-extras/recipes-ti/ctoolslib/libaet_git.bb b/meta-ti-extras/recipes-ti/ctoolslib/libaet_git.bb new file mode 100644 index 00000000..400221f9 --- /dev/null +++ b/meta-ti-extras/recipes-ti/ctoolslib/libaet_git.bb @@ -0,0 +1,38 @@ +SUMMARY = "TI Emulation CTools AET library" +DESCRIPTION = "The AETLIB library provides programmatic access to the Advanced Event Triggering capability on C6x processor cores" + +LICENSE = "BSD-3-Clause" + +PV = "4.19.0.0" + +LIC_FILES_CHKSUM = "file://../ctoolslib_manifest.html;md5=b7dd369a2e07ef9a71795ee5a9bd01bd" + +SRC_URI = "git://git.ti.com/git/sdo-emu/ctoolslib.git;protocol=https;branch=opencl_aetlib_build" +SRCREV = "de7954abab0f0caa8a2c7b53095c30226d901a31" + +DEPENDS = "ti-cgt6x-native" +PR = "r0" + +S = "${WORKDIR}/git/aet" + +DEVICE="" +DEVICE:dra7xx = "DRA7xx" + +EXTRA_OEMAKE = "C6X_C_DIR=${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x/include" + +do_install() { + install -d ${D}${datadir}/ti/ctoolslib/aet + install -d ${D}${datadir}/ti/ctoolslib/aet/include + install -d ${D}${datadir}/ti/ctoolslib/aet/lib + cp -rP --preserve=mode,links,timestamps --no-preserve=ownership ${S}/include/* ${D}${datadir}/ti/ctoolslib/aet/include/ + install -m 0644 ${S}/build/c66/libaet.ae66 ${D}${datadir}/ti/ctoolslib/aet/lib/ +} + +COMPATIBLE_MACHINE = "dra7xx" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +FILES:${PN}-dev += "\ + ${datadir}/ti/ctoolslib/aet \ +" + +ALLOW_EMPTY:${PN} = "1" diff --git a/meta-ti-extras/recipes-ti/devtools/gcc-arm-baremetal_7-2018-q2-update.bb b/meta-ti-extras/recipes-ti/devtools/gcc-arm-baremetal_7-2018-q2-update.bb new file mode 100644 index 00000000..64bac240 --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/gcc-arm-baremetal_7-2018-q2-update.bb @@ -0,0 +1,29 @@ +DESCRIPTION = "Baremetal GCC for ARM" +LICENSE = "GPL-3.0-with-GCC-exception & GPL-3.0-only" + +LIC_FILES_CHKSUM = "file://share/doc/gcc-arm-none-eabi/license.txt;md5=f77466c63f5787f4bd669c402aabe061" + +require recipes-ti/includes/ti-paths.inc + +SRC_URI = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/7-2018q2/gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2;name=gcc-arm-none" + +SRC_URI[gcc-arm-none.md5sum] = "299ebd3f1c2c90930d28ab82e5d8d6c0" +SRC_URI[gcc-arm-none.sha256sum] = "bb17109f0ee697254a5d4ae6e5e01440e3ea8f0277f2e8169bf95d07c7d5fe69" + +S = "${WORKDIR}/gcc-arm-none-eabi-7-2018-q2-update" + +# only x86_64 is supported +COMPATIBLE_HOST = "x86_64.*-linux" +COMPATIBLE_HOST:class-target = "null" + +do_install() { + install -d ${D}${GCC_ARM_NONE_TOOLCHAIN_RECIPE} + cp -r ${S}/. ${D}${GCC_ARM_NONE_TOOLCHAIN_RECIPE} +} + +FILES:${PN} = "${GCC_ARM_NONE_TOOLCHAIN_RECIPE}/*" + +INSANE_SKIP:${PN} = "already-stripped libdir staticdev build-deps file-rdeps" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-ti-extras/recipes-ti/devtools/ti-cg-xml_2.61.00.bb b/meta-ti-extras/recipes-ti/devtools/ti-cg-xml_2.61.00.bb new file mode 100644 index 00000000..c7608a76 --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/ti-cg-xml_2.61.00.bb @@ -0,0 +1,40 @@ +DESCRIPTION = "TI CG_XML" +HOMEPAGE = "http://software-dl.ti.com/ccs/non-esd/releases/other/applications_packages/cg_xml/index.htm" +SECTION = "devel" +LICENSE = "BSD-3-Clause" + +require recipes-ti/includes/ti-paths.inc +require recipes-ti/includes/ti-staging.inc +require recipes-ti/includes/ti-unpack.inc + +PV = "2.61.00" +PE = "1" +S = "${WORKDIR}/cg_xml_${PV}" + +SRC_URI = "\ + http://software-dl.ti.com/ccs/non-esd/releases/other/applications_packages/cg_xml/cg_xml_v${@'${PV}'.replace('.','_')}/cgxml-${PV}-linux-installer.run;name=cgxmlbin_linux \ +" +LIC_FILES_CHKSUM = "file://cg_xml_${PV}_Manifest.pdf;md5=fc02a39748ba50373f32b2f4a5e3a684" + +SRC_URI[cgxmlbin_linux.md5sum] = "6ce60caa97bbf15158d806fb062fadff" +SRC_URI[cgxmlbin_linux.sha256sum] = "da77cb10bd3d5de89e27e4ce8f4408a2e50775c8980225f9a828ddc242bb81f9" + +BINFILE="cgxml-${PV}-linux-installer.run" +TI_BIN_UNPK_CMDS="" +TI_BIN_UNPK_ARGS="--prefix ${S} --mode unattended" + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${CG_XML_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${CG_XML_INSTALL_DIR_RECIPE} +} + +FILES:${PN} += "${CG_XML_INSTALL_DIR_RECIPE}" + +INSANE_SKIP:${PN} = "arch ldflags file-rdeps" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-ti-extras/recipes-ti/devtools/ti-cgt-arm_18.12.5.bb b/meta-ti-extras/recipes-ti/devtools/ti-cgt-arm_18.12.5.bb new file mode 100644 index 00000000..b7b6d9b1 --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/ti-cgt-arm_18.12.5.bb @@ -0,0 +1,44 @@ +SUMMARY = "TI ARM Code Generation Tools" +HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm" +LICENSE = "(TI-TSPA & Thai-Open-Source-Software-Center) & BSD-3-Clause & BSL-1.0 & Patrick-Powell & AFL-3.0 & MIT & BSD-2-Clause & PD & BSD-4-Clause" + +LIC_FILES_CHKSUM = "file://ti-cgt-arm_${PV}.LTS/README.txt;md5=79631eb21b2e5b7190cd3ff1dfd41108" + +require recipes-ti/includes/ti-unpack.inc +require recipes-ti/includes/ti-staging.inc +require recipes-ti/includes/ti-paths.inc + +S = "${WORKDIR}/ti-cgt-arm-${PV}" + +PE = "1" +PR = "r0" + +SRC_URI = "http://software-dl.ti.com/codegen/esd/cgt_public_sw/TMS470/${PV}.LTS/${BINFILE};name=${BINFILE_NAME}" + +BINFILE = "ti_cgt_tms470_${PV}.LTS_linux_installer_x86.bin" +TI_BIN_UNPK_ARGS = "--prefix ${S}" +TI_BIN_UNPK_CMDS = "" + +# only x86_64 is supported +COMPATIBLE_HOST = "x86_64.*-linux" +COMPATIBLE_HOST:class-target = "null" + +do_install() { + install -d ${D}${M4_TOOLCHAIN_INSTALL_DIR_RECIPE} + cp -r ${S}/ti-cgt-arm*/. ${D}${M4_TOOLCHAIN_INSTALL_DIR_RECIPE} +} + +SRC_URI[cgt_arm_installer.md5sum] = "e9e668332cf86c965b4da9d1d488426b" +SRC_URI[cgt_arm_installer.sha256sum] = "da976143128c619a278cb4214a4295c409d100f9e65ad2f4d0d1039db7cf98f4" + +BINFILE_NAME = "cgt_arm_installer" + +FILES:${PN} += "${M4_TOOLCHAIN_INSTALL_DIR_RECIPE}" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +INSANE_SKIP:${PN} += "arch staticdev file-rdeps" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-ti-extras/recipes-ti/devtools/ti-cgt-pru_2.3.3.bb b/meta-ti-extras/recipes-ti/devtools/ti-cgt-pru_2.3.3.bb new file mode 100644 index 00000000..c96113fe --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/ti-cgt-pru_2.3.3.bb @@ -0,0 +1,49 @@ +DESCRIPTION = "TI PRU Code Generation Tools" +HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm" +LICENSE = "(TI-TSPA & Thai-Open-Source-Software-Center) & BSD-3-Clause & BSL-1.0 & Hewlett-Packard & AFL-3.0 & MIT & BSD-2-Clause & PD" + +LIC_FILES_CHKSUM = "file://ti-cgt-pru_${PV}/PRU_Code_Generation_Tools_2.3.x_manifest.html;md5=e22f9d8240f7cca0c0aa5242d9ffa5bc" +LIC_FILES_CHKSUM:class-target = "file://usr/share/doc/ti/cgt-pru/PRU_Code_Generation_Tools_2.3.x_manifest.html;md5=e22f9d8240f7cca0c0aa5242d9ffa5bc" + +require recipes-ti/includes/ti-paths.inc +require recipes-ti/includes/ti-unpack.inc + +BINFILE = "ti_cgt_pru_${PV}_linux_installer_x86.bin" +BINFILE_NAME = "cgt-pru-x86" +TI_BIN_UNPK_ARGS = "--prefix ${S}" +TI_BIN_UNPK_CMDS = "" + +BINFILE:class-target = "ti_cgt_pru_${PV}_armlinuxa8hf_busybox_installer.sh" +BINFILE_NAME:class-target = "cgt-pru-arm" + +SRC_URI = "http://software-dl.ti.com/codegen/esd/cgt_public_sw/PRU/${PV}/${BINFILE};name=${BINFILE_NAME}" + +SRC_URI[cgt-pru-x86.md5sum] = "abb76fac986993aafaf467915985ec4f" +SRC_URI[cgt-pru-x86.sha256sum] = "1f1405167214f2c0ef848591b17a7799fdcd9f55f11bc90db9ace3490d426215" + +SRC_URI[cgt-pru-arm.md5sum] = "648a6d7d8162fd6a89f381c7b974e6b0" +SRC_URI[cgt-pru-arm.sha256sum] = "8390cb77b46b728ce2940595b81406f76d86dfed58c21258e3206a7c1232ccf2" + +do_install() { + install -d ${D}${TI_CGT_PRU_INSTALL_DIR_RECIPE} + cp -r ${S}/ti-cgt-pru_${PV}/. \ + ${D}${TI_CGT_PRU_INSTALL_DIR_RECIPE}/ +} + +do_install:class-target() { + ${WORKDIR}/${BINFILE} --prefix ${D} +} + +FILES:${PN} += "${datadir}/ti/*" + +FILES:${PN}-dbg = "${TI_CGT_PRU_INSTALL_DIR_RECIPE}/bin/.debug \ + ${TI_CGT_PRU_INSTALL_DIR_RECIPE}/lib/.debug \ +" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +INSANE_SKIP:${PN} += "arch staticdev already-stripped file-rdeps" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-ti-extras/recipes-ti/devtools/ti-cgt470.inc b/meta-ti-extras/recipes-ti/devtools/ti-cgt470.inc new file mode 100644 index 00000000..f0992aa7 --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/ti-cgt470.inc @@ -0,0 +1,24 @@ +DESCRIPTION = "TI ARM Code Generation Tools" +HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/CodeGenerationTools.htm" +SECTION = "devel" +LICENSE = "TI" + +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=62f46f1125a152a2e213b414db7ac600" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc +require ../includes/ti-eula-unpack.inc + +S = "${WORKDIR}/cgt470_${PV}" + +SRC_URI = "http://install.source.dir.local/ti_cgt_tms470_${PVwithdots}_setup_linux_x86.bin;name=cgt470bin" + +BINFILE="ti_cgt_tms470_${PVwithdots}_setup_linux_x86.bin" +TI_BIN_UNPK_CMDS="Y:qY:workdir: : " +TI_BIN_UNPK_WDEXT="/cgt470_${PV}" + +do_install() { + install -d ${D}${CODEGEN_ARM_INSTALL_DIR_RECIPE} + cp -pPrf ${S}/* ${D}${CODEGEN_ARM_INSTALL_DIR_RECIPE} +} + diff --git a/meta-ti-extras/recipes-ti/devtools/ti-cgt470_4.6.6.bb b/meta-ti-extras/recipes-ti/devtools/ti-cgt470_4.6.6.bb new file mode 100644 index 00000000..6ff2cc48 --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/ti-cgt470_4.6.6.bb @@ -0,0 +1,8 @@ +require ti-cgt470.inc + +PV = "4_6_6" +PVwithdots = "4.6.6" + +SRC_URI[cgt470bin.md5sum] = "29a316dc6b8c8c3a53e0d6c956acb62b" +SRC_URI[cgt470bin.sha256sum] = "a17bc7139f450672503c932ef53b00c425522890e031b4a7c9135fdf90815740" + diff --git a/meta-ti-extras/recipes-ti/devtools/ti-cgt6x-7_7.4.16.bb b/meta-ti-extras/recipes-ti/devtools/ti-cgt6x-7_7.4.16.bb new file mode 100644 index 00000000..a7de8e38 --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/ti-cgt6x-7_7.4.16.bb @@ -0,0 +1,46 @@ +SUMMARY = "TI DSP Code Generation Tools" +DESCRIPTION = "Texas Instrument (TI) Code Generation Tools are custom \ +utilities targeted for TI embedded processors. This Digital Signal \ +Processor (DSP) suite contains tools needed to create and debug \ +applications for the C6000 DSP family. This includes tools such as: \ +compiler, linker, assembler, etc. This also includes C runtime \ +libraries and standard header files needed to produce a working DSP application." + +HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm" +LICENSE = "TI-TSPA" + +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b6311962635a4f15630e36ec2d875eca" + +S = "${WORKDIR}/c6000_7.4.16" + +require recipes-ti/includes/ti-paths.inc +require recipes-ti/includes/ti-unpack.inc + +BINFILE = "ti_cgt_c6000_7.4.16_linux_installer_x86.bin" +BINFILE_NAME = "cgt6x_7.4.16_x86_installer" +TI_BIN_UNPK_ARGS = "--prefix ${WORKDIR} --mode unattended" +TI_BIN_UNPK_CMDS="" + +SRC_URI = "http://install.source.dir.local/${BINFILE};name=${BINFILE_NAME}" + +SRC_URI[cgt6x_7.4.16_x86_installer.md5sum] = "21ca55c5b1f6b2d8d4fb7570d5eb5513" +SRC_URI[cgt6x_7.4.16_x86_installer.sha256sum] = "baa0d1ef20397383f99f45068a6d160963a01419d42fbbb851263b54c91df82f" + +# only x86_64 is supported +COMPATIBLE_HOST = "x86_64.*-linux" +COMPATIBLE_HOST:class-target = "null" + +do_install() { + install -d ${D}/${TI_CGT6X_7_INSTALL_DIR_RECIPE} + cp -rP --preserve=mode,links,timestamps --no-preserve=ownership ${WORKDIR}/c6000_7.4.16/. ${D}/${TI_CGT6X_7_INSTALL_DIR_RECIPE} +} + +FILES:${PN} += "${TI_CGT6X_7_INSTALL_DIR_RECIPE}" + +INSANE_SKIP:${PN} += "arch staticdev textrel" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-ti-extras/recipes-ti/devtools/ti-cgt6x_8.3.2.bb b/meta-ti-extras/recipes-ti/devtools/ti-cgt6x_8.3.2.bb new file mode 100644 index 00000000..fd34657a --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/ti-cgt6x_8.3.2.bb @@ -0,0 +1,107 @@ +DESCRIPTION = "TI DSP Code Generation Tools" +HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm" +LICENSE = "(TI-TSPA & Thai-Open-Source-Software-Center) & BSD-3-Clause & BSL-1.0 & Patrick-Powell & AFL-3.0 & MIT & BSD-2-Clause & PD" + +LIC_FILES_CHKSUM = "file://ti-cgt-c6000_${PV}/C6000CodeGenerationTools_8.3.x_manifest.html;md5=d06c6f9acebf78df4108a8535396e9f1" +LIC_FILES_CHKSUM:class-target = "file://usr/share/doc/ti/cgt-c6x/C6000CodeGenerationTools_8.3.x_manifest.html;md5=d06c6f9acebf78df4108a8535396e9f1" + +PE = "1" + +require recipes-ti/includes/ti-unpack.inc + +COMPATIBLE_HOST:class-target = "arm.*-linux" + +# For now we only have hardfp version for target class +python __anonymous() { + c = d.getVar("CLASSOVERRIDE") + + if c == "class-target": + tunes = d.getVar("TUNE_FEATURES") + if not tunes: + return + pkgn = d.getVar("PN") + pkgv = d.getVar("PV") + if "callconvention-hard" not in tunes: + bb.warn("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv)) + raise bb.parse.SkipPackage("%s-%s ONLY supports hardfp mode for now" % (pkgn, pkgv)) +} + +BINFILE = "ti_cgt_c6000_${PV}_linux_installer_x86.bin" +BINFILE_NAME = "cgt6x_x86_installer" +TI_BIN_UNPK_ARGS = "--prefix ${S}" +TI_BIN_UNPK_CMDS = "" + +BINFILE:class-target = "ti_cgt_c6000_${PV}_armlinuxa8hf_busybox_installer.sh" +BINFILE_NAME:class-target = "cgt6x_arm_installer" + +SRC_URI = "http://software-dl.ti.com/codegen/esd/cgt_public_sw/C6000/${PV}/${BINFILE};name=${BINFILE_NAME}" + +SRC_URI[cgt6x_x86_installer.md5sum] = "f1f534e6a4bdee6df39e8d0cb458d161" +SRC_URI[cgt6x_x86_installer.sha256sum] = "1fba2a8f5532b33a23677771d686a866171ce7a0e567fed50d900d0ecd2e17e6" + +SRC_URI[cgt6x_arm_installer.md5sum] = "425d82308e71202ad004a36b7ec3cec9" +SRC_URI[cgt6x_arm_installer.sha256sum] = "70c387ddde379194fed712087be6cb0ca5f4f0e65d7f29bd7462c38ee011928f" + +do_install() { + install -d ${D}${bindir} + for binfile in ${S}/ti-cgt-c6000_${PV}/bin/*; do + install -m 755 ${binfile} ${D}${bindir} + done + + install -d ${D}${datadir}/ti/cgt-c6x/bin + for binfile in ${S}/ti-cgt-c6000_${PV}/bin/*; do + install -m 755 ${binfile} ${D}${datadir}/ti/cgt-c6x/bin + done + + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + cp ${CP_ARGS} ${S}/ti-cgt-c6000_${PV}/include ${D}${datadir}/ti/cgt-c6x/include + + install -d ${D}${datadir}/ti/cgt-c6x/lib + for libfile in ${S}/ti-cgt-c6000_${PV}/lib/*.a; do + install -m 644 ${libfile} ${D}${datadir}/ti/cgt-c6x/lib + done + + for libfile in ${S}/ti-cgt-c6000_${PV}/lib/*.cmd; do + install -m 644 ${libfile} ${D}${datadir}/ti/cgt-c6x/lib + done + + for libfile in ${S}/ti-cgt-c6000_${PV}/lib/*.lib; do + install -m 644 ${libfile} ${D}${datadir}/ti/cgt-c6x/lib + done + + install -d ${D}${datadir}/man/man1 + for manfile in ${S}/ti-cgt-c6000_${PV}/man/man1/*; do + if [ -e ${manfile} ]; then + install -m 644 ${manfile} ${D}${datadir}/man/man1 + fi + done + + install -d ${D}${datadir}/doc/ti/cgt-c6x + for docfile in ${S}/ti-cgt-c6000_${PV}/*.txt; do + install -m 644 ${docfile} ${D}${datadir}/doc/ti/cgt-c6x + done + + for docfile in ${S}/ti-cgt-c6000_${PV}/*.html; do + install -m 644 ${docfile} ${D}${datadir}/doc/ti/cgt-c6x + done + + for docfile in ${S}/ti-cgt-c6000_${PV}/*.spdx; do + install -m 644 ${docfile} ${D}${datadir}/doc/ti/cgt-c6x + done + +} + +do_install:class-target() { + ${WORKDIR}/${BINFILE} --prefix ${D} +} + +FILES:${PN} += "${datadir}/ti/*" + +FILES:${PN}-dbg += "${datadir}/ti/cgt-c6x/bin/.debug" + +INSANE_SKIP:${PN} += "staticdev" +INHIBIT_PACKAGE_STRIP_FILES = "${PKGD}${datadir}/ti/cgt-c6x/lib/libc.a" + +BBCLASSEXTEND = "native nativesdk" + +COMPATIBLE_MACHINE:class-target = "(ti-soc)" diff --git a/meta-ti-extras/recipes-ti/devtools/ti-cgt7x_1.2.0.bb b/meta-ti-extras/recipes-ti/devtools/ti-cgt7x_1.2.0.bb new file mode 100644 index 00000000..b45b52a3 --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/ti-cgt7x_1.2.0.bb @@ -0,0 +1,49 @@ +SUMMARY = "TI DSP Code Generation Tools" +DESCRIPTION = "Texas Instruments (TI) Code Generation Tools are custom \ +utilities targeted for TI embedded processors. This Digital Signal \ +Processor (DSP) suite contains tools needed to create and debug \ +applications for the C7000 DSP family. This includes tools such as: \ +compiler, linker, assembler, etc. This also includes C runtime \ +libraries and standard header files needed to produce a working DSP application." +HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm" +LICENSE = "(TI-TSPA & Thai-Open-Source-Software-Center) & BSD-3-Clause & BSL-1.0 & Patrick-Powell & AFL-3.0 & MIT & BSD-2-Clause & PD" + +LIC_FILES_CHKSUM = "file://ti-cgt-c7000_${PV}.STS/C7000_Code_Generation_Tools_1.x_manifest.html;md5=f1156d241d104c281bc64a6ec8eadc64" + +require recipes-ti/includes/ti-unpack.inc +require recipes-ti/includes/ti-paths.inc + +# only x86_64 is supported +COMPATIBLE_HOST = "x86_64.*-linux" +COMPATIBLE_HOST:class-target = "null" + +PE = "1" + +BINFILE = "ti_cgt_c7000_${PV}.STS_linux_installer_x86.bin" +BINFILE_NAME = "cgt7x_x86_installer" + +SRC_URI = "http://software-dl.ti.com/codegen/esd/cgt_public_sw/C7000/${PV}.STS/${BINFILE};name=${BINFILE_NAME}" + +TI_BIN_UNPK_ARGS = "--prefix ${S}" +TI_BIN_UNPK_CMDS = "" + +SRC_URI[cgt7x_x86_installer.md5sum] = "813840908f333dd2a31f92edec71c1fb" +SRC_URI[cgt7x_x86_installer.sha256sum] = "21379811a8857489f72ca8ec45a46eb086ced0bdbb58e78f73a86e63984ab2f5" + +S = "${WORKDIR}/c7000_${PV}" + +do_install() { + install -d ${D}/${TI_CGT7X_INSTALL_DIR_RECIPE} + cp -rP --preserve=mode,links,timestamps --no-preserve=ownership ${WORKDIR}/c7000_${PV}/ti-cgt-c7000_${PV}.STS/. ${D}/${TI_CGT7X_INSTALL_DIR_RECIPE} +} + + +FILES:${PN} += "${TI_CGT7X_INSTALL_DIR_RECIPE}" + +INSANE_SKIP:${PN} += "arch staticdev textrel" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-ti-extras/recipes-ti/devtools/ti-xdctools_3.55.02.22.bb b/meta-ti-extras/recipes-ti/devtools/ti-xdctools_3.55.02.22.bb new file mode 100644 index 00000000..b1361804 --- /dev/null +++ b/meta-ti-extras/recipes-ti/devtools/ti-xdctools_3.55.02.22.bb @@ -0,0 +1,83 @@ +DESCRIPTION = "TI XDCtools (RTSC - Real Time Software Components - http://rtsc.eclipse.org)" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/rtsc" +SECTION = "devel" +LICENSE = "BSD-3-Clause & GPL-2.0-only" + +require recipes-ti/includes/ti-paths.inc +require recipes-ti/includes/ti-staging.inc + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + + install -d ${D}${XDC_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${XDC_INSTALL_DIR_RECIPE} +} + +FILES:${PN}-dev = "${XDC_INSTALL_DIR_RECIPE}" + +BBCLASSEXTEND = "native nativesdk" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INSANE_SKIP:${PN}-dev = "libdir dev-elf arch file-rdeps" + +# Prevent internal libs from getting picked up +PRIVATE_LIBS = " \ +libncdb.so \ +libcdb.so \ +libjavaplugin_oji.so \ +libjavaplugin_jni.so \ +libjsound.so \ +libinstrument.so \ +libjawt.so \ +libzip.so \ +libjava_crw_demo.so \ +libjavaplugin_nscp_gcc29.so \ +libhprof.so \ +libcmm.so \ +libjdwp.so \ +libmlib_image.so \ +libjpeg.so \ +libverify.so \ +libjavaplugin_nscp.so \ +libmanagement.so \ +libunpack.so \ +librmi.so \ +libJdbcOdbc.so \ +libawt.so \ +libnet.so \ +libjaas_unix.so \ +libnio.so \ +libdcpr.so \ +libioser12.so \ +libjsoundalsa.so \ +libjava.so \ +libfontmanager.so \ +libdt_socket.so \ +libmawt.so \ +libjvm.so \ +libhpi.so \ +lib.so \ +libcairo.so.2 \ +libjli.so \ +libawt_xawt.so \ +" + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST:ti-soc = "(.*)" +COMPATIBLE_HOST:class-native = "(.*)" +COMPATIBLE_HOST:class-nativesdk = "(.*)" + +S = "${WORKDIR}/xdctools_${PV}_core" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/rtsc/${PV}/exports/xdccore/xdctools_${PV}_core_linux.zip;name=xdczip" + +PE = "1" +PV = "3_55_02_22" +PR = "r0" + +LIC_FILES_CHKSUM = "file://docs/license/xdc/shelf/package.html;beginline=1;endline=140;md5=2e742b9757bc9ce0241aadba9f627ab8" + +SRC_URI[xdczip.md5sum] = "bb9154d677ce4724a5eac73817b23a0f" +SRC_URI[xdczip.sha256sum] = "bf90dfbbe298458c736d81d5631db25b335e79146923a4a50fab217e02723e7b" diff --git a/meta-ti-extras/recipes-ti/dsplib/dsplib-c64xp_git.bb b/meta-ti-extras/recipes-ti/dsplib/dsplib-c64xp_git.bb new file mode 100644 index 00000000..1550a538 --- /dev/null +++ b/meta-ti-extras/recipes-ti/dsplib/dsplib-c64xp_git.bb @@ -0,0 +1,6 @@ +include dsplib.inc + +MATHLIB_INSTALL_DIR = "${MATHLIB_C64P_INSTALL_DIR}/packages" +DSPLIB_INSTALL_DIR_RECIPE = "${DSPLIB_C64P_INSTALL_DIR_RECIPE}" +DSPLIB_INSTALL_DIR = "${DSPLIB_C64P_INSTALL_DIR}" +DSPLIB_BUILD_TARGET = "c64Px" diff --git a/meta-ti-extras/recipes-ti/dsplib/dsplib-c66x_git.bb b/meta-ti-extras/recipes-ti/dsplib/dsplib-c66x_git.bb new file mode 100644 index 00000000..b28d8df6 --- /dev/null +++ b/meta-ti-extras/recipes-ti/dsplib/dsplib-c66x_git.bb @@ -0,0 +1,8 @@ +include dsplib.inc + +MATHLIB_INSTALL_DIR = "${MATHLIB_C66_INSTALL_DIR}/packages" +DSPLIB_INSTALL_DIR_RECIPE = "${DSPLIB_C66_INSTALL_DIR_RECIPE}" +DSPLIB_INSTALL_DIR = "${DSPLIB_C66_INSTALL_DIR}" +DSPLIB_BUILD_TARGET = "c66x" + +DEPENDS += "mathlib-c66x" diff --git a/meta-ti-extras/recipes-ti/dsplib/dsplib-c674x_git.bb b/meta-ti-extras/recipes-ti/dsplib/dsplib-c674x_git.bb new file mode 100644 index 00000000..47974ea1 --- /dev/null +++ b/meta-ti-extras/recipes-ti/dsplib/dsplib-c674x_git.bb @@ -0,0 +1,8 @@ +include dsplib.inc + +MATHLIB_INSTALL_DIR = "${MATHLIB_C674_INSTALL_DIR}/packages" +DSPLIB_INSTALL_DIR_RECIPE = "${DSPLIB_C674_INSTALL_DIR_RECIPE}" +DSPLIB_INSTALL_DIR = "${DSPLIB_C674_INSTALL_DIR}" +DSPLIB_BUILD_TARGET = "c674x" + +DEPENDS += "mathlib-c674x" diff --git a/meta-ti-extras/recipes-ti/dsplib/dsplib.inc b/meta-ti-extras/recipes-ti/dsplib/dsplib.inc new file mode 100644 index 00000000..6ebc3b34 --- /dev/null +++ b/meta-ti-extras/recipes-ti/dsplib/dsplib.inc @@ -0,0 +1,78 @@ +SUMMARY = "DSPLIB contains optimized signal processing functions for TI DSPs" +HOMEPAGE = "http://git.ti.com/ep-processor-libraries/dsplib" +LICENSE = "BSD-3-Clause" + +require ../includes/ti-paths.inc + +PV = "3_4_0_4" +PR = "r2" + +DEPENDS = "ti-cgt6x-native \ + ti-xdctools-native \ + ti-sysbios \ + doxygen-native \ + zip-native \ + swtools" + +S = "${WORKDIR}/git" + +DSPLIB_GIT_BRANCH = "master" +DSPLIB_GIT_PROTOCOL = "https" +DSPLIB_GIT_URI = "git://git.ti.com/git/ep-processor-libraries/dsplib.git" +DSPLIB_SRCREV = "0390b171042c602e07669fd28a371cc319b90161" + +SRC_URI = "${DSPLIB_GIT_URI};protocol=${DSPLIB_GIT_PROTOCOL};branch=${DSPLIB_GIT_BRANCH}" +SRCREV = "${DSPLIB_SRCREV}" + +LIC_FILES_CHKSUM = "file://ti/dsplib/src/common/c66/lnk.cmd;beginline=1;endline=37;md5=0f0c9c4d51d8af75419781591ace190b" + +export DSPLIB_WORK_DIR="${S}" +export CGTOOLS_INSTALL_DIR = "${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" +export C64PCODEGENTOOL="${CGTOOLS_INSTALL_DIR}" +export C674CODEGENTOOL="${CGTOOLS_INSTALL_DIR}" +export C66CODEGENTOOL ="${CGTOOLS_INSTALL_DIR}" +export SWTOOLS_PATH = "${SWTOOLS_INSTALL_DIR}/ti/mas/swtools" +export XDCBUILDCFG="${SWTOOLS_PATH}/config.bld" +export INCDIR="${MATHLIB_INSTALL_DIR}/" + +PATH:append = ":${XDC_INSTALL_DIR}" + +XDCPATH.="${XDCCGROOT}/include;${XDC_INSTALL_DIR}/packages;${SYSBIOS_INSTALL_DIR}/packages;" +XDCPATH.="${SWTOOLS_INSTALL_DIR};${MATHLIB_INSTALL_DIR};${DSPLIB_WORK_DIR};" + +export XDCPATH + +DSPLIB_PACKAGE_NAME = "dsplib_${DSPLIB_BUILD_TARGET}_${PV}" + +do_compile() { + cd ${DSPLIB_WORK_DIR}/ti/dsplib; + xdc XDCARGS="${DSPLIB_BUILD_TARGET} bundle" XDCOPTIONS="-v" +} + +do_install() { + install -d ${D}${DSPLIB_INSTALL_DIR_RECIPE} + + find -name "${DSPLIB_PACKAGE_NAME}.zip" -exec unzip -o {} -d ${D}${DSPLIB_INSTALL_DIR_RECIPE} \; + cp -r ${D}${DSPLIB_INSTALL_DIR_RECIPE}/dsplib/. ${D}${DSPLIB_INSTALL_DIR_RECIPE} + rm -r ${D}${DSPLIB_INSTALL_DIR_RECIPE}/dsplib +} + +inherit deploy +addtask deploy before do_build after do_install + +do_deploy() { + install -d ${DEPLOYDIR} + # zip up files in ${D}${DSPLIB_INSTALL_DIR_RECIPE} + # and place the zip file in ${DEPLOYDIR} + mkdir ./${DSPLIB_PACKAGE_NAME} + cp -r ${D}${DSPLIB_INSTALL_DIR_RECIPE}/. ./${DSPLIB_PACKAGE_NAME} + zip -9 -y -r -q ${DEPLOYDIR}/${DSPLIB_PACKAGE_NAME}.zip ./${DSPLIB_PACKAGE_NAME} + rm -r ./${DSPLIB_PACKAGE_NAME} +} + +ALLOW_EMPTY:${PN} = "1" +FILES:${PN}-dev += "${DSPLIB_INSTALL_DIR_RECIPE}" + +INSANE_SKIP:${PN}-dev = "arch" +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST:ti-soc = "(.*)" diff --git a/meta-ti-extras/recipes-ti/framework-components/ti-framework-components.inc b/meta-ti-extras/recipes-ti/framework-components/ti-framework-components.inc new file mode 100644 index 00000000..81407ed7 --- /dev/null +++ b/meta-ti-extras/recipes-ti/framework-components/ti-framework-components.inc @@ -0,0 +1,21 @@ +DESCRIPTION = "TI Framework Components" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/fc" +SECTION = "devel" +LICENSE = "BSD-3-Clause" + +require recipes-ti/includes/ti-paths.inc + +S = "${WORKDIR}/framework_components_${PV}" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/fc/${PV}/exports/framework_components_${PV},lite.tar.gz;name=fctarball" + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${FC_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${FC_INSTALL_DIR_RECIPE} +} + +INSANE_SKIP:${PN} = "ldflags" + +ALLOW_EMPTY:${PN} = "1" +FILES:${PN}-dev += "${FC_INSTALL_DIR_RECIPE}" diff --git a/meta-ti-extras/recipes-ti/framework-components/ti-framework-components_2.26.00.01.bb b/meta-ti-extras/recipes-ti/framework-components/ti-framework-components_2.26.00.01.bb new file mode 100644 index 00000000..1ec10b15 --- /dev/null +++ b/meta-ti-extras/recipes-ti/framework-components/ti-framework-components_2.26.00.01.bb @@ -0,0 +1,9 @@ +require ti-framework-components.inc + +PV = "2_26_00_01" +PR = "r2" + +LIC_FILES_CHKSUM = "file://framework_components_2_26_00_01_manifest.html;md5=3250f9da7ee72284c07f8dd840400c75" + +SRC_URI[fctarball.md5sum] = "40b51cade2f9ae6e6f6dca73c17065af" +SRC_URI[fctarball.sha256sum] = "3f7a12a51dfe87310828a31518d7ef8f9039e59269c0ca24f74a68433c235048" diff --git a/meta-ti-extras/recipes-ti/framework-components/ti-framework-components_3.40.02.07.bb b/meta-ti-extras/recipes-ti/framework-components/ti-framework-components_3.40.02.07.bb new file mode 100644 index 00000000..56c00283 --- /dev/null +++ b/meta-ti-extras/recipes-ti/framework-components/ti-framework-components_3.40.02.07.bb @@ -0,0 +1,9 @@ +require ti-framework-components.inc + +PV = "3_40_02_07" +PR = "r0" + +LIC_FILES_CHKSUM = "file://framework_components_${PV}_Manifest.html;md5=0dd131dd53300f517b14dba8824f8b0a" + +SRC_URI[fctarball.md5sum] = "36dd2312ea8d70aa2ae0a05a24dbf54e" +SRC_URI[fctarball.sha256sum] = "69082a0f86d12c24b39a1293ec35cf8007b850479898d5ae485ec1e8cf2e8c72" diff --git a/meta-ti-extras/recipes-ti/imglib/imglib-c66x.inc b/meta-ti-extras/recipes-ti/imglib/imglib-c66x.inc new file mode 100644 index 00000000..ab5cbdb6 --- /dev/null +++ b/meta-ti-extras/recipes-ti/imglib/imglib-c66x.inc @@ -0,0 +1,34 @@ +DESCRIPTION = "IMGLIB contains optimized general-purpose image/video processing routines for TI DSPs" +HOMEPAGE = "http://www.ti.com/tool/sprc264" +SECTION = "devel" +LICENSE = "BSD-3-Clause" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc +require ../includes/ti-unpack.inc + +COMPATIBLE_MACHINE = "omap-a15" + +SRC_URI = "http://software-dl.ti.com/sdoemb/sdoemb_public_sw/imglib/${PV}/exports/${BINFILE};name=imglib" + +S = "${WORKDIR}/imglib-c66x-${PV}" + +BINFILE = "imglib_c66x_${PV}_Linux.bin" +TI_BIN_UNPK_ARGS = "--mode silent --prefix ${S}" +TI_BIN_UNPK_CMDS = "" + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${IMGLIB_C66_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${IMGLIB_C66_INSTALL_DIR_RECIPE} +} + +ALLOW_EMPTY:${PN} = "1" +FILES:${PN}-dev += "${IMGLIB_C66_INSTALL_DIR_RECIPE}" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +RDEPENDS:${PN}-dev += "perl" +INSANE_SKIP:${PN}-dev = "arch" diff --git a/meta-ti-extras/recipes-ti/imglib/imglib-c66x_3.1.1.0.bb b/meta-ti-extras/recipes-ti/imglib/imglib-c66x_3.1.1.0.bb new file mode 100644 index 00000000..e614352c --- /dev/null +++ b/meta-ti-extras/recipes-ti/imglib/imglib-c66x_3.1.1.0.bb @@ -0,0 +1,9 @@ +require imglib-c66x.inc + +PV = "3_1_1_0" +PR = "r1" + +LIC_FILES_CHKSUM = "file://packages/ti/imglib/src/common/IMG_profile.h;beginline=1;endline=35;md5=a21fc16da34b650ce33a9a7143908667" + +SRC_URI[imglib.md5sum] = "9d64f213e040899048446df5055deeca" +SRC_URI[imglib.sha256sum] = "f3153e51530f26cfc638efca7ca6ae1bbaf7736daf287fc972592372a676ed21" diff --git a/meta-ti-extras/recipes-ti/includes/ti-eula-unpack.inc b/meta-ti-extras/recipes-ti/includes/ti-eula-unpack.inc new file mode 100644 index 00000000..ead06100 --- /dev/null +++ b/meta-ti-extras/recipes-ti/includes/ti-eula-unpack.inc @@ -0,0 +1,15 @@ +# 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 + +require recipes-ti/includes/ti-unpack.inc + +TI_BIN_UNPK_ARGS = "--mode console" + diff --git a/meta-ti-extras/recipes-ti/includes/ti-paths.inc b/meta-ti-extras/recipes-ti/includes/ti-paths.inc new file mode 100644 index 00000000..e8b0f17b --- /dev/null +++ b/meta-ti-extras/recipes-ti/includes/ti-paths.inc @@ -0,0 +1,60 @@ +installdir = "${datadir}/ti" + +export TOOLCHAIN_PATH ?= "${STAGING_DIR_NATIVE}${prefix_native}/bin/${TARGET_SYS}" + +# This is where do_install will put it +export CE_INSTALL_DIR_RECIPE = "${installdir}/ti-codec-engine-tree" +export CODEC_INSTALL_DIR_RECIPE = "${installdir}/ti-codecs-tree" +export CODEGEN_ARM_INSTALL_DIR_RECIPE = "${installdir}/ti-cgt470-tree" +export CG_XML_INSTALL_DIR_RECIPE = "${installdir}/ti-cg-xml-tree" +export DSPLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c66x-tree" +export DSPLIB_C674_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c674x-tree" +export DSPLIB_C64P_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c64p-tree" +export EDMA3_LLD_INSTALL_DIR_RECIPE = "${installdir}/ti-edma3lld-tree" +export FC_INSTALL_DIR_RECIPE = "${installdir}/ti-framework-components-tree" +export GCC_ARM_NONE_TOOLCHAIN_RECIPE = "${installdir}/gcc-arm-none-eabi" +export IMGLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-imglib-c66x-tree" +export IPC_INSTALL_DIR_RECIPE = "${installdir}/ti-ipc-tree" +export M4_TOOLCHAIN_INSTALL_DIR_RECIPE = "${installdir}/ti-cgt-arm" +export MATHLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-mathlib-c66x-tree" +export MATHLIB_C674_INSTALL_DIR_RECIPE = "${installdir}/ti-mathlib-c674x-tree" +export MPM_INSTALL_DIR_RECIPE = "${installdir}/ti-mpm-tree" +export OMP_INSTALL_DIR_RECIPE = "${installdir}/ti-omp-tree" +export OSAL_INSTALL_DIR_RECIPE = "${installdir}/ti-osal-tree" +export PDK_INSTALL_DIR_RECIPE = "${installdir}/ti-pdk-tree" +export SYSBIOS_INSTALL_DIR_RECIPE = "${installdir}/ti-sysbios-tree" +export SWTOOLS_INSTALL_DIR_RECIPE = "${installdir}/ti-swtools-tree" +export TI_CGT_PRU_INSTALL_DIR_RECIPE = "${installdir}/cgt-pru" +export TI_CGT6X_7_INSTALL_DIR_RECIPE = "${installdir}/cgt6x-7" +export TI_CGT7X_INSTALL_DIR_RECIPE = "${installdir}/cgt-c7x" +export VLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-vlib-c66x-tree" +export XDAIS_INSTALL_DIR_RECIPE = "${installdir}/ti-xdais-tree" +export XDC_INSTALL_DIR_RECIPE = "${installdir}/ti-xdctools-tree" + +# This is where the tools will end up in sysroot +export CE_INSTALL_DIR = "${STAGING_DIR_TARGET}${CE_INSTALL_DIR_RECIPE}" +export CODEGEN_ARM_INSTALL_DIR = "${STAGING_DIR_TARGET}${CODEGEN_ARM_INSTALL_DIR_RECIPE}" +export CG_XML_INSTALL_DIR = "${STAGING_DIR_NATIVE}${CG_XML_INSTALL_DIR_RECIPE}" +export DSPLIB_C66_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_C66_INSTALL_DIR_RECIPE}" +export DSPLIB_C674_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_C674_INSTALL_DIR_RECIPE}" +export DSPLIB_C64P_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_C64P_INSTALL_DIR_RECIPE}" +export EDMA3_LLD_INSTALL_DIR = "${STAGING_DIR_TARGET}${EDMA3_LLD_INSTALL_DIR_RECIPE}" +export FC_INSTALL_DIR = "${STAGING_DIR_TARGET}${FC_INSTALL_DIR_RECIPE}" +export GCC_ARM_NONE_TOOLCHAIN = "${STAGING_DIR_NATIVE}${GCC_ARM_NONE_TOOLCHAIN_RECIPE}" +export IMGLIB_C66_INSTALL_DIR = "${STAGING_DIR_TARGET}${IMGLIB_C66_INSTALL_DIR_RECIPE}" +export IPC_INSTALL_DIR = "${STAGING_DIR_TARGET}${IPC_INSTALL_DIR_RECIPE}" +export M4_TOOLCHAIN_INSTALL_DIR = "${STAGING_DIR_NATIVE}${M4_TOOLCHAIN_INSTALL_DIR_RECIPE}" +export MATHLIB_C66_INSTALL_DIR = "${STAGING_DIR_TARGET}${MATHLIB_C66_INSTALL_DIR_RECIPE}" +export MATHLIB_C674_INSTALL_DIR = "${STAGING_DIR_TARGET}${MATHLIB_C674_INSTALL_DIR_RECIPE}" +export MPM_INSTALL_DIR = "${STAGING_DIR_TARGET}${MPM_INSTALL_DIR_RECIPE}" +export OMP_INSTALL_DIR = "${STAGING_DIR_TARGET}${OMP_INSTALL_DIR_RECIPE}" +export OSAL_INSTALL_DIR = "${STAGING_DIR_TARGET}${OSAL_INSTALL_DIR_RECIPE}" +export PDK_INSTALL_DIR = "${STAGING_DIR_TARGET}${PDK_INSTALL_DIR_RECIPE}" +export SWTOOLS_INSTALL_DIR = "${STAGING_DIR_TARGET}${SWTOOLS_INSTALL_DIR_RECIPE}" +export SYSBIOS_INSTALL_DIR = "${STAGING_DIR_TARGET}${SYSBIOS_INSTALL_DIR_RECIPE}" +export TI_CGT_PRU_INSTALL_DIR = "${STAGING_DIR_NATIVE}${TI_CGT_PRU_INSTALL_DIR_RECIPE}" +export TI_CGT6X_7_INSTALL_DIR = "${STAGING_DIR_NATIVE}${TI_CGT6X_7_INSTALL_DIR_RECIPE}" +export TI_CGT7X_INSTALL_DIR = "${STAGING_DIR_NATIVE}${TI_CGT7X_INSTALL_DIR_RECIPE}" +export VLIB_C66_INSTALL_DIR = "${STAGING_DIR_TARGET}${VLIB_C66_INSTALL_DIR_RECIPE}" +export XDAIS_INSTALL_DIR = "${STAGING_DIR_TARGET}${XDAIS_INSTALL_DIR_RECIPE}" +export XDC_INSTALL_DIR = "${STAGING_DIR_NATIVE}${XDC_INSTALL_DIR_RECIPE}" diff --git a/meta-ti-extras/recipes-ti/includes/ti-staging.inc b/meta-ti-extras/recipes-ti/includes/ti-staging.inc new file mode 100644 index 00000000..f18d017c --- /dev/null +++ b/meta-ti-extras/recipes-ti/includes/ti-staging.inc @@ -0,0 +1,6 @@ +INHIBIT_PACKAGE_STRIP = "1" + +ALLOW_EMPTY:${PN} = "1" +ALLOW_EMPTY:${PN}-dev = "1" + + diff --git a/meta-ti-extras/recipes-ti/includes/ti-unpack.inc b/meta-ti-extras/recipes-ti/includes/ti-unpack.inc new file mode 100644 index 00000000..13068843 --- /dev/null +++ b/meta-ti-extras/recipes-ti/includes/ti-unpack.inc @@ -0,0 +1,82 @@ +# This file defines function used for unpacking the .bin file downloaded over +# the http. +# BINFILE - name of the install jammer .bin file +# TARFILE - name of the tar file inside the install jammer +# TI_BIN_UNPK_ARGS - contains the arguments to be passed to the bin file. +# 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 + + # InstallJammer requires 32bit version of glibc + if not os.path.exists('/lib/ld-linux.so.2'): + bb.fatal("TI installer requires 32bit glibc libraries for proper operation\nrun 'yum install glibc.i686' on Fedora or 'apt-get install libc6:i386' on Ubuntu/Debian") + + localdata = bb.data.createCopy(d) + + binfile = localdata.getVar('BINFILE') + binfile = bb.data.expand(binfile, localdata) + + # Change to the working directory + save_cwd = os.getcwd() + workdir = localdata.getVar('WORKDIR') + workdir = bb.data.expand(workdir, localdata) + os.chdir(workdir) + + # Get unpack args + arg_string = localdata.getVar('TI_BIN_UNPK_ARGS') + arg_string = bb.data.expand(arg_string, localdata) + + # Get unpack commands + cmd_string = localdata.getVar('TI_BIN_UNPK_CMDS') + cmd_list = cmd_string.split( ":" ) + + # Make the InstallJammer binary executable so we can run it + os.chmod(binfile, 0o755) + + # Run the InstallJammer binary and accept the EULA + filename = "HOME=%s ./%s %s" % (workdir, binfile, arg_string) + + # Test executable by printing installer version or help screen (--version currently broken for some installers) + # - this is currently broken in some IJ installers - comment out for now + #if os.system(filename + " --version") != 0: + # print "ERROR: ti-eula-unpack: failed to execute binary installer" + # raise bb.build.FuncFailed() + + f = os.popen(filename,'w') + for cmd in cmd_list: + if cmd == "workdir": + wdext = localdata.getVar('TI_BIN_UNPK_WDEXT') + wdext = bb.data.expand(wdext, localdata) + cmd = workdir+wdext + f.write(cmd+'\n'); + f.close() + + # Expand the tarball that was created if required + tarfile = localdata.getVar('TARFILE') + if bool(tarfile) == True: + tarfile = bb.data.expand(tarfile, localdata) + tcmd = 'tar x --no-same-owner -f %s -C %s' % (tarfile, workdir) + if os.system(tcmd) != 0: + print("ERROR: ti-eula-unpack: failed to extract tarfile") + raise bb.build.FuncFailed() + + # Return to the previous directory + os.chdir(save_cwd) +} + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST:ti-soc = "(.*)" +COMPATIBLE_HOST:class-native = "(.*)" +COMPATIBLE_HOST:class-nativesdk = "(.*)" diff --git a/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples-linux/0001-examples-ClusterMgr-sys_errlist-has-been-deprecated-.patch b/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples-linux/0001-examples-ClusterMgr-sys_errlist-has-been-deprecated-.patch new file mode 100644 index 00000000..ea514695 --- /dev/null +++ b/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples-linux/0001-examples-ClusterMgr-sys_errlist-has-been-deprecated-.patch @@ -0,0 +1,40 @@ +From cca4fd812959a0cd241dd3bbebfd461ece94c9b8 Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko <denis@denix.org> +Date: Mon, 29 Mar 2021 19:42:00 -0400 +Subject: [PATCH] examples/ClusterMgr: sys_errlist[] has been deprecated in + glibc + +Use strerror() instead. + +Upstream-Status: Pending + +Signed-off-by: Denys Dmytriyenko <denis@denix.org> +--- + src/examples/templates/ex46_graph/manager/ClusterMgr.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/examples/templates/ex46_graph/manager/ClusterMgr.c b/src/examples/templates/ex46_graph/manager/ClusterMgr.c +index 19216c9..a1fa679 100644 +--- a/src/examples/templates/ex46_graph/manager/ClusterMgr.c ++++ b/src/examples/templates/ex46_graph/manager/ClusterMgr.c +@@ -714,7 +714,7 @@ static pid_t ClusterMgr_system(char *cmd, bool wait) + pid = fork(); + + if (pid == -1) { +- LOG "CM_system: fork error: %s\n", sys_errlist[errno] LOGF ++ LOG "CM_system: fork error: %s\n", strerror(errno) LOGF + status = -1; + goto leave; + } +@@ -739,7 +739,7 @@ static pid_t ClusterMgr_system(char *cmd, bool wait) + else { + /* overlay a new executable */ + execvp(argv[0], argv); +- LOG "CM_system: execvp error: %s\n", sys_errlist[errno] LOGF ++ LOG "CM_system: execvp error: %s\n", strerror(errno) LOGF + status = -1; + } + +-- +2.7.4 + diff --git a/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples-linux_git.bb b/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples-linux_git.bb new file mode 100644 index 00000000..81706592 --- /dev/null +++ b/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples-linux_git.bb @@ -0,0 +1,49 @@ +DESCRIPTION = "TI Inter Process Communication (IPC) examples with Host running bios" +require ti-ipc-examples.inc + +SRC_URI += "file://0001-examples-ClusterMgr-sys_errlist-has-been-deprecated-.patch;patchdir=../git/ipc-examples" + +DEPENDS = "ti-ipc ti-xdctools-native ti-sysbios ti-ipc-rtos zip-native" + +do_compile:append() { + + if [ "${PLATFORM}" != "UNKNOWN" ]; then + oe_runmake extract HOSTOS="linux" IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" + + if [ ! -z ${ALT_PLATFORM} ]; then + oe_runmake extract PLATFORM="${ALT_PLATFORM}" HOSTOS="linux" \ + IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" + fi + oe_runmake -C examples all HOSTOS="linux" \ + LINUX_SYSROOT_DIR="${STAGING_INCDIR}" \ + IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" + + if [ ! -z ${ALT_PLATFORM} ]; then + oe_runmake -C examples all HOSTOS="linux" \ + LINUX_SYSROOT_DIR="${STAGING_INCDIR}" \ + IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" \ + PLATFORM="${ALT_PLATFORM}" + fi + fi +} + +do_install:append() { + cd ${S_ipc-examples}/src + + if [ "${PLATFORM}" != "UNKNOWN" ]; then + # Install directory for linux examples + install -d ${D}${bindir}/ipc/examples + oe_runmake -C examples install IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" \ + LINUX_SYSROOT_DIR="${STAGING_INCDIR}" \ + HOSTOS="linux" EXEC_DIR="${D}/${bindir}/ipc/examples" + + if [ ! -z ${ALT_PLATFORM} ]; then + oe_runmake -C examples install IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" \ + LINUX_SYSROOT_DIR="${STAGING_INCDIR}" \ + HOSTOS="linux" EXEC_DIR="${D}/${bindir}/ipc/examples" \ + PLATFORM="${ALT_PLATFORM}" + fi + fi +} + +FILES:${PN} += "${bindir}/*" diff --git a/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples.inc b/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples.inc new file mode 100644 index 00000000..09352505 --- /dev/null +++ b/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples.inc @@ -0,0 +1,31 @@ +HOMEPAGE = "http://processors.wiki.ti.com/index.php/Category:IPC" +require recipes-ti/ipc/ti-ipc-common.inc +require ti-ipc-rtos.inc + +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://${S_ipc-examples}/src/makefile;beginline=1;endline=30;md5=a52324bd5033bb49ea07bade1244ac9a" + +INSANE_SKIP:${PN} += "arch" + +ALLOW_EMPTY:${PN} = "1" + +IPC_INSTALL_DIR = "${STAGING_DIR_TARGET}/usr/share/ti/ti-ipc-tree" + +do_compile() { + + cd ${S_ipc-examples}/src + oe_runmake .examples \ + IPCTOOLS="${S_ipc-metadata}/src/etc" + + for alt_platform in ${ALT_PLATFORM}; do + oe_runmake .examples "PLATFORM=${alt_platform}" \ + IPCTOOLS="${S_ipc-metadata}/src/etc" + done +} + +do_install() { + cd ${S_ipc-examples}/src + IPC_VERSION=`echo ${PV}${RELEASE_SUFFIX} | sed -e 's|\.|_|g'` +} + +INHIBIT_PACKAGE_STRIP = "1" diff --git a/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples_git.bb b/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples_git.bb new file mode 100644 index 00000000..bcc8674e --- /dev/null +++ b/meta-ti-extras/recipes-ti/ipc/ti-ipc-examples_git.bb @@ -0,0 +1,44 @@ +DESCRIPTION = "TI Inter Process Communication (IPC) examples with Host running linux" +require ti-ipc-examples.inc + +DEPENDS = "ti-ipc ti-xdctools-native ti-sysbios ti-ipc-rtos zip-native" + +do_compile:append() { + + if [ "${PLATFORM}" != "UNKNOWN" ]; then + oe_runmake extract HOSTOS="bios" IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" + + for alt_platform in ${ALT_PLATFORM}; do + oe_runmake extract PLATFORM="${alt_platform}" HOSTOS="bios" \ + IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" + done + oe_runmake -C examples all HOSTOS="bios" \ + IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" + for alt_platform in ${ALT_PLATFORM}; do + oe_runmake -C examples all HOSTOS="bios" \ + IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" PLATFORM="${alt_platform}" + done + fi +} + +do_install:append() { + if [ "${PLATFORM}" != "UNKNOWN" ]; then + # Install directory for bios examples + install -d ${D}/ipc_${IPC_VERSION}/examples/bios + oe_runmake -C examples install IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" \ + HOSTOS="bios" EXEC_DIR="${D}/ipc_${IPC_VERSION}/examples/bios" + oe_runmake -C examples install_rov IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" \ + HOSTOS="bios" EXEC_DIR="${D}/ipc_${IPC_VERSION}/examples/bios" + + for alt_platform in ${ALT_PLATFORM}; do + oe_runmake -C examples install IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" \ + HOSTOS="bios" EXEC_DIR="${D}/ipc_${IPC_VERSION}/examples/${alt_platform}/bios" \ + PLATFORM="${alt_platform}" + oe_runmake -C examples install_rov IPC_INSTALL_DIR="${IPC_INSTALL_DIR}" \ + HOSTOS="bios" EXEC_DIR="${D}/ipc_${IPC_VERSION}/examples/${alt_platform}/bios" \ + PLATFORM="${alt_platform}" + done + fi +} + +FILES:${PN} += "ipc_*" diff --git a/meta-ti-extras/recipes-ti/ipc/ti-ipc-rtos.inc b/meta-ti-extras/recipes-ti/ipc/ti-ipc-rtos.inc new file mode 100644 index 00000000..14ac7c77 --- /dev/null +++ b/meta-ti-extras/recipes-ti/ipc/ti-ipc-rtos.inc @@ -0,0 +1,73 @@ +require recipes-ti/includes/ti-paths.inc + +TI_IPC_EXAMPLES_GIT_URI = "git://git.ti.com/git/ipc/ipc-examples.git" +TI_IPC_EXAMPLES_DEST_SUFFIX = "git/ipc-examples" +TI_IPC_EXAMPLES_GIT_PROTOCOL = "https" +TI_IPC_EXAMPLES_GIT_BRANCH = "master" +TI_IPC_EXAMPLES_NAME = "ipc-examples" + +SRC_URI += "${TI_IPC_EXAMPLES_GIT_URI};\ +destsuffix=${TI_IPC_EXAMPLES_DEST_SUFFIX};\ +protocol=${TI_IPC_EXAMPLES_GIT_PROTOCOL};\ +branch=${TI_IPC_EXAMPLES_GIT_BRANCH};\ +name=${TI_IPC_EXAMPLES_NAME}" + +TI_IPC_METADATA_GIT_URI = "git://git.ti.com/git/ipc/ipc-metadata.git" +TI_IPC_METADATA_DEST_SUFFIX = "git/ipc-metadata" +TI_IPC_METADATA_GIT_PROTOCOL = "https" +TI_IPC_METADATA_GIT_BRANCH = "master" +TI_IPC_METADATA_NAME = "ipc-metadata" + +SRC_URI += "${TI_IPC_METADATA_GIT_URI};\ +destsuffix=${TI_IPC_METADATA_DEST_SUFFIX};\ +protocol=${TI_IPC_METADATA_GIT_PROTOCOL};\ +branch=${TI_IPC_METADATA_GIT_BRANCH};\ +name=${TI_IPC_METADATA_NAME}" + +# Corresponds to tag: 3.51.00.00 +TI_IPC_METADATA_SRCREV = "1bf668fd6b0ec2ef6956fa55b8484d0b21a9f9e2" +# Corresponds to tag: 3.51.00.00 +TI_IPC_EXAMPLES_SRCREV = "4707fcbbe0d136e781c4a7ffdc072be407c34358" + +SRCREV_FORMAT = "default" +SRCREV_ipc-metadata = "${TI_IPC_METADATA_SRCREV}" +SRCREV_ipc-examples = "${TI_IPC_EXAMPLES_SRCREV}" + +S_ipc-examples = "${WORKDIR}/git/ipc-examples" +S_ipc-metadata = "${WORKDIR}/git/ipc-metadata" + +RELEASE_TYPE = "GA" +RELEASE_SUFFIX = "" + +PR = "${INC_PR}.r0" + +DEPENDS:append:omap-a15 = " ti-cgt6x-native \ + ti-cgt-arm-native \ + gcc-arm-baremetal-native \ +" +DEPENDS:append:omapl138 = " ti-cgt6x-native \ +" + +IPC_TARGETS = "" + +IPC_TARGETS:omap-a15 = "\ + gnu.targets.arm.A15F="${GCC_ARM_NONE_TOOLCHAIN}" \ + ti.targets.elf.C66="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \ + ti.targets.elf.C66_big_endian="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \ + ti.targets.arm.elf.M4="${M4_TOOLCHAIN_INSTALL_DIR}" \ +" + +IPC_TARGETS:omapl138 = "\ + ti.targets.elf.C674="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \ +" + +PARALLEL_XDC = "${@oe.utils.parallel_make_argument(d, '--jobs=%d')}" +EXTRA_OEMAKE = "\ + PLATFORM=${PLATFORM} \ + XDC_INSTALL_DIR="${XDC_INSTALL_DIR}" \ + BIOS_INSTALL_DIR="${SYSBIOS_INSTALL_DIR}" \ + ${IPC_TARGETS} \ + ${PARALLEL_XDC} \ + JAVA_TOOL_OPTIONS=-Xss2560k \ +" + diff --git a/meta-ti-extras/recipes-ti/ipc/ti-ipc-rtos_git.bb b/meta-ti-extras/recipes-ti/ipc/ti-ipc-rtos_git.bb new file mode 100644 index 00000000..999993ea --- /dev/null +++ b/meta-ti-extras/recipes-ti/ipc/ti-ipc-rtos_git.bb @@ -0,0 +1,101 @@ +require recipes-ti/ipc/ti-ipc.inc +require recipes-ti/ipc/ti-ipc-common.inc +require ti-ipc-rtos.inc + +DEPENDS = "ti-xdctools-native ti-sysbios doxygen-native zip-native" + +PACKAGES =+ "${PN}-fw" +FILES:${PN}-fw = "${nonarch_base_libdir}/firmware/*" +FILES:${PN}-dev += "${IPC_INSTALL_DIR_RECIPE}" + +INSANE_SKIP:${PN}-fw += "arch" +INSANE_SKIP:${PN}-dev += "arch" + +ALLOW_EMPTY:${PN} = "1" + +IPC_PACKAGE_DIR = "${S}/ipc-package" + +do_compile() { + oe_runmake -f ipc-bios.mak clean + oe_runmake -f ipc-bios.mak release + + cd ${S_ipc-metadata} + oe_runmake .all-files IPC_INSTALL_DIR="${S}" \ + BUILD_HOST_OS="linux" \ + RELEASE_TYPE="${RELEASE_TYPE}" + + cd ${S_ipc-examples}/src + oe_runmake .examples \ + IPCTOOLS="${S_ipc-metadata}/src/etc" + for alt_platform in ${ALT_PLATFORM}; do + oe_runmake .examples \ + IPCTOOLS="${S_ipc-metadata}/src/etc" \ + PLATFORM=${alt_platform} + done + + if [ "${PLATFORM}" != "UNKNOWN" ]; then + oe_runmake extract HOSTOS="bios" IPC_INSTALL_DIR="${S}" + oe_runmake extract HOSTOS="linux" IPC_INSTALL_DIR="${S}" + + for alt_platform in ${ALT_PLATFORM}; do + oe_runmake extract PLATFORM=${alt_platform} HOSTOS="bios" IPC_INSTALL_DIR="${S}" + oe_runmake extract PLATFORM=${alt_platform} HOSTOS="linux" IPC_INSTALL_DIR="${S}" + done + fi + + IPC_VERSION=`echo ${PV}${RELEASE_SUFFIX} | sed -e 's|\.|_|g'` + install -d ${IPC_PACKAGE_DIR} + # Copy docs and other meta files + cp -pPrf ${S_ipc-metadata}/exports/ipc_${IPC_VERSION}/* -d ${IPC_PACKAGE_DIR} + + # Copy example folders corresponding to the platforms + if [ "${PLATFORM}" != "UNKNOWN" ]; then + install -d ${IPC_PACKAGE_DIR}/examples + cp -pPf ${S_ipc-examples}/src/examples/*.* ${IPC_PACKAGE_DIR}/examples/ + cp -pPf ${S_ipc-examples}/src/examples/makefile ${IPC_PACKAGE_DIR}/examples/ + cp -pPrf ${S_ipc-examples}/src/examples/${PLATFORM}* ${IPC_PACKAGE_DIR}/examples/ + for alt_platform in ${ALT_PLATFORM}; do + cp -pPrf ${S_ipc-examples}/src/examples/${alt_platform}* ${IPC_PACKAGE_DIR}/examples/ + done + find ${IPC_PACKAGE_DIR}/examples/ -name "*zip" -type f | xargs -I {} rm {} + fi +} + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + IPC_VERSION=`echo ${PV}${RELEASE_SUFFIX} | sed -e 's|\.|_|g'` + # Copy docs and other meta files + install -d ${D}${IPC_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${IPC_PACKAGE_DIR}/* -d ${D}${IPC_INSTALL_DIR_RECIPE} + + install -d ${D}${nonarch_base_libdir}/firmware/ipc + cp ${CP_ARGS} ${S}/packages/ti/ipc/tests/bin/* ${D}${nonarch_base_libdir}/firmware/ipc || true +} + +KFDSPNUM = "0" + +KFPLAT = "" + +ALTERNATIVE_PRIORITY = "5" + +pkg_postinst:${PN}-fw:omap-a15 () { + update-alternatives --install /lib/firmware/dra7-dsp1-fw.xe66 dra7-dsp1-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp1/test_omx_dsp1_vayu.xe66 ${ALTERNATIVE_PRIORITY} + update-alternatives --install /lib/firmware/dra7-dsp2-fw.xe66 dra7-dsp2-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp2/test_omx_dsp2_vayu.xe66 ${ALTERNATIVE_PRIORITY} + update-alternatives --install /lib/firmware/dra7-ipu1-fw.xem4 dra7-ipu1-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu1/test_omx_ipu1_vayu.xem4 ${ALTERNATIVE_PRIORITY} + update-alternatives --install /lib/firmware/dra7-ipu2-fw.xem4 dra7-ipu2-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu2/test_omx_ipu2_vayu.xem4 ${ALTERNATIVE_PRIORITY} +} + +pkg_postrm:${PN}-fw:omap-a15 () { + update-alternatives --remove dra7-dsp1-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp1/test_omx_dsp1_vayu.xe66 + update-alternatives --remove dra7-dsp2-fw.xe66 ipc/ti_platforms_evmDRA7XX_dsp2/test_omx_dsp2_vayu.xe66 + update-alternatives --remove dra7-ipu1-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu1/test_omx_ipu1_vayu.xem4 + update-alternatives --remove dra7-ipu2-fw.xem4 ipc/ti_platforms_evmDRA7XX_ipu2/test_omx_ipu2_vayu.xem4 +} + +pkg_postinst:${PN}-fw:omapl138 () { + update-alternatives --install /lib/firmware/rproc-dsp-fw rproc-dsp-fw ipc/ti_platforms_evmOMAPL138_DSP/messageq_single.xe674 ${ALTERNATIVE_PRIORITY} +} + +pkg_postrm:${PN}-fw:omapl138 () { + update-alternatives --remove rproc-dsp-fw ipc/ti_platforms_evmOMAPL138_DSP/messageq_single.xe674 +} diff --git a/meta-ti-extras/recipes-ti/jailhouse/jailhouse-inmate.bb b/meta-ti-extras/recipes-ti/jailhouse/jailhouse-inmate.bb new file mode 100644 index 00000000..39654a53 --- /dev/null +++ b/meta-ti-extras/recipes-ti/jailhouse/jailhouse-inmate.bb @@ -0,0 +1,12 @@ +require ti-jailhouse.inc + +do_install() { + + install -d ${D}${bindir} + install -m 0755 ${TOOLS_SRC_DIR}/demos/ivshmem-demo ${D}${bindir} + +} + +FILES:${PN} = " \ + ${bindir}/ivshmem-demo \ +" diff --git a/meta-ti-extras/recipes-ti/jailhouse/jailhouse_git.bb b/meta-ti-extras/recipes-ti/jailhouse/jailhouse_git.bb new file mode 100644 index 00000000..98ec0e9e --- /dev/null +++ b/meta-ti-extras/recipes-ti/jailhouse/jailhouse_git.bb @@ -0,0 +1,126 @@ +require ti-jailhouse.inc + +RDEPENDS:${PN} += "\ + python3-curses\ + python3-datetime\ + python3-mmap\ +" + +JH_CELL_FILES ?= "*.cell" +JH_CELL_FILES:k3 ?= "k3-*.cell" +JH_CELL_FILES:am62xx ?= "k3-am625-*.cell" +JH_CELL_FILES:am62pxx ?= "k3-am62p5-*.cell" + +JH_INMATE_DTB ?= "" +JH_INMATE_DTB:am62xx ?= "inmate-k3-am625-sk.dtb" +JH_INMATE_DTB:am65xx ?= "inmate-k3-am654-idk.dtb" +JH_INMATE_DTB:am62pxx ?= "inmate-k3-am62p5-sk.dtb" +JH_INMATE_DTB:j7 ?= "inmate-k3-j721e-evm.dtb" +JH_INMATE_DTB:j7200-evm ?= "inmate-k3-j7200-evm.dtb" + +JH_LINUX_DEMO_CELL ?= "" +JH_LINUX_DEMO_CELL:am62xx ?= "k3-am625-sk-linux-demo.cell" +JH_LINUX_DEMO_CELL:am65xx ?= "k3-am654-idk-linux-demo.cell" +JH_LINUX_DEMO_CELL:am62pxx ?= "k3-am62p5-sk-linux-demo.cell" +JH_LINUX_DEMO_CELL:j7 ?= "k3-j721e-evm-linux-demo.cell" +JH_LINUX_DEMO_CELL:j7200-evm ?= "k3-j7200-evm-linux-demo.cell" + +INITRAMFS_IMAGE ?= "" +JH_RAMFS_IMAGE ?= "${INITRAMFS_IMAGE}" + +JH_CMDLINE ?= "" +JH_CMDLINE:am62xx ?= "console=ttyS3,115200n8 earlycon=ns16550a,mmio32,0x02810000" +JH_CMDLINE:am62pxx ?= "console=ttyS1,115200n8" +JH_CMDLINE:am65xx ?= "console=ttyS1,115200n8" +JH_CMDLINE:j7 ?= "console=ttyS3,115200n8" +JH_CMDLINE:j7200-evm ?= "console=ttyS3,115200n8" + +do_install() { + + # We want to install the python tools, but we do not want to use pip... + # At least with v0.10, we can work around this with + # 'PIP=":" PYTHON_PIP_USEABLE=yes' + oe_runmake PIP=: PYTHON=python3 PYTHON_PIP_USEABLE=yes DESTDIR=${D} install + + install -d ${D}${CELL_DIR} + install -m 0644 ${B}/configs/${JH_ARCH}/${JH_CELL_FILES} ${D}${CELL_DIR}/ + + install -d ${D}${INMATES_DIR} + install -m 0644 ${B}/inmates/demos/${JH_ARCH}/*.bin ${D}${INMATES_DIR} + + install -d ${D}/boot + if [ -n "${JH_RAMFS_IMAGE}" ] + then + if [ -f ${DEPLOY_DIR_IMAGE}/${JH_RAMFS_IMAGE}-${MACHINE}.cpio ] + then + install -m 0644 ${DEPLOY_DIR_IMAGE}/${JH_RAMFS_IMAGE}-${MACHINE}.cpio ${D}/boot + else + bberror "Could not find JH_RAMFS_IMAGE (${JH_RAMFS_IMAGE}-${MACHINE}.cpio)!" + bberror "Please make sure that \"cpio\" is in IMAGE_FSTYPES." + fi + fi + + if [ -n "${JH_INMATE_DTB}" -a -n "${JH_LINUX_DEMO_CELL}" ]; then + cd ${TOOLS_SRC_DIR} + + echo "#! /bin/sh" > ${D}${JH_DATADIR}/linux-demo.sh + echo "jailhouse enable ${CELL_DIR}/${JH_SYSCONFIG_CELL}" >> ${D}${JH_DATADIR}/linux-demo.sh + ./jailhouse-cell-linux -w ${D}${JH_DATADIR}/${JH_INMATE_DTB} \ + -a ${JH_ARCH} -c "${JH_CMDLINE}" \ + -d ../configs/${JH_ARCH}/dts/${JH_INMATE_DTB} \ + -i ${D}/boot/${JH_RAMFS_IMAGE}-${MACHINE}.cpio \ + ${D}${CELL_DIR}/${JH_LINUX_DEMO_CELL} \ + ${DEPLOY_DIR_IMAGE}/Image \ + | tr -cd '\11\12\15\40-\176' \ + >> ${D}${JH_DATADIR}/linux-demo.sh + + sed -i -e 's,^Modified device tree written.*,,g' ${D}${JH_DATADIR}/linux-demo.sh + sed -i -e 's,\${D},,g' ${D}${JH_DATADIR}/linux-demo.sh + sed -i -e 's, linux-loader.bin, ${JH_EXEC_DIR}/linux-loader.bin,g' ${D}${JH_DATADIR}/linux-demo.sh + sed -i -e 's,\${DEPLOY_DIR_IMAGE},/boot,g' ${D}${JH_DATADIR}/linux-demo.sh + sed -i -e '/^\s*$/d' ${D}${JH_DATADIR}/linux-demo.sh + chmod +x ${D}${JH_DATADIR}/linux-demo.sh + fi + + rm ${D}${JH_DATADIR}/root-cell-config.c.tmpl + rm ${D}${JH_DATADIR}/jailhouse-config-collect.tmpl +} + +PACKAGE_BEFORE_PN = "kernel-module-jailhouse pyjailhouse ${PN}-tools" + +FILES:pyjailhouse = "${PYTHON_SITEPACKAGES_DIR}" +FILES:${PN}-tools = "${libexecdir}/${BPN}/${BPN}-*" + +RDEPENDS:${PN}-tools = "pyjailhouse python3-mmap python3-math python3-datetime python3-curses python3-compression" +RDEPENDS:pyjailhouse = "python3-core python3-ctypes python3-fcntl python3-shell" + +RRECOMMENDS:${PN} = "${PN}-tools" + +INSANE_SKIP:${PN} = "ldflags" + +KERNEL_MODULE_AUTOLOAD += "jailhouse" + +# Any extra cells/inmates from external recipes/packages +CELLS = "" + +python __anonymous () { + d.appendVarFlag('do_install', 'depends', ' virtual/kernel:do_deploy') + ramfs = d.getVar('JH_RAMFS_IMAGE', True) + if ramfs: + d.appendVarFlag('do_install', 'depends', ' ${JH_RAMFS_IMAGE}:do_image_complete') + + # Setup DEPENDS and RDEPENDS to included cells + cells = d.getVar('CELLS', True) or "" + for cell in cells.split(): + d.appendVar('DEPENDS', ' ' + cell) + d.appendVar('RDEPENDS_${PN}', ' ' + cell) +} + +FILES:${PN} = " \ + /boot/* \ + /usr/libexec \ + /usr/sbin/* \ + /usr/libexec/* \ + /usr/share/* \ + /lib/firmware/* \ +" diff --git a/meta-ti-extras/recipes-ti/jailhouse/ti-jailhouse.inc b/meta-ti-extras/recipes-ti/jailhouse/ti-jailhouse.inc new file mode 100644 index 00000000..6faf16b8 --- /dev/null +++ b/meta-ti-extras/recipes-ti/jailhouse/ti-jailhouse.inc @@ -0,0 +1,87 @@ +SUMMARY = "Linux-based partitioning hypervisor" +DESCRIPTION = "Jailhouse is a partitioning Hypervisor based on Linux. It is able to run bare-metal applications or (adapted) \ +operating systems besides Linux. For this purpose, it configures CPU and device virtualization features of the hardware \ +platform in a way that none of these domains, called 'cells' here, can interfere with each other in an unacceptable way." +HOMEPAGE = "https://github.com/siemens/jailhouse" +SECTION = "jailhouse" + +LICENSE = "GPL-2.0-only & BSD-2-Clause" + +LIC_FILES_CHKSUM = " \ + file://COPYING;md5=9fa7f895f96bde2d47fd5b7d95b6ba4d \ +" + +COMPATIBLE_MACHINE = "am62xx|am62pxx" +TARGET_CC_ARCH += "${LDFLAGS}" +PV = "0.12+git" +SRCREV = "603819ef9a771a3c253a141220daab8e61751a43" +BRANCH = "master" +SRC_URI = " \ + git://git.ti.com/git/jailhouse/ti-jailhouse.git;protocol=https;branch=${BRANCH} \ +" + +# Set jailhouse architecture JH_ARCH variable +# +# return value must match one of architectures supported by jailhouse +# +valid_jh_archs = "x86 arm" + +def map_jh_arch(a, d): + import re + + valid_jh_archs = d.getVar('valid_jh_archs', True).split() + + if re.match('(i.86|athlon|x86.64)$', a): return 'x86' + elif re.match('armeb$', a): return 'arm' + elif re.match('aarch64$', a): return 'arm64' + elif re.match('aarch64_be$', a): return 'arm64' + elif a in valid_jh_archs: return a + else: + bb.error("cannot map '%s' to a jailhouse supported architecture" % a) + +export JH_ARCH = "${@map_jh_arch(d.getVar('TARGET_ARCH', True), d)}" + +COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" + +S = "${WORKDIR}/git" +B = "${S}" + +DEPENDS = "virtual/kernel dtc-native python3-mako-native python3-mako make-native" + +inherit module python3native bash-completion deploy setuptools3 + +PACKAGE_ARCH = "${MACHINE_ARCH}" +COMPATIBLE_MACHINE = "(ti-soc)" + +JH_DATADIR ?= "${datadir}/jailhouse" +JH_EXEC_DIR ?= "${libexecdir}/jailhouse" +CELL_DIR ?= "${JH_DATADIR}/cells" +CELLCONF_DIR ?= "${JH_DATADIR}/configs" +INMATES_DIR ?= "${JH_DATADIR}/inmates" + +JH_SYSCONFIG_CELL ?= "" +JH_SYSCONFIG_CELL:am62xx ?= "k3-am625-sk.cell" +JH_SYSCONFIG_CELL:am65xx ?= "k3-am654-idk.cell" +JH_SYSCONFIG_CELL:am62pxx ?= "k3-am62p5-sk.cell" +JH_SYSCONFIG_CELL:j7 ?= "k3-j721e-evm.cell" +JH_SYSCONFIG_CELL:j7200-evm ?= "k3-j7200-evm.cell" + +do_configure() { + if [ -d ${STAGING_DIR_HOST}/${CELLCONF_DIR} ]; + then + cp ${STAGING_DIR_HOST}/${CELLCONF_DIR}/*.c ${S}/configs/ + fi +} + +USER_SPACE_CFLAGS = '${CFLAGS} -DLIBEXECDIR=\\\"${libexecdir}\\\" \ + -DJAILHOUSE_VERSION=\\\"$JAILHOUSE_VERSION\\\" \ + -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Werror \ + -I../driver' + +TOOLS_SRC_DIR = "${S}/tools" + +EXTRA_OEMAKE = "ARCH=${JH_ARCH} CROSS_COMPILE=${TARGET_PREFIX} CC="${CC}" KDIR=${STAGING_KERNEL_BUILDDIR}" + +do_compile() { + oe_runmake V=1 +} diff --git a/meta-ti-extras/recipes-ti/mathlib/mathlib-c66x_git.bb b/meta-ti-extras/recipes-ti/mathlib/mathlib-c66x_git.bb new file mode 100644 index 00000000..22683855 --- /dev/null +++ b/meta-ti-extras/recipes-ti/mathlib/mathlib-c66x_git.bb @@ -0,0 +1,5 @@ +include mathlib.inc + +MATHLIB_BUILD_TARGET = "c66x" +MATHLIB_INSTALL_DIR_RECIPE = "${MATHLIB_C66_INSTALL_DIR_RECIPE}" +MATHLIB_INSTALL_DIR = "${MATHLIB_C66_INSTALL_DIR}" diff --git a/meta-ti-extras/recipes-ti/mathlib/mathlib-c674x_git.bb b/meta-ti-extras/recipes-ti/mathlib/mathlib-c674x_git.bb new file mode 100644 index 00000000..1654baf2 --- /dev/null +++ b/meta-ti-extras/recipes-ti/mathlib/mathlib-c674x_git.bb @@ -0,0 +1,5 @@ +include mathlib.inc + +MATHLIB_BUILD_TARGET = "c674x" +MATHLIB_INSTALL_DIR_RECIPE = "${MATHLIB_C674_INSTALL_DIR_RECIPE}" +MATHLIB_INSTALL_DIR = "${MATHLIB_C674_INSTALL_DIR}" diff --git a/meta-ti-extras/recipes-ti/mathlib/mathlib.inc b/meta-ti-extras/recipes-ti/mathlib/mathlib.inc new file mode 100644 index 00000000..6ad073ec --- /dev/null +++ b/meta-ti-extras/recipes-ti/mathlib/mathlib.inc @@ -0,0 +1,77 @@ +SUMMARY = "MATHLIB contains optimized floating-point math functions for TI DSPs" +HOMEPAGE = "http://git.ti.com/ep-processor-libraries/mathlib" +LICENSE = "BSD-3-Clause" + +require ../includes/ti-paths.inc + +PV = "3_1_2_4" +PR = "r2" + +DEPENDS = "ti-cgt6x-native \ + ti-xdctools-native \ + ti-sysbios \ + doxygen-native \ + zip-native \ + swtools" + +S = "${WORKDIR}/git" + +MATHLIB_GIT_BRANCH = "master" +MATHLIB_GIT_PROTOCOL = "https" +MATHLIB_GIT_URI = "git://git.ti.com/git/ep-processor-libraries/mathlib.git" +MATHLIB_SRCREV = "eadcc9547faf69789661b004bb0b5ef53bb69951" + +SRC_URI = "${MATHLIB_GIT_URI};protocol=${MATHLIB_GIT_PROTOCOL};branch=${MATHLIB_GIT_BRANCH}" +SRCREV = "${MATHLIB_SRCREV}" + +LIC_FILES_CHKSUM = "file://ti/mathlib/src/acosdp/acosdp.h;beginline=1;endline=35;md5=c133f7e139b46385906c861dd9552250" + +export MATHLIB_WORK_DIR="${S}" +export CGTOOLS_INSTALL_DIR = "${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" +export C64PCODEGENTOOL="${CGTOOLS_INSTALL_DIR}" +export C674CODEGENTOOL="${CGTOOLS_INSTALL_DIR}" +export C66CODEGENTOOL ="${CGTOOLS_INSTALL_DIR}" +export SWTOOLS_PATH = "${SWTOOLS_INSTALL_DIR}/ti/mas/swtools" +export XDCBUILDCFG="${SWTOOLS_PATH}/config.bld" + +PATH:append = ":${XDC_INSTALL_DIR}" + +XDCPATH.="${XDCCGROOT}/include;${XDC_INSTALL_DIR}/packages;${SYSBIOS_INSTALL_DIR}/packages;" +XDCPATH.="${SWTOOLS_INSTALL_DIR};${MATHLIB_WORK_DIR};" + +export XDCPATH + +MATHLIB_PACKAGE_NAME = "mathlib_${MATHLIB_BUILD_TARGET}_${PV}" + +do_compile() { + cd ${MATHLIB_WORK_DIR}/ti/mathlib; + xdc XDCARGS="${MATHLIB_BUILD_TARGET} bundle" XDCOPTIONS="-v" +} + +do_install() { + install -d ${D}${MATHLIB_INSTALL_DIR_RECIPE} + + find -name "${MATHLIB_PACKAGE_NAME}.zip" -exec unzip -o {} -d ${D}${MATHLIB_INSTALL_DIR_RECIPE} \; + cp -r ${D}${MATHLIB_INSTALL_DIR_RECIPE}/mathlib/. ${D}${MATHLIB_INSTALL_DIR_RECIPE} + rm -r ${D}${MATHLIB_INSTALL_DIR_RECIPE}/mathlib +} + +inherit deploy +addtask deploy before do_build after do_install + +do_deploy() { + install -d ${DEPLOYDIR} + # zip up files in ${D}${MATHLIB_INSTALL_DIR_RECIPE} + # and place the zip file in ${DEPLOYDIR} + mkdir ./${MATHLIB_PACKAGE_NAME} + cp -r ${D}${MATHLIB_INSTALL_DIR_RECIPE}/. ./${MATHLIB_PACKAGE_NAME} + zip -9 -y -r -q ${DEPLOYDIR}/${MATHLIB_PACKAGE_NAME}.zip ./${MATHLIB_PACKAGE_NAME} + rm -r ./${MATHLIB_PACKAGE_NAME} +} + +ALLOW_EMPTY:${PN} = "1" +FILES:${PN}-dev += "${MATHLIB_INSTALL_DIR_RECIPE}" + +INSANE_SKIP:${PN}-dev = "arch" +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST:ti-soc = "(.*)" diff --git a/meta-ti-extras/recipes-ti/openmp-rtos/openmp-rtos_git.bb b/meta-ti-extras/recipes-ti/openmp-rtos/openmp-rtos_git.bb new file mode 100644 index 00000000..aa4bc6cd --- /dev/null +++ b/meta-ti-extras/recipes-ti/openmp-rtos/openmp-rtos_git.bb @@ -0,0 +1,62 @@ +DESCRIPTION = "TI OpenMP RTOS" +HOMEPAGE = "git://git.ti.com/git/openmp/ti-openmp-dsp-runtime.git" +LICENSE = "BSD-3-Clause" + +require recipes-ti/includes/ti-paths.inc + +inherit features_check + +REQUIRED_MACHINE_FEATURES = "dsp" +REQUIRED_DISTRO_FEATURES = "openmp" + +PV = "2_06_03_00" +PR = "r0" + +OPENMP_RTOS_GIT_URI = "git://git.ti.com/git/openmp/ti-openmp-dsp-runtime.git" +OPENMP_RTOS_GIT_PROTOCOL = "https" +OPENMP_RTOS_GIT_BRANCH = "master" + +BRANCH = "${OPENMP_RTOS_GIT_BRANCH}" +SRC_URI = "${OPENMP_RTOS_GIT_URI};protocol=${OPENMP_RTOS_GIT_PROTOCOL};branch=${BRANCH}" + +SRCREV = "c090eb664d9815a36ead0e14f31e102590680fb8" + +LIC_FILES_CHKSUM = "file://docs/license/omp_manifest_template.html;md5=61a6972303c0447b7c056195d7ebafee" + +DEPENDS = "common-csl-ip-rtos doxygen-native libulm ti-xdctools-native ti-ipc-rtos ti-sysbios ti-cgt6x-native zip-native" + +COMPATIBLE_MACHINE = "omap-a15" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +S = "${WORKDIR}/git" +export IPC_DIR = "${IPC_INSTALL_DIR}" +export XDC_DIR = "${XDC_INSTALL_DIR}" +export BIOS_DIR = "${SYSBIOS_INSTALL_DIR}" +export ULM_DIR ="${STAGING_DIR_TARGET}/usr/share/ti/ulm" +export C6636_PDK_DIR ="${PDK_INSTALL_DIR}" +export AM572_PDK_DIR ="${PDK_INSTALL_DIR}" +export XDCCGROOT = "${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" + +export BUILD_AM572 = "0" + +BUILD_AM572:omap-a15 = "1" + +RELEASE_TARGET = "" +RELEASE_TARGET:omap-a15 = "am57xx" + +do_compile() { + make -f utils/product/Makefile .zipfile +} + +do_install() { + install -d ${D}${OMP_INSTALL_DIR_RECIPE} + cp -r ${S}/exports/openmp_dsp_${RELEASE_TARGET}_*/. -d ${D}${OMP_INSTALL_DIR_RECIPE} +} + +ALLOW_EMPTY:${PN} = "1" + +FILES:${PN}-dev += " \ + ${OMP_INSTALL_DIR_RECIPE}/ \ +" + +INSANE_SKIP:${PN}-dev = "arch" diff --git a/meta-ti-extras/recipes-ti/osal/ti-osal.inc b/meta-ti-extras/recipes-ti/osal/ti-osal.inc new file mode 100644 index 00000000..b0470793 --- /dev/null +++ b/meta-ti-extras/recipes-ti/osal/ti-osal.inc @@ -0,0 +1,24 @@ +DESCRIPTION = "TI Operating System Abstraction Library (OSAL)" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/osal" +LICENSE = "BSD-3-Clause & EPL-1.0" +SECTION = "devel" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc + +S = "${WORKDIR}/osal_${PV}" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/osal/${PV}/exports/osal_${PV}.tar.gz;name=osaltarball" + +do_install() { + install -d ${D}${OSAL_INSTALL_DIR_RECIPE} + cp -pPrf ${S}/* ${D}${OSAL_INSTALL_DIR_RECIPE} +} + +INSANE_SKIP:${PN}-dev = "staticdev" + +ALLOW_EMPTY:${PN} = "1" +FILES:${PN}-dev += "${OSAL_INSTALL_DIR_RECIPE}" + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST:ti-soc = "(.*)" diff --git a/meta-ti-extras/recipes-ti/osal/ti-osal_1.24.00.09.bb b/meta-ti-extras/recipes-ti/osal/ti-osal_1.24.00.09.bb new file mode 100644 index 00000000..226458be --- /dev/null +++ b/meta-ti-extras/recipes-ti/osal/ti-osal_1.24.00.09.bb @@ -0,0 +1,9 @@ +require ti-osal.inc + +PV = "1_24_00_09" +PR = "r0" + +LIC_FILES_CHKSUM = "file://osal_${PV}_Manifest.html;md5=c110191994d011cee4cd02189ed3c9f4" + +SRC_URI[osaltarball.md5sum] = "a7ea85447fa0ff0f786d527a52fa6e8b" +SRC_URI[osaltarball.sha256sum] = "d14f1f43c8a7965e86add69bd813cea56ea7e38abeb55de3fdcdaf4a69f19bf3" diff --git a/meta-ti-extras/recipes-ti/swtools/swtools_git.bb b/meta-ti-extras/recipes-ti/swtools/swtools_git.bb new file mode 100644 index 00000000..4bcd6754 --- /dev/null +++ b/meta-ti-extras/recipes-ti/swtools/swtools_git.bb @@ -0,0 +1,52 @@ +SUMMARY = "TI Software Tools" +HOMEPAGE = "https://git.ti.com/ep-processor-libraries/swtools" +SECTION = "devel" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://ti/mas/swtools/copyright.txt;md5=b1f52a1435051fdb18f8885b0384147d" + +require ../includes/ti-paths.inc + +DEPENDS = "ti-cgt6x-native \ + ti-sysbios \ + ti-xdctools-native" + +PV = "5_0_8" +PR = "r3" +S = "${WORKDIR}/git" + +SWTOOLS_GIT_BRANCH = "master" +SWTOOLS_GIT_PROTOCOL = "https" +SWTOOLS_GIT_URI = "git://git.ti.com/git/ep-processor-libraries/swtools.git" +SWTOOLS_SRCREV = "7d1c85e686b1466cd2d535fc9cac5baf1aae24a4" + +SRC_URI = "${SWTOOLS_GIT_URI};protocol=${SWTOOLS_GIT_PROTOCOL};branch=${SWTOOLS_GIT_BRANCH}" +SRCREV = "${SWTOOLS_SRCREV}" + + +export C64PCODEGENTOOL = "${CGTOOLS_INSTALL_DIR}" +export C674CODEGENTOOL = "${CGTOOLS_INSTALL_DIR}" +export C66CODEGENTOOL = "${CGTOOLS_INSTALL_DIR}" + +PATH:append = ":${XDC_INSTALL_DIR}" + +XDCPATH .= "${XDCCGROOT}/include;${XDC_INSTALL_DIR}/packages;${SYSBIOS_INSTALL_DIR}/packages;" + +export XDCPATH + +do_compile() { + cd ${S}/ti/mas/swtools + xdc +} + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${SWTOOLS_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${SWTOOLS_INSTALL_DIR_RECIPE} +} + +FILES:${PN}-dev += "${SWTOOLS_INSTALL_DIR_RECIPE}" + +INSANE_SKIP:${PN}-dev = "arch staticdev" +ALLOW_EMPTY:${PN} = "1" +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST:ti-soc = "(.*)" diff --git a/meta-ti-extras/recipes-ti/vlib/vlib-c66x.inc b/meta-ti-extras/recipes-ti/vlib/vlib-c66x.inc new file mode 100644 index 00000000..6b5e186c --- /dev/null +++ b/meta-ti-extras/recipes-ti/vlib/vlib-c66x.inc @@ -0,0 +1,32 @@ +DESCRIPTION = "TI Vision Library (VLIB) for C66x" +HOMEPAGE = "http://software-dl.ti.com/libs/vlib/latest/index_FDS.html" +SECTION = "devel" +LICENSE = "TI-TSPA & BSD-3-Clause" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc +require ../includes/ti-eula-unpack.inc + +COMPATIBLE_MACHINE = "omap-a15" + +SRC_URI = "http://software-dl.ti.com/libs/vlib/${PV}//exports/vlib_c66x_obj_${PV}_Linux.bin;name=vlibbin" + +S = "${WORKDIR}/vlib_c66x_${PV}" + +BINFILE="vlib_c66x_obj_${PV}_Linux.bin" +TI_BIN_UNPK_ARGS = "--mode silent --prefix ${S}" +TI_BIN_UNPK_CMDS="" + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${VLIB_C66_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${VLIB_C66_INSTALL_DIR_RECIPE} +} + +ALLOW_EMPTY:${PN} = "1" +FILES:${PN}-dev += "${VLIB_C66_INSTALL_DIR_RECIPE}" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INSANE_SKIP:${PN}-dev = "arch" diff --git a/meta-ti-extras/recipes-ti/vlib/vlib-c66x_3.2.1.0.bb b/meta-ti-extras/recipes-ti/vlib/vlib-c66x_3.2.1.0.bb new file mode 100644 index 00000000..e3742d10 --- /dev/null +++ b/meta-ti-extras/recipes-ti/vlib/vlib-c66x_3.2.1.0.bb @@ -0,0 +1,9 @@ +require vlib-c66x.inc + +PV = "3_2_1_0" +PR = "r0" + +LIC_FILES_CHKSUM = "file://docs/VLIB_Software_Manifest.html;md5=75151b04457c8a1ae3c2172ada0eedda" + +SRC_URI[vlibbin.md5sum] = "e292fa3f74be60b9110e0ebcc6840fe7" +SRC_URI[vlibbin.sha256sum] = "05bf16473d60e0252d3a73a7c3d268e540783a226b4bda930e5f6042e7b01bd8" diff --git a/meta-ti-extras/recipes-ti/xdais/ti-xdais.inc b/meta-ti-extras/recipes-ti/xdais/ti-xdais.inc new file mode 100644 index 00000000..67d19022 --- /dev/null +++ b/meta-ti-extras/recipes-ti/xdais/ti-xdais.inc @@ -0,0 +1,25 @@ +DESCRIPTION = "TI eXpress DSP Algorithm Interface Standard (XDAIS) specification" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/xdais" +LICENSE = "GPL-2.0-only" +SECTION = "devel" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc + +S = "${WORKDIR}/xdais_${PV}" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/xdais/${PV}/exports/xdais_${PV}.tar.gz;name=xdaistarball" + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${XDAIS_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${XDAIS_INSTALL_DIR_RECIPE} +} + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INSANE_SKIP:${PN}-dev = "arch" + +ALLOW_EMPTY:${PN} = "1" +FILES:${PN}-dev += "${XDAIS_INSTALL_DIR_RECIPE}" diff --git a/meta-ti-extras/recipes-ti/xdais/ti-xdais_6.26.01.03.bb b/meta-ti-extras/recipes-ti/xdais/ti-xdais_6.26.01.03.bb new file mode 100644 index 00000000..ee9826e6 --- /dev/null +++ b/meta-ti-extras/recipes-ti/xdais/ti-xdais_6.26.01.03.bb @@ -0,0 +1,9 @@ +require ti-xdais.inc + +PV = "6_26_01_03" +PR = "r1" + +LIC_FILES_CHKSUM = "file://xdais_6_26_01_03_manifest.html;md5=a5a675d49db2f658bb98746ec80cda4e" + +SRC_URI[xdaistarball.md5sum] = "9b2bea3408254e737ec0d819a031adf6" +SRC_URI[xdaistarball.sha256sum] = "d7bcbd8bcfe6fdfc5f402e4b125ced6c806dc30bc5296e98d5d43b0b5a237a0d" diff --git a/meta-ti-extras/recipes-ti/xdais/ti-xdais_7.24.00.04.bb b/meta-ti-extras/recipes-ti/xdais/ti-xdais_7.24.00.04.bb new file mode 100644 index 00000000..8148f73a --- /dev/null +++ b/meta-ti-extras/recipes-ti/xdais/ti-xdais_7.24.00.04.bb @@ -0,0 +1,9 @@ +require ti-xdais.inc + +PV = "7_24_00_04" +PR = "r1" + +LIC_FILES_CHKSUM = "file://xdais_7_24_00_04_Manifest.html;md5=fd16442230745f0877cfe1c622669fd6" + +SRC_URI[xdaistarball.md5sum] = "f7514085b531f2ae49b37b30194e4989" +SRC_URI[xdaistarball.sha256sum] = "79fd30377ab4c497292aeefb0565f81703d9020d1242b02ca9968c561e0de9a1" |