/* RTAS service tokens */
int ibm_get_xive;
int ibm_set_xive;
+int ibm_int_on;
int ibm_int_off;
struct xics_interrupt_node {
irq, call_status, status);
return;
}
+ /* Now unmask the interrupt (often a no-op) */
+ call_status = rtas_call(ibm_int_on, 1, 1, (unsigned long*)&status,
+ irq);
+ if( call_status != 0 ) {
+ printk("xics_disable_irq on: irq=%x: rtas_call failed, retn=%lx\n",
+ irq, call_status);
+ return;
+ }
}
void
ibm_get_xive = rtas_token("ibm,get-xive");
ibm_set_xive = rtas_token("ibm,set-xive");
+ ibm_int_on = rtas_token("ibm,int-on");
ibm_int_off = rtas_token("ibm,int-off");
np = find_type_devices("PowerPC-External-Interrupt-Presentation");