115 stream->PdoContext = devData;
117 stream->streamFormat = StreamFormat;
130 *streamTag =
stream->streamTag;
166 stream->PdoContext = devData;
168 stream->streamFormat = StreamFormat;
181 *streamTag =
stream->streamTag;
struct _PDO_DEVICE_DATA * PPDO_DEVICE_DATA
NTSTATUS ADSPGetResources(_In_ PVOID _context, _PCI_BAR *hdaBar, _PCI_BAR *adspBar, PVOID *ppcap, PNHLT_INFO nhltInfo, BUS_INTERFACE_STANDARD *pciConfig)
ADSP_BUS_INTERFACE ADSP_BusInterface(PVOID Context)
NTSTATUS ADSPFreeStream(_In_ PVOID _context, _In_ HANDLE Handle)
UINT32 ADSPStreamPosition(_In_ PVOID _context, _In_ HANDLE Handle)
void ADSPDisableSPIB(_In_ PVOID _context, _In_ HANDLE Handle)
NTSTATUS ADSPUnregisterInterrupt(_In_ PVOID _context)
NTSTATUS ADSPCleanupDSP(_In_ PVOID _context, _In_ HANDLE Handle)
void ADSPEnableSPIB(_In_ PVOID _context, _In_ HANDLE Handle, UINT32 value)
NTSTATUS ADSPPrepareDSP(_In_ PVOID _context, _In_ HANDLE Handle, _In_ unsigned int ByteSize, _In_ int NumBlocks, _Out_ PVOID *bdlBuf)
NTSTATUS ADSPGetRenderStream(_In_ PVOID _context, HDAUDIO_STREAM_FORMAT StreamFormat, PHANDLE Handle, _Out_ UINT8 *streamTag)
NTSTATUS ADSPRegisterInterrupt(_In_ PVOID _context, _In_ PADSP_INTERRUPT_CALLBACK callback, _In_ PVOID callbackContext)
NTSTATUS ADSPGetCaptureStream(_In_ PVOID _context, HDAUDIO_STREAM_FORMAT StreamFormat, PHANDLE Handle, _Out_ UINT8 *streamTag)
void ADSPStartStopDSP(_In_ PVOID _context, _In_ HANDLE Handle, BOOL startStop)
NTSTATUS ADSPSetPowerState(_In_ PVOID _context, _In_ DEVICE_POWER_STATE powerState)
struct _ADSP_BUS_INTERFACE ADSP_BUS_INTERFACE
_Must_inspect_result_ BOOL(* PADSP_INTERRUPT_CALLBACK)(PVOID context)
#define STATUS_INVALID_HANDLE
#define NT_SUCCESS(StatCode)
#define SklHdAudBusPrint(dbglevel, fmt,...)
struct _HDAC_STREAM * PHDAC_STREAM
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define HDA_REG_SPB_SPBFCCTL
#define HDA_PPCTL_PROCEN(_X_)
void hdac_stream_stop(PHDAC_STREAM stream)
void hdac_stream_reset(PHDAC_STREAM stream)
void hdac_stream_setup(PHDAC_STREAM stream)
void hdac_stream_start(PHDAC_STREAM stream)
static IPrintDialogCallback callback
enum _DEVICE_POWER_STATE DEVICE_POWER_STATE
static void write32(PVOID addr, UINT32 data)
#define hdac_update32(addr, reg, mask, val)
static UINT16 read16(PVOID addr)
#define stream_write32(ctx, reg, data)
PREGISTER_ADSP_INTERRUPT RegisterInterrupt
PDSP_SET_POWER_STATE SetDSPPowerState
PDSP_DISABLE_SPIB DSPDisableSPIB
PGET_ADSP_RESOURCES GetResources
PUNREGISTER_ADSP_INTERRUPT UnregisterInterrupt
PDSP_STREAM_POSITION StreamPosition
PGET_STREAM GetRenderStream
PDSP_ENABLE_SPIB DSPEnableSPIB
PINTERFACE_REFERENCE InterfaceReference
PINTERFACE_DEREFERENCE InterfaceDereference
PDSP_CLEANUP_STREAM CleanupDSP
PDSP_PREPARE_STREAM PrepareDSP
PGET_STREAM GetCaptureStream
PDSP_START_STOP_STREAM TriggerDSP
PVOID dspInterruptContext
BUS_INTERFACE_STANDARD BusInterface
PADSP_INTERRUPT_CALLBACK dspInterruptCallback
#define RtlZeroMemory(Destination, Length)
#define STATUS_INVALID_DEVICE_REQUEST
#define STATUS_NO_SUCH_DEVICE
#define STATUS_DEVICE_BUSY
#define STATUS_INSUFFICIENT_RESOURCES
#define WdfDeviceStopIdle(Device, WaitForD0)
#define WdfDeviceResumeIdle(Device)
FORCEINLINE VOID NTAPI WdfDeviceInterfaceReferenceNoOp(_In_ PVOID Context)
FORCEINLINE VOID NTAPI WdfDeviceInterfaceDereferenceNoOp(_In_ PVOID Context)
_IRQL_requires_same_ _In_ CLONG ByteSize