Subject: linux-next: manual merge of the dt-rh tree with Linus' tree

From: Stephen Rothwell <[email-masked]>
Date: Tue, 13 May 2014 15:10:45 +1000

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                    [email-masked]

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)