diff options
Diffstat (limited to 'arch/h8300')
-rw-r--r-- | arch/h8300/Kconfig | 1 | ||||
-rw-r--r-- | arch/h8300/include/asm/Kbuild | 4 | ||||
-rw-r--r-- | arch/h8300/include/asm/elf.h | 3 | ||||
-rw-r--r-- | arch/h8300/include/asm/exec.h | 6 | ||||
-rw-r--r-- | arch/h8300/include/asm/thread_info.h | 7 | ||||
-rw-r--r-- | arch/h8300/include/uapi/asm/Kbuild | 3 | ||||
-rw-r--r-- | arch/h8300/kernel/process.c | 7 | ||||
-rw-r--r-- | arch/h8300/kernel/signal.c | 1 | ||||
-rw-r--r-- | arch/h8300/kernel/sys_h8300.c | 1 | ||||
-rw-r--r-- | arch/h8300/kernel/timer/itu.c | 2 | ||||
-rw-r--r-- | arch/h8300/kernel/timer/timer16.c | 2 | ||||
-rw-r--r-- | arch/h8300/kernel/timer/timer8.c | 2 | ||||
-rw-r--r-- | arch/h8300/kernel/timer/tpu.c | 2 | ||||
-rw-r--r-- | arch/h8300/platform/h8300h/irq.c | 4 | ||||
-rw-r--r-- | arch/h8300/platform/h8s/irq.c | 4 |
15 files changed, 25 insertions, 24 deletions
diff --git a/arch/h8300/Kconfig b/arch/h8300/Kconfig index c149d3b29eb6..98fabd10e95f 100644 --- a/arch/h8300/Kconfig +++ b/arch/h8300/Kconfig | |||
@@ -3,6 +3,7 @@ config H8300 | |||
3 | default y | 3 | default y |
4 | select HAVE_IDE | 4 | select HAVE_IDE |
5 | select HAVE_GENERIC_HARDIRQS | 5 | select HAVE_GENERIC_HARDIRQS |
6 | select HAVE_UID16 | ||
6 | select ARCH_WANT_IPC_PARSE_VERSION | 7 | select ARCH_WANT_IPC_PARSE_VERSION |
7 | select GENERIC_IRQ_SHOW | 8 | select GENERIC_IRQ_SHOW |
8 | select GENERIC_CPU_DEVICES | 9 | select GENERIC_CPU_DEVICES |
diff --git a/arch/h8300/include/asm/Kbuild b/arch/h8300/include/asm/Kbuild index 871382d239fe..50bbf387b2f8 100644 --- a/arch/h8300/include/asm/Kbuild +++ b/arch/h8300/include/asm/Kbuild | |||
@@ -1,3 +1,5 @@ | |||
1 | include include/asm-generic/Kbuild.asm | 1 | include include/asm-generic/Kbuild.asm |
2 | 2 | ||
3 | generic-y += module.h | 3 | generic-y += clkdev.h |
4 | generic-y += exec.h | ||
5 | generic-y += module.h | ||
diff --git a/arch/h8300/include/asm/elf.h b/arch/h8300/include/asm/elf.h index c24fa250d653..41193c396bff 100644 --- a/arch/h8300/include/asm/elf.h +++ b/arch/h8300/include/asm/elf.h | |||
@@ -54,7 +54,8 @@ typedef unsigned long elf_fpregset_t; | |||
54 | 54 | ||
55 | #define ELF_PLATFORM (NULL) | 55 | #define ELF_PLATFORM (NULL) |
56 | 56 | ||
57 | #define SET_PERSONALITY(ex) set_personality(PER_LINUX) | 57 | #define SET_PERSONALITY(ex) \ |
58 | set_personality(PER_LINUX | (current->personality & (~PER_MASK))) | ||
58 | 59 | ||
59 | #define R_H8_NONE 0 | 60 | #define R_H8_NONE 0 |
60 | #define R_H8_DIR32 1 | 61 | #define R_H8_DIR32 1 |
diff --git a/arch/h8300/include/asm/exec.h b/arch/h8300/include/asm/exec.h deleted file mode 100644 index c01c45ccadf9..000000000000 --- a/arch/h8300/include/asm/exec.h +++ /dev/null | |||
@@ -1,6 +0,0 @@ | |||
1 | #ifndef _H8300_EXEC_H | ||
2 | #define _H8300_EXEC_H | ||
3 | |||
4 | #define arch_align_stack(x) (x) | ||
5 | |||
6 | #endif /* _H8300_EXEC_H */ | ||
diff --git a/arch/h8300/include/asm/thread_info.h b/arch/h8300/include/asm/thread_info.h index 9c126e0c09aa..ec2f7777c65a 100644 --- a/arch/h8300/include/asm/thread_info.h +++ b/arch/h8300/include/asm/thread_info.h | |||
@@ -85,8 +85,6 @@ static inline struct thread_info *current_thread_info(void) | |||
85 | #define TIF_SYSCALL_TRACE 0 /* syscall trace active */ | 85 | #define TIF_SYSCALL_TRACE 0 /* syscall trace active */ |
86 | #define TIF_SIGPENDING 1 /* signal pending */ | 86 | #define TIF_SIGPENDING 1 /* signal pending */ |
87 | #define TIF_NEED_RESCHED 2 /* rescheduling necessary */ | 87 | #define TIF_NEED_RESCHED 2 /* rescheduling necessary */ |
88 | #define TIF_POLLING_NRFLAG 3 /* true if poll_idle() is polling | ||
89 | TIF_NEED_RESCHED */ | ||
90 | #define TIF_MEMDIE 4 /* is terminating due to OOM killer */ | 88 | #define TIF_MEMDIE 4 /* is terminating due to OOM killer */ |
91 | #define TIF_RESTORE_SIGMASK 5 /* restore signal mask in do_signal() */ | 89 | #define TIF_RESTORE_SIGMASK 5 /* restore signal mask in do_signal() */ |
92 | #define TIF_NOTIFY_RESUME 6 /* callback before returning to user */ | 90 | #define TIF_NOTIFY_RESUME 6 /* callback before returning to user */ |
@@ -95,11 +93,10 @@ static inline struct thread_info *current_thread_info(void) | |||
95 | #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) | 93 | #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) |
96 | #define _TIF_SIGPENDING (1<<TIF_SIGPENDING) | 94 | #define _TIF_SIGPENDING (1<<TIF_SIGPENDING) |
97 | #define _TIF_NEED_RESCHED (1<<TIF_NEED_RESCHED) | 95 | #define _TIF_NEED_RESCHED (1<<TIF_NEED_RESCHED) |
98 | #define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG) | ||
99 | #define _TIF_RESTORE_SIGMASK (1<<TIF_RESTORE_SIGMASK) | ||
100 | #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME) | 96 | #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME) |
101 | 97 | ||
102 | #define _TIF_WORK_MASK 0x0000FFFE /* work to do on interrupt/exception return */ | 98 | #define _TIF_WORK_MASK (_TIF_SIGPENDING | _TIF_NEED_RESCHED | \ |
99 | _TIF_NOTIFY_RESUME) | ||
103 | 100 | ||
104 | #endif /* __KERNEL__ */ | 101 | #endif /* __KERNEL__ */ |
105 | 102 | ||
diff --git a/arch/h8300/include/uapi/asm/Kbuild b/arch/h8300/include/uapi/asm/Kbuild new file mode 100644 index 000000000000..baebb3da1d44 --- /dev/null +++ b/arch/h8300/include/uapi/asm/Kbuild | |||
@@ -0,0 +1,3 @@ | |||
1 | # UAPI Header export list | ||
2 | include include/uapi/asm-generic/Kbuild.asm | ||
3 | |||
diff --git a/arch/h8300/kernel/process.c b/arch/h8300/kernel/process.c index 0e9c315be104..e8dc1393a13a 100644 --- a/arch/h8300/kernel/process.c +++ b/arch/h8300/kernel/process.c | |||
@@ -36,6 +36,7 @@ | |||
36 | #include <linux/reboot.h> | 36 | #include <linux/reboot.h> |
37 | #include <linux/fs.h> | 37 | #include <linux/fs.h> |
38 | #include <linux/slab.h> | 38 | #include <linux/slab.h> |
39 | #include <linux/rcupdate.h> | ||
39 | 40 | ||
40 | #include <asm/uaccess.h> | 41 | #include <asm/uaccess.h> |
41 | #include <asm/traps.h> | 42 | #include <asm/traps.h> |
@@ -78,8 +79,10 @@ void (*idle)(void) = default_idle; | |||
78 | void cpu_idle(void) | 79 | void cpu_idle(void) |
79 | { | 80 | { |
80 | while (1) { | 81 | while (1) { |
82 | rcu_idle_enter(); | ||
81 | while (!need_resched()) | 83 | while (!need_resched()) |
82 | idle(); | 84 | idle(); |
85 | rcu_idle_exit(); | ||
83 | schedule_preempt_disabled(); | 86 | schedule_preempt_disabled(); |
84 | } | 87 | } |
85 | } | 88 | } |
@@ -214,14 +217,14 @@ asmlinkage int sys_execve(const char *name, | |||
214 | int dummy, ...) | 217 | int dummy, ...) |
215 | { | 218 | { |
216 | int error; | 219 | int error; |
217 | char * filename; | 220 | struct filename *filename; |
218 | struct pt_regs *regs = (struct pt_regs *) ((unsigned char *)&dummy-4); | 221 | struct pt_regs *regs = (struct pt_regs *) ((unsigned char *)&dummy-4); |
219 | 222 | ||
220 | filename = getname(name); | 223 | filename = getname(name); |
221 | error = PTR_ERR(filename); | 224 | error = PTR_ERR(filename); |
222 | if (IS_ERR(filename)) | 225 | if (IS_ERR(filename)) |
223 | return error; | 226 | return error; |
224 | error = do_execve(filename, argv, envp, regs); | 227 | error = do_execve(filename->name, argv, envp, regs); |
225 | putname(filename); | 228 | putname(filename); |
226 | return error; | 229 | return error; |
227 | } | 230 | } |
diff --git a/arch/h8300/kernel/signal.c b/arch/h8300/kernel/signal.c index 5adaadaf9218..0e81b96c642f 100644 --- a/arch/h8300/kernel/signal.c +++ b/arch/h8300/kernel/signal.c | |||
@@ -38,7 +38,6 @@ | |||
38 | #include <linux/personality.h> | 38 | #include <linux/personality.h> |
39 | #include <linux/tty.h> | 39 | #include <linux/tty.h> |
40 | #include <linux/binfmts.h> | 40 | #include <linux/binfmts.h> |
41 | #include <linux/freezer.h> | ||
42 | #include <linux/tracehook.h> | 41 | #include <linux/tracehook.h> |
43 | 42 | ||
44 | #include <asm/setup.h> | 43 | #include <asm/setup.h> |
diff --git a/arch/h8300/kernel/sys_h8300.c b/arch/h8300/kernel/sys_h8300.c index aaf5e5a48f93..4bdc7311784e 100644 --- a/arch/h8300/kernel/sys_h8300.c +++ b/arch/h8300/kernel/sys_h8300.c | |||
@@ -51,6 +51,7 @@ asmlinkage void syscall_print(void *dummy,...) | |||
51 | * Do a system call from kernel instead of calling sys_execve so we | 51 | * Do a system call from kernel instead of calling sys_execve so we |
52 | * end up with proper pt_regs. | 52 | * end up with proper pt_regs. |
53 | */ | 53 | */ |
54 | asmlinkage | ||
54 | int kernel_execve(const char *filename, | 55 | int kernel_execve(const char *filename, |
55 | const char *const argv[], | 56 | const char *const argv[], |
56 | const char *const envp[]) | 57 | const char *const envp[]) |
diff --git a/arch/h8300/kernel/timer/itu.c b/arch/h8300/kernel/timer/itu.c index a2ae5e952137..0a8b5cd5bf38 100644 --- a/arch/h8300/kernel/timer/itu.c +++ b/arch/h8300/kernel/timer/itu.c | |||
@@ -62,7 +62,7 @@ static struct irqaction itu_irq = { | |||
62 | .flags = IRQF_DISABLED | IRQF_TIMER, | 62 | .flags = IRQF_DISABLED | IRQF_TIMER, |
63 | }; | 63 | }; |
64 | 64 | ||
65 | static const int __initdata divide_rate[] = {1, 2, 4, 8}; | 65 | static const int __initconst divide_rate[] = {1, 2, 4, 8}; |
66 | 66 | ||
67 | void __init h8300_timer_setup(void) | 67 | void __init h8300_timer_setup(void) |
68 | { | 68 | { |
diff --git a/arch/h8300/kernel/timer/timer16.c b/arch/h8300/kernel/timer/timer16.c index ae0d38161139..462d9f581719 100644 --- a/arch/h8300/kernel/timer/timer16.c +++ b/arch/h8300/kernel/timer/timer16.c | |||
@@ -57,7 +57,7 @@ static struct irqaction timer16_irq = { | |||
57 | .flags = IRQF_DISABLED | IRQF_TIMER, | 57 | .flags = IRQF_DISABLED | IRQF_TIMER, |
58 | }; | 58 | }; |
59 | 59 | ||
60 | static const int __initdata divide_rate[] = {1, 2, 4, 8}; | 60 | static const int __initconst divide_rate[] = {1, 2, 4, 8}; |
61 | 61 | ||
62 | void __init h8300_timer_setup(void) | 62 | void __init h8300_timer_setup(void) |
63 | { | 63 | { |
diff --git a/arch/h8300/kernel/timer/timer8.c b/arch/h8300/kernel/timer/timer8.c index 7a1533fad47d..505f3415b40f 100644 --- a/arch/h8300/kernel/timer/timer8.c +++ b/arch/h8300/kernel/timer/timer8.c | |||
@@ -77,7 +77,7 @@ static struct irqaction timer8_irq = { | |||
77 | .flags = IRQF_DISABLED | IRQF_TIMER, | 77 | .flags = IRQF_DISABLED | IRQF_TIMER, |
78 | }; | 78 | }; |
79 | 79 | ||
80 | static const int __initdata divide_rate[] = {8, 64, 8192}; | 80 | static const int __initconst divide_rate[] = {8, 64, 8192}; |
81 | 81 | ||
82 | void __init h8300_timer_setup(void) | 82 | void __init h8300_timer_setup(void) |
83 | { | 83 | { |
diff --git a/arch/h8300/kernel/timer/tpu.c b/arch/h8300/kernel/timer/tpu.c index 2193a2e2859a..0350f6204ecf 100644 --- a/arch/h8300/kernel/timer/tpu.c +++ b/arch/h8300/kernel/timer/tpu.c | |||
@@ -66,7 +66,7 @@ static struct irqaction tpu_irq = { | |||
66 | .flags = IRQF_DISABLED | IRQF_TIMER, | 66 | .flags = IRQF_DISABLED | IRQF_TIMER, |
67 | }; | 67 | }; |
68 | 68 | ||
69 | static const int __initdata divide_rate[] = { | 69 | static const int __initconst divide_rate[] = { |
70 | #if CONFIG_H8300_TPU_CH == 0 | 70 | #if CONFIG_H8300_TPU_CH == 0 |
71 | 1,4,16,64,0,0,0,0, | 71 | 1,4,16,64,0,0,0,0, |
72 | #elif (CONFIG_H8300_TPU_CH == 1) || (CONFIG_H8300_TPU_CH == 5) | 72 | #elif (CONFIG_H8300_TPU_CH == 1) || (CONFIG_H8300_TPU_CH == 5) |
diff --git a/arch/h8300/platform/h8300h/irq.c b/arch/h8300/platform/h8300h/irq.c index bc4f51bceef5..0a50353e09d5 100644 --- a/arch/h8300/platform/h8300h/irq.c +++ b/arch/h8300/platform/h8300h/irq.c | |||
@@ -14,14 +14,14 @@ | |||
14 | #include <asm/gpio-internal.h> | 14 | #include <asm/gpio-internal.h> |
15 | #include <asm/regs306x.h> | 15 | #include <asm/regs306x.h> |
16 | 16 | ||
17 | const int __initdata h8300_saved_vectors[] = { | 17 | const int __initconst h8300_saved_vectors[] = { |
18 | #if defined(CONFIG_GDB_DEBUG) | 18 | #if defined(CONFIG_GDB_DEBUG) |
19 | TRAP3_VEC, /* TRAPA #3 is GDB breakpoint */ | 19 | TRAP3_VEC, /* TRAPA #3 is GDB breakpoint */ |
20 | #endif | 20 | #endif |
21 | -1, | 21 | -1, |
22 | }; | 22 | }; |
23 | 23 | ||
24 | const h8300_vector __initdata h8300_trap_table[] = { | 24 | const h8300_vector __initconst h8300_trap_table[] = { |
25 | 0, 0, 0, 0, 0, 0, 0, 0, | 25 | 0, 0, 0, 0, 0, 0, 0, 0, |
26 | system_call, | 26 | system_call, |
27 | 0, | 27 | 0, |
diff --git a/arch/h8300/platform/h8s/irq.c b/arch/h8300/platform/h8s/irq.c index 7b5f29febc07..f3a5511c16b1 100644 --- a/arch/h8300/platform/h8s/irq.c +++ b/arch/h8300/platform/h8s/irq.c | |||
@@ -18,7 +18,7 @@ | |||
18 | #include <asm/regs267x.h> | 18 | #include <asm/regs267x.h> |
19 | 19 | ||
20 | /* saved vector list */ | 20 | /* saved vector list */ |
21 | const int __initdata h8300_saved_vectors[]={ | 21 | const int __initconst h8300_saved_vectors[] = { |
22 | #if defined(CONFIG_GDB_DEBUG) | 22 | #if defined(CONFIG_GDB_DEBUG) |
23 | TRACE_VEC, | 23 | TRACE_VEC, |
24 | TRAP3_VEC, | 24 | TRAP3_VEC, |
@@ -27,7 +27,7 @@ const int __initdata h8300_saved_vectors[]={ | |||
27 | }; | 27 | }; |
28 | 28 | ||
29 | /* trap entry table */ | 29 | /* trap entry table */ |
30 | const H8300_VECTOR __initdata h8300_trap_table[] = { | 30 | const H8300_VECTOR __initconst h8300_trap_table[] = { |
31 | 0,0,0,0,0, | 31 | 0,0,0,0,0, |
32 | trace_break, /* TRACE */ | 32 | trace_break, /* TRACE */ |
33 | 0,0, | 33 | 0,0, |