vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| This patch corrects a problem with older versions of open firmware where the AAPL,interrupts property is defined however the firmware didnt actually setup the pci interrupt register. Systems that might be affected include the rev C imacs and the grackle machines such as the blue and white G3 but other machiens of similar vintage may be affected and testing on these would be appreciated. Thanks, gwk Index: sys/arch/macppc/pci/mpcpcibus.c ================================================== ================= RCS file: /cvs/src/sys/arch/macppc/pci/mpcpcibus.c,v retrieving revision 1.32 diff -u -p -r1.32 mpcpcibus.c --- sys/arch/macppc/pci/mpcpcibus.c 10 May 2006 00:07:40 -0000 1.32 +++ sys/arch/macppc/pci/mpcpcibus.c 2 Oct 2006 07:10:24 -0000 @@ -107,7 +107,7 @@ struct config_type{ }; struct config_type config_offsets[] = { {"grackle", 0x00c00cf8, 0x00e00cfc, 0 }, - {"bandit", 0x00800000, 0x00c00000, 0 }, + {"bandit", 0x00800000, 0x00c00000, 1 }, {"uni-north", 0x00800000, 0x00c00000, 3 }, {"u3-agp", 0x00800000, 0x00c00000, 3 }, {"u3-ht", 0x00000cf8, 0x00000cfc, 3 }, @@ -585,9 +585,6 @@ fix_node_irq(int node, struct pcibus_att if (len == -1 || len < sizeof(addr[0])) return; - /* if this node has a AAPL,interrupts property, firmware - * has initialized the register correctly. - */ len = OF_getprop(node, "AAPL,interrupts", &intr, 4); if (len != 4) { @@ -605,7 +602,8 @@ fix_node_irq(int node, struct pcibus_att } else return; } - } + } else + irq = intr; /* program the interrupt line register with the value * found in openfirmware */ |
| Thread Tools | |
| Display Modes | |
|
|