Merge branch 'linus' into x86/cleanups
[firefly-linux-kernel-4.4.55.git] / arch / alpha / kernel / sys_dp264.c
index b28c8f1c6e10b078fb0b1173ce64ad538bc23dda..ab44c164d9d47e95ae80d84bd96fd39b9cf927a9 100644 (file)
@@ -12,7 +12,6 @@
  * Code supporting the DP264 (EV6+TSUNAMI).
  */
 
-#include <linux/config.h>
 #include <linux/kernel.h>
 #include <linux/types.h>
 #include <linux/mm.h>
@@ -178,19 +177,19 @@ cpu_set_irq_affinity(unsigned int irq, cpumask_t affinity)
 }
 
 static void
-dp264_set_affinity(unsigned int irq, cpumask_t affinity)
+dp264_set_affinity(unsigned int irq, const struct cpumask *affinity)
 { 
        spin_lock(&dp264_irq_lock);
-       cpu_set_irq_affinity(irq, affinity);
+       cpu_set_irq_affinity(irq, *affinity);
        tsunami_update_irq_hw(cached_irq_mask);
        spin_unlock(&dp264_irq_lock);
 }
 
 static void
-clipper_set_affinity(unsigned int irq, cpumask_t affinity)
+clipper_set_affinity(unsigned int irq, const struct cpumask *affinity)
 { 
        spin_lock(&dp264_irq_lock);
-       cpu_set_irq_affinity(irq - 16, affinity);
+       cpu_set_irq_affinity(irq - 16, *affinity);
        tsunami_update_irq_hw(cached_irq_mask);
        spin_unlock(&dp264_irq_lock);
 }
@@ -218,7 +217,7 @@ static struct hw_interrupt_type clipper_irq_type = {
 };
 
 static void
-dp264_device_interrupt(unsigned long vector, struct pt_regs * regs)
+dp264_device_interrupt(unsigned long vector)
 {
 #if 1
        printk("dp264_device_interrupt: NOT IMPLEMENTED YET!! \n");
@@ -237,9 +236,9 @@ dp264_device_interrupt(unsigned long vector, struct pt_regs * regs)
                i = ffz(~pld);
                pld &= pld - 1; /* clear least bit set */
                if (i == 55)
-                       isa_device_interrupt(vector, regs);
+                       isa_device_interrupt(vector);
                else
-                       handle_irq(16 + i, 16 + i, regs);
+                       handle_irq(16 + i);
 #if 0
                TSUNAMI_cchip->dir0.csr = 1UL << i; mb();
                tmp = TSUNAMI_cchip->dir0.csr;
@@ -249,7 +248,7 @@ dp264_device_interrupt(unsigned long vector, struct pt_regs * regs)
 }
 
 static void 
-dp264_srm_device_interrupt(unsigned long vector, struct pt_regs * regs)
+dp264_srm_device_interrupt(unsigned long vector)
 {
        int irq;
 
@@ -269,11 +268,11 @@ dp264_srm_device_interrupt(unsigned long vector, struct pt_regs * regs)
        if (irq >= 32)
                irq -= 16;
 
-       handle_irq(irq, regs);
+       handle_irq(irq);
 }
 
 static void 
-clipper_srm_device_interrupt(unsigned long vector, struct pt_regs * regs)
+clipper_srm_device_interrupt(unsigned long vector)
 {
        int irq;
 
@@ -291,7 +290,7 @@ clipper_srm_device_interrupt(unsigned long vector, struct pt_regs * regs)
         *
         * Eg IRQ 24 is DRIR bit 8, etc, etc
         */
-       handle_irq(irq, regs);
+       handle_irq(irq);
 }
 
 static void __init
@@ -544,6 +543,7 @@ dp264_init_pci(void)
 {
        common_init_pci();
        SMC669_Init(0);
+       locate_and_init_vga(NULL);
 }
 
 static void __init
@@ -552,6 +552,14 @@ monet_init_pci(void)
        common_init_pci();
        SMC669_Init(1);
        es1888_init();
+       locate_and_init_vga(NULL);
+}
+
+static void __init
+clipper_init_pci(void)
+{
+       common_init_pci();
+       locate_and_init_vga(NULL);
 }
 
 static void __init
@@ -656,7 +664,7 @@ struct alpha_machine_vector clipper_mv __initmv = {
        .init_arch              = tsunami_init_arch,
        .init_irq               = clipper_init_irq,
        .init_rtc               = common_init_rtc,
-       .init_pci               = common_init_pci,
+       .init_pci               = clipper_init_pci,
        .kill_arch              = tsunami_kill_arch,
        .pci_map_irq            = clipper_map_irq,
        .pci_swizzle            = common_swizzle,