[Xenomai-git] Philippe Gerum : blackfin: upgrade I-pipe support to 2.6.34-blackfin-1. 15-01, 2.6.35.7-blackfin-1.15-01
Module: xenomai-head Branch: master Commit: 7b7054e59e50d44bffc6e0aa52af6eb737ea7cc7 URL: http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=7b7054e59e50d44bffc6e0aa52af6eb737ea7cc7 Author: Philippe Gerum Date: Tue Oct 5 15:47:58 2010 +0200 blackfin: upgrade I-pipe support to 2.6.34-blackfin-1.15-01, 2.6.35.7-blackfin-1.15-01 --- ...h => adeos-ipipe-2.6.34-blackfin-1.15-01.patch} | 186 ...=> adeos-ipipe-2.6.35.7-blackfin-1.15-01.patch} | 464 2 files changed, 479 insertions(+), 171 deletions(-) diff --git a/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch b/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch similarity index 98% rename from ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch rename to ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch index 1668422..0af5f58 100644 --- a/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch +++ b/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch @@ -12,7 +12,7 @@ index c078849..799b1c0 100644 choice diff --git a/arch/blackfin/include/asm/ipipe.h b/arch/blackfin/include/asm/ipipe.h -index d3b4044..4530dfa 100644 +index d3b4044..70b409f 100644 --- a/arch/blackfin/include/asm/ipipe.h +++ b/arch/blackfin/include/asm/ipipe.h @@ -34,11 +34,12 @@ @@ -22,12 +22,12 @@ index d3b4044..4530dfa 100644 +#include -#define IPIPE_ARCH_STRING "1.12-00" -+#define IPIPE_ARCH_STRING "1.14-02" ++#define IPIPE_ARCH_STRING "1.15-01" #define IPIPE_MAJOR_NUMBER1 -#define IPIPE_MINOR_NUMBER12 -#define IPIPE_PATCH_NUMBER0 -+#define IPIPE_MINOR_NUMBER14 -+#define IPIPE_PATCH_NUMBER2 ++#define IPIPE_MINOR_NUMBER15 ++#define IPIPE_PATCH_NUMBER1 #ifdef CONFIG_SMP #error "I-pipe/blackfin: SMP not implemented" @@ -36,7 +36,7 @@ index d3b4044..4530dfa 100644 #define __ipipe_sync_pipeline ___ipipe_sync_pipeline -void ___ipipe_sync_pipeline(unsigned long syncmask); -+void ___ipipe_sync_pipeline(int dovirt); ++void ___ipipe_sync_pipeline(void); void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs); @@ -136,7 +136,7 @@ index 813a1af..325e532 100644 } while (0) diff --git a/arch/blackfin/kernel/ipipe.c b/arch/blackfin/kernel/ipipe.c -index 1a496cd..d953572 100644 +index 1a496cd..aa96aa2 100644 --- a/arch/blackfin/kernel/ipipe.c +++ b/arch/blackfin/kernel/ipipe.c @@ -154,7 +154,7 @@ void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs) @@ -148,7 +148,7 @@ index 1a496cd..d953572 100644 goto out; __ipipe_walk_pipeline(head); -@@ -185,11 +185,13 @@ void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) +@@ -185,25 +185,21 @@ void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) } EXPORT_SYMBOL(__ipipe_disable_irqdesc); @@ -164,22 +164,27 @@ index 1a496cd..d953572 100644 + WARN_ON_ONCE(irqs_disabled_hw()); /* -* We need to run the IRQ tail hook whenever we don't -@@ -197,12 +199,9 @@ int __ipipe_syscall_root(struct pt_regs *regs) -* important operations might be pending there (e.g. Xenomai -* deferred rescheduling). +- * We need to run the IRQ tail hook whenever we don't +- * propagate a syscall to higher domains, because we know that +- * important operations might be pending there (e.g. Xenomai +- * deferred rescheduling). ++ * We need to run the IRQ tail hook each time we intercept a ++ * syscall, because we know that important operations might be ++ * pending there (e.g. Xenomai deferred rescheduling). */ - - if (regs->orig_p0 < NR_syscalls) { +- if (regs->orig_p0 < NR_syscalls) { - void (*hook)(void) = (void (*)(void))__ipipe_irq_tail_hook; -+ hook = (__typeof__(hook))__ipipe_irq_tail_hook; - hook(); +- hook(); - if ((current->flags & PF_EVNOTIFY) == 0) - return 0; - } +- } ++ hook = (__typeof__(hook))__ipipe_irq_tail_hook; ++ hook(); /* -@@ -214,23 +213,32 @@ int __ipipe_syscall_root(struct pt_regs *regs) +* This routine either returns: +@@ -214,23 +210,32 @@ int __ipipe_syscall_root(struct pt_regs *regs) * tail work has to be performed (for handling signals etc). */ @@ -214,7 +219,7 @@ index 1a496cd..d953572 100644 + else { + p = ipipe_root_cpudom_ptr(); + if (__ipipe_ipending_p(p)) -+ __ipipe_sync_pipeline(IPIPE_IRQ_DOVIRT); ++ __ipipe_sync_pipeline(); + } - local_irq_restore_hw(flags); @@ -222,7 +227,7 @@ index 1a496cd..d953572 100644 return -ret; } -@@ -289,6 +297,7 @@ int ipipe_trigger_irq(unsigned irq) +@@ -289,6 +294,7 @@ int ipipe_trigger_irq(unsigned irq) asmlinkage void __ipipe_sync_root(void) {
[Xenomai-git] Philippe Gerum : blackfin: upgrade I-pipe support to 2.6.34-blackfin-1. 15-01, 2.6.35.7-blackfin-1.15-01
Module: xenomai-2.5 Branch: master Commit: 7b7054e59e50d44bffc6e0aa52af6eb737ea7cc7 URL: http://git.xenomai.org/?p=xenomai-2.5.git;a=commit;h=7b7054e59e50d44bffc6e0aa52af6eb737ea7cc7 Author: Philippe Gerum Date: Tue Oct 5 15:47:58 2010 +0200 blackfin: upgrade I-pipe support to 2.6.34-blackfin-1.15-01, 2.6.35.7-blackfin-1.15-01 --- ...h => adeos-ipipe-2.6.34-blackfin-1.15-01.patch} | 186 ...=> adeos-ipipe-2.6.35.7-blackfin-1.15-01.patch} | 464 2 files changed, 479 insertions(+), 171 deletions(-) diff --git a/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch b/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch similarity index 98% rename from ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch rename to ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch index 1668422..0af5f58 100644 --- a/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch +++ b/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch @@ -12,7 +12,7 @@ index c078849..799b1c0 100644 choice diff --git a/arch/blackfin/include/asm/ipipe.h b/arch/blackfin/include/asm/ipipe.h -index d3b4044..4530dfa 100644 +index d3b4044..70b409f 100644 --- a/arch/blackfin/include/asm/ipipe.h +++ b/arch/blackfin/include/asm/ipipe.h @@ -34,11 +34,12 @@ @@ -22,12 +22,12 @@ index d3b4044..4530dfa 100644 +#include -#define IPIPE_ARCH_STRING "1.12-00" -+#define IPIPE_ARCH_STRING "1.14-02" ++#define IPIPE_ARCH_STRING "1.15-01" #define IPIPE_MAJOR_NUMBER1 -#define IPIPE_MINOR_NUMBER12 -#define IPIPE_PATCH_NUMBER0 -+#define IPIPE_MINOR_NUMBER14 -+#define IPIPE_PATCH_NUMBER2 ++#define IPIPE_MINOR_NUMBER15 ++#define IPIPE_PATCH_NUMBER1 #ifdef CONFIG_SMP #error "I-pipe/blackfin: SMP not implemented" @@ -36,7 +36,7 @@ index d3b4044..4530dfa 100644 #define __ipipe_sync_pipeline ___ipipe_sync_pipeline -void ___ipipe_sync_pipeline(unsigned long syncmask); -+void ___ipipe_sync_pipeline(int dovirt); ++void ___ipipe_sync_pipeline(void); void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs); @@ -136,7 +136,7 @@ index 813a1af..325e532 100644 } while (0) diff --git a/arch/blackfin/kernel/ipipe.c b/arch/blackfin/kernel/ipipe.c -index 1a496cd..d953572 100644 +index 1a496cd..aa96aa2 100644 --- a/arch/blackfin/kernel/ipipe.c +++ b/arch/blackfin/kernel/ipipe.c @@ -154,7 +154,7 @@ void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs) @@ -148,7 +148,7 @@ index 1a496cd..d953572 100644 goto out; __ipipe_walk_pipeline(head); -@@ -185,11 +185,13 @@ void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) +@@ -185,25 +185,21 @@ void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) } EXPORT_SYMBOL(__ipipe_disable_irqdesc); @@ -164,22 +164,27 @@ index 1a496cd..d953572 100644 + WARN_ON_ONCE(irqs_disabled_hw()); /* -* We need to run the IRQ tail hook whenever we don't -@@ -197,12 +199,9 @@ int __ipipe_syscall_root(struct pt_regs *regs) -* important operations might be pending there (e.g. Xenomai -* deferred rescheduling). +- * We need to run the IRQ tail hook whenever we don't +- * propagate a syscall to higher domains, because we know that +- * important operations might be pending there (e.g. Xenomai +- * deferred rescheduling). ++ * We need to run the IRQ tail hook each time we intercept a ++ * syscall, because we know that important operations might be ++ * pending there (e.g. Xenomai deferred rescheduling). */ - - if (regs->orig_p0 < NR_syscalls) { +- if (regs->orig_p0 < NR_syscalls) { - void (*hook)(void) = (void (*)(void))__ipipe_irq_tail_hook; -+ hook = (__typeof__(hook))__ipipe_irq_tail_hook; - hook(); +- hook(); - if ((current->flags & PF_EVNOTIFY) == 0) - return 0; - } +- } ++ hook = (__typeof__(hook))__ipipe_irq_tail_hook; ++ hook(); /* -@@ -214,23 +213,32 @@ int __ipipe_syscall_root(struct pt_regs *regs) +* This routine either returns: +@@ -214,23 +210,32 @@ int __ipipe_syscall_root(struct pt_regs *regs) * tail work has to be performed (for handling signals etc). */ @@ -214,7 +219,7 @@ index 1a496cd..d953572 100644 + else { + p = ipipe_root_cpudom_ptr(); + if (__ipipe_ipending_p(p)) -+ __ipipe_sync_pipeline(IPIPE_IRQ_DOVIRT); ++ __ipipe_sync_pipeline(); + } - local_irq_restore_hw(flags); @@ -222,7 +227,7 @@ index 1a496cd..d953572 100644 return -ret; } -@@ -289,6 +297,7 @@ int ipipe_trigger_irq(unsigned irq) +@@ -289,6 +294,7 @@ int ipipe_trigger_irq(unsigned irq) asmlinkage void __ipipe_sync_root(void) { v
[Xenomai-git] Philippe Gerum : blackfin: upgrade I-pipe support to 2.6.34-blackfin-1. 15-01, 2.6.35.7-blackfin-1.15-01
Module: xenomai-rpm Branch: for-upstream Commit: 7b7054e59e50d44bffc6e0aa52af6eb737ea7cc7 URL: http://git.xenomai.org/?p=xenomai-rpm.git;a=commit;h=7b7054e59e50d44bffc6e0aa52af6eb737ea7cc7 Author: Philippe Gerum Date: Tue Oct 5 15:47:58 2010 +0200 blackfin: upgrade I-pipe support to 2.6.34-blackfin-1.15-01, 2.6.35.7-blackfin-1.15-01 --- ...h => adeos-ipipe-2.6.34-blackfin-1.15-01.patch} | 186 ...=> adeos-ipipe-2.6.35.7-blackfin-1.15-01.patch} | 464 2 files changed, 479 insertions(+), 171 deletions(-) diff --git a/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch b/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch similarity index 98% rename from ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch rename to ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch index 1668422..0af5f58 100644 --- a/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch +++ b/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch @@ -12,7 +12,7 @@ index c078849..799b1c0 100644 choice diff --git a/arch/blackfin/include/asm/ipipe.h b/arch/blackfin/include/asm/ipipe.h -index d3b4044..4530dfa 100644 +index d3b4044..70b409f 100644 --- a/arch/blackfin/include/asm/ipipe.h +++ b/arch/blackfin/include/asm/ipipe.h @@ -34,11 +34,12 @@ @@ -22,12 +22,12 @@ index d3b4044..4530dfa 100644 +#include -#define IPIPE_ARCH_STRING "1.12-00" -+#define IPIPE_ARCH_STRING "1.14-02" ++#define IPIPE_ARCH_STRING "1.15-01" #define IPIPE_MAJOR_NUMBER1 -#define IPIPE_MINOR_NUMBER12 -#define IPIPE_PATCH_NUMBER0 -+#define IPIPE_MINOR_NUMBER14 -+#define IPIPE_PATCH_NUMBER2 ++#define IPIPE_MINOR_NUMBER15 ++#define IPIPE_PATCH_NUMBER1 #ifdef CONFIG_SMP #error "I-pipe/blackfin: SMP not implemented" @@ -36,7 +36,7 @@ index d3b4044..4530dfa 100644 #define __ipipe_sync_pipeline ___ipipe_sync_pipeline -void ___ipipe_sync_pipeline(unsigned long syncmask); -+void ___ipipe_sync_pipeline(int dovirt); ++void ___ipipe_sync_pipeline(void); void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs); @@ -136,7 +136,7 @@ index 813a1af..325e532 100644 } while (0) diff --git a/arch/blackfin/kernel/ipipe.c b/arch/blackfin/kernel/ipipe.c -index 1a496cd..d953572 100644 +index 1a496cd..aa96aa2 100644 --- a/arch/blackfin/kernel/ipipe.c +++ b/arch/blackfin/kernel/ipipe.c @@ -154,7 +154,7 @@ void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs) @@ -148,7 +148,7 @@ index 1a496cd..d953572 100644 goto out; __ipipe_walk_pipeline(head); -@@ -185,11 +185,13 @@ void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) +@@ -185,25 +185,21 @@ void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) } EXPORT_SYMBOL(__ipipe_disable_irqdesc); @@ -164,22 +164,27 @@ index 1a496cd..d953572 100644 + WARN_ON_ONCE(irqs_disabled_hw()); /* -* We need to run the IRQ tail hook whenever we don't -@@ -197,12 +199,9 @@ int __ipipe_syscall_root(struct pt_regs *regs) -* important operations might be pending there (e.g. Xenomai -* deferred rescheduling). +- * We need to run the IRQ tail hook whenever we don't +- * propagate a syscall to higher domains, because we know that +- * important operations might be pending there (e.g. Xenomai +- * deferred rescheduling). ++ * We need to run the IRQ tail hook each time we intercept a ++ * syscall, because we know that important operations might be ++ * pending there (e.g. Xenomai deferred rescheduling). */ - - if (regs->orig_p0 < NR_syscalls) { +- if (regs->orig_p0 < NR_syscalls) { - void (*hook)(void) = (void (*)(void))__ipipe_irq_tail_hook; -+ hook = (__typeof__(hook))__ipipe_irq_tail_hook; - hook(); +- hook(); - if ((current->flags & PF_EVNOTIFY) == 0) - return 0; - } +- } ++ hook = (__typeof__(hook))__ipipe_irq_tail_hook; ++ hook(); /* -@@ -214,23 +213,32 @@ int __ipipe_syscall_root(struct pt_regs *regs) +* This routine either returns: +@@ -214,23 +210,32 @@ int __ipipe_syscall_root(struct pt_regs *regs) * tail work has to be performed (for handling signals etc). */ @@ -214,7 +219,7 @@ index 1a496cd..d953572 100644 + else { + p = ipipe_root_cpudom_ptr(); + if (__ipipe_ipending_p(p)) -+ __ipipe_sync_pipeline(IPIPE_IRQ_DOVIRT); ++ __ipipe_sync_pipeline(); + } - local_irq_restore_hw(flags); @@ -222,7 +227,7 @@ index 1a496cd..d953572 100644 return -ret; } -@@ -289,6 +297,7 @@ int ipipe_trigger_irq(unsigned irq) +@@ -289,6 +294,7 @@ int ipipe_trigger_irq(unsigned irq) asmlinkage void __ipipe_sync_root(void) {
[Xenomai-git] Philippe Gerum : blackfin: upgrade I-pipe support to 2.6.34-blackfin-1. 15-01, 2.6.35.7-blackfin-1.15-01
Module: xenomai-rpm Branch: for-upstream Commit: cfe09a7e8182f2ac6d5800a34b991b068384d880 URL: http://git.xenomai.org/?p=xenomai-rpm.git;a=commit;h=cfe09a7e8182f2ac6d5800a34b991b068384d880 Author: Philippe Gerum Date: Tue Oct 5 15:47:58 2010 +0200 blackfin: upgrade I-pipe support to 2.6.34-blackfin-1.15-01, 2.6.35.7-blackfin-1.15-01 --- ...h => adeos-ipipe-2.6.34-blackfin-1.15-01.patch} | 186 ...=> adeos-ipipe-2.6.35.7-blackfin-1.15-01.patch} | 464 2 files changed, 479 insertions(+), 171 deletions(-) diff --git a/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch b/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch similarity index 98% rename from ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch rename to ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch index 1668422..0af5f58 100644 --- a/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.14-02.patch +++ b/ksrc/arch/blackfin/patches/adeos-ipipe-2.6.34-blackfin-1.15-01.patch @@ -12,7 +12,7 @@ index c078849..799b1c0 100644 choice diff --git a/arch/blackfin/include/asm/ipipe.h b/arch/blackfin/include/asm/ipipe.h -index d3b4044..4530dfa 100644 +index d3b4044..70b409f 100644 --- a/arch/blackfin/include/asm/ipipe.h +++ b/arch/blackfin/include/asm/ipipe.h @@ -34,11 +34,12 @@ @@ -22,12 +22,12 @@ index d3b4044..4530dfa 100644 +#include -#define IPIPE_ARCH_STRING "1.12-00" -+#define IPIPE_ARCH_STRING "1.14-02" ++#define IPIPE_ARCH_STRING "1.15-01" #define IPIPE_MAJOR_NUMBER1 -#define IPIPE_MINOR_NUMBER12 -#define IPIPE_PATCH_NUMBER0 -+#define IPIPE_MINOR_NUMBER14 -+#define IPIPE_PATCH_NUMBER2 ++#define IPIPE_MINOR_NUMBER15 ++#define IPIPE_PATCH_NUMBER1 #ifdef CONFIG_SMP #error "I-pipe/blackfin: SMP not implemented" @@ -36,7 +36,7 @@ index d3b4044..4530dfa 100644 #define __ipipe_sync_pipeline ___ipipe_sync_pipeline -void ___ipipe_sync_pipeline(unsigned long syncmask); -+void ___ipipe_sync_pipeline(int dovirt); ++void ___ipipe_sync_pipeline(void); void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs); @@ -136,7 +136,7 @@ index 813a1af..325e532 100644 } while (0) diff --git a/arch/blackfin/kernel/ipipe.c b/arch/blackfin/kernel/ipipe.c -index 1a496cd..d953572 100644 +index 1a496cd..aa96aa2 100644 --- a/arch/blackfin/kernel/ipipe.c +++ b/arch/blackfin/kernel/ipipe.c @@ -154,7 +154,7 @@ void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs) @@ -148,7 +148,7 @@ index 1a496cd..d953572 100644 goto out; __ipipe_walk_pipeline(head); -@@ -185,11 +185,13 @@ void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) +@@ -185,25 +185,21 @@ void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) } EXPORT_SYMBOL(__ipipe_disable_irqdesc); @@ -164,22 +164,27 @@ index 1a496cd..d953572 100644 + WARN_ON_ONCE(irqs_disabled_hw()); /* -* We need to run the IRQ tail hook whenever we don't -@@ -197,12 +199,9 @@ int __ipipe_syscall_root(struct pt_regs *regs) -* important operations might be pending there (e.g. Xenomai -* deferred rescheduling). +- * We need to run the IRQ tail hook whenever we don't +- * propagate a syscall to higher domains, because we know that +- * important operations might be pending there (e.g. Xenomai +- * deferred rescheduling). ++ * We need to run the IRQ tail hook each time we intercept a ++ * syscall, because we know that important operations might be ++ * pending there (e.g. Xenomai deferred rescheduling). */ - - if (regs->orig_p0 < NR_syscalls) { +- if (regs->orig_p0 < NR_syscalls) { - void (*hook)(void) = (void (*)(void))__ipipe_irq_tail_hook; -+ hook = (__typeof__(hook))__ipipe_irq_tail_hook; - hook(); +- hook(); - if ((current->flags & PF_EVNOTIFY) == 0) - return 0; - } +- } ++ hook = (__typeof__(hook))__ipipe_irq_tail_hook; ++ hook(); /* -@@ -214,23 +213,32 @@ int __ipipe_syscall_root(struct pt_regs *regs) +* This routine either returns: +@@ -214,23 +210,32 @@ int __ipipe_syscall_root(struct pt_regs *regs) * tail work has to be performed (for handling signals etc). */ @@ -214,7 +219,7 @@ index 1a496cd..d953572 100644 + else { + p = ipipe_root_cpudom_ptr(); + if (__ipipe_ipending_p(p)) -+ __ipipe_sync_pipeline(IPIPE_IRQ_DOVIRT); ++ __ipipe_sync_pipeline(); + } - local_irq_restore_hw(flags); @@ -222,7 +227,7 @@ index 1a496cd..d953572 100644 return -ret; } -@@ -289,6 +297,7 @@ int ipipe_trigger_irq(unsigned irq) +@@ -289,6 +294,7 @@ int ipipe_trigger_irq(unsigned irq) asmlinkage void __ipipe_sync_root(void) {