of/selftest: clean-up of_selftest_platform_populate pass/fail handling
authorRob Herring <robh@kernel.org>
Tue, 13 May 2014 15:07:29 +0000 (10:07 -0500)
committerRob Herring <robh@kernel.org>
Tue, 13 May 2014 19:11:10 +0000 (14:11 -0500)
Move the pass/fail checks into selftest() calls instead of a separate if
condition. Unconditionally calling pass was wrong.

Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Grant Likely <grant.likely@linaro.org>
drivers/of/selftest.c

index fe70b86bcffb9d086edd51c758a17a60ca45cf7b..c1d7d38009f12df612961ef9bac08fd2dabc6be1 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)