Keeping them separate adds a lot of code. Merging them simplifies thewhole scheme. This change makes it so both the tree and linearmethods can be used by the same irq_domain instance. If the hwirq isless than the ->linear_size, then the linear map is used to reversemap the hwirq. Otherwise the radix tree is used.

It also means that complex interrupt controllers can use both thelinear map and a tree in the same domain. This may be useful for aninterrupt controller with a base set of core irqs and a large numberof GPIOs which might be used as irqs. The linear map could cover thecore irqs, and the tree used for thas irqs. The linear map couldcover the core irqs, and the tree used for the gpios.