瀏覽代碼

of: irq: Ignore disabled interrupt controllers

When searching the system for interrupt controllers, skip over any
that are explicitly disabled.

This makes interrupt controllers consistent with regular devices,
which can be marked as do-not-probe via the status = "disabled" dts
property.

Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Peter Crosthwaite 11 年之前
父節點
當前提交
bf49be02d6
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      drivers/of/irq.c

+ 2 - 1
drivers/of/irq.c

@@ -438,7 +438,8 @@ void __init of_irq_init(const struct of_device_id *matches)
 	INIT_LIST_HEAD(&intc_parent_list);
 	INIT_LIST_HEAD(&intc_parent_list);
 
 
 	for_each_matching_node(np, matches) {
 	for_each_matching_node(np, matches) {
-		if (!of_find_property(np, "interrupt-controller", NULL))
+		if (!of_find_property(np, "interrupt-controller", NULL) ||
+				!of_device_is_available(np))
 			continue;
 			continue;
 		/*
 		/*
 		 * Here, we allocate and populate an intc_desc with the node
 		 * Here, we allocate and populate an intc_desc with the node