kernel-module-mcc: provide recipe adapted to a 3.18 based Toradex kernel

This adds a recipe for the forked version of the MCC kernel module. The
fork includes changes to compile and run the module with the 3.18 based
kernel provided by linux-toradex_3.18.bb.

The forked version requires the functionality of the SEMA4 and MSCM
CPU2CPU interrupts exported by the kernel through some Vybrid specific
symbols:
- mscm_request_cpu2cpu_irq
- mscm_free_cpu2cpu_irq
- mscm_trigger_cpu2cpu_irq
- mvf_sema4_assign
- mvf_sema4_deassign

Currently, those symbols are provided by the Toradex Linux kernel only
(linux-toradex_3.18.bb).

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
This commit is contained in:
Stefan Agner 2015-03-18 11:08:14 +01:00 committed by Otavio Salvador
parent 7c650e1d8c
commit 0f4942175f
5 changed files with 28 additions and 0 deletions

View File

@ -18,6 +18,8 @@ MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-image kernel-devicetree"
PREFERRED_PROVIDER_u-boot = "u-boot-toradex"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
PREFERRED_PROVIDER_virtual/kernel-module-mcc = "kernel-module-mcc-toradex"
PREFERRED_PROVIDER_virtual/kernel-module-mcc-dev = "kernel-module-mcc-toradex"
# U-Boot NAND binary includes 0x400 padding required for NAND boot
UBOOT_BINARY = "u-boot-nand.imx"

View File

@ -10,6 +10,8 @@ include conf/machine/include/tune-cortexa5.inc
SOC_FAMILY = "vf:vf60"
PREFERRED_PROVIDER_virtual/kernel = "linux-timesys"
PREFERRED_PROVIDER_virtual/kernel-module-mcc ?= "kernel-module-mcc"
PREFERRED_PROVIDER_virtual/kernel-module-mcc-dev ?= "kernel-module-mcc"
PREFERRED_PROVIDER_u-boot = "u-boot-timesys"
UBOOT_MACHINE = "pcl052_config"

View File

@ -10,6 +10,8 @@ include conf/machine/include/tune-cortexa5.inc
SOC_FAMILY = "vf:vf60"
PREFERRED_PROVIDER_virtual/kernel = "linux-timesys"
PREFERRED_PROVIDER_virtual/kernel-module-mcc ?= "kernel-module-mcc"
PREFERRED_PROVIDER_virtual/kernel-module-mcc-dev ?= "kernel-module-mcc"
PREFERRED_PROVIDER_u-boot = "u-boot-timesys"
UBOOT_MACHINE = "pcm052_config"

View File

@ -10,6 +10,8 @@ include conf/machine/include/tune-cortexa5.inc
SOC_FAMILY = "vf:vf60"
PREFERRED_PROVIDER_virtual/kernel = "linux-timesys"
PREFERRED_PROVIDER_virtual/kernel-module-mcc ?= "kernel-module-mcc"
PREFERRED_PROVIDER_virtual/kernel-module-mcc-dev ?= "kernel-module-mcc"
PREFERRED_PROVIDER_u-boot = "u-boot-timesys"
# The quartz_nand_config target supports both SD and NAND boot.

View File

@ -0,0 +1,20 @@
# Copyright (C) 2015 Toradex AG
# Copyright (C) 2013 Timesys Corporation
SUMMARY = "Multicore communication kernel module for linux-toradex kernel"
LICENSE = "GPL-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=c8959abcbbe4d6676c58eab9354019e6"
PROVIDES = "virtual/kernel-module-mcc"
RPROVIDES_${PN} = "virtual/kernel-module-mcc"
RPROVIDES_${PN}-dev = "virtual/kernel-module-mcc-dev"
inherit module
SRC_URI = "git://github.com/toradex/mcc-kmod.git;protocol=git;branch=${SRCBRANCH}"
SRCBRANCH = "master"
SRCREV = "6a089386787e0540c30cc12fe774f3481c82051c"
S = "${WORKDIR}/git"
COMPATIBLE_MACHINE = "(vf60)"