diff options
Diffstat (limited to 'bsp/meta-ti/recipes-bsp/ti-sci-fw')
3 files changed, 140 insertions, 0 deletions
diff --git a/bsp/meta-ti/recipes-bsp/ti-sci-fw/ti-sci-fw-source_2020.04a.bb b/bsp/meta-ti/recipes-bsp/ti-sci-fw/ti-sci-fw-source_2020.04a.bb new file mode 100644 index 00000000..becf893e --- /dev/null +++ b/bsp/meta-ti/recipes-bsp/ti-sci-fw/ti-sci-fw-source_2020.04a.bb @@ -0,0 +1,45 @@ +# ti-sci-fw builds and packages multiple config variants via multiconfig +# Let's take a page from gcc-source as a common recipe for all gcc stages, +# but also to provide a single package for MAINMACHINE of all multiconfigs + +require recipes-bsp/ti-sci-fw/ti-sci-fw_${PV}.inc + +SUMMARY += "- sources" + +COMPATIBLE_MACHINE = "k3" + +EXCLUDE_FROM_WORLD = "1" +INHIBIT_DEFAULT_DEPS = "1" +DEPENDS = "" + +PACKAGES = "${PN}" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +SRCIPK_SRC_DIR = "${WORKDIR}/imggen" +SRCIPK_INSTALL_DIR = "board-support/k3-image-gen-${PV}" +FILES_${PN} = "${SRCIPK_INSTALL_DIR}" + +do_install() { + # Copy sources for packaging + mkdir -p ${D}/${SRCIPK_INSTALL_DIR} + if [ -e ${SRCIPK_SRC_DIR} ]; then + if [ "${SRCIPK_SRC_DIR}" = "${WORKDIR}" ]; then + excludes='--exclude ./temp --exclude ${D}' + fi + tar -C ${SRCIPK_SRC_DIR} -cO $excludes . | tar -C ${D}/${SRCIPK_INSTALL_DIR} -xpf - + fi + + # Fix up patches/ directory to contain actual patches instead of symlinks + if [ -e ${D}/${SRCIPK_INSTALL_DIR}/patches ] + then + mv ${D}/${SRCIPK_INSTALL_DIR}/patches ${D}/${SRCIPK_INSTALL_DIR}/patches-links + cp -rL ${D}/${SRCIPK_INSTALL_DIR}/patches-links ${D}/${SRCIPK_INSTALL_DIR}/patches + rm -rf ${D}/${SRCIPK_INSTALL_DIR}/patches-links + fi +} + +# Do not perform any QA checks on source package +INSANE_SKIP_${PN} += "${ALL_QA}" diff --git a/bsp/meta-ti/recipes-bsp/ti-sci-fw/ti-sci-fw_2020.04a.bb b/bsp/meta-ti/recipes-bsp/ti-sci-fw/ti-sci-fw_2020.04a.bb new file mode 100644 index 00000000..b5588265 --- /dev/null +++ b/bsp/meta-ti/recipes-bsp/ti-sci-fw/ti-sci-fw_2020.04a.bb @@ -0,0 +1,79 @@ +require recipes-bsp/ti-sci-fw/ti-sci-fw_${PV}.inc + +DEPENDS = "openssl-native u-boot-mkimage-native dtc-native" + +CLEANBROKEN = "1" +PR = "r1" + +# Loaded by R5F core +COMPATIBLE_MACHINE = "k3r5" +COMPATIBLE_MACHINE_aarch64 = "null" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +TI_SECURE_DEV_PKG ?= "" +export TI_SECURE_DEV_PKG + +SYSFW_SOC ?= "unknown" +SYSFW_CONFIG ?= "unknown" + +SYSFW_PREFIX = "ti-sci-firmware" +SYSFW_SUFFIX ?= "unknown" + +SYSFW_BASE = "${SYSFW_PREFIX}-${SYSFW_SOC}-${SYSFW_SUFFIX}" + +SYSFW_TISCI = "${S}/ti-sysfw/${SYSFW_BASE}*.bin" + +SYSFW_BINARY = "sysfw-${SYSFW_SOC}-${SYSFW_CONFIG}.itb" +SYSFW_VBINARY = "sysfw-${PV}-${SYSFW_SOC}-${SYSFW_CONFIG}.itb" +SYSFW_IMAGE = "sysfw-${SYSFW_SOC}-${SYSFW_CONFIG}.itb" +SYSFW_SYMLINK ?= "sysfw.itb" + +CFLAGS[unexport] = "1" +LDFLAGS[unexport] = "1" +AS[unexport] = "1" +LD[unexport] = "1" + +do_configure[noexec] = "1" + +EXTRA_OEMAKE = "\ + CROSS_COMPILE=${TARGET_PREFIX} SYSFW_DL_URL='' SYSFW_HS_DL_URL='' SYSFW_HS_INNER_CERT_DL_URL='' \ + SYSFW_PATH="${SYSFW_TISCI}" SOC=${SYSFW_SOC} CONFIG=${SYSFW_CONFIG} \ +" +EXTRA_OEMAKE_HS = " \ + HS=1 SYSFW_HS_PATH="${S}/ti-sysfw/${SYSFW_BASE}-enc.bin" SYSFW_HS_INNER_CERT_PATH="${S}/ti-sysfw/${SYSFW_BASE}-cert.bin" \ +" +EXTRA_OEMAKE_append = "${@['',' ${EXTRA_OEMAKE_HS}']['${SYSFW_SUFFIX}' == 'hs']}" + +do_compile() { + cd ${WORKDIR}/imggen/ + oe_runmake +} + +do_install() { + install -d ${D}/boot + install -m 644 ${WORKDIR}/imggen/${SYSFW_BINARY} ${D}/boot/${SYSFW_VBINARY} + ln -sf ${SYSFW_VBINARY} ${D}/boot/${SYSFW_IMAGE} + if [ ! -z "${SYSFW_SYMLINK}" ]; then + ln -sf ${SYSFW_VBINARY} ${D}/boot/${SYSFW_SYMLINK} + fi +} + +FILES_${PN} = "/boot" + +inherit deploy + +do_deploy () { + install -d ${DEPLOYDIR} + install -m 644 ${WORKDIR}/imggen/${SYSFW_BINARY} ${DEPLOYDIR}/${SYSFW_VBINARY} + rm -f ${DEPLOYDIR}/${SYSFW_IMAGE} + ln -sf ${SYSFW_VBINARY} ${DEPLOYDIR}/${SYSFW_IMAGE} + if [ ! -z "${SYSFW_SYMLINK}" ]; then + rm -f ${DEPLOYDIR}/${SYSFW_SYMLINK} + ln -sf ${SYSFW_VBINARY} ${DEPLOYDIR}/${SYSFW_SYMLINK} + fi + + install -m 644 ${SYSFW_TISCI} ${DEPLOYDIR}/ +} + +addtask deploy before do_build after do_compile diff --git a/bsp/meta-ti/recipes-bsp/ti-sci-fw/ti-sci-fw_2020.04a.inc b/bsp/meta-ti/recipes-bsp/ti-sci-fw/ti-sci-fw_2020.04a.inc new file mode 100644 index 00000000..e785ce01 --- /dev/null +++ b/bsp/meta-ti/recipes-bsp/ti-sci-fw/ti-sci-fw_2020.04a.inc @@ -0,0 +1,16 @@ +SUMMARY = "TI SCI firmware (SYSFW)" + +LICENSE = "TI-TFL" +LIC_FILES_CHKSUM = "file://LICENSE.ti;md5=b5aebf0668bdf95621259288c4a46d76" + +SRCREV = "c8decf64be551dfd1244cd1d231a97eb2255fb80" +BRANCH ?= "ti-linux-firmware" +SRCREV_imggen = "d9a550b91ec95d06a80f2ccc6dd829815ba35d88" +SRCREV_FORMAT = "imggen" + +SRC_URI = " \ + git://git.ti.com/processor-firmware/ti-linux-firmware.git;protocol=git;branch=${BRANCH} \ + git://git.ti.com/k3-image-gen/k3-image-gen.git;protocol=git;branch=master;destsuffix=imggen;name=imggen \ +" + +S = "${WORKDIR}/git" |