Skip to content

Commit

Permalink
Documentation/IRQ-domain.txt: Document irq_domain_create_{linear, tree}
Browse files Browse the repository at this point in the history
They have the same functionalities as irq_domain_add_{linear, tree},
except fro accepting different first argument.

Signed-off-by: Jianyu Zhan <nasa4836@gmail.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
  • Loading branch information
JianyuZhan authored and Jonathan Corbet committed Mar 31, 2016
1 parent 83d26b6 commit dbe7fcd
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions Documentation/IRQ-domain.txt
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ of the reverse map types are described below:

==== Linear ====
irq_domain_add_linear()
irq_domain_create_linear()

The linear reverse map maintains a fixed size table indexed by the
hwirq number. When a hwirq is mapped, an irq_desc is allocated for
Expand All @@ -81,10 +82,16 @@ map are fixed time lookup for IRQ numbers, and irq_descs are only
allocated for in-use IRQs. The disadvantage is that the table must be
as large as the largest possible hwirq number.

irq_domain_add_linear() and irq_domain_create_linear() are functionally
equivalent, except for the first argument is different - the former
accepts an Open Firmware specific 'struct device_node', while the latter
accepts a more general abstraction 'struct fwnode_handle'.

The majority of drivers should use the linear map.

==== Tree ====
irq_domain_add_tree()
irq_domain_create_tree()

The irq_domain maintains a radix tree map from hwirq numbers to Linux
IRQs. When an hwirq is mapped, an irq_desc is allocated and the
Expand All @@ -95,6 +102,11 @@ since it doesn't need to allocate a table as large as the largest
hwirq number. The disadvantage is that hwirq to IRQ number lookup is
dependent on how many entries are in the table.

irq_domain_add_tree() and irq_domain_create_tree() are functionally
equivalent, except for the first argument is different - the former
accepts an Open Firmware specific 'struct device_node', while the latter
accepts a more general abstraction 'struct fwnode_handle'.

Very few drivers should need this mapping.

==== No Map ===-
Expand Down

0 comments on commit dbe7fcd

Please sign in to comment.