📄 colibri.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 COLIBRI_H
#define COLIBRI_H
extern "C"
{
#include <wdm.h>
}
#include <windef.h>
#include <unknown.h>
#include <ks.h>
#include <ksmedia.h>
#include "DriverI2c.h"
#include "DirectIF.h"
#include "Colibri_reg.h"
#define Colibri_DEVICE_ADDRESS 0x60
class Colibri
{
public:
Colibri(DriverI2C* p_i2c, void* p_DIF);
~Colibri();
enum AFE_MODE
{
AFE_MODE_LOW_IF,
AFE_MODE_BASEBAND,
AFE_MODE_HI_IF
};
static void static_setColibriForLowIF(void *p_Colibri,DWORD if_freq, BOOL spectral_invert, ULONG mode);
VOID lock();
VOID unlock();
VOID initialize();
NTSTATUS writeByte(WORD address, BYTE value);
NTSTATUS readByte(WORD address, PBYTE p_value);
NTSTATUS writeDword(WORD address, DWORD value);
NTSTATUS readDword(WORD address, PDWORD p_value);
VOID setInputMux(DWORD input_mux);
VOID SetupAFEforLowIF();
VOID SetupAFEforBaseband();
VOID SetupAFEforHiIF();
VOID SetMode(AFE_MODE mode);
VOID initializeAudioInputTunerTv();
VOID powerUp();
VOID powerDown();
DirectIF * getDIF(){return _p_DIF;}
private:
NTSTATUS writeByteNoLock(WORD address, BYTE value);
NTSTATUS readByteNoLock(WORD address, PBYTE p_value);
NTSTATUS RegMaskWrite(BYTE size, WORD register_address,BYTE bit_start,BYTE bit_end, DWORD value);
DWORD GetColibriCarrierOffset(ULONG mode);
VOID initSuperBlock();
VOID initChannels();
DriverI2C * _p_i2c;
DirectIF * _p_DIF;
KMUTEX _mutex;
} ;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -