[OpenBIOS] [PATCH 1/6] Fix encoding of PCI and IDE "interrupts" properties

Benjamin Herrenschmidt benh at kernel.crashing.org
Tue Aug 2 07:35:22 CEST 2016


The main IDE interrupt and the PCI LSIs are level sensitive
which is represented by a "1" in the device-tree.

Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
---
 drivers/ide.c | 2 +-
 drivers/pci.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/ide.c b/drivers/ide.c
index 1da60c8..53a0b80 100644
--- a/drivers/ide.c
+++ b/drivers/ide.c
@@ -1630,7 +1630,7 @@ int macio_ide_init(const char *path, uint32_t addr, int nb_channels)
 			props[2] = 0x00000000;
 			break;
 		}
-		props[1] = 0x00000000; /* XXX level triggered on real hw */
+		props[1] = 0x00000001;
 		props[3] = 0x00000000;
 		NEWWORLD(set_property(dnode, "interrupts",
 			     (char *)&props, 4*sizeof(props[0])));
diff --git a/drivers/pci.c b/drivers/pci.c
index 5062f30..2cffa2f 100644
--- a/drivers/pci.c
+++ b/drivers/pci.c
@@ -1510,7 +1510,7 @@ static void ob_pci_host_set_interrupt_map(phandle_t host)
                         props[ncells++] = intno;
                         props[ncells++] = dnode;
                         props[ncells++] = arch->irqs[intno - 1];
-                        props[ncells++] = 3;
+                        props[ncells++] = 1;
 #else
                         /* Keep compiler quiet */
                         dnode = dnode;
-- 
2.7.4




More information about the OpenBIOS mailing list