Browse Source

ARM: at91/dma: DMA controller registering with DT support

Device tree support on at91sam9g45 family SoC. Only call
platform_device_register() if no dma-controller node is
found in device tree.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Nicolas Ferre 13 years ago
parent
commit
851c52b23c
1 changed files with 9 additions and 1 deletions
  1. 9 1
      arch/arm/mach-at91/at91sam9g45_devices.c

+ 9 - 1
arch/arm/mach-at91/at91sam9g45_devices.c

@@ -64,7 +64,15 @@ static struct platform_device at_hdmac_device = {
 
 void __init at91_add_device_hdmac(void)
 {
-	platform_device_register(&at_hdmac_device);
+#if defined(CONFIG_OF)
+	struct device_node *of_node =
+		of_find_node_by_name(NULL, "dma-controller");
+
+	if (of_node)
+		of_node_put(of_node);
+	else
+#endif
+		platform_device_register(&at_hdmac_device);
 }
 #else
 void __init at91_add_device_hdmac(void) {}