ReactOS 0.4.15-dev-7918-g2a2556c
CMiniportDMusUART Class Reference
Inheritance diagram for CMiniportDMusUART:
Collaboration diagram for CMiniportDMusUART:

Public Member Functions

STDMETHODIMP QueryInterface (REFIID InterfaceId, PVOID *Interface)
 
 CMiniportDMusUART (IUnknown *Unknown)
 
virtual ~CMiniportDMusUART ()
 
 GetDescription (OUT PPCFILTER_DESCRIPTOR *OutFilterDescriptor)
 
 DataRangeIntersection (IN ULONG PinId, IN PKSDATARANGE DataRange, IN PKSDATARANGE MatchingDataRange, IN ULONG OutputBufferLength, OUT PVOID ResultantFormat, OUT PULONG ResultantFormatLength)
 
 STDMETHODIMP_ (NTSTATUS) Init(IN PUNKNOWN UnknownAdapter
 
 STDMETHODIMP_ (NTSTATUS) NewStream(OUT PMXF *Stream
 
 STDMETHODIMP_ (void) Service(void)
 
friend STDMETHODIMP_ (NTSTATUS) SnapTimeStamp(PINTERRUPTSYNC InterruptSync
 
- Public Member Functions inherited from CUnknownImpl< IMiniportDMus, IMusicTechnology, IPowerNotify >
 STDMETHODIMP_ (ULONG) AddRef()
 
 STDMETHODIMP_ (ULONG) Release()
 

Public Attributes

IN PRESOURCELIST ResourceList
 
IN PRESOURCELIST IN PPORTDMUS Port
 
IN PRESOURCELIST IN PPORTDMUS OUT PSERVICEGROUPServiceGroup
 
IN PUNKNOWN OuterUnknown OPTIONAL
 
IN PUNKNOWN OuterUnknown IN POOL_TYPE PoolType
 
IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG PinID
 
IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG IN DMUS_STREAM_TYPE StreamType
 
IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG IN DMUS_STREAM_TYPE IN PKSDATAFORMAT DataFormat
 
IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG IN DMUS_STREAM_TYPE IN PKSDATAFORMAT OUT PSERVICEGROUPServiceGroup
 
IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG IN DMUS_STREAM_TYPE IN PKSDATAFORMAT OUT PSERVICEGROUP IN PAllocatorMXF AllocatorMXF
 
IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG IN DMUS_STREAM_TYPE IN PKSDATAFORMAT OUT PSERVICEGROUP IN PAllocatorMXF IN PMASTERCLOCK MasterClock
 
IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG IN DMUS_STREAM_TYPE IN PKSDATAFORMAT OUT PSERVICEGROUP IN PAllocatorMXF IN PMASTERCLOCK OUT PULONGLONG SchedulePreFetch
 
 IMP_IMusicTechnology
 
 IMP_IPowerNotify
 

Private Member Functions

NTSTATUS ProcessResources (IN PRESOURCELIST ResourceList)
 
NTSTATUS InitializeHardware (PINTERRUPTSYNC interruptSync, PUCHAR portBase)
 

Private Attributes

KSSTATE m_KSStateInput
 
PPORTDMUS m_pPort
 
PUCHAR m_pPortBase
 
PINTERRUPTSYNC m_pInterruptSync
 
PSERVICEGROUP m_pServiceGroup
 
PMASTERCLOCK m_MasterClock
 
REFERENCE_TIME m_InputTimeStamp
 
USHORT m_NumRenderStreams
 
USHORT m_NumCaptureStreams
 
ULONG m_MPUInputBufferHead
 
ULONG m_MPUInputBufferTail
 
GUID m_MusicFormatTechnology
 
POWER_STATE m_PowerState
 
BOOLEAN m_fMPUInitialized
 
BOOLEAN m_UseIRQ
 
UCHAR m_MPUInputBuffer [kMPUInputBufferSize]
 

Friends

class CMiniportDMusUARTStream
 
PVOID pStream
 
NTSTATUS NTAPI DMusMPUInterruptServiceRoutine (PINTERRUPTSYNC InterruptSync, PVOID DynamicContext)
 
NTSTATUS NTAPI SynchronizedDMusMPUWrite (PINTERRUPTSYNC InterruptSync, PVOID syncWriteContext)
 
VOID NTAPI DMusUARTTimerDPC (PKDPC Dpc, PVOID DeferredContext, PVOID SystemArgument1, PVOID SystemArgument2)
 
NTSTATUS NTAPI PropertyHandler_Synth (IN PPCPROPERTY_REQUEST PropertyRequest)
 

Additional Inherited Members

- Protected Member Functions inherited from CUnknownImpl< IMiniportDMus, IMusicTechnology, IPowerNotify >
 CUnknownImpl ()
 
virtual ~CUnknownImpl ()
 

Detailed Description

Definition at line 66 of file miniport_dmus.cpp.

Constructor & Destructor Documentation

◆ CMiniportDMusUART()

CMiniportDMusUART::CMiniportDMusUART ( IUnknown Unknown)
inline

Definition at line 101 of file miniport_dmus.cpp.

101{}

◆ ~CMiniportDMusUART()

CMiniportDMusUART::~CMiniportDMusUART ( void  )
virtual

Definition at line 1381 of file miniport_dmus.cpp.

1382{
1383 PAGED_CODE();
1384
1385 DPRINT("~CMiniportDMusUART");
1386
1389
1390 // reset the HW so we don't get anymore interrupts
1392 {
1394 }
1395 else
1396 {
1398 }
1399
1400 if (m_pInterruptSync)
1401 {
1402 m_pInterruptSync->Release();
1404 }
1405 if (m_pServiceGroup)
1406 {
1407 m_pServiceGroup->Release();
1409 }
1410 if (m_pPort)
1411 {
1412 m_pPort->Release();
1413 m_pPort = NULL;
1414 }
1415}
#define PAGED_CODE()
PINTERRUPTSYNC m_pInterruptSync
PSERVICEGROUP m_pServiceGroup
#define NULL
Definition: types.h:112
NTSTATUS NTAPI InitMPU(IN PINTERRUPTSYNC InterruptSync, IN PVOID DynamicContext)
#define ASSERT(a)
Definition: mode.c:44
NTSTATUS(NTAPI * PINTERRUPTSYNCROUTINE)(IN struct IInterruptSync *InterruptSync, IN PVOID DynamicContext)
Definition: portcls.h:847
#define DPRINT
Definition: sndvol32.h:71
void * PVOID
Definition: typedefs.h:50

Member Function Documentation

◆ DataRangeIntersection()

CMiniportDMusUART::DataRangeIntersection ( IN ULONG  PinId,
IN PKSDATARANGE  DataRange,
IN PKSDATARANGE  MatchingDataRange,
IN ULONG  OutputBufferLength,
OUT PVOID  ResultantFormat,
OUT PULONG  ResultantFormatLength 
)
inline

Definition at line 112 of file miniport_dmus.cpp.

120 {
122 }
#define STATUS_NOT_IMPLEMENTED
Definition: ntstatus.h:239

◆ GetDescription()

CMiniportDMusUART::GetDescription ( OUT PPCFILTER_DESCRIPTOR OutFilterDescriptor)

Definition at line 1200 of file miniport_dmus.cpp.

1205{
1206 PAGED_CODE();
1207
1208 ASSERT(OutFilterDescriptor);
1209
1210 DPRINT("GetDescription");
1211
1212 *OutFilterDescriptor = &MiniportFilterDescriptor;
1213
1214 return STATUS_SUCCESS;
1215}
static PCFILTER_DESCRIPTOR MiniportFilterDescriptor
#define STATUS_SUCCESS
Definition: shellext.h:65

◆ InitializeHardware()

NTSTATUS CMiniportDMusUART::InitializeHardware ( PINTERRUPTSYNC  interruptSync,
PUCHAR  portBase 
)
private

Definition at line 617 of file miniport_dmus.cpp.

618{
619 PAGED_CODE();
620
621 NTSTATUS ntStatus;
622 if (m_UseIRQ)
623 {
624 ntStatus = interruptSync->CallSynchronizedRoutine(InitMPU,PVOID(portBase));
625 }
626 else
627 {
628 ntStatus = InitMPU(NULL,PVOID(portBase));
629 }
630
631 if (NT_SUCCESS(ntStatus))
632 {
633 //
634 // Start the UART (this should trigger an interrupt).
635 //
636 ntStatus = ResetHardware(portBase);
637 }
638 else
639 {
640 DPRINT("*** InitMPU returned with ntStatus 0x%08x ***", ntStatus);
641 }
642
643 m_fMPUInitialized = NT_SUCCESS(ntStatus);
644
645 return ntStatus;
646}
LONG NTSTATUS
Definition: precomp.h:26
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:32
NTSTATUS ResetHardware(PUCHAR portBase)

Referenced by ProcessResources().

◆ ProcessResources()

NTSTATUS CMiniportDMusUART::ProcessResources ( IN PRESOURCELIST  ResourceList)
private

Definition at line 1255 of file miniport_dmus.cpp.

1260{
1261 PAGED_CODE();
1262
1263 DPRINT("ProcessResources");
1264
1266 if (!ResourceList)
1267 {
1269 }
1270 //
1271 // Get counts for the types of resources.
1272 //
1273 ULONG countIO = ResourceList->NumberOfPorts();
1274 ULONG countIRQ = ResourceList->NumberOfInterrupts();
1275 ULONG countDMA = ResourceList->NumberOfDmas();
1276 ULONG lengthIO = ResourceList->FindTranslatedPort(0)->u.Port.Length;
1277
1278#if DBG
1279 DPRINT("Starting MPU401 Port 0x%lx", ResourceList->FindTranslatedPort(0)->u.Port.Start.LowPart);
1280#endif
1281
1282 NTSTATUS ntStatus = STATUS_SUCCESS;
1283
1284 //
1285 // Make sure we have the expected number of resources.
1286 //
1287 if ( (countIO != 1)
1288 || (countIRQ > 1)
1289 || (countDMA != 0)
1290 || (lengthIO == 0)
1291 )
1292 {
1293 DPRINT("Unknown ResourceList configuration");
1295 }
1296
1297 if (NT_SUCCESS(ntStatus))
1298 {
1299 //
1300 // Get the port address.
1301 //
1302 m_pPortBase =
1303 PUCHAR(ResourceList->FindTranslatedPort(0)->u.Port.Start.QuadPart);
1304
1306 }
1307
1308 return ntStatus;
1309}
NTSTATUS InitializeHardware(PINTERRUPTSYNC interruptSync, PUCHAR portBase)
#define STATUS_DEVICE_CONFIGURATION_ERROR
Definition: ntstatus.h:619
unsigned char * PUCHAR
Definition: typedefs.h:53
uint32_t ULONG
Definition: typedefs.h:59
_Must_inspect_result_ _In_ WDFIORESREQLIST _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFIORESLIST * ResourceList
Definition: wdfresource.h:309

◆ QueryInterface()

CMiniportDMusUART::QueryInterface ( REFIID  InterfaceId,
PVOID Interface 
)

Definition at line 1321 of file miniport_dmus.cpp.

1326{
1327 PAGED_CODE();
1328
1329 DPRINT("Miniport::NonDelegatingQueryInterface");
1330 ASSERT(Object);
1331
1333 {
1335 }
1336 else
1337 if (IsEqualGUIDAligned(Interface,IID_IMiniport))
1338 {
1339 *Object = PVOID(PMINIPORT(this));
1340 }
1341 else
1342 if (IsEqualGUIDAligned(Interface,IID_IMiniportDMus))
1343 {
1344 *Object = PVOID(PMINIPORTDMUS(this));
1345 }
1346 else
1347 if (IsEqualGUIDAligned(Interface,IID_IMusicTechnology))
1348 {
1349 *Object = PVOID(PMUSICTECHNOLOGY(this));
1350 }
1351 else
1352 if (IsEqualGUIDAligned(Interface,IID_IPowerNotify))
1353 {
1354 *Object = PVOID(PPOWERNOTIFY(this));
1355 }
1356 else
1357 {
1358 *Object = NULL;
1359 }
1360
1361 if (*Object)
1362 {
1363 //
1364 // We reference the interface for the caller.
1365 //
1366 PUNKNOWN(*Object)->AddRef();
1367 return STATUS_SUCCESS;
1368 }
1369
1371}
const GUID IID_IUnknown
IUnknown * PUNKNOWN
Definition: com_apitest.h:45
IMiniportDMus * PMINIPORTDMUS
Definition: dmusicks.h:211
struct _MINIPORT * PMINIPORT
ULONG AddRef()
IMusicTechnology * PMUSICTECHNOLOGY
Definition: portcls.h:1028
IPowerNotify * PPOWERNOTIFY
Definition: portcls.h:2059
#define STATUS_INVALID_PARAMETER
Definition: udferr_usr.h:135
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID _Out_ PINTERFACE Interface
Definition: wdffdo.h:465
#define IsEqualGUIDAligned(guid1, guid2)
Definition: wdm.template.h:235

◆ STDMETHODIMP_() [1/4]

CMiniportDMusUART::STDMETHODIMP_ ( NTSTATUS  )

◆ STDMETHODIMP_() [2/4]

CMiniportDMusUART::STDMETHODIMP_ ( NTSTATUS  )

◆ STDMETHODIMP_() [3/4]

CMiniportDMusUART::STDMETHODIMP_ ( NTSTATUS  )

◆ STDMETHODIMP_() [4/4]

CMiniportDMusUART::STDMETHODIMP_ ( void  )

Friends And Related Function Documentation

◆ CMiniportDMusUARTStream

Definition at line 164 of file miniport_dmus.cpp.

◆ DMusMPUInterruptServiceRoutine

NTSTATUS NTAPI DMusMPUInterruptServiceRoutine ( PINTERRUPTSYNC  InterruptSync,
PVOID  DynamicContext 
)
friend

◆ DMusUARTTimerDPC

VOID NTAPI DMusUARTTimerDPC ( PKDPC  Dpc,
PVOID  DeferredContext,
PVOID  SystemArgument1,
PVOID  SystemArgument2 
)
friend

◆ PropertyHandler_Synth

NTSTATUS NTAPI PropertyHandler_Synth ( IN PPCPROPERTY_REQUEST  PropertyRequest)
friend

Definition at line 2429 of file miniport_dmus.cpp.

2433{
2434 NTSTATUS ntStatus;
2435
2436 PAGED_CODE();
2437
2439 {
2440 ntStatus = ValidatePropertyRequest(pRequest, sizeof(ULONG), TRUE);
2441 if (NT_SUCCESS(ntStatus))
2442 {
2443 // if return buffer can hold a ULONG, return the access flags
2444 PULONG AccessFlags = PULONG(pRequest->Value);
2445
2446 *AccessFlags = KSPROPERTY_TYPE_BASICSUPPORT;
2447 switch (pRequest->PropertyItem->Id)
2448 {
2451 *AccessFlags |= KSPROPERTY_TYPE_GET;
2452 }
2453 switch (pRequest->PropertyItem->Id)
2454 {
2456 *AccessFlags |= KSPROPERTY_TYPE_SET;
2457 }
2458 ntStatus = STATUS_SUCCESS;
2459 pRequest->ValueSize = sizeof(ULONG);
2460
2461 switch (pRequest->PropertyItem->Id)
2462 {
2464 if (pRequest->MinorTarget)
2465 {
2466 *AccessFlags |= KSPROPERTY_TYPE_GET;
2467 }
2468 else
2469 {
2470 pRequest->ValueSize = 0;
2472 }
2473 }
2474 }
2475 }
2476 else
2477 {
2478 ntStatus = STATUS_SUCCESS;
2479 switch(pRequest->PropertyItem->Id)
2480 {
2482 DPRINT("PropertyHandler_Synth:KSPROPERTY_SYNTH_CAPS");
2483
2484 if (pRequest->Verb & KSPROPERTY_TYPE_SET)
2485 {
2487 }
2488
2489 if (NT_SUCCESS(ntStatus))
2490 {
2491 ntStatus = ValidatePropertyRequest(pRequest, sizeof(SYNTHCAPS), TRUE);
2492
2493 if (NT_SUCCESS(ntStatus))
2494 {
2495 SYNTHCAPS *caps = (SYNTHCAPS*)pRequest->Value;
2496 int increment;
2497 RtlZeroMemory(caps, sizeof(SYNTHCAPS));
2498 // XXX Different guids for different instances!
2499 //
2500 if (pRequest->Node == eSynthNode)
2501 {
2502 increment = sizeof(wszDescOut) - 2;
2503 RtlCopyMemory( caps->Description,wszDescOut,increment);
2504 caps->Guid = CLSID_MiniportDriverDMusUART;
2505 }
2506 else
2507 {
2508 increment = sizeof(wszDescIn) - 2;
2509 RtlCopyMemory( caps->Description,wszDescIn,increment);
2510 caps->Guid = CLSID_MiniportDriverDMusUARTCapture;
2511 }
2512
2513 caps->Flags = SYNTH_PC_EXTERNAL;
2514 caps->MemorySize = 0;
2515 caps->MaxChannelGroups = 1;
2516 caps->MaxVoices = 0xFFFFFFFF;
2517 caps->MaxAudioChannels = 0xFFFFFFFF;
2518
2519 caps->EffectFlags = 0;
2520
2521 CMiniportDMusUART *aMiniport;
2522 ASSERT(pRequest->MajorTarget);
2523 aMiniport = (CMiniportDMusUART *)(PMINIPORTDMUS)(pRequest->MajorTarget);
2524 WCHAR wszDesc2[16];
2525 int cLen;
2526 cLen = swprintf(wszDesc2,L"[%03x]\0",PtrToUlong(aMiniport->m_pPortBase));
2527
2528 cLen *= sizeof(WCHAR);
2529 RtlCopyMemory((WCHAR *)((DWORD_PTR)(caps->Description) + increment),
2530 wszDesc2,
2531 cLen);
2532
2533
2534 pRequest->ValueSize = sizeof(SYNTHCAPS);
2535 }
2536 }
2537
2538 break;
2539
2541 DPRINT("PropertyHandler_Synth:KSPROPERTY_SYNTH_PORTPARAMETERS");
2542 {
2543 CMiniportDMusUARTStream *aStream;
2544
2545 aStream = (CMiniportDMusUARTStream*)(pRequest->MinorTarget);
2546 if (aStream)
2547 {
2548 ntStatus = aStream->HandlePortParams(pRequest);
2549 }
2550 else
2551 {
2553 }
2554 }
2555 break;
2556
2558 DPRINT("PropertyHandler_Synth:KSPROPERTY_SYNTH_CHANNELGROUPS");
2559
2560 ntStatus = ValidatePropertyRequest(pRequest, sizeof(ULONG), TRUE);
2561 if (NT_SUCCESS(ntStatus))
2562 {
2563 *(PULONG)(pRequest->Value) = 1;
2564 pRequest->ValueSize = sizeof(ULONG);
2565 }
2566 break;
2567
2569 DPRINT("PropertyHandler_Synth:KSPROPERTY_SYNTH_LATENCYCLOCK");
2570
2571 if(pRequest->Verb & KSPROPERTY_TYPE_SET)
2572 {
2574 }
2575 else
2576 {
2577 ntStatus = ValidatePropertyRequest(pRequest, sizeof(ULONGLONG), TRUE);
2578 if(NT_SUCCESS(ntStatus))
2579 {
2580 REFERENCE_TIME rtLatency;
2581 CMiniportDMusUARTStream *aStream;
2582
2583 aStream = (CMiniportDMusUARTStream*)(pRequest->MinorTarget);
2584 if(aStream == NULL)
2585 {
2587 }
2588 else
2589 {
2590 aStream->m_pMiniport->m_MasterClock->GetTime(&rtLatency);
2591 *((PULONGLONG)pRequest->Value) = rtLatency;
2592 pRequest->ValueSize = sizeof(ULONGLONG);
2593 }
2594 }
2595 }
2596 break;
2597
2598 default:
2599 DPRINT("Unhandled property in PropertyHandler_Synth");
2600 break;
2601 }
2602 }
2603 return ntStatus;
2604}
CMiniportDMusUART * m_pMiniport
NTSTATUS HandlePortParams(IN PPCPROPERTY_REQUEST Request)
PMASTERCLOCK m_MasterClock
#define TRUE
Definition: types.h:120
#define swprintf
Definition: precomp.h:40
LONGLONG REFERENCE_TIME
Definition: dmusicks.h:9
@ KSPROPERTY_SYNTH_PORTPARAMETERS
Definition: dmusprop.h:57
@ KSPROPERTY_SYNTH_CHANNELGROUPS
Definition: dmusprop.h:58
@ KSPROPERTY_SYNTH_CAPS
Definition: dmusprop.h:56
@ KSPROPERTY_SYNTH_LATENCYCLOCK
Definition: dmusprop.h:60
#define SYNTH_PC_EXTERNAL
Definition: dmusprop.h:65
struct _SYNTHCAPS SYNTHCAPS
#define PtrToUlong(u)
Definition: config.h:107
#define KSPROPERTY_TYPE_SET
Definition: dmksctrl.h:43
#define KSPROPERTY_TYPE_BASICSUPPORT
Definition: dmksctrl.h:45
#define KSPROPERTY_TYPE_GET
Definition: dmksctrl.h:42
FxRequest * pRequest
const WCHAR wszDescIn[]
NTSTATUS ValidatePropertyRequest(IN PPCPROPERTY_REQUEST pRequest, IN ULONG ulValueSize, IN BOOLEAN fValueRequired)
@ eSynthNode
const WCHAR wszDescOut[]
__GNU_EXTENSION typedef unsigned __int64 * PULONGLONG
Definition: ntbasedef.h:383
#define L(x)
Definition: ntvdm.h:50
WCHAR Description[128]
Definition: dmusprop.h:89
DWORD Flags
Definition: dmusprop.h:83
DWORD MemorySize
Definition: dmusprop.h:84
DWORD MaxChannelGroups
Definition: dmusprop.h:85
DWORD MaxAudioChannels
Definition: dmusprop.h:87
GUID Guid
Definition: dmusprop.h:82
DWORD EffectFlags
Definition: dmusprop.h:88
DWORD MaxVoices
Definition: dmusprop.h:86
uint32_t * PULONG
Definition: typedefs.h:59
uint32_t DWORD_PTR
Definition: typedefs.h:65
#define RtlCopyMemory(Destination, Source, Length)
Definition: typedefs.h:263
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:262
uint64_t ULONGLONG
Definition: typedefs.h:67
#define STATUS_INVALID_DEVICE_REQUEST
Definition: udferr_usr.h:138
__wchar_t WCHAR
Definition: xmlstorage.h:180

◆ pStream

friend PVOID pStream
friend

Definition at line 172 of file miniport_dmus.cpp.

◆ SynchronizedDMusMPUWrite

NTSTATUS NTAPI SynchronizedDMusMPUWrite ( PINTERRUPTSYNC  InterruptSync,
PVOID  syncWriteContext 
)
friend

Member Data Documentation

◆ AllocatorMXF

Definition at line 143 of file miniport_dmus.cpp.

◆ DataFormat

IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG IN DMUS_STREAM_TYPE IN PKSDATAFORMAT CMiniportDMusUART::DataFormat

Definition at line 141 of file miniport_dmus.cpp.

◆ IMP_IMusicTechnology

CMiniportDMusUART::IMP_IMusicTechnology

Definition at line 154 of file miniport_dmus.cpp.

◆ IMP_IPowerNotify

CMiniportDMusUART::IMP_IPowerNotify

Definition at line 159 of file miniport_dmus.cpp.

◆ m_fMPUInitialized

BOOLEAN CMiniportDMusUART::m_fMPUInitialized
private

Definition at line 82 of file miniport_dmus.cpp.

Referenced by InitializeHardware().

◆ m_InputTimeStamp

REFERENCE_TIME CMiniportDMusUART::m_InputTimeStamp
private

Definition at line 75 of file miniport_dmus.cpp.

Referenced by DMusMPUInterruptServiceRoutine(), and SnapTimeStamp().

◆ m_KSStateInput

KSSTATE CMiniportDMusUART::m_KSStateInput
private

Definition at line 69 of file miniport_dmus.cpp.

Referenced by DMusMPUInterruptServiceRoutine().

◆ m_MasterClock

PMASTERCLOCK CMiniportDMusUART::m_MasterClock
private

Definition at line 74 of file miniport_dmus.cpp.

Referenced by DMusMPUInterruptServiceRoutine().

◆ m_MPUInputBuffer

UCHAR CMiniportDMusUART::m_MPUInputBuffer[kMPUInputBufferSize]
private

Definition at line 84 of file miniport_dmus.cpp.

Referenced by DMusMPUInterruptServiceRoutine().

◆ m_MPUInputBufferHead

ULONG CMiniportDMusUART::m_MPUInputBufferHead
private

Definition at line 78 of file miniport_dmus.cpp.

Referenced by DMusMPUInterruptServiceRoutine(), and SnapTimeStamp().

◆ m_MPUInputBufferTail

ULONG CMiniportDMusUART::m_MPUInputBufferTail
private

Definition at line 79 of file miniport_dmus.cpp.

Referenced by DMusMPUInterruptServiceRoutine(), and SnapTimeStamp().

◆ m_MusicFormatTechnology

GUID CMiniportDMusUART::m_MusicFormatTechnology
private

Definition at line 80 of file miniport_dmus.cpp.

◆ m_NumCaptureStreams

USHORT CMiniportDMusUART::m_NumCaptureStreams
private

◆ m_NumRenderStreams

USHORT CMiniportDMusUART::m_NumRenderStreams
private

◆ m_pInterruptSync

PINTERRUPTSYNC CMiniportDMusUART::m_pInterruptSync
private

Definition at line 72 of file miniport_dmus.cpp.

Referenced by ProcessResources(), and ~CMiniportDMusUART().

◆ m_PowerState

POWER_STATE CMiniportDMusUART::m_PowerState
private

Definition at line 81 of file miniport_dmus.cpp.

◆ m_pPort

PPORTDMUS CMiniportDMusUART::m_pPort
private

Definition at line 70 of file miniport_dmus.cpp.

Referenced by DMusMPUInterruptServiceRoutine(), and ~CMiniportDMusUART().

◆ m_pPortBase

PUCHAR CMiniportDMusUART::m_pPortBase
private

◆ m_pServiceGroup

PSERVICEGROUP CMiniportDMusUART::m_pServiceGroup
private

Definition at line 73 of file miniport_dmus.cpp.

Referenced by DMusMPUInterruptServiceRoutine(), and ~CMiniportDMusUART().

◆ m_UseIRQ

BOOLEAN CMiniportDMusUART::m_UseIRQ
private

Definition at line 83 of file miniport_dmus.cpp.

Referenced by InitializeHardware(), and ~CMiniportDMusUART().

◆ MasterClock

Definition at line 144 of file miniport_dmus.cpp.

◆ OPTIONAL

IN PUNKNOWN OuterUnknown CMiniportDMusUART::OPTIONAL

Definition at line 137 of file miniport_dmus.cpp.

◆ PinID

IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG CMiniportDMusUART::PinID

Definition at line 139 of file miniport_dmus.cpp.

◆ PoolType

IN PUNKNOWN OuterUnknown IN POOL_TYPE CMiniportDMusUART::PoolType

Definition at line 138 of file miniport_dmus.cpp.

◆ Port

IN PRESOURCELIST IN PPORTDMUS CMiniportDMusUART::Port

Definition at line 131 of file miniport_dmus.cpp.

◆ ResourceList

IN PRESOURCELIST CMiniportDMusUART::ResourceList

Definition at line 130 of file miniport_dmus.cpp.

◆ SchedulePreFetch

Definition at line 145 of file miniport_dmus.cpp.

◆ ServiceGroup [1/2]

IN PRESOURCELIST IN PPORTDMUS OUT PSERVICEGROUP* CMiniportDMusUART::ServiceGroup

Definition at line 132 of file miniport_dmus.cpp.

◆ ServiceGroup [2/2]

IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG IN DMUS_STREAM_TYPE IN PKSDATAFORMAT OUT PSERVICEGROUP* CMiniportDMusUART::ServiceGroup

Definition at line 142 of file miniport_dmus.cpp.

◆ StreamType

IN PUNKNOWN OuterUnknown IN POOL_TYPE IN ULONG IN DMUS_STREAM_TYPE CMiniportDMusUART::StreamType

Definition at line 140 of file miniport_dmus.cpp.


The documentation for this class was generated from the following file: