diff options
| author | Ingo Molnar <mingo@elte.hu> | 2008-10-12 09:17:14 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-10-12 09:17:14 -0400 |
| commit | 620f2efcdc5c7a2db68da41bc3df3cf9a718024e (patch) | |
| tree | b1a0411e2588953777d0b10245b12044c33cef54 /arch/m32r/kernel | |
| parent | 04944b793e18ece23f63c0252646b310c1845940 (diff) | |
| parent | fd048088306656824958e7783ffcee27e241b361 (diff) | |
Merge branch 'linus' into x86/xsave
Diffstat (limited to 'arch/m32r/kernel')
| -rw-r--r-- | arch/m32r/kernel/entry.S | 2 | ||||
| -rw-r--r-- | arch/m32r/kernel/head.S | 1 | ||||
| -rw-r--r-- | arch/m32r/kernel/irq.c | 6 | ||||
| -rw-r--r-- | arch/m32r/kernel/m32r_ksyms.c | 2 | ||||
| -rw-r--r-- | arch/m32r/kernel/process.c | 30 | ||||
| -rw-r--r-- | arch/m32r/kernel/smp.c | 4 | ||||
| -rw-r--r-- | arch/m32r/kernel/smpboot.c | 2 | ||||
| -rw-r--r-- | arch/m32r/kernel/time.c | 5 | ||||
| -rw-r--r-- | arch/m32r/kernel/traps.c | 8 |
9 files changed, 15 insertions, 45 deletions
diff --git a/arch/m32r/kernel/entry.S b/arch/m32r/kernel/entry.S index d4eaa2fd1818..612d35b082a6 100644 --- a/arch/m32r/kernel/entry.S +++ b/arch/m32r/kernel/entry.S | |||
| @@ -143,7 +143,7 @@ ret_from_intr: | |||
| 143 | and3 r4, r4, #0x8000 ; check BSM bit | 143 | and3 r4, r4, #0x8000 ; check BSM bit |
| 144 | #endif | 144 | #endif |
| 145 | beqz r4, resume_kernel | 145 | beqz r4, resume_kernel |
| 146 | ENTRY(resume_userspace) | 146 | resume_userspace: |
| 147 | DISABLE_INTERRUPTS(r4) ; make sure we don't miss an interrupt | 147 | DISABLE_INTERRUPTS(r4) ; make sure we don't miss an interrupt |
| 148 | ; setting need_resched or sigpending | 148 | ; setting need_resched or sigpending |
| 149 | ; between sampling and the iret | 149 | ; between sampling and the iret |
diff --git a/arch/m32r/kernel/head.S b/arch/m32r/kernel/head.S index dab7436d7bbe..40180778a5c7 100644 --- a/arch/m32r/kernel/head.S +++ b/arch/m32r/kernel/head.S | |||
| @@ -29,7 +29,6 @@ __INITDATA | |||
| 29 | .global _end | 29 | .global _end |
| 30 | ENTRY(stext) | 30 | ENTRY(stext) |
| 31 | ENTRY(_stext) | 31 | ENTRY(_stext) |
| 32 | ENTRY(startup_32) | ||
| 33 | /* Setup up the stack pointer */ | 32 | /* Setup up the stack pointer */ |
| 34 | LDIMM (r0, spi_stack_top) | 33 | LDIMM (r0, spi_stack_top) |
| 35 | LDIMM (r1, spu_stack_top) | 34 | LDIMM (r1, spu_stack_top) |
diff --git a/arch/m32r/kernel/irq.c b/arch/m32r/kernel/irq.c index d0c5b0b7da2f..2aeae4670098 100644 --- a/arch/m32r/kernel/irq.c +++ b/arch/m32r/kernel/irq.c | |||
| @@ -22,9 +22,6 @@ | |||
| 22 | #include <linux/module.h> | 22 | #include <linux/module.h> |
| 23 | #include <asm/uaccess.h> | 23 | #include <asm/uaccess.h> |
| 24 | 24 | ||
| 25 | atomic_t irq_err_count; | ||
| 26 | atomic_t irq_mis_count; | ||
| 27 | |||
| 28 | /* | 25 | /* |
| 29 | * Generic, controller-independent functions: | 26 | * Generic, controller-independent functions: |
| 30 | */ | 27 | */ |
| @@ -63,9 +60,6 @@ int show_interrupts(struct seq_file *p, void *v) | |||
| 63 | seq_putc(p, '\n'); | 60 | seq_putc(p, '\n'); |
| 64 | skip: | 61 | skip: |
| 65 | spin_unlock_irqrestore(&irq_desc[i].lock, flags); | 62 | spin_unlock_irqrestore(&irq_desc[i].lock, flags); |
| 66 | } else if (i == NR_IRQS) { | ||
| 67 | seq_printf(p, "ERR: %10u\n", atomic_read(&irq_err_count)); | ||
| 68 | seq_printf(p, "MIS: %10u\n", atomic_read(&irq_mis_count)); | ||
| 69 | } | 63 | } |
| 70 | return 0; | 64 | return 0; |
| 71 | } | 65 | } |
diff --git a/arch/m32r/kernel/m32r_ksyms.c b/arch/m32r/kernel/m32r_ksyms.c index 16bcb189a383..22624b51d4d3 100644 --- a/arch/m32r/kernel/m32r_ksyms.c +++ b/arch/m32r/kernel/m32r_ksyms.c | |||
| @@ -14,6 +14,7 @@ | |||
| 14 | #include <asm/delay.h> | 14 | #include <asm/delay.h> |
| 15 | #include <asm/irq.h> | 15 | #include <asm/irq.h> |
| 16 | #include <asm/tlbflush.h> | 16 | #include <asm/tlbflush.h> |
| 17 | #include <asm/pgtable.h> | ||
| 17 | 18 | ||
| 18 | /* platform dependent support */ | 19 | /* platform dependent support */ |
| 19 | EXPORT_SYMBOL(boot_cpu_data); | 20 | EXPORT_SYMBOL(boot_cpu_data); |
| @@ -65,6 +66,7 @@ EXPORT_SYMBOL(memset); | |||
| 65 | EXPORT_SYMBOL(copy_page); | 66 | EXPORT_SYMBOL(copy_page); |
| 66 | EXPORT_SYMBOL(clear_page); | 67 | EXPORT_SYMBOL(clear_page); |
| 67 | EXPORT_SYMBOL(strlen); | 68 | EXPORT_SYMBOL(strlen); |
| 69 | EXPORT_SYMBOL(empty_zero_page); | ||
| 68 | 70 | ||
| 69 | EXPORT_SYMBOL(_inb); | 71 | EXPORT_SYMBOL(_inb); |
| 70 | EXPORT_SYMBOL(_inw); | 72 | EXPORT_SYMBOL(_inw); |
diff --git a/arch/m32r/kernel/process.c b/arch/m32r/kernel/process.c index a689e2978b6e..5be4faaf5b1c 100644 --- a/arch/m32r/kernel/process.c +++ b/arch/m32r/kernel/process.c | |||
| @@ -35,8 +35,6 @@ | |||
| 35 | 35 | ||
| 36 | #include <linux/err.h> | 36 | #include <linux/err.h> |
| 37 | 37 | ||
| 38 | static int hlt_counter=0; | ||
| 39 | |||
| 40 | /* | 38 | /* |
| 41 | * Return saved PC of a blocked thread. | 39 | * Return saved PC of a blocked thread. |
| 42 | */ | 40 | */ |
| @@ -48,31 +46,16 @@ unsigned long thread_saved_pc(struct task_struct *tsk) | |||
| 48 | /* | 46 | /* |
| 49 | * Powermanagement idle function, if any.. | 47 | * Powermanagement idle function, if any.. |
| 50 | */ | 48 | */ |
| 51 | void (*pm_idle)(void) = NULL; | 49 | static void (*pm_idle)(void) = NULL; |
| 52 | EXPORT_SYMBOL(pm_idle); | ||
| 53 | 50 | ||
| 54 | void (*pm_power_off)(void) = NULL; | 51 | void (*pm_power_off)(void) = NULL; |
| 55 | EXPORT_SYMBOL(pm_power_off); | 52 | EXPORT_SYMBOL(pm_power_off); |
| 56 | 53 | ||
| 57 | void disable_hlt(void) | ||
| 58 | { | ||
| 59 | hlt_counter++; | ||
| 60 | } | ||
| 61 | |||
| 62 | EXPORT_SYMBOL(disable_hlt); | ||
| 63 | |||
| 64 | void enable_hlt(void) | ||
| 65 | { | ||
| 66 | hlt_counter--; | ||
| 67 | } | ||
| 68 | |||
| 69 | EXPORT_SYMBOL(enable_hlt); | ||
| 70 | |||
| 71 | /* | 54 | /* |
| 72 | * We use this is we don't have any better | 55 | * We use this is we don't have any better |
| 73 | * idle routine.. | 56 | * idle routine.. |
| 74 | */ | 57 | */ |
| 75 | void default_idle(void) | 58 | static void default_idle(void) |
| 76 | { | 59 | { |
| 77 | /* M32R_FIXME: Please use "cpu_sleep" mode. */ | 60 | /* M32R_FIXME: Please use "cpu_sleep" mode. */ |
| 78 | cpu_relax(); | 61 | cpu_relax(); |
| @@ -260,15 +243,6 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long spu, | |||
| 260 | return 0; | 243 | return 0; |
| 261 | } | 244 | } |
| 262 | 245 | ||
| 263 | /* | ||
| 264 | * Capture the user space registers if the task is not running (in user space) | ||
| 265 | */ | ||
| 266 | int dump_task_regs(struct task_struct *tsk, elf_gregset_t *regs) | ||
| 267 | { | ||
| 268 | /* M32R_FIXME */ | ||
| 269 | return 1; | ||
| 270 | } | ||
| 271 | |||
| 272 | asmlinkage int sys_fork(unsigned long r0, unsigned long r1, unsigned long r2, | 246 | asmlinkage int sys_fork(unsigned long r0, unsigned long r1, unsigned long r2, |
| 273 | unsigned long r3, unsigned long r4, unsigned long r5, unsigned long r6, | 247 | unsigned long r3, unsigned long r4, unsigned long r5, unsigned long r6, |
| 274 | struct pt_regs regs) | 248 | struct pt_regs regs) |
diff --git a/arch/m32r/kernel/smp.c b/arch/m32r/kernel/smp.c index 7577f971ea4e..929e5c9d3ad9 100644 --- a/arch/m32r/kernel/smp.c +++ b/arch/m32r/kernel/smp.c | |||
| @@ -84,7 +84,7 @@ void smp_send_timer(void); | |||
| 84 | void smp_ipi_timer_interrupt(struct pt_regs *); | 84 | void smp_ipi_timer_interrupt(struct pt_regs *); |
| 85 | void smp_local_timer_interrupt(void); | 85 | void smp_local_timer_interrupt(void); |
| 86 | 86 | ||
| 87 | void send_IPI_allbutself(int, int); | 87 | static void send_IPI_allbutself(int, int); |
| 88 | static void send_IPI_mask(cpumask_t, int, int); | 88 | static void send_IPI_mask(cpumask_t, int, int); |
| 89 | unsigned long send_IPI_mask_phys(cpumask_t, int, int); | 89 | unsigned long send_IPI_mask_phys(cpumask_t, int, int); |
| 90 | 90 | ||
| @@ -722,7 +722,7 @@ void smp_local_timer_interrupt(void) | |||
| 722 | * ---------- --- -------------------------------------------------------- | 722 | * ---------- --- -------------------------------------------------------- |
| 723 | * | 723 | * |
| 724 | *==========================================================================*/ | 724 | *==========================================================================*/ |
| 725 | void send_IPI_allbutself(int ipi_num, int try) | 725 | static void send_IPI_allbutself(int ipi_num, int try) |
| 726 | { | 726 | { |
| 727 | cpumask_t cpumask; | 727 | cpumask_t cpumask; |
| 728 | 728 | ||
diff --git a/arch/m32r/kernel/smpboot.c b/arch/m32r/kernel/smpboot.c index 2c03ac1d005f..fc2994811f15 100644 --- a/arch/m32r/kernel/smpboot.c +++ b/arch/m32r/kernel/smpboot.c | |||
| @@ -498,6 +498,8 @@ static void __init smp_online(void) | |||
| 498 | { | 498 | { |
| 499 | int cpu_id = smp_processor_id(); | 499 | int cpu_id = smp_processor_id(); |
| 500 | 500 | ||
| 501 | notify_cpu_starting(cpu_id); | ||
| 502 | |||
| 501 | local_irq_enable(); | 503 | local_irq_enable(); |
| 502 | 504 | ||
| 503 | /* Get our bogomips. */ | 505 | /* Get our bogomips. */ |
diff --git a/arch/m32r/kernel/time.c b/arch/m32r/kernel/time.c index 994cc1556355..6ea017727cce 100644 --- a/arch/m32r/kernel/time.c +++ b/arch/m32r/kernel/time.c | |||
| @@ -34,7 +34,6 @@ | |||
| 34 | #include <asm/hw_irq.h> | 34 | #include <asm/hw_irq.h> |
| 35 | 35 | ||
| 36 | #ifdef CONFIG_SMP | 36 | #ifdef CONFIG_SMP |
| 37 | extern void send_IPI_allbutself(int, int); | ||
| 38 | extern void smp_local_timer_interrupt(void); | 37 | extern void smp_local_timer_interrupt(void); |
| 39 | #endif | 38 | #endif |
| 40 | 39 | ||
| @@ -188,7 +187,7 @@ static long last_rtc_update = 0; | |||
| 188 | * timer_interrupt() needs to keep up the real-time clock, | 187 | * timer_interrupt() needs to keep up the real-time clock, |
| 189 | * as well as call the "do_timer()" routine every clocktick | 188 | * as well as call the "do_timer()" routine every clocktick |
| 190 | */ | 189 | */ |
| 191 | irqreturn_t timer_interrupt(int irq, void *dev_id) | 190 | static irqreturn_t timer_interrupt(int irq, void *dev_id) |
| 192 | { | 191 | { |
| 193 | #ifndef CONFIG_SMP | 192 | #ifndef CONFIG_SMP |
| 194 | profile_tick(CPU_PROFILING); | 193 | profile_tick(CPU_PROFILING); |
| @@ -228,7 +227,7 @@ irqreturn_t timer_interrupt(int irq, void *dev_id) | |||
| 228 | return IRQ_HANDLED; | 227 | return IRQ_HANDLED; |
| 229 | } | 228 | } |
| 230 | 229 | ||
| 231 | struct irqaction irq0 = { | 230 | static struct irqaction irq0 = { |
| 232 | .handler = timer_interrupt, | 231 | .handler = timer_interrupt, |
| 233 | .flags = IRQF_DISABLED, | 232 | .flags = IRQF_DISABLED, |
| 234 | .mask = CPU_MASK_NONE, | 233 | .mask = CPU_MASK_NONE, |
diff --git a/arch/m32r/kernel/traps.c b/arch/m32r/kernel/traps.c index 46159a4e644b..03b14e55cd89 100644 --- a/arch/m32r/kernel/traps.c +++ b/arch/m32r/kernel/traps.c | |||
| @@ -61,7 +61,7 @@ extern unsigned long eit_vector[]; | |||
| 61 | ((unsigned long)func - (unsigned long)eit_vector - entry*4)/4 \ | 61 | ((unsigned long)func - (unsigned long)eit_vector - entry*4)/4 \ |
| 62 | + 0xff000000UL | 62 | + 0xff000000UL |
| 63 | 63 | ||
| 64 | void set_eit_vector_entries(void) | 64 | static void set_eit_vector_entries(void) |
| 65 | { | 65 | { |
| 66 | extern void default_eit_handler(void); | 66 | extern void default_eit_handler(void); |
| 67 | extern void system_call(void); | 67 | extern void system_call(void); |
| @@ -121,9 +121,9 @@ void __init trap_init(void) | |||
| 121 | cpu_init(); | 121 | cpu_init(); |
| 122 | } | 122 | } |
| 123 | 123 | ||
| 124 | int kstack_depth_to_print = 24; | 124 | static int kstack_depth_to_print = 24; |
| 125 | 125 | ||
| 126 | void show_trace(struct task_struct *task, unsigned long *stack) | 126 | static void show_trace(struct task_struct *task, unsigned long *stack) |
| 127 | { | 127 | { |
| 128 | unsigned long addr; | 128 | unsigned long addr; |
| 129 | 129 | ||
| @@ -224,7 +224,7 @@ bad: | |||
| 224 | printk("\n"); | 224 | printk("\n"); |
| 225 | } | 225 | } |
| 226 | 226 | ||
| 227 | DEFINE_SPINLOCK(die_lock); | 227 | static DEFINE_SPINLOCK(die_lock); |
| 228 | 228 | ||
| 229 | void die(const char * str, struct pt_regs * regs, long err) | 229 | void die(const char * str, struct pt_regs * regs, long err) |
| 230 | { | 230 | { |
