mirror of
https://git.yoctoproject.org/meta-ti
synced 2026-04-20 03:31:58 +00:00
ipc-lld: Adding recipe for IPC low-level driver and examples
IPC-LLD provides the low-level RPMSG based communication interface between various cores Signed-off-by: Santosh Jha <sjha@ti.com> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
This commit is contained in:
committed by
Denys Dmytriyenko
parent
2aba7315d4
commit
ee4fc84fd5
47
recipes-bsp/ipc-lld/ipc-lld-examples-rtos_git.bb
Normal file
47
recipes-bsp/ipc-lld/ipc-lld-examples-rtos_git.bb
Normal file
@@ -0,0 +1,47 @@
|
||||
SUMMARY = "echo_test for IPC-LLD"
|
||||
|
||||
require ipc-lld.inc
|
||||
|
||||
DEPENDS += " ipc-lld-rtos common-csl-ip-rtos sciclient-rtos board-rtos"
|
||||
|
||||
REMOTE_FW_DIR = "${S}/examples/echo_test/yocto_bin"
|
||||
REMOTE_FW_BIN_DIR = "${REMOTE_FW_DIR}/ipc_echo_test/bin"
|
||||
|
||||
DST_BIN_PATH = "${base_libdir}/firmware/pdk-ipc/"
|
||||
|
||||
do_configure[noexec] = "1"
|
||||
|
||||
do_compile() {
|
||||
cd ${S}
|
||||
|
||||
for board in ${TI_PDK_LIMIT_BOARDS}
|
||||
do
|
||||
for core in ${TI_PDK_LIMIT_CORES}
|
||||
do
|
||||
oe_runmake examples BOARD="$board" CORE="$core" DEST_ROOT=${REMOTE_FW_DIR}
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${DST_BIN_PATH}
|
||||
|
||||
for board in ${TI_PDK_LIMIT_BOARDS}
|
||||
do
|
||||
for core in ${TI_PDK_LIMIT_CORES}
|
||||
do
|
||||
install -m 0644 ${REMOTE_FW_BIN_DIR}/$board/ipc_echo_test_${core}_release.x* ${D}${DST_BIN_PATH}
|
||||
|
||||
#removing map files copied in previous line
|
||||
rm ${D}${DST_BIN_PATH}/*.map
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
# make sure that lib/firmware, and all its contents are part of the package
|
||||
FILES_${PN} += "${base_libdir}/firmware"
|
||||
FILES_${PN} += "${PDK_INSTALL_DIR_RECIPE}/packages"
|
||||
|
||||
INSANE_SKIP_${PN} = "arch ldflags file-rdeps"
|
||||
|
||||
INSANE_SKIP_${PN}-dbg = "arch"
|
||||
45
recipes-bsp/ipc-lld/ipc-lld-rtos_git.bb
Normal file
45
recipes-bsp/ipc-lld/ipc-lld-rtos_git.bb
Normal file
@@ -0,0 +1,45 @@
|
||||
SUMMARY = "TI RTOS low level driver for IPC"
|
||||
|
||||
require ipc-lld.inc
|
||||
|
||||
DEPENDS += " osal-rtos common-csl-ip-rtos sciclient-rtos"
|
||||
|
||||
do_configure() {
|
||||
# remove any previous package
|
||||
rm -rf ${IPCLLD_PACKAGE_BASE}
|
||||
cd ${S}
|
||||
|
||||
mkdir -p ${IPCLLD_ROOTPATH}
|
||||
|
||||
for board in ${TI_PDK_LIMIT_BOARDS}
|
||||
do
|
||||
# make the release package before building it
|
||||
oe_runmake package BOARD=$board DEST_ROOT=${IPCLLD_PACKAGE_BASE} PDK_IPC_COMP_PATH=${S}
|
||||
done
|
||||
|
||||
}
|
||||
|
||||
do_compile() {
|
||||
cd ${IPCLLD_ROOTPATH}
|
||||
|
||||
oe_runmake lib LIMIT_BOARDS="${TI_PDK_LIMIT_BOARDS}" PDK_IPC_COMP_PATH=${IPCLLD_ROOTPATH}
|
||||
}
|
||||
|
||||
do_install() {
|
||||
cd ${IPCLLD_ROOTPATH}
|
||||
|
||||
#remove prebuilt binaries
|
||||
rm -rf examples/echo_test/binaries
|
||||
|
||||
#archive
|
||||
tar -cf ipc-lld.tar --exclude='*.tar' ./*
|
||||
|
||||
install -d ${D}${PDK_INSTALL_DIR_RECIPE}/packages/ti/drv/ipc
|
||||
find -name "*.tar" -exec tar xf {} --no-same-owner -C ${D}${PDK_INSTALL_DIR_RECIPE}/packages/ti/drv/ipc \;
|
||||
}
|
||||
|
||||
FILES_${PN} += "${PDK_INSTALL_DIR_RECIPE}/packages"
|
||||
|
||||
INSANE_SKIP_${PN} = "arch ldflags file-rdeps"
|
||||
|
||||
INSANE_SKIP_${PN}-dbg = "arch"
|
||||
35
recipes-bsp/ipc-lld/ipc-lld.inc
Normal file
35
recipes-bsp/ipc-lld/ipc-lld.inc
Normal file
@@ -0,0 +1,35 @@
|
||||
inherit ti-pdk
|
||||
|
||||
LICENSE = "BSD-3-Clause"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=7eae093f2b09fd39307f30028a068b91"
|
||||
|
||||
COMPATIBLE_MACHINE = "k3"
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
|
||||
IPCLLD_GIT_URI = "git://git.ti.com/keystone-rtos/ipc-lld.git"
|
||||
IPCLLD_GIT_PROTOCOL = "git"
|
||||
IPCLLD_GIT_BRANCH = "master"
|
||||
|
||||
# Below commit ID corresponds to "01.00.00.00"
|
||||
IPCLLD_SRCREV = "c695ca99aa4b7242e808889cfeacf848f14112c7"
|
||||
|
||||
BRANCH = "${IPCLLD_GIT_BRANCH}"
|
||||
SRC_URI = "${IPCLLD_GIT_URI};protocol=${IPCLLD_GIT_PROTOCOL};branch=${BRANCH}"
|
||||
|
||||
SRCREV = "${IPCLLD_SRCREV}"
|
||||
PV = "01.00.00.00"
|
||||
PR = "r0"
|
||||
|
||||
# Build with make instead of XDC
|
||||
TI_PDK_XDCMAKE = "0"
|
||||
|
||||
IPCLLD_PACKAGE_BASE = "${S}/../ipclld_base"
|
||||
IPCLLD_ROOTPATH = "${IPCLLD_PACKAGE_BASE}/package/all/pdk_/packages/ti/drv/ipc"
|
||||
|
||||
export PDK_INSTALL_PATH = "${PDK_INSTALL_DIR}/packages"
|
||||
export PDK_IPC_ROOT_PATH = "${IPCLLD_PACKAGE_BASE}/package/all/pdk_/packages"
|
||||
|
||||
# HTML doc link params
|
||||
PDK_COMP_LINK_TEXT = "IPCLLD"
|
||||
|
||||
EXTRA_OEMAKE = "PDK_INSTALL_PATH=${PDK_INSTALL_PATH} "
|
||||
Reference in New Issue
Block a user