of/selftest: clean-up of_selftest_platform_populate pass/fail handling
[cascardo/linux.git] / drivers / of / selftest.c
index fe70b86..c1d7d38 100644 (file)
@@ -440,22 +440,18 @@ static void __init of_selftest_platform_populate(void)
        /* Test that a missing irq domain returns -EPROBE_DEFER */
        np = of_find_node_by_path("/testcase-data/testcase-device1");
        pdev = of_find_device_by_node(np);
-       if (!pdev)
-               selftest(0, "device 1 creation failed\n");
+       selftest(pdev, "device 1 creation failed\n");
+
        irq = platform_get_irq(pdev, 0);
-       if (irq != -EPROBE_DEFER)
-               selftest(0, "device deferred probe failed - %d\n", irq);
+       selftest(irq == -EPROBE_DEFER, "device deferred probe failed - %d\n", irq);
 
        /* Test that a parsing failure does not return -EPROBE_DEFER */
        np = of_find_node_by_path("/testcase-data/testcase-device2");
        pdev = of_find_device_by_node(np);
-       if (!pdev)
-               selftest(0, "device 2 creation failed\n");
+       selftest(pdev, "device 2 creation failed\n");
        irq = platform_get_irq(pdev, 0);
-       if (irq >= 0 || irq == -EPROBE_DEFER)
-               selftest(0, "device parsing error failed - %d\n", irq);
+       selftest(irq < 0 && irq != -EPROBE_DEFER, "device parsing error failed - %d\n", irq);
 
-       selftest(1, "passed");
 }
 
 static int __init of_selftest(void)