diff options
Diffstat (limited to 'arch/m32r/kernel')
| -rw-r--r-- | arch/m32r/kernel/m32r_ksyms.c | 29 | ||||
| -rw-r--r-- | arch/m32r/kernel/setup.c | 12 | ||||
| -rw-r--r-- | arch/m32r/kernel/smpboot.c | 19 |
3 files changed, 15 insertions, 45 deletions
diff --git a/arch/m32r/kernel/m32r_ksyms.c b/arch/m32r/kernel/m32r_ksyms.c index be8b711367ec..c50330fa83b9 100644 --- a/arch/m32r/kernel/m32r_ksyms.c +++ b/arch/m32r/kernel/m32r_ksyms.c | |||
| @@ -23,9 +23,6 @@ EXPORT_SYMBOL(boot_cpu_data); | |||
| 23 | EXPORT_SYMBOL(dump_fpu); | 23 | EXPORT_SYMBOL(dump_fpu); |
| 24 | EXPORT_SYMBOL(__ioremap); | 24 | EXPORT_SYMBOL(__ioremap); |
| 25 | EXPORT_SYMBOL(iounmap); | 25 | EXPORT_SYMBOL(iounmap); |
| 26 | EXPORT_SYMBOL(enable_irq); | ||
| 27 | EXPORT_SYMBOL(disable_irq); | ||
| 28 | EXPORT_SYMBOL(disable_irq_nosync); | ||
| 29 | EXPORT_SYMBOL(kernel_thread); | 26 | EXPORT_SYMBOL(kernel_thread); |
| 30 | EXPORT_SYMBOL(__down); | 27 | EXPORT_SYMBOL(__down); |
| 31 | EXPORT_SYMBOL(__down_interruptible); | 28 | EXPORT_SYMBOL(__down_interruptible); |
| @@ -38,13 +35,6 @@ EXPORT_SYMBOL(__udelay); | |||
| 38 | EXPORT_SYMBOL(__delay); | 35 | EXPORT_SYMBOL(__delay); |
| 39 | EXPORT_SYMBOL(__const_udelay); | 36 | EXPORT_SYMBOL(__const_udelay); |
| 40 | 37 | ||
| 41 | EXPORT_SYMBOL(__get_user_1); | ||
| 42 | EXPORT_SYMBOL(__get_user_2); | ||
| 43 | EXPORT_SYMBOL(__get_user_4); | ||
| 44 | |||
| 45 | EXPORT_SYMBOL(strpbrk); | ||
| 46 | EXPORT_SYMBOL(strstr); | ||
| 47 | |||
| 48 | EXPORT_SYMBOL(strncpy_from_user); | 38 | EXPORT_SYMBOL(strncpy_from_user); |
| 49 | EXPORT_SYMBOL(__strncpy_from_user); | 39 | EXPORT_SYMBOL(__strncpy_from_user); |
| 50 | EXPORT_SYMBOL(clear_user); | 40 | EXPORT_SYMBOL(clear_user); |
| @@ -59,11 +49,8 @@ extern void *dcache_dummy; | |||
| 59 | EXPORT_SYMBOL(dcache_dummy); | 49 | EXPORT_SYMBOL(dcache_dummy); |
| 60 | #endif | 50 | #endif |
| 61 | EXPORT_SYMBOL(cpu_data); | 51 | EXPORT_SYMBOL(cpu_data); |
| 62 | EXPORT_SYMBOL(cpu_online_map); | ||
| 63 | EXPORT_SYMBOL(cpu_callout_map); | ||
| 64 | 52 | ||
| 65 | /* Global SMP stuff */ | 53 | /* Global SMP stuff */ |
| 66 | EXPORT_SYMBOL(synchronize_irq); | ||
| 67 | EXPORT_SYMBOL(smp_call_function); | 54 | EXPORT_SYMBOL(smp_call_function); |
| 68 | 55 | ||
| 69 | /* TLB flushing */ | 56 | /* TLB flushing */ |
| @@ -83,27 +70,11 @@ EXPORT_SYMBOL(__lshrdi3); | |||
| 83 | EXPORT_SYMBOL(__muldi3); | 70 | EXPORT_SYMBOL(__muldi3); |
| 84 | 71 | ||
| 85 | /* memory and string operations */ | 72 | /* memory and string operations */ |
| 86 | EXPORT_SYMBOL(memchr); | ||
| 87 | EXPORT_SYMBOL(memcpy); | 73 | EXPORT_SYMBOL(memcpy); |
| 88 | /* EXPORT_SYMBOL(memcpy_fromio); // not implement yet */ | ||
| 89 | /* EXPORT_SYMBOL(memcpy_toio); // not implement yet */ | ||
| 90 | EXPORT_SYMBOL(memset); | 74 | EXPORT_SYMBOL(memset); |
| 91 | /* EXPORT_SYMBOL(memset_io); // not implement yet */ | ||
| 92 | EXPORT_SYMBOL(memmove); | ||
| 93 | EXPORT_SYMBOL(memcmp); | ||
| 94 | EXPORT_SYMBOL(memscan); | ||
| 95 | EXPORT_SYMBOL(copy_page); | 75 | EXPORT_SYMBOL(copy_page); |
| 96 | EXPORT_SYMBOL(clear_page); | 76 | EXPORT_SYMBOL(clear_page); |
| 97 | |||
| 98 | EXPORT_SYMBOL(strcat); | ||
| 99 | EXPORT_SYMBOL(strchr); | ||
| 100 | EXPORT_SYMBOL(strcmp); | ||
| 101 | EXPORT_SYMBOL(strcpy); | ||
| 102 | EXPORT_SYMBOL(strlen); | 77 | EXPORT_SYMBOL(strlen); |
| 103 | EXPORT_SYMBOL(strncat); | ||
| 104 | EXPORT_SYMBOL(strncmp); | ||
| 105 | EXPORT_SYMBOL(strnlen); | ||
| 106 | EXPORT_SYMBOL(strncpy); | ||
| 107 | 78 | ||
| 108 | EXPORT_SYMBOL(_inb); | 79 | EXPORT_SYMBOL(_inb); |
| 109 | EXPORT_SYMBOL(_inw); | 80 | EXPORT_SYMBOL(_inw); |
diff --git a/arch/m32r/kernel/setup.c b/arch/m32r/kernel/setup.c index 0d78942b4c76..3cd3c2988a48 100644 --- a/arch/m32r/kernel/setup.c +++ b/arch/m32r/kernel/setup.c | |||
| @@ -9,6 +9,7 @@ | |||
| 9 | 9 | ||
| 10 | #include <linux/config.h> | 10 | #include <linux/config.h> |
| 11 | #include <linux/init.h> | 11 | #include <linux/init.h> |
| 12 | #include <linux/kernel.h> | ||
| 12 | #include <linux/stddef.h> | 13 | #include <linux/stddef.h> |
| 13 | #include <linux/fs.h> | 14 | #include <linux/fs.h> |
| 14 | #include <linux/sched.h> | 15 | #include <linux/sched.h> |
| @@ -219,8 +220,6 @@ static unsigned long __init setup_memory(void) | |||
| 219 | extern unsigned long setup_memory(void); | 220 | extern unsigned long setup_memory(void); |
| 220 | #endif /* CONFIG_DISCONTIGMEM */ | 221 | #endif /* CONFIG_DISCONTIGMEM */ |
| 221 | 222 | ||
| 222 | #define M32R_PCC_PCATCR 0x00ef7014 /* will move to m32r.h */ | ||
| 223 | |||
| 224 | void __init setup_arch(char **cmdline_p) | 223 | void __init setup_arch(char **cmdline_p) |
| 225 | { | 224 | { |
| 226 | ROOT_DEV = old_decode_dev(ORIG_ROOT_DEV); | 225 | ROOT_DEV = old_decode_dev(ORIG_ROOT_DEV); |
| @@ -269,15 +268,14 @@ void __init setup_arch(char **cmdline_p) | |||
| 269 | paging_init(); | 268 | paging_init(); |
| 270 | } | 269 | } |
| 271 | 270 | ||
| 272 | static struct cpu cpu[NR_CPUS]; | 271 | static struct cpu cpu_devices[NR_CPUS]; |
| 273 | 272 | ||
| 274 | static int __init topology_init(void) | 273 | static int __init topology_init(void) |
| 275 | { | 274 | { |
| 276 | int cpu_id; | 275 | int i; |
| 277 | 276 | ||
| 278 | for (cpu_id = 0; cpu_id < NR_CPUS; cpu_id++) | 277 | for_each_present_cpu(i) |
| 279 | if (cpu_possible(cpu_id)) | 278 | register_cpu(&cpu_devices[i], i, NULL); |
| 280 | register_cpu(&cpu[cpu_id], cpu_id, NULL); | ||
| 281 | 279 | ||
| 282 | return 0; | 280 | return 0; |
| 283 | } | 281 | } |
diff --git a/arch/m32r/kernel/smpboot.c b/arch/m32r/kernel/smpboot.c index d7ec16e7fb25..840b4348bf0c 100644 --- a/arch/m32r/kernel/smpboot.c +++ b/arch/m32r/kernel/smpboot.c | |||
| @@ -39,8 +39,10 @@ | |||
| 39 | * Martin J. Bligh : Added support for multi-quad systems | 39 | * Martin J. Bligh : Added support for multi-quad systems |
| 40 | */ | 40 | */ |
| 41 | 41 | ||
| 42 | #include <linux/module.h> | ||
| 42 | #include <linux/config.h> | 43 | #include <linux/config.h> |
| 43 | #include <linux/init.h> | 44 | #include <linux/init.h> |
| 45 | #include <linux/kernel.h> | ||
| 44 | #include <linux/mm.h> | 46 | #include <linux/mm.h> |
| 45 | #include <linux/smp_lock.h> | 47 | #include <linux/smp_lock.h> |
| 46 | #include <linux/irq.h> | 48 | #include <linux/irq.h> |
| @@ -72,11 +74,15 @@ physid_mask_t phys_cpu_present_map; | |||
| 72 | 74 | ||
| 73 | /* Bitmask of currently online CPUs */ | 75 | /* Bitmask of currently online CPUs */ |
| 74 | cpumask_t cpu_online_map; | 76 | cpumask_t cpu_online_map; |
| 77 | EXPORT_SYMBOL(cpu_online_map); | ||
| 75 | 78 | ||
| 76 | cpumask_t cpu_bootout_map; | 79 | cpumask_t cpu_bootout_map; |
| 77 | cpumask_t cpu_bootin_map; | 80 | cpumask_t cpu_bootin_map; |
| 78 | cpumask_t cpu_callout_map; | ||
| 79 | static cpumask_t cpu_callin_map; | 81 | static cpumask_t cpu_callin_map; |
| 82 | cpumask_t cpu_callout_map; | ||
| 83 | EXPORT_SYMBOL(cpu_callout_map); | ||
| 84 | cpumask_t cpu_possible_map = CPU_MASK_ALL; | ||
| 85 | EXPORT_SYMBOL(cpu_possible_map); | ||
| 80 | 86 | ||
| 81 | /* Per CPU bogomips and other parameters */ | 87 | /* Per CPU bogomips and other parameters */ |
| 82 | struct cpuinfo_m32r cpu_data[NR_CPUS] __cacheline_aligned; | 88 | struct cpuinfo_m32r cpu_data[NR_CPUS] __cacheline_aligned; |
| @@ -110,7 +116,6 @@ static unsigned int calibration_result; | |||
| 110 | 116 | ||
| 111 | void smp_prepare_boot_cpu(void); | 117 | void smp_prepare_boot_cpu(void); |
| 112 | void smp_prepare_cpus(unsigned int); | 118 | void smp_prepare_cpus(unsigned int); |
| 113 | static void smp_tune_scheduling(void); | ||
| 114 | static void init_ipi_lock(void); | 119 | static void init_ipi_lock(void); |
| 115 | static void do_boot_cpu(int); | 120 | static void do_boot_cpu(int); |
| 116 | int __cpu_up(unsigned int); | 121 | int __cpu_up(unsigned int); |
| @@ -177,6 +182,9 @@ void __init smp_prepare_cpus(unsigned int max_cpus) | |||
| 177 | } | 182 | } |
| 178 | for (phys_id = 0 ; phys_id < nr_cpu ; phys_id++) | 183 | for (phys_id = 0 ; phys_id < nr_cpu ; phys_id++) |
| 179 | physid_set(phys_id, phys_cpu_present_map); | 184 | physid_set(phys_id, phys_cpu_present_map); |
| 185 | #ifndef CONFIG_HOTPLUG_CPU | ||
| 186 | cpu_present_map = cpu_possible_map; | ||
| 187 | #endif | ||
| 180 | 188 | ||
| 181 | show_mp_info(nr_cpu); | 189 | show_mp_info(nr_cpu); |
| 182 | 190 | ||
| @@ -186,7 +194,6 @@ void __init smp_prepare_cpus(unsigned int max_cpus) | |||
| 186 | * Setup boot CPU information | 194 | * Setup boot CPU information |
| 187 | */ | 195 | */ |
| 188 | smp_store_cpu_info(0); /* Final full version of the data */ | 196 | smp_store_cpu_info(0); /* Final full version of the data */ |
| 189 | smp_tune_scheduling(); | ||
| 190 | 197 | ||
| 191 | /* | 198 | /* |
| 192 | * If SMP should be disabled, then really disable it! | 199 | * If SMP should be disabled, then really disable it! |
| @@ -230,11 +237,6 @@ smp_done: | |||
| 230 | Dprintk("Boot done.\n"); | 237 | Dprintk("Boot done.\n"); |
| 231 | } | 238 | } |
| 232 | 239 | ||
| 233 | static void __init smp_tune_scheduling(void) | ||
| 234 | { | ||
| 235 | /* Nothing to do. */ | ||
| 236 | } | ||
| 237 | |||
| 238 | /* | 240 | /* |
| 239 | * init_ipi_lock : Initialize IPI locks. | 241 | * init_ipi_lock : Initialize IPI locks. |
| 240 | */ | 242 | */ |
| @@ -629,4 +631,3 @@ static void __init unmap_cpu_to_physid(int cpu_id, int phys_id) | |||
| 629 | physid_2_cpu[phys_id] = -1; | 631 | physid_2_cpu[phys_id] = -1; |
| 630 | cpu_2_physid[cpu_id] = -1; | 632 | cpu_2_physid[cpu_id] = -1; |
| 631 | } | 633 | } |
| 632 | |||
