--- include/linux/ipipe.h | 15 +-------------- include/linux/ipipe_base.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ kernel/ipipe/core.c | 2 +- 3 files changed, 47 insertions(+), 15 deletions(-) Index: linux-2.6.20/include/linux/ipipe.h =================================================================== --- linux-2.6.20.orig/include/linux/ipipe.h +++ linux-2.6.20/include/linux/ipipe.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #ifdef CONFIG_IPIPE @@ -276,10 +277,6 @@ do { \ DECLARE_PER_CPU(struct ipipe_domain *, ipipe_percpu_domain); -extern struct ipipe_domain ipipe_root; - -#define ipipe_root_domain (&ipipe_root) - extern unsigned __ipipe_printk_virq; extern unsigned long __ipipe_virtual_irq_map; @@ -315,18 +312,8 @@ void __ipipe_remove_domain_proc(struct i void __ipipe_flush_printk(unsigned irq, void *cookie); -void __ipipe_stall_root(void); - -void __ipipe_unstall_root(void); - -unsigned long __ipipe_test_root(void); - -unsigned long __ipipe_test_and_stall_root(void); - void fastcall __ipipe_walk_pipeline(struct list_head *pos, int cpuid); -void fastcall __ipipe_restore_root(unsigned long x); - int fastcall __ipipe_schedule_irq(unsigned irq, struct list_head *head); int fastcall __ipipe_dispatch_event(unsigned event, void *data); Index: linux-2.6.20/include/linux/ipipe_base.h =================================================================== --- /dev/null +++ linux-2.6.20/include/linux/ipipe_base.h @@ -0,0 +1,45 @@ +/* -*- linux-c -*- + * include/linux/ipipe.h + * + * Copyright (C) 2002-2005 Philippe Gerum. + * 2007 Jan Kiszka. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, Inc., 675 Mass Ave, Cambridge MA 02139, + * USA; either version 2 of the License, or (at your option) any later + * version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#ifndef __LINUX_IPIPE_BASE_H +#define __LINUX_IPIPE_BASE_H + +#ifdef CONFIG_IPIPE + +extern struct ipipe_domain ipipe_root; + +#define ipipe_root_domain (&ipipe_root) + + +void __ipipe_stall_root(void); + +void __ipipe_unstall_root(void); + +unsigned long __ipipe_test_root(void); + +unsigned long __ipipe_test_and_stall_root(void); + +void __ipipe_restore_root(unsigned long x); + +#endif /* CONFIG_IPIPE */ + +#endif /* !__LINUX_IPIPE_BASE_H */ Index: linux-2.6.20/kernel/ipipe/core.c =================================================================== --- linux-2.6.20.orig/kernel/ipipe/core.c +++ linux-2.6.20/kernel/ipipe/core.c @@ -198,7 +198,7 @@ unsigned long __ipipe_test_and_stall_roo return x; } -void fastcall __ipipe_restore_root(unsigned long x) +void __ipipe_restore_root(unsigned long x) { if (x) __ipipe_stall_root();