aboutsummaryrefslogtreecommitdiffstats
path: root/arch/frv
diff options
context:
space:
mode:
authorAmerigo Wang <amwang@redhat.com>2011-03-29 14:05:12 +0100
committerDavid Howells <dhowells@redhat.com>2011-03-29 14:05:12 +0100
commit5ca7202bc4db3e2fd5653c52a608601c7a64a2ac (patch)
treed252f9bbb5d026912ff7a6591b7815334da9990c /arch/frv
parent5ef9bdde9cd8e7f9d43a975b47f520ca64cbd0a1 (diff)
downloadkernel_samsung_aries-5ca7202bc4db3e2fd5653c52a608601c7a64a2ac.zip
kernel_samsung_aries-5ca7202bc4db3e2fd5653c52a608601c7a64a2ac.tar.gz
kernel_samsung_aries-5ca7202bc4db3e2fd5653c52a608601c7a64a2ac.tar.bz2
FRV: Do some cleanups
1. frv doesn't support SMP, remove the useless SMP bits. 2. frv has its own alloc_task_struct, so define __HAVE_ARCH_TASK_STRUCT_ALLOCATOR (I am not sure if frv should use generic alloc_task_struct().) Signed-off-by: WANG Cong <amwang@redhat.com> Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'arch/frv')
-rw-r--r--arch/frv/Kconfig1
-rw-r--r--arch/frv/include/asm/system.h9
-rw-r--r--arch/frv/include/asm/thread_info.h2
3 files changed, 2 insertions, 10 deletions
diff --git a/arch/frv/Kconfig b/arch/frv/Kconfig
index f6037b2..968a330 100644
--- a/arch/frv/Kconfig
+++ b/arch/frv/Kconfig
@@ -361,7 +361,6 @@ menu "Power management options"
config ARCH_SUSPEND_POSSIBLE
def_bool y
- depends on !SMP
source kernel/power/Kconfig
endmenu
diff --git a/arch/frv/include/asm/system.h b/arch/frv/include/asm/system.h
index 0a6d8d9..6c10fd2 100644
--- a/arch/frv/include/asm/system.h
+++ b/arch/frv/include/asm/system.h
@@ -45,21 +45,12 @@ do { \
#define wmb() asm volatile ("membar" : : :"memory")
#define read_barrier_depends() do { } while (0)
-#ifdef CONFIG_SMP
-#define smp_mb() mb()
-#define smp_rmb() rmb()
-#define smp_wmb() wmb()
-#define smp_read_barrier_depends() read_barrier_depends()
-#define set_mb(var, value) \
- do { xchg(&var, (value)); } while (0)
-#else
#define smp_mb() barrier()
#define smp_rmb() barrier()
#define smp_wmb() barrier()
#define smp_read_barrier_depends() do {} while(0)
#define set_mb(var, value) \
do { var = (value); barrier(); } while (0)
-#endif
extern void die_if_kernel(const char *, ...) __attribute__((format(printf, 1, 2)));
extern void free_initmem(void);
diff --git a/arch/frv/include/asm/thread_info.h b/arch/frv/include/asm/thread_info.h
index 08179f3..cefbe73 100644
--- a/arch/frv/include/asm/thread_info.h
+++ b/arch/frv/include/asm/thread_info.h
@@ -21,6 +21,8 @@
#define THREAD_SIZE 8192
+#define __HAVE_ARCH_TASK_STRUCT_ALLOCATOR
+
/*
* low level task data that entry.S needs immediate access to
* - this struct should fit entirely inside of one cache line