[OpenBIOS] [PATCHv2 6/6] escc.c: add DBDMA interrupt properties

Mark Cave-Ayland mark.cave-ayland at ilande.co.uk
Sat Feb 20 18:18:36 CET 2016


These are required for MacOS to locate the serial port. Also make sure we
add the 2nd integer to each interrupt in order to indicate level/edge
triggering.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland at ilande.co.uk>
---
 openbios-devel/drivers/escc.c |    9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/openbios-devel/drivers/escc.c b/openbios-devel/drivers/escc.c
index 3dd5174..5fa3139 100644
--- a/openbios-devel/drivers/escc.c
+++ b/openbios-devel/drivers/escc.c
@@ -473,10 +473,13 @@ escc_add_channel(const char *path, const char *node, phys_addr_t addr,
             (char *)&props, 1 * sizeof(cell)));
 
     props[0] = (0x24) + index;
-    props[1] = 0x0;
-    props[2] = 0x0;
+    props[1] = 0x1;
+    props[2] = dbdma_offsets[index][0];
+    props[3] = 0x0;
+    props[4] = dbdma_offsets[index][1];
+    props[5] = 0x0;
     NEWWORLD(set_property(dnode, "interrupts",
-             (char *)&props, 3 * sizeof(cell)));
+             (char *)&props, 6 * sizeof(cell)));
 
     set_int_property(dnode, "slot-names", 0);
 
-- 
1.7.10.4




More information about the OpenBIOS mailing list