[meta-ti] [PATCH] ipc: IPC for communication between multiple processors
Denys Dmytriyenko
denys at ti.com
Wed Nov 20 13:46:50 PST 2013
And one more comment I missed originally - please drop the ti- prefix in
recipes.
BTW, Multi-Core guys had previously submitted the new ipc recipe as well and
received the same exact comment. Haven't heard from them since...
On Wed, Nov 20, 2013 at 10:18:43AM -0500, Denys Dmytriyenko wrote:
> See my comments below.
>
>
> On Wed, Nov 20, 2013 at 01:02:30PM +0000, Maupin, Chase wrote:
> > >-----Original Message-----
> > >From: meta-ti-bounces at yoctoproject.org [mailto:meta-ti-
> > >bounces at yoctoproject.org] On Behalf Of Hingolikar, Mrinmayee
> > >Sent: Wednesday, November 20, 2013 5:06 AM
> > >To: meta-ti at yoctoproject.org
> > >Subject: [meta-ti] [PATCH] ipc: IPC for communication between
> > >multiple processors
> >
> > I would recommend using --numbered in your patches and creating them as a
> > series to make it easier to determine the order in which they should be
> > applied. For example this patch should come before you other patch for
> > libdce.
>
> If you extract more than one patch with git-format-patch, then --numbered is
> used by default.
>
>
> > >Signed-off-by: Mrinmayee Hingolikar <mrinmayee at ti.com>
> > >---
> > > ...nstallation-prefix-feature-to-products.ma.patch | 38
> > >++++++++++++++++++++
> > > recipes-ti/ipc/ti-ipc_3.10.00.08.bb | 30
> > >++++++++++++++++
> > > 2 files changed, 68 insertions(+)
> > > create mode 100644 recipes-ti/ipc/0001-ipc-Added-installation-
> > >prefix-feature-to-products.ma.patch
> > > create mode 100644 recipes-ti/ipc/ti-ipc_3.10.00.08.bb
> > >
> > >diff --git a/recipes-ti/ipc/0001-ipc-Added-installation-prefix-
> > >feature-to-products.ma.patch b/recipes-ti/ipc/0001-ipc-Added-
> > >installation-prefix-feature-to-products.ma.patch
> > >new file mode 100644
> > >index 0000000..7d5ff94
> > >--- /dev/null
> > >+++ b/recipes-ti/ipc/0001-ipc-Added-installation-prefix-feature-
> > >to-products.ma.patch
> > >@@ -0,0 +1,38 @@
> > >+From 26d09063063593aec760151393226b96bc7ab9f8 Mon Sep 17 00:00:00
> > >2001
> > >+From: Mrinmayee Hingolikar <mrinmayee at ti.com>
> > >+Date: Thu, 5 Sep 2013 17:01:15 +0530
> > >+Subject: [PATCH] ipc: Added installation prefix feature to
> > >products.mak
> >
> > Can this be driven back into the IPC team to add to their makefile?
> >
> > >+
> > >+Signed-off-by: Mrinmayee Hingolikar <mrinmayee at ti.com>
> > >+---
> > >+ ipc-linux.mak | 1 +
> > >+ products.mak | 1 +
> > >+ 2 files changed, 2 insertions(+)
> > >+
> > >+diff --git a/ipc-linux.mak b/ipc-linux.mak
> > >+index 788a5a2..01579e4 100644
> > >+--- a/ipc-linux.mak
> > >++++ b/ipc-linux.mak
> > >+@@ -38,6 +38,7 @@ include products.mak
> > >+ config:
> > >+ @echo "Configuring Linux Ipc ..."
> > >+ ./configure --host=$(TOOLCHAIN_LONGNAME) \
> > >++ --prefix=$(PREFIX) \
> > >+ CC=$(TOOLCHAIN_PREFIX)gcc \
> > >+ PLATFORM=$(PLATFORM) \
> > >+ CMEM_INSTALL_DIR=$(CMEM_INSTALL_DIR) \
> >
> > This line makes me think there is a dependency missing. In the past
> > something like ti-paths.inc would pass this value along. I'm not saying
> > that should be replicated as is, but likely you want to se this to
> > STAGING_DIR_TARGET or something similar and the cmem recipe should stage
> > appropriately.
> >
> > I think it would be good if you walked through your software stack to make
> > sure you are sending your patches in order. Likewise, there was some
> > discussion with Sam about cmem recipes and basically about aligning recipes
> > between your groups. I thin the approach of breaking linux-utils up into a
> > recipe per component is going to be the cleanest approach. I'll ping on
> > Sam's patches as well to get an update posted to meta-ti instead of
> > meta-arago list.
> >
> > Any pointers you can provide to documentation about the configuration and
> > building of these components you are pushing up would also be useful to help
> > in reviewing so we can understand what you are trying to accomplish.
>
> Nice catch. The first question - does it depend and require cmem?
>
>
> > >+diff --git a/products.mak b/products.mak
> > >+index e418d2f..4578a1e 100644
> > >+--- a/products.mak
> > >++++ b/products.mak
> > >+@@ -55,6 +55,7 @@ PLATFORM ?=
> > >+ TOOLCHAIN_LONGNAME ?= arm-none-linux-gnueabi
> > >+ TOOLCHAIN_INSTALL_DIR ?= $(DEPOT)/_your_arm_code_gen_install_
> > >+ TOOLCHAIN_PREFIX ?=
> > >$(TOOLCHAIN_INSTALL_DIR)/bin/$(TOOLCHAIN_LONGNAME)-
> > >++PREFIX ?= /usr/local
> > >+
> > >+ # Optional: Path to Linux Kernel - needed to build the MmRpc
> > >user libraries
> > >+ # (for devices that support it)
> > >+--
> > >+1.7.9.5
> > >+
> > >diff --git a/recipes-ti/ipc/ti-ipc_3.10.00.08.bb b/recipes-
> > >ti/ipc/ti-ipc_3.10.00.08.bb
> > >new file mode 100644
> > >index 0000000..645061d
> > >--- /dev/null
> > >+++ b/recipes-ti/ipc/ti-ipc_3.10.00.08.bb
> > >@@ -0,0 +1,30 @@
> > >+DESCRIPTION = "TI Inter Process Communication (IPC) Mechanisms
> > >(for Uni- and Multi- Processor Configurations)"
> > >+HOMEPAGE = "https://git.ti.com/ipc/pages/Home"
> > >+LICENSE = "BSD"
> > >+
> > >+PV = "3_10_00_08"
> >
> > I don't think you want to do this. Why not leave the version . separated?
>
> This is actually more critical than that. Don't use underscores in the
> recipe/package version! If the component requires undersocred version, pass it
> separately.
>
>
> > >+PR = "r0"
> > >+
> > >+LIC_FILES_CHKSUM = "file://${S}/ipc-
> > >linux.mak;beginline=1;endline=30;md5=f2518e421e230f06fe6d449718d02
> > >edc"
> > >+
> > >+PLATFORM_omap5-evm = "omap54xx_smp"
> > >+PLATFORM_dra7xx-evm = "dra7xx"
> > >+
> > >+inherit autotools pkgconfig
> > >+
> > >+SRC_URI = "git://git.ti.com/ipc/ipcdev.git;protocol=git \
> > >+ file://0001-ipc-Added-installation-prefix-feature-to-
> > >products.ma.patch \
> > >+ "
> > >+SRCREV = "b11251f705f84f32740cd288afe9281e653bd8eb"
> >
> > Any need for a BRANCH setting?
>
> Well, it's not a required variables - as a matter of fact, I invented it
> years ago and since it's useful in many cases, it just stuck around... :)
>
>
> > >+S = "${WORKDIR}/git"
> > >+
> > >+do_configure() {
> > >+ sed -i -e "s#^KERNEL_INSTALL_DIR ?=.*#KERNEL_INSTALL_DIR =
> > >${STAGING_KERNEL_DIR}#" ${S}/products.mak
> > >+ sed -i -e "s#^TOOLCHAIN_INSTALL_DIR
> > >?=.*#TOOLCHAIN_INSTALL_DIR = ${TOOLCHAIN_PATH}#" ${S}/products.mak
> > >+ sed -i -e "s#^TOOLCHAIN_LONGNAME ?=.*#TOOLCHAIN_LONGNAME =
> > >arm-linux-gnueabihf#" ${S}/products.mak
> > >+ sed -i -e "s#^PLATFORM ?=.*#PLATFORM = ${PLATFORM}#"
> > >${S}/products.mak
> > >+ sed -i -e "s#^PREFIX ?=.*#PREFIX = /usr#" ${S}/products.mak
> >
> > Is there a way to drive this back into the IPC team to allow you to pass
> > these values and have them picked up from the command line, rather than
> > using a lot of sed commands? History has shown in the past that this gets
> > ugly to maintain.
>
> From what I can see, the above variables are being assigned conditionally in
> the Makefile (uses ?=), meaning that IPC team is already provinding a way to
> cleanly pass those variables from outside. So, there's no need to sed those
> vars! You are meant to pass them on the command line to oe_runmake...
>
> --
> Denys
> _______________________________________________
> meta-ti mailing list
> meta-ti at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-ti
More information about the meta-ti
mailing list