diff src/cs/layer1/tm_include/l1tm_defty.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/tm_include/l1tm_defty.h	Fri May 15 01:28:16 2020 +0000
@@ -0,0 +1,169 @@
+/************* Revision Controle System Header *************
+ *                  GSM Layer 1 software 
+ * L1TM_DEFTY.H
+ *
+ *        Filename l1tm_defty.h
+ *  Copyright 2003 (C) Texas Instruments  
+ *
+ ************* Revision Controle System Header *************/
+
+
+// Max size of data portion of a testmode packet
+#define TM_PAYLOAD_UPLINK_SIZE_MAX   128
+
+// CID, STATUS and CHECKSUM
+#define TM_UPLINK_PACKET_OVERHEAD 3
+
+typedef struct
+{
+  UWORD32   toa_sum;
+  UWORD32   toa_sq_sum;
+  UWORD32   toa_recent;  
+  UWORD32   pm_sum;
+  UWORD32   pm_sq_sum;
+  UWORD16   pm_recent;  
+  WORD16    angle_sum;
+  UWORD32   angle_sq_sum;
+  WORD16    angle_min;
+  WORD16    angle_max;
+  WORD16    angle_recent;  
+  UWORD32   snr_sum;
+  UWORD32   snr_sq_sum;
+  UWORD32   snr_recent;  
+  UWORD8    rssi_fifo[4];
+  UWORD8    rssi_recent;  
+  WORD32    loop_count;  //Must be signed for divide operation in statistics!!!
+  WORD32    flag_count;  //Must be signed for divide operation in statistics!!!
+  UWORD32   flag_recent;
+  UWORD8    bsic;
+  UWORD32   fn;
+  UWORD32   qual_acc_full;      // Fullset: accu. rxqual meas.
+  UWORD32   qual_nbr_meas_full; // Fullset: nbr meas. of rxqual.
+  #if L1_GPRS
+    UWORD8    nb_dl_pdtch_slots;
+  #endif
+}
+T_TM_STATS;
+
+typedef struct
+{
+  UWORD8  dedicated_active;
+  UWORD32 rx_counter;
+  UWORD16 num_bcchs;
+  #if L1_GPRS
+    BOOL packet_transfer_active;
+  #endif
+}
+T_TM_STATE;
+
+typedef struct
+{
+    UWORD16 prbs1_seed;
+ // UWORD16 prbs2_seed; 	//for future use
+}
+T_TM_PRBS;
+
+// Global TM variable
+typedef struct
+{
+  BOOL       tm_msg_received;
+  T_TM_STATS tmode_stats;
+  T_TM_STATE tmode_state;
+  T_TM_PRBS  tmode_prbs;
+}
+T_L1TM_GLOBAL;
+
+typedef struct
+{
+  UWORD16     bcch_arfcn;
+  UWORD16     tch_arfcn;
+  UWORD16     mon_arfcn;
+  #if L1_GPRS
+    UWORD16     pdtch_arfcn;
+    UWORD8      multislot_class;
+  #endif
+  UWORD8      down_up;
+  UWORD8      channel_type;
+  UWORD8      subchannel;
+  UWORD8      tmode_continuous;
+  UWORD8      reload_ramps_flag;
+  BOOL        mon_report; //Used to determine wether RX stats are done in Monitor channel or TCH channel 
+  BOOL        mon_tasks;  //Used to enable tasks associated with Monitor Channel
+}
+T_TM_RF_PARAMS;
+
+typedef struct
+{
+  UWORD8      slot_num;
+  WORD8       agc;
+  WORD8       lna_off;
+  UWORD8      number_of_measurements;
+  UWORD8      place_of_measurement;
+  BOOL        pm_enable;
+  UWORD8      rssi_band;
+  #if L1_GPRS
+    UWORD8      timeslot_alloc;
+    UWORD8      coding_scheme;
+  #endif
+}
+T_TM_RX_PARAMS;
+
+typedef struct
+{
+  UWORD8      tsc;
+  UWORD8      txpwr;
+  UWORD8      txpwr_skip;
+  UWORD8      timing_advance;
+  UWORD8      burst_type;
+  UWORD8      burst_data;
+  #if L1_GPRS
+    UWORD8      timeslot_alloc;
+    UWORD8      txpwr_gprs[8];
+    UWORD8      coding_scheme;
+    UWORD8      rlc_buffer_size;
+    UWORD16     rlc_buffer[27];
+  #endif
+}
+T_TM_TX_PARAMS;
+
+typedef struct
+{
+  UWORD32     num_loops;
+  UWORD32     auto_result_loops;
+  UWORD32     auto_reset_loops;
+  UWORD8      stat_type;
+  UWORD16     stat_bitmask;
+  #if L1_GPRS
+    UWORD8      stat_gprs_slots;
+  #endif
+}
+T_TM_STATS_CONFIG;
+
+typedef struct 
+{
+  T_TM_RF_PARAMS    rf_params;
+  T_TM_RX_PARAMS    rx_params;
+  T_TM_TX_PARAMS    tx_params;
+  T_TM_STATS_CONFIG stats_config;
+}
+T_TM_PARAMS;
+
+typedef struct
+{
+  UWORD8  cid;
+  UWORD8  index;
+  UWORD8  status;
+  UWORD16 size;  // size of result[] array
+  UWORD8  result[TM_PAYLOAD_UPLINK_SIZE_MAX];
+}
+T_TM_RETURN;
+
+typedef struct
+{
+  UWORD8  cid;
+  UWORD8  index;
+  UWORD8  status;
+  UWORD16 size;  // size of result[] array
+  UWORD8  result[5];
+}
+T_TM_RETURN_ABBREV;