* [meta-fsl-arm PATCH 1/3] kernel-module-mcc: Add package
2013-08-24 19:37 [meta-fsl-arm PATCH V2 0/3] Add MCC support for Freescale Vybrid platforms Andy Voltz
@ 2013-08-24 19:37 ` Andy Voltz
2013-08-24 19:37 ` [meta-fsl-arm PATCH 2/3] libmcc: " Andy Voltz
` (2 subsequent siblings)
3 siblings, 0 replies; 6+ messages in thread
From: Andy Voltz @ 2013-08-24 19:37 UTC (permalink / raw)
To: meta-freescale
kernel-module-mcc is a kernel module for Freescale Vybrid platforms.
This module is used for communication and synchronization between
MQX applications (running on the M4) and Linux (on A5)
Signed-off-by: Andy Voltz <andy.voltz@timesys.com>
---
.../mcc-kmod-oe-module-makefile.patch | 37 ++++++++++++++++++++
.../kernel-module-mcc/kernel-module-mcc_1.03.bb | 17 +++++++++
2 files changed, 54 insertions(+)
create mode 100644 recipes-kernel/kernel-module-mcc/kernel-module-mcc/mcc-kmod-oe-module-makefile.patch
create mode 100644 recipes-kernel/kernel-module-mcc/kernel-module-mcc_1.03.bb
diff --git a/recipes-kernel/kernel-module-mcc/kernel-module-mcc/mcc-kmod-oe-module-makefile.patch b/recipes-kernel/kernel-module-mcc/kernel-module-mcc/mcc-kmod-oe-module-makefile.patch
new file mode 100644
index 0000000..dc4b947
--- /dev/null
+++ b/recipes-kernel/kernel-module-mcc/kernel-module-mcc/mcc-kmod-oe-module-makefile.patch
@@ -0,0 +1,37 @@
+OE-Core uses "make modules && make modules install" for kernel modules
+It also uses KERNEL_SRC to specify the kernel source tree location
+
+This patch adds support for modules and modules_install targets, and
+adds logic to pickup INSTALL_MOD_PATH and use KERNEL_SRC
+
+Upstream-status: Pending
+
+diff -Nuarp mcc-kmod-1.03-orig/Makefile mcc-kmod-1.03/Makefile
+--- mcc-kmod-1.03-orig/Makefile 2013-08-12 14:11:56.439711957 -0400
++++ mcc-kmod-1.03/Makefile 2013-08-12 14:16:03.472603053 -0400
+@@ -3,17 +3,19 @@ mcc-y = mcc_linux.o mcc_shm_linux.o mcc_
+
+ PWD := $(shell pwd)
+
+-EXTRA_CFLAGS += -I$(KERNELDIR)/include -Wno-format
++EXTRA_CFLAGS += -I$(KERNEL_SRC)/include -Wno-format
+
+-all:
+- $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
++DESTDIR ?= $(INSTALL_MOD_PATH)
+
+-install: all
+- $(MAKE) -C $(KERNELDIR) M=$(PWD) modules_install INSTALL_MOD_PATH=$(DESTDIR)
++modules all:
++ $(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules
++
++modules_install install: all
++ $(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules_install INSTALL_MOD_PATH=$(DESTDIR)
+ @echo Copying mcc headers to toolchain
+ mkdir -p $(DESTDIR)/usr/include/linux
+ cp -f {mcc_linux.h,mcc_common.h,mcc_config.h} $(DESTDIR)/usr/include/linux/
+
+
+ clean:
+- $(MAKE) -C $(KERNELDIR) M=$(PWD) clean
++ $(MAKE) -C $(KERNEL_SRC) M=$(PWD) clean
diff --git a/recipes-kernel/kernel-module-mcc/kernel-module-mcc_1.03.bb b/recipes-kernel/kernel-module-mcc/kernel-module-mcc_1.03.bb
new file mode 100644
index 0000000..a7fe8e4
--- /dev/null
+++ b/recipes-kernel/kernel-module-mcc/kernel-module-mcc_1.03.bb
@@ -0,0 +1,17 @@
+# Copyright (C) 2013 Timesys Corporation
+SUMMARY = "MCC KERNEL MODULE"
+DESCRIPTION = "Timesys Multicore communication kernel module"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c8959abcbbe4d6676c58eab9354019e6"
+
+inherit module
+
+SRC_URI = "http://repository.timesys.com/buildsources/m/mcc-kmod/mcc-kmod-${PV}/mcc-kmod-${PV}.tar.bz2 \
+ file://mcc-kmod-oe-module-makefile.patch"
+
+SRC_URI[md5sum] = "046b0a86d70b9e3424efc86f442bc335"
+SRC_URI[sha256sum] = "44ed7f812625ef764d62ff0871784ceb155ef86df8932e91830f9222adbf3a9e"
+
+S = "${WORKDIR}/mcc-kmod-${PV}"
+
+COMPATIBLE_MACHINE = "(vf60)"
--
1.7.9.5
^ permalink raw reply related [flat|nested] 6+ messages in thread* [meta-fsl-arm PATCH 2/3] libmcc: Add package
2013-08-24 19:37 [meta-fsl-arm PATCH V2 0/3] Add MCC support for Freescale Vybrid platforms Andy Voltz
2013-08-24 19:37 ` [meta-fsl-arm PATCH 1/3] kernel-module-mcc: Add package Andy Voltz
@ 2013-08-24 19:37 ` Andy Voltz
2013-08-24 19:37 ` [meta-fsl-arm PATCH 3/3] mqxboot: " Andy Voltz
2013-08-25 20:39 ` [meta-fsl-arm PATCH V2 0/3] Add MCC support for Freescale Vybrid platforms Otavio Salvador
3 siblings, 0 replies; 6+ messages in thread
From: Andy Voltz @ 2013-08-24 19:37 UTC (permalink / raw)
To: meta-freescale
libmcc is a userspace library which can be used in Linux applications on
Freescale Vybrid Platforms. This library interfaces with the kernel-module-mcc
to pass information to MQX running on the M4.
Signed-off-by: Andy Voltz <andy.voltz@timesys.com>
---
recipes-bsp/libmcc/libmcc/libmcc-cflags.patch | 18 +++++++++++++
recipes-bsp/libmcc/libmcc/libmcc-symlink.patch | 32 ++++++++++++++++++++++++
recipes-bsp/libmcc/libmcc_1.03.bb | 20 +++++++++++++++
3 files changed, 70 insertions(+)
create mode 100644 recipes-bsp/libmcc/libmcc/libmcc-cflags.patch
create mode 100644 recipes-bsp/libmcc/libmcc/libmcc-symlink.patch
create mode 100644 recipes-bsp/libmcc/libmcc_1.03.bb
diff --git a/recipes-bsp/libmcc/libmcc/libmcc-cflags.patch b/recipes-bsp/libmcc/libmcc/libmcc-cflags.patch
new file mode 100644
index 0000000..01f4c41
--- /dev/null
+++ b/recipes-bsp/libmcc/libmcc/libmcc-cflags.patch
@@ -0,0 +1,18 @@
+This patch is required with the Yocto toolchain.
+
+Upstream-status: Pending
+
+diff -Nuar libmcc-1.03-orig/Makefile libmcc-1.03/Makefile
+--- libmcc-1.03-orig/Makefile 2013-08-12 14:43:50.063656300 -0400
++++ libmcc-1.03/Makefile 2013-08-12 14:44:10.007427139 -0400
+@@ -1,9 +1,8 @@
+-CFLAGS+=-Iinclude/
+ all: build/libmcc.a build/libmcc.so
+
+ build/libmcc.o: src/libmcc.c
+ mkdir -p build/
+- $(CC) -c -fPIC $< -o $@ $(CFLAGS)
++ $(CC) -c -fPIC $< -o $@ -Iinclude/ $(CFLAGS)
+
+ build/libmcc.a: build/libmcc.o
+ $(AR) rcs $@ $<
diff --git a/recipes-bsp/libmcc/libmcc/libmcc-symlink.patch b/recipes-bsp/libmcc/libmcc/libmcc-symlink.patch
new file mode 100644
index 0000000..f21a93e
--- /dev/null
+++ b/recipes-bsp/libmcc/libmcc/libmcc-symlink.patch
@@ -0,0 +1,32 @@
+This patch adds the proper version suffix to the libmcc shared libs.
+
+Upstream-status: Pending
+
+diff -Nuar libmcc-1.03-orig/Makefile libmcc-1.03/Makefile
+--- libmcc-1.03-orig/Makefile 2013-08-13 10:05:46.187200835 -0400
++++ libmcc-1.03/Makefile 2013-08-13 12:23:45.167119943 -0400
+@@ -1,4 +1,4 @@
+-all: build/libmcc.a build/libmcc.so
++all: build/libmcc.a build/libmcc.so.1.0
+
+ build/libmcc.o: src/libmcc.c
+ mkdir -p build/
+@@ -7,13 +7,16 @@
+ build/libmcc.a: build/libmcc.o
+ $(AR) rcs $@ $<
+
+-build/libmcc.so: build/libmcc.o
++build/libmcc.so.1.0: build/libmcc.o
+ $(CC) -shared -o $@ $<
+
+ install:
+ mkdir -p $(DESTDIR)/usr/{lib,include}
+- cp -f build/libmcc.{so,a} $(DESTDIR)/usr/lib
++ cp -f build/libmcc.{so.*,a} $(DESTDIR)/usr/lib
+ cp -f include/*.h $(DESTDIR)/usr/include
++ cd $(DESTDIR)/usr/lib/
++ ln -sf libmcc.so.1.0 libmcc.so.1
++ ln -sf libmcc.so.1 libmcc.so
+
+ clean:
+ rm -rf build
diff --git a/recipes-bsp/libmcc/libmcc_1.03.bb b/recipes-bsp/libmcc/libmcc_1.03.bb
new file mode 100644
index 0000000..18fc84e
--- /dev/null
+++ b/recipes-bsp/libmcc/libmcc_1.03.bb
@@ -0,0 +1,20 @@
+# Copyright (C) 2013 Timesys Corporation
+SUMMARY = "MCC Userspace Library"
+DESCRIPTION = "Timesys Multicore communication Library"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c49712341497d0b5f2e40c30dff2af9d"
+
+RDEPENDS_${PN} = "kernel-module-mcc"
+
+inherit autotools
+
+SRC_URI = "http://repository.timesys.com/buildsources/l/libmcc/libmcc-${PV}/libmcc-${PV}.tar.bz2 \
+ file://libmcc-cflags.patch \
+ file://libmcc-symlink.patch"
+
+SRC_URI[md5sum] = "adac15d52206be21a4589b2b923af4cc"
+SRC_URI[sha256sum] = "8b4d88f260d4d3a67ee2c16e20112e0584403f350182087daa1cfafeceb16a7f"
+
+S = "${WORKDIR}/libmcc-${PV}"
+
+COMPATIBLE_MACHINE = "(vf60)"
--
1.7.9.5
^ permalink raw reply related [flat|nested] 6+ messages in thread* [meta-fsl-arm PATCH 3/3] mqxboot: Add package
2013-08-24 19:37 [meta-fsl-arm PATCH V2 0/3] Add MCC support for Freescale Vybrid platforms Andy Voltz
2013-08-24 19:37 ` [meta-fsl-arm PATCH 1/3] kernel-module-mcc: Add package Andy Voltz
2013-08-24 19:37 ` [meta-fsl-arm PATCH 2/3] libmcc: " Andy Voltz
@ 2013-08-24 19:37 ` Andy Voltz
2013-08-25 20:39 ` [meta-fsl-arm PATCH V2 0/3] Add MCC support for Freescale Vybrid platforms Otavio Salvador
3 siblings, 0 replies; 6+ messages in thread
From: Andy Voltz @ 2013-08-24 19:37 UTC (permalink / raw)
To: meta-freescale
mqxboot is a utility for Freescale Vybrid platforms which allows an MQX image
to be loaded into memory. It's used for launching an MQX application from
a running Linux kernel.
Signed-off-by: Andy Voltz <andy.voltz@timesys.com>
---
recipes-bsp/mqxboot/mqxboot_1.0.bb | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
create mode 100644 recipes-bsp/mqxboot/mqxboot_1.0.bb
diff --git a/recipes-bsp/mqxboot/mqxboot_1.0.bb b/recipes-bsp/mqxboot/mqxboot_1.0.bb
new file mode 100644
index 0000000..17f0233
--- /dev/null
+++ b/recipes-bsp/mqxboot/mqxboot_1.0.bb
@@ -0,0 +1,18 @@
+# Copyright (C) 2013 Timesys Corporation
+SUMMARY = "mqxboot"
+DESCRIPTION = "Timesys MQX Image loader - starts an MQX image on the M4"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c49712341497d0b5f2e40c30dff2af9d"
+
+RDEPENDS_${PN} = "kernel-module-mcc"
+
+inherit autotools
+
+SRC_URI = "http://repository.timesys.com/buildsources/m/mqxboot/mqxboot-${PV}/mqxboot-${PV}.tar.bz2"
+
+SRC_URI[md5sum] = "3de3c8b5f8cd6664870587d29c04c421"
+SRC_URI[sha256sum] = "c2f66ae962fe2529578d5c007e3f91a36085b714a0ea276f47bc3aea90e69699"
+
+S = "${WORKDIR}/mqxboot-${PV}"
+
+COMPATIBLE_MACHINE = "(vf60)"
--
1.7.9.5
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [meta-fsl-arm PATCH V2 0/3] Add MCC support for Freescale Vybrid platforms
2013-08-24 19:37 [meta-fsl-arm PATCH V2 0/3] Add MCC support for Freescale Vybrid platforms Andy Voltz
` (2 preceding siblings ...)
2013-08-24 19:37 ` [meta-fsl-arm PATCH 3/3] mqxboot: " Andy Voltz
@ 2013-08-25 20:39 ` Otavio Salvador
2013-08-26 13:39 ` Andy Voltz
3 siblings, 1 reply; 6+ messages in thread
From: Otavio Salvador @ 2013-08-25 20:39 UTC (permalink / raw)
To: Andy Voltz; +Cc: meta-freescale@yoctoproject.org
On Sat, Aug 24, 2013 at 4:37 PM, Andy Voltz <andy.voltz@timesys.com> wrote:
> Freescale Vybrid platforms use an MCC (Multi-core-communication) protocol to
> communicate between Linux running on the A5 and MQX images running on the M4.
>
> This series adds the kernel support, as well as userspace packages necessary
> to run an MQX image and communicate over MCC.
>
> These package versions are compatible with MCC version 1 API which is
> implemented in MQX 4.0.1 series.
>
> For more information about this API and packages, visit:
> https://linuxlink.timesys.com/docs/wiki/engineering/userguide_vybrid_mcc
Andy, I pushed this serie to master-next and did minor changes in the
commit logs to avoid repeating the recipe name in short and long
commit logs. Please take a look in the master-next and let me know if
they're good for you.
--
Otavio Salvador O.S. Systems
http://www.ossystems.com.br http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854 Mobile: +1 (347) 903-9750
^ permalink raw reply [flat|nested] 6+ messages in thread