Author: akhaldi
Date: Fri Jun 26 16:32:40 2015
New Revision: 68278
URL:
http://svn.reactos.org/svn/reactos?rev=68278&view=rev
Log:
[DDK] Bring hdaudio.h to DDK formatting. NFC.
Modified:
trunk/reactos/include/ddk/hdaudio.h
Modified: trunk/reactos/include/ddk/hdaudio.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/hdaudio.h?rev=…
==============================================================================
--- trunk/reactos/include/ddk/hdaudio.h [iso-8859-1] (original)
+++ trunk/reactos/include/ddk/hdaudio.h [iso-8859-1] Fri Jun 26 16:32:40 2015
@@ -6,242 +6,331 @@
#pragma warning(disable:4214)
#endif
-DEFINE_GUID (GUID_HDAUDIO_BUS_INTERFACE, 0xd2eaf88b, 0xab18, 0x41a8, 0xb6, 0x64, 0x8d,
0x59, 0x21, 0x67, 0x67, 0x1b);
+DEFINE_GUID(GUID_HDAUDIO_BUS_INTERFACE, 0xd2eaf88b, 0xab18, 0x41a8, 0xb6, 0x64, 0x8d,
0x59, 0x21, 0x67, 0x67, 0x1b);
DEFINE_GUID(GUID_HDAUDIO_BUS_INTERFACE_BDL, 0xb4d65397, 0x5634, 0x40b0, 0xb0, 0x68, 0xf5,
0xb9, 0xf8, 0xb9, 0x67, 0xa5);
-DEFINE_GUID (GUID_HDAUDIO_BUS_INTERFACE_V2, 0xb52af5fb, 0x424b, 0x4bb9, 0xa1, 0x60, 0x5b,
0x38, 0xbe, 0x94, 0xe5, 0x68);
-DEFINE_GUID (GUID_HDAUDIO_BUS_CLASS, 0xbbd1a745, 0xadd6, 0x4575, 0x9c, 0x2e, 0x9b, 0x42,
0x8d, 0x1c, 0x32, 0x66);
+DEFINE_GUID(GUID_HDAUDIO_BUS_INTERFACE_V2, 0xb52af5fb, 0x424b, 0x4bb9, 0xa1, 0x60, 0x5b,
0x38, 0xbe, 0x94, 0xe5, 0x68);
+DEFINE_GUID(GUID_HDAUDIO_BUS_CLASS, 0xbbd1a745, 0xadd6, 0x4575, 0x9c, 0x2e, 0x9b, 0x42,
0x8d, 0x1c, 0x32, 0x66);
#ifndef _HDAUDIO_CODEC_TRANSFER_
#define _HDAUDIO_CODEC_TRANSFER_
-typedef struct _HDAUDIO_CODEC_COMMAND
-{
- union
- {
- struct
- {
- ULONG Data : 8;
- ULONG VerbId : 12;
- ULONG Node : 8;
- ULONG CodecAddress : 4;
+typedef struct _HDAUDIO_CODEC_COMMAND {
+ union {
+ struct {
+ ULONG Data:8;
+ ULONG VerbId:12;
+ ULONG Node:8;
+ ULONG CodecAddress:4;
} Verb8;
- struct
- {
- ULONG Data : 16;
- ULONG VerbId : 4;
- ULONG Node : 8;
- ULONG CodecAddress : 4;
+ struct {
+ ULONG Data:16;
+ ULONG VerbId:4;
+ ULONG Node:8;
+ ULONG CodecAddress:4;
} Verb16;
ULONG Command;
};
} HDAUDIO_CODEC_COMMAND, *PHDAUDIO_CODEC_COMMAND;
-typedef struct _HDAUDIO_CODEC_RESPONSE
-{
- union
- {
- struct
- {
- union
- {
- struct
- {
- ULONG Response : 26;
- ULONG Tag : 6;
+typedef struct _HDAUDIO_CODEC_RESPONSE {
+ union {
+ struct {
+ union {
+ struct {
+ ULONG Response:26;
+ ULONG Tag:6;
} Unsolicited;
ULONG Response;
};
- ULONG SDataIn : 4;
- ULONG IsUnsolicitedResponse : 1;
+ ULONG SDataIn:4;
+ ULONG IsUnsolicitedResponse:1;
ULONG :25;
- ULONG HasFifoOverrun : 1;
- ULONG IsValid : 1;
+ ULONG HasFifoOverrun:1;
+ ULONG IsValid:1;
};
ULONGLONG CompleteResponse;
};
} HDAUDIO_CODEC_RESPONSE, *PHDAUDIO_CODEC_RESPONSE;
-typedef struct _HDAUDIO_CODEC_TRANSFER
-{
- HDAUDIO_CODEC_COMMAND Output;
+typedef struct _HDAUDIO_CODEC_TRANSFER {
+ HDAUDIO_CODEC_COMMAND Output;
HDAUDIO_CODEC_RESPONSE Input;
} HDAUDIO_CODEC_TRANSFER, *PHDAUDIO_CODEC_TRANSFER;
-#endif
-
-typedef struct _HDAUDIO_STREAM_FORMAT
-{
- ULONG SampleRate;
- USHORT ValidBitsPerSample;
- USHORT ContainerSize;
- USHORT NumberOfChannels;
+
+#endif /* _HDAUDIO_CODEC_TRANSFER_ */
+
+typedef struct _HDAUDIO_STREAM_FORMAT {
+ ULONG SampleRate;
+ USHORT ValidBitsPerSample;
+ USHORT ContainerSize;
+ USHORT NumberOfChannels;
} HDAUDIO_STREAM_FORMAT, *PHDAUDIO_STREAM_FORMAT;
-typedef struct _HDAUDIO_CONVERTER_FORMAT
-{
- union
- {
- struct
- {
- USHORT NumberOfChannels : 4;
- USHORT BitsPerSample : 3;
- USHORT : 1;
- USHORT SampleRate : 7;
- USHORT StreamType : 1;
+typedef struct _HDAUDIO_CONVERTER_FORMAT {
+ union {
+ struct {
+ USHORT NumberOfChannels:4;
+ USHORT BitsPerSample:3;
+ USHORT :1;
+ USHORT SampleRate:7;
+ USHORT StreamType:1;
};
- USHORT ConverterFormat;
+ USHORT ConverterFormat;
};
} HDAUDIO_CONVERTER_FORMAT, *PHDAUDIO_CONVERTER_FORMAT;
-typedef enum _HDAUDIO_STREAM_STATE
-{
+typedef enum _HDAUDIO_STREAM_STATE {
ResetState = 0,
- StopState = 1,
+ StopState = 1,
PauseState = 1,
- RunState = 2
+ RunState = 2
} HDAUDIO_STREAM_STATE, *PHDAUDIO_STREAM_STATE;
-typedef VOID (NTAPI *PHDAUDIO_TRANSFER_COMPLETE_CALLBACK)(HDAUDIO_CODEC_TRANSFER *,
PVOID);
-
-typedef VOID (NTAPI *PHDAUDIO_UNSOLICITED_RESPONSE_CALLBACK)(HDAUDIO_CODEC_RESPONSE,
PVOID);
-
-typedef struct _HDAUDIO_DEVICE_INFORMATION
-{
- USHORT Size; // size of this structure
- USHORT DeviceVersion; // maj.min (maj is high byte, min is low byte)
- USHORT DriverVersion; // maj.min (maj is high byte, min is low byte)
- USHORT CodecsDetected; // mask of codecs present. Bit number == SDI line number
- BOOLEAN IsStripingSupported; // TRUE if striping (2 SDO lines) is supported
+typedef VOID
+(NTAPI *PHDAUDIO_TRANSFER_COMPLETE_CALLBACK)(
+ HDAUDIO_CODEC_TRANSFER *,
+ PVOID);
+
+typedef VOID
+(NTAPI *PHDAUDIO_UNSOLICITED_RESPONSE_CALLBACK)(
+ HDAUDIO_CODEC_RESPONSE,
+ PVOID);
+
+typedef struct _HDAUDIO_DEVICE_INFORMATION {
+ USHORT Size; /* size of this structure */
+ USHORT DeviceVersion; /* maj.min (maj is high byte, min is low byte) */
+ USHORT DriverVersion; /* maj.min (maj is high byte, min is low byte) */
+ USHORT CodecsDetected; /* mask of codecs present. Bit number == SDI line number */
+ BOOLEAN IsStripingSupported; /* TRUE if striping (2 SDO lines) is supported */
} HDAUDIO_DEVICE_INFORMATION, *PHDAUDIO_DEVICE_INFORMATION;
-typedef struct _HDAUDIO_BUFFER_DESCRIPTOR
-{
- PHYSICAL_ADDRESS Address;
- ULONG Length;
- ULONG InterruptOnCompletion;
+typedef struct _HDAUDIO_BUFFER_DESCRIPTOR {
+ PHYSICAL_ADDRESS Address;
+ ULONG Length;
+ ULONG InterruptOnCompletion;
} HDAUDIO_BUFFER_DESCRIPTOR, *PHDAUDIO_BUFFER_DESCRIPTOR;
-
-typedef NTSTATUS (NTAPI *PTRANSFER_CODEC_VERBS) (IN PVOID _context, IN ULONG Count, IN
OUT PHDAUDIO_CODEC_TRANSFER CodecTransfer, IN PHDAUDIO_TRANSFER_COMPLETE_CALLBACK
Callback, IN PVOID Context);
-typedef NTSTATUS (NTAPI *PALLOCATE_CAPTURE_DMA_ENGINE) (IN PVOID _context, IN UCHAR
CodecAddress, IN PHDAUDIO_STREAM_FORMAT StreamFormat, OUT PHANDLE Handle, OUT
PHDAUDIO_CONVERTER_FORMAT ConverterFormat);
-typedef NTSTATUS (NTAPI *PALLOCATE_RENDER_DMA_ENGINE) (IN PVOID _context, IN
PHDAUDIO_STREAM_FORMAT StreamFormat, IN BOOLEAN Stripe, OUT PHANDLE Handle, OUT
PHDAUDIO_CONVERTER_FORMAT ConverterFormat);
-typedef NTSTATUS (NTAPI *PCHANGE_BANDWIDTH_ALLOCATION) (IN PVOID _context, IN HANDLE
Handle, IN PHDAUDIO_STREAM_FORMAT StreamFormat, OUT PHDAUDIO_CONVERTER_FORMAT
ConverterFormat);
-typedef NTSTATUS (NTAPI *PALLOCATE_DMA_BUFFER) (IN PVOID _context, IN HANDLE Handle, IN
SIZE_T RequestedBufferSize, OUT PMDL *BufferMdl, OUT PSIZE_T AllocatedBufferSize, OUT
PUCHAR StreamId, OUT PULONG FifoSize);
-typedef NTSTATUS (NTAPI *PFREE_DMA_BUFFER) (IN PVOID _context, IN HANDLE Handle);
-typedef NTSTATUS (NTAPI *PFREE_DMA_ENGINE) (IN PVOID _context, IN HANDLE Handle);
-typedef NTSTATUS (NTAPI *PSET_DMA_ENGINE_STATE) (IN PVOID _context, IN
HDAUDIO_STREAM_STATE StreamState, IN ULONG NumberOfHandles, IN PHANDLE Handles);
-typedef VOID (NTAPI *PGET_WALL_CLOCK_REGISTER) (IN PVOID _context, OUT PULONG
*Wallclock);
-typedef NTSTATUS (NTAPI *PGET_LINK_POSITION_REGISTER) (IN PVOID _context, IN HANDLE
Handle, OUT PULONG *Position);
-typedef NTSTATUS (NTAPI *PREGISTER_EVENT_CALLBACK) (IN PVOID _context, IN
PHDAUDIO_UNSOLICITED_RESPONSE_CALLBACK Routine, IN PVOID Context, OUT PUCHAR Tag);
-typedef NTSTATUS (NTAPI *PUNREGISTER_EVENT_CALLBACK) (IN PVOID _context, IN UCHAR Tag);
-typedef NTSTATUS (NTAPI *PGET_DEVICE_INFORMATION) (IN PVOID _context, IN OUT
PHDAUDIO_DEVICE_INFORMATION DeviceInformation);
-typedef VOID (NTAPI *PGET_RESOURCE_INFORMATION) (IN PVOID _context, OUT PUCHAR
CodecAddress, OUT PUCHAR FunctionGroupStartNode);
-
-typedef struct _HDAUDIO_BUS_INTERFACE
-{
- USHORT Size;
- USHORT Version;
- PVOID Context;
- PINTERFACE_REFERENCE InterfaceReference;
- PINTERFACE_DEREFERENCE InterfaceDereference;
-
- PTRANSFER_CODEC_VERBS TransferCodecVerbs;
- PALLOCATE_CAPTURE_DMA_ENGINE AllocateCaptureDmaEngine;
- PALLOCATE_RENDER_DMA_ENGINE AllocateRenderDmaEngine;
- PCHANGE_BANDWIDTH_ALLOCATION ChangeBandwidthAllocation;
- PALLOCATE_DMA_BUFFER AllocateDmaBuffer;
- PFREE_DMA_BUFFER FreeDmaBuffer;
- PFREE_DMA_ENGINE FreeDmaEngine;
- PSET_DMA_ENGINE_STATE SetDmaEngineState;
- PGET_WALL_CLOCK_REGISTER GetWallClockRegister;
- PGET_LINK_POSITION_REGISTER GetLinkPositionRegister;
- PREGISTER_EVENT_CALLBACK RegisterEventCallback;
- PUNREGISTER_EVENT_CALLBACK UnregisterEventCallback;
- PGET_DEVICE_INFORMATION GetDeviceInformation;
- PGET_RESOURCE_INFORMATION GetResourceInformation;
+typedef NTSTATUS
+(NTAPI *PTRANSFER_CODEC_VERBS)(
+ IN PVOID _context,
+ IN ULONG Count,
+ IN OUT PHDAUDIO_CODEC_TRANSFER CodecTransfer,
+ IN PHDAUDIO_TRANSFER_COMPLETE_CALLBACK Callback,
+ IN PVOID Context);
+
+typedef NTSTATUS
+(NTAPI *PALLOCATE_CAPTURE_DMA_ENGINE)(
+ IN PVOID _context,
+ IN UCHAR CodecAddress,
+ IN PHDAUDIO_STREAM_FORMAT StreamFormat,
+ OUT PHANDLE Handle,
+ OUT PHDAUDIO_CONVERTER_FORMAT ConverterFormat);
+
+typedef NTSTATUS
+(NTAPI *PALLOCATE_RENDER_DMA_ENGINE)(
+ IN PVOID _context,
+ IN PHDAUDIO_STREAM_FORMAT StreamFormat,
+ IN BOOLEAN Stripe,
+ OUT PHANDLE Handle,
+ OUT PHDAUDIO_CONVERTER_FORMAT ConverterFormat);
+
+typedef NTSTATUS
+(NTAPI *PCHANGE_BANDWIDTH_ALLOCATION)(
+ IN PVOID _context,
+ IN HANDLE Handle,
+ IN PHDAUDIO_STREAM_FORMAT StreamFormat,
+ OUT PHDAUDIO_CONVERTER_FORMAT ConverterFormat);
+
+typedef NTSTATUS
+(NTAPI *PALLOCATE_DMA_BUFFER)(
+ IN PVOID _context,
+ IN HANDLE Handle,
+ IN SIZE_T RequestedBufferSize,
+ OUT PMDL *BufferMdl,
+ OUT PSIZE_T AllocatedBufferSize,
+ OUT PUCHAR StreamId,
+ OUT PULONG FifoSize);
+
+typedef NTSTATUS
+(NTAPI *PFREE_DMA_BUFFER)(
+ IN PVOID _context,
+ IN HANDLE Handle);
+
+typedef NTSTATUS
+(NTAPI *PFREE_DMA_ENGINE)(
+ IN PVOID _context,
+ IN HANDLE Handle);
+
+typedef NTSTATUS
+(NTAPI *PSET_DMA_ENGINE_STATE)(
+ IN PVOID _context,
+ IN HDAUDIO_STREAM_STATE StreamState,
+ IN ULONG NumberOfHandles,
+ IN PHANDLE Handles);
+
+typedef VOID
+(NTAPI *PGET_WALL_CLOCK_REGISTER)(
+ IN PVOID _context,
+ OUT PULONG *Wallclock);
+
+typedef NTSTATUS
+(NTAPI *PGET_LINK_POSITION_REGISTER)(
+ IN PVOID _context,
+ IN HANDLE Handle,
+ OUT PULONG *Position);
+
+typedef NTSTATUS
+(NTAPI *PREGISTER_EVENT_CALLBACK)(
+ IN PVOID _context,
+ IN PHDAUDIO_UNSOLICITED_RESPONSE_CALLBACK Routine,
+ IN PVOID Context,
+ OUT PUCHAR Tag);
+
+typedef NTSTATUS
+(NTAPI *PUNREGISTER_EVENT_CALLBACK)(
+ IN PVOID _context,
+ IN UCHAR Tag);
+
+typedef NTSTATUS
+(NTAPI *PGET_DEVICE_INFORMATION)(
+ IN PVOID _context,
+ IN OUT PHDAUDIO_DEVICE_INFORMATION DeviceInformation);
+
+typedef VOID
+(NTAPI *PGET_RESOURCE_INFORMATION)(
+ IN PVOID _context,
+ OUT PUCHAR CodecAddress,
+ OUT PUCHAR FunctionGroupStartNode);
+
+typedef struct _HDAUDIO_BUS_INTERFACE {
+ USHORT Size;
+ USHORT Version;
+ PVOID Context;
+ PINTERFACE_REFERENCE InterfaceReference;
+ PINTERFACE_DEREFERENCE InterfaceDereference;
+ PTRANSFER_CODEC_VERBS TransferCodecVerbs;
+ PALLOCATE_CAPTURE_DMA_ENGINE AllocateCaptureDmaEngine;
+ PALLOCATE_RENDER_DMA_ENGINE AllocateRenderDmaEngine;
+ PCHANGE_BANDWIDTH_ALLOCATION ChangeBandwidthAllocation;
+ PALLOCATE_DMA_BUFFER AllocateDmaBuffer;
+ PFREE_DMA_BUFFER FreeDmaBuffer;
+ PFREE_DMA_ENGINE FreeDmaEngine;
+ PSET_DMA_ENGINE_STATE SetDmaEngineState;
+ PGET_WALL_CLOCK_REGISTER GetWallClockRegister;
+ PGET_LINK_POSITION_REGISTER GetLinkPositionRegister;
+ PREGISTER_EVENT_CALLBACK RegisterEventCallback;
+ PUNREGISTER_EVENT_CALLBACK UnregisterEventCallback;
+ PGET_DEVICE_INFORMATION GetDeviceInformation;
+ PGET_RESOURCE_INFORMATION GetResourceInformation;
} HDAUDIO_BUS_INTERFACE, *PHDAUDIO_BUS_INTERFACE;
-typedef void (NTAPI *PHDAUDIO_BDL_ISR) (IN VOID *Context, IN ULONG InterruptBitMask);
-
-typedef NTSTATUS (NTAPI *PALLOCATE_CONTIGUOUS_DMA_BUFFER) (IN PVOID _context, IN HANDLE
Handle,
- ULONG RequestedBufferSize, OUT PVOID *DataBuffer, OUT PHDAUDIO_BUFFER_DESCRIPTOR
*BdlBuffer);
-typedef NTSTATUS (NTAPI *PFREE_CONTIGUOUS_DMA_BUFFER) (IN PVOID _context, IN HANDLE
Handle);
-typedef NTSTATUS (NTAPI *PSETUP_DMA_ENGINE_WITH_BDL) (IN PVOID _context, IN HANDLE
Handle, IN ULONG BufferLength,
- IN ULONG Lvi, IN PHDAUDIO_BDL_ISR Isr, IN PVOID Context, OUT PUCHAR StreamId, OUT
PULONG FifoSize);
-
-typedef struct _HDAUDIO_BUS_INTERFACE_BDL
-{
- USHORT Size;
- USHORT Version;
- PVOID Context;
- PINTERFACE_REFERENCE InterfaceReference;
- PINTERFACE_DEREFERENCE InterfaceDereference;
-
- PTRANSFER_CODEC_VERBS TransferCodecVerbs;
- PALLOCATE_CAPTURE_DMA_ENGINE AllocateCaptureDmaEngine;
- PALLOCATE_RENDER_DMA_ENGINE AllocateRenderDmaEngine;
- PCHANGE_BANDWIDTH_ALLOCATION ChangeBandwidthAllocation;
+typedef void
+(NTAPI *PHDAUDIO_BDL_ISR)(
+ IN VOID *Context,
+ IN ULONG InterruptBitMask);
+
+typedef NTSTATUS
+(NTAPI *PALLOCATE_CONTIGUOUS_DMA_BUFFER)(
+ IN PVOID _context,
+ IN HANDLE Handle,
+ ULONG RequestedBufferSize,
+ OUT PVOID *DataBuffer,
+ OUT PHDAUDIO_BUFFER_DESCRIPTOR *BdlBuffer);
+
+typedef NTSTATUS
+(NTAPI *PFREE_CONTIGUOUS_DMA_BUFFER)(
+ IN PVOID _context,
+ IN HANDLE Handle);
+
+typedef NTSTATUS
+(NTAPI *PSETUP_DMA_ENGINE_WITH_BDL)(
+ IN PVOID _context,
+ IN HANDLE Handle,
+ IN ULONG BufferLength,
+ IN ULONG Lvi,
+ IN PHDAUDIO_BDL_ISR Isr,
+ IN PVOID Context,
+ OUT PUCHAR StreamId,
+ OUT PULONG FifoSize);
+
+typedef struct _HDAUDIO_BUS_INTERFACE_BDL {
+ USHORT Size;
+ USHORT Version;
+ PVOID Context;
+ PINTERFACE_REFERENCE InterfaceReference;
+ PINTERFACE_DEREFERENCE InterfaceDereference;
+ PTRANSFER_CODEC_VERBS TransferCodecVerbs;
+ PALLOCATE_CAPTURE_DMA_ENGINE AllocateCaptureDmaEngine;
+ PALLOCATE_RENDER_DMA_ENGINE AllocateRenderDmaEngine;
+ PCHANGE_BANDWIDTH_ALLOCATION ChangeBandwidthAllocation;
PALLOCATE_CONTIGUOUS_DMA_BUFFER AllocateContiguousDmaBuffer;
- PSETUP_DMA_ENGINE_WITH_BDL SetupDmaEngineWithBdl;
- PFREE_CONTIGUOUS_DMA_BUFFER FreeContiguousDmaBuffer;
- PFREE_DMA_ENGINE FreeDmaEngine;
- PSET_DMA_ENGINE_STATE SetDmaEngineState;
- PGET_WALL_CLOCK_REGISTER GetWallClockRegister;
- PGET_LINK_POSITION_REGISTER GetLinkPositionRegister;
- PREGISTER_EVENT_CALLBACK RegisterEventCallback;
- PUNREGISTER_EVENT_CALLBACK UnregisterEventCallback;
- PGET_DEVICE_INFORMATION GetDeviceInformation;
- PGET_RESOURCE_INFORMATION GetResourceInformation;
+ PSETUP_DMA_ENGINE_WITH_BDL SetupDmaEngineWithBdl;
+ PFREE_CONTIGUOUS_DMA_BUFFER FreeContiguousDmaBuffer;
+ PFREE_DMA_ENGINE FreeDmaEngine;
+ PSET_DMA_ENGINE_STATE SetDmaEngineState;
+ PGET_WALL_CLOCK_REGISTER GetWallClockRegister;
+ PGET_LINK_POSITION_REGISTER GetLinkPositionRegister;
+ PREGISTER_EVENT_CALLBACK RegisterEventCallback;
+ PUNREGISTER_EVENT_CALLBACK UnregisterEventCallback;
+ PGET_DEVICE_INFORMATION GetDeviceInformation;
+ PGET_RESOURCE_INFORMATION GetResourceInformation;
} HDAUDIO_BUS_INTERFACE_BDL, *PHDAUDIO_BUS_INTERFACE_BDL;
-typedef NTSTATUS (NTAPI *PALLOCATE_DMA_BUFFER_WITH_NOTIFICATION) (IN PVOID _context,
- IN HANDLE Handle,
- IN ULONG NotificationCount,
- IN SIZE_T
RequestedBufferSize,
- OUT PMDL *BufferMdl,
- OUT PSIZE_T
AllocatedBufferSize,
- OUT PSIZE_T
OffsetFromFirstPage,
- OUT PUCHAR StreamId,
- OUT PULONG FifoSize);
-
-typedef NTSTATUS (NTAPI *PFREE_DMA_BUFFER_WITH_NOTIFICATION) (IN PVOID _context,
- IN HANDLE Handle,
- IN PMDL BufferMdl,
- IN SIZE_T BufferSize);
-
-typedef NTSTATUS (NTAPI *PREGISTER_NOTIFICATION_EVENT) (IN PVOID _context,
- IN HANDLE Handle,
- IN PKEVENT NotificationEvent);
-
-typedef NTSTATUS (NTAPI *PUNREGISTER_NOTIFICATION_EVENT) (IN PVOID _context,
- IN HANDLE Handle,
- IN PKEVENT NotificationEvent);
-
-typedef struct _HDAUDIO_BUS_INTERFACE_V2
-{
- USHORT Size;
- USHORT Version;
- PVOID Context;
- PINTERFACE_REFERENCE InterfaceReference;
- PINTERFACE_DEREFERENCE InterfaceDereference;
-
- PTRANSFER_CODEC_VERBS TransferCodecVerbs;
- PALLOCATE_CAPTURE_DMA_ENGINE AllocateCaptureDmaEngine;
- PALLOCATE_RENDER_DMA_ENGINE AllocateRenderDmaEngine;
- PCHANGE_BANDWIDTH_ALLOCATION ChangeBandwidthAllocation;
- PALLOCATE_DMA_BUFFER AllocateDmaBuffer;
- PFREE_DMA_BUFFER FreeDmaBuffer;
- PFREE_DMA_ENGINE FreeDmaEngine;
- PSET_DMA_ENGINE_STATE SetDmaEngineState;
- PGET_WALL_CLOCK_REGISTER GetWallClockRegister;
- PGET_LINK_POSITION_REGISTER GetLinkPositionRegister;
- PREGISTER_EVENT_CALLBACK RegisterEventCallback;
- PUNREGISTER_EVENT_CALLBACK UnregisterEventCallback;
- PGET_DEVICE_INFORMATION GetDeviceInformation;
- PGET_RESOURCE_INFORMATION GetResourceInformation;
- PALLOCATE_DMA_BUFFER_WITH_NOTIFICATION AllocateDmaBufferWithNotification;
- PFREE_DMA_BUFFER_WITH_NOTIFICATION FreeDmaBufferWithNotification;
- PREGISTER_NOTIFICATION_EVENT RegisterNotificationEvent;
- PUNREGISTER_NOTIFICATION_EVENT UnregisterNotificationEvent;
+typedef NTSTATUS
+(NTAPI *PALLOCATE_DMA_BUFFER_WITH_NOTIFICATION)(
+ IN PVOID _context,
+ IN HANDLE Handle,
+ IN ULONG NotificationCount,
+ IN SIZE_T RequestedBufferSize,
+ OUT PMDL *BufferMdl,
+ OUT PSIZE_T AllocatedBufferSize,
+ OUT PSIZE_T OffsetFromFirstPage,
+ OUT PUCHAR StreamId,
+ OUT PULONG FifoSize);
+
+typedef NTSTATUS
+(NTAPI *PFREE_DMA_BUFFER_WITH_NOTIFICATION)(
+ IN PVOID _context,
+ IN HANDLE Handle,
+ IN PMDL BufferMdl,
+ IN SIZE_T BufferSize);
+
+typedef NTSTATUS
+(NTAPI *PREGISTER_NOTIFICATION_EVENT)(
+ IN PVOID _context,
+ IN HANDLE Handle,
+ IN PKEVENT NotificationEvent);
+
+typedef NTSTATUS
+(NTAPI *PUNREGISTER_NOTIFICATION_EVENT)(
+ IN PVOID _context,
+ IN HANDLE Handle,
+ IN PKEVENT NotificationEvent);
+
+typedef struct _HDAUDIO_BUS_INTERFACE_V2 {
+ USHORT Size;
+ USHORT Version;
+ PVOID Context;
+ PINTERFACE_REFERENCE InterfaceReference;
+ PINTERFACE_DEREFERENCE InterfaceDereference;
+ PTRANSFER_CODEC_VERBS TransferCodecVerbs;
+ PALLOCATE_CAPTURE_DMA_ENGINE AllocateCaptureDmaEngine;
+ PALLOCATE_RENDER_DMA_ENGINE AllocateRenderDmaEngine;
+ PCHANGE_BANDWIDTH_ALLOCATION ChangeBandwidthAllocation;
+ PALLOCATE_DMA_BUFFER AllocateDmaBuffer;
+ PFREE_DMA_BUFFER FreeDmaBuffer;
+ PFREE_DMA_ENGINE FreeDmaEngine;
+ PSET_DMA_ENGINE_STATE SetDmaEngineState;
+ PGET_WALL_CLOCK_REGISTER GetWallClockRegister;
+ PGET_LINK_POSITION_REGISTER GetLinkPositionRegister;
+ PREGISTER_EVENT_CALLBACK RegisterEventCallback;
+ PUNREGISTER_EVENT_CALLBACK UnregisterEventCallback;
+ PGET_DEVICE_INFORMATION GetDeviceInformation;
+ PGET_RESOURCE_INFORMATION GetResourceInformation;
+ PALLOCATE_DMA_BUFFER_WITH_NOTIFICATION AllocateDmaBufferWithNotification;
+ PFREE_DMA_BUFFER_WITH_NOTIFICATION FreeDmaBufferWithNotification;
+ PREGISTER_NOTIFICATION_EVENT RegisterNotificationEvent;
+ PUNREGISTER_NOTIFICATION_EVENT UnregisterNotificationEvent;
} HDAUDIO_BUS_INTERFACE_V2, *PHDAUDIO_BUS_INTERFACE_V2;
#ifdef _MSC_VER
@@ -249,5 +338,4 @@
#pragma warning(default:4214)
#endif
-#endif // _HDAUDIO_H_
-
+#endif /* _HDAUDIO_H_ */