diff options
author | 2020-03-30 09:24:26 +0900 | |
---|---|---|
committer | 2020-03-30 09:24:26 +0900 | |
commit | 5b80bfd7bffd4c20d80b7c70a7130529e9a755dd (patch) | |
tree | b4bb18dcd1487dbf1ea8127e5671b7bb2eded033 /bsp/meta-ti/recipes-ti | |
parent | 706ad73eb02caf8532deaf5d38995bd258725cb8 (diff) |
agl-basesystem
Diffstat (limited to 'bsp/meta-ti/recipes-ti')
134 files changed, 4212 insertions, 0 deletions
diff --git a/bsp/meta-ti/recipes-ti/README b/bsp/meta-ti/recipes-ti/README new file mode 100644 index 00000000..b32c2842 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/README @@ -0,0 +1 @@ +Note: some of the packages in this area are not actively maintained. diff --git a/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-capes.bb b/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-capes.bb new file mode 100644 index 00000000..e74033a1 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-capes.bb @@ -0,0 +1,26 @@ +DESCRIPTION = "Userspace setup for beaglebone capes" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690" + +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/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-capes/cape-stop.sh b/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-capes/cape-stop.sh new file mode 100755 index 00000000..222a010d --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-capes/cape.service b/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-capes/cape.service new file mode 100644 index 00000000..ce0db719 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-capes/cape.sh b/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-capes/cape.sh new file mode 100755 index 00000000..c279349d --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-getting-started.bb b/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-getting-started.bb new file mode 100644 index 00000000..6c61a4e9 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/beagleboard/beaglebone-getting-started.bb @@ -0,0 +1,20 @@ +DESCRIPTION = "BeagleBone Getting Started Guide" + +PR = "r21" + +inherit allarch + +LICENSE = "GPLv2+ & MIT & PD & others" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=603591dea023c3c75b48e07cb47ce639" + +SRCREV = "6c548a307c948b28a99d48fd17d9790b56182196" +SRC_URI = "git://github.com/jadonk/beaglebone-getting-started.git" + +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}" diff --git a/bsp/meta-ti/recipes-ti/beagleboard/gadget-init.bb b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init.bb new file mode 100644 index 00000000..8b899c51 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init.bb @@ -0,0 +1,60 @@ +DESCRIPTION = "Units to initialize usb gadgets" + +PR = "r19" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690" + +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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/bone-gmass-eject.rules b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/bone-gmass-eject.rules new file mode 100644 index 00000000..ee6f93e2 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/g-ether-load.sh b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/g-ether-load.sh new file mode 100755 index 00000000..f9400649 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/g-ether-start-service.sh b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/g-ether-start-service.sh new file mode 100755 index 00000000..6e73b155 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/g-storage-reinsert.sh b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/g-storage-reinsert.sh new file mode 100755 index 00000000..d358640a --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/network-gadget-init.service b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/network-gadget-init.service new file mode 100644 index 00000000..0ee29147 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/storage-gadget-init.service b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/storage-gadget-init.service new file mode 100644 index 00000000..9a8513e8 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/udhcpd.conf b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/udhcpd.conf new file mode 100644 index 00000000..3bcf00f0 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/udhcpd.rules b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/udhcpd.rules new file mode 100644 index 00000000..db65f9ac --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/udhcpd.service b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/udhcpd.service new file mode 100644 index 00000000..1f4ac688 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/update-image-info-on-mmcblk0p1.sh b/bsp/meta-ti/recipes-ti/beagleboard/gadget-init/update-image-info-on-mmcblk0p1.sh new file mode 100755 index 00000000..a4daf734 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/bios/ti-biosutils.inc b/bsp/meta-ti/recipes-ti/bios/ti-biosutils.inc new file mode 100644 index 00000000..d562c2dd --- /dev/null +++ b/bsp/meta-ti/recipes-ti/bios/ti-biosutils.inc @@ -0,0 +1,18 @@ +DESCRIPTION = "TI DSP/BIOS Utilities" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/Bios_Utils" +SECTION = "devel" +LICENSE = "TI" +LIC_FILES_CHKSUM = "file://packages/ti/bios/utils/Load.c;md5=e666d585907c3456e82b7e10f7a09a73" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc + +S = "${WORKDIR}/biosutils_${PV}" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/Bios_Utils/${PV}${PVsuffix}/exports/biosutils_${PV}.tar.gz;name=biosutilstarball" + +do_install() { + install -d ${D}${BIOSUTILS_INSTALL_DIR_RECIPE} + cp -pPrf ${S}/* ${D}${BIOSUTILS_INSTALL_DIR_RECIPE} +} + diff --git a/bsp/meta-ti/recipes-ti/bios/ti-biosutils_1.02.02.bb b/bsp/meta-ti/recipes-ti/bios/ti-biosutils_1.02.02.bb new file mode 100644 index 00000000..01c070d7 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/bios/ti-biosutils_1.02.02.bb @@ -0,0 +1,12 @@ +require ti-biosutils.inc + +PV = "1_02_02" +PVsuffix = "_02" + +SRC_URI[biosutilstarball.md5sum] = "0654e9e72b0a6fc7a6575829c0cd90c9" +SRC_URI[biosutilstarball.sha256sum] = "df486500bdc8dbe3800fc7efe4241e6fa5b1827ba7c0dc17a71b41d42ef921e1" + +INSANE_SKIP_${PN} = "installed-vs-shipped" + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST_ti-soc = "(.*)" diff --git a/bsp/meta-ti/recipes-ti/bios/ti-dspbios.inc b/bsp/meta-ti/recipes-ti/bios/ti-dspbios.inc new file mode 100644 index 00000000..0e3fa62d --- /dev/null +++ b/bsp/meta-ti/recipes-ti/bios/ti-dspbios.inc @@ -0,0 +1,25 @@ +DESCRIPTION = "TI DSP/BIOS v5 Kernel" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/bios/dspbios" +SECTION = "devel" +LICENSE = "TI" + +# We can't depend on license files to be present, so just use the TI logo +LIC_FILES_CHKSUM = "file://docs/tilogo.gif;md5=f049a774c576a5cef3fca4932d707b39" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc +require ../includes/ti-eula-unpack.inc + +TI_BIN_UNPK_WDEXT="/bios_${PV}" +S = "${WORKDIR}${TI_BIN_UNPK_WDEXT}" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/bios/dspbios/${PV}/exports/bios_setuplinux_${PV}.bin;name=biosbin" + +BINFILE="bios_setuplinux_${PV}.bin" +TI_BIN_UNPK_CMDS="Y: qY:workdir:Y" + +do_install() { + install -d ${D}${BIOS_INSTALL_DIR_RECIPE} + cp -pPrf ${S}/* ${D}${BIOS_INSTALL_DIR_RECIPE} +} + diff --git a/bsp/meta-ti/recipes-ti/bios/ti-sysbios.inc b/bsp/meta-ti/recipes-ti/bios/ti-sysbios.inc new file mode 100644 index 00000000..d2a551fc --- /dev/null +++ b/bsp/meta-ti/recipes-ti/bios/ti-sysbios.inc @@ -0,0 +1,29 @@ +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" + +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_setuplinux_${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/bsp/meta-ti/recipes-ti/bios/ti-sysbios_6.75.02.00.bb b/bsp/meta-ti/recipes-ti/bios/ti-sysbios_6.75.02.00.bb new file mode 100644 index 00000000..553d43e1 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/bios/ti-sysbios_6.75.02.00.bb @@ -0,0 +1,15 @@ +require recipes-ti/bios/ti-sysbios.inc + +PV = "6_75_02_00" +PR = "r0" + +LIC_FILES_CHKSUM = "file://manifest_bios_${PV}.html;md5=5cf40699c51b26d36fc01647c0b27fb1" + +SRC_URI[sysbiosbin.md5sum] = "8bca751d3054e74b9edb510a0d099095" +SRC_URI[sysbiosbin.sha256sum] = "c92cb72f86656b1e37454e238e9838f301eeeb4d711a0f4a84089ef80ccb6013" + +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/bsp/meta-ti/recipes-ti/codec-engine/ti-codec-engine_3.24.00.08.bb b/bsp/meta-ti/recipes-ti/codec-engine/ti-codec-engine_3.24.00.08.bb new file mode 100644 index 00000000..aa538412 --- /dev/null +++ b/bsp/meta-ti/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" + +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/bsp/meta-ti/recipes-ti/ctoolslib/libaet_git.bb b/bsp/meta-ti/recipes-ti/ctoolslib/libaet_git.bb new file mode 100644 index 00000000..626ba926 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ctoolslib/libaet_git.bb @@ -0,0 +1,39 @@ +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" + +PV = "4.19.0.0" + +LIC_FILES_CHKSUM = "file://../ctoolslib_manifest.html;md5=b7dd369a2e07ef9a71795ee5a9bd01bd" + +SRC_URI = "git://git.ti.com/sdo-emu/ctoolslib.git;protocol=git;branch=opencl_aetlib_build" +SRCREV = "de7954abab0f0caa8a2c7b53095c30226d901a31" + +DEPENDS = "ti-cgt6x-native" +PR = "r0" + +S = "${WORKDIR}/git/aet" + +DEVICE="" +DEVICE_dra7xx = "DRA7xx" +DEVICE_keystone = "C66AK2Hxx" + +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|keystone" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +FILES_${PN}-dev += "\ + ${datadir}/ti/ctoolslib/aet \ +" + +ALLOW_EMPTY_${PN} = "1" diff --git a/bsp/meta-ti/recipes-ti/devtools/gcc-arm-none-eabi-native_4.9.2015q3.bb b/bsp/meta-ti/recipes-ti/devtools/gcc-arm-none-eabi-native_4.9.2015q3.bb new file mode 100644 index 00000000..1fe5c525 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/gcc-arm-none-eabi-native_4.9.2015q3.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "Baremetal GCC for ARM" +LICENSE = "GPL-3.0-with-GCC-exception & GPLv3" + +LIC_FILES_CHKSUM = "file://share/doc/gcc-arm-none-eabi/license.txt;md5=cba77c7fde3ed13e866b04a2f3d93918" + +inherit native +require recipes-ti/includes/ti-paths.inc + +SRC_URI = "https://launchpad.net/gcc-arm-embedded/4.9/4.9-2015-q3-update/+download/gcc-arm-none-eabi-4_9-2015q3-20150921-linux.tar.bz2;name=gcc-arm-none" + +SRC_URI[gcc-arm-none.md5sum] = "8a4a74872830f80c788c944877d3ad8c" +SRC_URI[gcc-arm-none.sha256sum] = "c50078bfbd29e6c15615900e746f4d0acde917338e55860b0f145f57387c12ab" + +S = "${WORKDIR}/gcc-arm-none-eabi-4_9-2015q3" + +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" diff --git a/bsp/meta-ti/recipes-ti/devtools/gcc-arm-none-eabi_7-2018-q2-update.bb b/bsp/meta-ti/recipes-ti/devtools/gcc-arm-none-eabi_7-2018-q2-update.bb new file mode 100644 index 00000000..f474c87f --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/gcc-arm-none-eabi_7-2018-q2-update.bb @@ -0,0 +1,29 @@ +DESCRIPTION = "Baremetal GCC for ARM" +LICENSE = "GPL-3.0-with-GCC-exception & GPLv3" + +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/bsp/meta-ti/recipes-ti/devtools/gcc-linaro-baremetal-aarch64-native.bb b/bsp/meta-ti/recipes-ti/devtools/gcc-linaro-baremetal-aarch64-native.bb new file mode 100644 index 00000000..97344f90 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/gcc-linaro-baremetal-aarch64-native.bb @@ -0,0 +1,23 @@ +include recipes-ti/devtools/gcc-linaro.inc + +PACKAGE_DIR = "gcc-linaro-${PV}-${GCC_ARM_YEAR}-x86_64_aarch64-elf" +S = "${WORKDIR}/${PACKAGE_DIR}" + +LIC_CHKSUM = "bc7fad4bba98e7a4cd5ab3042506493c" + +inherit native +require recipes-ti/includes/ti-paths.inc + +SRC_URI = "https://releases.linaro.org/components/toolchain/binaries/7.2-${GCC_ARM_YEAR}/aarch64-elf/gcc-linaro-${PV}-${GCC_ARM_YEAR}-x86_64_aarch64-elf.tar.xz;name=gcc-linaro-aarch64" + +SRC_URI[gcc-linaro-aarch64.md5sum] = "4972f8943820bdd2f577f498de78964b" +SRC_URI[gcc-linaro-aarch64.sha256sum] = "30fb7d876bcb982c502057c593d9c1f11b35d5158a26d986718e2b998388c4c8" + +do_install() { + install -d ${D}${GCC_LINARO_BAREMETAL_AARCH64_TOOLCHAIN_RECIPE} + cp -r ${S}/. ${D}${GCC_LINARO_BAREMETAL_AARCH64_TOOLCHAIN_RECIPE} +} + +FILES_${PN} = "${GCC_LINARO_BAREMETAL_AARCH64_TOOLCHAIN_RECIPE}/*" + +INSANE_SKIP_${PN} = "already-stripped" diff --git a/bsp/meta-ti/recipes-ti/devtools/gcc-linaro-baremetal-native.bb b/bsp/meta-ti/recipes-ti/devtools/gcc-linaro-baremetal-native.bb new file mode 100644 index 00000000..0268ae3d --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/gcc-linaro-baremetal-native.bb @@ -0,0 +1,23 @@ +include recipes-ti/devtools/gcc-linaro.inc + +PACKAGE_DIR = "gcc-linaro-${PV}-${GCC_ARM_YEAR}-x86_64_arm-eabi" +S = "${WORKDIR}/${PACKAGE_DIR}" + +LIC_CHKSUM = "bc7fad4bba98e7a4cd5ab3042506493c" + +inherit native +require recipes-ti/includes/ti-paths.inc + +SRC_URI = "https://releases.linaro.org/components/toolchain/binaries/7.2-${GCC_ARM_YEAR}/arm-eabi/gcc-linaro-${PV}-${GCC_ARM_YEAR}-x86_64_arm-eabi.tar.xz;name=gcc-linaro" + +SRC_URI[gcc-linaro.md5sum] = "9a4a39cfc78c84375b1160aa93587aed" +SRC_URI[gcc-linaro.sha256sum] = "45fc4f90af2e2e9c3197a275f6005ef5639f7a1889fa3eb24c3125ccd70fcd3d" + +do_install() { + install -d ${D}${GCC_LINARO_BAREMETAL_TOOLCHAIN_RECIPE} + cp -r ${S}/. ${D}${GCC_LINARO_BAREMETAL_TOOLCHAIN_RECIPE} +} + +FILES_${PN} = "${GCC_LINARO_BAREMETAL_TOOLCHAIN_RECIPE}/*" + +INSANE_SKIP_${PN} = "already-stripped" diff --git a/bsp/meta-ti/recipes-ti/devtools/gcc-linaro.inc b/bsp/meta-ti/recipes-ti/devtools/gcc-linaro.inc new file mode 100644 index 00000000..19f5a2cf --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/gcc-linaro.inc @@ -0,0 +1,10 @@ +DESCRIPTION = "Linaro GCC for ARM" +HOMEPAGE = "https://launchpad.net/gcc-arm-embedded" +SECTION = "devel" +LICENSE = "GPL-3.0-with-GCC-exception & GPLv3" +LIC_FILES_CHKSUM = "file://share/doc/gcc/GNU-Free-Documentation-License.html;md5=${LIC_CHKSUM}" + +PV = "7.2.1" +PR = "r0" + +GCC_ARM_YEAR = "2017.11" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-cg-xml_2.61.00.bb b/bsp/meta-ti/recipes-ti/devtools/ti-cg-xml_2.61.00.bb new file mode 100644 index 00000000..e618af5a --- /dev/null +++ b/bsp/meta-ti/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" + +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/bsp/meta-ti/recipes-ti/devtools/ti-cgt-arm-native_18.12.1.bb b/bsp/meta-ti/recipes-ti/devtools/ti-cgt-arm-native_18.12.1.bb new file mode 100644 index 00000000..7df9660c --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-cgt-arm-native_18.12.1.bb @@ -0,0 +1,6 @@ +include ti-cgt-arm.inc + +LIC_FILES_CHKSUM = "file://ti-cgt-arm_${PV}.LTS/README.txt;md5=ab7a61241e90fcd144a756d88294cf30" + +BINFILE_MD5 = "af2378cf8d5d6f200ef3329f5a065529" +BINFILE_SHA256 = "d90ae2360cd5b22912715ae7898d99352da1b97fd655f9a55d0d19a2a46bab0e" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-cgt-arm.inc b/bsp/meta-ti/recipes-ti/devtools/ti-cgt-arm.inc new file mode 100644 index 00000000..d2d768ce --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-cgt-arm.inc @@ -0,0 +1,36 @@ +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 & Hewlett-Packard & Patrick-Powell & AFL-3.0 & MIT & BSD-2-Clause & PD & BSD-4-Clause" + +inherit native +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}" + +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 = "" + +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] = "${BINFILE_MD5}" +SRC_URI[cgt_arm_installer.sha256sum] = "${BINFILE_SHA256}" + +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" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-cgt-pru_2.2.1.bb b/bsp/meta-ti/recipes-ti/devtools/ti-cgt-pru_2.2.1.bb new file mode 100644 index 00000000..8d3887e5 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-cgt-pru_2.2.1.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.2.x_manifest.html;md5=e84b4022808f66b075095cb896747758" +LIC_FILES_CHKSUM_class-target = "file://usr/share/doc/ti/cgt-pru/PRU_Code_Generation_Tools_2.2.x_manifest.html;md5=e84b4022808f66b075095cb896747758" + +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] = "749d75841eef7b465c7cb08beaa1d135" +SRC_URI[cgt-pru-x86.sha256sum] = "7dc37fd689d1d506bf410d2a00af658b93a58d4bc10ac32c2210129dab617377" + +SRC_URI[cgt-pru-arm.md5sum] = "389eef56777e30e6dab337efca4af2bf" +SRC_URI[cgt-pru-arm.sha256sum] = "b47a032f67cb3a3e5bea8ee3ed1908038f42938dd08e2ff72fc64f7aae2c1ff8" + +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" + +BBCLASSEXTEND = "native nativesdk" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-cgt470.inc b/bsp/meta-ti/recipes-ti/devtools/ti-cgt470.inc new file mode 100644 index 00000000..f0992aa7 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/devtools/ti-cgt470_4.6.6.bb b/bsp/meta-ti/recipes-ti/devtools/ti-cgt470_4.6.6.bb new file mode 100644 index 00000000..6ff2cc48 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x-7-native_7.4.16.bb b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x-7-native_7.4.16.bb new file mode 100644 index 00000000..7bb4c75e --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x-7-native_7.4.16.bb @@ -0,0 +1,41 @@ +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" + +inherit native +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" + +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" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x.inc b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x.inc new file mode 100644 index 00000000..1d00a553 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x.inc @@ -0,0 +1,24 @@ +DESCRIPTION = "TI DSP Code Generation Tools" +HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm" +SECTION = "devel" +LICENSE = "TI" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc +require ../includes/ti-eula-unpack.inc + +PR = "r4" + +S = "${WORKDIR}/cgt6x_${PV}" + +SRC_URI = "http://install.source.dir.local/ti_cgt_c6000_${PVwithdots}_setup_linux_x86.bin;name=cgt6xbin" + +BINFILE="ti_cgt_c6000_${PVwithdots}_setup_linux_x86.bin" +TI_BIN_UNPK_CMDS="Y:qY:workdir: : " +TI_BIN_UNPK_WDEXT="/cgt6x_${PV}" + +do_install() { + install -d ${D}${CODEGEN_INSTALL_DIR_RECIPE} + cp -pPrf ${S}/* ${D}${CODEGEN_INSTALL_DIR_RECIPE} +} + diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x_6.1.20.bb b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x_6.1.20.bb new file mode 100644 index 00000000..1d6609c8 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x_6.1.20.bb @@ -0,0 +1,11 @@ +require ti-cgt6x.inc + +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=62f46f1125a152a2e213b414db7ac600" + +PE = "1" +PV = "6_1_20" +PVwithdots = "6.1.20" + +SRC_URI[cgt6xbin.md5sum] = "39485ea8211960de0a958ab27106ab9b" +SRC_URI[cgt6xbin.sha256sum] = "a020142011c8160e24f6386f7696ecfbfe02dab2a6c83af74ce6b67eb1da9900" + diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x_7.2.7.bb b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x_7.2.7.bb new file mode 100644 index 00000000..a2266004 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x_7.2.7.bb @@ -0,0 +1,13 @@ +require ti-cgt6x.inc + +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=62f46f1125a152a2e213b414db7ac600" + +PE = "1" +PV = "7_2_7" +PVwithdots = "7.2.7" + +SRC_URI[cgt6xbin.md5sum] = "71a0768a541fdebd9c35d44301019d1d" +SRC_URI[cgt6xbin.sha256sum] = "211477f0142d603975544abe3c45cc3b77a3b38038158676c60812806378738b" + + +INSANE_SKIP_${PN} = "installed-vs-shipped" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x_8.3.2.bb b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x_8.3.2.bb new file mode 100644 index 00000000..deee61c7 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-cgt6x_8.3.2.bb @@ -0,0 +1,104 @@ +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" + +BBCLASSEXTEND = "native nativesdk" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-xdctools-common.inc b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools-common.inc new file mode 100644 index 00000000..27f8f908 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools-common.inc @@ -0,0 +1,68 @@ +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 & GPLv2" + +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 \ +" + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST_ti-soc = "(.*)" +COMPATIBLE_HOST_class-native = "(.*)" +COMPATIBLE_HOST_class-nativesdk = "(.*)" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-xdctools-core.inc b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools-core.inc new file mode 100644 index 00000000..47f73b6d --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools-core.inc @@ -0,0 +1,5 @@ +require ti-xdctools-common.inc + +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" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-xdctools.inc b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools.inc new file mode 100644 index 00000000..1415f83e --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools.inc @@ -0,0 +1,10 @@ +require ti-xdctools-common.inc +require ../includes/ti-eula-unpack.inc + +S = "${WORKDIR}/xdctools_${PV}" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/rtsc/${PV}/exports/xdctools_setuplinux_${PV}.bin;name=xdcbin" + +BINFILE="xdctools_setuplinux_${PV}.bin" +TI_BIN_UNPK_CMDS="Y:workdir:Y" +TI_BIN_UNPK_WDEXT="/ti" diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-xdctools/arm-linker-hack.diff b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools/arm-linker-hack.diff new file mode 100644 index 00000000..26debf8f --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools/arm-linker-hack.diff @@ -0,0 +1,19 @@ +--- a/packages/gnu/targets/arm/linkcmd.xdt 2010-12-30 19:33:53.000000000 +0100 ++++ b/packages/gnu/targets/arm/linkcmd.xdt 2010-12-30 19:42:55.000000000 +0100 +@@ -40,12 +40,13 @@ + + %if ("BINVERS" in prog.build.target) { + % var _utils = xdc.loadCapsule("gnu/targets/linkUtils.xs"); ++% if (prog.build.target.GCCVERS < "4.3.3") { + SECTIONS { + `_utils.genSections(prog)` + } +- +-% if (!prog.build.target.noStdLinkScript +-% && prog.build.target.BINVERS >= "2.19") { ++% } ++% if (prog.build.target.noStdLinkScript ++% && prog.build.target.BINVERS >= "2.19") { + INSERT BEFORE .gnu.attributes + % } + diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-xdctools/fix-hardcoded-paths.diff b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools/fix-hardcoded-paths.diff new file mode 100644 index 00000000..36142c47 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools/fix-hardcoded-paths.diff @@ -0,0 +1,21 @@ +diff -ur a/packages/gnu/targets/ITarget.xs b/packages/gnu/targets/ITarget.xs +--- a/packages/gnu/targets/ITarget.xs 2011-08-06 13:24:44.000000000 +0200 ++++ b/packages/gnu/targets/ITarget.xs 2011-08-06 13:23:37.000000000 +0200 +@@ -251,7 +251,7 @@ + + function askLd(target) + { +- var ldCmd = target.rootDir + "/" + target.GCCTARG + "/bin/ld"; ++ var ldCmd = target.rootDir + "/" + target.GCCTARG + "-ld"; + /* If the ld executable cannot be found, and the prefix is not used, + * it's probably a misspelled directory path. + */ +@@ -486,7 +486,7 @@ + tool2cmd["link"] = cmd; + + /* define the ar command template */ +- cmd = prefix + target.ar.cmd ++ cmd = prefix + target.GCCTARG + "-ar" + + " $(AROPTS_P) " + target.ar.opts + + " $@ $(AROPTS_S) $(aropts) $(files)"; + tool2cmd["ar"] = cmd; diff --git a/bsp/meta-ti/recipes-ti/devtools/ti-xdctools_3.51.01.18.bb b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools_3.51.01.18.bb new file mode 100644 index 00000000..35258b4d --- /dev/null +++ b/bsp/meta-ti/recipes-ti/devtools/ti-xdctools_3.51.01.18.bb @@ -0,0 +1,9 @@ +require recipes-ti/devtools/ti-xdctools-core.inc + +PV = "3_51_01_18" +PR = "r0" + +LIC_FILES_CHKSUM = "file://docs/license/xdc/shelf/package.html;beginline=1;endline=140;md5=7d8508a640d8e76fe372141df01c351f" + +SRC_URI[xdczip.md5sum] = "54b80b603471623c1dbb0cfeb75b0fe2" +SRC_URI[xdczip.sha256sum] = "9bbbf433f0970bcb0cbf938615afe4d54420ecc56bc6e872f1a004338a8f19d5" diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai.inc b/bsp/meta-ti/recipes-ti/dmai/ti-dmai.inc new file mode 100644 index 00000000..50621184 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai.inc @@ -0,0 +1,162 @@ +DESCRIPTION = "Davinci Multimedia Application Interface (DMAI) for TI ARM/DSP processors" +HOMEPAGE = "https://gforge.ti.com/gf/project/dmai/" +SECTION = "multimedia" +LICENSE = "BSD" + +# TODO :: + +require recipes-ti/includes/ti-paths.inc +require recipes-ti/includes/ti-staging.inc + +PROVIDES += "ti-dmai-apps" + +PE = "1" + +SRCREV ?= "UNDEFINED_SRCREV" +DMAIBRANCH ?= "UNDEFINED_DMAIBRANCH" + +S = "${WORKDIR}/${DMAIBRANCH}/davinci_multimedia_application_interface/dmai_${PV}/dmai" + +SRC_URI = "svn://gforge.ti.com/svn/dmai/;module=${DMAIBRANCH};protocol=https;user=anonymous;pswd='' \ + file://loadmodules-ti-dmai-dm6446_al.sh \ + file://loadmodules-ti-dmai-dm6467_al.sh \ + file://loadmodules-ti-dmai-o3530_al.sh \ + file://loadmodules-ti-dmai-dm355_al.sh \ + file://loadmodules-ti-dmai-dm365_al.sh \ + file://loadmodules-ti-dmai-ol137_al.sh \ + file://loadmodules-ti-dmai-ol138_al.sh \ + file://doxygen_templates.tar.gz \ + file://arago-tdox \ + " + +DEPENDS = "virtual/kernel alsa-lib ti-framework-components ti-codec-engine ti-xdctools-native" + +DEPENDS_append_dm6446 = " ti-codecs-dm6446 ti-dspbios ti-cgt6x ti-linuxutils" +DEPENDS_append_dm6467 = " ti-codecs-dm6467 ti-dspbios ti-cgt6x ti-linuxutils" +DEPENDS_append_omap3 = " ti-codecs-omap3530 ti-dspbios ti-cgt6x ti-linuxutils" +DEPENDS_append_dm355 = " ti-codecs-dm355" +DEPENDS_append_dm365 = " ti-codecs-dm365" +DEPENDS_append_omapl137 = " ti-codecs-omapl137 ti-dspbios ti-cgt6x ti-linuxutils" +DEPENDS_append_omapl138 = " ti-codecs-omapl138 ti-dspbios ti-cgt6x ti-linuxutils" + +# Define DMAI build time variables +DMAIPLATFORM_dm6446 = "dm6446_al" +DMAIPLATFORM_dm6467 = "dm6467_al" +DMAIPLATFORM_omap3 = "o3530_al" +DMAIPLATFORM_dm355 = "dm355_al" +DMAIPLATFORM_dm365 = "dm365_al" +DMAIPLATFORM_omapl137 = "ol137_al" +DMAIPLATFORM_omapl138 = "ol138_al" +DMAIPLATFORM ?= "UNDEFINED_DMAIPLATFORM" + +# Need to set this for other platforms as well +#GPPOS_dm355 = "LINUX_GCC" +#GPPOS_dm365 = "LINUX_GCC" +#GPPOS ?= "UNDEFINEDGPPOS" + +# Need to re-define this for OMAP-L137/L138 +DSPSUFFIX_omapl137 = "x64P" +DSPSUFFIX_omapl138 = "x64P" +DSPSUFFIX ?= "x64p" + +# This is needed for dm355/dm365 targets in order to find ti.sdo.codecs.g711 +# TODO :: review - should we just pass this in do_compile? +USER_XDC_PATH = "${CE_INSTALL_DIR}/examples" + +PARALLEL_MAKE = "" + +do_prepsources() { + # run the release steps - this will delete .svn file and run doxygen to + # generate proper documentation of the source etc. + find ${WORKDIR}/${DMAIBRANCH} -name .svn -type d | xargs rm -rf + cp -pPrf ${WORKDIR}/doxygen_templates ${WORKDIR}/${DMAIBRANCH}/davinci_multimedia_application_interface + cp -pPrf ${WORKDIR}/arago-tdox ${WORKDIR}/${DMAIBRANCH}/davinci_multimedia_application_interface/tdox + chmod a+x ${WORKDIR}/${DMAIBRANCH}/davinci_multimedia_application_interface/release.sh + chmod a+x ${WORKDIR}/${DMAIBRANCH}/davinci_multimedia_application_interface/tdox + sed -i 's|tdox|./tdox|g' ${WORKDIR}/${DMAIBRANCH}/davinci_multimedia_application_interface/release.sh + rm -rf ${WORKDIR}/${DMAIBRANCH}/davinci_multimedia_application_interface/dmai_${PV}/* + (cd ${WORKDIR}/${DMAIBRANCH}/davinci_multimedia_application_interface; ./release.sh ${PV}) +} + +# run prepare sources before do_patch to ensure that sourceipk picks the right sources. +addtask prepsources after do_unpack before do_patch + +do_compile () { + # Recent kernel headers warn against inclusion from userspace + for makefile in $(find ${S} -name "Makefile") ; do + sed -i -e s:-Werror::g $makefile + done + + # Angstrom 2008 breaks with -Wl,-T, while angstrom 2010 needs it + if [ $(${TARGET_PREFIX}gcc -dumpversion | awk -F. '{print $2}') -gt 3 ] ; then + # Fix up linkerscripts, recent toolchains need -T to prepend the default script to the custom one + for appmakefile in $(find ${S} -name "Makefile.app") ; do + sed -i -e 's: $(XDC_CFG)/linker.cmd: -Wl,-T,$(XDC_CFG)/linker.cmd:g' $appmakefile + done + fi + + # TODO :: Why do we do this? + unset DMAI_INSTALL_DIR + cd ${S} + + make XDC_INSTALL_DIR="${XDC_INSTALL_DIR}" PLATFORM="${DMAIPLATFORM}" clean + + for dir in ${S}; do + cd $dir + # TODO: Figure out how to pass the alsa require location, currently + # LINUXLIBS_INSTALL_DIR is hard-coded for armv5te + make \ + CE_INSTALL_DIR="${CE_INSTALL_DIR}" \ + CODEC_INSTALL_DIR="${CODEC_INSTALL_DIR}" \ + FC_INSTALL_DIR="${FC_INSTALL_DIR}" \ + LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \ + XDC_INSTALL_DIR="${XDC_INSTALL_DIR}" \ + CODEGEN_INSTALL_DIR="${CODEGEN_INSTALL_DIR}" \ + BIOS_INSTALL_DIR="${BIOS_INSTALL_DIR}"\ + LINUXLIBS_INSTALL_DIR="${STAGING_DIR_TARGET}/usr" \ + USER_XDC_PATH="${USER_XDC_PATH}" \ + CROSS_COMPILE="${TOOLCHAIN_PATH}/${TARGET_PREFIX}" \ + CSTOOL_DIR="${TOOLCHAIN_PATH}" \ + VERBOSE="true" \ + XDAIS_INSTALL_DIR="${XDAIS_INSTALL_DIR}" \ + LINK_INSTALL_DIR="${LINK_INSTALL_DIR}" \ + CMEM_INSTALL_DIR="${CMEM_INSTALL_DIR}" \ + LPM_INSTALL_DIR="${LPM_INSTALL_DIR}" \ + C6ACCEL_INSTALL_DIR=${C6ACCEL_INSTALL_DIR} \ + MVTOOL_PREFIX="${TARGET_PREFIX}" \ + PLATFORM="${DMAIPLATFORM}" + done +} + +do_install () { + + # TODO :: Why do we do this? + unset DMAI_INSTALL_DIR + + install -d ${D}/${installdir}/ti-dmai-apps + cd ${S} + make PLATFORM="${DMAIPLATFORM}" EXEC_DIR=${D}/${installdir}/ti-dmai-apps install + install -m 0755 ${WORKDIR}/loadmodules-ti-dmai-${DMAIPLATFORM}.sh ${D}/${installdir}/ti-dmai-apps/loadmodules.sh + + install -d ${D}${DMAI_INSTALL_DIR_RECIPE} + cp -pPrf ${S}/* ${D}${DMAI_INSTALL_DIR_RECIPE} +} + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +PACKAGES += "ti-dmai-apps" +FILES_ti-dmai-apps = "${installdir}/ti-dmai-apps/*" +INSANE_SKIP_ti-dmai-apps = "1" + +RDEPENDS_ti-dmai-apps_dm6446 += "ti-codecs-dm6446-server ti-cmem-module ti-dsplink-module" +RDEPENDS_ti-dmai-apps_dm6467 += "ti-codecs-dm6467 ti-cmem-module ti-dsplink-module" +RDEPENDS_ti-dmai-apps_omap3 += "ti-codecs-omap3530-server ti-cmem-module ti-dsplink-module ti-lpm-module ti-sdma-module" +RDEPENDS_ti-dmai-apps_dm355 += "ti-codecs-dm355 ti-cmem-module ti-dm355mm-module" +RDEPENDS_ti-dmai-apps_dm365 += "ti-codecs-dm365 ti-cmem-module ti-dm365mm-module ti-edma-module ti-irq-module" +RDEPENDS_ti-dmai-apps_omapl137 += "ti-codecs-omapl137-server ti-cmem-module ti-dsplink-module" +RDEPENDS_ti-dmai-apps_omapl138 += "ti-codecs-omapl138-server ti-cmem-module ti-dsplink-module" + +pkg_postinst_ti-dmai-apps () { + ln -sf ${installdir}/ti-codecs-server/*.${DSPSUFFIX} ${installdir}/ti-dmai-apps/ +} + diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/arago-tdox b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/arago-tdox new file mode 100644 index 00000000..81538cf3 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/arago-tdox @@ -0,0 +1,210 @@ +#!/bin/bash +# +# +# This script sets a series of environment variable that are referenced +# in a doxygen configuration file. The values passed in here are simply +# plugged into the file locations and doxygen proceeds normaly. +# +# template location is ${VENDORS}/opensource/doxygen/templates/<version> +# +# + +# Revision history +#! 02 Jul 2009 cring: Added cmd line args for doxygendir (-x) and template (-t) +#! 13 Jul 2006 ada: New template smaller pdf generation +#! 16 May 2006 ada: Added -p file to pdf for space in project names +#! 08 May 2006 ada: Added pdf generation to tdox (Solaris/Linux only). +#! 23 Jan 2006 ada: Overide file to change default doxyfile behaivior +#! 19 Jan 2006 ada: 1093, ENUM_VALUES_PER_LINE set to 1, ref doxyfile via vers +#! 05 Oct 2005 ada: 933, doxyfile in tools, removed win and unix vendors path +#! 24 Aug 2005 ada: Added 897 changes, optional css c or jave optimization +#! 18 Aug 2005 ada: inital version from AR 887 + +# Set these defaults here as the usage statement uses them +TDOX_TEMPLATEDIR=${TOOLS}/default/doxygen_templates +DOXYGEN_EXECUTABLE=doxygen + +function usage +{ + OPTIONS="`basename $0` code_location out_doc_location [-x doxygen_exe ] [-t tdox_templatedir] [-n project_name] [-v version] [-f FILE_PATTERNS ] [-s strip_dir] [-c css location] [-e exclude dirs] [-b enabled sections] [-m generate chm] [-p pdf_file] [-o override doxyfile] [-j]" + echo "`basename $1` $OPTIONS" + echo "Where: " + echo "\tcode_location: Top of tree(s) to search for code (required as 1st param)" + echo "\tout_doc_location: Output location for generated files (required as 2nd param)" + echo "\t[-n project_name]: title of generated documentation (defaults to Project)" + echo "\t[-x doxygen_exe]: location of doxygen executable (defaults to $DOXYGEN_EXECUTABLE)" + echo "\t[-t tdox_templatedir]: location of tdox templates (defaults to $TDOX_TEMPLATEDIR)" + echo "\t[-v version]: version number or string (defaults to 1.0)" + echo "\t[-f FILE_PATTERNS]: Optional list of files to document (defaults to all)" + echo "\t[-s strip_dirs]: Remove directory prefix from generated files (defaults to not remove)" + echo "\t[-c path_to_css]: Path to a user suplied CSS style sheet" + echo "\t[-e exclude dirs]: List of directories to exclude" + echo "\t[-b enabled sections]: List of sections to enable" + echo "\t[-m generate chm]: chm file name (required)" + echo "\t[-p generate pdf <file>]: create <file>.pdf in html/pdf (Linux only)" + echo "\t[-o override doxyfile]: file (advanced) Overide any doxyfile default" + echo "\t[-j]: Optimize for Java (Generate class files) defaults to C" + echo "\t[-r]: Call rshd to windows for chm generation (defaults to wine)" + echo + exit +} + +function optimizeForJava +{ + DOX_OPTIMIZE_OUTPUT_JAVA="YES" + DOX_OPTIMIZE_OUTPUT_FOR_C="NO" +} + +if [ "$#" -lt 2 ]; then + echo "Invalid number of parameters" + usage $0 +fi + +# get the required parameters then shift for the getopts parameters +export DOX_INPUT="$1" +shift +export DOX_OUTPUT_DIRECTORY="$1" +shift + +#set the global defaults +DOX_QUIET="YES" +DOX_OPTIMIZE_OUTPUT_JAVA="NO" +DOX_OPTIMIZE_OUTPUT_FOR_C="YES" +DOX_CHM_FILE= +DOX_GENERATE_HTMLHELP="NO" +OVERRIDE_FILE="" +PDF="" + +# Process the rest of the arguments as getopts +# parameters +while getopts b:c:e:f:m:n:o:p:s:t:v:x:dhjr arg +do + case $arg in + b) DOX_ENABLED_SECTIONS=${OPTARG};; + c) DOX_HTML_STYLESHEET=${OPTARG};; + d) DEBUG=1;; + e) DOX_EXCLUDE=${OPTARG};; + f) DOX_FILE_PATTERNS=${OPTARG};; + h) usage;exit 0;; + j) optimizeForJava;; + r) USERSHD=1;; + m) DOX_CHM_FILE=${OPTARG};DOX_GENERATE_HTMLHELP="YES";; + n) DOX_PROJECT_NAME=${OPTARG};; + s) DOX_STRIP_FROM_PATH=${OPTARG};; + t) TDOX_TEMPLATEDIR=${OPTARG};; + v) DOX_PROJECT_NUMBER=${OPTARG};; + x) DOXYGEN_EXECUTABLE=${OPTARG};; + o) OVERRIDE_FILE=${OPTARG};; + p) PDF=${OPTARG};; + \?) usage + exit 2;; + esac +done + +if [ "$DEBUG" = "1" ]; then + DOX_QUIET="NO" + set -x +fi + +if [ "$DOX_PROJECT_NAME" = "" ]; then + DOX_PROJECT_NAME="Project" +fi + +if [ "$DOX_PROJECT_NUMBER" = "" ]; then + DOX_PROJECT_NUMBER="1.0" +fi + +if [ "$DOX_FILE_PATTERNS" = "" ]; then + DOX_FILE_PATTERNS="*.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.d \ + *.java \ + *.ii \ + *.ixx \ + *.ipp \ + *.i++ \ + *.inl \ + *.h \ + *.hh \ + *.hxx \ + *.hpp \ + *.h++ \ + *.idl \ + *.odl \ + *.cs \ + *.php \ + *.php3 \ + *.inc \ + *.m \ + *.mm \ + *.dox" +fi + +export DOX_INPUT +export DOX_OUTPUT_DIRECTORY +export DOX_PROJECT_NAME +export DOX_PROJECT_NUMBER +export DOX_FILE_PATTERNS +export DOX_STRIP_FROM_PATH +export DOX_QUIET +export DOX_HTML_STYLESHEET +export DOX_OPTIMIZE_OUTPUT_FOR_C +export DOX_OPTIMIZE_OUTPUT_JAVA +export DOX_EXCLUDE +export DOX_ENABLED_SECTIONS +export DOX_CHM_FILE +export DOX_GENERATE_HTMLHELP +export TDOX_TEMPLATEDIR + + +# Make sure the dir exists +mkdir -p $DOX_OUTPUT_DIRECTORY + +# Create temp file copy of doxyfile and append overrides to the end of the file +cp ${TDOX_TEMPLATEDIR}/doxyfile /tmp/doxyfile$$ + +chmod +w /tmp/doxyfile$$ +if [ "$OVERRIDE_FILE" != "" ]; then + cat $OVERRIDE_FILE >> /tmp/doxyfile$$ +fi + +# Run doxygen and clean up temp file +${DOXYGEN_EXECUTABLE} /tmp/doxyfile$$ +rm -f /tmp/doxyfile$$ + +# Copy the TI banner gifs to the html directory. +cp -p ${TDOX_TEMPLATEDIR}/*gif $DOX_OUTPUT_DIRECTORY/html + +# Generate PDF files +if [ "$PDF" != "" ]; then + if [ "$BUILD_HOST_OS" = "Linux" ]; then + rm -rf $DOX_OUTPUT_DIRECTORY/html/pdf + mkdir -p $DOX_OUTPUT_DIRECTORY/html/pdf + cwd=`pwd` + cd $DOX_OUTPUT_DIRECTORY/latex + latex refman.tex + makeindex refman.idx + latex refman.tex + latex_count=5 + while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] + do + latex refman.tex + latex_count=`expr $$latex_count - 1` + done + dvips -o refman.ps refman.dvi + ps2pdf refman.ps refman.pdf + cd $cwd + mv $DOX_OUTPUT_DIRECTORY/latex/refman.pdf $DOX_OUTPUT_DIRECTORY/html/pdf/${PDF}.pdf + else + echo "Sorry... pdf generation supported under Linux only" + fi +fi + +# Generate Windows compressed help +if [ "$DOX_GENERATE_HTMLHELP" = "YES" ]; then + + echo "chm generation is not supported" +fi diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/doxygen_templates.tar.gz b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/doxygen_templates.tar.gz Binary files differnew file mode 100644 index 00000000..6d613bf5 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/doxygen_templates.tar.gz diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-apps.sh b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-apps.sh new file mode 100755 index 00000000..7120b744 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-apps.sh @@ -0,0 +1,37 @@ +# +# Default Memory Map - for OMAP3530 dvsdk examples from 3.00.00.29 - this memory map is used for DMAI apps +# +# Start Addr Size Description +# ------------------------------------------- +# 0x80000000 88 MB Linux +# 0x85800000 08 MB CMEM +# 0x86800000 16 MB DDRALGHEAP +# 0x87800000 6 MB DDR2 (BIOS, Codecs, Applications) +# 0x87E00000 1 MB DSPLINK (MEM) +# 0x87F00000 4 KB DSPLINK (RESET) +# 0x87F01000 1020 KB unused + +# sanity check to verify that we're using the right mem=xxM (88M in this case) +awk '/MemTotal:/ { + mem=$2 + + if (mem > 88 * 1024) + print "Warning! You need to use mem=88M or less on the kernel cmdline" + + printf "You have %dkB total memory for Linux\n", mem +}' /proc/meminfo + +# Select cmemk parameters for best fit, i.e. starting at 0x85000000 +modprobe cmemk phys_start=0x85800000 phys_end=0x86800000 pools=20x4096,8x131072,5x1048576,1x1429440,1x256000,1x3600000,5x829440 + +# insert DSP/BIOS Link driver +# +modprobe dsplinkk + +# make /dev/dsplink +#rm -f /dev/dsplink +#mknod /dev/dsplink c `awk "\\$2==\"dsplink\" {print \\$1}" /proc/devices` 0 + +# insert Local Power Manager driver +# +modprobe lpm_omap3530 diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm355_al.sh b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm355_al.sh new file mode 100755 index 00000000..ca357e20 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm355_al.sh @@ -0,0 +1,23 @@ +#!/bin/sh +# +# loadmodules.sh +# +# Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/ +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation version 2.1 of the License. +# +# This program is distributed #as is# WITHOUT ANY WARRANTY of any kind, +# whether express or implied; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# 12MB +modprobe cmemk phys_start=0x87400000 phys_end=0x88000000 pools=1x2903040,1x1529856,7x829440,1x524288,1x108680,1x81920,2x8192,6x4096 + +./mapdmaq + +modprobe dm350mmap +rm -f /dev/dm350mmap +mknod /dev/dm350mmap c `awk "\\$2==\"dm350mmap\" {print \\$1}" /proc/devices` 0 diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm365_al.sh b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm365_al.sh new file mode 100644 index 00000000..36dc78ec --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm365_al.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +# This loadmodules script is provided to support 1920x1080 resolution file based encode/decode DMAI unit test applications + +# Sample bootargs is given below +# mem=60M console=ttyS0,115200n8 root=/dev/nfs rw nfsroot=<nfsroot> ip=dhcp video=davincifb:vid0=OFF:vid1=OFF:osd0=720x576x16,2025K dm365_imp.oper_mode=0 + +depmod -a +rmmod cmemk 2>/dev/null +rmmod irqk 2>/dev/null +rmmod edmak 2>/dev/null +rmmod dm365mmap 2>/dev/null + +# Pools configuration +modprobe cmemk phys_start=0x83C00000 phys_end=0x88000000 pools=1x384,2x5984,2x3133440,1x16384,1x48952,1x20480,1x60288,1x74,1x28,1x2048,1x6785280,1x146,1x896,1x65536,1x98,1x296,29x56,2x24,1x624,4x62,1x1456,1x18321120,1x65792,5x3523584,1x4194304,1x8355840 + +#VC1 decode pool configuration +# insmod cmemk.ko phys_start=0x83C00000 phys_end=0x88000000 pools=1x384,1x112665,3x7680,1x319264,2x1024,5x7208960,1x80,1x116,1x29184,1x2688,1x30720,1x551680,2x128,1x74,1x28,1x10240,1x47232,1x448,2x1152,1x8192,2x272896,18x56,2x24,1x86,4x62,2x7808,1x2097152 + +modprobe irqk +modprobe edmak +modprobe dm365mmap + +rm -f /dev/dm365mmap +mknod /dev/dm365mmap c `awk "\\$2==\"dm365mmap\" {print \\$1}" /proc/devices` 0 diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm6446_al.sh b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm6446_al.sh new file mode 100755 index 00000000..b4a230d5 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm6446_al.sh @@ -0,0 +1,19 @@ +# +# loadmodules.sh +# +# Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/ +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation version 2.1 of the License. +# +# This program is distributed #as is# WITHOUT ANY WARRANTY of any kind, +# whether express or implied; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +modprobe cmemk phys_start=0x87800000 phys_end=0x88E00000 pools=20x4096,8x202752,10x131072,2x1048576,1x2097152,10x829440,1x6750000 +modprobe dsplinkk ddr_start=0x8F800000 ddr_size=0x600000 + +rm -rf /dev/dsplink +mknod /dev/dsplink c `awk "\\$2==\"dsplink\" {print \\$1}" /proc/devices` 0 diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm6467_al.sh b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm6467_al.sh new file mode 100755 index 00000000..b4a230d5 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-dm6467_al.sh @@ -0,0 +1,19 @@ +# +# loadmodules.sh +# +# Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/ +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation version 2.1 of the License. +# +# This program is distributed #as is# WITHOUT ANY WARRANTY of any kind, +# whether express or implied; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +modprobe cmemk phys_start=0x87800000 phys_end=0x88E00000 pools=20x4096,8x202752,10x131072,2x1048576,1x2097152,10x829440,1x6750000 +modprobe dsplinkk ddr_start=0x8F800000 ddr_size=0x600000 + +rm -rf /dev/dsplink +mknod /dev/dsplink c `awk "\\$2==\"dsplink\" {print \\$1}" /proc/devices` 0 diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-o3530_al.sh b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-o3530_al.sh new file mode 100755 index 00000000..076af072 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-o3530_al.sh @@ -0,0 +1,42 @@ +# loadmodules.sh +# +# Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/ +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation version 2.1 of the License. +# +# This program is distributed #as is# WITHOUT ANY WARRANTY of any kind, +# whether express or implied; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# +# Default Memory Map +# +# Start Addr Size Description +# ------------------------------------------- +# 0x80000000 88 MB Linux +# 0x85800000 08 MB CMEM +# 0x86800000 24 MB DDRALGHEAP +# 0x87800000 6 MB DDR2 (BIOS, Codecs, Applications) +# 0x87E00000 1 MB DSPLINK (MEM) +# 0x87F00000 4 KB DSPLINK (RESET) +# 0x87F01000 1020 KB unused + +modprobe cmemk phys_start=0x85800000 phys_end=0x86800000 pools=20x4096,8x131072,4x829440,1x5250000,1x1429440,1x256000 + + +# insert DSP/BIOS Link driver +# +modprobe dsplinkk + +# make /dev/dsplink +rm -f /dev/dsplink +mknod /dev/dsplink c `awk "\\$2==\"dsplink\" {print \\$1}" /proc/devices` 0 + + +# insert Local Power Manager driver +# +modprobe lpm_omap3530 + diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-ol137_al.sh b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-ol137_al.sh new file mode 100755 index 00000000..2c98c787 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-ol137_al.sh @@ -0,0 +1,19 @@ +# +# loadmodules.sh +# +# Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/ +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation version 2.1 of the License. +# +# This program is distributed #as is# WITHOUT ANY WARRANTY of any kind, +# whether express or implied; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +modprobe cmemk phys_start=0xC2200000 phys_end=0xC3200000 pools=1x5250000,3x1048576,3x829440,1x256000,4x131072 +modprobe dsplinkk + +rm -rf /dev/dsplink +mknod /dev/dsplink c `awk "\\$2==\"dsplink\" {print \\$1}" /proc/devices` 0 diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-ol138_al.sh b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-ol138_al.sh new file mode 100755 index 00000000..2c98c787 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/loadmodules-ti-dmai-ol138_al.sh @@ -0,0 +1,19 @@ +# +# loadmodules.sh +# +# Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/ +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation version 2.1 of the License. +# +# This program is distributed #as is# WITHOUT ANY WARRANTY of any kind, +# whether express or implied; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +modprobe cmemk phys_start=0xC2200000 phys_end=0xC3200000 pools=1x5250000,3x1048576,3x829440,1x256000,4x131072 +modprobe dsplinkk + +rm -rf /dev/dsplink +mknod /dev/dsplink c `awk "\\$2==\"dsplink\" {print \\$1}" /proc/devices` 0 diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/omap3530-r642-remove-include-videodev.diff b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/omap3530-r642-remove-include-videodev.diff new file mode 100644 index 00000000..63f9cc68 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/omap3530-r642-remove-include-videodev.diff @@ -0,0 +1,64 @@ +From 06c4cfeec98f4f1e31543878ceb74c5fff1907e4 Mon Sep 17 00:00:00 2001 +From: Enrico Butera <ebutera@users.berlios.de> +Date: Thu, 22 Dec 2011 11:01:58 +0100 +Subject: [PATCH 1/2] adjust videdev headers for recent kernels + +Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> +--- + .../packages/ti/sdo/dmai/linux/omap3530/Capture.c | 1 - + .../ti/sdo/dmai/linux/omap3530/Display_v4l2.c | 1 - + .../ti/sdo/dmai/linux/omap3530/_VideoBuf.c | 1 - + .../ti/sdo/dmai/linux/omap3530/priv/_VideoBuf.h | 1 - + 4 files changed, 0 insertions(+), 4 deletions(-) + +diff --git a/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/Capture.c b/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/Capture.c +index a924169..c2b45d2 100644 +--- a/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/Capture.c ++++ b/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/Capture.c +@@ -40,7 +40,6 @@ + #include <sys/mman.h> + #include <sys/ioctl.h> + #include <asm/types.h> +-#include <linux/videodev.h> + #include <linux/videodev2.h> + + #include <xdc/std.h> +diff --git a/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/Display_v4l2.c b/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/Display_v4l2.c +index 0d01b39..0c35efe 100644 +--- a/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/Display_v4l2.c ++++ b/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/Display_v4l2.c +@@ -38,7 +38,6 @@ + #include <sys/ioctl.h> + #include <sys/mman.h> + #include <errno.h> +-#include <linux/videodev.h> + #include <linux/videodev2.h> + + #include <xdc/std.h> +diff --git a/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/_VideoBuf.c b/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/_VideoBuf.c +index 5615e2f..5cb712d 100644 +--- a/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/_VideoBuf.c ++++ b/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/_VideoBuf.c +@@ -38,7 +38,6 @@ + #include <sys/ioctl.h> + #include <sys/mman.h> + #include <errno.h> +-#include <linux/videodev.h> + #include <linux/videodev2.h> + + #include <xdc/std.h> +diff --git a/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/priv/_VideoBuf.h b/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/priv/_VideoBuf.h +index b2128a3..dbaa4eb 100644 +--- a/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/priv/_VideoBuf.h ++++ b/davinci_multimedia_application_interface/dmai/packages/ti/sdo/dmai/linux/omap3530/priv/_VideoBuf.h +@@ -34,7 +34,6 @@ + #ifndef ti_sdo_dai_linux_priv__VideoBuf_h_ + #define ti_sdo_dai_linux_priv__VideoBuf_h_ + +-#include <linux/videodev.h> + #include <linux/videodev2.h> + + #include <ti/sdo/dmai/BufferGfx.h> +-- +1.7.2.5 + diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/r642-fix-config-bld.diff b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/r642-fix-config-bld.diff new file mode 100644 index 00000000..2f328c0e --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/r642-fix-config-bld.diff @@ -0,0 +1,48 @@ +From 86e89bb160cfe67c173f1260b93066b12dd73580 Mon Sep 17 00:00:00 2001 +From: Enrico Butera <ebutera@users.berlios.de> +Date: Thu, 22 Dec 2011 11:03:58 +0100 +Subject: [PATCH 2/2] fix toolchain names in config.bld + +Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> +--- + .../dmai/packages/config.bld | 24 +------------------ + 1 files changed, 2 insertions(+), 22 deletions(-) + +diff --git a/davinci_multimedia_application_interface/dmai/packages/config.bld b/davinci_multimedia_application_interface/dmai/packages/config.bld +index 8c2e96e..566f907 100644 +--- a/davinci_multimedia_application_interface/dmai/packages/config.bld ++++ b/davinci_multimedia_application_interface/dmai/packages/config.bld +@@ -44,28 +44,8 @@ var C6X = xdc.useModule('ti.targets.C64P'); + C6X.rootDir = codegen; + C6X.platform = xdcplat; + +-/* User passes in $(CROSS_COMPILE) where $(CROSS_COMPILE)gcc is their compiler +- Then the TOOLDIR and LONGNAME are derived based on a regex of CROSS_COMPILE +-*/ +-var crosscompile = "" + java.lang.System.getenv("CROSS_COMPILE"); +- +-var tooldir = ""; +-var longName = ""; +- +-/* Search CROSS_COMPILE for bin/ If only 1 bin/ is found, set the tooldir to +- the path prior to bin/ and the prefix to "bin/" + remainder of path, +- else leave the tooldir as "" and set the LONGNAME to the full CROSS_COMPILE +- path +-*/ +-var regex = new RegExp("bin/"); +-var find = crosscompile.split( regex ); +- +-if (find[0]!=crosscompile && find.length==2) { +- tooldir = find[0]; +- longName = "bin/" + find[1] + "gcc"; +-} else { +- longName = crosscompile + "gcc"; +-} ++var tooldir = "" + java.lang.System.getenv("CSTOOL_DIR"); ++var longName = "" + java.lang.System.getenv("MVTOOL_PREFIX") + "gcc"; + + /* location of the GCC Arm9 tools */ + var GCArmv5T = xdc.useModule('gnu.targets.arm.GCArmv5T'); +-- +1.7.2.5 + diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/remove-unneeded-includes.patch b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/remove-unneeded-includes.patch new file mode 100644 index 00000000..cfd325a3 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/remove-unneeded-includes.patch @@ -0,0 +1,26 @@ +Index: a/packages/ti/sdo/dmai/Makefile +=================================================================== +--- a/packages/ti/sdo/dmai/Makefile ++++ b/packages/ti/sdo/dmai/Makefile +@@ -107,7 +107,7 @@ XDCPATH += $(XDC_INSTALL_DIR)/packages;$ + + CPP_FLAGS += -I$(XDC_INSTALL_DIR)/packages -I$(DMAI_INSTALL_DIR)/packages -I$(CE_INSTALL_DIR)/packages -I$(FC_INSTALL_DIR)/packages -I$(XDAIS_INSTALL_DIR)/packages -I$(CODEC_INSTALL_DIR)/packages -DDmai_Device_$(PLATFORM_DEVICE) + +-GCC_CPP_FLAGS += $(CPP_FLAGS) -I$(LINUXKERNEL_INSTALL_DIR)/include -I$(LINUXKERNEL_INSTALL_DIR)/arch/arm/include -I$(LINUXKERNEL_INSTALL_DIR)/arch/arm/$(PLATFORM_ARCH)/include $(HAVE_AUTOCONFIG) -I$(CMEM_INSTALL_DIR)/packages -I$(LINK_INSTALL_DIR) -DDmai_BuildOs_linux -Dxdc_target_types__=gnu/targets/std.h -I$(LINUXLIBS_INSTALL_DIR)/include -Dxdc_target_name__=arm/GCArmv5T ++GCC_CPP_FLAGS += $(CPP_FLAGS) $(HAVE_AUTOCONFIG) -I$(CMEM_INSTALL_DIR)/packages -I$(LINK_INSTALL_DIR) -DDmai_BuildOs_linux -Dxdc_target_types__=gnu/targets/std.h -I$(LINUXLIBS_INSTALL_DIR)/include -Dxdc_target_name__=arm/GCArmv5T + C64P_CPP_FLAGS += $(CPP_FLAGS) -I$(BIOS_INSTALL_DIR)/packages/ti/bios/include -I$(BIOS_INSTALL_DIR)/packages -DDmai_BuildOs_bios -Dxdc_target__='<ti/targets/std.h>' -I$(CODEGEN_INSTALL_DIR)/include -mv6400+ -pdse225 -eo$(PLATFORM_DEVICE).o$(EXT) + + GCC_C_FLAGS += $(C_FLAGS) -Wall +Index: a/packages/ti/sdo/dmai/apps/Makefile.app +=================================================================== +--- a/packages/ti/sdo/dmai/apps/Makefile.app ++++ b/packages/ti/sdo/dmai/apps/Makefile.app +@@ -121,7 +121,7 @@ C64P_C_FLAGS = $(C_FLAGS) + GCC_CPP_FLAGS = $(CPP_FLAGS) -I$(LINUXKERNEL_INSTALL_DIR)/include + C64P_CPP_FLAGS = $(CPP_FLAGS) -pdse225 -I$(CODEGEN_INSTALL_DIR)/include -mv6400+ -I$(BIOS_INSTALL_DIR)/packages/ti/bios/include -eo$(PLATFORM_DEVICE).o$(EXT) + +-GCC_LD_FLAGS = $(LD_FLAGS) -lpthread -lm -L$(LINUXLIBS_INSTALL_DIR)/lib -lasound ++GCC_LD_FLAGS = $(LD_FLAGS) -lpthread -lm --sysroot=$(PKG_CONFIG_SYSROOT_DIR) -L$(LINUXLIBS_INSTALL_DIR)/lib -lasound + C64P_LD_FLAGS = $(LD_FLAGS) -z -w -x -c -i$(RTDX_INSTALL_DIR)/packages/ti/rtdx/iom/lib/debug -i$(RTDX_INSTALL_DIR)/packages/ti/rtdx/cio/lib/release -i$(RTDX_INSTALL_DIR)/packages/ti/rtdx/lib/c6000 + + SOURCES = $(wildcard *.c) diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai/unloadmodules-ti-dmai-apps.sh b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/unloadmodules-ti-dmai-apps.sh new file mode 100644 index 00000000..793d727f --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai/unloadmodules-ti-dmai-apps.sh @@ -0,0 +1,12 @@ +# Unload modules - DMAI - OMAP3530 + +# remove lpm module +rmmod lpm_omap3530 + +# remove DSP/BIOS Link driver +rmmod dsplinkk +#rm -f /dev/dsplink + +# remove cmem module +rmmod cmemk + diff --git a/bsp/meta-ti/recipes-ti/dmai/ti-dmai_svn.bb b/bsp/meta-ti/recipes-ti/dmai/ti-dmai_svn.bb new file mode 100644 index 00000000..3cc54b91 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/dmai/ti-dmai_svn.bb @@ -0,0 +1,43 @@ +require ti-dmai.inc + +# Need to descend one level more to find source +S = "${WORKDIR}/${DMAIBRANCH}/davinci_multimedia_application_interface/dmai_${PV}/dmai" + +# Hack to be able to use recent kernel headers from userspace +TARGET_CC_ARCH += " -D__EXPORTED_HEADERS__" + +PV = "2_10_00_01+svnr${SRCPV}" + +LIC_FILES_CHKSUM = "file://dmai_${PV}_License.html;md5=3302f728a5a42f97cabc26a54d7fa607" + +# This package has high dependence on kernel, use kernel PR as base and append a local version +PR = "${MACHINE_KERNEL_PR}" +PR_append = "p" + +DMAIBRANCH_dm6446 = "trunk" +DMAIBRANCH_dm6467 = "branches/GITPSP_INT_101009" +DMAIBRANCH_omap3 = "trunk" +DMAIBRANCH_dm355 = "branches/GITPSP_INT_101009" +DMAIBRANCH_dm365 = "trunk" +DMAIBRANCH_omapl137 = "trunk" +DMAIBRANCH_omapl138 = "trunk" +DMAIBRANCH ?= "UNDEFINED_DMAIBRANCH" + +SRCREV_dm6446 = "482" +SRCREV_dm6467 = "441" +SRCREV_omap3 = "642" +SRCREV_dm355 = "424" +SRCREV_dm365 = "570" +SRCREV_omapl137 = "482" +SRCREV_omapl138 = "570" +SRCREV ?= "UNDEFINED_SRCREV" + +SRC_URI_append = " file://omap3530-r642-remove-include-videodev.diff;striplevel=3 \ + file://r642-fix-config-bld.diff;striplevel=3 \ + file://remove-unneeded-includes.patch \ + " + +INSANE_SKIP_${PN} = "installed-vs-shipped" + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST_ti-soc = "(.*)" diff --git a/bsp/meta-ti/recipes-ti/dsplib/dsplib-c64xp_git.bb b/bsp/meta-ti/recipes-ti/dsplib/dsplib-c64xp_git.bb new file mode 100644 index 00000000..1550a538 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/dsplib/dsplib-c66x_git.bb b/bsp/meta-ti/recipes-ti/dsplib/dsplib-c66x_git.bb new file mode 100644 index 00000000..b28d8df6 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/dsplib/dsplib-c674x_git.bb b/bsp/meta-ti/recipes-ti/dsplib/dsplib-c674x_git.bb new file mode 100644 index 00000000..47974ea1 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/dsplib/dsplib.inc b/bsp/meta-ti/recipes-ti/dsplib/dsplib.inc new file mode 100644 index 00000000..1dfbcd24 --- /dev/null +++ b/bsp/meta-ti/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_3" +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 = "git" +DSPLIB_GIT_URI = "git://git.ti.com/ep-processor-libraries/dsplib.git" +DSPLIB_SRCREV = "2cd21a04913648d040bd63234183cc6f81f5286a" + +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/bsp/meta-ti/recipes-ti/engine-pkcs11/engine-pkcs11_git.bb b/bsp/meta-ti/recipes-ti/engine-pkcs11/engine-pkcs11_git.bb new file mode 100644 index 00000000..7dd6f096 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/engine-pkcs11/engine-pkcs11_git.bb @@ -0,0 +1,22 @@ +DESCRIPTION = "OpenSSL PKCS11 engine" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://src/engine_pkcs11.h;startline=1;endline=26;md5=471dacb7f0586e35729f422b8098585f" +SECTION = "libs" + +inherit autotools pkgconfig + +DEPENDS = "openssl10 libtool libp11" + +COMPATIBLE_MACHINE = "keystone" + +BRANCH = "master" + +PV = "1.3.0.1" +# Commit corresponds to DEV.ENGINE_PKCS11-01.03.00.01 +SRCREV = "56ac060e2245907a442376d586924af26ed7e478" + +SRC_URI = "git://git.ti.com/keystone-linux/engine-pkcs11.git;protocol=git;branch=${BRANCH}" +S = "${WORKDIR}/git" + +FILES_${PN} += "${libdir}/engines/*.so*" +FILES_${PN}-dbg += "${libdir}/engines/.debug" diff --git a/bsp/meta-ti/recipes-ti/framework-components/ti-framework-components.inc b/bsp/meta-ti/recipes-ti/framework-components/ti-framework-components.inc new file mode 100644 index 00000000..ca152328 --- /dev/null +++ b/bsp/meta-ti/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" + +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/bsp/meta-ti/recipes-ti/framework-components/ti-framework-components_2.26.00.01.bb b/bsp/meta-ti/recipes-ti/framework-components/ti-framework-components_2.26.00.01.bb new file mode 100644 index 00000000..1ec10b15 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/framework-components/ti-framework-components_3.40.02.07.bb b/bsp/meta-ti/recipes-ti/framework-components/ti-framework-components_3.40.02.07.bb new file mode 100644 index 00000000..56c00283 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/hdvpss/ti-hdvpss.inc b/bsp/meta-ti/recipes-ti/hdvpss/ti-hdvpss.inc new file mode 100644 index 00000000..3c99b792 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/hdvpss/ti-hdvpss.inc @@ -0,0 +1,20 @@ +DESCRIPTION = "TI HDVPSS" +SECTION = "devel" +LICENSE = "TI" + +require ../includes/ti-paths.inc +require ../includes/ti-staging.inc + +S = "${WORKDIR}/REL.HDVPSS_${PV}" + +SRC_URI = "http://install.source.dir.local/REL.HDVPSS.${PV}.zip" + +do_compile() { + : +} + +do_install() { + install -d ${D}${HDVPSS_INSTALL_DIR_RECIPE} + cp -pPrf ${S}/* ${D}${HDVPSS_INSTALL_DIR_RECIPE} +} + diff --git a/bsp/meta-ti/recipes-ti/hdvpss/ti-hdvpss_01.00.01.27.bb b/bsp/meta-ti/recipes-ti/hdvpss/ti-hdvpss_01.00.01.27.bb new file mode 100644 index 00000000..88b08442 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/hdvpss/ti-hdvpss_01.00.01.27.bb @@ -0,0 +1,7 @@ +require ti-hdvpss.inc + +SRC_URI[md5sum] = "6db908bef3b933dc8cea666564d5d4d8" +SRC_URI[sha256sum] = "2caa9c859cfe348197e860f07d174a8ab7048d38d6d3a12ec576802122c9e91e" + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST_ti-soc = "(.*)" diff --git a/bsp/meta-ti/recipes-ti/imglib/imglib-c66x.inc b/bsp/meta-ti/recipes-ti/imglib/imglib-c66x.inc new file mode 100644 index 00000000..164bf41d --- /dev/null +++ b/bsp/meta-ti/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|keystone" + +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/bsp/meta-ti/recipes-ti/imglib/imglib-c66x_3.1.1.0.bb b/bsp/meta-ti/recipes-ti/imglib/imglib-c66x_3.1.1.0.bb new file mode 100644 index 00000000..e614352c --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/includes/ti-eula-unpack.inc b/bsp/meta-ti/recipes-ti/includes/ti-eula-unpack.inc new file mode 100644 index 00000000..ead06100 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/includes/ti-paths.inc b/bsp/meta-ti/recipes-ti/includes/ti-paths.inc new file mode 100644 index 00000000..250074b4 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/includes/ti-paths.inc @@ -0,0 +1,122 @@ +installdir = "${datadir}/ti" + +export TOOLCHAIN_PATH ?= "${STAGING_DIR_NATIVE}${prefix_native}/bin/${TARGET_SYS}" +# This is where do_install will put it +export AUDIO_SOC_INSTALL_DIR_RECIPE = "${installdir}/ti-audio-soc-example-tree" +export BIOS_INSTALL_DIR_RECIPE = "${installdir}/ti-dspbios-tree" +export BIOSPSP_INSTALL_DIR_RECIPE = "${installdir}/ti-biospsp-tree" +export BIOSUTILS_INSTALL_DIR_RECIPE = "${installdir}/ti-biosutils-tree" +export C6ACCEL_INSTALL_DIR_RECIPE = "${installdir}/ti-c6accel-tree" +export C6RUN_INSTALL_DIR_RECIPE = "${installdir}/ti-c6run-tree" +export CE_INSTALL_DIR_RECIPE = "${installdir}/ti-codec-engine-tree" +export CMEM_INSTALL_DIR_RECIPE = "${installdir}/ti-linuxutils-tree" +export CODEC_INSTALL_DIR_RECIPE = "${installdir}/ti-codecs-tree" +export CODEGEN_ARM_INSTALL_DIR_RECIPE= "${installdir}/ti-cgt470-tree" +export CODEGEN_INSTALL_DIR_RECIPE = "${installdir}/ti-cgt6x-tree" +export DMAI_INSTALL_DIR_RECIPE = "${installdir}/ti-dmai-tree" +export DSP_BENCHMARK_INSTALL_DIR_RECIPE = "${installdir}/ti-dsp-benchmark-tree" +export DSPLIB_C64P_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c64p-tree" +export DSPLIB_C674_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c674x-tree" +export DSPLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c66x-tree" +export DVSDK_DEMOS_INSTALL_DIR_RECIPE= "${installdir}/ti-dvsdk-demos-tree" +export DVTB_INSTALL_DIR_RECIPE = "${installdir}/ti-dvtb-tree" +export EDMA3_LLD_INSTALL_DIR_RECIPE = "${installdir}/ti-edma3lld-tree" +export EDMA3_LLD_SYSBIOS_INSTALL_DIR_RECIPE = "${installdir}/ti-edma3lld-sysbios-tree" +export FASTMATHLIB_C674P_INSTALL_DIR_RECIPE = "${installdir}/ti-fastmathlib-c67x-tree" +export FC3_INSTALL_DIR_RECIPE = "${installdir}/ti-framework-components3-tree" +export FC_INSTALL_DIR_RECIPE = "${installdir}/ti-framework-components-tree" +export GFX_SDK_INSTALL_DIR_RECIPE = "${installdir}/ti-gfx-sdk-tree" +export HDVICP20_INSTALL_DIR_RECIPE = "${installdir}/ti-hdvicp20-tree" +export HDVPSS_INSTALL_DIR_RECIPE = "${installdir}/ti-hdvpss-tree" +export IMGLIB_C64P_INSTALL_DIR_RECIPE= "${installdir}/ti-imglib-tree" +export IPC_INSTALL_DIR_RECIPE = "${installdir}/ti-ipc-tree" +export LINK_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplink-tree" +export LINUXUTILS_INSTALL_DIR_RECIPE = "${installdir}/ti-linuxutils-tree" +export LPM_INSTALL_DIR_RECIPE = "${installdir}/ti-local-power-manager-tree" +export NDK_INSTALL_DIR_RECIPE = "${installdir}/ti-ndk-tree" +export NS_INSTALL_DIR_RECIPE = "${installdir}/ti-ns-tree" +export OMX_INSTALL_DIR_RECIPE = "${installdir}/ti-omx-tree" +export OSAL_INSTALL_DIR_RECIPE = "${installdir}/ti-osal-tree" +export RTFS_INSTALL_DIR_RECIPE = "${installdir}/ti-rtfs-tree" +export SYSBIOS_INSTALL_DIR_RECIPE = "${installdir}/ti-sysbios-tree" +export SYSLINK_INSTALL_DIR_RECIPE = "${installdir}/ti-syslink-tree" +export SWTOOLS_INSTALL_DIR_RECIPE = "${installdir}/ti-swtools-tree" +export UIA_INSTALL_DIR_RECIPE = "${installdir}/ti-uia-tree" +export VICPLIB_INSTALL_DIR_RECIPE = "${installdir}/ti-vicplib-tree" +export XDAIS_INSTALL_DIR_RECIPE = "${installdir}/ti-xdais-tree" +export XDC_INSTALL_DIR_RECIPE = "${installdir}/ti-xdctools-tree" +export PDK_INSTALL_DIR_RECIPE = "${installdir}/ti-pdk-tree" +export OSAL_INSTALL_DIR_RECIPE = "${installdir}/ti-osal-tree" +export M4_TOOLCHAIN_INSTALL_DIR_RECIPE = "${installdir}/ti-cgt-arm" +export GCC_ARM_NONE_TOOLCHAIN_RECIPE = "${installdir}/gcc-arm-none-eabi" +export TI_CGT_PRU_INSTALL_DIR_RECIPE = "${installdir}/cgt-pru" +export MATHLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-mathlib-c66x-tree" +export MATHLIB_C674_INSTALL_DIR_RECIPE = "${installdir}/ti-mathlib-c674x-tree" +export IMGLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-imglib-c66x-tree" +export VLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-vlib-c66x-tree" +export CG_XML_INSTALL_DIR_RECIPE = "${installdir}/ti-cg-xml-tree" +export OMP_INSTALL_DIR_RECIPE = "${installdir}/ti-omp-tree" +export MPM_INSTALL_DIR_RECIPE = "${installdir}/ti-mpm-tree" +export TI_CGT6X_7_INSTALL_DIR_RECIPE = "${installdir}/cgt6x-7" +export GCC_LINARO_BAREMETAL_TOOLCHAIN_RECIPE = "${installdir}/gcc-linaro-baremetal" +export GCC_LINARO_BAREMETAL_AARCH64_TOOLCHAIN_RECIPE = "${installdir}/gcc-linaro-baremetal-aarch64" + +# This is where the tools will end up in sysroot +export BIOS_INSTALL_DIR = "${STAGING_DIR_TARGET}${BIOS_INSTALL_DIR_RECIPE}" +export BIOSPSP_INSTALL_DIR = "${STAGING_DIR_TARGET}${BIOSPSP_INSTALL_DIR_RECIPE}" +export BIOSUTILS_INSTALL_DIR = "${STAGING_DIR_TARGET}${BIOSUTILS_INSTALL_DIR_RECIPE}" +export C6ACCEL_INSTALL_DIR = "${STAGING_DIR_TARGET}${C6ACCEL_INSTALL_DIR_RECIPE}" +export C6RUN_INSTALL_DIR = "${STAGING_DIR_TARGET}${C6RUN_INSTALL_DIR_RECIPE}" +export CE_INSTALL_DIR = "${STAGING_DIR_TARGET}${CE_INSTALL_DIR_RECIPE}" +export CMEM_INSTALL_DIR = "${STAGING_DIR_TARGET}${CMEM_INSTALL_DIR_RECIPE}" +export CODEC_INSTALL_DIR = "${STAGING_DIR_TARGET}${CODEC_INSTALL_DIR_RECIPE}" +export CODEGEN_ARM_INSTALL_DIR= "${STAGING_DIR_TARGET}${CODEGEN_ARM_INSTALL_DIR_RECIPE}" +export CODEGEN_INSTALL_DIR = "${STAGING_DIR_TARGET}${CODEGEN_INSTALL_DIR_RECIPE}" +export DMAI_INSTALL_DIR = "${STAGING_DIR_TARGET}${DMAI_INSTALL_DIR_RECIPE}" +export DSP_BENCHMARK_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSP_BENCHMARK_INSTALL_DIR_RECIPE}" +export EDMA3_LLD_INSTALL_DIR = "${STAGING_DIR_TARGET}${EDMA3_LLD_INSTALL_DIR_RECIPE}" +export EDMA3_LLD_SYSBIOS_INSTALL_DIR = "${STAGING_DIR_TARGET}${EDMA3_LLD_SYSBIOS_INSTALL_DIR_RECIPE}" +export FASTMATHLIB_C674P_INSTALL_DIR = "${STAGING_DIR_TARGET}${FASTMATHLIB_C674P_INSTALL_DIR_RECIPE}" +export FC3_INSTALL_DIR = "${STAGING_DIR_TARGET}${FC3_INSTALL_DIR_RECIPE}" +export FC_INSTALL_DIR = "${STAGING_DIR_TARGET}${FC_INSTALL_DIR_RECIPE}" +export HDVICP20_INSTALL_DIR = "${STAGING_DIR_TARGET}${HDVICP20_INSTALL_DIR_RECIPE}" +export HDVPSS_INSTALL_DIR = "${STAGING_DIR_TARGET}${HDVPSS_INSTALL_DIR_RECIPE}" +export IMGLIB_C64P_INSTALL_DIR= "${STAGING_DIR_TARGET}${IMGLIB_C64P_INSTALL_DIR_RECIPE}" +export IPC_INSTALL_DIR = "${STAGING_DIR_TARGET}${IPC_INSTALL_DIR_RECIPE}" +export LINK_INSTALL_DIR = "${STAGING_DIR_TARGET}${LINK_INSTALL_DIR_RECIPE}" +export LINUXUTILS_INSTALL_DIR = "${STAGING_DIR_TARGET}${LINUXUTILS_INSTALL_DIR_RECIPE}" +export LPM_INSTALL_DIR = "${STAGING_DIR_TARGET}${LPM_INSTALL_DIR_RECIPE}" +export NDK_INSTALL_DIR = "${STAGING_DIR_TARGET}${NDK_INSTALL_DIR_RECIPE}" +export NS_INSTALL_DIR = "${STAGING_DIR_TARGET}${NS_INSTALL_DIR_RECIPE}" +export OMX_INSTALL_DIR = "${STAGING_DIR_TARGET}${OMX_INSTALL_DIR_RECIPE}" +export SYSBIOS_INSTALL_DIR = "${STAGING_DIR_TARGET}${SYSBIOS_INSTALL_DIR_RECIPE}" +export SYSLINK_INSTALL_DIR = "${STAGING_DIR_TARGET}${SYSLINK_INSTALL_DIR_RECIPE}" +export UIA_INSTALL_DIR = "${STAGING_DIR_TARGET}${UIA_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}" +export PDK_INSTALL_DIR = "${STAGING_DIR_TARGET}${PDK_INSTALL_DIR_RECIPE}" +export OSAL_INSTALL_DIR = "${STAGING_DIR_TARGET}${OSAL_INSTALL_DIR_RECIPE}" +export M4_TOOLCHAIN_INSTALL_DIR = "${STAGING_DIR_NATIVE}${M4_TOOLCHAIN_INSTALL_DIR_RECIPE}" +export GCC_ARM_NONE_TOOLCHAIN = "${STAGING_DIR_NATIVE}${GCC_ARM_NONE_TOOLCHAIN_RECIPE}" +export TI_CGT_PRU_INSTALL_DIR = "${STAGING_DIR_NATIVE}${TI_CGT_PRU_INSTALL_DIR_RECIPE}" +export SWTOOLS_INSTALL_DIR = "${STAGING_DIR_TARGET}${SWTOOLS_INSTALL_DIR_RECIPE}" +export DSPLIB_C64P_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_C64P_INSTALL_DIR_RECIPE}" +export DSPLIB_C674_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_C674_INSTALL_DIR_RECIPE}" +export DSPLIB_C66_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_C66_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 IMGLIB_C66_INSTALL_DIR = "${STAGING_DIR_TARGET}${IMGLIB_C66_INSTALL_DIR_RECIPE}" +export VLIB_C66_INSTALL_DIR = "${STAGING_DIR_TARGET}${VLIB_C66_INSTALL_DIR_RECIPE}" +export CG_XML_INSTALL_DIR = "${STAGING_DIR_NATIVE}${CG_XML_INSTALL_DIR_RECIPE}" +export OMP_INSTALL_DIR = "${STAGING_DIR_TARGET}${OMP_INSTALL_DIR_RECIPE}" +export MPM_INSTALL_DIR = "${STAGING_DIR_TARGET}${MPM_INSTALL_DIR_RECIPE}" +export TI_CGT6X_7_INSTALL_DIR = "${STAGING_DIR_NATIVE}${TI_CGT6X_7_INSTALL_DIR_RECIPE}" +export GCC_LINARO_BAREMETAL_TOOLCHAIN = "${STAGING_DIR_NATIVE}${GCC_LINARO_BAREMETAL_TOOLCHAIN_RECIPE}" +export GCC_LINARO_BAREMETAL_AARCH64_TOOLCHAIN = "${STAGING_DIR_NATIVE}${GCC_LINARO_BAREMETAL_AARCH64_TOOLCHAIN_RECIPE}" + + +DSPSUFFIX_omapl137 = "x674" +DSPSUFFIX_omapl138 = "x674" +DSPSUFFIX_ti816x = "xe674" +DSPSUFFIX_ti814x = "xe674" +DSPSUFFIX ?= "x64P" diff --git a/bsp/meta-ti/recipes-ti/includes/ti-staging.inc b/bsp/meta-ti/recipes-ti/includes/ti-staging.inc new file mode 100644 index 00000000..b5888055 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/includes/ti-unpack.inc b/bsp/meta-ti/recipes-ti/includes/ti-unpack.inc new file mode 100644 index 00000000..dbc49491 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/includes/ti-unpack.inc @@ -0,0 +1,86 @@ +# 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 + lib32path = '/lib' + if os.path.exists('/lib64') and (os.path.islink('/lib64') or os.path.islink('/lib') or os.path.exists('/lib32')): + lib32path = '/lib32' + if not os.path.exists('%s/libc.so.6' % lib32path) and not os.path.exists('%s/i386-linux-gnu/libc.so.6' % lib32path): + bb.warn("TI installer requires 32bit glibc libraries for proper operation\nrun 'yum install glibc.i686' on Fedora or 'apt-get install libc6:i386' on Ubuntu/Debian") + + localdata = bb.data.createCopy(d) + bb.data.update_data(localdata) + + 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/bsp/meta-ti/recipes-ti/ipc/ipc-transport-common-rtos_git.bb b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-common-rtos_git.bb new file mode 100644 index 00000000..6fec0f0d --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-common-rtos_git.bb @@ -0,0 +1,23 @@ +require recipes-ti/includes/ti-paths.inc +require ipc-transport.inc + +PR = "${INC_PR}.1" + +LIC_FILES_CHKSUM = "file://common_src/bench_common.h;beginline=1;endline=31;md5=a6ddfb26d2097041d513e3881f40e4e8" + +COMPATIBLE_MACHINE = "k2hk|k2l|k2e" + +IPC_TRANSPORT_COMMON_DESTSUFFIX = "git/c66/example" + +S = "${WORKDIR}/${IPC_TRANSPORT_COMMON_DESTSUFFIX}" + +do_compile() { + : +} + +do_install () { + install -d ${D}${PDK_INSTALL_DIR_RECIPE}/packages/ti/transport/ipc/c66/example + cp -r ${S} ${D}${PDK_INSTALL_DIR_RECIPE}/packages/ti/transport/ipc/c66 +} + +FILES_${PN} += "${PDK_INSTALL_DIR_RECIPE}/packages/ti/transport/ipc/c66/example/*" diff --git a/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss-rtos_git.bb b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss-rtos_git.bb new file mode 100644 index 00000000..6655ab7e --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss-rtos_git.bb @@ -0,0 +1,23 @@ +inherit ti-pdk +require ipc-transport.inc + +PR = "${INC_PR}.4" + +LIC_FILES_CHKSUM = "file://TransportQmss.xdc;beginline=1;endline=35;md5=ad783760d74a4cc5b8d4ad3d8a1f28a2" + +COMPATIBLE_MACHINE = "k2hk|k2l|k2e" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +DEPENDS_append = " qmss-lld-rtos \ + cppi-lld-rtos \ + ti-ipc-rtos \ + ipc-transport-common-rtos \ +" + +IPC_TRANSPORT_QMSS_DESTSUFFIX = "git/c66/qmss" + +S = "${WORKDIR}/${IPC_TRANSPORT_QMSS_DESTSUFFIX}" + +export IPC_INSTALL_PATH = "${IPC_INSTALL_DIR}" +XDCPATH_append = ";${IPC_INSTALL_DIR}/packages" diff --git a/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss-test_git.bb b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss-test_git.bb new file mode 100644 index 00000000..3561ef95 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss-test_git.bb @@ -0,0 +1,37 @@ +include ipc-transport-qmss.inc + +PR = "${INC_PR}.0" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +DEPENDS = "ipc-transport-qmss ti-ipc" + +#FILES_${PN}-test = "${bindir}/multiProcessTest_*.out" + +CHOICELIST = "yes no" + +DEVICELIST_k2hk = "k2h k2k" +DEVICELIST_k2e = "k2e" +DEVICELIST_k2l = "k2l" + +do_compile () { +# Now build the test code + for device in ${DEVICELIST} + do + for choice in ${CHOICELIST} + do + oe_runmake tests \ + IPC_DEVKIT_INSTALL_PATH=${STAGING_INCDIR} \ + USEDYNAMIC_LIB="$choice" DEVICE="$device" + done + done +} + +do_install () { + for device in ${DEVICELIST} + do + oe_runmake installbin \ + INSTALL_BIN_BASE_DIR=${D}${bindir} DEVICE="$device" + done + +} diff --git a/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss.inc b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss.inc new file mode 100644 index 00000000..f029656e --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss.inc @@ -0,0 +1,14 @@ +DESCRIPTION = "TI QMSS-Based IPC MessageQ Transport" +LICENSE = "BSD-3-Clause" + +require ipc-transport.inc + +INC_PR_append = ".1" + +LIC_FILES_CHKSUM = "file://COPYING.txt;md5=27bb0deb260c60120a8d7b91da7c3b02" + +COMPATIBLE_MACHINE = "keystone" + +S = "${WORKDIR}/git/linux/qmss" + +EXTRA_OEMAKE += "PDK_INSTALL_PATH=${STAGING_INCDIR} TRANS_QMSS_SRC_DIR=${S}" diff --git a/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss_git.bb b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss_git.bb new file mode 100644 index 00000000..4c9aaded --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-qmss_git.bb @@ -0,0 +1,17 @@ +include ipc-transport-qmss.inc + +PR = "${INC_PR}.0" + +DEPENDS = "ti-ipc mpm-transport" + +do_compile () { +# Now build the transport + oe_runmake clean + oe_runmake lib +} + +do_install () { + oe_runmake install INSTALL_INC_BASE_DIR=${D}${includedir} \ + INSTALL_LIB_BASE_DIR=${D}${libdir} + chown -R root:root ${D} +} diff --git a/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio-rtos_git.bb b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio-rtos_git.bb new file mode 100644 index 00000000..3f96598f --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio-rtos_git.bb @@ -0,0 +1,22 @@ +inherit ti-pdk +require ipc-transport.inc + +PR = "${INC_PR}.2" + +LIC_FILES_CHKSUM = "file://TransportSrio.xdc;beginline=1;endline=35;md5=4d466471e4b933a0cc353a46bb546fe7" + +COMPATIBLE_MACHINE = "k2hk" + +DEPENDS_append = " qmss-lld-rtos \ + cppi-lld-rtos \ + srio-lld-rtos \ + ti-ipc-rtos \ + ipc-transport-common-rtos \ +" + +IPC_TRANSPORT_SRIO_DESTSUFFIX = "git/c66/srio" + +S = "${WORKDIR}/${IPC_TRANSPORT_SRIO_DESTSUFFIX}" + +export IPC_INSTALL_PATH = "${IPC_INSTALL_DIR}" +XDCPATH_append = ";${IPC_INSTALL_DIR}/packages" diff --git a/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio-test_git.bb b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio-test_git.bb new file mode 100644 index 00000000..4e23fb21 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio-test_git.bb @@ -0,0 +1,32 @@ +include ipc-transport-srio.inc + +PR = "${INC_PR}.0" + +DEPENDS = "ipc-transport-srio ipc-transport-qmss ti-ipc" + +DEVICELIST = "k2h k2k" + +CHOICELIST = "yes no" + +do_compile () { +# Now build the test code + for device in ${DEVICELIST} + do + for choice in ${CHOICELIST} + do + oe_runmake tests \ + IPC_DEVKIT_INSTALL_PATH=${STAGING_INCDIR} \ + USEDYNAMIC_LIB="$choice" DEVICE="$device" + done + done +} + +do_install () { + + for device in ${DEVICELIST} + do + oe_runmake installbin \ + INSTALL_BIN_BASE_DIR=${D}${bindir} DEVICE="$device" + done + +} diff --git a/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio.inc b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio.inc new file mode 100644 index 00000000..6c477388 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio.inc @@ -0,0 +1,14 @@ +DESCRIPTION = "TI SRIO-Based IPC MessageQ Transport" +LICENSE = "BSD-3-Clause" + +require ipc-transport.inc + +INC_PR_append = ".1" + +LIC_FILES_CHKSUM = "file://COPYING.txt;md5=27bb0deb260c60120a8d7b91da7c3b02" + +COMPATIBLE_MACHINE = "k2hk" + +S = "${WORKDIR}/git/linux/srio" + +EXTRA_OEMAKE += "PDK_INSTALL_PATH=${STAGING_INCDIR} TRANS_SRIO_SRC_DIR=${S}" diff --git a/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio_git.bb b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio_git.bb new file mode 100644 index 00000000..f0586d8b --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport-srio_git.bb @@ -0,0 +1,16 @@ +include ipc-transport-srio.inc + +PR = "${INC_PR}.0" + +DEPENDS = "ti-ipc mpm-transport" + +do_compile () { +# Now build the transport + oe_runmake clean + oe_runmake lib +} + +do_install () { + oe_runmake install INSTALL_INC_BASE_DIR=${D}${includedir} \ + INSTALL_LIB_BASE_DIR=${D}${libdir} +} diff --git a/bsp/meta-ti/recipes-ti/ipc/ipc-transport.inc b/bsp/meta-ti/recipes-ti/ipc/ipc-transport.inc new file mode 100644 index 00000000..25c49e72 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ipc-transport.inc @@ -0,0 +1,15 @@ +LICENSE = "BSD-3-Clause" + +IPC_TRANSPORT_GIT_URI = "git://git.ti.com/keystone-linux/ipc-transport.git" +IPC_TRANSPORT_GIT_PROTOCOL = "git" +IPC_TRANSPORT_GIT_BRANCH = "master" + +# Below commit ID corresponds to "DEV.IPC-TRANSPORT.02.00.00.02" +IPC_TRANSPORT_SRCREV = "8cb22733115f7c1ee1e1cf3f7d704158080f383c" + +BRANCH = "${IPC_TRANSPORT_GIT_BRANCH}" +SRC_URI = "${IPC_TRANSPORT_GIT_URI};protocol=${IPC_TRANSPORT_GIT_PROTOCOL};branch=${BRANCH}" + +SRCREV = "${IPC_TRANSPORT_SRCREV}" +PV = "02.00.00.02" +INC_PR = "r0" diff --git a/bsp/meta-ti/recipes-ti/ipc/ti-ipc-common.inc b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-common.inc new file mode 100644 index 00000000..036e46d8 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-common.inc @@ -0,0 +1,21 @@ +PV = "3.50.03.05" +INC_PR = "r0" + +PACKAGE_ARCH = "${MACHINE_ARCH}" +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST_ti-soc = "(.*)" + +PLATFORM = "UNKNOWN" +PLATFORM_omap5-evm = "OMAP54XX" +PLATFORM_dra7xx = "DRA7XX" +PLATFORM_k2hk = "TCI6638" +PLATFORM_k2l = "TCI6630" +PLATFORM_k2e = "66AK2E" +PLATFORM_k2g = "66AK2G" +PLATFORM_omapl138 = "OMAPL138" +PLATFORM_c667x-evm = "C6678" +PLATFORM_c665x-evm = "C6678" +PLATFORM_am65xx = "AM65XX" + +ALT_PLATFORM_k2hk = "TCI6636" +ALT_PLATFORM_am57xx-evm = "AM572X AM571X" diff --git a/bsp/meta-ti/recipes-ti/ipc/ti-ipc-examples-linux_git.bb b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-examples-linux_git.bb new file mode 100644 index 00000000..471d7ff2 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-examples-linux_git.bb @@ -0,0 +1,47 @@ +DESCRIPTION = "TI Inter Process Communication (IPC) examples with Host running bios" +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="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/bsp/meta-ti/recipes-ti/ipc/ti-ipc-examples.inc b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-examples.inc new file mode 100644 index 00000000..022b13f0 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-examples.inc @@ -0,0 +1,31 @@ +HOMEPAGE = "http://processors.wiki.ti.com/index.php/Category:IPC" +require ti-ipc-common.inc +require ti-ipc-rtos.inc + +LICENSE = "BSD" +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/bsp/meta-ti/recipes-ti/ipc/ti-ipc-examples_git.bb b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-examples_git.bb new file mode 100644 index 00000000..43e45e64 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-examples_git.bb @@ -0,0 +1,46 @@ +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" + +DEPENDS_append_am65xx = " sciclient-rtos" + +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/bsp/meta-ti/recipes-ti/ipc/ti-ipc-rtos.inc b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-rtos.inc new file mode 100644 index 00000000..dcd6309f --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-rtos.inc @@ -0,0 +1,96 @@ +require recipes-ti/includes/ti-paths.inc + +TI_IPC_EXAMPLES_GIT_URI = "git://git.ti.com/ipc/ipc-examples.git" +TI_IPC_EXAMPLES_DEST_SUFFIX = "git/ipc-examples" +TI_IPC_EXAMPLES_GIT_PROTOCOL = "git" +TI_IPC_EXAMPLES_GIT_BRANCH = "master" +TI_IPC_EXAMPLES_NAME = "ipc-examples" + +SRC_URI += "${TI_IPC_EXAMPLES_GIT_URI};\ +destsuffix=${TI_IPC_EXAMPLES_DEST_SUFFIX};\ +protocol=${TI_IPC_EXAMPLES_GIT_PROTOCOL};\ +branch=${TI_IPC_EXAMPLES_GIT_BRANCH};\ +name=${TI_IPC_EXAMPLES_NAME}" + +TI_IPC_METADATA_GIT_URI = "git://git.ti.com/ipc/ipc-metadata.git" +TI_IPC_METADATA_DEST_SUFFIX = "git/ipc-metadata" +TI_IPC_METADATA_GIT_PROTOCOL = "git" +TI_IPC_METADATA_GIT_BRANCH = "master" +TI_IPC_METADATA_NAME = "ipc-metadata" + +SRC_URI += "${TI_IPC_METADATA_GIT_URI};\ +destsuffix=${TI_IPC_METADATA_DEST_SUFFIX};\ +protocol=${TI_IPC_METADATA_GIT_PROTOCOL};\ +branch=${TI_IPC_METADATA_GIT_BRANCH};\ +name=${TI_IPC_METADATA_NAME}" + +# Corresponds to tag: 3.50.03.05 +TI_IPC_METADATA_SRCREV = "3936c41d021c6d56c25f4bb07b647314a6589a57" +# Corresponds to tag: 3.50.03.05 +TI_IPC_EXAMPLES_SRCREV = "55a8341c60a91c0ba2d79b7e4b805e2e39b3060f" + +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_keystone = " ti-cgt6x-native \ + gcc-arm-none-eabi-native \ +" +DEPENDS_append_omap-a15 = " ti-cgt6x-native \ + ti-cgt-arm-native \ + gcc-arm-none-eabi-native \ +" +DEPENDS_append_omapl138 = " ti-cgt6x-native \ +" +DEPENDS_append_c66x = " ti-cgt6x-native \ +" + +DEPENDS_append_am65xx = " ti-cgt-arm-native \ + gcc-linaro-baremetal-aarch64-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" \ +" + +IPC_TARGETS_keystone = " \ + gnu.targets.arm.A15F="${GCC_ARM_NONE_TOOLCHAIN}" \ + ti.targets.elf.C66="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \ + ti.targets.elf.C66_big_endian="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \ +" +IPC_TARGETS_c66x = " \ + 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" \ +" + +IPC_TARGETS_am65xx = "\ + gnu.targets.arm.A53F="${GCC_LINARO_BAREMETAL_AARCH64_TOOLCHAIN}" \ + ti.targets.arm.elf.R5F="${M4_TOOLCHAIN_INSTALL_DIR}" \ +" + +EXTRA_OEMAKE = "\ + PLATFORM=${PLATFORM} \ + XDC_INSTALL_DIR="${XDC_INSTALL_DIR}" \ + BIOS_INSTALL_DIR="${SYSBIOS_INSTALL_DIR}" \ + ${IPC_TARGETS} \ + JOBS="--jobs=${BB_NUMBER_THREADS}" \ + JAVA_TOOL_OPTIONS=-Xss2560k \ +" +EXTRA_OEMAKE_append_am65xx = " PDK_INSTALL_DIR=${PDK_INSTALL_DIR}" + diff --git a/bsp/meta-ti/recipes-ti/ipc/ti-ipc-rtos_git.bb b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-rtos_git.bb new file mode 100644 index 00000000..4c0e71e6 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc-rtos_git.bb @@ -0,0 +1,141 @@ +require ti-ipc.inc +require ti-ipc-common.inc +require ti-ipc-rtos.inc + +DEPENDS = "ti-xdctools-native ti-sysbios doxygen-native zip-native" +DEPENDS_append_am65xx = " sciclient-rtos" + +PACKAGES =+ "${PN}-fw" +FILES_${PN}-fw = "${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_prepend_am65xx () { + # Trim directory name + mv ${S}/packages/ti/ipc/tests/bin/ti_platforms_cortexR_AM65X_false_R5F0 ${S}/packages/ti/ipc/tests/bin/ti_platforms_cortexR_AM65X_R5F0 + mv ${S}/packages/ti/ipc/tests/bin/ti_platforms_cortexR_AM65X_false_R5F1 ${S}/packages/ti/ipc/tests/bin/ti_platforms_cortexR_AM65X_R5F1 +} + +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}${base_libdir}/firmware/ipc + cp ${CP_ARGS} ${S}/packages/ti/ipc/tests/bin/* ${D}${base_libdir}/firmware/ipc || true +} + +KFDSPNUM = "0" +KFDSPNUM_k2hk = "8" +KFDSPNUM_k2l = "4" +KFDSPNUM_keystone = "1" + +KFPLAT = "" +KFPLAT_k2hk = "TCI6638K2K" +KFPLAT_k2l = "TCI6630K2L" +KFPLAT_k2e = "C66AK2E" +KFPLAT_k2g = "TCI66AK2G02" + +ALTERNATIVE_PRIORITY = "5" + +pkg_postinst_${PN}-fw_keystone () { + i=0 + while [ $i -lt ${KFDSPNUM} ]; do + update-alternatives --install /lib/firmware/keystone-dsp$i-fw keystone-dsp$i-fw ipc/ti_platforms_evm${KFPLAT}_core0/messageq_single.xe66 ${ALTERNATIVE_PRIORITY} + i=$(($i + 1)) + done +} + +pkg_postrm_${PN}-fw_keystone () { + i=0 + while [ $i -lt ${KFDSPNUM} ]; do + update-alternatives --remove keystone-dsp$i-fw ipc/ti_platforms_evm${KFPLAT}_core0/messageq_single.xe66 + i=$(($i + 1)) + done +} + +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 +} + +pkg_postinst_${PN}-fw_am65xx () { + update-alternatives --install /lib/firmware/am65x-mcu-r5f0_0-fw am65x-mcu-r5f0_0-fw ipc/ti_platforms_cortexR_AM65X_R5F0/messageq_single.xer5f ${ALTERNATIVE_PRIORITY} + update-alternatives --install /lib/firmware/am65x-mcu-r5f0_1-fw am65x-mcu-r5f0_1-fw ipc/ti_platforms_cortexR_AM65X_R5F1/messageq_single.xer5f ${ALTERNATIVE_PRIORITY} +} + +pkg_postrm_${PN}-fw_am65xx () { + update-alternatives --remove am65x-mcu-r5f0_0-fw ipc/ti_platforms_cortexR_AM65X_R5F0/messageq_single.xer5f + update-alternatives --remove am65x-mcu-r5f0_1-fw ipc/ti_platforms_cortexR_AM65X_R5F1/messageq_single.xer5f +} diff --git a/bsp/meta-ti/recipes-ti/ipc/ti-ipc.inc b/bsp/meta-ti/recipes-ti/ipc/ti-ipc.inc new file mode 100644 index 00000000..482fdcc2 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc.inc @@ -0,0 +1,18 @@ +DESCRIPTION = "TI Inter Process Communication (IPC) Mechanisms (for Uni- and Multi- Processor Configurations)" +HOMEPAGE="http://processors.wiki.ti.com/index.php/Category:IPC" + +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://${S}/ipc-linux.mak;beginline=1;endline=30;md5=7b327f9b710fd7c95e545b91cec79255" + +TI_IPC_GIT_URI = "git://git.ti.com/ipc/ipcdev.git" +TI_IPC_GIT_PROTOCOL = "git" +TI_IPC_GIT_BRANCH = "3.50" + +#Corresponds to 3.50.03.05 +TI_IPC_SRCREV = "7007b8adff409fd8c90757c9adafd264a3ff15e3" + +BRANCH = "${TI_IPC_GIT_BRANCH}" +SRC_URI = "${TI_IPC_GIT_URI};protocol=${TI_IPC_GIT_PROTOCOL};branch=${BRANCH};name=ipcdev" +SRCREV = "${TI_IPC_SRCREV}" + +S = "${WORKDIR}/git" diff --git a/bsp/meta-ti/recipes-ti/ipc/ti-ipc/0001-Add-kernel-build-dir.patch b/bsp/meta-ti/recipes-ti/ipc/ti-ipc/0001-Add-kernel-build-dir.patch new file mode 100644 index 00000000..e612ddc1 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc/0001-Add-kernel-build-dir.patch @@ -0,0 +1,112 @@ +From 7d9f57983c6d14ac14f26987eddc555ea5c75d61 Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko <denys@ti.com> +Date: Mon, 27 Jul 2015 11:51:52 -0400 +Subject: [PATCH] Add kernel build dir + +We build kernel outside of the source directory and the generated version.h +file ends up being in a separate directory from the rest of kernel headers. +Use another variable to point to the kernel build artifacts. + +Signed-off-by: Denys Dmytriyenko <denys@ti.com> + +--- + configure.ac | 6 ++++++ + ipc-linux.mak | 3 +++ + linux/src/mm/Makefile.am | 2 +- + packages/ti/ipc/mm/MmRpc.c | 4 ++++ + 4 files changed, 14 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index f0b4b61..9b5d07c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -71,6 +71,7 @@ AC_SUBST([AM_LDFLAGS]) + AC_ARG_VAR(PLATFORM, Platform to build. Options are: 'OMAPL138' 'OMAP54XX' '66AK2E' 'TCI6630' 'TCI6636' 'TCI6638' '66AK2G' and 'DRA7XX'. If not defined all platforms will be built.) + AC_ARG_VAR(CMEM_INSTALL_DIR, Installation path directory to the CMEM libraries) + AC_ARG_VAR(KERNEL_INSTALL_DIR, Installation path to the Linux kernel.) ++AC_ARG_VAR(KERNEL_BUILD_DIR, Path to the Linux kernel build artifacts.) + AC_ARG_VAR(AF_RPMSG, Address Family used by the RPMSG driver) + AC_ARG_VAR(DRM_PREFIX, Installation location to the DRM library.) + +@@ -111,6 +112,7 @@ AS_IF([test "x$PLATFORM" = "x"], [CMEM_INSTALL_DIR=]) + AC_SUBST([PLATFORM]) + AC_SUBST([CMEM_INSTALL_DIR]) + AC_SUBST([KERNEL_INSTALL_DIR]) ++AC_SUBST([KERNEL_BUILD_DIR]) + AC_SUBST([AF_RPMSG]) + AC_SUBST([DRM_PREFIX]) + +@@ -127,6 +129,7 @@ AM_CONDITIONAL([DRA7XX], [test "x$PLATFORM" = "xDRA7XX"]) + AM_CONDITIONAL([CMEM], [test "x$CMEM_INSTALL_DIR" != "x"]) + AM_CONDITIONAL([KDIR], [test "x$KERNEL_INSTALL_DIR" != "x"]) + AM_CONDITIONAL([KERNEL_INSTALL_DIR], [test -n "$KERNEL_INSTALL_DIR"]) ++AM_CONDITIONAL([KERNEL_BUILD_DIR], [test -n "$KERNEL_BUILD_DIR"]) + AM_CONDITIONAL([DRM], [test "x$DRM_PREFIX" != "x"]) + AM_CONDITIONAL([AF_RPMSG], [test -n "$AF_RPMSG"]) + +@@ -157,6 +160,9 @@ You have configured to build for the '${PLATFORM}' platform + Your KERNEL installation directory is set to: + '${KERNEL_INSTALL_DIR}' + ++Your KERNEL build artifacts directory is set to: ++ '${KERNEL_BUILD_DIR}' ++ + Your DRM installation directory is set to: + '${DRM_PREFIX}' + +diff --git a/ipc-linux.mak b/ipc-linux.mak +index 58a9cea..4e543ff 100644 +--- a/ipc-linux.mak ++++ b/ipc-linux.mak +@@ -60,6 +60,7 @@ config: + PLATFORM=$(PLATFORM) \ + CMEM_INSTALL_DIR=$(CMEM_INSTALL_DIR) \ + KERNEL_INSTALL_DIR=$(KERNEL_INSTALL_DIR) \ ++ KERNEL_BUILD_DIR=$(KERNEL_BUILD_DIR) \ + DRM_PREFIX=$(DRM_PREFIX) \ + AF_RPMSG=$(AF_RPMSG) + +@@ -72,6 +73,7 @@ config-static: + PLATFORM=$(PLATFORM) \ + CMEM_INSTALL_DIR=$(CMEM_INSTALL_DIR) \ + KERNEL_INSTALL_DIR=$(KERNEL_INSTALL_DIR) \ ++ KERNEL_BUILD_DIR=$(KERNEL_BUILD_DIR) \ + DRM_PREFIX=$(DRM_PREFIX) \ + AF_RPMSG=$(AF_RPMSG) + +@@ -84,5 +86,6 @@ config-shared: + PLATFORM=$(PLATFORM) \ + CMEM_INSTALL_DIR=$(CMEM_INSTALL_DIR) \ + KERNEL_INSTALL_DIR=$(KERNEL_INSTALL_DIR) \ ++ KERNEL_BUILD_DIR=$(KERNEL_BUILD_DIR) \ + DRM_PREFIX=$(DRM_PREFIX) \ + AF_RPMSG=$(AF_RPMSG) +diff --git a/linux/src/mm/Makefile.am b/linux/src/mm/Makefile.am +index 59aa312..8fb51a3 100644 +--- a/linux/src/mm/Makefile.am ++++ b/linux/src/mm/Makefile.am +@@ -32,7 +32,7 @@ + ## + + # additional include paths necessary to compile the library +-AM_CFLAGS = -Wall @AM_CFLAGS@ -DKERNEL_INSTALL_DIR="$(KERNEL_INSTALL_DIR)" ++AM_CFLAGS = -Wall @AM_CFLAGS@ -DKERNEL_INSTALL_DIR="$(KERNEL_INSTALL_DIR)" -DKERNEL_BUILD_DIR="$(KERNEL_BUILD_DIR)" + + ############################################################################### + # THE LIBRARIES TO BUILD +diff --git a/packages/ti/ipc/mm/MmRpc.c b/packages/ti/ipc/mm/MmRpc.c +index 2df7420..797e100 100644 +--- a/packages/ti/ipc/mm/MmRpc.c ++++ b/packages/ti/ipc/mm/MmRpc.c +@@ -56,7 +56,11 @@ + #endif + + #define linux_version_include(kd) <kd/include/generated/uapi/linux/version.h> ++#if defined(KERNEL_BUILD_DIR) ++#include linux_version_include(KERNEL_BUILD_DIR) ++#else + #include linux_version_include(KERNEL_INSTALL_DIR) ++#endif + + #if LINUX_VERSION_CODE < KERNEL_VERSION(3,14,0) + #define linux_include(kd,m) <kd/include/linux/m.h> diff --git a/bsp/meta-ti/recipes-ti/ipc/ti-ipc/omap_remoteproc.conf b/bsp/meta-ti/recipes-ti/ipc/ti-ipc/omap_remoteproc.conf new file mode 100644 index 00000000..6b5034cd --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc/omap_remoteproc.conf @@ -0,0 +1 @@ +softdep omap_remoteproc pre: virtio_rpmsg_bus diff --git a/bsp/meta-ti/recipes-ti/ipc/ti-ipc/tiipclad-daemon.service b/bsp/meta-ti/recipes-ti/ipc/ti-ipc/tiipclad-daemon.service new file mode 100644 index 00000000..ea26845e --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc/tiipclad-daemon.service @@ -0,0 +1,9 @@ +[Unit] +Description=TI IPC Daemon + +[Service] +Type=forking +ExecStart=/usr/bin/__LAD_DAEMON__ -g -l lad.txt + +[Install] +WantedBy=basic.target diff --git a/bsp/meta-ti/recipes-ti/ipc/ti-ipc/tiipclad-daemon.sh b/bsp/meta-ti/recipes-ti/ipc/ti-ipc/tiipclad-daemon.sh new file mode 100644 index 00000000..9ebfa35a --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc/tiipclad-daemon.sh @@ -0,0 +1,25 @@ +#! /bin/sh + +tiipclad_daemon=/usr/bin/__LAD_DAEMON__ +tiipclad_params="-g -l lad.txt" + +test -x "$tiipclad_daemon" || exit 0 + +case "$1" in + start) + echo -n "Starting tiipclad daemon" + start-stop-daemon --start --quiet \ + --exec $tiipclad_daemon -- $tiipclad_params + echo "." + ;; + stop) + echo -n "Stopping tiipclad daemon" + start-stop-daemon --stop --quiet --pidfile /var/run/tiipclad.pid + echo "." + ;; + *) + echo "Usage: /etc/init.d/tiipclad-daemon.sh {start|stop}" + exit 1 +esac + +exit 0 diff --git a/bsp/meta-ti/recipes-ti/ipc/ti-ipc_git.bb b/bsp/meta-ti/recipes-ti/ipc/ti-ipc_git.bb new file mode 100644 index 00000000..2ebd03fd --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ipc/ti-ipc_git.bb @@ -0,0 +1,69 @@ +DESCRIPTION = "TI Inter Process Communication (IPC) Mechanisms (for Uni- and Multi- Processor Configurations)" +HOMEPAGE="http://processors.wiki.ti.com/index.php/Category:IPC" + +require ti-ipc.inc +require ti-ipc-common.inc + +PR = "${INC_PR}.2" + +DEPENDS += "virtual/kernel" + +SRC_URI += "file://tiipclad-daemon.sh \ + file://omap_remoteproc.conf \ + file://tiipclad-daemon.service \ + file://0001-Add-kernel-build-dir.patch \ + " + +DAEMON = "UNKNOWN" +DAEMON_omap5-evm = "lad_omap54xx_smp" +DAEMON_dra7xx = "lad_dra7xx" +DAEMON_k2hk = "lad_tci6638" +DAEMON_k2l = "lad_tci6630" +DAEMON_k2e = "lad_66ak2e" +DAEMON_k2g = "lad_66ak2g" +DAEMON_omapl138 = "lad_omapl138" +DAEMON_k3 = "lad_am65xx" + +inherit autotools-brokensep pkgconfig update-rc.d systemd + +INITSCRIPT_NAME = "tiipclad-daemon.sh" +INITSCRIPT_PARAMS = "defaults 10" + +SYSTEMD_SERVICE_${PN} = "tiipclad-daemon.service" + +EXTRA_OECONF += "PLATFORM=${PLATFORM} KERNEL_INSTALL_DIR=${STAGING_KERNEL_DIR} KERNEL_BUILD_DIR=${STAGING_KERNEL_BUILDDIR}" + +do_compile[depends] += "virtual/kernel:do_shared_workdir" + +do_configure() { + ( cd ${S}; autoreconf -f -i -s ) + oe_runconf +} + +do_install_append() { + install -d ${D}${sysconfdir}/init.d/ + + # Modify the startup scripts to point to the right + # lad daemon executable. + sed -i -e "s/__LAD_DAEMON__/${DAEMON}/" ${WORKDIR}/tiipclad-daemon.sh + sed -i -e "s/__LAD_DAEMON__/${DAEMON}/" ${WORKDIR}/tiipclad-daemon.service + + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/tiipclad-daemon.service ${D}${systemd_system_unitdir} + install -d ${D}${sysconfdir}/init.d/ + install -c -m 755 ${WORKDIR}/tiipclad-daemon.sh ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME} +} + +do_install_append_dra7xx() { + install -d ${D}${sysconfdir}/modprobe.d/ + install -c -m 644 ${WORKDIR}/omap_remoteproc.conf ${D}${sysconfdir}/modprobe.d/ +} + +PACKAGES =+ "${PN}-test" +RDEPENDS_${PN}-test += "${PN}" + +FILES_${PN}-test = " \ + ${bindir}/NameServerApp \ + ${bindir}/MessageQApp \ + ${bindir}/MessageQMulti \ + ${bindir}/ping_rpmsg" diff --git a/bsp/meta-ti/recipes-ti/libp11/libp11_git.bb b/bsp/meta-ti/recipes-ti/libp11/libp11_git.bb new file mode 100644 index 00000000..9b1ea3e9 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/libp11/libp11_git.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "PKCS11 abstraction library" +LICENSE = "LGPL2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=fad9b3332be894bab9bc501572864b29" +SECTION = "libs" + +inherit autotools pkgconfig + +DEPENDS = "openssl10 libtool" +RDEPENDS_${PN} = "ti-softhsmv2" + +COMPATIBLE_MACHINE = "keystone" + +SRC_URI = "git://git.ti.com/keystone-linux/libp11.git;protocol=git;branch=${BRANCH}" +BRANCH = "master" +# Following commit corresponds to DEV.LIBP11-01.03.00.00 +SRCREV = "43c4f63a8d803fde2bcd8e4f8969e5fe9edf0e33" +PV = "1.3.0.0" + +S = "${WORKDIR}/git" diff --git a/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils.inc b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils.inc new file mode 100644 index 00000000..c8f93209 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils.inc @@ -0,0 +1,93 @@ +DESCRIPTION = "MFP Linux utils for TI ARM/DSP processors" +SECTION = "devel" +LICENSE = "GPLv2 & BSD" + +BASE_SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/linuxutils/${PV}/exports" +SRC_URI = "${BASE_SRC_URI}/linuxutils_${PV}.tar.gz " + +LIC_FILES_CHKSUM = "file://gpl_2.0.txt;md5=1298794fc2eed3df92a89f3c9d317440" + +S = "${WORKDIR}/linuxutils_${PV}" + +require recipes-ti/includes/ti-paths.inc +require recipes-ti/includes/ti-staging.inc + +PR = "${MACHINE_KERNEL_PR}" + +#This is a kernel module, don't set PR directly +MACHINE_KERNEL_PR_append = "f" + +inherit module + +do_compile() { + do_make_scripts + unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS + + case "${SOC_FAMILY}" in + "dm365") + modules="cmem edma irq";; + "omap3") + modules="cmem sdma";; + "dm355") + modules="cmem edma irq";; + *) + modules="cmem" + esac + + for module in $modules ; do + cd ${S}/packages/ti/sdo/linuxutils/$module + make \ + LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \ + MVTOOL_PREFIX="${TARGET_PREFIX}" \ + UCTOOL_PREFIX="${TARGET_PREFIX}" \ + clean debug release + done +} + +do_install () { + install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp + # Install CMEM + for module in $(find ${S}/packages/ti/sdo/linuxutils/ -name "*.ko") ; do + install -m 0755 $module ${D}/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp + done + cd ${S}/packages/ti/sdo/linuxutils/cmem/apps + make \ + LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \ + MVTOOL_PREFIX="${TARGET_PREFIX}" \ + UCTOOL_PREFIX="${TARGET_PREFIX}" \ + EXEC_DIR="${D}${installdir}/ti-linuxutils-app/cmem-app" \ + install + # Install EDMA + if [ "${SOC_FAMILY}" = "dm365" ] ; then + cd ${S}/packages/ti/sdo/linuxutils/edma/apps + make \ + LINUXKERNEL_INSTALL_DIR="${STAGING_KERNEL_DIR}" \ + MVTOOL_PREFIX="${TARGET_PREFIX}" \ + UCTOOL_PREFIX="${TARGET_PREFIX}" \ + EXEC_DIR="${D}${installdir}/ti-linuxutils-app/edma-app" \ + install + fi + + # stage tree - other packages may need this + install -d ${D}${LINUXUTILS_INSTALL_DIR_RECIPE} + cp -pPrf ${S}/* ${D}${LINUXUTILS_INSTALL_DIR_RECIPE} +} + + + + +PACKAGES =+ " ti-cmem-module \ + ti-sdma-module \ + ti-edma-module \ + ti-irq-module \ + ti-linuxutils-app" + +FILES_ti-cmem-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/cmem*.ko" +FILES_ti-sdma-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/sdma*.ko" +FILES_ti-edma-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/edma*.ko" +FILES_ti-irq-module = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/dsp/irq*.ko" + +FILES_ti-linuxutils-app = "${installdir}/ti-linuxutils-app/*/*" + +INSANE_SKIP_ti-linuxutils-app = "True" +INHIBIT_PACKAGE_STRIP = "1" diff --git a/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils-BKL-fix-2.patch b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils-BKL-fix-2.patch new file mode 100644 index 00000000..1438003c --- /dev/null +++ b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils-BKL-fix-2.patch @@ -0,0 +1,22 @@ +From: Koen Kooi <k-kooi@ti.com> +Subject: linuxutils: fix build with 2.6.37rcX + +--- + +--- /tmp/sdmak.c 2010-12-05 18:43:55.000000000 +0100 ++++ linuxutils_2_25_05_11/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.c 2010-12-05 18:48:31.000000000 +0100 +@@ -208,9 +208,12 @@ + } + + up_read(¤t->mm->mmap_sem); +- ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) ++ sema_init(&(channels[channel].mutex),1); ++#else + init_MUTEX_LOCKED(&(channels[channel].mutex)); +- channels[channel].owner = filp; ++#endif ++ channels[channel].owner = filp; + + if (copy_to_user(argp, &channel, sizeof(channel))) { + return -EFAULT; diff --git a/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils-BKL-fix.patch b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils-BKL-fix.patch new file mode 100644 index 00000000..29b0a444 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils-BKL-fix.patch @@ -0,0 +1,73 @@ +From: Koen Kooi <k-kooi@ti.com> +Subject: linuxutils: fix build with 2.6.37rcX + +--- + +--- /tmp/cmemk.c 2010-12-05 18:41:00.000000000 +0100 ++++ linuxutils_2_25_05_11/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c 2010-12-05 18:43:24.000000000 +0100 +@@ -31,6 +31,7 @@ + #include <linux/seq_file.h> + #include <linux/vmalloc.h> + #include <linux/sched.h> ++#include <linux/slab.h> + #include <asm/cacheflush.h> + #include <asm/uaccess.h> + #include <asm/pgtable.h> +@@ -204,7 +205,11 @@ + "\n\t\t fall back to a heap-based allocation attempt"); + module_param(useHeapIfPoolUnavailable, int, S_IRUGO); + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) ++static DEFINE_SEMAPHORE(cmem_mutex); ++#else + static DECLARE_MUTEX(cmem_mutex); ++#endif + + /* Describes a pool buffer */ + typedef struct pool_buffer { +@@ -243,8 +248,12 @@ + + static struct file_operations cmem_fxns = { + owner: THIS_MODULE, ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) ++ unlocked_ioctl: ioctl, ++#else + ioctl: ioctl, +- mmap: mmap, ++#endif ++ mmap: mmap, + open: open, + release: release + }; +--- /tmp/sdmak.c 2010-12-05 18:43:55.000000000 +0100 ++++ linuxutils_2_25_05_11/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.c 2010-12-05 18:48:31.000000000 +0100 +@@ -208,9 +208,12 @@ + } + + up_read(¤t->mm->mmap_sem); +- ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) ++ sema_init(&(channels[channel].mutex),1); ++#else + init_MUTEX_LOCKED(&(channels[channel].mutex)); +- channels[channel].owner = filp; ++#endif ++ channels[channel].owner = filp; + + if (copy_to_user(argp, &channel, sizeof(channel))) { + return -EFAULT; +@@ -286,8 +289,12 @@ + } + + static struct file_operations fops = { +- .ioctl = dma_ioctl, +- .release = dma_release, ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) ++ .unlocked_ioctl = dma_ioctl, ++#else ++ .ioctl = dma_ioctl, ++#endif ++ .release = dma_release, + .owner = THIS_MODULE + }; + diff --git a/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils_2_26-cmemk-fixes.patch b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils_2_26-cmemk-fixes.patch new file mode 100644 index 00000000..3ce66f8c --- /dev/null +++ b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils_2_26-cmemk-fixes.patch @@ -0,0 +1,59 @@ +Index: linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c +=================================================================== +--- linuxutils_2_26_01_02.orig/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c ++++ linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c +@@ -31,6 +31,7 @@ + #include <linux/seq_file.h> + #include <linux/vmalloc.h> + #include <linux/sched.h> ++#include <linux/slab.h> + #include <asm/cacheflush.h> + #include <asm/uaccess.h> + #include <asm/pgtable.h> +@@ -1072,7 +1073,7 @@ static int set_noncached(struct vm_area_ + { + vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); + +- vma->vm_flags |= VM_RESERVED | VM_IO; ++ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP | VM_IO; + + if (remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff, + vma->vm_end - vma->vm_start, vma->vm_page_prot)) { +@@ -1095,7 +1096,7 @@ static int set_cached(struct vm_area_str + ); + #endif + +- vma->vm_flags |= VM_RESERVED | VM_IO; ++ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP | VM_IO; + + if (remap_pfn_range(vma, vma->vm_start, vma->vm_pgoff, + vma->vm_end - vma->vm_start, vma->vm_page_prot)) { +@@ -2062,8 +2063,13 @@ int __init cmem_init(void) + block_avail_size[bi] = length; + + /* attempt to determine the end of Linux kernel memory */ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 11, 0) + phys_end_kernel = virt_to_phys((void *)PAGE_OFFSET) + + (num_physpages << PAGE_SHIFT); ++#else ++ phys_end_kernel = virt_to_phys((void *)PAGE_OFFSET) + ++ (get_num_physpages() << PAGE_SHIFT); ++#endif + + if (phys_end_kernel > block_start[bi]) { + if (allowOverlap == 0) { +@@ -2186,10 +2192,14 @@ int __init cmem_init(void) + } + + /* Create the /proc entry */ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0) + cmem_proc_entry = create_proc_entry("cmem", 0, NULL); + if (cmem_proc_entry) { + cmem_proc_entry->proc_fops = &cmem_proc_ops; + } ++#else ++ cmem_proc_entry = proc_create_data("cmem", 0, NULL, &cmem_proc_ops, NULL); ++#endif + + mutex_init(&cmem_mutex); + diff --git a/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils_2_26-sdmak-fixes.patch b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils_2_26-sdmak-fixes.patch new file mode 100644 index 00000000..5ec85fc2 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils/linuxutils_2_26-sdmak-fixes.patch @@ -0,0 +1,25 @@ +Index: linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.c +=================================================================== +--- linuxutils_2_26_01_02.orig/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.c ++++ linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/sdma/src/module/sdmak.c +@@ -44,7 +44,7 @@ + #include <mach/hardware.h> + #include <mach/dma.h> + #include <mach/tc.h> +-#else ++#elif LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + #include <plat/hardware.h> + #include <plat/dma.h> + #include <plat/tc.h> +@@ -97,6 +97,11 @@ + + #endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18) */ + ++#ifndef OMAP_DMA_NO_DEVICE ++#include <linux/omap-dma.h> ++#define OMAP_DMA_NO_DEVICE 0 ++#endif ++ + #include "../interface/sdma.h" + + struct channel { diff --git a/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils_2.26.01.02.bb b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils_2.26.01.02.bb new file mode 100644 index 00000000..113e6a69 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/linuxutils/ti-linuxutils_2.26.01.02.bb @@ -0,0 +1,17 @@ +require ti-linuxutils.inc + +SRC_URI += "file://linuxutils-BKL-fix-2.patch \ + file://linuxutils_2_26-cmemk-fixes.patch \ + file://linuxutils_2_26-sdmak-fixes.patch \ + " + +PE = "1" +PV = "2_26_01_02" + +SRC_URI[md5sum] = "70b4918bc35c1bcfef34d6ba3fbce0c8" +SRC_URI[sha256sum] = "51266dd928f8d629cd417c869789a6c0d596612120f165619119cbaadfd66ee2" + +INSANE_SKIP_${PN} = "installed-vs-shipped" + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST_ti-soc = "(.*)" diff --git a/bsp/meta-ti/recipes-ti/mathlib/mathlib-c66x_git.bb b/bsp/meta-ti/recipes-ti/mathlib/mathlib-c66x_git.bb new file mode 100644 index 00000000..22683855 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/mathlib/mathlib-c674x_git.bb b/bsp/meta-ti/recipes-ti/mathlib/mathlib-c674x_git.bb new file mode 100644 index 00000000..1654baf2 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/mathlib/mathlib.inc b/bsp/meta-ti/recipes-ti/mathlib/mathlib.inc new file mode 100644 index 00000000..b0cd62ec --- /dev/null +++ b/bsp/meta-ti/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_3" +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 = "git" +MATHLIB_GIT_URI = "git://git.ti.com/ep-processor-libraries/mathlib.git" +MATHLIB_SRCREV = "faedd650c47becb48b2d179242c8310327ef9853" + +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/bsp/meta-ti/recipes-ti/mpm-transport/mpm-transport_git.bb b/bsp/meta-ti/recipes-ti/mpm-transport/mpm-transport_git.bb new file mode 100644 index 00000000..3c28f28c --- /dev/null +++ b/bsp/meta-ti/recipes-ti/mpm-transport/mpm-transport_git.bb @@ -0,0 +1,49 @@ +DESCRIPTION = "Multiproc transport layer for KeyStone devices: Provide basic transport layer for moving data between different processing nodes" +HOMEPAGE = "http://git.ti.com/cgit/cgit.cgi/keystone-linux/mpm-transport.git" +LICENSE = "BSD-3-Clause & MIT" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=122b7757f366f3f6fe11988715258fc9" +COMPATIBLE_MACHINE = "keystone" + +DEPENDS = "common-csl-ip edma3-lld mmap-lld cmem rm-lld qmss-lld cppi-lld uio-module-drv" +DEPENDS_append_k2hk = " hyplnk-lld srio-lld" +DEPENDS_append_k2e = " hyplnk-lld" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +SRC_URI = "git://git.ti.com/keystone-linux/mpm-transport.git;protocol=git;branch=${BRANCH}" + +BRANCH = "master" +# This commit corresponds to tag DEV.MPM-TRANSPORT-02.00.04.00 +SRCREV = "e0e44fe55bef7ddf89f7ff3574f07fa906e72a37" + +PV = "2.0.4.0" +PR = "r0" + +EXTRA_OEMAKE = "PDK_INSTALL_PATH=${STAGING_INCDIR}" +EXTRA_OEMAKE_append_k2hk += "HYPLNK_TRANSPORT=true SRIO_TRANSPORT=true" +EXTRA_OEMAKE_append_k2e += "HYPLNK_TRANSPORT=true" +INSANE_SKIP_${PN} += "ldflags" + +S = "${WORKDIR}/git" + +PACKAGES =+ "${PN}-test" +FILES_${PN}-test = "${bindir}/mpm_transport_test.out \ + ${bindir}/mpm_transport_hyplnk_loopback.out \ + ${bindir}/mpm_transport_hyplnk_remote.out \ + ${bindir}/mpm_transport_hyplnk_loopback_dma.out \ + ${bindir}/mpm_transport_hyplnk_loopback64.out \ + ${bindir}/mpm_transport_qmss_arm_mt.out \ + ${bindir}/mpm_transport_srio_arm_mt.out" + +do_install() { + oe_runmake installbin BASE_DIR=${S} INSTALL_BIN_BASE_DIR=${D}/${bindir} + + install -d ${D}${includedir}/ + install -c -m 644 ${S}/include/* ${D}${includedir}/ + + install -d ${D}${libdir}/ + cp -a --preserve=mode,timestamps --no-preserve=ownership ${S}/lib/* ${D}${libdir}/ + + install -d ${D}${sysconfdir}/mpm/ + install -c -m 644 ${S}/scripts/mpm_config.json ${D}${sysconfdir}/mpm/mpm_config.json +} diff --git a/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr-rtos_git.bb b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr-rtos_git.bb new file mode 100644 index 00000000..7a6e0f63 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr-rtos_git.bb @@ -0,0 +1,44 @@ +SUMMARY = "TI Multiproc Manager (RTOS) for KeyStone II" +DESCRIPTION = "Provides download, debug and other utilities for other cores in the SOC like DSP" + +require recipes-ti/includes/ti-paths.inc +require recipes-ti/multiprocmgr/multiprocmgr.inc + +DEPENDS = "ti-cgt6x-native" + +PR = "${INC_PR}.2" + +PACKAGES =+ "${PN}-test" +FILES_${PN}-test = "${datadir}/ti/examples/mpm/test/filetestdemo/c66x/demo_loopback/build/bin/*.out \ + ${datadir}/ti/examples/mpm/test/sync_test/c66x/bin/*.out" + +EXTRA_OEMAKE = "LOCAL_SYSROOT="${STAGING_DIR_TARGET}" \ + C6X_GEN_INSTALL_PATH="${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" \ + " + +do_compile() { + oe_runmake c66x + oe_runmake test_c66x +} + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${MPM_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${MPM_INSTALL_DIR_RECIPE} + + # Copy C66x binaries + install -d ${D}${datadir}/ti/examples/mpm/test/filetestdemo/c66x/demo_loopback/build/bin + cp ${S}/test/filetestdemo/c66x/demo_loopback/build/bin/*.out \ + ${D}${datadir}/ti/examples/mpm/test/filetestdemo/c66x/demo_loopback/build/bin/ + install -d ${D}${datadir}/ti/examples/mpm/test/sync_test/c66x/bin + cp ${S}/test/sync_test/c66x/bin/*.out \ + ${D}${datadir}/ti/examples/mpm/test/sync_test/c66x/bin/ +} + +FILES_${PN}-dev += "${MPM_INSTALL_DIR_RECIPE}" +INSANE_SKIP_${PN}-dev = "arch" +INSANE_SKIP_${PN}-test = "arch" + +RDEPENDS_${PN}-dev = "bash" + +ALLOW_EMPTY_${PN} = "1" diff --git a/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr-test_git.bb b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr-test_git.bb new file mode 100644 index 00000000..f01d6513 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr-test_git.bb @@ -0,0 +1,34 @@ +DESCRIPTION = "TI Multiproc Manager test code" + +include multiprocmgr.inc + +PR = "${INC_PR}.2" + +DEPENDS = "multiprocmgr cmem" +RDEPENDS_${PN} = "multiprocmgr mpm-transport cmem" +RDEPENDS_${PN} += "multiprocmgr-rtos-test bash" + +CC += "-I${STAGING_KERNEL_DIR}/include" + +# Assuming the multiprocmgr kernel API is safe +CC[vardepsexclude] = "STAGING_KERNEL_DIR" + +FILES_${PN} += "\ + ${datadir}/ti/examples/mpm \ +" + +FILES_${PN}-dbg += "\ + ${datadir}/ti/examples/mpm/*/.debug \ +" + +do_compile() { + oe_runmake -C ${S} test +} + +do_install() { + # Copy Sources and binary + install -d ${D}${datadir}/ti/examples/mpm/src + cp -r ${S}/src/mailbox ${D}${datadir}/ti/examples/mpm/src + cp -r ${S}/src/sync ${D}${datadir}/ti/examples/mpm/src + cp -r ${S}/test ${D}${datadir}/ti/examples/mpm +} diff --git a/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr.inc b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr.inc new file mode 100644 index 00000000..998e5507 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr.inc @@ -0,0 +1,21 @@ +HOMEPAGE = "http://git.ti.com/cgit/cgit.cgi/keystone-linux/multi-proc-manager.git" +LICENSE = "BSD-3-Clause & MIT" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=fce208c498eb9669223724dc9c1d8fe4" +SECTION = "console" +COMPATIBLE_MACHINE = "keystone" + +MULTIPROCMGR_GIT_URI = "git://git.ti.com/keystone-linux/multi-proc-manager.git" +MULTIPROCMGR_GIT_PROTOCOL = "git" +MULTIPROCMGR_GIT_BRANCH = "master" + +# The following commits correspond to DEV.MPM-3.00.04.00 +MULTIPROCMGR_SRCREV = "21579a066b469ff4620e7cff12803ae152880bb5" + +PV = "3.0.4.0" +INC_PR = "r0" + +BRANCH = "${MULTIPROCMGR_GIT_BRANCH}" +SRC_URI = "${MULTIPROCMGR_GIT_URI};protocol=${MULTIPROCMGR_GIT_PROTOCOL};branch=${BRANCH}" +SRCREV = "${MULTIPROCMGR_SRCREV}" + +S = "${WORKDIR}/git" diff --git a/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr/0001-mpmdlif.c-don-t-hardcode-kernel-s-uapi-location-keys.patch b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr/0001-mpmdlif.c-don-t-hardcode-kernel-s-uapi-location-keys.patch new file mode 100644 index 00000000..25deedcc --- /dev/null +++ b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr/0001-mpmdlif.c-don-t-hardcode-kernel-s-uapi-location-keys.patch @@ -0,0 +1,27 @@ +From 17c307ff6e67af43f243366baa2ccc01f89cdddd Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko <denys@ti.com> +Date: Mon, 23 Apr 2018 15:35:44 -0400 +Subject: [PATCH] mpmdlif.c: don't hardcode kernel's "uapi" location + keystone_remoteproc.h + +Signed-off-by: Denys Dmytriyenko <denys@ti.com> +--- + src/daemon/mpmdlif.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/daemon/mpmdlif.c b/src/daemon/mpmdlif.c +index 0c31604..d287bbc 100644 +--- a/src/daemon/mpmdlif.c ++++ b/src/daemon/mpmdlif.c +@@ -47,7 +47,7 @@ + #include <stdint.h> + + #define _LINUX_TYPES_H +-#include "uapi/linux/keystone_remoteproc.h" ++#include "linux/keystone_remoteproc.h" + #include "internal/rsc_types.h" + //#include <elf.h> + // #define LOADER_DEBUG +-- +2.7.4 + diff --git a/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr/mpmsrv-daemon.service b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr/mpmsrv-daemon.service new file mode 100644 index 00000000..40eb4650 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr/mpmsrv-daemon.service @@ -0,0 +1,14 @@ +[Unit] +Description=TI Multiproc Manager + +[Service] +ExecStartPre=/sbin/modprobe keystone_remoteproc +ExecStartPre=/sbin/modprobe keystone_dsp_mem +ExecStartPre=/sbin/modprobe uio_module_drv + +Type=forking +PIDFile=/var/run/mpm/pid +ExecStart=/usr/bin/mpmsrv + +[Install] +WantedBy=basic.target diff --git a/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr_git.bb b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr_git.bb new file mode 100644 index 00000000..6143341d --- /dev/null +++ b/bsp/meta-ti/recipes-ti/multiprocmgr/multiprocmgr_git.bb @@ -0,0 +1,47 @@ +DESCRIPTION = "TI Multiproc Manager for KeyStone II" +SUMMARY = "Provides download, debug and other utilities for other cores in the SOC like DSP" + +include multiprocmgr.inc + +SRC_URI += " \ + file://mpmsrv-daemon.service \ + file://0001-mpmdlif.c-don-t-hardcode-kernel-s-uapi-location-keys.patch \ +" + +PR = "${INC_PR}.2" + +DEPENDS = "mpm-transport libdaemon virtual/kernel cmem" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +CC += "-I${STAGING_KERNEL_DIR}/include -I${STAGING_KERNEL_DIR}/include/uapi" + +INITSCRIPT_NAME = "mpmsrv-daemon.sh" +INITSCRIPT_PARAMS = "defaults 10" + +SYSTEMD_SERVICE_${PN} = "mpmsrv-daemon.service" + +inherit update-rc.d systemd + +do_install() { + install -d ${D}${bindir}/ + install -c -m 755 ${S}/bin/mpmsrv ${D}${bindir}/mpmsrv + install -c -m 755 ${S}/bin/mpmcl ${D}${bindir}/mpmcl + + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/mpmsrv-daemon.service ${D}${systemd_system_unitdir} + install -d ${D}${sysconfdir}/init.d/ + install -c -m 755 ${S}/scripts/mpmsrv-daemon.sh ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME} + + install -d ${D}${sysconfdir}/mpm/ + install -c -m 755 ${S}/scripts/crash_callback.sh ${D}${sysconfdir}/mpm/crash_callback.sh + + install -d ${D}${includedir}/ + install -c -m 755 ${S}/include/* ${D}${includedir}/ + + install -d ${D}${libdir}/ + cp -a ${S}/lib/* ${D}${libdir}/ + chown -R root:root ${D}${libdir}/ +} + +INSANE_SKIP_${PN} = "ldflags" diff --git a/bsp/meta-ti/recipes-ti/ndk/ti-ndk.inc b/bsp/meta-ti/recipes-ti/ndk/ti-ndk.inc new file mode 100644 index 00000000..9afde316 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ndk/ti-ndk.inc @@ -0,0 +1,20 @@ +SUMMARY = "TI RTOS_Networking" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ndk/index.html" +SECTION = "devel" +LICENSE = "BSD" + +require recipes-ti/includes/ti-paths.inc + +S = "${WORKDIR}/ndk_${PV}" +SRC_URI = "http://software-dl.ti.com/targetcontent/ndk/${PV}/exports/ndk_${PV}.zip;name=ndkzip" + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${NDK_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${NDK_INSTALL_DIR_RECIPE} +} + +ALLOW_EMPTY_${PN} = "1" +FILES_${PN}-dev += "${NDK_INSTALL_DIR_RECIPE}" + +INSANE_SKIP_${PN}-dev = "arch ldflags staticdev file-rdeps" diff --git a/bsp/meta-ti/recipes-ti/ndk/ti-ndk_3.60.00.13.bb b/bsp/meta-ti/recipes-ti/ndk/ti-ndk_3.60.00.13.bb new file mode 100644 index 00000000..700ad7d3 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ndk/ti-ndk_3.60.00.13.bb @@ -0,0 +1,16 @@ +require ti-ndk.inc + +PV = "3_60_00_13" +PR = "r0" + +LIC_FILES_CHKSUM = "file://manifest_ndk_${PV}.html;md5=6d1d16547344a4418e565586fa45b458" + +SRC_URI[ndkzip.md5sum] = "cc1bbe67b46bd02c4a423814360a4e00" +SRC_URI[ndkzip.sha256sum] = "86407d4b423419e020b38a44d1a61705fdec0ae0d5e35eb07b99fcfe5ceee7dd" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INHIBIT_SYSROOT_STRIP = "1" + +COMPATIBLE_HOST ?= "null" +COMPATIBLE_HOST_ti-soc = "(.*)" diff --git a/bsp/meta-ti/recipes-ti/ns/ti-ns.inc b/bsp/meta-ti/recipes-ti/ns/ti-ns.inc new file mode 100644 index 00000000..2a50c56c --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ns/ti-ns.inc @@ -0,0 +1,21 @@ +SUMMARY = "TI Network Services" +HOMEPAGE = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ns/index.html" +SECTION = "devel" +LICENSE = "BSD" + +require recipes-ti/includes/ti-paths.inc + +S = "${WORKDIR}/ns_${PV}" + +SRC_URI = "http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ns/${PV}/exports/ns_${PV}.zip;name=nszip" + +do_install() { + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" + install -d ${D}${NS_INSTALL_DIR_RECIPE} + cp ${CP_ARGS} ${S}/* ${D}${NS_INSTALL_DIR_RECIPE} +} + +ALLOW_EMPTY_${PN} = "1" +FILES_${PN}-dev += "${NS_INSTALL_DIR_RECIPE}" + +INSANE_SKIP_${PN}-dev = "arch ldflags staticdev file-rdeps" diff --git a/bsp/meta-ti/recipes-ti/ns/ti-ns_2.60.00.07.bb b/bsp/meta-ti/recipes-ti/ns/ti-ns_2.60.00.07.bb new file mode 100644 index 00000000..a5da7f9e --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ns/ti-ns_2.60.00.07.bb @@ -0,0 +1,14 @@ +require ti-ns.inc + +PV = "2_60_00_07" +PR = "r0" +SRC_URI = "http://software-dl.ti.com/targetcontent/ns/${PV}/exports/ns_${PV}.zip;name=nszip" + +LIC_FILES_CHKSUM = "file://manifest_ns_${PV}.html;md5=e15dc261b0ef14c6fbabba24abcde4f0" + +SRC_URI[nszip.md5sum] = "7ad9f9fc79b4718bfa9b0042cb28d06f" +SRC_URI[nszip.sha256sum] = "8d2901e49ee72dde2e88370981e931c656e89efc7e0d5e3f775dde7d720e2b19" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INHIBIT_SYSROOT_STRIP = "1" diff --git a/bsp/meta-ti/recipes-ti/openmp-rtos/openmp-rtos_git.bb b/bsp/meta-ti/recipes-ti/openmp-rtos/openmp-rtos_git.bb new file mode 100644 index 00000000..67d9edf5 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/openmp-rtos/openmp-rtos_git.bb @@ -0,0 +1,68 @@ +DESCRIPTION = "TI OpenMP RTOS" +HOMEPAGE = "git://git.ti.com/openmp/ti-openmp-dsp-runtime.git" +LICENSE = "BSD" + +require recipes-ti/includes/ti-paths.inc + +PV = "2_06_03_00" +PR = "r0" + +OPENMP_RTOS_GIT_URI = "git://git.ti.com/openmp/ti-openmp-dsp-runtime.git" +OPENMP_RTOS_GIT_PROTOCOL = "git" +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" +DEPENDS_append_k2hk = " qmss-lld-rtos cppi-lld-rtos" +DEPENDS_append_k2e = " qmss-lld-rtos cppi-lld-rtos" +DEPENDS_append_k2l = " qmss-lld-rtos cppi-lld-rtos" + +COMPATIBLE_MACHINE = "keystone|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 K2G_PDK_DIR ="${PDK_INSTALL_DIR}" +export XDCCGROOT = "${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" + +export BUILD_K2H = "0" +export BUILD_AM572 = "0" +export BUILD_K2G = "0" + +BUILD_K2H_keystone = "1" +BUILD_AM572_omap-a15 = "1" +BUILD_K2H_k2g = "0" +BUILD_K2G_k2g = "1" + +RELEASE_TARGET = "" +RELEASE_TARGET_keystone = "k2x" +RELEASE_TARGET_omap-a15 = "am57xx" +RELEASE_TARGET_k2g = "k2g" + +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/bsp/meta-ti/recipes-ti/osal/ti-osal.inc b/bsp/meta-ti/recipes-ti/osal/ti-osal.inc new file mode 100644 index 00000000..0a966d40 --- /dev/null +++ b/bsp/meta-ti/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 & 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/bsp/meta-ti/recipes-ti/osal/ti-osal_1.24.00.09.bb b/bsp/meta-ti/recipes-ti/osal/ti-osal_1.24.00.09.bb new file mode 100644 index 00000000..226458be --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/swtools/swtools_git.bb b/bsp/meta-ti/recipes-ti/swtools/swtools_git.bb new file mode 100644 index 00000000..796909f1 --- /dev/null +++ b/bsp/meta-ti/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" +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 = "r2" +S = "${WORKDIR}/git" + +SWTOOLS_GIT_BRANCH = "master" +SWTOOLS_GIT_PROTOCOL = "git" +SWTOOLS_GIT_URI = "git://git.ti.com/ep-processor-libraries/swtools.git" +SWTOOLS_SRCREV = "d0c1022954b489d5f3d8d2f5c81d8c6a392f4af4" + +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 -pPrf ${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/bsp/meta-ti/recipes-ti/ti-pdk-build/ti-pdk-build-rtos_git.bb b/bsp/meta-ti/recipes-ti/ti-pdk-build/ti-pdk-build-rtos_git.bb new file mode 100644 index 00000000..b71e7cf7 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ti-pdk-build/ti-pdk-build-rtos_git.bb @@ -0,0 +1,43 @@ +DESCRIPTION = "Package containing PDK makefile infrastructure" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://COPYING.txt;beginline=1;endline=31;md5=92ab6f5e10f1502081c6080207e57ec1" + +require recipes-ti/includes/ti-paths.inc + +PV = "01.00.00.12B" +PR = "r0" + +PDK_BUILD_GIT_URI = "git://git.ti.com/keystone-rtos/processor-pdk-build.git" +PDK_BUILD_GIT_PROTOCOL = "git" +PDK_BUILD_GIT_BRANCH = "master" + +# Below Commit ID corresponds to "DEV.PDK_BUILD.01.00.00.12B" +PDK_BUILD_SRCREV = "40e09c24dc988ff79f0e4757201d6b87fb84af56" + +BRANCH = "${PDK_BUILD_GIT_BRANCH}" +SRC_URI = "\ + ${PDK_BUILD_GIT_URI};protocol=${PDK_BUILD_GIT_PROTOCOL};branch=${BRANCH} \ + " + +SRCREV = "${PDK_BUILD_SRCREV}" + +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|keystone|omapl1|c66x|k3" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +S = "${WORKDIR}/git/" + +PARALLEL_MAKE = "" +CLEANBROKEN = "1" + +do_compile() { + : +} + +EXTRA_OEMAKE = "-f make_install LIMIT_SOCS="${TI_PDK_LIMIT_SOCS}" PDK_INSTALL_DIR="${D}${PDK_INSTALL_DIR_RECIPE}"" + +do_install() { + oe_runmake +} + +FILES_${PN} += "${PDK_INSTALL_DIR_RECIPE}/packages/*" +INSANE_SKIP_${PN} += " file-rdeps" diff --git a/bsp/meta-ti/recipes-ti/ti-softhsmv2/ti-softhsmv2_git.bb b/bsp/meta-ti/recipes-ti/ti-softhsmv2/ti-softhsmv2_git.bb new file mode 100644 index 00000000..d281a515 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/ti-softhsmv2/ti-softhsmv2_git.bb @@ -0,0 +1,48 @@ +DESCRIPTION = "TI softhsmv2 package" +LICENSE = "BSD-2-Clause | BSD-3-Clause | ISC | IBM-License | FSFULLR | Zlib" +LIC_FILES_CHKSUM = "file://LICENSE;md5=700a883962ccff663f888f3f7221ce8f" +SECTION = "libs" + +mntdir = "/mnt" + +inherit autotools pkgconfig + +DEPENDS = "openssl10 libdaemon zlib" +COMPATIBLE_MACHINE = "keystone" + +BRANCH = "ti-softhsm-rebase" +SRC_URI = "git://git.ti.com/keystone-linux/ti-softhsmv2.git;protocol=git;branch=${BRANCH}" +#Following commit corresponds to tag DEV.SOFTHSM-02.00.00.00 +SRCREV = "b0eef602c03583e59c289ba113b64eaa4f5cac13" +PV = "2.0.0.0" +PR = "r0" + +S = "${WORKDIR}/git" + +CFLAGS += "-mno-unaligned-access" +CPPFLAGS += "-mno-unaligned-access" + +EXTRA_OECONF += " \ + --with-zlib=${STAGING_EXECPREFIXDIR} \ + --with-openssl=${STAGING_EXECPREFIXDIR} \ +" + +INITSCRIPT_NAME = "softhsm-daemon.sh" +INITSCRIPT_PARAMS = "defaults 10" + +inherit update-rc.d + +FILES_${PN} += "${libdir}/softhsm/lib*.so.* ${mntdir}/*" +FILES_${PN}-dbg += "${libdir}/softhsm/.debug" +FILES_${PN}-staticdev += "${libdir}/softhsm/*.a" +FILES_${PN}-dev += "${libdir}/softhsm/*.la ${libdir}/softhsm/lib*.so" + +INSANE_SKIP_${PN}-dev = "dev-elf" + +do_install_append() { + install -d ${D}${mntdir}/securedbv0 + install -d ${D}${mntdir}/securedbv1 + + install -d ${D}${sysconfdir}/init.d/ + install -c -m 755 ${S}/src/bin/daemon/softhsm-daemon.sh ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME} +} diff --git a/bsp/meta-ti/recipes-ti/udma/udma_git.bb b/bsp/meta-ti/recipes-ti/udma/udma_git.bb new file mode 100644 index 00000000..0374d37f --- /dev/null +++ b/bsp/meta-ti/recipes-ti/udma/udma_git.bb @@ -0,0 +1,28 @@ +DESCRIPTION = "Provides zero copy access from user-space to packet dma channels via udma kernel driver" +LICENSE = "BSD-3-Clause" + +COMPATIBLE_MACHINE = "keystone" +LIC_FILES_CHKSUM = "file://include/udma.h;startline=1;endline=39;md5=ba3c7f91f970afe073b759ced61d0f27" + +BRANCH = "master" +SRC_URI = "git://git.ti.com/keystone-linux/udma.git;protocol=git;branch=${BRANCH}" +S = "${WORKDIR}/git" +# Commit corresponds to UDMA.01.00.00.00 +SRCREV = "53d09fb0bc98c41c5eb43623097e363c497d6fd8" + +PACKAGES =+ "${PN}-test" + +FILES_${PN}-test = "${bindir}/udma_test" + +do_install_append() { + install -d ${D}${bindir}/ + install -d ${D}${libdir}/ + install -d ${D}${includedir}/ + install -c -m 755 ${S}/udma_test ${D}${bindir}/ + install -c -m 755 ${S}/libudma.a ${D}${libdir}/ + install -c -m 755 ${S}/libudma.so ${D}${libdir}/libudma.so.1.0.0 + cd ${D}${libdir}/ + ln -sf libudma.so.1.0.0 libudma.so.1 + ln -sf libudma.so.1.0.0 libudma.so + install -c -m 755 ${S}/include/* ${D}${includedir}/ +} diff --git a/bsp/meta-ti/recipes-ti/uio-test-pruss/uio-test-pruss_git.bb b/bsp/meta-ti/recipes-ti/uio-test-pruss/uio-test-pruss_git.bb new file mode 100644 index 00000000..cbae1b11 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/uio-test-pruss/uio-test-pruss_git.bb @@ -0,0 +1,39 @@ +DESCRIPTION = "Provides test pruss firmware for uio based tests" +LICENSE = "BSD-3-Clause" +PV = "1.0.2.0" +require recipes-ti/includes/ti-paths.inc + +S = "${WORKDIR}/git" + +DEPENDS = "ti-cgt-pru-native" + +BRANCH = "master" +LIC_FILES_CHKSUM = "file://Makefile;startline=1;endline=31;md5=0ee4f2c42eb6b04e37859bb55a18b144" + +UIO_TEST_PRUSS_GIT_URI = "git://git.ti.com/processor-sdk/uio-test-pruss.git" +UIO_TEST_PRUSS_GIT_PROTOCOL = "git" +SRC_URI = "${UIO_TEST_PRUSS_GIT_URI};protocol=${UIO_TEST_PRUSS_GIT_PROTOCOL};branch=${BRANCH}" + +# Corresponds to version 01.00.02.00 +UIO_TEST_PRUSS_SRCREV = "e52a7b099d7203ca52519650df51419e9fef7e0c" + +SRCREV = "${UIO_TEST_PRUSS_SRCREV}" + +PR = "r0" + +COMPATIBLE_MACHINE = "omap-a15|ti33x|ti43x|k2g" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +DEVICE_NAME = "" +DEVICE_NAME_append_am57xx-evm = "am57xx" +DEVICE_NAME_append_ti33x = "am33xx" +DEVICE_NAME_append_ti43x = "am43xx" +DEVICE_NAME_append_k2g = "k2g" + +EXTRA_OEMAKE = "CGT_PRU=${TI_CGT_PRU_INSTALL_DIR} DEVICE=${DEVICE_NAME}" + +do_install() { + install -d ${D}${bindir}/ + cp -r *.bin ${D}${bindir}/ +} diff --git a/bsp/meta-ti/recipes-ti/vlib/vlib-c66x.inc b/bsp/meta-ti/recipes-ti/vlib/vlib-c66x.inc new file mode 100644 index 00000000..a539e4d7 --- /dev/null +++ b/bsp/meta-ti/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|keystone" + +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 = "installed-vs-shipped arch" diff --git a/bsp/meta-ti/recipes-ti/vlib/vlib-c66x_3.2.1.0.bb b/bsp/meta-ti/recipes-ti/vlib/vlib-c66x_3.2.1.0.bb new file mode 100644 index 00000000..e3742d10 --- /dev/null +++ b/bsp/meta-ti/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/bsp/meta-ti/recipes-ti/xdais/ti-xdais.inc b/bsp/meta-ti/recipes-ti/xdais/ti-xdais.inc new file mode 100644 index 00000000..24268b3a --- /dev/null +++ b/bsp/meta-ti/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 = "GPLv2" +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/bsp/meta-ti/recipes-ti/xdais/ti-xdais_6.26.01.03.bb b/bsp/meta-ti/recipes-ti/xdais/ti-xdais_6.26.01.03.bb new file mode 100644 index 00000000..3d358632 --- /dev/null +++ b/bsp/meta-ti/recipes-ti/xdais/ti-xdais_6.26.01.03.bb @@ -0,0 +1,11 @@ +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" + +INSANE_SKIP_${PN} = "installed-vs-shipped" diff --git a/bsp/meta-ti/recipes-ti/xdais/ti-xdais_7.24.00.04.bb b/bsp/meta-ti/recipes-ti/xdais/ti-xdais_7.24.00.04.bb new file mode 100644 index 00000000..8148f73a --- /dev/null +++ b/bsp/meta-ti/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" |