diff options
author | Stefan Agner <stefan.agner@toradex.com> | 2014-12-17 17:58:40 +0100 |
---|---|---|
committer | Stefan Agner <stefan.agner@toradex.com> | 2014-12-17 18:38:46 +0100 |
commit | 6f0bbad6b805cf2014eec54531dbe4ddb4867a91 (patch) | |
tree | 111322498c811383e22463057b76b59cd2848434 /include/linux | |
parent | 4f10615fb1b80f0f959095c87c662089376d168c (diff) |
ARM: imx: vf610: extend MSCM with CPU2CPU interrupt support
Extend the MSCM driver with CPU2CPU interrupt support. Those
interrupts are mainly used for the external MCC kernel module
which uses the functionality to pass messages to the secondary
Cortex-M4 core.
In Timesys version (at least up to 1.06), the interrupt handling
was directly done in the MCC kernel module. However, because newer
kernels use virtual interrupt numbers, it is not possible to use
hardcoded hardware IRQ number by default. By requesting the
interupts within the MSCM driver and exporting some helper
functions.
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/vf610_mscm.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/include/linux/vf610_mscm.h b/include/linux/vf610_mscm.h new file mode 100644 index 000000000000..881fbd772a95 --- /dev/null +++ b/include/linux/vf610_mscm.h @@ -0,0 +1,11 @@ +#ifndef __VF610_MSCM__ +#define __VF610_MSCM__ + +#include <linux/interrupt.h> + +int mscm_request_cpu2cpu_irq(unsigned int intid, irq_handler_t handler, + const char *name, void *priv); +void mscm_free_cpu2cpu_irq(unsigned int intid, void *priv); +void mscm_trigger_cpu2cpu_irq(unsigned int intid, int cpuid); + +#endif /* __VF610_MSCM__ */ |