Module: xenomai-3 Branch: next Commit: 936bc855d810b68fa8966e5c50dbc6540747d0df URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=936bc855d810b68fa8966e5c50dbc6540747d0df
Author: Philippe Gerum <r...@xenomai.org> Date: Tue Feb 3 18:31:57 2015 +0100 cobalt/blackfin: upgrade I-pipe support --- ...in-1.patch => ipipe-core-3.16-blackfin-2.patch} | 74 +++++++++++++++++++- 1 file changed, 72 insertions(+), 2 deletions(-) diff --git a/kernel/cobalt/arch/blackfin/patches/ipipe-core-3.16-blackfin-1.patch b/kernel/cobalt/arch/blackfin/patches/ipipe-core-3.16-blackfin-2.patch similarity index 99% rename from kernel/cobalt/arch/blackfin/patches/ipipe-core-3.16-blackfin-1.patch rename to kernel/cobalt/arch/blackfin/patches/ipipe-core-3.16-blackfin-2.patch index cf38275..c502f05 100644 --- a/kernel/cobalt/arch/blackfin/patches/ipipe-core-3.16-blackfin-1.patch +++ b/kernel/cobalt/arch/blackfin/patches/ipipe-core-3.16-blackfin-2.patch @@ -12,7 +12,7 @@ index f81e7b9..8af0949 100644 comment "Processor and Board Settings" diff --git a/arch/blackfin/include/asm/ipipe.h b/arch/blackfin/include/asm/ipipe.h -index 17b5e92..2a486ff 100644 +index 17b5e92..7e99af8 100644 --- a/arch/blackfin/include/asm/ipipe.h +++ b/arch/blackfin/include/asm/ipipe.h @@ -28,7 +28,7 @@ @@ -32,7 +32,7 @@ index 17b5e92..2a486ff 100644 -#define IPIPE_MAJOR_NUMBER 1 -#define IPIPE_MINOR_NUMBER 16 -#define IPIPE_PATCH_NUMBER 1 -+#define IPIPE_CORE_RELEASE 1 ++#define IPIPE_CORE_RELEASE 2 #ifdef CONFIG_SMP #error "I-pipe/blackfin: SMP not implemented" @@ -4442,6 +4442,76 @@ index ec4e3bd..b32a421 100644 int cpu; int vcpu_id; int srcu_idx; +diff --git a/include/linux/percpu.h b/include/linux/percpu.h +index 8419053..e5d43ab 100644 +--- a/include/linux/percpu.h ++++ b/include/linux/percpu.h +@@ -303,9 +303,9 @@ do { \ + #define _this_cpu_generic_to_op(pcp, val, op) \ + do { \ + unsigned long flags; \ +- raw_local_irq_save(flags); \ ++ flags = hard_local_irq_save(); \ + *raw_cpu_ptr(&(pcp)) op val; \ +- raw_local_irq_restore(flags); \ ++ hard_local_irq_restore(flags); \ + } while (0) + + #ifndef this_cpu_write +@@ -388,10 +388,10 @@ do { \ + ({ \ + typeof(pcp) ret__; \ + unsigned long flags; \ +- raw_local_irq_save(flags); \ +- raw_cpu_add(pcp, val); \ ++ flags = hard_local_irq_save(); \ ++ raw_cpu_add(pcp, val); \ + ret__ = raw_cpu_read(pcp); \ +- raw_local_irq_restore(flags); \ ++ hard_local_irq_restore(flags); \ + ret__; \ + }) + +@@ -418,10 +418,10 @@ do { \ + #define _this_cpu_generic_xchg(pcp, nval) \ + ({ typeof(pcp) ret__; \ + unsigned long flags; \ +- raw_local_irq_save(flags); \ ++ flags = hard_local_irq_save(); \ + ret__ = raw_cpu_read(pcp); \ + raw_cpu_write(pcp, nval); \ +- raw_local_irq_restore(flags); \ ++ hard_local_irq_restore(flags); \ + ret__; \ + }) + +@@ -446,11 +446,11 @@ do { \ + ({ \ + typeof(pcp) ret__; \ + unsigned long flags; \ +- raw_local_irq_save(flags); \ ++ flags = hard_local_irq_save(); \ + ret__ = raw_cpu_read(pcp); \ + if (ret__ == (oval)) \ + raw_cpu_write(pcp, nval); \ +- raw_local_irq_restore(flags); \ ++ hard_local_irq_restore(flags); \ + ret__; \ + }) + +@@ -483,10 +483,10 @@ do { \ + ({ \ + int ret__; \ + unsigned long flags; \ +- raw_local_irq_save(flags); \ ++ flags = hard_local_irq_save(); \ + ret__ = raw_cpu_generic_cmpxchg_double(pcp1, pcp2, \ + oval1, oval2, nval1, nval2); \ +- raw_local_irq_restore(flags); \ ++ hard_local_irq_restore(flags); \ + ret__; \ + }) + diff --git a/include/linux/preempt.h b/include/linux/preempt.h index de83b4e..7fdf00b 100644 --- a/include/linux/preempt.h _______________________________________________ Xenomai-git mailing list Xenomai-git@xenomai.org http://www.xenomai.org/mailman/listinfo/xenomai-git