My comments/answers inline. Please note, I am in the process of addressing some comments from Jake (using oe_runmake instead of make). I will be submitting another patch very soon. -----Original Message----- From: Dmytriyenko, Denys Sent: Thursday, August 24, 2017 3:52 PM To: Radhakrishnan, Mahesh Cc: meta-ti@yoctoproject.org Subject: Re: [meta-ti] [PATCH v2 25/37] pm-lld-rtos: Adding rtos recipe for pm-lld On Tue, Jul 18, 2017 at 07:03:36PM -0400, Mahesh Radhakrishnan wrote: > Upstreaming TI RTOS low level driver for Power Management module (PM) > Signed-off-by: Mahesh Radhakrishnan > > --- > > v2 - Added summary & merged in to a single recipe > > recipes-bsp/pm-lld/pm-lld-rtos_git.bb | 95 > +++++++++++++++++++++++++++++++++++ > 1 file changed, 95 insertions(+) > create mode 100644 recipes-bsp/pm-lld/pm-lld-rtos_git.bb > > diff --git a/recipes-bsp/pm-lld/pm-lld-rtos_git.bb > b/recipes-bsp/pm-lld/pm-lld-rtos_git.bb > new file mode 100644 > index 0000000..c976deb > --- /dev/null > +++ b/recipes-bsp/pm-lld/pm-lld-rtos_git.bb > @@ -0,0 +1,95 @@ > +SUMMARY = "TI RTOS driver for Power Management module (PM)" > + > +require recipes-ti/includes/ti-paths.inc > + > +LICENSE = "BSD-3-Clause" > +LIC_FILES_CHKSUM = "file://Power.h;beginline=1;endline=31;md5=527b91fdcd26cd19ac07a754f45dedbe" > + > +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|k2g" > +PACKAGE_ARCH = "${MACHINE_ARCH}" > + > + > +PM_LLD_GIT_URI = "git://git.ti.com/keystone-rtos/pm-lld.git" > +PM_LLD_GIT_PROTOCOL = "git" > +PM_LLD_GIT_BRANCH = "int_pm_am335x" > +PM_LLD_GIT_BRANCH_dra7xx-evm = "master" ^^^ > +PM_LLD_GIT_DESTSUFFIX = "git/ti/drv/pm" > + > +# Below commit ID corresponds to "DEV.PM_LLD.01.04.00.01" > +PM_LLD_SRCREV = "c4908f94b3e655e6298aa9bfe9bbffbbc5d16111" > + > +# Below commit ID corresponds to "REL.PDK.TDA.01.07.00.06" > +PM_LLD_SRCREV_dra7xx-evm = "46ea13503d2991f636197edb206a9f62cea398d4" ^^^ In some places here you use more generic "omap-a15" SOC family, but in these 2 places I highlighted, you use very specific "dra7xx-evm", which will exclude platforms like "dra7xx-hs-evm" as well as "am57xx-evm" and use "int_pm_am335x" branch for those. Please confirm you actually want to do that. [Mahesh] PM LLD is defined only for dra7xx-evm, it is not defined for dra7xx-hs-evm. For dra7xx-evm alone, we use the specific commit mentioned above. For am335x , the specific branch is used. > + > +BRANCH = "${PM_LLD_GIT_BRANCH}" > +SRC_URI = "${PM_LLD_GIT_URI};destsuffix=${PM_LLD_GIT_DESTSUFFIX};protocol=${PM_LLD_GIT_PROTOCOL};branch=${BRANCH}" > + > +#PATCHTOOL = "git" > +#SRC_URI_append = " \ > +# file://.patch \ > +#" Leftovers ^^^ [Mahesh] Have been removed in the latest patch. > +SRCREV = "${PM_LLD_SRCREV}" > +PV = "01.04.00.01" > +PR = "r0" > + > +S = "${WORKDIR}/${PM_LLD_GIT_DESTSUFFIX}" > + > +DEPENDS = " ti-sysbios \ > + gcc-arm-none-eabi-native \ > + osal-rtos \ > + ca-certificates-native \ > + ti-pdk-setup \ > +" > +DEPENDS_append_omap-a15 = " ti-cgt-arm-native \ > + ti-cgt6x-native \ > + common-csl-ip-rtos \ " > +DEPENDS_append_ti33x = " starterware-rtos \ " > +DEPENDS_append_ti43x = " starterware-rtos \ " > +DEPENDS_append_k2g = " common-csl-ip-rtos \ > + ti-cgt6x-native \ " > + > +# Fetch task cannot be completed until after ca-certificates-native > +populates sysroot with the SSL certificates do_fetch[depends] = "ca-certificates-native:do_populate_sysroot" Why? Shouldn't be a problem accessing git.ti.com over git protocol. [Mahesh] It will be removed in the upcoming patch > +export TOOLCHAIN_PATH_A15 = "${GCC_ARM_NONE_TOOLCHAIN}" > +export TOOLCHAIN_PATH_A8 = "${GCC_ARM_NONE_TOOLCHAIN}" > +export TOOLCHAIN_PATH_A9 = "${GCC_ARM_NONE_TOOLCHAIN}" > +export FPULIB_PATH = "${GCC_ARM_NONE_TOOLCHAIN}/lib/gcc/arm-none-eabi/4.9.3/fpu/" > +export TOOLCHAIN_PATH_M4 = "${M4_TOOLCHAIN_INSTALL_DIR}" > +export C6X_GEN_INSTALL_PATH = "${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" > +export PDK_INSTALL_PATH = "${PDK_INSTALL_DIR}/packages" > +export BIOS_INSTALL_PATH = "${SYSBIOS_INSTALL_DIR}" > +export XDC_INSTALL_PATH = "${XDC_INSTALL_DIR}" Aren't those already defined in a .inc file? [Mahesh] There was no common inc file which I could include. The pm-lld.inc was removed and merged in to this recipe. There were similar ones in pdk bbclass, but this recipe doesn't use pdk bbclass. Hence these definitions here. > +export PDK_PM_ROOT_PATH = "${WORKDIR}/git" > + > +# Used by DEST_ROOT to redirect binary and obj files away from > +sysroot PDK tree OBJ_DIR = "${WORKDIR}/git/ti/binary" > + > +do_compile() { > + make clean lib xdc_meta doxygen LIMIT_SOCS="${TI_PDK_LIMIT_SOCS}" > +LIMIT_BOARDS="${TI_PDK_LIMIT_BOARDS}" DEST_ROOT=${OBJ_DIR} BTW, doxygen is not available in meta-ti nor in the only other dependent layer which is oe-core. [Mahesh] Does this mean that I should add doxygen-native to DEPENDS ? > + # Remove unnecessary files from packaging > + rm -rf patches/ > + > + # Cleanup docs > + rm -rf docs/ReleaseNotes_PM_LLD.doc > + rm -rf internal/ > + > + #archive > + tar -cf pm_lld.tar --exclude='*.tar' ./* > +} > + > +do_install() { > + install -d ${D}${PDK_INSTALL_DIR_RECIPE}/packages/ti/drv/pm > + find -name "*.tar" -exec tar xf {} --no-same-owner -C ${D}${PDK_INSTALL_DIR_RECIPE}/packages/ti/drv/pm \; Is it necessary to tar-up everything at the end of do_compile and then un-tar in do_install? [Mahesh] The latest patch has removed the need for tar/untar. > +} > + > +FILES_${PN} += "${PDK_INSTALL_DIR_RECIPE}/packages" > + > +INSANE_SKIP_${PN} = "arch staticdev" > -- > 1.9.1 > > -- > _______________________________________________ > meta-ti mailing list > meta-ti@yoctoproject.org > https://lists.yoctoproject.org/listinfo/meta-ti