From 7889b350880d3af67057da9769e5a7d9e2fbfcf8 Mon Sep 17 00:00:00 2001 From: Hartmut Birr Date: Wed, 23 Mar 2005 21:51:40 +0000 Subject: [PATCH] Set the share disposition of an interrupt according to the value from the resource. svn path=/trunk/; revision=14295 --- reactos/drivers/video/videoprt/dispatch.c | 4 ++++ reactos/drivers/video/videoprt/interrupt.c | 2 +- reactos/drivers/video/videoprt/resource.c | 4 ++++ reactos/drivers/video/videoprt/videoprt.h | 1 + 4 files changed, 10 insertions(+), 1 deletion(-) diff --git a/reactos/drivers/video/videoprt/dispatch.c b/reactos/drivers/video/videoprt/dispatch.c index 504cbbde074..a8831ce47ee 100644 --- a/reactos/drivers/video/videoprt/dispatch.c +++ b/reactos/drivers/video/videoprt/dispatch.c @@ -329,6 +329,10 @@ IntVideoPortPnPStartDevice( { DeviceExtension->InterruptLevel = Descriptor->u.Interrupt.Level; DeviceExtension->InterruptVector = Descriptor->u.Interrupt.Vector; + if (Descriptor->ShareDisposition == CmResourceShareShared) + DeviceExtension->InterruptShared = TRUE; + else + DeviceExtension->InterruptShared = FALSE; } } } diff --git a/reactos/drivers/video/videoprt/interrupt.c b/reactos/drivers/video/videoprt/interrupt.c index 7b856a133ed..04fa84a7849 100644 --- a/reactos/drivers/video/videoprt/interrupt.c +++ b/reactos/drivers/video/videoprt/interrupt.c @@ -85,7 +85,7 @@ IntVideoPortSetupInterrupt( Irql, Irql, ConfigInfo->InterruptMode, - FALSE, + DeviceExtension->InterruptShared, Affinity, FALSE); diff --git a/reactos/drivers/video/videoprt/resource.c b/reactos/drivers/video/videoprt/resource.c index ece08ed857a..00cd872f205 100644 --- a/reactos/drivers/video/videoprt/resource.c +++ b/reactos/drivers/video/videoprt/resource.c @@ -559,6 +559,10 @@ VideoPortGetAccessRanges( { DeviceExtension->InterruptLevel = Descriptor->u.Interrupt.Level; DeviceExtension->InterruptVector = Descriptor->u.Interrupt.Vector; + if (Descriptor->ShareDisposition == CmResourceShareShared) + DeviceExtension->InterruptShared = TRUE; + else + DeviceExtension->InterruptShared = FALSE; } } } diff --git a/reactos/drivers/video/videoprt/videoprt.h b/reactos/drivers/video/videoprt/videoprt.h index f25ed08a8a6..3a5df1caaf0 100644 --- a/reactos/drivers/video/videoprt/videoprt.h +++ b/reactos/drivers/video/videoprt/videoprt.h @@ -93,6 +93,7 @@ typedef struct _VIDEO_PORT_DEVICE_EXTENSTION PCM_RESOURCE_LIST AllocatedResources; ULONG InterruptVector; ULONG InterruptLevel; + BOOLEAN InterruptShared; ULONG AdapterInterfaceType; ULONG SystemIoBusNumber; ULONG SystemIoSlotNumber;