Module: xenomai-2.6 Branch: master Commit: 59ecc8c26ac5a950c901184af3774a4788592ca8 URL: http://git.xenomai.org/?p=xenomai-2.6.git;a=commit;h=59ecc8c26ac5a950c901184af3774a4788592ca8
Author: Gilles Chanteperdrix <gilles.chanteperd...@xenomai.org> Date: Fri Oct 4 22:37:19 2013 +0200 hal/arm: upgrade I-pipe patches --- ....7-arm-5.patch => ipipe-core-3.5.7-arm-6.patch} | 24 +++++++++++++++---- ...3-arm-2.patch => ipipe-core-3.8.13-arm-3.patch} | 22 +++++++++++++++--- 2 files changed, 37 insertions(+), 9 deletions(-) diff --git a/ksrc/arch/arm/patches/ipipe-core-3.5.7-arm-5.patch b/ksrc/arch/arm/patches/ipipe-core-3.5.7-arm-6.patch similarity index 99% rename from ksrc/arch/arm/patches/ipipe-core-3.5.7-arm-5.patch rename to ksrc/arch/arm/patches/ipipe-core-3.5.7-arm-6.patch index 0adcedb..e71cd5e 100644 --- a/ksrc/arch/arm/patches/ipipe-core-3.5.7-arm-5.patch +++ b/ksrc/arch/arm/patches/ipipe-core-3.5.7-arm-6.patch @@ -1235,7 +1235,7 @@ index 2dd9d3f..5f8ed7f 100644 void sp804_clockevents_init(void __iomem *, unsigned int, const char *); diff --git a/arch/arm/include/asm/ipipe.h b/arch/arm/include/asm/ipipe.h new file mode 100644 -index 0000000..71ab06c +index 0000000..f2de8cd --- /dev/null +++ b/arch/arm/include/asm/ipipe.h @@ -0,0 +1,268 @@ @@ -1283,7 +1283,7 @@ index 0000000..71ab06c +#include <linux/ipipe_trace.h> +#include <mach/irqs.h> + -+#define IPIPE_CORE_RELEASE 5 ++#define IPIPE_CORE_RELEASE 6 + +struct ipipe_domain; + @@ -3205,10 +3205,10 @@ index 9a8531e..b221581 100644 * have in theory up to 7 arguments to a function - r0 to r6. diff --git a/arch/arm/kernel/ipipe.c b/arch/arm/kernel/ipipe.c new file mode 100644 -index 0000000..691ec14 +index 0000000..ff4ad1a --- /dev/null +++ b/arch/arm/kernel/ipipe.c -@@ -0,0 +1,599 @@ +@@ -0,0 +1,600 @@ +/* -*- linux-c -*- + * linux/arch/arm/kernel/ipipe.c + * @@ -3786,6 +3786,7 @@ index 0000000..691ec14 +EXPORT_SYMBOL_GPL(do_munmap); +EXPORT_SYMBOL_GPL(show_stack); +EXPORT_SYMBOL_GPL(init_mm); ++EXPORT_SYMBOL_GPL(cpu_architecture); +#ifndef MULTI_CPU +EXPORT_SYMBOL_GPL(cpu_do_switch_mm); +#endif @@ -3805,9 +3806,9 @@ index 0000000..691ec14 +#endif /* CONFIG_CPU_HAS_ASID */ + +#ifdef CONFIG_SMP ++EXPORT_SYMBOL_GPL(current_mm); +EXPORT_SYMBOL_GPL(__cpu_logical_map); +#endif /* CONFIG_IPIPE */ -+ diff --git a/arch/arm/kernel/ipipe_tsc.c b/arch/arm/kernel/ipipe_tsc.c new file mode 100644 index 0000000..72b2b2a @@ -11328,6 +11329,19 @@ index c89c4c1..f5f54c7 100644 static int __init gpio_mxc_init(void) { return platform_driver_register(&mxc_gpio_driver); +diff --git a/drivers/gpio/gpio-mxs.c b/drivers/gpio/gpio-mxs.c +index 39e4956..e8829d0 100644 +--- a/drivers/gpio/gpio-mxs.c ++++ b/drivers/gpio/gpio-mxs.c +@@ -140,7 +140,7 @@ static void mxs_gpio_irq_handler(u32 irq, struct irq_desc *desc) + + while (irq_stat != 0) { + int irqoffset = fls(irq_stat) - 1; +- generic_handle_irq(gpio_irq_no_base + irqoffset); ++ ipipe_handle_demuxed_irq(gpio_irq_no_base + irqoffset); + irq_stat &= ~(1 << irqoffset); + } + } diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c index 4fbc208..cad85ef 100644 --- a/drivers/gpio/gpio-omap.c diff --git a/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-2.patch b/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-3.patch similarity index 99% rename from ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-2.patch rename to ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-3.patch index fae4121..38d897f 100644 --- a/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-2.patch +++ b/ksrc/arch/arm/patches/ipipe-core-3.8.13-arm-3.patch @@ -1224,7 +1224,7 @@ index 2dd9d3f..5f8ed7f 100644 void sp804_clockevents_init(void __iomem *, unsigned int, const char *); diff --git a/arch/arm/include/asm/ipipe.h b/arch/arm/include/asm/ipipe.h new file mode 100644 -index 0000000..5413b18 +index 0000000..8ddffe4 --- /dev/null +++ b/arch/arm/include/asm/ipipe.h @@ -0,0 +1,268 @@ @@ -1271,7 +1271,7 @@ index 0000000..5413b18 + +#include <linux/ipipe_trace.h> + -+#define IPIPE_CORE_RELEASE 2 ++#define IPIPE_CORE_RELEASE 3 + +struct ipipe_domain; + @@ -3240,10 +3240,10 @@ index 9a8531e..906215c 100644 * have in theory up to 7 arguments to a function - r0 to r6. diff --git a/arch/arm/kernel/ipipe.c b/arch/arm/kernel/ipipe.c new file mode 100644 -index 0000000..613e9f0 +index 0000000..167a86a --- /dev/null +++ b/arch/arm/kernel/ipipe.c -@@ -0,0 +1,611 @@ +@@ -0,0 +1,612 @@ +/* -*- linux-c -*- + * linux/arch/arm/kernel/ipipe.c + * @@ -3855,6 +3855,7 @@ index 0000000..613e9f0 +EXPORT_SYMBOL_GPL(__cpu_logical_map); +#endif /* CONFIG_IPIPE */ + ++EXPORT_SYMBOL_GPL(cpu_architecture); diff --git a/arch/arm/kernel/ipipe_tsc.c b/arch/arm/kernel/ipipe_tsc.c new file mode 100644 index 0000000..0973085 @@ -11213,6 +11214,19 @@ index 7877335..a71bcc4e 100644 static int __init gpio_mxc_init(void) { return platform_driver_register(&mxc_gpio_driver); +diff --git a/drivers/gpio/gpio-mxs.c b/drivers/gpio/gpio-mxs.c +index fa2a63c..a8c6fe2 100644 +--- a/drivers/gpio/gpio-mxs.c ++++ b/drivers/gpio/gpio-mxs.c +@@ -137,7 +137,7 @@ static void mxs_gpio_irq_handler(u32 irq, struct irq_desc *desc) + + while (irq_stat != 0) { + int irqoffset = fls(irq_stat) - 1; +- generic_handle_irq(irq_find_mapping(port->domain, irqoffset)); ++ ipipe_handle_demuxed_irq(irq_find_mapping(port->domain, irqoffset)); + irq_stat &= ~(1 << irqoffset); + } + } diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c index f1fbedb2..782b499 100644 --- a/drivers/gpio/gpio-omap.c _______________________________________________ Xenomai-git mailing list Xenomai-git@xenomai.org http://www.xenomai.org/mailman/listinfo/xenomai-git