blob: 041dd9bf79d5051ef10adfb162646c9565ee20c3 [file] [log] [blame]
yu.dongc33b3072024-08-21 23:14:49 -07001/*****************************************************************************
2* Copyright Statement:
3* --------------------
4* This software is protected by Copyright and the information contained
5* herein is confidential. The software may not be copied and the information
6* contained herein may not be used or disclosed except with the written
7* permission of MediaTek Inc. (C) 2016
8*
9* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
10* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
11* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
12* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
13* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
14* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
15* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
16* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
17* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
18* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
19* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
20* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
21*
22* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
23* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
24* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
25* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
26* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
27*
28* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
29* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
30* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
31* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
32* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
33*
34*****************************************************************************/
35#ifndef _CPHEVDOFLSRP_H_
36#define _CPHEVDOFLSRP_H_
37
38#include "cl1common.h"
39#include "kal_general_types.h"
40#define EVDO_MAX_NUM_PILOTS (6)
41#define EVDO_MAX_NUM_DATA_FINGERS (3)
42#define EVDO_MAX_NUM_MAC_FINGERS (12)
43#define EVDO_MAX_TOTAL_FINGERS (EVDO_MAX_NUM_DATA_FINGERS + EVDO_MAX_NUM_MAC_FINGERS)
44#define EVDO_MAX_NUM_PCG (6)
45#define EVDO_INVALID_SECTORID (0xFF)
46#define EVDO_INVALID_PCGID (0xFF)
47#define EVDO_INVALID_PNOFFSET (0xFFFF)
48#define EVDO_MAX_MACINDEX (127)
49#define EVDO_MAX_SPEED (200)
50#define T3_INIT_ADDR (0)
51#define DRC_REG_SIZE_M 15 /* DRC Offset is from 0 -14 */
52#define RXC_INTERLACE_LENGTH (4)
53#define EVDO_REV_A (0x02)
54
55
56#define BR_DMA_BASIC_ADDRESS (0xAB860000)
57#define BIGRAM_BASE_ADDRESS (0xA9000000)
58#define EVDO_INIT_SPEED (160)
59
60//#define C2K_RAKE_CMIF_REG_BASE 1
61
62/*Rake Generate*/
63typedef enum
64{
65 TRAFFIC_MODE_WCDMA,
66 TRAFFIC_MODE_1XRTT,
67 TRAFFIC_MODE_EVDO,
68 TRAFFIC_MODE_1XRTT_QLIC
69} CphEvl1TrafficMode;
70
71
72/*Rake Bootup*/
73typedef enum
74{
75 BOOT_UP_MODE_WCDMA = 0,
76 BOOT_UP_MODE_C2K
77} CphRakeBootUpMode;
78
79/*Rake State*/
80typedef enum
81{
82 EVL1_SYNC = 1,
83 EVL1_IDLE = 2,
84 EVL1_CONNECTED = 4
85} CphEvl1StateT;
86
87/*Rake Mode*/
88typedef enum
89{
90 RAKE_MODE_DISABLE = 0,
91 RAKE_MODE_1X,
92 RAKE_MODE_DO,
93 RAKE_MODE_SHDR
94} CphRakeMode;
95
96/*PMB CH type*/
97typedef enum
98{
99 PILOT_TRAFFIC_CH = 0,
100 PILOT_MAC_CH = PILOT_TRAFFIC_CH,
101 MAC_CH = 1,
102 RA_CH = MAC_CH,
103 PMB0_CH = 7,
104 PMB1_CH = PMB0_CH,
105 PMB2_CH = PMB0_CH,
106 PMB_FTC_CH = PMB0_CH,
107} CphEvl1ChType;
108
109
110/*Spreading factor*/
111typedef enum
112{
113 EVL1_SF4 = 0,
114 EVL1_SF8,
115 EVL1_SF16,
116 EVL1_SF32,
117 EVL1_SF64,
118 EVL1_SF128,
119 EVL1_SF256
120} CphEvl1SFType;
121
122/*Spreading factor*/
123typedef enum
124{
125 FINGER_NO_CHANGE = 0,
126 FINGER_ASSIGN,
127 FINGER_RELEASE
128} CphEvl1FngAllocAction;
129
130/*Spreading factor*/
131typedef enum
132{
133 FINGER_RELEASED = 0,
134 FINGER_ACTIVATED = 1,
135 FINGER_OBSERVED = 2,
136}Evl1FngStatusT;
137
138
139/* AFC_Mode */
140typedef enum
141{
142 AFC_FAST,
143 AFC_NORMAL
144} CphAfcModeT;
145
146
147typedef enum
148{
149 CONFIG_MU = 0x01,
150 CONFIG_DOF = 0x02,
151 CONFIG_PMB_MODE = 0x04,
152 CONFIG_MACINDEX = 0x08,
153 CONFIG_PD_RESET = 0x10,
154 CONFIG_PD_ENABLE = 0x20
155} CphEvl1FlSrpPdCfgType;
156
157typedef enum
158{
159 PD_MODE_INIT_ACQ,
160 PD_MODE_TRAFFIC,
161 PD_MODE_IDLE
162} CphEvl1FlSrpPdMode;
163
164
165typedef enum
166{
167 DRC_TABLE_INIT = 0x01,
168 DRC_SLMS_INIT = 0x02,
169 DRC_SW_PARA_INIT = 0x04,
170 DRC_REINIT = 0x08
171} CphEvl1FlSrpDrcInitType;
172
173
174typedef enum
175{
176 EVENT_DRC_INIT = 0x01,
177 EVENT_DRC_CFG = 0x02,
178 EVENT_DRC_TABLE_UPDATE =0x04
179} CphEvl1FlSrpDrcEventType;
180
181
182typedef enum
183{
184 CFG_DRC_LEN = 0x01,
185 CFG_DRC_GATING = 0x02,
186 CFG_FIX_TX_RATE = 0x04,
187 CFG_FIX_TX_RATE_DISABLE =0x08,
188 CFG_GLOBAL_BYPASS = 0x10,
189 CFG_ADJ_C2I_LEVEL_LENGTH = 0x20,
190 CFG_GlOBAL_ADJ = 0x40,
191 CFG_PREDICTION = 0x80,
192 CFG_DRC_RANGE = 0x100
193} CphEvl1FlSrpDrcCfgType;
194
195
196typedef struct
197{
198 /** [In]*/
199 CphEvl1StateT Evl1State;
200 /** [In]*/
201 kal_uint32 RxPath;
202 /** [In]*/
203 kal_uint32 Evl1Subtype;
204 /** [In]*/
205 kal_uint32 T3Dist;
206 /** [In]*/
207 kal_uint32 DLCarrierFreq;
208 /** [In]*/
209 kal_uint32 T3Time;
210 /** [In]*/
211 kal_uint32 T2Time;
212 /** [In]*/
213 kal_uint32 CpichOnTime;
214 /** [In] */
215 kal_bool Evl1Enabled;
216}CphEvl1RakeStartT;
217
218
219typedef struct
220{
221 kal_uint16 PilotPN;
222 kal_uint16 PwrEst;
223 kal_uint8 PcgId;
224 kal_uint8 ServCell;
225 kal_uint8 MacId;
226 kal_uint8 MacWalshId;
227 kal_uint8 RABLength;
228 kal_uint8 RABOffset;
229 kal_uint8 RAChannelGain;
230 kal_uint8 Res;
231}RakeSectorInfoT;
232
233typedef struct
234{
235 /** [In]*/
236 kal_bool PmbFtcCfgChange;
237 /** [In]*/
238 kal_uint8 MacCfgChange;
239 /** [In]*/
240 kal_uint8 ServingSecId;
241 /** [In]*/
242 kal_uint16 ServingPN;
243 /** [In]*/
244 kal_uint16 UserMacIdx;
245 /** [In]*/
246 kal_uint16 CcShortPktIdx;
247 /** [In]*/
248 kal_uint8 NumSec;
249 /** [In]*/
250 kal_uint8 SecRenumId[EVDO_MAX_NUM_PILOTS];
251 /** [In]*/
252 RakeSectorInfoT SectorInfo[EVDO_MAX_NUM_PILOTS];
253}CphEvl1RakeChT;
254
255typedef struct
256{
257 /** [In]*/
258 kal_uint8 FngIdx;
259 /** [In]*/
260 kal_uint8 SecId;
261 /** [In]*/
262 CphEvl1FngAllocAction Action;
263 /** [In]*/
264 Evl1FngStatusT FngStatus;
265 /** [In]*/
266 kal_uint16 FngAddr;
267 /** [In]*/
268 kal_uint16 FngSymIdx;
269 /** [In]*/
270 kal_uint32 FngInitPower;
271 } CphEvl1RakeFngCfgT;
272
273typedef struct
274{
275 /** [Out]*/
276 kal_uint32 RefTimeEchip;
277 /** [Out]*/
278 kal_uint32 RefGsrAddr;
279}CphEvl1FlSrpGsrT;
280
281typedef struct
282{
283 kal_uint8 FngIdx;
284 kal_uint16 FngSnr;
285} CphEvl1RakeFngSNRResultT;
286
287typedef struct
288{
289 /** [In]*/
290 kal_bool RssiStableFlag;
291 /** [In]*/
292 kal_uint8 PrevSpeedResult;
293 /** [Out]*/
294 kal_uint8 FinalSpeed;
295} CphEvl1SpestCfgT;
296
297typedef struct
298{
299 kal_uint8 FngIdx;
300 kal_int8 FngAccDriftValue;
301}AccDriftT;
302
303typedef struct
304{
305 /** [In]*/
306 kal_int16 A2OPilot;
307 /** [In]*/
308 kal_int16 O2APilot;
309 /** [In]*/
310 kal_int16 A2OMac;
311 /** [In]*/
312 kal_int16 O2AMac;
313 /** [In]*/
314 kal_uint8 NumFngUpd;
315 /** [In]*/
316 AccDriftT AccDrift[EVDO_MAX_TOTAL_FINGERS];
317}CphEvl1TrackerCfgT;
318
319
320typedef struct
321{
322 /** [In]*/
323 kal_uint8 FngIdx;
324 /** [Out]*/
325 kal_uint8 FngStatus;
326 /** [Out]*/
327 kal_int8 FngAccuDrift;
328 /** [Out]*/
329 kal_uint32 FngMicPower;
330} CphEvl1TrackerResultT;
331
332
333typedef struct
334{
335 kal_bool RcpDbgEn; /* 1->RCP subchannel in Debug mode, 0->normal mode */
336 kal_bool RcpDbgVal;
337 kal_bool ArqDbgEn; /* 1->H/LARQ subchannel in Debug mode, 0->normal mode */
338 kal_bool ArqDbgVal;
339}Evl1McdDebugParamT;
340
341
342typedef struct
343{
344 /** [In]*/
345 kal_uint8 DrcLockPeriod;
346 /** [In]*/
347 kal_uint8 DrcLockLen;
348 /** [In]*/
349 kal_uint8 ArqMode;
350 /** [In]*/
351 kal_uint8 ArqType;
352 /** [In]*/
353 kal_uint8 FrabTc;
354 /** [In]*/
355 kal_uint8 QrabTc;
356 /** [In]*/
357 Evl1McdDebugParamT McdDbgData; /* 1->RCP subchannel in Debug mode, 0->normal mode */
358}CphEvl1BsrpMcdInfoT;
359
360typedef struct
361{
362 /** [In]*/
363 kal_uint8 NextArqtype;
364} CphEvl1McdArqTypeCfgT;
365
366
367typedef struct
368{
369 /** [In]*/
370 kal_bool ParqValid;
371 /** [In]*/
372 kal_uint8 RtcMacSubType;
373 /** [In]*/
374 kal_uint8 NumSec;
375 /** [In]*/
376 kal_uint8 NumPcg;
377 /** [In]*/
378 kal_uint8 SecRenumId[EVDO_MAX_NUM_PILOTS];
379 /** [In]*/
380 kal_uint8 PcgRenumId[EVDO_MAX_NUM_PCG];
381} CphEvl1McdGetMacBitsInputT;
382
383typedef struct
384{
385 /** [Out]*/
386 kal_int16 RAB; /* <13,1,t> for SoftRAB(MAC subtype 0/1), <16,15,t> for RAB(MAC subtype 2/3) */
387 /** [Out]*/
388 kal_uint8 SlotRAB; /* [0], hard limited RAB */
389 /** [Out]*/
390 kal_uint8 SlotQRAB; /* [0], subframe rate sampling */
391 /** [Out]*/
392 kal_int32 SlotFRAB; /* <13,1,t>, subframe rate sampling */
393} CphMacBitsSectorT;
394
395typedef struct
396{
397 /** [Out]*/
398 kal_uint8 DRCLockPcg; /* 0->UnLock, 1->Lock */
399 /** [Out]*/
400 kal_uint8 DRCLockPcgFinal; /* Final value after persistence test, 0->UnLock, 1->Lock */
401 /** [Out]*/
402 kal_uint8 DRCLockCounter; /* for persistence test */
403 /** [Out]*/
404 kal_uint8 HLARQBitPcg; /* 1->ACK, 0->NAK */
405 /** [Out]*/
406 kal_int32 DRCLockMetric; /* DRCLock metric, check sign for decision */
407 /** [Out]*/
408 kal_int32 HLARQMetric; /* [20:0], at subframe rate */
409 /** [Out]*/
410 kal_int32 PARQMetric; /* [20:0], at subframe rate */
411 /** [Out]*/
412 kal_uint32 CIMetric; /* [21:0], C/I metric at subframe rate */
413} CphMacBitsPCGT;
414
415typedef struct
416{
417 /** [Out]*/
418 kal_uint8 RABValid; /* 0/1->NotValid/Valid, Valid occurs every slot T mod RABLengthn = RABOffsetn-1 */
419 /** [Out]*/
420 kal_uint8 DRCLockValid; /* 0->NotVal, 1->Valid, Valid occurs every */
421 /* slot (T-FrameOffset) mod DRCLockPeriod x DRCLockLength */
422 /* = (DRCLockPeriod -1) x DRCLockLength */
423 /* For Rev A. DRCLockPeriod = 4 */
424 /** [Out]*/
425 kal_uint8 HLARQBit; /* H/LARQ Bit combined over the PCGs */
426 /* 1->ACK, 0->NAK */
427 /** [Out]*/
428 kal_uint8 RPCValid; /* 0->NotVal, 1->Valid, Valid occurs every */
429 /** [Out]*/
430 kal_uint8 RPCBit; /* 0->up, 1->down*/
431 /** [Out]*/
432 kal_uint8 QRAB; /* QRAB Hard value combined (logical OR) over all sectors */
433 /** [Out]*/
434 kal_int32 FRAB; /* FRAB for current subframe combined (max among) over all sectors */
435 /** [Out]*/
436 kal_int32 oldFRAB; /* FRAB for previous subframe combined (max among) over all sectors */
437 /** [Out]*/
438 CphMacBitsSectorT Sector[EVDO_MAX_NUM_PILOTS];
439 /** [Out]*/
440 CphMacBitsPCGT Pcg[EVDO_MAX_NUM_PCG];
441}CphEvl1McdGetMacBitsOutputT;
442
443typedef struct
444{
445 /** [In]*/
446 kal_bool muEnable;
447 /** [In]*/
448 kal_uint8 dof;
449 /** [In]*/
450 kal_uint16 pmbCtrlInitTraffic;
451 /** [In]*/
452 kal_uint8 pmbMode;
453 /** [In]*/
454 kal_uint8 macIndex;
455 /** [In]*/
456 kal_uint16 pmbCtrl;
457 /** [In]*/
458 kal_uint16 pmbEnablePmabM;
459}CphEvl1PdCtxT;
460
461
462typedef struct
463{
464 /** [In]*/
465 kal_uint8 initBitmap;
466 /** [In]*/
467 kal_uint16 cfgBitmap; /*indicate the configuration type*/
468 /** [In]*/
469 kal_int32 drcC2IMax;
470 /** [In]*/
471 kal_int32 drcC2IMin;
472 /** [In]*/
473 kal_int32 drcGlobalAdj;
474 /** [In]*/
475 kal_bool globalByPass;
476 /** [In]*/
477 kal_int32 slmsInit[5];
478 /** [In]*/
479 kal_int32 drcThrByPass1;
480 /** [In]*/
481 kal_int32 drcThrByPass2;
482 /** [In]*/
483 kal_int32 drcSlmsMu;
484 /** [In]*/
485 kal_int32 drcIIrPole;
486 /** [In]*/
487 kal_int32 drcErrIIrPole;
488 /** [In]*/
489 kal_uint8 drcLength;
490 /** [In]*/
491 kal_bool drcGating;
492 /** [In]*/
493 kal_int32 drcLvcrossLen;
494 /** [In]*/
495 kal_uint8 fixTxDrc;
496 /** [In]*/
497 kal_uint16 drcMode;
498 /** [In]*/
499 kal_int32 drcCtrl;
500 /** [In]*/
501 kal_uint16 pmbEnablePmabM;
502 /** [In]*/
503 kal_uint32 *pDrcOffset;
504 /** [In]*/
505 kal_int32 *pDrcC2IThr;
506 /** [In]*/
507 kal_uint32 *pDrcThrPut;
508 /** [In]*/
509 kal_uint32 *pDrcThrAwgn;
510 /** [In]*/
511 kal_bool bDrcRangeFlag;
512 /** [In]*/
513 kal_uint32 maxDrcValue;
514 /** [In]*/
515 kal_uint32 minDrcValue;
516}CphEvl1DrcCtxT;
517
518
519typedef struct
520{
521 /** [Out]*/
522 kal_uint8 timeStamp;
523 /** [Out]*/
524 kal_bool reackFlag;
525 /** [Out]*/
526 kal_uint8 supMacindex;
527 /** [Out]*/
528 kal_uint8 preambleMacindex;
529 /** [Out]*/
530 kal_uint8 interlaceId;
531} CphEvl1RxcPacketInfoReadT;
532
533typedef struct
534{
535 /** [Out]*/
536 kal_bool interlaceStatus[RXC_INTERLACE_LENGTH];
537} CphEvl1RxcInterlaceStatusReadT;
538
539
540typedef struct
541{
542 /** [In]*/
543 kal_bool crcResultInterlace;
544 /** [In]*/
545 kal_uint8 interlaceId;
546} CphEvl1RxcPacketCrcResultT;
547
548typedef struct
549{
550 /** [In]*/
551 kal_uint8 CntAcc;
552 /** [In]*/
553 kal_uint32 SNRAcc;
554 /** [In]*/
555 kal_int32 ReFineAcc;
556 /** [In]*/
557 kal_int32 ImFineAcc;
558 /** [In]*/
559 kal_int32 ReCoarseAcc;
560 /** [In]*/
561 kal_int32 ImCoarseAcc;
562} CphEvl1AfcAccMetricT;
563
564
565typedef struct
566{
567 /** [In]*/
568 kal_uint16 PreSnr1; /**Pre SNR 1 from CE, floating point 1/5/10 format*/
569 /** [In]*/
570 kal_uint16 PreSnr2; /**Pre SNR2 RXD from CE, floating point 1/5/10 format*/
571}CphEvl1CePreSnrT;
572
573
574typedef struct
575{
576 kal_bool RESET_EN;
577 kal_bool EQ_MODE_L1_EN;
578 kal_uint32 EQ_MODE;
579 kal_bool MMSE_FLAG_L1_EN;
580 kal_uint32 MMSE_FLAG;
581 kal_bool ITER_NUM_L1_EN;
582 kal_uint32 ITER_NUM;
583 kal_bool ALPHA_FILTER_MODE_L1_EN;
584 kal_uint32 ALPHA_FILTER_MODE;
585 kal_bool DATA_FTM_L1_EN;
586 kal_uint32 DATA_FRAC;
587 kal_uint32 C2I_FRAC;
588 kal_bool PRE_COURSE_L1_EN;
589 kal_uint32 PRE_COURSE;
590 kal_bool CORR_LEN_L1_EN;
591 kal_uint32 CORR_LEN;
592 kal_bool ALPHA_SHIFT_L1_EN;
593 kal_uint32 ALPHA_SHIFT;
594 kal_bool WIN_ADD_BD_L1_EN;
595 kal_uint32 WIN_ADD_BD;
596 kal_bool PD_MATRIX_NOISE_L1_EN;
597 kal_uint32 PD_MATRIX_NOISE;
598}CphEvl1CuifCfgParamT;
599
600void CphEvl1FlSrpRakeCmifReset(void);
601void CphEvl1FlSrpRakeStart(CphEvl1RakeStartT *adsPtr);
602void CphEvl1FlSrpRakeRestore(CphEvl1RakeStartT *adsPtr);
603void CphEvl1FlSrpIdRegDump(kal_uint32 *ads_ptr);
604void CphEvl1FlSrpCgRegDump(kal_uint32 *ads_ptr);
605void CphEvl1FlSrpRakeCphichOn(kal_uint32 CpichOnTime);
606void CphEvl1FlSrpRakeDeactive(kal_uint8 T5SlotIdx);
607void CphEvl1FlSrpRakeEnterDormantDleep(void);
608void CphEvl1FlSrpD2bifOff(void);
609void CphEvl1FlSrpRakeStateCfg(CphEvl1StateT Evl1State);
610void CphEvl1FlSrpRakeSubTypeCfg(kal_uint32 Evl1Subtype);
611void CphEvl1FlSrpRakeT5Cfg(kal_uint8 T5SlotIdx);
612void CphEvl1FlSrpRakeChCfg(CphEvl1StateT Evl1State, CphEvl1RakeChT *adsPtr);
613void CphEvl1FlSrpRakeFngCfg(CphEvl1RakeFngCfgT *adsPtr);
614void CphEvl1FlSrpTargetSectorCfg(kal_bool CellSwEnFlag, kal_uint8 TargetSectorId);
615kal_bool CphEvl1FlSrpCsmEnCheck(void);
616void CphEvl1FlSrpRakeTxFrameOffsetCfg(kal_uint16 TxFrameOffset);
617kal_uint16 CphEvl1FlSrpFngTotalSNRRead(void);
618kal_uint32 CphEvl1FlSrpFngSNRRead(kal_uint8 FngIdx);
619kal_uint32 CphEvl1FlSrpFngRxDSNRRead(kal_uint8 FngIdx);
620void CphEvl1FlSrpTrackerCfg(CphEvl1TrackerCfgT *adsPtr);
621void CphEvl1FlSrpTrackerResultRead(CphEvl1TrackerResultT*adsPtr);
622void CphEvl1FlSrpSpestCfg(CphEvl1SpestCfgT *adsPtr);
623kal_uint32 CphEvl1FlSrpCurrSpeedRead(void);
624void CphEvl1FlSrpRxdCfg(kal_bool RxDEn);
625void CphEvl1FlSrpOCOnCfg(kal_bool OcEnFlag);
626void CphEvl1FlSrpMcdStart(kal_uint32 MacSubType, CphEvl1BsrpMcdInfoT *adsPtr);
627kal_uint8 CphEvl1FlSrpMcdHlArqRead( void );
628void CphEvl1FlSrpMcdArqTypeCfg(kal_uint8 NextArqType);
629void CphEvl1FlSrpMcdDbgCfg(Evl1McdDebugParamT *adsPtr);
630void CphEvl1FlSrpMcdMacBitsRead(CphEvl1McdGetMacBitsInputT *adsPtrIn, CphEvl1McdGetMacBitsOutputT *adsPtrOut);
631void CphEvl1FlSrpUsipCfg(kal_bool UsipEnFlag);
632void CphEvl1FlSrpUsipMacIndexCfg(kal_uint8 SupMacIndex);
633void CphEvl1FlSrpPdEnable(kal_bool enable , void *adsPtr);
634void CphEvl1FlSrpPdConfig(CphEvl1FlSrpPdCfgType cfgType, void *adsPtr);
635void CphEvl1FlSrpDrcInit(CphEvl1FlSrpDrcInitType initType, void *adsPtr);
636void CphEvl1FlSrpDrcConfig(CphEvl1FlSrpDrcCfgType cfgType, void *adsPtr);
637void CphEvl1FlSrpDrcTableUpdate(void *adsPtr);
638kal_int32 CphEvl1FlSrpDrcRegRead(APBADDR32 regAddr);
639void CphEvl1FlSrpDrcRegWrite(APBADDR32 regAddr, kal_int32 regVal);
640void CphEvl1FlSrpRxcInitialTimeConfig(kal_uint32 timeStamp);
641void CphEvl1FlSrpRxcCrcResultConfig(CphEvl1RxcPacketCrcResultT *adsPtr);
642void CphEvl1FlSrpRxcPacketInfoRead(CphEvl1RxcPacketInfoReadT *adsPtr);
643void CphEvl1FlSrpRxcInterlaceStatusRead(CphEvl1RxcInterlaceStatusReadT *adsPtr);
644void CphEvl1FlSrpAfcAccRead(CphEvl1AfcAccMetricT *adsPtr);
645kal_bool CphEvl1FlSrpAfcBusyChk(void);
646void CphEvl1FlSrpAfcRst(void);
647void CphEvl1FlSrpAfcLock(void);
648void CphEvl1FlSrpAfcUnLock(void);
649void CphEvl1FlSrpAfcModeCfg(CphAfcModeT AfcMode);
650void CphEvl1FlSrpPreSNRRead(CphEvl1CePreSnrT *CESnr);
651kal_uint16 CphEvl1FlSrpPostSNRRead(kal_uint8 InterlaceId);
652void CphEvl1FlSrpC2iMuCfg(kal_uint32 IirTime);
653kal_uint16 CphEvl1FlSrpC2iSamplCntGet(kal_uint8 SecId);
654void CphEvl1FlSrpC2iLogRlstGet(kal_uint8 SecId, kal_int16 *C2iLog0y, kal_int16 *C2iLog1y);
655kal_uint8 CphEvl1FlSrpSupMacIndexRead(kal_uint8 InterlaceId);
656kal_uint32 CphEvl1FlSrpFnSlotOffsetRead(void);
657kal_uint8 CphEvl1FlSrpSubTypeRead(void);
658kal_uint16 CphEvl1FlSrpDrcC2iShortRead(void);
659kal_uint16 CphEvl1FlSrpDrcC2iLongRead(void);
660kal_uint8 CphEvl1FlSrpDrcValueRead(void);
661kal_uint8 CphEvl1FlSrpUserMacIndexRead(void);
662extern void CphEvl1FlSrpGsrRead(CphEvl1FlSrpGsrT *adsPtr);
663extern kal_uint32 CphEvl1FlSrpFngEnRead();
664extern kal_uint32* CphEvl1FlSrpCalBigRAMAddr(void);
665extern void CphEvl1FlSrpRxcConfigMinContSpan(kal_uint8 MinContSpan);
666extern void CphEvl1FlSrpCuifCfg(CphEvl1CuifCfgParamT *adsPtr);
667extern void CphEvl1FlSrpTimingAdjCfg(kal_int16 TimeAdjEchip);
668#endif
669
670