]> err.no Git - linux-2.6/blobdiff - include/asm-sparc64/oplib.h
[SPARC64]: Fix uniprocessor IRQ targetting on SUN4V.
[linux-2.6] / include / asm-sparc64 / oplib.h
index 3c59b2693fb9639df36b711fc057642a342d2e40..84618f8a9e6e9b6b7bd61d3de9f172afc21544d9 100644 (file)
@@ -39,6 +39,9 @@ extern int prom_stdin, prom_stdout;
 extern int prom_chosen_node;
 
 /* Helper values and strings in arch/sparc64/kernel/head.S */
+extern const char prom_peer_name[];
+extern const char prom_compatible_name[];
+extern const char prom_root_compatible[];
 extern const char prom_finddev_name[];
 extern const char prom_chosen_path[];
 extern const char prom_getprop_name[];
@@ -164,6 +167,7 @@ enum prom_input_device {
        PROMDEV_ITTYA,                  /* input from ttya */
        PROMDEV_ITTYB,                  /* input from ttyb */
        PROMDEV_IRSC,                   /* input from rsc */
+       PROMDEV_IVCONS,                 /* input from virtual-console */
        PROMDEV_I_UNK,
 };
 
@@ -176,6 +180,7 @@ enum prom_output_device {
        PROMDEV_OTTYA,                  /* to ttya */
        PROMDEV_OTTYB,                  /* to ttyb */
        PROMDEV_ORSC,                   /* to rsc */
+       PROMDEV_OVCONS,                 /* to virtual-console */
        PROMDEV_O_UNK,
 };
 
@@ -183,10 +188,18 @@ extern enum prom_output_device prom_query_output_device(void);
 
 /* Multiprocessor operations... */
 #ifdef CONFIG_SMP
-/* Start the CPU with the given device tree node, context table, and context
- * at the passed program counter.
+/* Start the CPU with the given device tree node at the passed program
+ * counter with the given arg passed in via register %o0.
  */
-extern void prom_startcpu(int cpunode, unsigned long pc, unsigned long o0);
+extern void prom_startcpu(int cpunode, unsigned long pc, unsigned long arg);
+
+/* Start the CPU with the given cpu ID at the passed program
+ * counter with the given arg passed in via register %o0.
+ */
+extern void prom_startcpu_cpuid(int cpuid, unsigned long pc, unsigned long arg);
+
+/* Stop the CPU with the given cpu ID.  */
+extern void prom_stopcpu_cpuid(int cpuid);
 
 /* Stop the current CPU. */
 extern void prom_stopself(void);
@@ -335,6 +348,7 @@ int cpu_find_by_mid(int mid, int *prom_node);
 
 /* Client interface level routines. */
 extern void prom_set_trap_table(unsigned long tba);
+extern void prom_set_trap_table_sun4v(unsigned long tba, unsigned long mmfsa);
 
 extern long p1275_cmd(const char *, long, ...);