diff src/cs/layer1/tpu_drivers/source0/tpudrv8.h @ 0:92470e5d0b9e

src: partial import from FC Selenite
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 15 May 2020 01:28:16 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/cs/layer1/tpu_drivers/source0/tpudrv8.h	Fri May 15 01:28:16 2020 +0000
@@ -0,0 +1,143 @@
+/****************** Revision Controle System Header ***********************
+ *                      GSM Layer 1 software                                
+ *              Copyright (c) Texas Instruments 1998                      
+ *                                                                        
+ *        Filename tpudrv8.h
+ *  Copyright 2003 (C) Texas Instruments  
+ *                                                                        
+ ****************** Revision Controle System Header ***********************/
+
+//SI4133 definitions
+#define  WordAdd0000     0x000000 //Main Configuration
+#define  AutoPDB         0x000080 //Auto Power Down - Uses PWDNB pin
+#define  AuxSel          0x030000 //Auxiliary output pin use = LOCK Detect
+#define  WordAdd0011     0x000003 //RF1 N Divider
+#define  WordAdd0100     0x000004 //RF2 N Divider
+#define  WordAdd0101     0x000005 //IF N Divider
+#define  RFPWR           0x000020 //RF LO high power
+#define  XPDM            0x000100 //Reference amplifier ON when PWDNB pin = 0
+
+//TRF6053 definitions
+#define  Mode0           0x000000
+#define  Mode1           0x000001
+#define  Mode2           0x000003
+#define  Mode3           0x000005
+#define  Mode4           0x000007
+#define  LNAMixPwrOn     0x000080    //Mode0
+#define  VCODiv2PwrOn    0x000040    //Mode0
+#define  RXBBIFStgPwrOn  0x000020    //Mode0
+#define  OFFStrCalOn     0x000010    //Mode0
+#define  VCORDivPwrOn    0x000008    //Mode0
+#define  MixLOBuffPwrOn  0x000004    //Mode0
+#define  TXStagesPwrOn   0x000002    //Mode0
+#define  FreqDetDis      0x000400    //Mode4
+#define  IFVCOExternal   0x000200    //Mode4
+#define  IFPLLBuffDis    0x000100    //Mode4
+#define  LBandLNAExt     0x000080    //Mode4
+#define  HBandLNAExt     0x000040    //Mode4
+#define  Div2ToRXStgs    0x000020    //Mode4
+#define  DivRToTXStgs    0x000010    //Mode4
+#define  ChgPPLBNeg      0x000010    //Mode2
+#define  ChgPPHBNeg      0x000010    //Mode3
+#define  PreCCLBDis      0x000008    //Mode2
+#define  PreCCHBDis      0x000008    //Mode3
+#define  LNAGainLow      0x000010    //Mode2
+#define  BandHigh        0x000008    //Mode1
+#define  LowBIF610       0x000020    //Mode2
+#define  HighBIF412      0x000020    //Mode3
+#define  HighBIF25       0x000040    //Mode3
+#define  HighBIF410      0x000060    //Mode3
+
+/*------------------------------------------*/
+/*        Download delay values             */
+/*------------------------------------------*/
+#define TRF6053_DOWNLOAD_TIME   15
+#define SYNTH_DOWNLOAD_TIME     20
+
+//--------------------------------------------
+// internal tpu timing
+//--------------------------------------------
+
+#define DLT_1     1   // 1 tpu instruction = 1 qbit
+#define DLT_2     2 
+#define DLT_3     3 
+#define DLT_4     4
+ 
+#define DLT_1B    4   // 3*move + 1*byte (download)
+#define DLT_2B    6   // 4*move + 2*byte
+#define DLT_3B    8   // 5*move + 3*byte
+
+#define SL_SU_DELAY1 4  // No. bits to send + load data to shift + send write cmd + 1
+#define SL_SU_DELAY2 3  // load data to shift + send write cmd + 1
+#define SL_SU_DELAY3 5  // SL_SU_DELAY1 + serialization
+
+/*------------------------------------------*/
+/*        Download delay values             */
+/*------------------------------------------*/
+// 0.9230769 usec ~ 1 qbit i.e. 200 usec is ~ 217 qbit
+
+#define T TPU_CLOCK_RANGE  // TODO: should be a define from L1. 
+ 
+// time below are offset to when BDLENA goes low
+#define TRF_R11 (    0 - DLT_1B)           // disable BDLON & BDLENA
+#define TRF_R10 (  - 5 - DLT_1B)           // disable TRF6053
+
+// burst data comes here
+// time below are offset to when BDLENA goes high
+#define TRF_R9  (PROVISION_TIME -   0 - DLT_1B) // enable BDLENA, disable BDLCAL
+#define TRF_R8  (PROVISION_TIME -  11 - DLT_1B) // power on RX front end, DC cal. off
+#define TRF_R7  (PROVISION_TIME -  65 - DLT_1B) // enable BDLCAL
+#define TRF_R6  (PROVISION_TIME -  72 - DLT_1B) // enable BDLON
+#define TRF_R5  (PROVISION_TIME -  76 - DLT_1B) // power on receiver, start DC cal.
+#define TRF_R4  (PROVISION_TIME -  80 - DLT_2B) // set RX gain & band.
+                                                // ADC read, uses min 11 qbit due to 5 wait 
+#define TRF_R3  (PROVISION_TIME - 196 - DLT_1B) // power up TRF2253
+#define TRF_R1  (PROVISION_TIME - 205 - DLT_3B) // set RF PLL N counter = r1 and IF PLL N counter in TRF2253 = r2
+
+// time below are offset to when BULENA goes low
+#define TRF_T13   (  32 - DLT_1B)    // disable PA_ON, BULON, TRF6053
+#define TRF_T12   (  18 - DLT_1 )    // disable TSPACT01
+#define TRF_T11   (   0 - DLT_1B)    // disable BULENA
+#define TRF_T10_1 (- 40 - DLT_1B)    // ADC read
+// burst data comes here
+// time below are offset to when BULENA goes high
+#define TRF_T10   (+  15 - DLT_3)    // enable PA_ON + 2*rfswitch
+#define TRF_T9    (-   0 - DLT_1B)   // enable BULENA
+#define TRF_T8    (- 109 - DLT_2B)   // power on transceiver 
+#define TRF_T7    (- 115 - DLT_1B)   // disable BULCAL
+#define TRF_T6    (- 230 - DLT_1B)   // power up TRF2253
+#define TRF_T5    (- 233 - DLT_2B)   // set TX band in TRF6053
+#define TRF_T3    (- 249 - DLT_3B)   // set RF PLL N counter = t3 and IF PLL N counter in TRF2253 = t4
+#define TRF_T2    (- 260 - DLT_1B)   // enable BULCAL
+#define TRF_T1    (- 278 - DLT_1B)   // enable BULON
+
+#if (BOARD == 7) || (BOARD == 8) || (BOARD == 9) || (BOARD == 40) || (BOARD == 41) || (BOARD == 42) || (BOARD == 43) || (BOARD == 45)
+  #define PA_ON     0x20     // act5
+  #define TSPACT01  0x02     // act1
+
+  // RF signals connected to TSPACTX
+  #define RX900     0x04     // act10
+  #define RX1800    0x08     // act11
+
+  #define TC1_DEVICE_ABB TC1_DEVICE0 
+  #define TC1_DEVICE_RF  TC1_DEVICE1
+  #define TC1_DEVICE_PLL TC1_DEVICE2
+#endif
+
+#if (BOARD == 6)
+  #define PA_ON     0x10     // act4
+
+  // RF signals connected to TSPACTX
+  #define RX900     0x08     // act11 => needs to be connected to act12
+  #define RX1800    0x04     // act10
+
+  #define TC1_DEVICE_ABB TC1_DEVICE0
+  #define TC1_DEVICE_PLL TC1_DEVICE1   
+  #define TC1_DEVICE_RF  TC1_DEVICE2
+#endif
+
+#ifdef TPUDRV8_C
+// Function prototypes
+SYS_UWORD16 Convert_l1_radio_freq(SYS_UWORD16 radio_freq);
+
+#endif