CRIS: Register cpus in kernel/setup.c
Also, fix some white space errors, and constify cpuinfo_op.
This commit is contained in:
@@ -18,7 +18,7 @@
|
|||||||
#include <linux/screen_info.h>
|
#include <linux/screen_info.h>
|
||||||
#include <linux/utsname.h>
|
#include <linux/utsname.h>
|
||||||
#include <linux/pfn.h>
|
#include <linux/pfn.h>
|
||||||
|
#include <linux/cpu.h>
|
||||||
#include <asm/setup.h>
|
#include <asm/setup.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -36,6 +36,8 @@ extern unsigned long dram_start, dram_end;
|
|||||||
|
|
||||||
extern unsigned long romfs_start, romfs_length, romfs_in_flash; /* from head.S */
|
extern unsigned long romfs_start, romfs_length, romfs_in_flash; /* from head.S */
|
||||||
|
|
||||||
|
static struct cpu cpu_devices[NR_CPUS];
|
||||||
|
|
||||||
extern void show_etrax_copyright(void); /* arch-vX/kernel/setup.c */
|
extern void show_etrax_copyright(void); /* arch-vX/kernel/setup.c */
|
||||||
|
|
||||||
/* This mainly sets up the memory area, and can be really confusing.
|
/* This mainly sets up the memory area, and can be really confusing.
|
||||||
@@ -45,24 +47,23 @@ extern void show_etrax_copyright(void); /* arch-vX/kernel/setup.c */
|
|||||||
* given by the macro __pa().
|
* given by the macro __pa().
|
||||||
*
|
*
|
||||||
* In this DRAM, the kernel code and data is loaded, in the beginning.
|
* In this DRAM, the kernel code and data is loaded, in the beginning.
|
||||||
* It really starts at c0004000 to make room for some special pages -
|
* It really starts at c0004000 to make room for some special pages -
|
||||||
* the start address is text_start. The kernel data ends at _end. After
|
* the start address is text_start. The kernel data ends at _end. After
|
||||||
* this the ROM filesystem is appended (if there is any).
|
* this the ROM filesystem is appended (if there is any).
|
||||||
*
|
*
|
||||||
* Between this address and dram_end, we have RAM pages usable to the
|
* Between this address and dram_end, we have RAM pages usable to the
|
||||||
* boot code and the system.
|
* boot code and the system.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void __init
|
void __init setup_arch(char **cmdline_p)
|
||||||
setup_arch(char **cmdline_p)
|
|
||||||
{
|
{
|
||||||
extern void init_etrax_debug(void);
|
extern void init_etrax_debug(void);
|
||||||
unsigned long bootmap_size;
|
unsigned long bootmap_size;
|
||||||
unsigned long start_pfn, max_pfn;
|
unsigned long start_pfn, max_pfn;
|
||||||
unsigned long memory_start;
|
unsigned long memory_start;
|
||||||
|
|
||||||
/* register an initial console printing routine for printk's */
|
/* register an initial console printing routine for printk's */
|
||||||
|
|
||||||
init_etrax_debug();
|
init_etrax_debug();
|
||||||
|
|
||||||
@@ -121,7 +122,7 @@ setup_arch(char **cmdline_p)
|
|||||||
min_low_pfn = PAGE_OFFSET >> PAGE_SHIFT;
|
min_low_pfn = PAGE_OFFSET >> PAGE_SHIFT;
|
||||||
|
|
||||||
bootmap_size = init_bootmem_node(NODE_DATA(0), start_pfn,
|
bootmap_size = init_bootmem_node(NODE_DATA(0), start_pfn,
|
||||||
min_low_pfn,
|
min_low_pfn,
|
||||||
max_low_pfn);
|
max_low_pfn);
|
||||||
|
|
||||||
/* And free all memory not belonging to the kernel (addr, size) */
|
/* And free all memory not belonging to the kernel (addr, size) */
|
||||||
@@ -180,11 +181,23 @@ static void c_stop(struct seq_file *m, void *v)
|
|||||||
|
|
||||||
extern int show_cpuinfo(struct seq_file *m, void *v);
|
extern int show_cpuinfo(struct seq_file *m, void *v);
|
||||||
|
|
||||||
struct seq_operations cpuinfo_op = {
|
const struct seq_operations cpuinfo_op = {
|
||||||
.start = c_start,
|
.start = c_start,
|
||||||
.next = c_next,
|
.next = c_next,
|
||||||
.stop = c_stop,
|
.stop = c_stop,
|
||||||
.show = show_cpuinfo,
|
.show = show_cpuinfo,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static int __init topology_init(void)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for_each_possible_cpu(i) {
|
||||||
|
return register_cpu(&cpu_devices[i], i);
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
subsys_initcall(topology_init);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user