| 1 | /****************************************************************************/ |
|---|
| 2 | /* */ |
|---|
| 3 | /* Copyright (c) 2003 Trident Technologies, Inc. */ |
|---|
| 4 | /* All rights reserved */ |
|---|
| 5 | /* */ |
|---|
| 6 | /* The content of this file or document is CONFIDENTIAL and PROPRIETARY */ |
|---|
| 7 | /* to Trident Microsystems, Inc. It is subject to the terms of a */ |
|---|
| 8 | /* License Agreement between Licensee and Trident Technologies, Inc. */ |
|---|
| 9 | /* restricting among other things, the use, reproduction, distribution */ |
|---|
| 10 | /* and transfer. Each of the embodiments, including this information and */ |
|---|
| 11 | /* any derivative work shall retain this copyright notice */ |
|---|
| 12 | /* */ |
|---|
| 13 | /****************************************************************************/ |
|---|
| 14 | |
|---|
| 15 | #ifndef CAS_2B_GENERAL_DEFINITIONS_DTVS205_H |
|---|
| 16 | #define CAS_2B_GENERAL_DEFINITIONS_DTVS205_H |
|---|
| 17 | |
|---|
| 18 | |
|---|
| 19 | /****************************************************************************** |
|---|
| 20 | * definitions |
|---|
| 21 | ******************************************************************************/ |
|---|
| 22 | |
|---|
| 23 | // for linux OS platform |
|---|
| 24 | typedef unsigned char BOOLEAN; |
|---|
| 25 | #undef FALSE |
|---|
| 26 | #undef TRUE |
|---|
| 27 | #define FALSE 0 |
|---|
| 28 | #define TRUE 1 |
|---|
| 29 | |
|---|
| 30 | #define __stdcall |
|---|
| 31 | #define _stdcall |
|---|
| 32 | |
|---|
| 33 | |
|---|
| 34 | /////////////////////////////////////////////////////////////////////////////////////// |
|---|
| 35 | //enums |
|---|
| 36 | /////////////////////////////////////////////////////////////////////////////////////// |
|---|
| 37 | //Error constant definitions |
|---|
| 38 | typedef enum EN_ERROR_TYPE{ |
|---|
| 39 | CAS_2B_API_SUCCESS = 0, |
|---|
| 40 | UNDEFINED_RECEIVER_MODE, |
|---|
| 41 | UNDEFINED_CARRIER_ACQUISITION_TYPE, |
|---|
| 42 | UNDEFINED_INVERSE_SPECTRUM_TYPE, |
|---|
| 43 | SNR_IS_CALCULATED_ONLY_FOR_VSB_AND_ITUB, |
|---|
| 44 | CAS_2B_UNDEFINED_TUNER_TYPE, |
|---|
| 45 | CAS_2B_UNDEFINED_TUNER_DTT761X_REF_DIVIDER_RATIO_TYPE, |
|---|
| 46 | CAS_2B_UNDEFINED_TUNER_DTT761X_AGC_TYPE, |
|---|
| 47 | CAS_2B_UNDEFINED_TUNER_DTT761X_CHRGE_PUMP_TYPE, |
|---|
| 48 | CAS_2B_UNDEFINED_TUNER_DTT761X_AGC_TIME_CONSTANT_TYPE, |
|---|
| 49 | CAS_2B_UNDEFINED_TUNER_DTT761X_AGC_MODE_TYPE, |
|---|
| 50 | CAS_2B_UNDEFINED_TUNER_DTT761X_SET_OPTION_TYPE, |
|---|
| 51 | CAS_2B_TUNER_DTT761X_CHANNEL_OUT_OF_RANGE, |
|---|
| 52 | CAS_2B_TUNER_DTT761X_N_VALUE_OUT_OF_RANGE, |
|---|
| 53 | CAS_2B_TUNER_DTT761X_SEND_CONTROL_DATA_FAILED, |
|---|
| 54 | CAS_2B_TUNER_DTT761X_FREQUENCY_VALUE_OUT_OF_RANGE, |
|---|
| 55 | CAS_2B_TUNER_DTT761X_CHANNEL_DOES_NOT_FIT_ANY_FREQUENCY, |
|---|
| 56 | CAS_2B_TUNER_DTT761X_GENERAL_FAILIUR, |
|---|
| 57 | #if 1//20071016 |
|---|
| 58 | CAS_2B_UNDEFINED_TUNER_DTVS205FH201A_REF_DIVIDER_RATIO_TYPE, |
|---|
| 59 | CAS_2B_UNDEFINED_TUNER_DTVS205FH201A_AGC_TYPE, |
|---|
| 60 | CAS_2B_UNDEFINED_TUNER_DTVS205FH201A_CHRGE_PUMP_TYPE, |
|---|
| 61 | CAS_2B_UNDEFINED_TUNER_DTVS205FH201A_AGC_TIME_CONSTANT_TYPE, |
|---|
| 62 | CAS_2B_UNDEFINED_TUNER_DTVS205FH201A_AGC_MODE_TYPE, |
|---|
| 63 | CAS_2B_UNDEFINED_TUNER_DTVS205FH201A_SET_OPTION_TYPE, |
|---|
| 64 | CAS_2B_TUNER_DTVS205FH201A_CHANNEL_OUT_OF_RANGE, |
|---|
| 65 | CAS_2B_TUNER_DTVS205FH201A_N_VALUE_OUT_OF_RANGE, |
|---|
| 66 | CAS_2B_TUNER_DTVS205FH201A_SEND_CONTROL_DATA_FAILED, |
|---|
| 67 | CAS_2B_TUNER_DTVS205FH201A_FREQUENCY_VALUE_OUT_OF_RANGE, |
|---|
| 68 | CAS_2B_TUNER_DTVS205FH201A_CHANNEL_DOES_NOT_FIT_ANY_FREQUENCY, |
|---|
| 69 | CAS_2B_TUNER_DTVS205FH201A_GENERAL_FAILIUR, |
|---|
| 70 | #endif |
|---|
| 71 | CAS_2B_TUNER_DTT768x0_CHANNEL_OUT_OF_RANGE, |
|---|
| 72 | CAS_2B_TUNER_DTT768x0_N_VALUE_OUT_OF_RANGE, |
|---|
| 73 | CAS_2B_TUNER_DTT768x0_SEND_CONTROL_DATA_FAILED, |
|---|
| 74 | CAS_2B_TUNER_DTT768x0_FREQUENCY_VALUE_OUT_OF_RANGE, |
|---|
| 75 | CAS_2B_TUNER_DTT768x0_CHANNEL_DOES_NOT_FIT_ANY_FREQUENCY, |
|---|
| 76 | CAS_2B_TUNER_DTT768x0_GENERAL_FAILIUR, |
|---|
| 77 | TUNER_THOMSON_T2000_UNDEFINED_SET_OPTION_TYPE, |
|---|
| 78 | TUNER_THOMSON_T2000_SEND_CONTROL_DATA_FAILED, |
|---|
| 79 | TUNER_THOMSON_T2000_UNDEFINED_AGC_SELECTION, |
|---|
| 80 | TUNER_THOMSON_T2000_UNDEFINED_INPUT, |
|---|
| 81 | TUNER_THOMSON_T2000_UNDEFINED_MODE, |
|---|
| 82 | TUNER_THOMSON_T2000_UNDEFINED_REF_DIVIDER_RATIO, |
|---|
| 83 | FUNCTION_RECEIVED_NULL_PARAMETER, |
|---|
| 84 | FILE_SIZE_CAN_NOT_BE_DIVIDED_BY_DATA_SIZE, |
|---|
| 85 | CAS_2B_API_SEND_CODE_AND_DATA_FUNCTION_FAILED, |
|---|
| 86 | CAS_2B_SEND_RUN_FLAG_FUNCTION_FAILED, |
|---|
| 87 | CAS_2B_ILLIGAL_RECEIVE_REGISTER_NUMBER, |
|---|
| 88 | CAS_2B_SET_RECEIVE_REGISTER_FUNCTION_FAILED, |
|---|
| 89 | UNDEFINED_CHANNEL_CONDITION, |
|---|
| 90 | NDEFINED_NTSC_REJECTION_FILTER, |
|---|
| 91 | UNDEFINED_MPEG_SERIAL_OUTPUT_MODE, |
|---|
| 92 | UNDEFINED_TUNER_PHASE_NOISE, |
|---|
| 93 | UNDEFINED_NTSC_REJECTION_FILTER, |
|---|
| 94 | UNDEFINED_ITUB_DE_INTERLEAVER_MODE, |
|---|
| 95 | RESET_CHECKSUM_FUNCTION_FAILED, |
|---|
| 96 | CHECKSUM_IS_INCORRECT, |
|---|
| 97 | ILLIGAL_FIRST_MODE_PRIORITY_MODE, |
|---|
| 98 | ILLIGAL_SECOND_MODE_PRIORITY_MODE, |
|---|
| 99 | ILLIGAL_THIRD_MODE_PRIORITY_MODE, |
|---|
| 100 | TWO_PRIORITIES_HAVE_THE_SAME_RECEIVER_MODE, |
|---|
| 101 | UNDEFINED_CHANNEL_TABLE_TYPE, |
|---|
| 102 | START_FREQUENCY_IS_BIGGER_THAN_END_FREQUENCY, |
|---|
| 103 | ILLIGAL_FREQUENCY, |
|---|
| 104 | ILLIGAL_STEP_SIZE, |
|---|
| 105 | RESULT_BUFFER_SIZE_IS_NOT_BIG_ENOUGH, |
|---|
| 106 | SEND_TUNER_FREQUENCY_FAILED, |
|---|
| 107 | UNDEFINED_NTSC_SIGNAL_DETECTION, |
|---|
| 108 | OOB_FREQ_OUT_OF_RANGE, |
|---|
| 109 | RECEIVED_UNDEFINED_AUDIO_CHANNEL_STATE, |
|---|
| 110 | RECEIVED_UNDEFINED_AUDIO_DEVIATION_SENSITIVITY_MODE, |
|---|
| 111 | RECEIVED_UNDEFINED_AUDIO_STANDARD, |
|---|
| 112 | RECEIVE_REGISTER_NUMBER_OUT_OF_RANGE |
|---|
| 113 | }ERROR_TYPE; |
|---|
| 114 | |
|---|
| 115 | |
|---|
| 116 | //For ChannelChange operation |
|---|
| 117 | typedef enum EN_CAS_2B_TYPE_RECEIVER_MODE{ |
|---|
| 118 | CAS_2B_RECEIVER_MODE_VSB_8_TR = 0, |
|---|
| 119 | CAS_2B_RECEIVER_MODE_ITUB_64, |
|---|
| 120 | CAS_2B_RECEIVER_MODE_ITUB_256, |
|---|
| 121 | CAS_2B_RECEIVER_MODE_ITUB_AUTO_DETECT, |
|---|
| 122 | CAS_2B_RECEIVER_MODE_AUDIO_US_BTSC, |
|---|
| 123 | CAS_2B_RECEIVER_MODE_AUDIO_A2_KOREA, |
|---|
| 124 | CAS_2B_RECEIVER_MODE_AUDIO_RADIO_FM, |
|---|
| 125 | CAS_2B_RECEIVER_MODE_POWER_DOWN |
|---|
| 126 | }CAS_2B_TYPE_RECEIVER_MODE; |
|---|
| 127 | |
|---|
| 128 | typedef enum EN_TYPE_CARRIER_ACQUISITION{ |
|---|
| 129 | CARRIER_ACQUISITION_NORMAL = 0, |
|---|
| 130 | CARRIER_ACQUISITION_WIDE |
|---|
| 131 | }TYPE_CARRIER_ACQUISITION; |
|---|
| 132 | |
|---|
| 133 | typedef enum EN_TYPE_INVERSE_SPECTRUM{ |
|---|
| 134 | INVERSE_SPECTRUM_ON = 0, |
|---|
| 135 | INVERSE_SPECTRUM_OFF |
|---|
| 136 | }TYPE_INVERSE_SPECTRUM; |
|---|
| 137 | |
|---|
| 138 | typedef enum EN_TYPE_NTSC_SIGNAL_DETECTION{ |
|---|
| 139 | NORMAL_VSB = 0, |
|---|
| 140 | NTSC_SIGNAL_DETECTION |
|---|
| 141 | }TYPE_NTSC_SIGNAL_DETECTION; |
|---|
| 142 | |
|---|
| 143 | |
|---|
| 144 | //For IsLocked |
|---|
| 145 | typedef enum EN_LOCK_STATUS{ |
|---|
| 146 | UNDEFINED_LOCK_STATUS = -1, |
|---|
| 147 | UNLOCKED, |
|---|
| 148 | LOCKED |
|---|
| 149 | }LOCK_STATUS; |
|---|
| 150 | |
|---|
| 151 | //For IsLocked |
|---|
| 152 | typedef enum EN_LOCK_TYPE{ |
|---|
| 153 | LOCK_TYPE_UNLOCKED = 0, |
|---|
| 154 | LOCK_TYPE_ANALOG, |
|---|
| 155 | LOCK_TYPE_DIGITAL, |
|---|
| 156 | LOCK_TYPE_DIGITAL_AND_ANALOG |
|---|
| 157 | }LOCK_TYPE; |
|---|
| 158 | |
|---|
| 159 | //For SetChannel |
|---|
| 160 | typedef enum EN_TUNER_TYPE{ |
|---|
| 161 | TUNER_DTT7611 = 0, |
|---|
| 162 | TUNER_DTT7612, |
|---|
| 163 | TUNER_DTT768x0, |
|---|
| 164 | TUNER_THOMSON_T_2000, |
|---|
| 165 | TUNER_DTVS205FH201A //20071016 |
|---|
| 166 | }TUNER_TYPE; |
|---|
| 167 | |
|---|
| 168 | typedef enum EN_TYPE_TUNER_SET_OPTION { |
|---|
| 169 | TUNER_SET_CHANNEL = 0, |
|---|
| 170 | TUNER_SET_PIC_CARRIER_KHZ, |
|---|
| 171 | TUNER_SET_CENTER_FREQUENCY_KHZ, |
|---|
| 172 | }TYPE_TUNER_SET_OPTION; |
|---|
| 173 | |
|---|
| 174 | typedef enum EN_TYPE_TUNER_GET_OPTION { |
|---|
| 175 | TUNER_GET_AFC = 0, |
|---|
| 176 | TUNER_GET_AD, |
|---|
| 177 | }TYPE_TUNER_GET_OPTION; |
|---|
| 178 | |
|---|
| 179 | typedef enum EN_CHANNEL_TABLE_TYPE{ |
|---|
| 180 | NA_TERRESTRIAL = 0, |
|---|
| 181 | NA_CATV, |
|---|
| 182 | IRC, |
|---|
| 183 | HRC |
|---|
| 184 | }CHANNEL_TABLE_TYPE; |
|---|
| 185 | |
|---|
| 186 | typedef enum EN_TYPE_TUNER_AGC_MODE{ |
|---|
| 187 | TUNER_AGC_MODE_INTERNAL_DIGITAL = 0, |
|---|
| 188 | TUNER_AGC_MODE_INTERNAL_ANALOG |
|---|
| 189 | }TYPE_TUNER_AGC_MODE; |
|---|
| 190 | |
|---|
| 191 | typedef enum EN_TYPE_TUNER_INPUT_SELECTION{ |
|---|
| 192 | TUNER_INPUT_SELECTION_TERRESTRIAL = 0, |
|---|
| 193 | TUNER_INPUT_SELECTION_CABLE |
|---|
| 194 | }TYPE_TUNER_INPUT_SELECTION; |
|---|
| 195 | |
|---|
| 196 | typedef enum EN_CHARGE_PUMP{ |
|---|
| 197 | CHARGE_PUMP_20 = 0, |
|---|
| 198 | CHARGE_PUMP_60 , |
|---|
| 199 | CHARGE_PUMP_100, |
|---|
| 200 | CHARGE_PUMP_280, |
|---|
| 201 | }CHARGE_PUMP; |
|---|
| 202 | |
|---|
| 203 | |
|---|
| 204 | /////////////////////////////////////////////////////////////////////////////////////// |
|---|
| 205 | //sructs |
|---|
| 206 | /////////////////////////////////////////////////////////////////////////////////////// |
|---|
| 207 | typedef struct ST_CAS_2B_CHANNEL_CHANGE_PARAMETERS{ |
|---|
| 208 | TYPE_CARRIER_ACQUISITION iCarrierAcquisition ; |
|---|
| 209 | TYPE_INVERSE_SPECTRUM iInverseSpectrum ; |
|---|
| 210 | CAS_2B_TYPE_RECEIVER_MODE iReceiverMode; |
|---|
| 211 | TYPE_NTSC_SIGNAL_DETECTION iNtscSignalDetection ; |
|---|
| 212 | }CAS_2B_CHANNEL_CHANGE_PARAMETERS; |
|---|
| 213 | |
|---|
| 214 | |
|---|
| 215 | typedef struct ST_CAS_2B_TUNER_PARAMETERS{ |
|---|
| 216 | TUNER_TYPE iTunerType; |
|---|
| 217 | TYPE_TUNER_SET_OPTION iTunerSet; |
|---|
| 218 | unsigned long ulSetValue; |
|---|
| 219 | int iAdjustFreqKHZ; |
|---|
| 220 | CHANNEL_TABLE_TYPE iChannelTableType; |
|---|
| 221 | TYPE_TUNER_AGC_MODE iAgcMode; |
|---|
| 222 | TYPE_TUNER_INPUT_SELECTION iInputSelection; |
|---|
| 223 | }CAS_2B_TUNER_PARAMETERS; |
|---|
| 224 | |
|---|
| 225 | |
|---|
| 226 | typedef struct ST_CAS_2B_TUNER_GET_PARAMETERS{ |
|---|
| 227 | TUNER_TYPE iTunerType; |
|---|
| 228 | TYPE_TUNER_GET_OPTION iTunerGet; |
|---|
| 229 | int RetValue1; |
|---|
| 230 | int RetValue2; |
|---|
| 231 | CHANNEL_TABLE_TYPE iChannelTableType; //no use |
|---|
| 232 | TYPE_TUNER_AGC_MODE iAgcMode; //no use |
|---|
| 233 | TYPE_TUNER_INPUT_SELECTION iInputSelection; //no use |
|---|
| 234 | }CAS_2B_TUNER_GET_PARAMETERS; |
|---|
| 235 | |
|---|
| 236 | //2007-6-12 |
|---|
| 237 | typedef struct TUNER_INIT_PARAMETERS{ |
|---|
| 238 | unsigned char ucDeviceI2CAddr; |
|---|
| 239 | unsigned char ucDeviceSlaveAddr; |
|---|
| 240 | unsigned char bUseDefault; |
|---|
| 241 | }TUNER_INIT_PARAMETERS; |
|---|
| 242 | |
|---|
| 243 | typedef struct _tagTunerRoutines{ |
|---|
| 244 | TUNER_TYPE TunerType; |
|---|
| 245 | int (*Tuner_Init)(TUNER_INIT_PARAMETERS*); |
|---|
| 246 | int (*Tuner_GetInfo)(int TunerID, |
|---|
| 247 | CAS_2B_TUNER_GET_PARAMETERS* pgtTunerParameters); |
|---|
| 248 | int (*Tuner_SetChannel)(int TunerID, |
|---|
| 249 | CAS_2B_TUNER_PARAMETERS* pstTunerParameters, |
|---|
| 250 | unsigned short usDelay, |
|---|
| 251 | CAS_2B_CHANNEL_CHANGE_PARAMETERS* pstChannelChangeParameters); |
|---|
| 252 | }TunerRoutines; |
|---|
| 253 | |
|---|
| 254 | #endif |
|---|