]> err.no Git - linux-2.6/blobdiff - include/asm-sparc64/hypervisor.h
[SPARC64]: Fix uniprocessor IRQ targetting on SUN4V.
[linux-2.6] / include / asm-sparc64 / hypervisor.h
index 16a40f48beb3fb7088ea39cbfe7ecec15816e7d5..cd5fbcd9556e1cb979f586876c735b753d6793cb 100644 (file)
 #define  HV_CPU_QUEUE_RES_ERROR                 0x3e
 #define  HV_CPU_QUEUE_NONRES_ERROR      0x3f
 
+#ifndef __ASSEMBLY__
+extern unsigned long sun4v_cpu_qconf(unsigned long type,
+                                    unsigned long queue_paddr,
+                                    unsigned long num_queue_entries);
+#endif
+
 /* cpu_qinfo()
  * TRAP:       HV_FAST_TRAP
  * FUNCTION:   HV_FAST_CPU_QINFO
@@ -912,7 +918,7 @@ struct hv_fault_status {
  * ARG0:       character
  * RET0:       status
  * ERRORS:     EINVAL          Illegal character
- *             EWOULDBLOCK     Output buffer currentl full, would block
+ *             EWOULDBLOCK     Output buffer currently full, would block
  *
  * Send a character to the console device.  Only character values
  * between 0 and 255 may be used.  Values outside this range are
@@ -1221,6 +1227,10 @@ extern unsigned long sun4v_devino_to_sysino(unsigned long devhandle,
  */
 #define HV_FAST_INTR_GETENABLED                0xa1
 
+#ifndef __ASSEMBLY__
+extern unsigned long sun4v_intr_getenabled(unsigned long sysino);
+#endif
+
 /* intr_setenabled()
  * TRAP:       HV_FAST_TRAP
  * FUNCTION:   HV_FAST_INTR_SETENABLED
@@ -1233,6 +1243,10 @@ extern unsigned long sun4v_devino_to_sysino(unsigned long devhandle,
  */
 #define HV_FAST_INTR_SETENABLED                0xa2
 
+#ifndef __ASSEMBLY__
+extern unsigned long sun4v_intr_setenabled(unsigned long sysino, unsigned long intr_enabled);
+#endif
+
 /* intr_getstate()
  * TRAP:       HV_FAST_TRAP
  * FUNCTION:   HV_FAST_INTR_GETSTATE
@@ -1245,6 +1259,10 @@ extern unsigned long sun4v_devino_to_sysino(unsigned long devhandle,
  */
 #define HV_FAST_INTR_GETSTATE          0xa3
 
+#ifndef __ASSEMBLY__
+extern unsigned long sun4v_intr_getstate(unsigned long sysino);
+#endif
+
 /* intr_setstate()
  * TRAP:       HV_FAST_TRAP
  * FUNCTION:   HV_FAST_INTR_SETSTATE
@@ -1261,6 +1279,10 @@ extern unsigned long sun4v_devino_to_sysino(unsigned long devhandle,
  */
 #define HV_FAST_INTR_SETSTATE          0xa4
 
+#ifndef __ASSEMBLY__
+extern unsigned long sun4v_intr_setstate(unsigned long sysino, unsigned long intr_state);
+#endif
+
 /* intr_gettarget()
  * TRAP:       HV_FAST_TRAP
  * FUNCTION:   HV_FAST_INTR_GETTARGET
@@ -1275,6 +1297,10 @@ extern unsigned long sun4v_devino_to_sysino(unsigned long devhandle,
  */
 #define HV_FAST_INTR_GETTARGET         0xa5
 
+#ifndef __ASSEMBLY__
+extern unsigned long sun4v_intr_gettarget(unsigned long sysino);
+#endif
+
 /* intr_settarget()
  * TRAP:       HV_FAST_TRAP
  * FUNCTION:   HV_FAST_INTR_SETTARGET
@@ -1288,6 +1314,10 @@ extern unsigned long sun4v_devino_to_sysino(unsigned long devhandle,
  */
 #define HV_FAST_INTR_SETTARGET         0xa6
 
+#ifndef __ASSEMBLY__
+extern unsigned long sun4v_intr_settarget(unsigned long sysino, unsigned long cpuid);
+#endif
+
 /* PCI IO services.
  *
  * See the terminology descriptions in the device interrupt services