diff options
Diffstat (limited to 'sys/arch/macppc/dev/openpic.c')
-rw-r--r-- | sys/arch/macppc/dev/openpic.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/arch/macppc/dev/openpic.c b/sys/arch/macppc/dev/openpic.c index 9b48bb02b85..527660176d7 100644 --- a/sys/arch/macppc/dev/openpic.c +++ b/sys/arch/macppc/dev/openpic.c @@ -1,4 +1,4 @@ -/* $OpenBSD: openpic.c,v 1.32 2005/10/16 04:30:43 drahn Exp $ */ +/* $OpenBSD: openpic.c,v 1.33 2005/11/17 15:03:51 drahn Exp $ */ /*- * Copyright (c) 1995 Per Fogelstrom @@ -108,10 +108,15 @@ int openpic_match(struct device *parent, void *cf, void *aux) { char type[40]; + int pirq; struct confargs *ca = aux; bzero (type, sizeof(type)); + if (OF_getprop(ca->ca_node, "interrupt-parent", &pirq, sizeof(pirq)) + == sizeof(pirq)) + return 0; /* XXX */ + if (strcmp(ca->ca_name, "interrupt-controller") == 0 || strcmp(ca->ca_name, "mpic") == 0) { OF_getprop(ca->ca_node, "device_type", type, sizeof(type)); @@ -140,7 +145,7 @@ openpic_attach(struct device *parent, struct device *self, void *aux) extern intr_disestablish_t *mac_intr_disestablish_func; openpic_base = (vaddr_t) mapiodev (ca->ca_baseaddr + - ca->ca_reg[0], 0x22000); + ca->ca_reg[0], 0x40000); printf(": version 0x%x", openpic_read(OPENPIC_VENDOR_ID)); |