Author: hpoussin Date: Wed Mar 28 21:40:57 2007 New Revision: 26194
URL: http://svn.reactos.org/svn/reactos?rev=26194&view=rev Log: Fix interrupt resources (related to r21188 fix)
Modified: trunk/reactos/boot/freeldr/freeldr/arch/i386/hardware.c trunk/reactos/drivers/bus/acpi/ospm/fdo.c trunk/reactos/drivers/bus/pci/pdo.c
Modified: trunk/reactos/boot/freeldr/freeldr/arch/i386/hardware.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/arch/i... ============================================================================== --- trunk/reactos/boot/freeldr/freeldr/arch/i386/hardware.c (original) +++ trunk/reactos/boot/freeldr/freeldr/arch/i386/hardware.c Wed Mar 28 21:40:57 2007 @@ -937,8 +937,8 @@ PartialDescriptor->Type = CmResourceTypeInterrupt; PartialDescriptor->ShareDisposition = CmResourceShareUndetermined; PartialDescriptor->Flags = CM_RESOURCE_INTERRUPT_LATCHED; - PartialDescriptor->u.Interrupt.Level = 0; - PartialDescriptor->u.Interrupt.Vector = 6; + PartialDescriptor->u.Interrupt.Level = 6; + PartialDescriptor->u.Interrupt.Vector = 0; PartialDescriptor->u.Interrupt.Affinity = 0xFFFFFFFF;
/* Set DMA channel */ @@ -1422,8 +1422,8 @@ PartialDescriptor->Type = CmResourceTypeInterrupt; PartialDescriptor->ShareDisposition = CmResourceShareUndetermined; PartialDescriptor->Flags = CM_RESOURCE_INTERRUPT_LATCHED; - PartialDescriptor->u.Interrupt.Level = 0; - PartialDescriptor->u.Interrupt.Vector = Irq[i]; + PartialDescriptor->u.Interrupt.Level = Irq[i]; + PartialDescriptor->u.Interrupt.Vector = 0; PartialDescriptor->u.Interrupt.Affinity = 0xFFFFFFFF;
/* Set serial data (device specific) */ @@ -1570,8 +1570,8 @@ PartialDescriptor->Type = CmResourceTypeInterrupt; PartialDescriptor->ShareDisposition = CmResourceShareUndetermined; PartialDescriptor->Flags = CM_RESOURCE_INTERRUPT_LATCHED; - PartialDescriptor->u.Interrupt.Level = 0; - PartialDescriptor->u.Interrupt.Vector = Irq[i]; + PartialDescriptor->u.Interrupt.Level = Irq[i]; + PartialDescriptor->u.Interrupt.Vector = 0; PartialDescriptor->u.Interrupt.Affinity = 0xFFFFFFFF; }
@@ -1828,8 +1828,8 @@ PartialDescriptor->Type = CmResourceTypeInterrupt; PartialDescriptor->ShareDisposition = CmResourceShareUndetermined; PartialDescriptor->Flags = CM_RESOURCE_INTERRUPT_LATCHED; - PartialDescriptor->u.Interrupt.Level = 0; - PartialDescriptor->u.Interrupt.Vector = 1; + PartialDescriptor->u.Interrupt.Level = 1; + PartialDescriptor->u.Interrupt.Vector = 0; PartialDescriptor->u.Interrupt.Affinity = 0xFFFFFFFF;
/* Set IO Port 0x60 */ @@ -2020,8 +2020,8 @@ FullResourceDescriptor.PartialResourceList.PartialDescriptors[0].Type = CmResourceTypeInterrupt; FullResourceDescriptor.PartialResourceList.PartialDescriptors[0].ShareDisposition = CmResourceShareUndetermined; FullResourceDescriptor.PartialResourceList.PartialDescriptors[0].Flags = CM_RESOURCE_INTERRUPT_LATCHED; - FullResourceDescriptor.PartialResourceList.PartialDescriptors[0].u.Interrupt.Level = 0; - FullResourceDescriptor.PartialResourceList.PartialDescriptors[0].u.Interrupt.Vector = 12; + FullResourceDescriptor.PartialResourceList.PartialDescriptors[0].u.Interrupt.Level = 12; + FullResourceDescriptor.PartialResourceList.PartialDescriptors[0].u.Interrupt.Vector = 0; FullResourceDescriptor.PartialResourceList.PartialDescriptors[0].u.Interrupt.Affinity = 0xFFFFFFFF;
/* Set 'Configuration Data' value */
Modified: trunk/reactos/drivers/bus/acpi/ospm/fdo.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/bus/acpi/ospm/fdo.c... ============================================================================== --- trunk/reactos/drivers/bus/acpi/ospm/fdo.c (original) +++ trunk/reactos/drivers/bus/acpi/ospm/fdo.c Wed Mar 28 21:40:57 2007 @@ -262,8 +262,8 @@ (irq_data->shared_exclusive == SHARED ? CmResourceShareShared : CmResourceShareDeviceExclusive); ResourceDescriptor->Flags = (irq_data->edge_level == LEVEL_SENSITIVE ? CM_RESOURCE_INTERRUPT_LEVEL_SENSITIVE : CM_RESOURCE_INTERRUPT_LATCHED); - ResourceDescriptor->u.Interrupt.Level = 0; - ResourceDescriptor->u.Interrupt.Vector = irq_data->interrupts[i]; + ResourceDescriptor->u.Interrupt.Level = irq_data->interrupts[i]; + ResourceDescriptor->u.Interrupt.Vector = 0; ResourceDescriptor->u.Interrupt.Affinity = (KAFFINITY)(-1);
RequirementDescriptor->Option = 0; /* Required */
Modified: trunk/reactos/drivers/bus/pci/pdo.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/bus/pci/pdo.c?rev=2... ============================================================================== --- trunk/reactos/drivers/bus/pci/pdo.c (original) +++ trunk/reactos/drivers/bus/pci/pdo.c Wed Mar 28 21:40:57 2007 @@ -764,7 +764,7 @@ Descriptor->ShareDisposition = CmResourceShareShared; Descriptor->Flags = CM_RESOURCE_INTERRUPT_LEVEL_SENSITIVE; Descriptor->u.Interrupt.Level = PciConfig.u.type0.InterruptLine; - Descriptor->u.Interrupt.Vector = PciConfig.u.type0.InterruptLine; + Descriptor->u.Interrupt.Vector = 0; Descriptor->u.Interrupt.Affinity = 0xFFFFFFFF; } }