linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / drivers / atm / fore200e.c
index 9862213..05983a3 100644 (file)
@@ -25,6 +25,7 @@
 */
 
 
+#include <linux/config.h>
 #include <linux/kernel.h>
 #include <linux/slab.h>
 #include <linux/init.h>
@@ -166,9 +167,13 @@ fore200e_atm2fore_aal(int aal)
 static char*
 fore200e_irq_itoa(int irq)
 {
+#if defined(__sparc_v9__)
+    return __irq_itoa(irq);
+#else
     static char str[8];
     sprintf(str, "%d", irq);
     return str;
+#endif
 }
 
 
@@ -2123,7 +2128,7 @@ fore200e_change_qos(struct atm_vcc* vcc,struct atm_qos* qos, int flags)
 static int __devinit
 fore200e_irq_request(struct fore200e* fore200e)
 {
-    if (request_irq(fore200e->irq, fore200e_interrupt, IRQF_SHARED, fore200e->name, fore200e->atm_dev) < 0) {
+    if (request_irq(fore200e->irq, fore200e_interrupt, SA_SHIRQ, fore200e->name, fore200e->atm_dev) < 0) {
 
        printk(FORE200E "unable to reserve IRQ %s for device %s\n",
               fore200e_irq_itoa(fore200e->irq), fore200e->name);