diff -Nur -x '*.S' -x '*.lds' a/arch/arm/mach-omap2/omap_device.c b/arch/arm/mach-omap2/omap_device.c
--- a/arch/arm/mach-omap2/omap_device.c	2014-02-07 00:05:20.000000000 +0100
+++ b/arch/arm/mach-omap2/omap_device.c	2016-01-10 20:05:46.923487984 +0100
@@ -123,8 +123,8 @@
 	struct omap_device *od;
 	struct omap_hwmod *oh;
 	struct device_node *node = pdev->dev.of_node;
-	const char *oh_name;
-	int oh_cnt, i, ret = 0;
+	const char *oh_name, *rst_name;
+	int oh_cnt, dstr_cnt, i, ret = 0;
 	bool device_active = false;
 
 	oh_cnt = of_property_count_strings(node, "ti,hwmods");
@@ -176,6 +176,26 @@
 		pm_runtime_set_active(&pdev->dev);
 	}
 
+       dstr_cnt =
+               of_property_count_strings(node, "ti,deassert-hard-reset");
+       if (dstr_cnt > 0) {
+               for (i = 0; i < dstr_cnt; i += 2) {
+                       of_property_read_string_index(
+                               node, "ti,deassert-hard-reset", i,
+                               &oh_name);
+                       of_property_read_string_index(
+                               node, "ti,deassert-hard-reset", i+1,
+                               &rst_name);
+                       oh = omap_hwmod_lookup(oh_name);
+                       if (!oh) {
+                               dev_warn(&pdev->dev,
+                               "Cannot parse deassert property for '%s'\n",
+                               oh_name);
+                               break;
+                       }
+                       omap_hwmod_deassert_hardreset(oh, rst_name);
+               }
+       }
 odbfd_exit1:
 	kfree(hwmods);
 odbfd_exit:
diff -Nur -x '*.S' -x '*.lds' a/drivers/uio/uio_pruss.c b/drivers/uio/uio_pruss.c
--- a/drivers/uio/uio_pruss.c	2016-01-10 22:06:02.731071925 +0100
+++ b/drivers/uio/uio_pruss.c	2016-01-10 22:04:52.011075216 +0100
@@ -182,10 +182,6 @@
 			"pins are not configured from the driver\n");
 	else{
 		count = of_get_child_count(dev->dev.of_node);
-		if (!count){
-			dev_info(&dev->dev, "No children\n");
-			return -ENODEV;
-		}
 		// Run through all children. They have lables for easy reference.
 		for_each_child_of_node(dev->dev.of_node, child){
 			enum of_gpio_flags flags;
