Module Name:    src
Committed By:   macallan
Date:           Fri Mar  2 19:36:19 UTC 2018

Modified Files:
        src/sys/arch/powerpc/pci: pci_machdep_common.c
        src/sys/arch/powerpc/pic: pic_openpic.c

Log Message:
IRQ0 is perfectly legal to use on at least some macppc, so don't treat it
as an error or something special
with this svwsata works on my PCI-X G5


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/powerpc/pci/pci_machdep_common.c
cvs rdiff -u -r1.11 -r1.12 src/sys/arch/powerpc/pic/pic_openpic.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/powerpc/pci/pci_machdep_common.c
diff -u src/sys/arch/powerpc/pci/pci_machdep_common.c:1.22 src/sys/arch/powerpc/pci/pci_machdep_common.c:1.23
--- src/sys/arch/powerpc/pci/pci_machdep_common.c:1.22	Thu Jun  1 02:45:07 2017
+++ src/sys/arch/powerpc/pci/pci_machdep_common.c	Fri Mar  2 19:36:19 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: pci_machdep_common.c,v 1.22 2017/06/01 02:45:07 chs Exp $ */
+/* $NetBSD: pci_machdep_common.c,v 1.23 2018/03/02 19:36:19 macallan Exp $ */
 
 /*-
  * Copyright (c) 2007 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pci_machdep_common.c,v 1.22 2017/06/01 02:45:07 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pci_machdep_common.c,v 1.23 2018/03/02 19:36:19 macallan Exp $");
 
 #define _POWERPC_BUS_DMA_PRIVATE
 
@@ -89,7 +89,7 @@ const char *
 genppc_pci_intr_string(void *v, pci_intr_handle_t ih, char *buf, size_t len)
 {
 #ifdef ICU_LEN
-	if (ih == 0 || ih >= ICU_LEN
+	if (ih >= ICU_LEN
 /* XXX on macppc it's completely legal to have PCI interrupts on a slave PIC */
 #ifdef IRQ_SLAVE
 	    || ih == IRQ_SLAVE
@@ -117,7 +117,7 @@ genppc_pci_intr_establish(void *v, pci_i
 {
 
 #ifdef ICU_LEN
-	if (ih == 0 || ih >= ICU_LEN
+	if (ih >= ICU_LEN
 #ifdef IRQ_SLAVE
 	    || ih == IRQ_SLAVE
 #endif
@@ -245,8 +245,10 @@ genppc_pci_intr_map(const struct pci_att
 	 * Since IRQ 0 is only used by the clock, and we can't actually be sure
 	 * that the BIOS did its job, we also recognize that as meaning that
 	 * the BIOS has not configured the device.
+	 * XXX
+	 * it's perfectly legal to use IRQ 0 on macppc
 	 */
-	if (line == 0 || line == 255) {
+	if (line == 255) {
 		aprint_error("pci_intr_map: no mapping for pin %c\n", '@' + pin);
 		goto bad;
 #ifdef ICU_LEN

Index: src/sys/arch/powerpc/pic/pic_openpic.c
diff -u src/sys/arch/powerpc/pic/pic_openpic.c:1.11 src/sys/arch/powerpc/pic/pic_openpic.c:1.12
--- src/sys/arch/powerpc/pic/pic_openpic.c:1.11	Thu Mar  1 16:03:02 2018
+++ src/sys/arch/powerpc/pic/pic_openpic.c	Fri Mar  2 19:36:19 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: pic_openpic.c,v 1.11 2018/03/01 16:03:02 macallan Exp $ */
+/*	$NetBSD: pic_openpic.c,v 1.12 2018/03/02 19:36:19 macallan Exp $ */
 
 /*-
  * Copyright (c) 2007 Michael Lorenz
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pic_openpic.c,v 1.11 2018/03/01 16:03:02 macallan Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pic_openpic.c,v 1.12 2018/03/02 19:36:19 macallan Exp $");
 
 #include <sys/param.h>
 #include <sys/kmem.h>
@@ -144,7 +144,7 @@ opic_establish_irq(struct pic_ops *pic, 
 	x = irq;
 	x |= OPENPIC_IMASK;
 
-	if (irq == 0 || type == IST_EDGE_RISING || type == IST_LEVEL_HIGH)
+	if (type == IST_EDGE_RISING || type == IST_LEVEL_HIGH)
 		x |= OPENPIC_POLARITY_POSITIVE;
 	else
 		x |= OPENPIC_POLARITY_NEGATIVE;

Reply via email to