⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 phantom_defs.h

📁 QPSK Tuner details, for conexant chipset.
💻 H
📖 第 1 页 / 共 2 页
字号:
#ifndef PHANTOM_DEFS_H_DEFINED
#define PHANTOM_DEFS_H_DEFINED

#include "cs_typedef.h"

/* phantom_defs.h */
/*+++ *******************************************************************\
*
*  Abstract:
*
*       Contains common definitions and typedefs used throughout the 
*       Phantom Driver software.
*
*
*  Created: 3/30/2004
*
*  Author: Amarnath Puttur
*
*  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) 2004 Conexant Systems, Inc. 
*     All rights reserved. 
*
\******************************************************************* ---*/

/*******************************************************************************************************/
#ifndef TRUE
#define TRUE    1                    /* from msdn: The bool type participates in integral promotions.*/
#define FALSE   0                    /* ... An r-value of type bool can be converted to an r-value */
#endif                               /* ... of type int, with false becoming zero and true becoming one.*/

#ifndef True
#define True    TRUE 
#define False   FALSE
#endif               

/*******************************************************************************************************/
/* common-use types */
/*******************************************************************************************************/
//#ifndef BOOL
//typedef int     BOOL;
//#endif  /* BOOL */

/*******************************************************************************************************/
/* common-use equivs */
/*******************************************************************************************************/
typedef unsigned long  PHANTOM_AGCACC;
typedef unsigned long  PHANTOM_SYMBRATE;

/*******************************************************************************************************/
/* function prototypes passed by application (aka user) */
/*******************************************************************************************************/
typedef unsigned char  PHANTOM_SBaddress;
typedef unsigned long  *PHANTOM_SBstatus;
/* type pointer to function to read byte to ser.bus */
typedef unsigned char  (*PHANTOM_READ_SB)(unsigned long, PHANTOM_SBaddress, PHANTOM_SBstatus);         
/* type pointer to function to write byte to ser.bus */
typedef void (*PHANTOM_WRITE_SB)(unsigned long, PHANTOM_SBaddress,unsigned char, PHANTOM_SBstatus);    
/* type pointer to function to write multiple-byte to ser.bus */
typedef void (*PHANTOM_MULTI_WRITE_SB)(unsigned long, unsigned long, PHANTOM_SBaddress, unsigned char*, PHANTOM_SBstatus);    

/*******************************************************************************************************/
/*                               --- Demod Handle Management ---                                       */
/*******************************************************************************************************/
#define PHANTOM_DEMOD_HANDLE_I2C_ADDR_MASK      0x000000FF 
#define PHANTOM_DEMOD_HANDLE_I2C_ADDR_SHIFT     0UL 
#define PHANTOM_DEMOD_HANDLE_UNIT_MASK          0x00000100 
#define PHANTOM_TUNER_HANDLE_UNIT_MASK          0x00000200 
#define PHANTOM_DEMOD_HANDLE_UNIT_SHIFT         8UL 
#define PHANTOM_TUNER_HANDLE_UNIT_SHIFT         9UL 
#define PHANTOM_DEMOD_HANDLE_CLIENT_MASK        0xFFFF0000 
#define PHANTOM_DEMOD_HANDLE_CLIENT_SHIFT       16UL 

#define PHANTOM_DEMOD_HANDLE_RESERVED_MASK      ~(PHANTOM_DEMOD_HANDLE_I2C_ADDR_MASK | \
                                          PHANTOM_DEMOD_HANDLE_UNIT_MASK     | \
                                          PHANTOM_DEMOD_HANDLE_CLIENT_MASK) 

/* Access macros allowing position independent extraction and insertion of handle fields */
#define PHANTOM_GET_DEMOD_HANDLE_I2C_ADDR(handle) \
   (((handle) & PHANTOM_DEMOD_HANDLE_I2C_ADDR_MASK) >> PHANTOM_DEMOD_HANDLE_I2C_ADDR_SHIFT)

#define PHANTOM_GET_DEMOD_HANDLE_CLIENT_INFO(handle) \
   (((handle) & PHANTOM_DEMOD_HANDLE_CLIENT_MASK) >> PHANTOM_DEMOD_HANDLE_CLIENT_SHIFT)
       
#define PHANTOM_GET_DEMOD_HANDLE_UNIT(handle) \
   (((handle) & PHANTOM_DEMOD_HANDLE_UNIT_MASK) >> PHANTOM_DEMOD_HANDLE_UNIT_SHIFT)

#define PHANTOM_GET_TUNER_HANDLE_UNIT(handle) \
   (((handle) & PHANTOM_TUNER_HANDLE_UNIT_MASK) >> PHANTOM_TUNER_HANDLE_UNIT_SHIFT)

#define PHANTOM_SET_DEMOD_HANDLE_I2C_ADDR(handle, addr)           \
   (handle) = ((((handle) & ~PHANTOM_DEMOD_HANDLE_I2C_ADDR_MASK) | \
                (((addr) << PHANTOM_DEMOD_HANDLE_I2C_ADDR_SHIFT) & PHANTOM_DEMOD_HANDLE_I2C_ADDR_MASK)) & 0xFF)

#define PHANTOM_SET_DEMOD_HANDLE_CLIENT_INFO(handle, value)       \
   (handle) = (((handle) & ~PHANTOM_DEMOD_HANDLE_CLIENT_MASK) |   \
               (((value) << PHANTOM_DEMOD_HANDLE_CLIENT_SHIFT) & PHANTOM_DEMOD_HANDLE_CLIENT_MASK))
       
#define PHANTOM_SET_DEMOD_HANDLE_UNIT(handle, unit)               \
   (handle) = (((handle) & ~PHANTOM_DEMOD_HANDLE_UNIT_MASK) |     \
               (((unit) << PHANTOM_DEMOD_HANDLE_UNIT_SHIFT) & PHANTOM_DEMOD_HANDLE_UNIT_MASK))

/*******************************************************************************************************/
/*                               --- MAX LIMITS ---                                                    */
/*******************************************************************************************************/
#define PHANTOM_MAX_BCDNO                    18   /* max number of bcd digits in bcdno structure */
#define PHANTOM_MAX_DOWNLOAD_RETRY_TIMES      3   /* max number of software download retry times. */
#define PHANTOM_MAX_NIMS                      5   /* max number of NIMs driver will handle (default is 2) */

#define PHANTOM_MAX_VERSION_LENGTH           25   /* max length of driver-version string */
#define PHANTOM_MAX_AGC_TABLE_LENGTH         10   /* Maximum entries in the AGC lookup table used for power estimation */

/* Command interface */
#define PHANTOM_MAX_LLF_ARG_SIZE             30
#define PHANTOM_MAX_LLF_WRITE_ARGS           30   /* Maximum number of LLF arguments */
#define PHANTOM_MAX_LLF_READ_ARGS            30   /* Maximum number of LLF result bytes */

#define PHANTOM_MAX_REGISTER_LEN              4   /* Max length of a multi-byte register field is 4 bytes */
#define PHANTOM_MAX_READ_CONTROL_BYTE_POLL 5000   /* Maximum poll count for llf read control byte */
#define PHANTOM_MAX_LNB_MSG                   6   /* Maximum DiSEqC LNB messages per LLF */
#define PHANTOM_MAX_LNB_RDY_POLL           3000   /* Maximum LNB ready for new message bit poll */
#define PHANTOM_MAX_LNB_INTR_POLL          1000   /* Maximum LNB reply interrupt poll */
#define PHANTOM_MAX_LNB_REPLY_BYTE            8   /* Maximum number of LNB reply bytes */
#define PHANTOM_MAX_TUNER_HANDSHAKE_POLL   2000UL /* Maximum number of time to poll for tuner handshake bit */
#define PHANTOM_MAX_POWER_TABLE_LENGTH       10

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -