lkml.org 
[lkml]   [2014]   [May]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectlinux-next: manual merge of the dt-rh tree with Linus' tree
Hi Rob,

Today's linux-next merge of the dt-rh tree got a conflict in
drivers/of/selftest.c between commit 82c0f5897a87 ("of: selftest: add
deferred probe interrupt test") from Linus' tree and commit
ae7c987bc3a7 ("of/selftest: add testcase for nodes with same name and
address") from the dt-rh tree.

I fixed it up (I think - see below) and can carry the fix as necessary
(no action is required).

--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au

diff --cc drivers/of/selftest.c
index fe70b86bcffb,c93cb4ae5a21..000000000000
--- a/drivers/of/selftest.c
+++ b/drivers/of/selftest.c
@@@ -430,32 -430,23 +430,49 @@@ static void __init of_selftest_match_no

static void __init of_selftest_platform_populate(void)
{
- struct device_node *np, *child;
+ int irq;
+ struct device_node *np;
+ struct platform_device *pdev;
++ struct device_node *child;
+ int rc;
+ struct of_device_id match[] = {
+ { .compatible = "test-device", },
+ {}
+ };

+ np = of_find_node_by_path("/testcase-data");
+ of_platform_populate(np, of_default_bus_match_table, NULL, NULL);
+
+ /* 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");
+ irq = platform_get_irq(pdev, 0);
+ if (irq != -EPROBE_DEFER)
+ selftest(0, "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");
+ irq = platform_get_irq(pdev, 0);
+ if (irq >= 0 || irq == -EPROBE_DEFER)
+ selftest(0, "device parsing error failed - %d\n", irq);
+
+ selftest(1, "passed");
++
+ np = of_find_node_by_path("/testcase-data/platform-tests");
+ if (!np) {
+ pr_err("No testcase data in device tree\n");
+ return;
+ }
+
+ for_each_child_of_node(np, child) {
+ rc = of_platform_populate(child, match, NULL, NULL);
+ selftest(!rc, "Could not create device for node '%s'\n", child->name);
+ }
}

static int __init of_selftest(void)
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2014-05-13 07:41    [W:0.034 / U:0.460 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site