[ros-diffs] [cgutman] 49127: [HAL] - Check that the interrupt line is not 255 - Check that the interrupt pin is not 0 - Fixes a failed assertion that Caemyr experienced with an ATI Rage graphics card

cgutman at svn.reactos.org cgutman at svn.reactos.org
Tue Oct 12 20:02:16 UTC 2010


Author: cgutman
Date: Tue Oct 12 20:02:15 2010
New Revision: 49127

URL: http://svn.reactos.org/svn/reactos?rev=49127&view=rev
Log:
[HAL]
- Check that the interrupt line is not 255
- Check that the interrupt pin is not 0
- Fixes a failed assertion that Caemyr experienced with an ATI Rage graphics card

Modified:
    trunk/reactos/hal/halx86/generic/legacy/bus/pcibus.c
    trunk/reactos/hal/halx86/generic/legacy/bussupp.c

Modified: trunk/reactos/hal/halx86/generic/legacy/bus/pcibus.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/generic/legacy/bus/pcibus.c?rev=49127&r1=49126&r2=49127&view=diff
==============================================================================
--- trunk/reactos/hal/halx86/generic/legacy/bus/pcibus.c [iso-8859-1] (original)
+++ trunk/reactos/hal/halx86/generic/legacy/bus/pcibus.c [iso-8859-1] Tue Oct 12 20:02:15 2010
@@ -753,7 +753,9 @@
     }
 
     /* Interrupt resource */
-    if (0 != PciConfig.u.type0.InterruptLine)
+    if (0 != PciConfig.u.type0.InterruptPin &&
+        0 != PciConfig.u.type0.InterruptLine &&
+        0xFF != PciConfig.u.type0.InterruptLine)
         ResourceCount++;
 
     /* Allocate output buffer and initialize */
@@ -806,7 +808,9 @@
         }
     }
 
-    if (0 != PciConfig.u.type0.InterruptLine)
+    if (0 != PciConfig.u.type0.InterruptPin &&
+        0 != PciConfig.u.type0.InterruptLine &&
+        0xFF != PciConfig.u.type0.InterruptLine)
     {
         Descriptor->Type = CmResourceTypeInterrupt;
         Descriptor->ShareDisposition = CmResourceShareShared;          /* FIXME Just a guess */

Modified: trunk/reactos/hal/halx86/generic/legacy/bussupp.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/generic/legacy/bussupp.c?rev=49127&r1=49126&r2=49127&view=diff
==============================================================================
--- trunk/reactos/hal/halx86/generic/legacy/bussupp.c [iso-8859-1] (original)
+++ trunk/reactos/hal/halx86/generic/legacy/bussupp.c [iso-8859-1] Tue Oct 12 20:02:15 2010
@@ -785,7 +785,9 @@
     if ((PciData->Status & PCI_STATUS_DEVSEL) == 0x200) DbgPrint(" medium devsel,");
     if ((PciData->Status & PCI_STATUS_DEVSEL) == 0x400) DbgPrint(" fast devsel,");
     DbgPrint(" latency %d", PciData->LatencyTimer);
-    if (PciData->u.type0.InterruptLine) DbgPrint(", IRQ %02d", PciData->u.type0.InterruptLine);
+    if (PciData->u.type0.InterruptPin != 0 &&
+        PciData->u.type0.InterruptLine != 0 &&
+        PciData->u.type0.InterruptLine != 0xFF) DbgPrint(", IRQ %02d", PciData->u.type0.InterruptLine);
     DbgPrint("\n");
     
     /* Scan addresses */




More information about the Ros-diffs mailing list