📄 cxpolarisdiagprop.h
字号:
/*+++ *******************************************************************\
*
* Copyright and Disclaimer:
*
* ---------------------------------------------------------------
* This software is provided "AS IS" without warranty of any kind,
* either expressed or implied, including but not limited to the
* implied warranties of noninfringement, merchantability and/or
* fitness for a particular purpose.
* ---------------------------------------------------------------
*
* Copyright (c) 2008 Conexant Systems, Inc.
* All rights reserved.
*
\******************************************************************* ---*/
#ifndef _CXPOLARIS_DIAG_PROP_H_
#define _CXPOLARIS_DIAG_PROP_H_
extern "C"
{
#include <wdm.h>
}
#include <windef.h>
#include <ks.h>
#include <ksmedia.h>
#include "CxPolarisDiag.h"
//Input buffers have a KSPROPERTY in front of the input buffer.
//Output buffers are just the buffer.
//The following macro defines a type with the KSPROPERTY in front
//of another type.
#define PROPERTY_STRUCT(type) \
typedef struct _PROPERTY_##type \
{ \
KSPROPERTY property; \
type data; \
}PROPERTY_##type,*PPROPERTY_##type
class CxPolarisDiagProp
{
PROPERTY_STRUCT(CXPOLARIS_I2C_STRUCT);
PROPERTY_STRUCT(CXPOLARIS_I2C_WRITE_THEN_READ_STRUCT);
PROPERTY_STRUCT(CXPOLARIS_GET_REGISTER_STRUCT);
PROPERTY_STRUCT(CXPOLARIS_SET_REGISTER_STRUCT);
PROPERTY_STRUCT(CXPOLARIS_I2C_PERIOD_STRUCT);
PROPERTY_STRUCT(SW_PRIVATE_STRUCT);
PROPERTY_STRUCT(SW_PRIVATE_CALLBACK);
PROPERTY_STRUCT(SW_PRIVATE_GEN_SI_TUNER_CALLBACK);
PROPERTY_STRUCT(CXPOLARIS_GPIO_STRUCT);
public:
static NTSTATUS i2cWrite(
PIRP p_irp,
PPROPERTY_CXPOLARIS_I2C_STRUCT p_request,
PCXPOLARIS_I2C_STRUCT p_data);
static NTSTATUS i2cRead(
PIRP p_irp,
PPROPERTY_CXPOLARIS_I2C_STRUCT p_request,
PCXPOLARIS_I2C_STRUCT p_data);
static NTSTATUS i2cWriteThenRead(
PIRP p_irp,
PPROPERTY_CXPOLARIS_I2C_WRITE_THEN_READ_STRUCT p_request,
PCXPOLARIS_I2C_WRITE_THEN_READ_STRUCT p_data);
static NTSTATUS getPolarisRegister(
PIRP p_irp,
PPROPERTY_CXPOLARIS_GET_REGISTER_STRUCT p_request,
PCXPOLARIS_GET_REGISTER_STRUCT p_data);
static NTSTATUS setPolarisRegister(
PIRP p_irp,
PPROPERTY_CXPOLARIS_SET_REGISTER_STRUCT p_request,
PCXPOLARIS_SET_REGISTER_STRUCT p_data);
static NTSTATUS getI2CPeriod(
PIRP p_irp,
PPROPERTY_CXPOLARIS_I2C_PERIOD_STRUCT p_request,
PCXPOLARIS_I2C_PERIOD_STRUCT p_data);
static NTSTATUS setI2CPeriod(
PIRP p_irp,
PPROPERTY_CXPOLARIS_I2C_PERIOD_STRUCT p_request,
PCXPOLARIS_I2C_PERIOD_STRUCT p_data);
static NTSTATUS reloadMerlinFirmware(
PIRP p_irp,
KSPROPERTY* p_request,
PVOID p_data);
static NTSTATUS i2cDigitalWrite(
PIRP p_irp,
PPROPERTY_CXPOLARIS_I2C_STRUCT p_request,
PCXPOLARIS_I2C_STRUCT p_data);
static NTSTATUS i2cDigitalWriteThenRead(
PIRP p_irp,
PPROPERTY_CXPOLARIS_I2C_WRITE_THEN_READ_STRUCT p_request,
PCXPOLARIS_I2C_WRITE_THEN_READ_STRUCT p_data);
static NTSTATUS GetSideWinderPrivateStruct(
PIRP p_irp,
PPROPERTY_SW_PRIVATE_STRUCT p_request,
PSW_PRIVATE_STRUCT p_data);
static NTSTATUS SwPrivateCallBack(
PIRP p_irp,
PPROPERTY_SW_PRIVATE_CALLBACK p_request,
PSW_PRIVATE_CALLBACK p_data);
static NTSTATUS SwPrivateGenSiTunerCallBack(
PIRP p_irp,
PPROPERTY_SW_PRIVATE_GEN_SI_TUNER_CALLBACK p_request,
PSW_PRIVATE_GEN_SI_TUNER_CALLBACK p_data);
static NTSTATUS getGPIO(
PIRP p_irp,
PPROPERTY_CXPOLARIS_GPIO_STRUCT p_request,
PCXPOLARIS_GPIO_STRUCT p_data);
static NTSTATUS setGPIO(
PIRP p_irp,
PPROPERTY_CXPOLARIS_GPIO_STRUCT p_request,
PCXPOLARIS_GPIO_STRUCT p_data);
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -