]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - arch/powerpc/platforms/pseries/setup.c
[PATCH] powerpc: Fix search for the main interrupt controller
[mirror_ubuntu-bionic-kernel.git] / arch / powerpc / platforms / pseries / setup.c
index 2cb082871210367b7f2610a37e6fcf8924bb5525..38b631ceaec9b169a851ef1ef9c589dce289fa6d 100644 (file)
@@ -324,15 +324,18 @@ static  void __init pSeries_discover_pic(void)
        ppc64_interrupt_controller = IC_INVALID;
        for (np = NULL; (np = of_find_node_by_name(np, "interrupt-controller"));) {
                typep = (char *)get_property(np, "compatible", NULL);
-               if (strstr(typep, "open-pic"))
+               if (strstr(typep, "open-pic")) {
                        ppc64_interrupt_controller = IC_OPEN_PIC;
-               else if (strstr(typep, "ppc-xicp"))
+                       break;
+               } else if (strstr(typep, "ppc-xicp")) {
                        ppc64_interrupt_controller = IC_PPC_XIC;
-               else
-                       printk("pSeries_discover_pic: failed to recognize"
-                              " interrupt-controller\n");
-               break;
+                       break;
+               }
        }
+       if (ppc64_interrupt_controller == IC_INVALID)
+               printk("pSeries_discover_pic: failed to recognize"
+                       " interrupt-controller\n");
+
 }
 
 static void pSeries_mach_cpu_die(void)