31 #include <linux/sched.h>
32 #include <linux/kernel.h>
33 #include <linux/export.h>
35 #include <linux/stddef.h>
37 #include <linux/reboot.h>
47 #include <asm/processor.h>
50 #include <asm/machdep.h>
51 #include <asm/cputable.h>
67 static char celleb_machine_type[128] =
"Celleb";
69 static void celleb_show_cpuinfo(
struct seq_file *
m)
72 const char *
model =
"";
78 seq_printf(m,
"machine\t\t: %s %s\n", celleb_machine_type, model);
82 static int __init celleb_machine_type_hack(
char *
ptr)
84 strlcpy(celleb_machine_type, ptr,
sizeof(celleb_machine_type));
88 __setup(
"celleb_machine_type_hack=", celleb_machine_type_hack);
90 static void celleb_progress(
char *
s,
unsigned short hex)
92 printk(
"*** %04x : %s\n", hex, s ? s :
"");
95 static void __init celleb_setup_arch_common(
void)
100 #ifdef CONFIG_DUMMY_CONSOLE
111 static int __init celleb_publish_devices(
void)
114 of_platform_bus_probe(
NULL, celleb_bus_ids,
NULL);
125 static void __init celleb_setup_arch_beat(
void)
127 #ifdef CONFIG_SPU_BASE
132 celleb_setup_arch_common();
135 static int __init celleb_probe_beat(
void)
137 unsigned long root = of_get_flat_dt_root();
139 if (!of_flat_dt_is_compatible(root,
"Beat"))
142 powerpc_firmware_features |= FW_FEATURE_CELLEB_ALWAYS
143 | FW_FEATURE_BEAT | FW_FEATURE_LPAR;
153 static void __init celleb_init_IRQ_native(
void)
159 static void __init celleb_setup_arch_native(
void)
161 #ifdef CONFIG_SPU_BASE
168 #ifdef CONFIG_CBE_RAS
180 celleb_setup_arch_common();
183 static int __init celleb_probe_native(
void)
185 unsigned long root = of_get_flat_dt_root();
187 if (of_flat_dt_is_compatible(root,
"Beat") ||
188 !of_flat_dt_is_compatible(root,
"TOSHIBA,Celleb"))
191 powerpc_firmware_features |= FW_FEATURE_CELLEB_ALWAYS;
202 .name =
"Cell Reference Set (Beat)",
203 .probe = celleb_probe_beat,
204 .setup_arch = celleb_setup_arch_beat,
205 .show_cpuinfo = celleb_show_cpuinfo,
212 .progress = celleb_progress,
228 .name =
"Cell Reference Set (native)",
229 .probe = celleb_probe_native,
230 .setup_arch = celleb_setup_arch_native,
231 .show_cpuinfo = celleb_show_cpuinfo,
239 .progress = celleb_progress,
242 .init_IRQ = celleb_init_IRQ_native,