Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 204886
b: refs/heads/master
c: b6295c8
h: refs/heads/master
v: v3
  • Loading branch information
Grant Likely committed Jul 5, 2010
1 parent addb3cb commit 9dc4949
Show file tree
Hide file tree
Showing 3 changed files with 1 addition and 52 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: e3873444990dd6f8a095d1f72b5ad45192f8c506
refs/heads/master: b6295c8b85fe83e5679b7b8bebe4df85deebebfc
10 changes: 0 additions & 10 deletions trunk/arch/microblaze/include/asm/prom.h
Original file line number Diff line number Diff line change
Expand Up @@ -93,19 +93,9 @@ extern const void *of_get_mac_address(struct device_node *np);
* OF interrupt mapping
*/

/**
* of_irq_map_init - Initialize the irq remapper
* @flags: flags defining workarounds to enable
*
* Some machines have bugs in the device-tree which require certain workarounds
* to be applied. Call this before any interrupt mapping attempts to enable
* those workarounds.
*/
#define OF_IMAP_OLDWORLD_MAC 0x00000001
#define OF_IMAP_NO_PHANDLE 0x00000002

extern void of_irq_map_init(unsigned int flags);

/**
* of_irq_map_raw - Low level interrupt tree parsing
* @parent: the device interrupt parent
Expand Down
41 changes: 0 additions & 41 deletions trunk/arch/microblaze/kernel/prom_parse.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
{
Expand Down

0 comments on commit 9dc4949

Please sign in to comment.