|
@@ -676,47 +676,6 @@ static struct device_node *of_irq_find_parent(struct device_node *child)
|
|
|
return p;
|
|
|
}
|
|
|
|
|
|
-/* This doesn't need to be called if you don't have any special workaround
|
|
|
- * flags to pass
|
|
|
- */
|
|
|
-void of_irq_map_init(unsigned int flags)
|
|
|
-{
|
|
|
- of_irq_workarounds = flags;
|
|
|
-
|
|
|
- /* OldWorld, don't bother looking at other things */
|
|
|
- if (flags & OF_IMAP_OLDWORLD_MAC)
|
|
|
- return;
|
|
|
-
|
|
|
- /* If we don't have phandles, let's try to locate a default interrupt
|
|
|
- * controller (happens when booting with BootX). We do a first match
|
|
|
- * here, hopefully, that only ever happens on machines with one
|
|
|
- * controller.
|
|
|
- */
|
|
|
- if (flags & OF_IMAP_NO_PHANDLE) {
|
|
|
- struct device_node *np;
|
|
|
-
|
|
|
- for (np = NULL; (np = of_find_all_nodes(np)) != NULL;) {
|
|
|
- if (of_get_property(np, "interrupt-controller", NULL)
|
|
|
- == NULL)
|
|
|
- continue;
|
|
|
- /* Skip /chosen/interrupt-controller */
|
|
|
- if (strcmp(np->name, "chosen") == 0)
|
|
|
- continue;
|
|
|
- /* It seems like at least one person on this planet
|
|
|
- * wants to use BootX on a machine with an AppleKiwi
|
|
|
- * controller which happens to pretend to be an
|
|
|
- * interrupt controller too.
|
|
|
- */
|
|
|
- if (strcmp(np->name, "AppleKiwi") == 0)
|
|
|
- continue;
|
|
|
- /* I think we found one ! */
|
|
|
- of_irq_dflt_pic = np;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
int of_irq_map_raw(struct device_node *parent, const u32 *intspec, u32 ointsize,
|
|
|
const u32 *addr, struct of_irq *out_irq)
|
|
|
{
|