diff options
Diffstat (limited to 'CommonLibs/trx_vty.h')
-rw-r--r-- | CommonLibs/trx_vty.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/CommonLibs/trx_vty.h b/CommonLibs/trx_vty.h index 74af31b..c921722 100644 --- a/CommonLibs/trx_vty.h +++ b/CommonLibs/trx_vty.h @@ -2,12 +2,67 @@ #include <osmocom/vty/command.h> +#include "config_defs.h" + extern struct vty_app_info g_vty_info; +#define TRX_CHAN_MAX 8 + +/* Samples-per-symbol for downlink path + * 4 - Uses precision modulator (more computation, less distortion) + * 1 - Uses minimized modulator (less computation, more distortion) + * + * Other values are invalid. Receive path (uplink) is always + * downsampled to 1 sps. Default to 4 sps for all cases. + */ +#define DEFAULT_TX_SPS 4 + +/* + * Samples-per-symbol for uplink (receiver) path + * Do not modify this value. EDGE configures 4 sps automatically on + * B200/B210 devices only. Use of 4 sps on the receive path for other + * configurations is not supported. + */ +#define DEFAULT_RX_SPS 1 + +/* Default configuration parameters */ +#define DEFAULT_TRX_PORT 5700 +#define DEFAULT_TRX_IP "127.0.0.1" +#define DEFAULT_CHANS 1 + +struct trx_ctx; + +struct trx_chan { + struct trx_ctx *trx; /* backpointer */ + unsigned int idx; /* channel index */ + char *rx_path; + char *tx_path; +}; + struct trx_ctx { struct { char *bind_addr; + char *remote_addr; + char *dev_args; + unsigned int base_port; + unsigned int tx_sps; + unsigned int rx_sps; + unsigned int rtsc; + bool rtsc_set; + unsigned int rach_delay; + bool rach_delay_set; + enum ReferenceType clock_ref; + enum FillerType filler; + bool multi_arfcn; + double offset; + double rssi_offset; + bool swap_channels; + bool egprs; + unsigned int sched_rr; + unsigned int num_chans; + struct trx_chan chans[TRX_CHAN_MAX]; } cfg; }; int trx_vty_init(struct trx_ctx* trx); +struct trx_ctx *vty_trx_ctx_alloc(void *talloc_ctx); |