[Xenomai-git] Philippe Gerum : can: adapt to platform driver infrastructure changes for 2 .6.35
Module: xenomai-rpm Branch: for-upstream Commit: 9b86ff33ab065766ddeb5d4938ff28c21d809eda URL: http://git.xenomai.org/?p=xenomai-rpm.git;a=commit;h=9b86ff33ab065766ddeb5d4938ff28c21d809eda Author: Philippe Gerum r...@xenomai.org Date: Wed Oct 6 08:00:47 2010 +0200 can: adapt to platform driver infrastructure changes for 2.6.35 --- ksrc/drivers/can/mscan/rtcan_mscan_mpc5xxx.c | 16 ++-- ksrc/drivers/can/mscan/rtcan_mscan_regs.h|6 ++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/ksrc/drivers/can/mscan/rtcan_mscan_mpc5xxx.c b/ksrc/drivers/can/mscan/rtcan_mscan_mpc5xxx.c index 48abd89..52f3ec8 100644 --- a/ksrc/drivers/can/mscan/rtcan_mscan_mpc5xxx.c +++ b/ksrc/drivers/can/mscan/rtcan_mscan_mpc5xxx.c @@ -76,7 +76,7 @@ static u32 __devinit mpc52xx_can_get_clock(struct of_device *ofdev, else *mscan_clksrc = MSCAN_CLKSRC_XTAL; - freq = mpc5xxx_get_bus_frequency(ofdev-node); + freq = mpc5xxx_get_bus_frequency(mpc5xxx_get_of_node(ofdev)); if (!freq) return 0; @@ -254,7 +254,7 @@ static int __devinit mpc5xxx_can_probe(struct of_device *ofdev, const struct of_device_id *id) { struct mpc5xxx_can_data *data = (struct mpc5xxx_can_data *)id-data; - struct device_node *np = ofdev-node; + struct device_node *np = mpc5xxx_get_of_node(ofdev); struct rtcan_device *dev; void __iomem *base; const char *clock_name = NULL; @@ -349,6 +349,17 @@ static struct of_device_id __devinitdata mpc5xxx_can_table[] = { {}, }; +#if LINUX_VERSION_CODE = KERNEL_VERSION(2,6,35) +static struct of_platform_driver mpc5xxx_can_driver = { + .driver = { + .owner = THIS_MODULE, + .name = RTCAN_DRV_NAME, + .of_match_table = mpc5xxx_can_table, + }, + .probe = mpc5xxx_can_probe, + .remove = __devexit_p(mpc5xxx_can_remove), +}; +#else static struct of_platform_driver mpc5xxx_can_driver = { .owner = THIS_MODULE, .name = RTCAN_DRV_NAME, @@ -356,6 +367,7 @@ static struct of_platform_driver mpc5xxx_can_driver = { .remove = __devexit_p(mpc5xxx_can_remove), .match_table = mpc5xxx_can_table, }; +#endif static int __init mpc5xxx_can_init(void) { diff --git a/ksrc/drivers/can/mscan/rtcan_mscan_regs.h b/ksrc/drivers/can/mscan/rtcan_mscan_regs.h index dfad5e0..1df50a5 100644 --- a/ksrc/drivers/can/mscan/rtcan_mscan_regs.h +++ b/ksrc/drivers/can/mscan/rtcan_mscan_regs.h @@ -63,6 +63,12 @@ static inline void __iomem *mpc5xxx_gpio_find_and_map(void) #endif #endif +#if LINUX_VERSION_CODE = KERNEL_VERSION(2,6,35) +#define mpc5xxx_get_of_node(ofdev) (ofdev)-dev.of_node +#else +#define mpc5xxx_get_of_node(ofdev) (ofdev)-node +#endif + #define MSCAN_CAN1_ADDR(MSCAN_MBAR + 0x0900) /* MSCAN Module 1 */ #define MSCAN_CAN2_ADDR(MSCAN_MBAR + 0x0980) /* MSCAN Module 2 */ #define MSCAN_SIZE 0x80 ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Philippe Gerum : powerpc: upgrade I-pipe support to 2.6.34.4-powerpc-2. 10-05, 2.6.35.7-powerpc-2.11-01
Module: xenomai-rpm Branch: for-upstream Commit: 96a83b6a991a383fac9fe721e855e4437f864b2d URL: http://git.xenomai.org/?p=xenomai-rpm.git;a=commit;h=96a83b6a991a383fac9fe721e855e4437f864b2d Author: Philippe Gerum r...@xenomai.org Date: Tue Oct 5 15:46:13 2010 +0200 powerpc: upgrade I-pipe support to 2.6.34.4-powerpc-2.10-05, 2.6.35.7-powerpc-2.11-01 --- .../adeos-ipipe-2.6.31.6-blackfin-1.12-00.patch| 6746 --- .../adeos-ipipe-2.6.33-blackfin-1.13-00.patch | 7596 .../adeos-ipipe-2.6.33.5-powerpc-2.10-03.patch |12531 ... = adeos-ipipe-2.6.34.4-powerpc-2.10-05.patch} | 49 +- ... = adeos-ipipe-2.6.35.7-powerpc-2.11-01.patch} | 545 +- 5 files changed, 390 insertions(+), 27077 deletions(-) Diff: http://git.xenomai.org/?p=xenomai-rpm.git;a=commitdiff;h=96a83b6a991a383fac9fe721e855e4437f864b2d ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Mike Frysinger : blackfin: clean up syscall assembly
Module: xenomai-rpm Branch: for-upstream Commit: b29dadf3e1ea53b4f4d50e2ecb2123ce759eb187 URL: http://git.xenomai.org/?p=xenomai-rpm.git;a=commit;h=b29dadf3e1ea53b4f4d50e2ecb2123ce759eb187 Author: Mike Frysinger vap...@gentoo.org Date: Mon Sep 27 18:09:03 2010 -0400 blackfin: clean up syscall assembly The Blackfin assembly for making syscalls is inefficient, so rewrite it to use the asm constraints that gcc provides to load values into specific registers. The generated assembly now looks much nicer, and the header no longer duplicates the same syscall assembly multiple times. Signed-off-by: Mike Frysinger vap...@gentoo.org --- include/asm-blackfin/syscall.h | 129 +--- 1 files changed, 16 insertions(+), 113 deletions(-) diff --git a/include/asm-blackfin/syscall.h b/include/asm-blackfin/syscall.h index 9420dc8..8f8a7a2 100644 --- a/include/asm-blackfin/syscall.h +++ b/include/asm-blackfin/syscall.h @@ -90,125 +90,28 @@ static inline int __xn_interrupted_p(struct pt_regs *regs) * services in kernel space. */ -#define __emit_syscall0(muxcode, sigp) \ +#define __emit_syscall0(muxcode, sigp, ...)\ ({ \ long __res; \ __asm__ __volatile__ ( \ - r5=%2;\n\t\ - p0=%1;\n\t\ excpt 0;\n\t \ - %0=r0;\n\t\ - : =da (__res) \ - : d (muxcode),\ - a ((long)(sigp))\ - : CC,R5,P0,memory); \ - __res; \ -}) - -#define __emit_syscall1(muxcode, sigp, a1) \ -({ \ - long __res; \ - __asm__ __volatile__ ( \ - r5=%3;\n\t\ - r0=%2;\n\t\ - p0=%1;\n\t\ - excpt 0;\n\t \ - %0=r0;\n\t\ - : =da (__res) \ - : d (muxcode),\ - a ((long)(a1)), \ - a ((long)(sigp))\ - : CC,R0,R5,P0,memory);\ - __res; \ -}) - -#define __emit_syscall2(muxcode, sigp, a1, a2) \ -({ \ - long __res; \ - __asm__ __volatile__ ( \ - r5=%4;\n\t\ - r1=%3;\n\t\ - r0=%2;\n\t\ - p0=%1;\n\t\ - excpt 0;\n\t \ - %0=r0;\n\t\ - : =da (__res) \ - : d (muxcode),\ - a ((long)(a1)), \ - a ((long)(a2)), \ - a ((long)(sigp))\ - : CC,R0,R1,R5,P0,memory); \ - __res; \ -}) - -#define __emit_syscall3(muxcode, sigp, a1, a2, a3) \ -({ \ - long __res; \ - __asm__ __volatile__ ( \ - r5=%5;\n\t\ - r2=%4;\n\t\ - r1=%3;\n\t\ - r0=%2;\n\t
[Xenomai-git] Philippe Gerum : nucleus: disable u_mode watchdog for MMU-less
Module: xenomai-rpm Branch: for-upstream Commit: 90b3e7cf6b5768eca6402fd915aef99cea161751 URL: http://git.xenomai.org/?p=xenomai-rpm.git;a=commit;h=90b3e7cf6b5768eca6402fd915aef99cea161751 Author: Philippe Gerum r...@xenomai.org Date: Tue Oct 5 16:11:42 2010 +0200 nucleus: disable u_mode watchdog for MMU-less Legacy uClibc-based systems may trigger the scary memory corruption warning in handle_shadow_exit() because pthread keys are not always deleted upon application exit there. So the message is wrong, and even more confusing when people actually have kernel and userland supports in sync. In a great move toward sloppiness, we assume that uClibc implies !CONFIG_MMU in this case, and disable the warning message. At any rate, the requirement for such warning disappears totally when people get their kernel / userland support in sync, and/or update uClibc to fix the pthread key deletion issue. The ABI bump in Xenomai 2.6.x will make this detection even more obsolete. --- ksrc/nucleus/shadow.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/ksrc/nucleus/shadow.c b/ksrc/nucleus/shadow.c index da03f21..5ac182b 100644 --- a/ksrc/nucleus/shadow.c +++ b/ksrc/nucleus/shadow.c @@ -2214,10 +2214,12 @@ static void handle_shadow_exit(void) */ if (thread-u_mode !warned) { warned = 1; +#ifndef CONFIG_MMU printk(KERN_WARNING Xenomai: User-space support anterior to 2.5.2 detected, may corrupt memory upon\n thread termination. Upgrade is recommended\n); +#endif } thread-u_mode = NULL; } ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Philippe Gerum : powerpc: upgrade I-pipe support to 2.6.35.7-powerpc-2. 11-02
Module: xenomai-rpm Branch: for-upstream Commit: 973febd9b7a06b737178390e13df51472f6be596 URL: http://git.xenomai.org/?p=xenomai-rpm.git;a=commit;h=973febd9b7a06b737178390e13df51472f6be596 Author: Philippe Gerum r...@xenomai.org Date: Wed Oct 6 08:45:29 2010 +0200 powerpc: upgrade I-pipe support to 2.6.35.7-powerpc-2.11-02 --- ... = adeos-ipipe-2.6.35.7-powerpc-2.11-02.patch} | 119 +--- 1 files changed, 76 insertions(+), 43 deletions(-) diff --git a/ksrc/arch/powerpc/patches/adeos-ipipe-2.6.35.7-powerpc-2.11-01.patch b/ksrc/arch/powerpc/patches/adeos-ipipe-2.6.35.7-powerpc-2.11-02.patch similarity index 99% rename from ksrc/arch/powerpc/patches/adeos-ipipe-2.6.35.7-powerpc-2.11-01.patch rename to ksrc/arch/powerpc/patches/adeos-ipipe-2.6.35.7-powerpc-2.11-02.patch index 698eb33..bfe6db2 100644 --- a/ksrc/arch/powerpc/patches/adeos-ipipe-2.6.35.7-powerpc-2.11-01.patch +++ b/ksrc/arch/powerpc/patches/adeos-ipipe-2.6.35.7-powerpc-2.11-02.patch @@ -54,6 +54,16 @@ index 2031a28..ec96063 100644 config HIGHMEM bool High memory support depends on PPC32 +diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile +index b2e3635..371a116 100644 +--- a/arch/powerpc/Makefile b/arch/powerpc/Makefile +@@ -263,3 +263,5 @@ checkbin: + + CLEAN_FILES += $(TOUT) + ++ ++drivers-$(CONFIG_XENOMAI) += arch/powerpc/xenomai/ diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile index fae8192..f11ef26 100644 --- a/arch/powerpc/boot/Makefile @@ -265,7 +275,7 @@ index bd100fc..8fa1901 100644 * or should we not care like we do now ? --BenH. diff --git a/arch/powerpc/include/asm/ipipe.h b/arch/powerpc/include/asm/ipipe.h new file mode 100644 -index 000..776b916 +index 000..2e7f178 --- /dev/null +++ b/arch/powerpc/include/asm/ipipe.h @@ -0,0 +1,277 @@ @@ -316,10 +326,10 @@ index 000..776b916 +#include asm/paca.h +#endif + -+#define IPIPE_ARCH_STRING 2.11-01 ++#define IPIPE_ARCH_STRING 2.11-02 +#define IPIPE_MAJOR_NUMBER2 +#define IPIPE_MINOR_NUMBER11 -+#define IPIPE_PATCH_NUMBER1 ++#define IPIPE_PATCH_NUMBER2 + +#ifdef CONFIG_IPIPE_WANT_PREEMPTIBLE_SWITCH + @@ -548,10 +558,10 @@ index 000..776b916 +#endif /* !__ASM_POWERPC_IPIPE_H */ diff --git a/arch/powerpc/include/asm/ipipe_base.h b/arch/powerpc/include/asm/ipipe_base.h new file mode 100644 -index 000..eb3867a +index 000..145d2cd --- /dev/null +++ b/arch/powerpc/include/asm/ipipe_base.h -@@ -0,0 +1,157 @@ +@@ -0,0 +1,161 @@ +/* -*- linux-c -*- + * include/asm-powerpc/ipipe_base.h + * @@ -623,6 +633,10 @@ index 000..eb3867a +#define IPIPE_MSG_IPI_OFFSET (IPIPE_CRITICAL_IPI) + +#define ipipe_processor_id() raw_smp_processor_id() ++ ++#define ipipe_ipi_p(ipi) \ ++ ((ipi) = IPIPE_SERVICE_IPI0 (ipi) = IPIPE_SERVICE_IPI4) ++ +#else /* !CONFIG_SMP */ +#define ipipe_processor_id() 0 +#endif /* CONFIG_SMP */ @@ -2284,10 +2298,10 @@ index 5328709..8c3a2b7 100644 sync diff --git a/arch/powerpc/kernel/ipipe.c b/arch/powerpc/kernel/ipipe.c new file mode 100644 -index 000..89c9726 +index 000..825dc26 --- /dev/null +++ b/arch/powerpc/kernel/ipipe.c -@@ -0,0 +1,794 @@ +@@ -0,0 +1,760 @@ +/* -*- linux-c -*- + * linux/arch/powerpc/kernel/ipipe.c + * @@ -2350,16 +2364,6 @@ index 000..89c9726 + +#ifdef CONFIG_SMP + -+static cpumask_t __ipipe_cpu_sync_map; -+ -+static cpumask_t __ipipe_cpu_lock_map; -+ -+static IPIPE_DEFINE_SPINLOCK(__ipipe_cpu_barrier); -+ -+static atomic_t __ipipe_critical_count = ATOMIC_INIT(0); -+ -+static void (*__ipipe_cpu_sync) (void); -+ +static DEFINE_PER_CPU(struct ipipe_ipi_struct, ipipe_ipi_message); + +unsigned int __ipipe_ipi_irq = NR_IRQS + 1; /* dummy value */ @@ -2368,30 +2372,6 @@ index 000..89c9726 +cpumask_t __ipipe_dbrk_pending; /* pending debugger break IPIs */ +#endif + -+/* Always called with hw interrupts off. */ -+ -+void __ipipe_do_critical_sync(unsigned irq, void *cookie) -+{ -+ cpu_set(ipipe_processor_id(), __ipipe_cpu_sync_map); -+ -+ /* -+ * Now we are in sync with the lock requestor running on another -+ * CPU. Enter a spinning wait until he releases the global -+ * lock. -+ */ -+ spin_lock(__ipipe_cpu_barrier); -+ -+ /* Got it. Now get out. */ -+ -+ if (__ipipe_cpu_sync) -+ /* Call the sync routine if any. */ -+ __ipipe_cpu_sync(); -+ -+ spin_unlock(__ipipe_cpu_barrier); -+ -+ cpu_clear(ipipe_processor_id(), __ipipe_cpu_sync_map); -+} -+ +void __ipipe_hook_critical_ipi(struct ipipe_domain *ipd) +{ + ipd-irqs[IPIPE_CRITICAL_IPI].acknowledge = NULL; @@ -5140,6 +5120,16 @@ index 0038fb7..e63e062 100644 } static struct uic * __init uic_init_one(struct device_node *node) +diff --git a/drivers/Makefile b/drivers/Makefile +index 91874e0..c146a59 100644 +--- a/drivers/Makefile b/drivers/Makefile +@@ -113,3 +113,5 @@ obj-$(CONFIG_VLYNQ)
[Xenomai-git] Philippe Gerum : x86: upgrade adeos patch to 2.6.35.7-2.7-04
Module: xenomai-2.5 Branch: master Commit: 0239a1d341e12c51d4a8c374781b7f731ce8d73f URL: http://git.xenomai.org/?p=xenomai-2.5.git;a=commit;h=0239a1d341e12c51d4a8c374781b7f731ce8d73f Author: Philippe Gerum r...@xenomai.org Date: Mon Oct 4 16:28:02 2010 +0200 x86: upgrade adeos patch to 2.6.35.7-2.7-04 --- .../patches/adeos-ipipe-2.6.35.7-x86-2.7-04.patch |11884 1 files changed, 11884 insertions(+), 0 deletions(-) Diff: http://git.xenomai.org/?p=xenomai-2.5.git;a=commitdiff;h=0239a1d341e12c51d4a8c374781b7f731ce8d73f ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Philippe Gerum : powerpc: upgrade I-pipe support to 2.6.34.4-powerpc-2. 10-05, 2.6.35.7-powerpc-2.11-01
Module: xenomai-2.5 Branch: master Commit: 96a83b6a991a383fac9fe721e855e4437f864b2d URL: http://git.xenomai.org/?p=xenomai-2.5.git;a=commit;h=96a83b6a991a383fac9fe721e855e4437f864b2d Author: Philippe Gerum r...@xenomai.org Date: Tue Oct 5 15:46:13 2010 +0200 powerpc: upgrade I-pipe support to 2.6.34.4-powerpc-2.10-05, 2.6.35.7-powerpc-2.11-01 --- .../adeos-ipipe-2.6.31.6-blackfin-1.12-00.patch| 6746 --- .../adeos-ipipe-2.6.33-blackfin-1.13-00.patch | 7596 .../adeos-ipipe-2.6.33.5-powerpc-2.10-03.patch |12531 ... = adeos-ipipe-2.6.34.4-powerpc-2.10-05.patch} | 49 +- ... = adeos-ipipe-2.6.35.7-powerpc-2.11-01.patch} | 545 +- 5 files changed, 390 insertions(+), 27077 deletions(-) Diff: http://git.xenomai.org/?p=xenomai-2.5.git;a=commitdiff;h=96a83b6a991a383fac9fe721e855e4437f864b2d ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Gilles Chanteperdrix : build: boostrap
Module: xenomai-2.5 Branch: master Commit: b659d91264f0f49210d0a3d7a216dcafe0aa873e URL: http://git.xenomai.org/?p=xenomai-2.5.git;a=commit;h=b659d91264f0f49210d0a3d7a216dcafe0aa873e Author: Gilles Chanteperdrix gilles.chanteperd...@xenomai.org Date: Wed Oct 6 12:58:13 2010 +0200 build: boostrap --- config/version|2 +- configure | 20 ++-- include/nucleus/version.h |4 ++-- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/config/version b/config/version index fe16b34..0cadbc1 100644 --- a/config/version +++ b/config/version @@ -1 +1 @@ -2.5.4 +2.5.5 diff --git a/configure b/configure index 6d2d507..a23ec71 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.65 for Xenomai 2.5.4. +# Generated by GNU Autoconf 2.65 for Xenomai 2.5.5. # # Report bugs to xenomai-h...@gna.org. # @@ -701,8 +701,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='Xenomai' PACKAGE_TARNAME='xenomai' -PACKAGE_VERSION='2.5.4' -PACKAGE_STRING='Xenomai 2.5.4' +PACKAGE_VERSION='2.5.5' +PACKAGE_STRING='Xenomai 2.5.5' PACKAGE_BUGREPORT='xenomai-h...@gna.org' PACKAGE_URL='' @@ -1505,7 +1505,7 @@ if test $ac_init_help = long; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat _ACEOF -\`configure' configures Xenomai 2.5.4 to adapt to many kinds of systems. +\`configure' configures Xenomai 2.5.5 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1576,7 +1576,7 @@ fi if test -n $ac_init_help; then case $ac_init_help in - short | recursive ) echo Configuration of Xenomai 2.5.4:;; + short | recursive ) echo Configuration of Xenomai 2.5.5:;; esac cat \_ACEOF @@ -1742,7 +1742,7 @@ fi test -n $ac_init_help exit $ac_status if $ac_init_version; then cat \_ACEOF -Xenomai configure 2.5.4 +Xenomai configure 2.5.5 generated by GNU Autoconf 2.65 Copyright (C) 2009 Free Software Foundation, Inc. @@ -2113,7 +2113,7 @@ cat config.log _ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Xenomai $as_me 2.5.4, which was +It was created by Xenomai $as_me 2.5.5, which was generated by GNU Autoconf 2.65. Invocation command line was $ $0 $@ @@ -4639,7 +4639,7 @@ fi # Define the identity of the package. PACKAGE='xenomai' - VERSION='2.5.4' + VERSION='2.5.5' cat confdefs.h _ACEOF @@ -13489,7 +13489,7 @@ cat $CONFIG_STATUS \_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log= -This file was extended by Xenomai $as_me 2.5.4, which was +This file was extended by Xenomai $as_me 2.5.5, which was generated by GNU Autoconf 2.65. Invocation command line was CONFIG_FILES= $CONFIG_FILES @@ -13559,7 +13559,7 @@ _ACEOF cat $CONFIG_STATUS _ACEOF || ac_write_fail=1 ac_cs_config=`$as_echo $ac_configure_args | sed 's/^ //; s/[\\\`\$]//g'` ac_cs_version=\\ -Xenomai config.status 2.5.4 +Xenomai config.status 2.5.5 configured by $0, generated by GNU Autoconf 2.65, with options \\\$ac_cs_config\\ diff --git a/include/nucleus/version.h b/include/nucleus/version.h index 7a09f99..8f59d64 100644 --- a/include/nucleus/version.h +++ b/include/nucleus/version.h @@ -26,8 +26,8 @@ CONFIG_XENO_VERSION_MINOR, \ CONFIG_XENO_REVISION_LEVEL) -#define XENO_VERSION_NAME Sleep Walk +#define XENO_VERSION_NAME Ghosts -#define XENO_VERSION_STRING2.5.4 +#define XENO_VERSION_STRING2.5.5 #endif /* _XENO_NUCLEUS_VERSION_H */ ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git