diff options
Diffstat (limited to 'arch/arm/kernel/setup.c')
-rw-r--r-- | arch/arm/kernel/setup.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c index 437528403959..9fc9af88c60c 100644 --- a/arch/arm/kernel/setup.c +++ b/arch/arm/kernel/setup.c | |||
@@ -322,6 +322,12 @@ static void __init setup_processor(void) | |||
322 | sprintf(system_utsname.machine, "%s%c", list->arch_name, ENDIANNESS); | 322 | sprintf(system_utsname.machine, "%s%c", list->arch_name, ENDIANNESS); |
323 | sprintf(elf_platform, "%s%c", list->elf_name, ENDIANNESS); | 323 | sprintf(elf_platform, "%s%c", list->elf_name, ENDIANNESS); |
324 | elf_hwcap = list->elf_hwcap; | 324 | elf_hwcap = list->elf_hwcap; |
325 | #ifndef CONFIG_ARM_THUMB | ||
326 | elf_hwcap &= ~HWCAP_THUMB; | ||
327 | #endif | ||
328 | #ifndef CONFIG_VFP | ||
329 | elf_hwcap &= ~HWCAP_VFP; | ||
330 | #endif | ||
325 | 331 | ||
326 | cpu_proc_init(); | 332 | cpu_proc_init(); |
327 | } | 333 | } |
@@ -401,7 +407,7 @@ static void __init early_initrd(char **p) | |||
401 | } | 407 | } |
402 | __early_param("initrd=", early_initrd); | 408 | __early_param("initrd=", early_initrd); |
403 | 409 | ||
404 | static void __init add_memory(unsigned long start, unsigned long size) | 410 | static void __init arm_add_memory(unsigned long start, unsigned long size) |
405 | { | 411 | { |
406 | /* | 412 | /* |
407 | * Ensure that start/size are aligned to a page boundary. | 413 | * Ensure that start/size are aligned to a page boundary. |
@@ -439,7 +445,7 @@ static void __init early_mem(char **p) | |||
439 | if (**p == '@') | 445 | if (**p == '@') |
440 | start = memparse(*p + 1, p); | 446 | start = memparse(*p + 1, p); |
441 | 447 | ||
442 | add_memory(start, size); | 448 | arm_add_memory(start, size); |
443 | } | 449 | } |
444 | __early_param("mem=", early_mem); | 450 | __early_param("mem=", early_mem); |
445 | 451 | ||
@@ -581,7 +587,7 @@ static int __init parse_tag_mem32(const struct tag *tag) | |||
581 | tag->u.mem.start, tag->u.mem.size / 1024); | 587 | tag->u.mem.start, tag->u.mem.size / 1024); |
582 | return -EINVAL; | 588 | return -EINVAL; |
583 | } | 589 | } |
584 | add_memory(tag->u.mem.start, tag->u.mem.size); | 590 | arm_add_memory(tag->u.mem.start, tag->u.mem.size); |
585 | return 0; | 591 | return 0; |
586 | } | 592 | } |
587 | 593 | ||
@@ -801,7 +807,7 @@ static int __init topology_init(void) | |||
801 | { | 807 | { |
802 | int cpu; | 808 | int cpu; |
803 | 809 | ||
804 | for_each_cpu(cpu) | 810 | for_each_possible_cpu(cpu) |
805 | register_cpu(&per_cpu(cpu_data, cpu).cpu, cpu, NULL); | 811 | register_cpu(&per_cpu(cpu_data, cpu).cpu, cpu, NULL); |
806 | 812 | ||
807 | return 0; | 813 | return 0; |