diff options
Diffstat (limited to 'data/mnet/GP10/Host/cli')
30 files changed, 4951 insertions, 0 deletions
diff --git a/data/mnet/GP10/Host/cli/Makefile b/data/mnet/GP10/Host/cli/Makefile new file mode 100644 index 0000000..38c754b --- /dev/null +++ b/data/mnet/GP10/Host/cli/Makefile @@ -0,0 +1,16 @@ +##########################################################
+#
+# (c) Copyright Cisco 2000
+# All Rights Reserved
+#
+##########################################################
+
+SUBDIRS= src
+
+# TOP_OF_VOB must be defined before including l3defs.mk
+TOP_OF_VOB = ..\..
+
+include $(TOP_OF_VOB)\l3defs.mk
+
+copyall:
+ $(CP) bin\*.out $(TOP_OF_VOB)\bin\*.out
\ No newline at end of file diff --git a/data/mnet/GP10/Host/cli/include/cfg_adjcell.h b/data/mnet/GP10/Host/cli/include/cfg_adjcell.h new file mode 100644 index 0000000..63c707b --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_adjcell.h @@ -0,0 +1,197 @@ + +#define CELL_SELECTED 1 +#define CELL_SYNCHRONISED 2 + +#define BSIC_NCC 0 +#define BSIC_BCC 1 + + +/* + * enum to identify adjacent cell commands + */ + +enum { + ADJ_CELL_RES_BCCH, + ADJ_CELL_RES, + ADJ_CELL_CC_VALUE, + ADJ_CELL_GI_VALUE, + ADJ_CELL_BCCH, + ADJ_CELL_SELECTION +}; + +/* + * codes to identify a cell + */ +enum { + GI_MCC, + GI_MNC, + GI_LAC, + GI_CI +}; + +/* + * bsic options + */ +static keyword_options bsic_options[] = { + { "ncc", "Network color code for PLMN",BSIC_NCC}, + { "bcc", "Base station color code",BSIC_BCC}, + {NULL,NULL,0} +}; + +/* + * selection options + */ +static keyword_options selection_options[] = { + { "selected", "Adjacent cell is active", CELL_SELECTED}, + { "synchronised", "Origin cell is synchronised with the adjacent cell",CELL_SYNCHRONISED}, + {NULL,NULL,0} +}; + +/* + * global identity options + */ +static keyword_options gi_options[] = { + /* { "mcc", "Mobile country code",GI_MCC}, + { "mnc", "Mobile network code",GI_MNC},*/ + { "lac", "Location area code", GI_LAC}, + { "ci", "Cell identifier", GI_CI}, + {NULL,NULL,0} +}; + +/* + * reselection bcch-frequency <0-1023> + */ + + +EOLS (bcch_freq_val_eol,adj_cell_parameters,ADJ_CELL_RES_BCCH); + +NUMBER (bcch_freq_value,bcch_freq_val_eol,no_alt,OBJ(int,1),0,1023, + "Frequncy value"); +NVGENS (bcch_freq_value_nv,bcch_freq_value,adj_cell_parameters,ADJ_CELL_RES_BCCH); + +NOPREFIX (bcch_freq_value_no,bcch_freq_value_nv,bcch_freq_val_eol); + +KEYWORD (res_bcch_freq,bcch_freq_value_no,no_alt,"bcch-frequency", + "The ARFCN of the BCCH for the adjacent cell",PRIV_CONF); + + +/* + * reselection selected + */ + +EOLS (res_index_eol,adj_cell_parameters,ADJ_CELL_RES); + +KEYWORD (res_index_sel,res_index_eol,res_bcch_freq,"selected", + "Select the adjacent cell to identify an active adjacent cell",PRIV_CONF); + +KEYWORD (cfg_reselection,res_index_sel,no_alt,"reselection", + "Parameters to identify the adjacent cells used for cell reselection",PRIV_CONF); + +/* + * handover bsic {NCC | BCC} <0-7> + */ + +EOLS (cc_eol,adj_cell_parameters,ADJ_CELL_CC_VALUE); + +NUMBER (cc_value,cc_eol,no_alt,OBJ(int,2),0,7, + "Value of color code"); + +NOPREFIX (cc_value_no,cc_value,cc_eol); + +KEYWORD_OPTIONS (cfg_cc,cc_value_no,no_alt,bsic_options, + OBJ(int,1),PRIV_CONF,0); + +NVGENS (cc_value_nv,cfg_cc,adj_cell_parameters,ADJ_CELL_CC_VALUE); + +KEYWORD (cell_bsic,cc_value_nv,no_alt,"bsic", + "Configure base station identity code elements",PRIV_CONF); + + +/*
+ * handover cell-global-identity {mcc | mnc | lac | ci}<0-65535>
+ */
+
+EOLS (gi_cc_eol,adj_cell_parameters,ADJ_CELL_GI_VALUE);
+
+NUMBER (gi_cc_value,gi_cc_eol,no_alt,OBJ(int,2),0,65535,
+ "Value of code");
+
+NVGENS(gi_cc_value_nv,gi_cc_value,adj_cell_parameters,ADJ_CELL_GI_VALUE);
+
+NOPREFIX(cfg_gi_cc_no,gi_cc_value_nv,gi_cc_eol);
+
+ /****mnc*****/
+NUMBER(cfg_mnc_value,gi_cc_eol,no_alt,OBJ(int,2),1,99,"Mobile network code");
+NVGENS(cfg_mnc_value_nv,cfg_mnc_value,adj_cell_parameters,ADJ_CELL_GI_VALUE);
+NOPREFIX(cfg_mnc_no,cfg_mnc_value_nv,gi_cc_eol);
+KEYWORD(cell_gi_mnc,cfg_mnc_no,no_alt,
+ "mnc","Mobile network code",PRIV_CONF);
+ /***mcc***/
+NUMBER(cfg_mcc_value,gi_cc_eol,no_alt,OBJ(int,2),1,999,"Mobile country code");
+NVGENS(cfg_mcc_value_nv,cfg_mcc_value,adj_cell_parameters,ADJ_CELL_GI_VALUE);
+NOPREFIX(cfg_mcc_no,cfg_mcc_value_nv,gi_cc_eol);
+KEYWORD(cell_gi_mcc,cfg_mcc_no,cell_gi_mnc,
+ "mcc","Mobile country code",PRIV_CONF);
+ /*************/
+
+KEYWORD_OPTIONS (cfg_gi_cc,cfg_gi_cc_no,cell_gi_mcc,gi_options,
+ OBJ(int,1),PRIV_CONF,0);
+
+KEYWORD (cell_gi,cfg_gi_cc,cell_bsic,"cell-global-identity",
+ "Configure parameters to identify GP10s adjacent cell",PRIV_CONF);
+ +/* + * handover bcch-frequency <0-1023> handover-margin <0-24> + * max-tx-power <0-33> min-rx-level <0-63> + */ + + +EOLS (bcch_freq_eol,adj_cell_parameters,ADJ_CELL_BCCH); + +NUMBER (rx_level_value,bcch_freq_eol,no_alt,OBJ(int,4),0,63, + "Minimum signal level"); + +KEYWORD (rx_level,rx_level_value,no_alt,"min-rx-level", + "Min received signal level from adjacent cell to consider handover for MS",PRIV_CONF); + + +NUMBER (tx_power_value,rx_level,no_alt,OBJ(int,3),0,33, + "For PCS 1800 radio max is 30 and for PCS 1900 radio max is 33"); + +KEYWORD (tx_power,tx_power_value,no_alt,"max-tx-power", + "Max transmit power a MS may use in adjacent cell",PRIV_CONF); + +NUMBER (margin_value,tx_power,no_alt,OBJ(int,2),0,24, + "Enter the handover margin value"); + +KEYWORD (margin,margin_value,no_alt,"handover-margin", + "Threshold value used to prevent repetitive handovers between adjacent cells",PRIV_CONF); + + +NUMBER (freq_value,margin,no_alt,OBJ(int,1),0,1023, + "Enter the Absolute Radio Frequency Channel Number value"); + +NVGENS(freq_value_nv,freq_value,adj_cell_parameters,ADJ_CELL_BCCH); + +KEYWORD (bcch_freq,freq_value_nv,cell_gi,"bcch-frequency", + "The ARFCN of the BCCH for the adjacent cell",PRIV_CONF); + + +/* + * handover {selected | synchronised} + */ + + +EOLS (index_eol,adj_cell_parameters,ADJ_CELL_SELECTION); + + +KEYWORD_OPTIONS(index_sel,index_eol,bcch_freq,selection_options,OBJ(int,1), + PRIV_CONF,0); +NVGENS (index_sel_nv,index_sel,adj_cell_parameters,ADJ_CELL_SELECTION); + +KEYWORD(cfg_handover,index_sel_nv,cfg_reselection,"handover", + "Configure parameters to identify cells around the cell created by GP10",PRIV_CONF); + + +#undef ALTERNATE +#define ALTERNATE cfg_handover diff --git a/data/mnet/GP10/Host/cli/include/cfg_adjcell_exit.h b/data/mnet/GP10/Host/cli/include/cfg_adjcell_exit.h new file mode 100644 index 0000000..3326347 --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_adjcell_exit.h @@ -0,0 +1,12 @@ + +EOLS (gp10_adjcell_end_eol,exit_config_command,CMD_END); + +KEYWORD (gp10_adjcell_end,gp10_adjcell_end_eol,no_alt,"end", + "Exit gp10 config-adjcell mode to exec mode",PRIV_CONF); + +EOLNS (gp10_adjcell_exit_eol,gp10_sub_config_exit); +KEYWORD (gp10_adjcell_exit, gp10_adjcell_exit_eol,gp10_adjcell_end, "exit", + "Exit gp10 config-adjcell mode", PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE gp10_adjcell_exit diff --git a/data/mnet/GP10/Host/cli/include/cfg_bts_basic.h b/data/mnet/GP10/Host/cli/include/cfg_bts_basic.h new file mode 100644 index 0000000..fe9cb1f --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_bts_basic.h @@ -0,0 +1,225 @@ + +#define BSIC_NCC 0 +#define BSIC_BCC 1 + +/* + * enums for command identification + */ + +enum { + BTS_RECV_LEVEL, + BTS_LINK_TIMEOUT, + BTS_PER_NCC_ALL, + BTS_PER_NCC, + BTS_PHY_VALUE, + BTS_RES_VALUE, + BTS_GI_VALUE, + BTS_CC_VALUE, + BTS_ADMIN_STATE +}; + + +/* + * enums for options + */ + +enum { + STATE_LOCKED, + STATE_UNLOCKED, + STATE_SHUTDOWN +}; + +enum { + GI_MCC, + GI_MNC, + GI_LAC, + GI_CI +}; + +/* + * administrative state options + */ + +static keyword_options admin_state_options[] = { + { "locked", "Cannot be accessed by mobile stations", STATE_LOCKED}, + { "unlocked", "Can be accessed by mobile stations",STATE_UNLOCKED}, + { "shutting-down","GP10 is in the process of becoming locked",STATE_SHUTDOWN}, + {NULL,NULL,0} +}; + +/* + * bsic options + */ +static keyword_options bsic_options[] = { + { "ncc", "Network color code for PLMN",BSIC_NCC}, + { "bcc", "Base station color code",BSIC_BCC}, + {NULL,NULL,0} +}; + +/* + * options for global identity + */ + +static keyword_options gi_options[] = { + /* { "mcc", "Mobile country code",GI_MCC}, + { "mnc", "Mobile network code",GI_MNC},*/ + { "lac", "Location area code", GI_LAC}, + { "ci", "Cell identifier", GI_CI}, + {NULL,NULL,0} +}; + + +/* + *receive-level-access <0-63> + */ + +EOLS (recv_level_eol,bts_basic_parameters,BTS_RECV_LEVEL); + +NUMBER (recv_level,recv_level_eol,no_alt,OBJ(int,1),0,63, + "Enter access level value"); + +NVGENS (recv_level_nv,recv_level,bts_basic_parameters,BTS_RECV_LEVEL); + +NOPREFIX (recv_level_no,recv_level_nv,recv_level_eol); + +KEYWORD (cfg_recv_level_access,recv_level_no,no_alt,"receive-level-access", + "Min receive level at which a MS can access the system",PRIV_CONF); + +/* + * radio-link-timeout <0-15> + */ + +EOLS (timeout_value_eol,bts_basic_parameters,BTS_LINK_TIMEOUT); + +NUMBER (timeout_value,timeout_value_eol,no_alt,OBJ(int,1),0,15, + "Enter timeout value"); + +NVGENS (timeout_value_nv,timeout_value,bts_basic_parameters,BTS_LINK_TIMEOUT); + +NOPREFIX (timeout_value_no,timeout_value_nv,timeout_value_eol); + +KEYWORD (cfg_link_timeout,timeout_value_no,cfg_recv_level_access,"radio-link-timeout", + "Max value of radio link counter need to detect radio link failure",PRIV_CONF); + + +/* + * plmn-permitted-ncc {all | 0-7} + */ + +EOLS (ncc_all_eol,bts_basic_parameters,BTS_PER_NCC_ALL); + +KEYWORD (ncc_all,ncc_all_eol,no_alt,"all", + "Select all the ncc to use",PRIV_CONF); + + +EOLS (ncc_eol,bts_basic_parameters,BTS_PER_NCC); + +NUMBER (per_ncc_value,ncc_eol,ncc_all,OBJ(int,1),0,7, + "Enter the ncc MS will use"); + +NVGENS (per_ncc_value_nv,per_ncc_value,bts_basic_parameters,BTS_PER_NCC); + +KEYWORD (cfg_per_ncc,per_ncc_value_nv,cfg_link_timeout,"plmn-permitted-ncc", + "Network color codes used by the network",PRIV_CONF); + +/* + * physical-repetition <0-7> + */ + +EOLS (phy_eol,bts_basic_parameters,BTS_PHY_VALUE); + +NUMBER (phy_value,phy_eol,no_alt,OBJ(int,1),0,7, + "Number of repetitions"); +NVGENS (phy_value_nv,phy_value,bts_basic_parameters,BTS_PHY_VALUE); + +NOPREFIX (phy_value_no,phy_value_nv,phy_eol); + +KEYWORD (cfg_phy_rep,phy_value_no,cfg_per_ncc,"physical-repetition", + "Max number of times GP10 should send the physical information to MSs",PRIV_CONF); + +/* + * cell-reselect-hysteresis <0-7> + */ + +EOLS (res_eol,bts_basic_parameters,BTS_RES_VALUE); + +NUMBER (res_value,res_eol,no_alt,OBJ(int,1),0,7, + "Value of radio frequency power level"); + +NVGENS (res_value_nv,res_value,bts_basic_parameters,BTS_RES_VALUE); + +NOPREFIX (res_value_no,res_value_nv,res_eol); + +KEYWORD (cfg_cell_res,res_value_no,cfg_phy_rep,"cell-reselect-hysteresis", + "Power level hysteresis required for cell reselction",PRIV_CONF); + + + +/* + * cell-global-identity {mcc | mnc | lac | ci} <0-65535> + */ + +EOLS (gi_cc_eol,bts_basic_parameters,BTS_GI_VALUE); + +NUMBER (gi_cc_value,gi_cc_eol,no_alt,OBJ(int,2),0,65535, + "Value of code"); + +NOPREFIX (gi_cc_value_no,gi_cc_value,gi_cc_eol); +
+ /****mnc*****/
+NUMBER(cfg_mnc_value,gi_cc_eol,no_alt,OBJ(int,2),1,99,"Mobile network code");
+NOPREFIX(cfg_mnc_no,cfg_mnc_value,gi_cc_eol);
+KEYWORD(cell_gi_mnc,cfg_mnc_no,no_alt,
+ "mnc","Mobile network code",PRIV_CONF);
+ /***mcc***/
+NUMBER(cfg_mcc_value,gi_cc_eol,no_alt,OBJ(int,2),1,999,"Mobile country code");
+NOPREFIX(cfg_mcc_no,cfg_mcc_value,gi_cc_eol);
+KEYWORD(cell_gi_mcc,cfg_mcc_no,cell_gi_mnc,
+ "mcc","Mobile country code",PRIV_CONF);
+ /********/ +KEYWORD_OPTIONS (cfg_gi_cc,gi_cc_value_no,cell_gi_mcc,gi_options, + OBJ(int,1),PRIV_CONF,0); + +NVGENS (gi_cc_value_nv,cfg_gi_cc,bts_basic_parameters,BTS_GI_VALUE); + +KEYWORD (cfg_gi,gi_cc_value_nv,cfg_cell_res,"cell-global-identity", + "Configure parameters to identify GP10s cell",PRIV_CONF); + + +/* + * bsic {ncc | bcc} <value> + */ + +EOLS (cc_eol,bts_basic_parameters,BTS_CC_VALUE); + +NUMBER (cc_value,cc_eol,no_alt,OBJ(int,2),0,7, + "Value of color code"); + +NOPREFIX (cc_value_no,cc_value,cc_eol); + +KEYWORD_OPTIONS (cfg_cc,cc_value_no,no_alt,bsic_options, + OBJ(int,1),PRIV_CONF,0); + +NVGENS (cc_value_nv,cfg_cc,bts_basic_parameters,BTS_CC_VALUE); + +KEYWORD (cfg_bsic,cc_value_nv,cfg_gi,"bsic", + "Configure base station identity code elements",PRIV_CONF); + + +/* + * administrative-state [{locked | unlocked | shutdown}] + */ + +EOLS (admin_state_eol,bts_basic_parameters,BTS_ADMIN_STATE); + +KEYWORD_OPTIONS (admin_state,admin_state_eol,no_alt,admin_state_options, + OBJ(int,1),PRIV_CONF,0); +NVGENS (admin_state_nv,admin_state,bts_basic_parameters,BTS_ADMIN_STATE); + +NOPREFIX (admin_state_no,admin_state_nv,admin_state_eol); + +KEYWORD (cfg_bts_basic,admin_state_no,cfg_bsic,"administrative-state", + "State in which to place GP10",PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE cfg_bts_basic diff --git a/data/mnet/GP10/Host/cli/include/cfg_bts_exit.h b/data/mnet/GP10/Host/cli/include/cfg_bts_exit.h new file mode 100644 index 0000000..d502054 --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_bts_exit.h @@ -0,0 +1,11 @@ +EOLS (gp10_cell_bts_end_eol,exit_config_command,CMD_END); + +KEYWORD (gp10_cell_bts_end,gp10_cell_bts_end_eol,no_alt,"end", + "Exit gp10 bts-basic mode to exec mode",PRIV_CONF); + +EOLNS (gp10_cell_bts_exit_eol,gp10_cell_sub_config_exit); +KEYWORD (gp10_cell_bts_exit, gp10_cell_bts_exit_eol, gp10_cell_bts_end, "exit", + "Exit gp10 bts-basic mode", PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE gp10_cell_bts_exit diff --git a/data/mnet/GP10/Host/cli/include/cfg_bts_options.h b/data/mnet/GP10/Host/cli/include/cfg_bts_options.h new file mode 100644 index 0000000..89b1da2 --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_bts_options.h @@ -0,0 +1,169 @@ +/* + * enums for command identification + */ + +enum { + IMSI_ATTACH, + CELL_BARRED, + DOWNLINK_DTX, + IMSI_FOR_EMER, + RESTRICTED_EMER_CALL +}; + +enum { + UPDATE_INTERVAL, + ACCESS_CLASS, + DTX_MODE_OPTIONS, + ENABLE_OPTIONS +}; + + +enum { + MAY_USE_DTX, + SHALL_USE_DTX, + SHALL_NOT_USE_DTX, +}; + + +enum { + CFG_CELL_CCCH, + CFG_CELL_TRX, + CFG_CELL_BTS +}; +/* + *bts enable options + */ + +static keyword_options bts_enable_options[] = { + { "imsi-attach", "Enable IMSI attach/detach procedure in the cell",IMSI_ATTACH}, + { "cell-barred", "Enable barring of MS camping on a cell",CELL_BARRED}, + {"downlink-dtx","Enable availability of downlink discontinuous transmission",DOWNLINK_DTX}, + {"imsi-for-emergency","Enable requirement of IMSI for MS to make emergency call", + IMSI_FOR_EMER}, + {"restricted-emergency-call","Enable emergency calls restricted to MS from IMSI" + "class 11 to 15",RESTRICTED_EMER_CALL}, + {NULL,NULL,0} +}; + + +/* + * dtx mode options + */ + +static keyword_options dtx_mode_options[] = { + { "ms-shall-use-dtx","MS shall use dtx for the uplink",SHALL_USE_DTX}, + { "ms-may-use-dtx","MS may use dtx for the uplink",MAY_USE_DTX}, + { "ms-shall-not-use-dtx","MS shall not use dtx for the uplink",SHALL_NOT_USE_DTX}, + {NULL,NULL,0} +}; + + + +/* + * ccch-config + */ + +EOLS (cfg_ccch_sub_eol,gp10_cell_subconfig_cmds,CFG_CELL_CCCH); + +NVGENS (cfg_ccch_sub_nv,cfg_ccch_sub_eol,gp10_cell_subconfig_cmds,CFG_CELL_CCCH); + +KEYWORD (cfg_bts_ccch,cfg_ccch_sub_nv,no_alt,"ccch-config", + "Configure bts ccch parameters",PRIV_CONF); + +/* + * bts-basic + */ + +EOLS (cfg_bts_sub_eol,gp10_cell_subconfig_cmds,CFG_CELL_BTS); + +NVGENS (cfg_bts_sub_nv,cfg_bts_sub_eol,gp10_cell_subconfig_cmds,CFG_CELL_BTS); + +KEYWORD (cfg_bts_sub,cfg_bts_sub_nv,cfg_bts_ccch,"bts-basic", + "Configure bts basic parameters",PRIV_CONF); + + +/* + * transceiver + */ + +EOLS (cfg_sub_trx_num_eol,gp10_cell_subconfig_cmds,CFG_CELL_TRX); + +NUMBER (cfg_sub_trx_num,cfg_sub_trx_num_eol,no_alt,OBJ(int,1), + 0,1,"Enter transceiver number"); + +NVGENS (cfg_sub_trx_nv,cfg_sub_trx_num,gp10_cell_subconfig_cmds,CFG_CELL_TRX); + +KEYWORD (cfg_trx_sub,cfg_sub_trx_nv,cfg_bts_sub,"transceiver", + "Configure transceiver parameters",PRIV_CONF); + + +/* + *bts-options location-update-interval <0-255> + */ + +EOLS (upd_ivl_eol,bts_options,UPDATE_INTERVAL); + +NUMBER (upd_ivl_val,upd_ivl_eol,no_alt,OBJ(int,1),0,255, + "Enter the interval"); + +NVGENS (upd_ivl_val_nv,upd_ivl_val,bts_options,UPDATE_INTERVAL); + +NOPREFIX (upd_ivl_val_no,upd_ivl_val_nv,upd_ivl_eol); + +KEYWORD (loc_upd_ivl,upd_ivl_val_no,no_alt,"location-update-interval", + "Interval for periodic location updates from the MS in decihours",PRIV_CONF); + + + +/* + *bts-options ms-access-class-not-allowed <0-15> + */ + +EOLS (access_class_eol,bts_options,ACCESS_CLASS); + +NUMBER (access_class_val,access_class_eol,no_alt,OBJ(int,1),0,15, + "Enter the access class not allowed"); + +KEYWORD (bts_access_class,access_class_val,loc_upd_ivl,"ms-access-class-not-allowed", + "MS access classes not allowed to connect to the cell",PRIV_CONF); + + +/* + * bts-options dtx-mode {ms-shall-use-dtx | + * ms-may-use-dtx | ms-shall-not-use-dtx} + */ + + +EOLS (dtx_mode_eol,bts_options,DTX_MODE_OPTIONS); + +KEYWORD_OPTIONS (dtx_mode_opt,dtx_mode_eol,no_alt,dtx_mode_options,OBJ(int,1), + PRIV_CONF,0); + +NOPREFIX (dtx_mode_opt_no,dtx_mode_opt,dtx_mode_eol); + +KEYWORD(dtx_mode,dtx_mode_opt_no,bts_access_class,"dtx-mode", + "Downlink discontinuous transmission mode options",PRIV_CONF); + +/* + * bts-options {imsi-attach | cell-barred | downlink-dtx | imsi-for-emergency | + * restricted-emergency-call} enable + */ + + +EOLS (bts_en_options_eol,bts_options,ENABLE_OPTIONS); + +KEYWORD (bts_opt_enable,bts_en_options_eol,no_alt,"enable", + "Enable the option",PRIV_CONF); + +KEYWORD_OPTIONS(bts_enable_options,bts_opt_enable,dtx_mode,bts_enable_options,OBJ(int,1), + PRIV_CONF,0); + +/* + * bts-options + */ + +KEYWORD (cfg_bts_opt,bts_enable_options,cfg_trx_sub,"bts-options", + "Configure bts options",PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE cfg_bts_opt diff --git a/data/mnet/GP10/Host/cli/include/cfg_ccch.h b/data/mnet/GP10/Host/cli/include/cfg_ccch.h new file mode 100644 index 0000000..e5a17ee --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_ccch.h @@ -0,0 +1,189 @@ + +#define ONE_RETR_RACH 1 +#define TWO_RETR_RACH 2 +#define FOUR_RETR_RACH 4 +#define SEVEN_RETR_RACH 7 + +/* + * enum to identify ccch commands + */ +enum { + CCCH_CELL_BAR, + CCCH_OFFSET_PENALTY, + CCCH_OFFSET_TEMP, + CCCH_CELL_RESELECT, + CCCH_SPREAD_SLOT, + CCCH_MULT_FRAME, + CCCH_ACCESS_GRANT, + CCCH_MAX_TX_POWER, + CCCH_MAX_RETR +}; + +/* + * retransmission options + */ +static keyword_options ccch_ret_options[] = { + {"1","Retransmit one time on the random access channel",ONE_RETR_RACH}, + {"2","Retransmit two time on the random access channel",TWO_RETR_RACH}, + {"4","Retransmit four time on the random access channel",FOUR_RETR_RACH}, + {"7","Retransmit seven time on the random access channel",SEVEN_RETR_RACH}, + {NULL,NULL,0} +}; + +/* + * cell-bar-qualify enable + */ + +EOLS (bar_qfy_eol,ccch_configuration,CCCH_CELL_BAR); + +KEYWORD (bar_qfy_enable,bar_qfy_eol,no_alt,"enable", + "Enable the option",PRIV_CONF); + +NVGENS (bar_qfy_nv,bar_qfy_enable,ccch_configuration,CCCH_CELL_BAR); + +KEYWORD (cell_bar_qfy,bar_qfy_nv,no_alt,"cell-bar-qualify", + "Enable to consider cell low priority by MS",PRIV_CONF); + +/* + * offset penalty <0-31> + */ + +EOLS (ccch_penalty_eol,ccch_configuration,CCCH_OFFSET_PENALTY); + +NUMBER (ccch_penalty_val,ccch_penalty_eol,no_alt,OBJ(int,1),0,31, + "Enter the penalty time"); + +NVGENS (ccch_penalty_val_nv,ccch_penalty_val,ccch_configuration,CCCH_OFFSET_PENALTY); + +NOPREFIX (ccch_penalty_val_no,ccch_penalty_val_nv,ccch_penalty_eol); + +KEYWORD (ccch_penalty,ccch_penalty_val_no,no_alt,"penalty", + "Penalty time during which the temporary offset is subracted from" + "reselection criterion",PRIV_CONF); + +/* + * offset temporary <0-7> + */ + +EOLS (ccch_temp_eol,ccch_configuration,CCCH_OFFSET_TEMP); + +NUMBER (ccch_temp_val,ccch_temp_eol,no_alt,OBJ(int,1),0,7, + "Enter the reselect offset value"); +NVGENS (ccch_temp_val_nv,ccch_temp_val,ccch_configuration,CCCH_OFFSET_TEMP); + +NOPREFIX (ccch_temp_val_no,ccch_temp_val_nv,ccch_temp_eol); + +KEYWORD (ccch_temp,ccch_temp_val_no,ccch_penalty,"temporary", + "Offset subtracted from C2 reselection criterion",PRIV_CONF); + + +/* + * offset cell-reselect <0-63> + */ + +EOLS (cell_reselect_eol,ccch_configuration,CCCH_CELL_RESELECT); + +NUMBER (cell_reselect_val,cell_reselect_eol,no_alt,OBJ(int,1),0,63, + "Enter the reselect offset value"); +NVGENS (cell_reselect_val_nv,cell_reselect_val,ccch_configuration,CCCH_CELL_RESELECT); + +NOPREFIX (cell_reselect_val_no,cell_reselect_val_nv,cell_reselect_eol); + +KEYWORD(ccch_cell_reselect,cell_reselect_val_no,ccch_temp,"cell-reselect", + "Offset added to C2 reselection criterion",PRIV_CONF); + +/* + * offset + */ + +KEYWORD (ccch_offset,ccch_cell_reselect,cell_bar_qfy,"offset", + "Offset added to the C2 reselection criterion",PRIV_CONF); + + +/* + * spread-slot-trans <0-15> + */ + + +EOLS (spread_slot_eol,ccch_configuration,CCCH_SPREAD_SLOT); + +NUMBER (spread_slot_val,spread_slot_eol,no_alt,OBJ(int,1),0,15, + "Enter the number of slots"); + +NVGENS (spread_slot_val_nv,spread_slot_val,ccch_configuration,CCCH_SPREAD_SLOT); + +NOPREFIX (spread_slot_val_no,spread_slot_val_nv,spread_slot_eol); + +KEYWORD (spread_slot,spread_slot_val_no,ccch_offset,"spread-slot-trans", + "Max number of random channel slots a MS must wait",PRIV_CONF); + +/* + * multi-frames <2-9> + */ + + +EOLS (mult_frame_eol,ccch_configuration,CCCH_MULT_FRAME); + +NUMBER (mult_frame_val,mult_frame_eol,no_alt,OBJ(int,1),2,9, + "Enter the number of frames"); + +NVGENS (mult_frame_val_nv,mult_frame_val,ccch_configuration,CCCH_MULT_FRAME); + +NOPREFIX (mult_frame_val_no,mult_frame_val_nv,mult_frame_eol); + +KEYWORD (mult_frame,mult_frame_val_no,spread_slot,"multi-frames", + "Number of multiframes between two transmissions",PRIV_CONF); + +/* + * access-grant-blocks <0-7> + */ + + +EOLS (access_grant_eol,ccch_configuration,CCCH_ACCESS_GRANT); + +NUMBER (access_grant_val,access_grant_eol,no_alt,OBJ(int,1),0,7, + "Enter the number of frames"); + +NVGENS (access_grant_val_nv,access_grant_val,ccch_configuration,CCCH_ACCESS_GRANT); + +NOPREFIX (access_grant_val_no,access_grant_val_nv,access_grant_eol); + +KEYWORD (ccch_access_grant,access_grant_val_no,mult_frame,"access-grant-blocks", + "Number of TDMA frames reserved for access grant channel",PRIV_CONF); + +/* + * ms-max-tx-power <0-33> + */ + + +EOLS (ccch_tx_pwr_eol,ccch_configuration,CCCH_MAX_TX_POWER); + +NUMBER (ccch_tx_pwr_val,ccch_tx_pwr_eol,no_alt,OBJ(int,1),0,33, + "For radiotype DCS1800 value is 0 to 30,for DCS1900 0 to 33"); + +NVGENS (ccch_tx_pwr_val_nv,ccch_tx_pwr_val,ccch_configuration,CCCH_MAX_TX_POWER); + +NOPREFIX (ccch_tx_pwr_val_no,ccch_tx_pwr_val_nv,ccch_tx_pwr_eol); + +KEYWORD (ccch_tx_pwr,ccch_tx_pwr_val_no,ccch_access_grant,"ms-max-tx-power", + "Max transmit power level a MS can use on the cell",PRIV_CONF); + + +/* + * max-retransmission + */ + +EOLS (max_retrx_eol,ccch_configuration,CCCH_MAX_RETR); + +KEYWORD_OPTIONS(max_retrx_val,max_retrx_eol,no_alt,ccch_ret_options,OBJ(int,1), + PRIV_CONF,0); + +NVGENS (max_retrx_val_nv,max_retrx_val,ccch_configuration,CCCH_MAX_RETR); + +NOPREFIX (max_retrx_val_no,max_retrx_val_nv,max_retrx_eol); + +KEYWORD(cfg_ccch_options,max_retrx_val_no,ccch_tx_pwr,"max-retransmission", + "Max number of retransmission MS can attempt",PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE cfg_ccch_options diff --git a/data/mnet/GP10/Host/cli/include/cfg_ccch_exit.h b/data/mnet/GP10/Host/cli/include/cfg_ccch_exit.h new file mode 100644 index 0000000..f48ca27 --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_ccch_exit.h @@ -0,0 +1,11 @@ +EOLS (gp10_cell_ccch_end_eol,exit_config_command,CMD_END); + +KEYWORD (gp10_cell_ccch_end,gp10_cell_ccch_end_eol,no_alt,"end", + "Exit gp10 ccch-config mode to exec mode",PRIV_CONF); + +EOLNS (gp10_cell_ccch_exit_eol,gp10_cell_sub_config_exit); +KEYWORD (gp10_cell_ccch_exit, gp10_cell_ccch_exit_eol,gp10_cell_ccch_end, "exit", + "Exit gp10 ccch-config mode", PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE gp10_cell_ccch_exit diff --git a/data/mnet/GP10/Host/cli/include/cfg_cell_exit.h b/data/mnet/GP10/Host/cli/include/cfg_cell_exit.h new file mode 100644 index 0000000..845eb90 --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_cell_exit.h @@ -0,0 +1,11 @@ +EOLS (gp10_cell_end_eol,exit_config_command,CMD_END); + +KEYWORD (gp10_cell_end,gp10_cell_end_eol,no_alt,"end", + "Exit gp10 config-cell mode to exec mode",PRIV_CONF); + +EOLNS (gp10_cell_exit_eol,gp10_sub_config_exit); +KEYWORD (gp10_cell_exit, gp10_cell_exit_eol,gp10_cell_end, "exit", + "Exit gp10 config-cell mode", PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE gp10_cell_exit diff --git a/data/mnet/GP10/Host/cli/include/cfg_mspwr_ctrl.h b/data/mnet/GP10/Host/cli/include/cfg_mspwr_ctrl.h new file mode 100644 index 0000000..650041e --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_mspwr_ctrl.h @@ -0,0 +1,229 @@ + +/* + * enum to identify handover command + */ + +enum { + HANDOVER_N5, + HANDOVER_N6, + HANDOVER_P5, + HANDOVER_P6, + UPLINK, + DOWNLINK, + HANDOVER_AVERAGE, + HANDOVER_QUALITY, + HANDOVER_STRENGTH, + LOG_CONSOLE, + LOG_HOST, + LOG_FILE +}; + +static keyword_options link_options[] = { + {"uplink","Uplink received power/quality level",UPLINK}, + {"downlink","Downlink received power/quality level",DOWNLINK}, + {NULL,NULL,0} +}; + +static keyword_options handover_averages[] = { + {"N5","Total number of averages of signal quality before handover",HANDOVER_N5}, + {"N6","Total number of averages of signal strength before handover",HANDOVER_N6}, + {"P5","Total number of averages of signal quality lower than threshold",HANDOVER_P5}, + {"P6","Total number of averages of signal strength lower than threshold",HANDOVER_P6}, + {NULL,NULL,0} +}; + + +/* + * logging file + */ +EOLS (log_file_eol,logging_option,LOG_FILE); + +KEYWORD (log_file,log_file_eol,no_alt,"file", + "Log to the file viperlog.dat",PRIV_CONF); + +/* + * logging <ip-address> [port-number] + */ + +EOLS (log_ip_eol,logging_option,LOG_HOST); + +NUMBER (log_port,log_ip_eol,log_ip_eol,OBJ(int,1),1025,65535, + "Enter the port number"); + +IPADDR (log_ip_addr,log_port,log_file,OBJ(paddr,1), + "Ip address of the host to send the log messages"); + +/* + * logging console + */ + +EOLS (log_cons_eol,logging_option,LOG_CONSOLE); + +KEYWORD (log_cons,log_cons_eol,log_ip_addr,"console", + "Log to the console",PRIV_CONF); + +NVGENNS (log_nv,log_cons,logging_option); + +/* + * logging + */ + +KEYWORD (cfg_logging,log_nv,no_alt,"logging", + "Configure the logging option",PRIV_CONF); + + +/* + * handover-control average {N5 | N6 | P5 | P6} <0-31> + */ + +EOLS (hand_avg_eol,handover_control_commands,HANDOVER_AVERAGE); + +NUMBER (hand_avg_val,hand_avg_eol,no_alt,OBJ(int,2),0,31, + "Enter average value"); + +NOPREFIX (hand_avg_val_no,hand_avg_val,hand_avg_eol); + +KEYWORD_OPTIONS(hand_avg_opt,hand_avg_val_no,no_alt,handover_averages, + OBJ(int,1),PRIV_CONF,0); + +NVGENS (hand_avg_val_nv,hand_avg_opt,handover_control_commands,HANDOVER_AVERAGE); + +KEYWORD (hand_ctrl_avg,hand_avg_val_nv,no_alt,"average", + "Averages to make handover decision",PRIV_CONF); + +/* + * handover-control {uplink|downlink} quality <0-7>} + */ + +EOLS (hand_qty_eol,handover_control_commands,HANDOVER_QUALITY); + +NUMBER (hand_qty_val,hand_qty_eol,no_alt,OBJ(int,2),0,7, + "Enter quality level"); + +NOPREFIX (hand_qty_val_no,hand_qty_val,hand_qty_eol); + +KEYWORD (hand_qty,hand_qty_val_no,no_alt,"quality", + "Quality level",PRIV_CONF); + +/* + * handover-control {uplink|downlink} strength <0-63> + */ + +EOLS (hand_strgth_eol,handover_control_commands,HANDOVER_STRENGTH); + +NUMBER (hand_strgth_val,hand_strgth_eol,no_alt,OBJ(int,2),0,63, + "Enter power level"); + +NOPREFIX (hand_strgth_val_no,hand_strgth_val,hand_strgth_eol); + +KEYWORD (hand_ctrl_strgth,hand_strgth_val_no,hand_qty,"strength", + "Strenth of the power",PRIV_CONF); + +/* + * handover-control {uplink|downlink} + */ + +KEYWORD_OPTIONS (hand_ctrl_choice,hand_ctrl_strgth,no_alt,link_options,OBJ(int,1), + PRIV_CONF,0); + +NVGENS (hand_ctrl_choice_nv,hand_ctrl_choice,handover_control_commands,HANDOVER_STRENGTH); + +KEYWORD (hand_ctrl_thr,hand_ctrl_choice_nv,hand_ctrl_avg,"threshold", + "Threshold to trigger the GP10 to handover MS",PRIV_CONF); + + +/* + * handover-control + */ + +KEYWORD (cfg_hand_ctrl,hand_ctrl_thr,cfg_logging,"handover-control", + "Configure handover control parameters",PRIV_CONF); + + +/* + * enum for power control command identification + */ + +enum { + MAX_POWER_LEVEL, + UPLINK_TARGET, + SIGNAL_QUALITY, + SIGNAL_STRENGTH +}; + +/* + * ms-power-control max-tx-power <power-level> + */ + + +EOLS (max_tr_pwr_eol,mspower_commands,MAX_POWER_LEVEL); + +NUMBER (max_tr_pwr_val,max_tr_pwr_eol,no_alt,OBJ(int,1),0,33, + "Power level"); +NVGENS (max_tr_pwr_val_nv,max_tr_pwr_val,mspower_commands,MAX_POWER_LEVEL); + +NOPREFIX (max_tr_pwr_val_no,max_tr_pwr_val_nv,max_tr_pwr_eol); + +KEYWORD (max_tr_pwr,max_tr_pwr_val_no,no_alt,"max-tx-power", + "Maximum transmit power level allowed for each MS",PRIV_CONF); + + +/* + * ms-power-control uplink-target <power-level> + */ + + +EOLS (uplink_tgt_eol,mspower_commands,UPLINK_TARGET); + +NUMBER (uplink_tgt_val,uplink_tgt_eol,no_alt,OBJ(int,1),0,63, + "Power level"); + +NVGENS (uplink_tgt_val_nv,uplink_tgt_val,mspower_commands,UPLINK_TARGET); + +NOPREFIX (uplink_tgt_val_no,uplink_tgt_val_nv,uplink_tgt_eol); + +KEYWORD (uplink_tgt,uplink_tgt_val_no,max_tr_pwr,"uplink-target", + "Received power level GP10 attempts to maintain from each MS",PRIV_CONF); + +/* + * ms-power-control signal-quality-avg-window <value> + */ + + +EOLS (sig_qty_eol,mspower_commands,SIGNAL_QUALITY); + +NUMBER (sig_qty_val,sig_qty_eol,no_alt,OBJ(int,1),0,31, + "Period of computation"); +NVGENS (sig_qty_val_nv,sig_qty_val,mspower_commands,SIGNAL_QUALITY); + +NOPREFIX (sig_qty_val_no,sig_qty_val_nv,sig_qty_eol); + +KEYWORD (sig_qty,sig_qty_val_no,uplink_tgt,"signal-quality-avg-window", + "Computation of average of uplink received quality",PRIV_CONF); + +/* + * ms-power-control signal-strength-avg-window <value> + */ + + +EOLS (sig_strgth_eol,mspower_commands,SIGNAL_STRENGTH); + +NUMBER (sig_strgth_val,sig_strgth_eol,no_alt,OBJ(int,1),0,31, + "Period of computation"); +NVGENS (sig_strgth_val_nv,sig_strgth_val,mspower_commands,SIGNAL_STRENGTH); + +NOPREFIX (sig_strgth_val_no,sig_strgth_val_nv,sig_strgth_eol); + +KEYWORD (sig_strgth,sig_strgth_val_no,sig_qty,"signal-strength-avg-window", + "Computation of average of uplink received levels",PRIV_CONF); + + +/* + * ms-power-control + */ + +KEYWORD (cfg_pwr_ctrl,sig_strgth,cfg_hand_ctrl,"ms-power-control", + "Configure MS power control parameters",PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE cfg_pwr_ctrl diff --git a/data/mnet/GP10/Host/cli/include/cfg_proto_exit.h b/data/mnet/GP10/Host/cli/include/cfg_proto_exit.h new file mode 100644 index 0000000..0d378ef --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_proto_exit.h @@ -0,0 +1,11 @@ +EOLS (gp10_proto_end_eol,exit_config_command,CMD_END); + +KEYWORD (gp10_proto_end,gp10_proto_end_eol,no_alt,"end", + "Exit gp10 config-proto mode to exec mode",PRIV_CONF); + +EOLNS (gp10_proto_exit_eol,gp10_sub_config_exit); +KEYWORD (gp10_proto_exit, gp10_proto_exit_eol,gp10_proto_end, "exit", + "Exit gp10 config-proto mode", PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE gp10_proto_exit diff --git a/data/mnet/GP10/Host/cli/include/cfg_sys_feat.h b/data/mnet/GP10/Host/cli/include/cfg_sys_feat.h new file mode 100644 index 0000000..3529e16 --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_sys_feat.h @@ -0,0 +1,86 @@ + +#define CIPHERING_ENABLE 1 + +/* + * enum for command identification + */ +enum { + CELL_BARR_ENABLE, + SMS_CB_ENABLE, + AUTH_FREQ_VAL, + AUTH_CIPH_ENABLE +}; + + +/* + * sys-feature cell-barring enable + */ + +EOLS (cell_barr_eol,sysfeature_commands,CELL_BARR_ENABLE); + +KEYWORD (cell_barr_en,cell_barr_eol,no_alt,"enable", + "Enable the cell barring",PRIV_CONF); + +NVGENS (cell_barr_nv,cell_barr_en,sysfeature_commands,CELL_BARR_ENABLE); + +KEYWORD (cell_barr,cell_barr_nv,no_alt,"cell-barring", + "Enable cell barring feature",PRIV_CONF); + +/* + * sys-feature sms-cb enable + */ + +EOLS (sms_cb_eol,sysfeature_commands,SMS_CB_ENABLE); + +KEYWORD (sms_cb_en,sms_cb_eol,no_alt,"enable", + "Enable the cell broadcast",PRIV_CONF); + +NVGENS (sms_cb_nv,sms_cb_en,sysfeature_commands,SMS_CB_ENABLE); + +KEYWORD (sms_cb,sms_cb_nv,cell_barr,"sms-cb", + "Enable SMS cell broadcast system on the cell",PRIV_CONF); + +/* + * sys-feature authentication-frequency <value> + */ + +EOLS (auth_freq_eol,sysfeature_commands,AUTH_FREQ_VAL); + +NUMBER (auth_freq_val,auth_freq_eol,no_alt,OBJ(int,1),0,5, + "Enter the frequency"); + +NVGENS (auth_freq_val_nv,auth_freq_val,sysfeature_commands,AUTH_FREQ_VAL); + +NOPREFIX (auth_freq_val_no,auth_freq_val_nv,auth_freq_eol); + +KEYWORD (auth_freq,auth_freq_val_no,sms_cb,"authentication-frequency", + "Frequency of mobile authentication",PRIV_CONF); + + +/* + * sys-feature authentication-feature [ciphering] enable + */ + +EOLS (auci_enable_eol,sysfeature_commands,AUTH_CIPH_ENABLE); + +KEYWORD (auci_enable,auci_enable_eol,no_alt,"enable", + "Enable the method",PRIV_CONF); + +KEYWORD_ID(sys_cipher,auci_enable,auci_enable,OBJ(int,1),CIPHERING_ENABLE, + "ciphering","Enable ciphering",PRIV_CONF); + +NVGENS (sys_authen_nv,sys_cipher,sysfeature_commands,AUTH_CIPH_ENABLE); + +KEYWORD(sys_authen,sys_authen_nv,auth_freq,"authentication-feature", + "Enable authentication ",PRIV_CONF); + + +/* + * sys-feature + */ + +KEYWORD (cfg_sys_feature,sys_authen,no_alt,"sys-feature", + "Configure system feature control parameters",PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE cfg_sys_feature diff --git a/data/mnet/GP10/Host/cli/include/cfg_sys_info.h b/data/mnet/GP10/Host/cli/include/cfg_sys_info.h new file mode 100644 index 0000000..6ac560b --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_sys_info.h @@ -0,0 +1,297 @@ + +/* + * enum for command identification + */ + +enum { + CONFIG_CDR_PASSWORD, + CONFIG_CDR_CLIENT_SSL_ENABLE, + CONF_SNMP_COMM, + SUB_CONFIG_PROTO, + SUB_CONFIG_ADJCELL, + SUB_CONFIG_CELL, + CONF_CUSTADDR, + CONF_CUSTINFO, + CONF_CUSTEMAIL, + CONF_CUSTPHONE, + CONF_CUSTNAME, + CONF_ASSET, + CONF_LOCATION, + CONF_GW_IPADDR, + CONF_SYS_IPADDR, + CONF_SYS_NAME +}; + + + +/* + * cdr password <string> + * no cdr password + */ + +EOLS(config_cdr_password_eols, gp10_config_cdr_data, CONFIG_CDR_PASSWORD); + +STRING(config_cdr_password_val, config_cdr_password_eols, no_alt, + OBJ(string, 2), "Password"); + +NVGENS (config_cdr_password_nv, config_cdr_password_val, gp10_config_cdr_data, CONFIG_CDR_PASSWORD); + +NOPREFIX(config_cdr_password_no, config_cdr_password_nv, config_cdr_password_eols); + +KEYWORD(config_cdr_password, config_cdr_password_no, no_alt, + "password", "Configure CDR Client password", PRIV_CONF); + + +/* + * cdr client ssl enable + * no cdr client ssl enable + */ + +EOLS(config_cdr_client_ssl_enable_eols, gp10_config_cdr_data, CONFIG_CDR_CLIENT_SSL_ENABLE); + +KEYWORD(config_cdr_client_ssl_enable, config_cdr_client_ssl_enable_eols, no_alt, + "enable", "Enable/Disable encryption between CDR Client & Server :NOTE: use no command to disable", PRIV_CONF); + +NVGENS (config_cdr_client_ssl_nv, config_cdr_client_ssl_enable, gp10_config_cdr_data, CONFIG_CDR_CLIENT_SSL_ENABLE); + +KEYWORD(config_cdr_client_ssl, config_cdr_client_ssl_nv, no_alt, + "ssl", "Configure CDR Client SSL data", PRIV_CONF); + +KEYWORD(config_cdr_client, config_cdr_client_ssl, config_cdr_password, + "client", "Configure CDR Client data", PRIV_CONF); + + +/* + * cdr + */ + +KEYWORD(config_cdr_data, config_cdr_client, no_alt, + "cdr", "Commands related to CDR Client configuration", PRIV_CONF); + +/**********************************************************/ +/* CDR Command Line Interface */ +/* END */ +/**********************************************************/ + + +/* + *[no] snmp community <read community> <write community> + */ + +EOLS (cfg_snmp_comm_eol,system_configuration,CONF_SNMP_COMM); + +STRING (cfg_snmp_write,cfg_snmp_comm_eol,no_alt,OBJ(string,2), + "Enter the write community string"); + +STRING (cfg_snmp_read,cfg_snmp_write,no_alt,OBJ(string,1), + "Enter the read community string"); + +NOPREFIX (cfg_snmp_comm_no,cfg_snmp_read,cfg_snmp_comm_eol); + +NVGENS (cfg_snmp_comm_nv,cfg_snmp_comm_no,system_configuration,CONF_SNMP_COMM); + +KEYWORD (cfg_snmp_comm_key,cfg_snmp_comm_nv,no_alt,"community", + "Configure snmp community strings",PRIV_CONF); + +KEYWORD (cfg_snmp_comm,cfg_snmp_comm_key,config_cdr_data,"snmp", + "Configure snmp mibs",PRIV_CONF); + + + +/* + *config-proto + */ + +EOLS (cfg_proto_param_eol,gp10_subconfig_cmds,SUB_CONFIG_PROTO); + +NVGENS (cfg_proto_param_nv,cfg_proto_param_eol,gp10_subconfig_cmds,SUB_CONFIG_PROTO); + +KEYWORD (cfg_proto_param,cfg_proto_param_nv,cfg_snmp_comm,"config-proto", + "Configure protocol management parameters",PRIV_CONF); + +/* + * config-adjcell + */ + +EOLS (cfg_adjcell_param_eol,gp10_subconfig_cmds,SUB_CONFIG_ADJCELL); + +NUMBER (cfg_adjcell_num,cfg_adjcell_param_eol,no_alt,OBJ(int,1),1,16, + "Enter the adjacent cell number"); + +NVGENS (cfg_adjcell_param_nv,cfg_adjcell_num,gp10_subconfig_cmds,SUB_CONFIG_ADJCELL); + +KEYWORD (cfg_adjcell_param,cfg_adjcell_param_nv,cfg_proto_param,"config-adjcell", + "Configure adjacent cell parameters",PRIV_CONF); + +/* + * config-cell + */ + +EOLS (cfg_cell_param_eol,gp10_subconfig_cmds,SUB_CONFIG_CELL); + +NVGENS ( cfg_cell_param_nv,cfg_cell_param_eol,gp10_subconfig_cmds,SUB_CONFIG_CELL); + +KEYWORD (cfg_cell_param,cfg_cell_param_nv,cfg_adjcell_param,"config-cell", + "Configure cell parameters",PRIV_CONF); + +/* + * customer-address <address-string> + */ + +EOLS (custaddr_eol,system_configuration,CONF_CUSTADDR); + +STRING (custaddr,custaddr_eol,no_alt,OBJ(string,1), + "GP10 customer address"); +NVGENS (custaddr_nv,custaddr,system_configuration,CONF_CUSTADDR); + +NOPREFIX (custaddr_no,custaddr_nv,custaddr_eol); + +KEYWORD (cfg_custaddr,custaddr_no,cfg_cell_param,"customer-address", + "Configure GP10 customer address.Changes will be effective only after GP10 reboot",PRIV_CONF); + +/* + * customer-info <info-string> + */ + +EOLS (custinfo_eol,system_configuration,CONF_CUSTINFO); + +STRING (custinfo,custinfo_eol,no_alt,OBJ(string,1), + "GP10 customer information"); +NVGENS (custinfo_nv,custinfo,system_configuration,CONF_CUSTINFO); + +NOPREFIX (custinfo_no,custinfo_nv,custinfo_eol); + +KEYWORD (cfg_custinfo,custinfo_no,cfg_custaddr,"customer-info", + "Configure GP10 customer information.Changes will be effective only after GP10 reboot",PRIV_CONF); + +/* + * customer-email <email-id-string> + */ + +EOLS (custemail_eol,system_configuration,CONF_CUSTEMAIL); + +STRING (custemail,custemail_eol,no_alt,OBJ(string,1), + "GP10 customer email id"); +NVGENS (custemail_nv,custemail,system_configuration,CONF_CUSTEMAIL); + +NOPREFIX (custemail_no,custemail_nv,custemail_eol); + +KEYWORD (cfg_custemail,custemail_no,cfg_custinfo,"customer-email", + "Configure GP10 customer email id.Changes will be effective only after GP10 reboot",PRIV_CONF); + + +/* + * customer-phone <phone-number-string> + */ + +EOLS (custphone_eol,system_configuration,CONF_CUSTPHONE); + +STRING (custphone,custphone_eol,no_alt,OBJ(string,1), + "Phone number of the GP10 customer"); + +NVGENS (custphone_nv,custphone,system_configuration,CONF_CUSTPHONE); + +NOPREFIX (custphone_no,custphone_nv,custphone_eol); + +KEYWORD (cfg_custphone,custphone_no,cfg_custemail,"customer-phone", + "Configure GP10 customer phone number.Changes will be effective only after GP10 reboot",PRIV_CONF); + + +/* + * customer-name <name-string> + */ + +EOLS (custname_eol,system_configuration,CONF_CUSTNAME); + +STRING (custname,custname_eol,no_alt,OBJ(string,1), + "Customer name of the GP10 host"); +NVGENS (custname_nv,custname,system_configuration,CONF_CUSTNAME); + +NOPREFIX (custname_no,custname_nv,custname_eol); + +KEYWORD (cfg_custname,custname_no,cfg_custphone,"customer-name", + "Configure GP10 customer name.Changes will be effective only after GP10 reboot",PRIV_CONF); + +/* + * asset <asset-string> + */ + +EOLS (asset_eol,system_configuration,CONF_ASSET); + +STRING (asset,asset_eol,no_alt,OBJ(string,1), + "Asset of the GP10 host"); +NVGENS (asset_nv,asset,system_configuration,CONF_ASSET); + +NOPREFIX (asset_no,asset_nv,asset_eol); + +KEYWORD (cfg_asset,asset_no,cfg_custname,"asset", + "Configure GP10 asset number.Changes will be effective only after GP10 reboot",PRIV_CONF); + +/* + *location <location-string> + */ + + +EOLS (location_eol,system_configuration,CONF_LOCATION); + +STRING (location,location_eol,no_alt,OBJ(string,1), + "Location of the GP10 host"); +NVGENS (location_nv,location,system_configuration,CONF_LOCATION); + +NOPREFIX (location_no,location_nv,location_eol); + +KEYWORD (cfg_location,location_no,cfg_asset,"location", + "Configure GP10 location.Changes will be effective only after GP10 reboot",PRIV_CONF); + +/* + * ip default-gateway <ip-address> + */ + +EOLS (gw_ip_addr_eol,system_configuration,CONF_GW_IPADDR); + +IPADDR (gw_ip_addr,gw_ip_addr_eol,no_alt,OBJ(paddr,1), + "Ip address of the default gateway"); + +NVGENS (gw_ip_addr_nv,gw_ip_addr,system_configuration,CONF_GW_IPADDR); + +NOPREFIX (gw_ip_addr_no,gw_ip_addr_nv,gw_ip_addr_eol); + +KEYWORD (default_gw,gw_ip_addr_no,no_alt,"default-gateway", + "Configure default IP gateway.Changes will be effective only after GP10 reboot",PRIV_CONF); + +/* + *ip address <ip-address> <subnet-mask> + */ + +EOLS (ip_addr_eol,system_configuration,CONF_SYS_IPADDR); + +IPADDR_MASK(host_ip_addr,ip_addr_eol,no_alt,OBJ(paddr,1),OBJ(paddr,2), + "Enter IP Address and subnet mask of the GP10"); +NVGENS (host_ip_addr_nv,host_ip_addr,system_configuration,CONF_SYS_IPADDR); + +NOPREFIX (host_ip_addr_no,host_ip_addr_nv,ip_addr_eol); + +KEYWORD (cfg_ip_addr_key,host_ip_addr_no,default_gw,"address", + "Configure IP Address.Changes will be effective only after GP10 reboot",PRIV_CONF); + +KEYWORD (cfg_ip_addr,cfg_ip_addr_key,cfg_location,"ip", + "Configure IP Address.Changes will be effective only after GP10 reboot",PRIV_CONF); + +/* + * hostname <name> + */ + + +EOLS (sys_name_eol,system_configuration,CONF_SYS_NAME); + +STRING (sys_name,sys_name_eol,no_alt,OBJ(string,1), + "Name of the GP10 host"); +NVGENS (sys_name_nv,sys_name,system_configuration,CONF_SYS_NAME); + +NOPREFIX (sys_name_no,sys_name_nv,sys_name_eol); + +KEYWORD (cfg_sys_name,sys_name_no,cfg_ip_addr,"hostname", + "Configure GP10 host name.Changes will be effective only after GP10 reboot",PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE cfg_sys_name diff --git a/data/mnet/GP10/Host/cli/include/cfg_timers.h b/data/mnet/GP10/Host/cli/include/cfg_timers.h new file mode 100644 index 0000000..6e55c4c --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_timers.h @@ -0,0 +1,190 @@ +/* + * enum for command identification + */ + +enum { + CCM_TIMER, + RMM_TIMER, + FACCH_TIMER, + SACCH_TIMER , + SDCCH_TIMER +}; + +/* + * enum for various timers + */ +enum { + SDCCH_SAPI0_TIMER, + SDCCH_SAPI3_TIMER, + SACCH_SDCCH_TIMER, + TCH_SAPI0_TIMER, + SDCCH_SDCCH_TIMER, + RMM_IMM_ASSIGN, + RMM_HANDOVER, + RMM_PHY_INFO, + RMM_ASSIGN, + RMM_LOW_LAYER, + RMM_CH_ACTIVATION, + RMM_PAGING_MSG, + CCM_ALERT, + CCM_SETUP_SENT, + CCM_CALL_CONFIRM, + CCM_CONNECT_SENT, + CCM_DISCONNECT_SENT, + CCM_RELEASE_SENT +}; + +/* + * layer2 sdcch timers + */ + +static keyword_options sdcch_timers [] = { + { "sapi-0-timer", "Sdcch service access point indicator 0 layer 2 timer",SDCCH_SAPI0_TIMER}, + { "sapi-3-timer","Sdcch service access point indicator 3 layer 2 timer",SDCCH_SAPI3_TIMER}, + { "sdcch-tch-timer","Stand-alone dedicated control channel timer",SDCCH_SDCCH_TIMER}, + {NULL,NULL,0} +}; + +/* + * layer 2 sacch timers + */ + +static keyword_options sacch_timers [] = { + { "tch-0-timer", "Traffic channel service access point indicator 0 timer",TCH_SAPI0_TIMER}, + { "sdcch-timer","Stand-alone dedicated control channel timer",SACCH_SDCCH_TIMER}, + {NULL,NULL,0} +}; + + + +/* + * layer 3 rmm timers + */ + +static keyword_options layer3_rmm_timers [] = { + {"immediate-assignment","Timer for immediate assignment commands",RMM_IMM_ASSIGN}, + { "handover-command","Timer for handover commands",RMM_HANDOVER}, + { "physical-information","Timer for physical information commands",RMM_PHY_INFO}, + {"assignment-command","Timer for the assignment commands",RMM_ASSIGN}, + {"lower-layer-failure","Timer for lower layer failures",RMM_LOW_LAYER}, + {"channel-activation","Timer for channel activation delays",RMM_CH_ACTIVATION}, + {"paging-messages","Timer for paging messages",RMM_PAGING_MSG}, + {NULL,NULL,0} +}; + +/* + * layer 3 ccm timers + */ +static keyword_options layer3_ccm_timers []= { + {"alerting-received","Alerting received timer",CCM_ALERT}, + {"setup-sent","Setup sent timer",CCM_SETUP_SENT}, + {"call-confirmed","Call confirmed received timer",CCM_CALL_CONFIRM}, + {"connect-sent","Connect sent timer",CCM_CONNECT_SENT}, + {"disconnect-sent","Disconnect sent timer",CCM_DISCONNECT_SENT}, + {"release-sent","Release sent timer",CCM_RELEASE_SENT}, + {NULL,NULL,0} +}; + +/* + *laye3-ccm {alerting-received| setup-sent | call-confirmed |connect-sent | + *disconnect-sent |release-sent} <timer-value> + */ + +EOLS (ccm_timer_eol,timer_configuration,CCM_TIMER); + +NUMBER (ccm_timer_val,ccm_timer_eol,no_alt,OBJ(int,2),0,65535,"Enter timer value in 10ms units"); + +NOPREFIX (ccm_timer_val_no,ccm_timer_val,ccm_timer_eol); + +KEYWORD_OPTIONS(ccm_timers,ccm_timer_val_no,no_alt,layer3_ccm_timers,OBJ(int,1),PRIV_CONF,0); + +NVGENS (ccm_timers_nv,ccm_timers,timer_configuration,CCM_TIMER); + +KEYWORD (layer3_ccm_timer,ccm_timers_nv,no_alt,"layer3-ccm", + "Configure layer 3 ccm timers",PRIV_CONF); + + +/* + * layer3-rrm { immediate-assignment | handover-command | physical-information | + * assignment-command | lower-layer-failiure | channel-activation | paging-messages } + * <timer-value> + */ + +EOLS (rmm_timer_eol,timer_configuration,RMM_TIMER); + +NUMBER (rmm_timer_val,rmm_timer_eol,no_alt,OBJ(int,2),0,65535,"Enter timer value in 10ms units"); + +NOPREFIX (rmm_timer_val_no,rmm_timer_val,rmm_timer_eol); + +KEYWORD_OPTIONS(rmm_timers,rmm_timer_val_no,no_alt,layer3_rmm_timers,OBJ(int,1),PRIV_CONF,0); + +NVGENS (rmm_timers_nv,rmm_timers,timer_configuration,RMM_TIMER); + +KEYWORD (layer3_rmm_timer,rmm_timers_nv,layer3_ccm_timer,"layer3-rrm", + "Configure layer 3 rrm timers",PRIV_CONF); + + +/* + *layer2-lapdm facch <timer-value> + */ + +EOLS (facch_timer_eol,timer_configuration,FACCH_TIMER); + +NUMBER (facch_timer_val,facch_timer_eol,no_alt,OBJ(int,1),0,65535,"Enter timer value in 5ms units"); + +NOPREFIX (facch_timer_val_no,facch_timer_val,facch_timer_eol); + +NVGENS (facch_timer_val_nv,facch_timer_val_no,timer_configuration,FACCH_TIMER); + +KEYWORD (cfg_facch_timer,facch_timer_val_nv,no_alt,"facch", + "Configure full rate traffic channel timers",PRIV_CONF); + + + +/* + *layer2-lapdm sacch { tch-sapi-0-timer | tch-sapi-3-timer | sdcch-timer } <timer-value> + */ + + +EOLS (sacch_timer_eol,timer_configuration,SACCH_TIMER); + +NUMBER (sacch_timer_val,sacch_timer_eol,no_alt,OBJ(int,2),0,65535,"Enter timer value in 5ms units"); + +NOPREFIX (sacch_timer_val_no,sacch_timer_val,sacch_timer_eol); + +KEYWORD_OPTIONS(sacch_timer,sacch_timer_val_no,no_alt,sacch_timers,OBJ(int,1),PRIV_CONF,0); + +NVGENS (sacch_timer_nv,sacch_timer,timer_configuration,SACCH_TIMER); + +KEYWORD (cfg_sacch_timer,sacch_timer_nv,cfg_facch_timer,"sacch", + "Configure saach timers",PRIV_CONF); + + +/* + *layer2-lapdm sdcch { sapi-0-timer | sapi-3-timer | sdcch-timer} + *<timer-value> + */ + +EOLS (sdcch_timer_eol,timer_configuration,SDCCH_TIMER); + +NUMBER (sdcch_timer_val,sdcch_timer_eol,no_alt,OBJ(int,2),0,65535,"Enter timer value in 5ms units"); + +NOPREFIX (sdcch_timer_val_no,sdcch_timer_val,sdcch_timer_eol); + +KEYWORD_OPTIONS(sdcch_timer,sdcch_timer_val_no,no_alt,sdcch_timers,OBJ(int,1),PRIV_CONF,0); + +NVGENS (sdcch_timer_nv,sdcch_timer,timer_configuration,SDCCH_TIMER); + +KEYWORD (cfg_sdcch_timer,sdcch_timer_nv,cfg_sacch_timer,"sdcch", + "Configure stand-alone dedicated control channel timer",PRIV_CONF); + + +/* + *layer2-lapdm + */ + +KEYWORD (cfg_proto_options,cfg_sdcch_timer,layer3_rmm_timer,"layer2-lapdm", + "Configure layer 2 LAPDm timers",PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE cfg_proto_options diff --git a/data/mnet/GP10/Host/cli/include/cfg_trx.h b/data/mnet/GP10/Host/cli/include/cfg_trx.h new file mode 100644 index 0000000..80d1cef --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_trx.h @@ -0,0 +1,144 @@ +/* + * enum for transceiver command identification + */ +enum { + TRX_RADIO_FREQUENCY, + TRX_POWER_REDUCTION, + TRX_CHANNEL_TABLE, + TRX_ADMIN_STATE, + TRX_ARFCN_NUMBER +}; + +/* + * enum for administrative state options + */ +enum { + STATE_LOCKED, + STATE_UNLOCKED, + STATE_SHUTDOWN +}; + +/* + * administrative state options + */ + +static keyword_options admin_state_options[] = { + { "locked", "Cannot be accessed by mobile stations", STATE_LOCKED}, + { "unlocked", "Can be accessed by mobile stations",STATE_UNLOCKED}, + { "shutting-down","GP10 is in the process of becoming locked",STATE_SHUTDOWN}, + {NULL,NULL,0} +}; + +/* + * radio-carrier radio-frequency <value> + */ + +EOLS (rad_freq_eol,transceiver_parameters,TRX_RADIO_FREQUENCY); + +NUMBER (rad_freq_val,rad_freq_eol,no_alt,OBJ(int,1),0,65535, + "Enter the ARFCN number"); + +NVGENS (rad_freq_val_nv,rad_freq_val,transceiver_parameters,TRX_RADIO_FREQUENCY); + +NOPREFIX (rad_freq_val_no,rad_freq_val_nv,rad_freq_eol); + +KEYWORD (trx_rad_freq,rad_freq_val_no,no_alt,"radio-frequency", + "ARFCN assigned to the transceiver",PRIV_CONF); + +/* + * radio-carrier transmit-power-reduction <value> + */ + +EOLS (pwr_red_eol,transceiver_parameters,TRX_POWER_REDUCTION); + +NUMBER (pwr_red_val,pwr_red_eol,no_alt,OBJ(int,1),0,6, + "Enter the power value"); +NVGENS (pwr_red_val_nv,pwr_red_val,transceiver_parameters,TRX_POWER_REDUCTION); + +NOPREFIX (pwr_red_val_no,pwr_red_val_nv,pwr_red_eol); + +KEYWORD (trx_pwr_red,pwr_red_val_no,trx_rad_freq,"transmit-power-reduction", + "Max transmit power reduced from peak power",PRIV_CONF); + +/* + * radio-carrier + */ +KEYWORD (cfg_radio_carrier,trx_pwr_red,no_alt,"radio-carrier", + "Radio configuration parameters",PRIV_CONF); + +/* + * channel-table <time-slot> channel-combination TCH-FULL training-sequence USE-BCC + * administration-state {locked | unlocked | shutting-down} + */ + +EOLS (trx_admin_state_eol,transceiver_parameters,TRX_CHANNEL_TABLE); + +KEYWORD_OPTIONS (admin_state_opt,trx_admin_state_eol,no_alt,admin_state_options, + OBJ(int,2),PRIV_CONF,0); + +KEYWORD (trx_admin_state,admin_state_opt,no_alt,"administrative-state", + "State in which to place channel",PRIV_CONF); + +NOPREFIX (trx_admin_state_no,trx_admin_state,trx_admin_state_eol); + +KEYWORD (seq_opt,trx_admin_state_no,no_alt,"USE-BCC", + "Use BTS color code",PRIV_CONF); + +KEYWORD (training_seq,seq_opt,no_alt,"training-sequence", + "Training sequence code (TSC) for the channel",PRIV_CONF); + +KEYWORD_ID(combn_opt_tch,training_seq,no_alt,OBJ(int,3),TCH_FULL,"TCH-FULL", + "Full rate traffic channel",PRIV_CONF); + +KEYWORD_ID(combn_opt_bcch,training_seq,no_alt,OBJ(int,3),BCCH_COMBINED, + "BCCH-COMBINED", "Common control channel",PRIV_CONF); + +IFELSE (chan_combn_chk,combn_opt_bcch,combn_opt_tch, + (((int) GETOBJ(udb,current1) == 0) && (GETOBJ(int,1) == 0))); + +KEYWORD (chan_combn,chan_combn_chk,no_alt,"channel-combination", + "Channel combination",PRIV_CONF); + +NUMBER (time_slot_trx,chan_combn,no_alt,OBJ(int,1),0,7, + "Enter the time slot"); + +NVGENS (time_slot_trx_nv,time_slot_trx,transceiver_parameters,TRX_CHANNEL_TABLE); + +KEYWORD (channel_table,time_slot_trx_nv,cfg_radio_carrier,"channel-table", + "Channel configurations",PRIV_CONF); + +/* + *administrative-state {locked | unlocked | shutting-down} + */ + +EOLS (admin_state_eol,transceiver_parameters,TRX_ADMIN_STATE); + +KEYWORD_OPTIONS (admin_state,admin_state_eol,no_alt,admin_state_options, + OBJ(int,1),PRIV_CONF,0); +NVGENS (admin_state_nv,admin_state,transceiver_parameters,TRX_ADMIN_STATE); + +NOPREFIX (admin_state_no,admin_state_nv,admin_state_eol); + +KEYWORD (cfg_admin_state,admin_state_no,channel_table,"administrative-state", + "State in which to place GP10",PRIV_CONF); + + +/* + * bts-cell-allocation <number> + */ + +EOLS (arfcn_eol,transceiver_parameters,TRX_ARFCN_NUMBER); + +NUMBER (arfcn_val,arfcn_eol,no_alt,OBJ(int,1),0,1023, + "Enter the number"); +NVGENS (arfcn_val_nv,arfcn_val,transceiver_parameters,TRX_ARFCN_NUMBER); + +NOPREFIX (arfcn_val_no,arfcn_val_nv,arfcn_eol); + +KEYWORD (cfg_transceiver,arfcn_val_no,cfg_admin_state,"bts-cell-allocation", + "ARFCN allocated and assigned to the cell",PRIV_CONF); + + + +#undef ALTERNATE +#define ALTERNATE cfg_transceiver diff --git a/data/mnet/GP10/Host/cli/include/cfg_trx_exit.h b/data/mnet/GP10/Host/cli/include/cfg_trx_exit.h new file mode 100644 index 0000000..7a83787 --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_trx_exit.h @@ -0,0 +1,11 @@ +EOLS (gp10_cell_trx_end_eol,exit_config_command,CMD_END); + +KEYWORD (gp10_cell_trx_end,gp10_cell_trx_end_eol,no_alt,"end", + "Exit gp10 config-trx mode to exec mode",PRIV_CONF); + +EOLNS (gp10_cell_trx_exit_eol,gp10_cell_sub_config_exit); +KEYWORD (gp10_cell_trx_exit, gp10_cell_trx_exit_eol, gp10_cell_trx_end, "exit", + "Exit gp10 config-trx mode", PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE gp10_cell_trx_exit diff --git a/data/mnet/GP10/Host/cli/include/cfg_voip.h b/data/mnet/GP10/Host/cli/include/cfg_voip.h new file mode 100644 index 0000000..79b9a4d --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/cfg_voip.h @@ -0,0 +1,88 @@ + +/* + * enum for command identification + */ + +enum { + COUNTRY_CODE, + CALL_SIG_PORT_NUM, + GMC_IP_ADDR, + GMC_PORT_NUM +}; + + +/* + *voip t35-country-code <country-code> + */ + +EOLS (country_code_eol,voip_parameters,COUNTRY_CODE); + +NUMBER (country_code,country_code_eol,no_alt,OBJ(int,1),1,999, + "Enter country code"); + +NVGENS (country_code_nv,country_code,voip_parameters,COUNTRY_CODE); + +NOPREFIX (country_code_no,country_code_nv,country_code_eol); + +KEYWORD (t35_country_code,country_code_no,no_alt,"t35-country-code", + "H.323 country code in decimal.Changes will be effective after the reboot of GP10",PRIV_CONF); + + +/* + *voip call-signalling-port <port-num> + */ + +EOLS (call_sig_port_eol,voip_parameters,CALL_SIG_PORT_NUM); + +NUMBER (call_sig_port_num,call_sig_port_eol,no_alt,OBJ(int,1),1,65536, + "Port number"); + +NVGENS (call_sig_port_num_nv,call_sig_port_num,voip_parameters,CALL_SIG_PORT_NUM); + +NOPREFIX (call_sig_port_num_no,call_sig_port_num_nv,call_sig_port_eol); + +KEYWORD (call_sig_port,call_sig_port_num_no,t35_country_code,"call-signalling-port", + "Configure port used for call setup and tear down.Changes will be effective after the reboot of GP10",PRIV_CONF); + +/* + * voip gmc-ip-address <ip-address> + */ + +EOLS (gmc_ip_addr_eol,voip_parameters,GMC_IP_ADDR); + +IPADDR (gmc_ip_addr,gmc_ip_addr_eol,no_alt,OBJ(paddr,1),"IP address of GMC"); + +NVGENS (gmc_ip_addr_nv,gmc_ip_addr,voip_parameters,GMC_IP_ADDR); + +NOPREFIX (gmc_ip_addr_no,gmc_ip_addr_nv,gmc_ip_addr_eol); + +KEYWORD (gmc_ip,gmc_ip_addr_no,call_sig_port,"gmc-ip-address", + "Configure IP address of GMC.Changes will be effective after the reboot of GP10",PRIV_CONF); + + +/* + * voip gmc-port <port-num> + */ + +EOLS (gmc_port_eol,voip_parameters,GMC_PORT_NUM); + +NUMBER (gmc_port_num,gmc_port_eol,no_alt,OBJ(int,1),1,65536, + "Port number"); + +NVGENS (gmc_port_num_nv,gmc_port_num,voip_parameters,GMC_PORT_NUM); + +NOPREFIX (gmc_port_num_no,gmc_port_num_nv,gmc_port_eol); + + +KEYWORD (gmc_port,gmc_port_num_no,gmc_ip,"gmc-port", + "Port number on which the GMC is listening for GP10 traffic.Changes will be effective after the reboot of GP10",PRIV_CONF); + +/* + * voip + */ + +KEYWORD (cfg_voip_parm,gmc_port,no_alt,"voip", + "Configure Voice Over IP Parameters",PRIV_CONF); + +#undef ALTERNATE +#define ALTERNATE cfg_voip_parm diff --git a/data/mnet/GP10/Host/cli/include/exec_debug_gp10.h b/data/mnet/GP10/Host/cli/include/exec_debug_gp10.h new file mode 100644 index 0000000..55f0eb6 --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/exec_debug_gp10.h @@ -0,0 +1,212 @@ +#define DBG_LOG_CONTROL_TRACE_MASK 0x0008
+#define DBG_LOG_CALL_TRACE_MASK 0x0010
+#define DBG_LOG_INFORMATIONAL_MASK 0x0020
+#define DBG_LOG_WARNINGS_MASK 0x0040
+#define DBG_LOG_ERRORS_MASK 0x0080
+#define DBG_LOG_TIMESTAMP_MASK 0x0100
+#define DBG_LOG_ALL_TRACE_MASK 0x00f8
+
+
+/*
+ * Inverse masks
+ */
+#define DBG_LOG_CONTROL_TRACE_INVERSE_MASK 0xfff7
+#define DBG_LOG_CALL_TRACE_INVERSE_MASK 0xffef
+#define DBG_LOG_INFORMATIONAL_INVERSE_MASK 0xffdf
+#define DBG_LOG_WARNINGS_INVERSE_MASK 0xffbf
+#define DBG_LOG_ERRORS_INVERSE_MASK 0xff7f
+#define DBG_LOG_ALL_TRACE_INVERSE_MASK 0xff07
+
+
+/*
+ * Enum for Module Identification.
+ * Imported from gp10/Host/Common_to_host/Logging/VcModules.h
+ */
+
+enum {
+
+ DBG_CC_LAYER = 0, /* Value for DBG_CC_LAYER are from 0 to 24 */
+ DBG_CC_SESSION_LAYER = 1, /* CC Session sub layer */
+ DBG_CC_CALLLEG_LAYER = 2, /* CC Call Leg sub layer */
+ DBG_CC_CISS_LAYER = 3, /* CC CISS sub layer */
+ DBG_CC_HALFCALL_LAYER = 4, /* CC Half Call sub layer */
+ DBG_CC_HANDOVER_LAYER = 5, /* CC Handover sub layer */
+ DBG_CC_SMS_LAYER = 6, /* CM SMS sublayer */
+
+
+ DBG_CSU_LAYER = 25, /* Value for CSU_LAYER are from 25 to 49 */
+ DBG_CSU_LAYER_SPEECH = 26,
+ DBG_CSU_LAYER_DEBUG = 27,
+
+ DBG_DSP_LAYER = 50, /* Value for DSP_LAYER are from 50 to 74 */
+
+ DBG_H323_LAYER = 75, /* Value for H323_LAYER are from 75 to 99 */
+ DBG_H323_PROTOCOL_LAYER = 76,
+ DBG_H323_RTP_LAYER = 77,
+ DBG_VBLINK_LAYER = 80,
+
+ DBG_LOGGING_LAYER = 99, /* Logging layer just needs one */
+
+ DBG_JCC_LAYER = 100, /* Value for JCC_LAYER are from 100 to 124 */
+
+ DBG_CDR_LAYER = 110,
+
+ DBG_L1PROXY_LAYER = 125, /* Value for L1PROXY_LAYER are from 125 to 149 */
+
+ DBG_LAPDM_LAYER = 150, /* Value for LAPDM_LAYER are from 150 to 174 */
+
+ DBG_MM_LAYER = 175, /* Value for DBG_MM_LAYER are from 175 to 199 */
+ DBG_MM_MSG_LAYER = 176,
+ DBG_MM_TABLE_LAYER = 177,
+ DBG_MM_GENERAL_LAYER = 178,
+ DBG_MM_DETAIL_LAYER = 179,
+
+ DBG_RIL3_LAYER = 200, /* Value for RIL3_LAYER are from 200 to 224 */
+
+ DBG_RM_LAYER = 225, /* Value for RM_LAYER are from 225 to 249 */
+
+ DBG_LUDB_LAYER = 250, /* Value for LUDB_LAYER are from 250 to 274 */
+ DBG_LUDB_MSG_LAYER = 251,
+ DBG_LUDB_TABLE_LAYER = 252,
+ DBG_LUDB_GENERAL_LAYER = 253,
+ DBG_LUDB_DETAIL_LAYER = 254,
+
+ DBG_MAINT_COMM_HDLR = 275, /* Value for MAINT_COMM_HDLR are from 275 to 299 */
+ DBG_DIAG_TEST = 276,
+ DBG_DSP_DIAGS = 277,
+
+ DBG_PM_LAYER = 299, /* PM_LAYER needs only one module */
+ DBG_ALARM_LAYER = 300, /* Alarm layer 300 to 310 */
+ DBG_L3_MS_TRACE = 325,
+
+
+ DBG_RLC_MAC = 350, /* RLC_MAC LAYER */
+ DBG_RLC_MAC_MSG = 351,
+ DBG_RLC_MAC_MSG_DETAIL = 352,
+#if 0
+ /*
+ * The following were commented because
+ * they have been added later into the development
+ * and not present in GP1_5_13_BLD
+ */
+ DBG_RLC_MAC_INTF = 353,
+ DBG_RLC_MAC_RLC_LINK = 354,
+
+ DBG_GRR_LAYER = 400,
+ DBG_GRR_LAYER_INIT = 401,
+ DBG_GRR_LAYER_OAM = 402,
+ DBG_GRR_LAYER_DSP = 403,
+ DBG_GRR_LAYER_ALARM = 404,
+ DBG_GRR_LAYER_INTF = 405,
+ DBG_GRR_LAYER_PROC = 406,
+
+
+ DBG_BSSGP_LAYER = 425,
+ DBG_BSSGP_ENCODER_LAYER = 426,
+ DBG_BSSGP_DECODER_LAYER = 427,
+ DBG_BSSGP_NET_LAYER = 428,
+ DBG_BSSGP_UNITDATA_LAYER = 429,
+#endif
+ DBG_SSH_MODULE = 460,
+
+ MAX_VIPERCELL_MODULES = 500,
+ GP10_DEBUG_ALL =1000
+
+
+};
+
+/*
+ * gp10 debug options
+ */
+
+static keyword_options gp10_debug [] = {
+ {"cc_session_layer","Debug cc sesseion sub layer",DBG_CC_SESSION_LAYER},
+ {"cc_callleg_layer","Debug cc call leg sub layer",DBG_CC_CALLLEG_LAYER},
+ {"cc_ciss_layer","Debug cc CISS sub layer",DBG_CC_CISS_LAYER},
+ {"cc_halfcall_layer","Debug cc Half call sub layer",DBG_CC_HALFCALL_LAYER },
+ {"cc_handover_layer","Debug cc handover sub layer",DBG_CC_HANDOVER_LAYER},
+ {"cc_sms_layer","Debug cc SMS sub layer",DBG_CC_SMS_LAYER},
+ {"csu_layer_speech","Debug CSU layer speech",DBG_CSU_LAYER_SPEECH},
+ {"csu_layer_debug","Debug CSU layer",DBG_CSU_LAYER_DEBUG},
+ {"h323_protocol_layer","Debug H323 protocol layer",DBG_H323_PROTOCOL_LAYER},
+ {"h323_rtp_layer","Debug H323 rtp layer",DBG_H323_RTP_LAYER},
+ {"vblink_layer","Debug vblink layer",DBG_VBLINK_LAYER},
+ {"mm_msg_layer","Debug MM message layer",DBG_MM_MSG_LAYER},
+ {"mm_table_layer","Debug MM table layer",DBG_MM_TABLE_LAYER},
+ {"mm_general_layer","Debug MM general layer",DBG_MM_GENERAL_LAYER},
+ {"mm_detail_layer","Debug MM detail layer",DBG_MM_DETAIL_LAYER},
+ {"rlc_mac_msg","Debug RLC MAC messages",DBG_RLC_MAC_MSG},
+ {"rlc_mac_msg_detail","Debug RLC MAC message detail",DBG_RLC_MAC_MSG_DETAIL},
+#if 0
+ {"rlc_mac_intf","Debug RLC MAC interface",DBG_RLC_MAC_INTF},
+ {"rlc_mac_rlc_link","Debug RLC MAC link",DBG_RLC_MAC_RLC_LINK},
+ {"grr_layer_init","Debug GRR initialisation layer",DBG_GRR_LAYER_INIT},
+ {"grr_layer_oam","Debug GRR OAM layer",DBG_GRR_LAYER_OAM},
+ {"grr_layer_dsp","Debug GRR DSP layer",DBG_GRR_LAYER_DSP},
+ {"grr_layer_alarm","Debug GRR alarm layer",DBG_GRR_LAYER_ALARM},
+ {"grr_layer_intf","Debug GRR interface layer",DBG_GRR_LAYER_INTF},
+ {"grr_layer_proc","Debug GRR process",DBG_GRR_LAYER_PROC},
+#endif
+ {"ludb_msg_layer","Debug LUDB messages layer",DBG_LUDB_MSG_LAYER},
+ {"ludb_table_layer","Debug LUDB table layer",DBG_LUDB_TABLE_LAYER },
+ {"ludb_general_layer","Debug LUDB general layer",DBG_LUDB_GENERAL_LAYER },
+ {"ludb_detail_layer","Debug LUDB detail layer",DBG_LUDB_DETAIL_LAYER},
+#if 0
+ {"bssgp_encoder_layer","Debug BSSGP encoder layer",DBG_BSSGP_ENCODER_LAYER},
+ {"bssgp_decoder_layer","Debug BSSGP decoder layer",DBG_BSSGP_DECODER_LAYER},
+ {"bssgp_net_layer","Debug BSSGP network layer",DBG_BSSGP_NET_LAYER},
+ {"bssgp_unitdata_layer","Debug BSSGP unitdata layer",DBG_BSSGP_UNITDATA_LAYER},
+#endif
+ {"logging_layer","Debug loggin layer",DBG_LOGGING_LAYER},
+ {"jcc_layer","Debug jcc layer",DBG_JCC_LAYER },
+ {"cdr_layer","Debug cdr layer",DBG_CDR_LAYER },
+ {"l1proxy_layer","Debug L1 Proxy layer",DBG_L1PROXY_LAYER},
+ {"lapdm_layer","Debug lapdm layer",DBG_LAPDM_LAYER},
+ {"ril3_layer","Debug RIL3 layer",DBG_RIL3_LAYER},
+ {"rm_layer","Debug RM Layer",DBG_RM_LAYER},
+ {"maint_cmd_handler","Debug maintenance command handler",DBG_MAINT_COMM_HDLR},
+ {"diagnostic_test","Debug diagnostic tests",DBG_DIAG_TEST},
+ {"dsp_diags","Debug DSP diagnostics",DBG_DSP_DIAGS},
+ {"pm_layer","Debug performance management (PM) layer",DBG_PM_LAYER},
+ {"alarm_layer","Debug ALARM layer",DBG_ALARM_LAYER},
+ {"l3_ms_trace","Debug layer3 messages",DBG_L3_MS_TRACE},
+ {"all","Enable debugging for all",GP10_DEBUG_ALL},
+ {NULL,NULL,0}
+};
+
+enum {
+ DBG_FUNC_LOG,
+ DBG_CALL_LOG,
+ DBG_MSG_LOG,
+ DBG_WARN_LOG,
+ DBG_ERR_LOG,
+ DBG_ALL_LOG,
+ DBG_TIMESTAMP_LOG
+};
+
+
+static keyword_options gp10_debug_options [] = {
+ {"function","Function tracing required",DBG_FUNC_LOG},
+ {"call","Call tracing required",DBG_CALL_LOG},
+ {"message","Message tracing required",DBG_MSG_LOG},
+ {"warning","Log only warings",DBG_WARN_LOG},
+ {"error","Log only errors",DBG_ERR_LOG},
+ {"timestamp","Log with Timestamp",DBG_TIMESTAMP_LOG},
+ {"all","Turn on all log messages",DBG_ALL_LOG},
+ {NULL,NULL,0}
+};
+
+EOLNS (gp10_debug_eol,gp10_debug_command);
+pdecl(gp10_debug_opt);
+
+FUNC(gp10_debug_flag_func,gp10_debug_opt,set_gp10_debug_flag);
+
+KEYWORD_OPTIONS(gp10_debug_opt,gp10_debug_flag_func,gp10_debug_eol,gp10_debug_options,OBJ(int,2),
+ PRIV_CONF,0);
+
+KEYWORD_OPTIONS(exec_debug_gp10,gp10_debug_opt,no_alt,gp10_debug,OBJ(int,1),
+ PRIV_CONF,0);
+
+
+#undef ALTERNATE
+#define ALTERNATE exec_debug_gp10
diff --git a/data/mnet/GP10/Host/cli/include/exec_diag_cmd.h b/data/mnet/GP10/Host/cli/include/exec_diag_cmd.h new file mode 100644 index 0000000..195b32a --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/exec_diag_cmd.h @@ -0,0 +1,363 @@ + +#define VERBOSE 0 +#define NO_VERBOSE 1 +#define TYPE_TEST_ALLMEM 3 +#define TYPE_INCR_MEM 4 +#define TYPE_ALL_MEM 7 +#define HALT_ON_ERROR 10 + +enum { + DIAG_CFTEST_CMD, + DIAG_STOPDIAG_CMD, + DIAG_I2CLOOPBACK_CMD, + DIAG_I2CTEST_CMD, + DIAG_IFREPORT_CMD, + DIAG_MSREPORT_CMD, + DIAG_HPIMEMACCESS_CMD, + DIAG_HPIECHOTEST_CMD, + DIAG_HOREPORT_CMD, + DIAG_FPGATEST_CMD, + DIAG_DSPMEMTEST_CMD, + DIAG_DSPLOOPBACK_CMD, + DIAG_DSPEXTMEMTEST_CMD, + DIAG_DSPBBLBTEST_CMD, + DIAG_DLREPORT_CMD +}; + + +enum { + TYPE_TEST_ALL = 0, + TYPE_WALK_ZERO, + TYPE_WALK_ONES, + TYPE_INCREMENT, + TYPE_INCR_COMP, + TYPE_RANDOM_PATTERN +}; + + +enum { + TYPE_LOCAL_LOOP = 1, + TYPE_BASE_LOOP, + TYPE_IQ_LOOP, + TYPE_TCH_LOOP, + TYPE_TCHTOH_LOOP +}; + + +enum { + TEST_DSP_1 = 1, + TEST_DSP_0, + TEST_DSP_ALL +}; + + +static keyword_options verbose_options[] = { + { "verbose", "Display all error messages", VERBOSE}, + { "no-verbose", "Display only final result", NO_VERBOSE}, + {NULL,NULL,0} +}; + + + +static keyword_options extmemtest_type_options[] = { + { "0", "All", TYPE_TEST_ALL}, + { "1", "Walk Zeroes", TYPE_WALK_ZERO}, + { "2", "Walk Ones", TYPE_WALK_ONES}, + { "3", "Increment", TYPE_INCREMENT}, + { "4", "Increment and Complement", TYPE_INCR_COMP}, + { "5", "Random pattern", TYPE_RANDOM_PATTERN}, + {NULL,NULL,0} +}; + + +static keyword_options loopback_type_options[] = { + { "1", "Create a local loopback", TYPE_LOCAL_LOOP}, + { "2", "Create a baseband loopback", TYPE_BASE_LOOP}, + { "3", "Create an IQ loopback", TYPE_IQ_LOOP}, + { "4", "Create a TCH loopback", TYPE_TCH_LOOP}, + { "5", "Creae a TCH-to-host loopback", TYPE_TCHTOH_LOOP}, + {NULL,NULL,0} +}; + + +static keyword_options memtest_type_options[] = { + { "1", "Walk Zeroes", TYPE_WALK_ZERO}, + { "2", "Walk Ones", TYPE_WALK_ONES}, + { "3", "All", TYPE_TEST_ALLMEM}, + {NULL,NULL,0} +}; + +static keyword_options echotest_type_options[] = { + { "10", "Test dsp 0 only", TEST_DSP_0}, + { "01", "Test dsp 1 only", TEST_DSP_1}, + { "11", "Test both dsp 0 and 1", TEST_DSP_ALL}, + {NULL,NULL,0} +}; + +static keyword_options memaccess_type_options[] = { + { "1", "Walk Zeroes", TYPE_WALK_ZERO}, + { "2", "Walk Ones", TYPE_WALK_ONES}, + { "4", "Incrmenting memory locations", TYPE_INCR_MEM}, + { "7", "All", TYPE_ALL_MEM}, + {NULL,NULL,0} +}; + +static keyword_options halt_on_error[] = { + { "haltonerror", "To stop the diagnostic on error", HALT_ON_ERROR}, + {NULL,NULL,0} +}; + + +EOLS (stopdiag_eol,diagnostic_cmds,DIAG_STOPDIAG_CMD); + +STRING (stopdiag_name,stopdiag_eol,no_alt,OBJ(string,1), + "Name of the diagnostic to stop"); + +KEYWORD (diag_stopdiag,stopdiag_name,no_alt,"stopdiag", + "Stop a diagnostic test",PRIV_ROOT); + + +EOLS (diag_i2cloopback_eol,diagnostic_cmds,DIAG_I2CLOOPBACK_CMD); + +KEYWORD_OPTIONS (diag_i2cloopback_halt,diag_i2cloopback_eol,diag_i2cloopback_eol, + halt_on_error,OBJ(int,4),PRIV_ROOT,0); + +KEYWORD_OPTIONS(i2cloopback_verb,diag_i2cloopback_halt,diag_i2cloopback_eol,verbose_options, + OBJ(int,3),PRIV_ROOT,0); + +NUMBER (diag_i2cloopback_durnum,i2cloopback_verb,no_alt,OBJ(int,2), + 0,255,"Number of seconds"); + +KEYWORD (diag_i2cloopback_dur,diag_i2cloopback_durnum,diag_i2cloopback_eol, + "duration","Number of seconds to run the test",PRIV_ROOT); + +NUMBER (diag_i2cloopback_num,diag_i2cloopback_dur,no_alt,OBJ(int,1), + 0,65535,"Number of bytes"); + +KEYWORD (diag_i2cloopback_nob,diag_i2cloopback_num,diag_i2cloopback_eol, + "number-of-bytes","Number of bytes to send in loopback",PRIV_ROOT); + +KEYWORD (diag_i2cloopback,diag_i2cloopback_nob,no_alt,"i2cloopback", + "To run i2cloopback diagnostic",PRIV_ROOT | PRIV_HIDDEN); + + + +EOLS (i2ctest_eol,diagnostic_cmds,DIAG_I2CTEST_CMD); + +KEYWORD (diag_i2ctest,i2ctest_eol,diag_i2cloopback,"i2ctest", + "To run the i2ctest diagnostic",PRIV_ROOT | PRIV_HIDDEN); + + +EOLS (msreport_eol,diagnostic_cmds,DIAG_MSREPORT_CMD); + +NUMBER (msreport_duration,msreport_eol,msreport_eol,OBJ(int,3),0,255, + "Number of seconds to run"); + +NUMBER (msreport_trx1_mask,msreport_duration,no_alt,OBJ(int,2),0,255, + "Mask ot time slots on the first transceiver"); + +NUMBER (msreport_trx0_mask,msreport_trx1_mask,no_alt,OBJ(int,1),0,255, + "Mask ot time slots on the first transceiver"); + +KEYWORD (diag_msreport,msreport_trx0_mask,diag_i2ctest,"msreport", + "To run the MS Report diagnostic",PRIV_ROOT); + + +EOLS (ifreport_eol,diagnostic_cmds,DIAG_IFREPORT_CMD); + +NUMBER (ifreport_duration,ifreport_eol,ifreport_eol,OBJ(int,3),0,255, + "Number of seconds to run"); + +NUMBER (ifreport_trx1_mask,ifreport_duration,no_alt,OBJ(int,2),0,255, + "Mask ot time slots on the first transceiver"); + +NUMBER (ifreport_trx0_mask,ifreport_trx1_mask,no_alt,OBJ(int,1),0,255, + "Mask ot time slots on the first transceiver"); + +KEYWORD (diag_ifreport,ifreport_trx0_mask,diag_msreport,"ifreport", + "To run the IF report diagnostic ",PRIV_ROOT); + + + +EOLS (hpimemaccess_eol,diagnostic_cmds,DIAG_HPIMEMACCESS_CMD); + +KEYWORD_OPTIONS(hpimemaccess_verb,hpimemaccess_eol,hpimemaccess_eol,verbose_options, + OBJ(int,3),PRIV_ROOT,0); + +KEYWORD_OPTIONS(hpimemaccess_type,hpimemaccess_verb,no_alt,memaccess_type_options, + OBJ(int,2),PRIV_ROOT,0); + +NUMBER (hpimemaccess_dsp,hpimemaccess_type,no_alt,OBJ(int,1),0,1, + "Transceiver to test"); + +KEYWORD (diag_hpimemaccess,hpimemaccess_dsp,diag_ifreport,"hpimemoryaccess", + "Run a diagnostic against the transmit and receive memory used for HPI transfers on the CDC",PRIV_ROOT | PRIV_HIDDEN); + + + +EOLS (hpiechotest_eol,diagnostic_cmds,DIAG_HPIECHOTEST_CMD); + +KEYWORD_OPTIONS(hpiechotest_verb,hpiechotest_eol,hpiechotest_eol,verbose_options, + OBJ(int,5),PRIV_ROOT,0); + +NUMBER (hpiechotest_switch,hpiechotest_verb,no_alt,OBJ(int,4),0,255, + "0-permit dsp task switching, 1 or higher - prohibit dsp task switching"); + +NUMBER (hpiechotest_num_ticks,hpiechotest_switch,no_alt,OBJ(int,3),1,255, + "Number of clock ticks to between each group of messages"); + +NUMBER (hpiechotest_num_msg,hpiechotest_num_ticks,no_alt,OBJ(int,2),1,10, + "Number of messages to send in each burst"); + +KEYWORD_OPTIONS(hpiechotest_combo,hpiechotest_num_msg,no_alt,echotest_type_options, + OBJ(int,1),PRIV_ROOT,0); + +KEYWORD (diag_hpiechotest,hpiechotest_combo,diag_hpimemaccess,"hpiechotest", + "Command to send test messages to the DSPs",PRIV_ROOT | PRIV_HIDDEN); + + + +EOLS (horeport_eol,diagnostic_cmds,DIAG_HOREPORT_CMD); + +NUMBER (horeport_duration,horeport_eol,horeport_eol,OBJ(int,3),0,255, + "Number of seconds to run"); + +NUMBER (horeport_trx1_mask,horeport_duration,no_alt,OBJ(int,2),0,255, + "Mask ot time slots on the first transceiver"); + +NUMBER (horeport_trx0_mask,horeport_trx1_mask,no_alt,OBJ(int,1),0,255, + "Mask ot time slots on the first transceiver"); + +KEYWORD (diag_horeport,horeport_trx0_mask,diag_hpiechotest,"horeport", + "Test to determine whether handoff is required",PRIV_ROOT); + + + + + + +EOLS (fpgatest_eol,diagnostic_cmds,DIAG_FPGATEST_CMD); + +KEYWORD_OPTIONS(fpgatest_verb,fpgatest_eol,fpgatest_eol,verbose_options, + OBJ(int,1),PRIV_ROOT,0); + +KEYWORD (diag_fpgatest,fpgatest_verb,diag_horeport,"fpgatest", + "Command to check FPGA 0 and FPGA 1 ",PRIV_ROOT | PRIV_HIDDEN); + + + + +EOLS (dspmemtest_eol,diagnostic_cmds,DIAG_DSPMEMTEST_CMD); + +KEYWORD_OPTIONS(dspmemtest_verb,dspmemtest_eol,dspmemtest_eol,verbose_options, + OBJ(int,4),PRIV_ROOT,0); + +NUMBER (dspmemtest_duration,dspmemtest_verb,dspmemtest_eol,OBJ(int,3),0,255, + "Time to run the test"); + +KEYWORD_OPTIONS(dspmemtest_type,dspmemtest_duration,no_alt,memtest_type_options, + OBJ(int,2),PRIV_ROOT,0); + +NUMBER (dspmemtest_dsp,dspmemtest_type,no_alt,OBJ(int,1),0,1, + "Transceiver to test"); + +KEYWORD (diag_dspmemtest,dspmemtest_dsp,diag_fpgatest,"dspmemtest", + "Test both the data and external RAM ",PRIV_ROOT | PRIV_HIDDEN); + + + + + +EOLS (dsploopback_eol,diagnostic_cmds,DIAG_DSPLOOPBACK_CMD); + +NUMBER (dsploopback_duration,dsploopback_eol,dsploopback_eol,OBJ(int,3),0,255, + "Time to run the test"); + +KEYWORD_OPTIONS(dsploopback_type,dsploopback_duration,no_alt,loopback_type_options, + OBJ(int,2),PRIV_ROOT,0); + +NUMBER (dsploopback_dsp,dsploopback_type,no_alt,OBJ(int,1),0,1, + "Transceiver to test"); + + +KEYWORD (diag_dsploopback,dsploopback_dsp,diag_dspmemtest,"dsploopback", + "Set loopbacks in the dsp ",PRIV_ROOT | PRIV_HIDDEN); + + + + +EOLS (dspextmemtest_eol,diagnostic_cmds,DIAG_DSPEXTMEMTEST_CMD); + +KEYWORD_OPTIONS(dspextmemtest_verb,dspextmemtest_eol,dspextmemtest_eol,verbose_options, + OBJ(int,3),PRIV_ROOT,0); + +KEYWORD_OPTIONS(dspextmemtest_type,dspextmemtest_verb,no_alt,extmemtest_type_options, + OBJ(int,2),PRIV_ROOT,0); + +NUMBER (dspextmemtest_dsp,dspextmemtest_type,no_alt,OBJ(int,1),0,1, + "Transceiver to test"); + +KEYWORD (diag_dspextmemtest,dspextmemtest_dsp,diag_dsploopback,"dspextmemtest", + "Start the dsp external memory test",PRIV_ROOT | PRIV_HIDDEN); + + + +EOLS (dspbblbtest_eol,diagnostic_cmds,DIAG_DSPBBLBTEST_CMD); + +KEYWORD_OPTIONS(dspbblbtest_verb,dspbblbtest_eol,dspbblbtest_eol,verbose_options, + OBJ(int,5),PRIV_ROOT,0); + +NUMBER (dspbblbtest_gain,dspbblbtest_verb,no_alt,OBJ(int,4),0,7, + "The gain shift"); + +NUMBER (dspbblbtest_frequency,dspbblbtest_gain,no_alt,OBJ(int,3),0,7, + "Index of the frequency to be tested"); + +NUMBER (dspbblbtest_destination,dspbblbtest_frequency,no_alt,OBJ(int,2),0,1, + "Destination transceiver"); + +NUMBER (dspbblbtest_source,dspbblbtest_destination,no_alt,OBJ(int,1),0,1, + "Source transceiver"); + +KEYWORD (diag_dspbblbtest,dspbblbtest_source,diag_dspextmemtest,"dspbblbtest", + "Start the DSP baseband loopback test",PRIV_ROOT | PRIV_HIDDEN); + + + +EOLS (dlreport_eol,diagnostic_cmds,DIAG_DLREPORT_CMD); + +NUMBER (dlreport_duration,dlreport_eol,dlreport_eol,OBJ(int,3),0,255, + "Number of seconds to run"); + +NUMBER (dlreport_trx1_mask,dlreport_duration,no_alt,OBJ(int,2),0,255, + "Mask ot time slots on the first transceiver"); + +NUMBER (dlreport_trx0_mask,dlreport_trx1_mask,no_alt,OBJ(int,1),0,255, + "Mask ot time slots on the first transceiver"); + +KEYWORD (diag_dlreport,dlreport_trx0_mask,diag_dspbblbtest,"dlreport", + "Display the downlink power level and quality",PRIV_ROOT); + + + + +EOLS (cftest_eol,diagnostic_cmds,DIAG_CFTEST_CMD); + +NUMBER (cftest_repeat,cftest_eol,cftest_eol,OBJ(int,1),1,255, + "Number of times to repeat"); + +KEYWORD (diag_cftest,cftest_repeat,diag_dlreport,"cftest", + "Test the compact flash interface",PRIV_ROOT | PRIV_HIDDEN); + + +KEYWORD(exec_diag, diag_cftest,diag_stopdiag, + "startdiag", "Run a diagnostic test", PRIV_ROOT); + +#undef ALTERNATE +#define ALTERNATE exec_diag +
+
+
+
+
+
diff --git a/data/mnet/GP10/Host/cli/include/exec_module.h b/data/mnet/GP10/Host/cli/include/exec_module.h new file mode 100644 index 0000000..58eae5f --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/exec_module.h @@ -0,0 +1,192 @@ +/*
+ * enum for command identification
+ */
+
+enum {
+ MIB_FILE,
+ CDR_SWITCH,
+ CDR_STATUS,
+ CHECK_EEPROM,
+ WRITE_EEPROM,
+ READ_EEPROM,
+ MIB_IMPORT,
+ MIB_EXPORT,
+ SNMP_SET_MIB,
+ SNMP_GET_MIB,
+ MIB_TYPE_INT,
+ MIB_TYPE_STR,
+ SNMP_MIB_LKUP,
+};
+
+
+static keyword_options mib_options[] = {
+ {"import","Import a mib file.Enter the complete directory path",MIB_IMPORT},
+ {"export","Export a mib file.Enter the complete directory path",MIB_EXPORT},
+ {NULL,NULL,0}
+};
+
+static keyword_options mib_type[] = {
+ {"int","Integer type mib variable",MIB_TYPE_INT},
+ {"string","String type mib variable",MIB_TYPE_STR},
+ {NULL,NULL,0}
+};
+
+/*
+ * Clear voip call-stats
+ */
+EOLNS (exec_clear_eol,clearVoipCall);
+KEYWORD (exec_clear_voip_call_stats,exec_clear_eol,no_alt,
+ "call-stats","Clear voip call stats",PRIV_CONF);
+KEYWORD (exec_clear_chain_voip,exec_clear_voip_call_stats,no_alt,
+ "voip","Clear voip call stats",PRIV_CONF);
+
+/********/
+
+
+EOLS (snmp_lkup_eol,exec_module,SNMP_MIB_LKUP);
+
+STRING (snmp_mib_lkup_str,snmp_lkup_eol,no_alt,OBJ(string,1),
+ "Enter the mib tag");
+
+KEYWORD (snmp_mib_lkup,snmp_mib_lkup_str,no_alt,"lookup",
+ "Lookup a mib tag",PRIV_CONF);
+
+/*
+ *snmp mib set <tag> [<row>] { int | string }
+ */
+EOLS (mib_set_eol,exec_module,SNMP_SET_MIB);
+
+STRING (set_str_mib,mib_set_eol,no_alt,OBJ(string,2),
+ "Enter the string value of mib");
+
+NUMBER (set_int_mib,mib_set_eol,no_alt,OBJ(int,2),0,65535,
+ "Enter the integer value of mib");
+
+IFELSE (test_mib_type,set_int_mib,set_str_mib,(GETOBJ(int,1) == MIB_TYPE_INT));
+
+KEYWORD_OPTIONS (set_mib_type,test_mib_type,no_alt,mib_type,
+ OBJ(int,1),PRIV_CONF,0);
+
+NUMBER (set_mib_row,set_mib_type,set_mib_type,OBJ(int,3),0,255,
+ "Enter the index of the variable");
+
+STRING (set_mib_tag,set_mib_row,no_alt,OBJ(string,1),
+ "Enter the mib tag");
+
+KEYWORD (snmp_mib_set,set_mib_tag,snmp_mib_lkup,"set",
+ "Set value of a mib tag",PRIV_CONF);
+
+/*
+ *snmp mib get <tag> [<row>]
+ */
+EOLS (mib_get_eol,exec_module,SNMP_GET_MIB);
+
+NUMBER (get_mib_row,mib_get_eol,mib_get_eol,OBJ(int,2),0,255,
+ "Enter the index of the variable");
+
+STRING (get_mib_tag,get_mib_row,no_alt,OBJ(string,1),
+ "Enter the mib tag");
+
+KEYWORD (snmp_mib_get,get_mib_tag,snmp_mib_set,"get",
+ "Get value of a mib tag",PRIV_CONF);
+
+/*
+ * snmp mib {import | export} <filename>
+ */
+
+EOLS (mib_eol,exec_module,MIB_FILE);
+
+STRING (mib_file,mib_eol,no_alt,OBJ(string,1),
+ "Enter the mib file name with directory path");
+
+KEYWORD_OPTIONS (snmp_ex_or_im,mib_file,snmp_mib_get,mib_options,
+ OBJ(int,1),PRIV_CONF,0);
+
+/*
+ * snmp mib
+ */
+
+KEYWORD (snmp_mib,snmp_ex_or_im,no_alt,"mib",
+ "Mib Export/Import/Get/Set/Lookup operations",PRIV_CONF);
+
+/*
+ * snmp
+ */
+
+KEYWORD (snmp_mod,snmp_mib,no_alt,"snmp",
+ "Snmp module commands",PRIV_CONF);
+
+/*
+ *cdr switch-server <ip-address>
+ */
+
+EOLS (cdr_switch_eol,exec_module,CDR_SWITCH);
+
+IPADDR( cdr_ser_ip,cdr_switch_eol,no_alt,OBJ(paddr,1),
+ "Enter the ip address of cdr server");
+
+KEYWORD (cdr_switch,cdr_ser_ip,no_alt,"switch-server",
+ "Switch the CDR server",PRIV_CONF);
+
+
+/*
+ *cdr get-status
+ */
+
+EOLS (cdr_status_eol,exec_module,CDR_STATUS);
+
+KEYWORD (cdr_status,cdr_status_eol,cdr_switch,"get-status",
+ "Get status of cdr module",PRIV_CONF);
+
+
+
+/*
+ *cdr client
+ */
+
+KEYWORD (cdr_client_key,cdr_status,no_alt,"client",
+ "Cdr client exec commands",PRIV_CONF);
+
+KEYWORD (cdr_mod,cdr_client_key,snmp_mod,"cdr",
+ "Cdr module exec commands",PRIV_CONF);
+
+
+/*
+ * check-eeprom
+ */
+
+EOLS (check_eeprom_eol,exec_module,CHECK_EEPROM);
+
+KEYWORD (check_eeprom,check_eeprom_eol,snmp_mod,"check-eeprom",
+ "Read tx calibration tables from eeprom ",PRIV_CONF | PRIV_HIDDEN);
+
+
+/*
+ * write-eeprom
+ */
+
+EOLS (write_eeprom_eol,exec_module,WRITE_EEPROM);
+
+KEYWORD (write_eeprom,write_eeprom_eol,check_eeprom,"write-eeprom",
+ "Write tx calibration tables to eeprom on the RF board",PRIV_CONF | PRIV_HIDDEN);
+
+
+
+/*
+ * read-eeprom
+ */
+
+
+EOLS (read_eeprom,exec_module,READ_EEPROM);
+
+KEYWORD (exec_module,read_eeprom,write_eeprom,"read-eeprom",
+ "Read tx calibration tables from eeprom on the RF board",PRIV_CONF | PRIV_HIDDEN);
+
+#undef ALTERNATE
+#define ALTERNATE exec_module
+
+
+
+
+
+
diff --git a/data/mnet/GP10/Host/cli/include/exec_show_conf.h b/data/mnet/GP10/Host/cli/include/exec_show_conf.h new file mode 100644 index 0000000..4356509 --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/exec_show_conf.h @@ -0,0 +1,10 @@ +/****************************************************************** + * show configuration -- OBSOLETE + * + */ +EOLNS (show_config_eol, show_configuration); +KEYWORD (show_config, show_config_eol, no_alt, + "running-configuration", "Contents of Non-Volatile memory", PRIV_ROOT); + +#undef ALTERNATE +#define ALTERNATE show_config diff --git a/data/mnet/GP10/Host/cli/include/exec_show_mod.h b/data/mnet/GP10/Host/cli/include/exec_show_mod.h new file mode 100644 index 0000000..820359b --- /dev/null +++ b/data/mnet/GP10/Host/cli/include/exec_show_mod.h @@ -0,0 +1,119 @@ +
+enum {
+ VERSION_OPT,
+ DEBUG_OPT,
+ CDR_DATA,
+ ALARM_STATISTICS,
+ VOIP_CALL_STATS,
+ VOIP_CALL_CNT,
+ VOIP_CALL_SHOW,
+ VOIP_ALL_CALL,
+};
+
+/*
+ * show version
+ */
+
+EOLS (show_ver_eol,show_commands,VERSION_OPT);
+
+KEYWORD (show_ver_opt,show_ver_eol,ALTERNATE,"version",
+ "Show version of GP10 software",PRIV_CONF);
+
+/*
+ * show debugging
+ */
+EOLS (show_debug_opt_eol,show_commands,DEBUG_OPT);
+
+KEYWORD (show_debug_opt,show_debug_opt_eol,show_ver_opt,"debugging",
+ "show debug options",PRIV_CONF | PRIV_HIDDEN);
+
+/*
+ * show client cdr data
+ */
+
+EOLS (cdr_data_eol,show_commands,CDR_DATA);
+
+
+KEYWORD (cdr_data,cdr_data_eol,no_alt,"data",
+ "Show details of CDR data",PRIV_CONF);
+
+KEYWORD (cdr_cli_data,cdr_data,no_alt,"client",
+ "Show cdr client details",PRIV_CONF);
+
+KEYWORD (show_cdr,cdr_cli_data,show_debug_opt,"cdr",
+ "Show cdr details",PRIV_CONF | PRIV_HIDDEN);
+
+
+
+/*
+ * show alarm statistics
+ */
+
+EOLS (alarm_stat_eol,show_commands,ALARM_STATISTICS);
+
+
+KEYWORD (alarm_stat,alarm_stat_eol,no_alt,"statistics",
+ "Show the statistics of alarm module",PRIV_CONF);
+
+/*
+ * show alarm
+ */
+
+KEYWORD (show_alarm,alarm_stat,show_cdr,"alarm",
+ "Show alarm module statistics",PRIV_CONF);
+
+
+/*
+ * show voip call-stats
+ */
+
+EOLS (voip_call_stats_eol,show_commands,VOIP_CALL_STATS);
+
+KEYWORD (voip_call_stats,voip_call_stats_eol,no_alt,"call-stats",
+ "Show the voip call statistics",PRIV_CONF);
+
+
+/*
+ * show voip call-counters
+ */
+
+EOLS (voip_call_cnt_eol,show_commands,VOIP_CALL_CNT);
+
+KEYWORD (voip_call_cnt,voip_call_cnt_eol,voip_call_stats,"call-counters",
+ "Show the voip call counters",PRIV_CONF);
+
+/*
+ * show voip call <ccb-value>
+ */
+
+/*
+ * show voip call <ccb-value>
+ */
+
+EOLS (voip_call_eol,show_commands,VOIP_CALL_SHOW);
+
+HEXNUM (voip_call_ccb,voip_call_eol,no_alt,OBJ(int,1),
+ "Enter the correct address of ccb");
+
+KEYWORD (voip_call,voip_call_ccb,voip_call_cnt,"calls",
+ "Show call having the call control block",PRIV_CONF);
+
+/*
+ * show voip all-calls
+ */
+
+EOLS (voip_all_eol,show_commands,VOIP_ALL_CALL);
+
+KEYWORD (voip_all,voip_all_eol,voip_call,"all-calls",
+ "Show all calls currently active",PRIV_CONF);
+
+
+KEYWORD (exec_show_mod,voip_all,show_alarm,"voip",
+ "Show voice over ip information",PRIV_CONF | PRIV_HIDDEN);
+
+#undef ALTERNATE
+#define ALTERNATE exec_show_mod
+
+
+
+
diff --git a/data/mnet/GP10/Host/cli/src/Makefile b/data/mnet/GP10/Host/cli/src/Makefile new file mode 100644 index 0000000..4ecc752 --- /dev/null +++ b/data/mnet/GP10/Host/cli/src/Makefile @@ -0,0 +1,52 @@ +##########################################################
+#
+# (c) Copyright Cisco 2000
+# All Rights Reserved
+#
+##########################################################
+
+# TOP_OF_VOB must be defined before including l3defs.mk
+TOP_OF_VOB = ..\..\..
+
+# These Must be Properly Defined
+THIS_APP_DIR = cli
+THIS_DIRECTORY = src
+MY_OUTPUT = $(OBJDIR)\gp10cli.out
+
+# Name(s) of Common VOB directories to include
+COMMON_BLD_DIR =
+
+include $(TOP_OF_VOB)\l3defs.mk
+
+all: makeCommonObjs $(MY_OUTPUT)
+
+# Adds the .o file(s) list needed from the Common VOB
+makeCommonObjs:
+ifneq ($(COMMON_BLD_DIR),)
+ @for %f in ($(COMMON_BLD_DIR)) do \
+ make -C $(COMMON_VOB_APP_DIR)\%f \
+ all VOB=$(VOBNAME) APPDIR=Host\$(THIS_APP_DIR)\$(THIS_DIRECTORY)
+endif
+
+# If Common VOB directories to include get the .o files from bin
+$(MY_OUTPUT): $(MODULE_OBJS)
+ifneq ($(COMMON_BLD_DIR),)
+ $(LD) -r -o $@.tmp $() $(MODULE_OBJS) $(wildcard ./bin/*.o)
+else
+ $(LD) -r -o $@.tmp $() $(MODULE_OBJS)
+endif
+ $(NM) $@.tmp | munch > _ctdt.c
+ $(CC) -traditional $(CC_ARCH_SPEC) -c _ctdt.c
+ $(LD) -r -o $@ _ctdt.o $@.tmp
+ $(RM)$(subst /,$(DIRCHAR), _ctdt.c _ctdt.o $@.tmp)
+
+cleanall:
+ @for %f in ($(notdir $(MODULE_OBJS))) do \
+ $(RM) ..\bin\%f
+
+ $(RM) $(MY_OUTPUT)
+
+ifneq ($(COMMON_BLD_DIR),)
+ $(RM) bin\*.o
+ $(RM) bin\*.out
+endif
\ No newline at end of file diff --git a/data/mnet/GP10/Host/cli/src/adjcell_chain.c b/data/mnet/GP10/Host/cli/src/adjcell_chain.c new file mode 100644 index 0000000..773bb35 --- /dev/null +++ b/data/mnet/GP10/Host/cli/src/adjcell_chain.c @@ -0,0 +1,215 @@ +#include "parser_if.h" + +#include "oam_api.h" +#include "mibtags.h" +#include "MnetModuleId.h" + +/* + * Parse chains for adjacent cell configuration + */ +#define ALTERNATE NONE +#include "../include/cfg_adjcell.h" +LINK_POINT(cfg_adj_cell, ALTERNATE); +#undef ALTERNATE + + +static parser_extension_request cfg_bts_adjcell_init_table[] = { + { PARSE_ADD_CFG_GP10_ADJCELL, &pname(cfg_adj_cell) }, + { PARSE_LIST_END, NULL } +}; + +/* + * Register the parser chain + */ +void cfg_bts_adjcell_parser_init (void) +{ + + parser_add_command_list(cfg_bts_adjcell_init_table,"config"); +} + + +void adjcell_nvgen (void) +{ + int cellnum; + AdjCell_ReselectionEntry res_entry; + AdjCell_HandoverEntry hand_entry; + + for (cellnum = 0;cellnum < 16;cellnum ++) { + printf("\n\n config-adjcell %d",cellnum+1); + oam_getMibTblEntry(MIBT_adjCell_reselectionEntry,cellnum,&res_entry, + sizeof(AdjCell_ReselectionEntry)); + oam_getMibTblEntry(MIBT_adjCell_handoverEntry,cellnum,&hand_entry, + sizeof(AdjCell_HandoverEntry)); + + if (hand_entry.adjCell_handoverCellID) + printf("\n\t handover selected"); + else + printf("\n\t no handover selected"); + + if (hand_entry.adjCell_synchronized) + printf("\n\t handover synchronised"); + else + printf("\n\t no handover synchronised"); + + + printf("\n\t handover bcch-frequency %d handover-margin %d max-tx-power %d min-rx-level %d", + hand_entry.adjCell_bCCHFrequency,hand_entry.adjCell_hoMargin, + hand_entry.adjCell_msTxPwrMaxCell,hand_entry.adjCell_rxLevMinCell); + + printf("\n\t handover cell-global-identity mcc %d",hand_entry.adjCell_mcc); + printf("\n\t handover cell-global-identity mnc %d",hand_entry.adjCell_mnc); + printf("\n\t handover cell-global-identity lac %d",hand_entry.adjCell_lac); + printf("\n\t handover cell-global-identity ci %d",hand_entry.adjCell_ci); + + printf("\n\t handover bsic ncc %d",hand_entry.adjCell_ncc); + printf("\n\t handover bsic bcc %d",hand_entry.adjCell_cid); + + printf("\n\t reselection bcch-frequency %d ",res_entry.adjCell_reselectionBCCHFrequency); + if (res_entry.adjCell_reselectionCellID) + printf("\n\t reselection selected"); + else + printf("\n\t no reselection selected"); + } +} + + +/* + * Configuration handler routine for adjacent cell parameters + */ + +void adj_cell_parameters (parseinfo *csb) +{ + int cellnum; + + + cellnum = (int) GETOBJ(udb,current1); + + + switch (csb->which) { + case ADJ_CELL_RES_BCCH : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_reselectionBCCHFrequency, + cellnum - 1,GETOBJ(int,1)); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_reselectionBCCHFrequency, + cellnum - 1,0); + } + break; + + case ADJ_CELL_RES : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_reselectionCellID, + cellnum - 1,1); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_reselectionCellID, + cellnum - 1,0); + } + break; + + case ADJ_CELL_CC_VALUE : + switch (GETOBJ(int,1)) { + case BSIC_NCC : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_ncc, + cellnum - 1,GETOBJ(int,2)); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_ncc, + cellnum - 1,0); + } + break; + case BSIC_BCC : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_cid, + cellnum - 1,GETOBJ(int,2)); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_cid, + cellnum - 1,0); + } + break; + } + break; + case ADJ_CELL_GI_VALUE : + if (csb->nvgen) { + return; + } + switch (GETOBJ(int,1)) { + case GI_MCC : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_mcc, + cellnum - 1,GETOBJ(int,2)); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_mcc, + cellnum - 1,0); + } + break; + case GI_MNC : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_mnc, + cellnum - 1,GETOBJ(int,2)); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_mnc, + cellnum - 1,0); + } + break; + case GI_LAC : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_lac, + cellnum - 1,GETOBJ(int,2)); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_lac, + cellnum - 1,0); + } + break; + case GI_CI : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_ci, + cellnum - 1,GETOBJ(int,2)); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_ci, + cellnum - 1,0); + } + break; + } + break; + + case ADJ_CELL_BCCH : + if (csb->nvgen) { + return; + } + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_bCCHFrequency, + cellnum - 1,GETOBJ(int,1)); + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_hoMargin, + cellnum - 1,GETOBJ(int,2)); + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_msTxPwrMaxCell, + cellnum - 1,GETOBJ(int,3)); + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_rxLevMinCell, + cellnum - 1,GETOBJ(int,4)); + break; + + case ADJ_CELL_SELECTION : + if (csb->nvgen) { + return; + } + switch (GETOBJ(int,1)) { + case CELL_SELECTED : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_handoverCellID, + cellnum - 1,GETOBJ(int,1)); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_handoverCellID, + cellnum - 1,0); + } + break; + case CELL_SYNCHRONISED : + if (csb->sense) { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_synchronized, + cellnum - 1,GETOBJ(int,1)); + } else { + oam_setTblEntryField(CLI_MODULE_ID,MIBT_adjCell_synchronized, + cellnum - 1,0); + } + break; + } + break; + } +} diff --git a/data/mnet/GP10/Host/cli/src/bts_basic_chain.c b/data/mnet/GP10/Host/cli/src/bts_basic_chain.c new file mode 100644 index 0000000..46d00ad --- /dev/null +++ b/data/mnet/GP10/Host/cli/src/bts_basic_chain.c @@ -0,0 +1,230 @@ +#include "parser_if.h" + +#include "oam_api.h" +#include "mibtags.h" +#include "MnetModuleId.h" + +/* + * Parse chains for the cell subconfig mode + */ + +#define ALTERNATE NONE +#include "cfg_trx_exit.h" +LINK_TRANS (configure_config_cell_trx_extend_here, ALTERNATE); +NO_OR_DEFAULT (config_cell_trx_no, configure_config_cell_trx_extend_here, + PRIV_OPR | PRIV_NONVGEN); +HELP (config_cell_trx, config_cell_trx_no, + "Configure cell transceiver configuration parameters:\n"); +#undef ALTERNATE + +/* + * Parse chains for the cell subconfig mode + */ + +#define ALTERNATE NONE +#include "cfg_bts_exit.h" +LINK_TRANS (configure_config_cell_bts_extend_here, ALTERNATE); +NO_OR_DEFAULT (config_cell_bts_no, configure_config_cell_bts_extend_here, + PRIV_OPR | PRIV_NONVGEN); +HELP (config_cell_bts, config_cell_bts_no, + "Configure cell transceiver configuration parameters:\n"); +#undef ALTERNATE + + + + +/* + * Parse chains for bts basic configuration + */ +#define ALTERNATE NONE +#include "../include/cfg_bts_basic.h" +LINK_POINT(cfg_bts_bas, ALTERNATE); +#undef ALTERNATE + + +static parser_extension_request cfg_bts_basic_init_table[] = { + { PARSE_ADD_CFG_GP10_CELL_BTS, &pname(cfg_bts_bas) }, + { PARSE_LIST_END, NULL } +}; + +parser_mode *bts_basic; + +/* + * Register the parser chain + */ +void cfg_bts_basic_parser_init (void) +{ + + parser_add_link_point(PARSE_ADD_CFG_GP10_CELL_TRX, "config-trx", + &pname(configure_config_cell_trx_extend_here)); + parser_add_mode("config-trx", "config-trx", + "Configure Cell Transceiver Configuration Parameters", TRUE, TRUE, "configure", + NULL, NULL, &pname(config_cell_trx),NULL); + + parser_add_link_point(PARSE_ADD_CFG_GP10_CELL_BTS, "bts-basic", + &pname(configure_config_cell_bts_extend_here)); + + bts_basic = parser_add_mode("bts-basic", "bts-basic", + "Configure Cell Bts Configuration Parameters", TRUE, TRUE, "configure", + NULL, NULL, &pname(config_cell_bts),NULL); + parser_add_command_list(cfg_bts_basic_init_table,"config"); +} + +/* + * Mib tags for global identity options + */ +static MibTag bts_bsic_tags[] = {MIB_bts_mcc,MIB_bts_mnc,MIB_bts_lac,MIB_bts_ci}; + +static char *bts_gi_cli[] = {" mcc "," mnc "," lac "," ci "}; + +/* + * failiure statements for global identity options + */ + +static char *bsic_set_fail[] = { + "\n Configuration of bts mobile country code failed", + "\n Configuration of bts mobile network code failed", + "\n Configuration of bts location area code failed", + "\n Configuration of bts cell identifier failed" +}; + +static char *bts_admin_state[] = { + " locked ", + " unlocked ", + " shutdown " +}; + + +void bts_gi_nvgen() +{ + long nvgen_int; + int i; + + for (i=0;i<4;i++) { + oam_getMibIntVar(bts_bsic_tags[i],&nvgen_int); + printf("\n\t cell-global-identity %s %d",bts_gi_cli[i],nvgen_int); + } +} + + +/* + * bts basic command handler + */ + + +void bts_basic_parameters(parseinfo *csb) +{ + int i = 0; /* used for indexing permitted ncc */ + long nvgen_int; + int intbuf[2] = {0,1}; + int intnobuf[2] = {0,0}; + PlmnPermittedEntry plmn_entry; + + switch (csb->which) { + case BTS_RECV_LEVEL : + if (csb->nvgen) { + oam_getMibIntVar(MIB_rxLevAccessMin,&nvgen_int); + printf("\n\t %s %d",csb->nv_command,nvgen_int); + return; + } + SET_INT_MIB(MIB_rxLevAccessMin,GETOBJ(int,1),10, + "\nConfiguration of minimum receive level access failed"); + break; + case BTS_LINK_TIMEOUT : + if (csb->nvgen) { + oam_getMibIntVar(MIB_radioLinkTimeout,&nvgen_int); + printf("\n\t %s %d",csb->nv_command,nvgen_int); + return; + } + SET_INT_MIB(MIB_radioLinkTimeout,GETOBJ(int,1),15, + "\nConfiguration of radio link timeout failed"); + break; + case BTS_PER_NCC_ALL : + if (csb->nvgen) { + return; + } + if (csb->sense) { + for (i=0;i < 8;i++) { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_plmnPermittedEntry,i,intbuf, + sizeof(int) *2); + } + } else { + for (i=0;i < 8;i++) { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_plmnPermittedEntry,i,intnobuf, + sizeof(int) *2); + } + } + break; + case BTS_PER_NCC : + if (csb->nvgen) { + for (i=0;i < 8; i++) { + oam_getMibTblEntry(MIBT_plmnPermittedEntry,i,&plmn_entry,sizeof(PlmnPermittedEntry)); + if (plmn_entry.plmnPermitted) + printf("\n\t plmn-permitted-ncc %d",i); + else + printf("\n\t no plmn-permitted-ncc %d",i); + } + return; + } + if (csb->sense) { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_plmnPermittedEntry,GETOBJ(int,1),intbuf, + sizeof(int) *2); + } else { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_plmnPermittedEntry,GETOBJ(int,1),intnobuf, + sizeof(int) *2); + } + break; + case BTS_PHY_VALUE : + if (csb->nvgen) { + oam_getMibIntVar(MIB_ny1,&nvgen_int); + printf("\n\t %s %d",csb->nv_command,nvgen_int); + return; + } + SET_INT_MIB(MIB_ny1,GETOBJ(int,1),3, + "\nConfiguration num of physical repetition failed"); + break; + case BTS_RES_VALUE : + if (csb->nvgen) { + oam_getMibIntVar(MIB_cellReselectHysteresis,&nvgen_int); + printf("\n\t %s %d",csb->nv_command,nvgen_int); + return; + } + SET_INT_MIB(MIB_cellReselectHysteresis,GETOBJ(int,1),7, + "\nConfiguration cell reselect hysteresis failed"); + break; + case BTS_CC_VALUE : + if (csb->nvgen) { + oam_getMibIntVar(MIB_bts_ncc,&nvgen_int); + printf("\n\t bsic ncc %d",nvgen_int); + oam_getMibIntVar(MIB_bts_cid,&nvgen_int); + printf("\n\t bsic bcc %d",nvgen_int); + return; + } + switch(GETOBJ(int,1)) { + case BSIC_NCC : + SET_INT_MIB(MIB_bts_ncc,GETOBJ(int,2),7,"\nConfiguration of network color code failed"); + break; + case BSIC_BCC : + SET_INT_MIB(MIB_bts_cid,GETOBJ(int,2),7, + "\nConfiguration of base station color code failed"); + break; + } + break; + case BTS_GI_VALUE : + if (csb->nvgen) { + bts_gi_nvgen (); + return; + } + SET_INT_MIB(bts_bsic_tags[GETOBJ(int,1)],GETOBJ(int,2),1,bsic_set_fail[GETOBJ(int,1)]); + break; + case BTS_ADMIN_STATE : + if (csb->nvgen) { + oam_getMibIntVar(MIB_bts_administrativeState,&nvgen_int); + printf("\n\t administrative-state %s",bts_admin_state[nvgen_int]); + return; + } + SET_INT_MIB(MIB_bts_administrativeState,GETOBJ(int,1),1, + "\nConfiguration of bts administrative state failed"); + break; + } +} diff --git a/data/mnet/GP10/Host/cli/src/ccch_chain.c b/data/mnet/GP10/Host/cli/src/ccch_chain.c new file mode 100644 index 0000000..3a27b0f --- /dev/null +++ b/data/mnet/GP10/Host/cli/src/ccch_chain.c @@ -0,0 +1,137 @@ +#include "parser_if.h" + +#include "oam_api.h" +#include "mibtags.h" +#include "MnetModuleId.h" + + +/* + * Parse chains for system information configuration commands + */ +#define ALTERNATE NONE +#include "../include/cfg_ccch.h" +LINK_POINT(cfg_bts_ccch, ALTERNATE); +#undef ALTERNATE + +/* + * Parse chains for the cell subconfig mode + */ + +#define ALTERNATE NONE +#include "cfg_ccch_exit.h" +LINK_TRANS (configure_config_cell_ccch_extend_here, ALTERNATE); +NO_OR_DEFAULT (config_cell_ccch_no, configure_config_cell_ccch_extend_here, + PRIV_OPR | PRIV_NONVGEN); +HELP (config_cell_ccch, config_cell_ccch_no, + "Configure common control channel configuration parameters:\n"); +#undef ALTERNATE + + +static parser_extension_request cfg_bts_ccch_init_table[] = { + { PARSE_ADD_CFG_GP10_CELL_CCCH, &pname(cfg_bts_ccch) }, + { PARSE_LIST_END, NULL } +}; + +parser_mode *ccch_config; + + +/* + * Register the parser chain + */ +void cfg_bts_ccch_parser_init (void) +{ + parser_add_link_point(PARSE_ADD_CFG_GP10_CELL_CCCH, "ccch-config", + &pname(configure_config_cell_ccch_extend_here)); + + ccch_config = parser_add_mode("ccch-config", "ccch-config", + "Configure Cell Ccch Configuration Parameters", TRUE, TRUE, "configure",NULL, NULL, &pname(config_cell_ccch),NULL); + parser_add_command_list(cfg_bts_ccch_init_table,"config"); +} + + + +/* + * CCCH Mib Tags + */ + +/* + * The first ited needs to be replaced. At this point of time engr doesn't know this + */ +static MibTag ccch_mib_tags[] = {MIB_rm_nim_0_6, + MIB_rm_nim_0_5,MIB_rm_nim_0_4, + MIB_rm_nim_0_3, + MIB_numberOfSlotsSpreadTrans, + MIB_noOfMultiframesBetweenPaging, + MIB_noOfBlocksForAccessGrant,MIB_mSTxPwrMaxCCH, + MIB_maxNumberRetransmissions +}; + + +/* + * Default values for mibs + */ +static int ccch_mib_def[] = {0,0,0,0,1,9,0,0,4}; + + +/* + * String for SNMP set failure information + */ + +static char *ccch_set_fail[] = { + "\n Selection of cell bar qualify failed", + "\n Configuration of offset penaly failed", + "\n Configuration of offset temporary failed", + "\n Configuration of cell reselect failed", + "\n Configuration of max number of RACH slots failed", + "\n Configuration of number of multiframes failed", + "\n Configuration of number of frames for access grant channel failed", + "\n Configuration of max transmit power level failed", + "\n Configuration of max number of retransmission failed", +}; + + +/* + * String for SNMP set failure information + */ + +static char *ccch_show_fail[] = { + "\n Show configuration of cell bar qualify failed", + "\n Show Configuration of offset penaly failed", + "\n Show Configuration of offset temporary failed", + "\n Show Configuration of cell reselect failed", + "\n Show Configuration of max number of RACH slots failed", + "\n Show Configuration of number of multiframes failed", + "\n Show Configuration of number of frames for access grant channel failed", + "\n Show Configuration of max transmit power level failed", + "\n Show Configuration of max number of retransmission failed", +}; + +/* + * ccch command handler + */ + +void ccch_configuration (parseinfo *csb) +{ + long nvgen_int; + + if (csb->which == CCCH_CELL_BAR) { + if (csb->nvgen) { + oam_getMibIntVar(ccch_mib_tags[csb->which],&nvgen_int); + if (nvgen_int) + printf("\n\t %s enable",csb->nv_command); + else + printf("\n\t no %s enable",csb->nv_command); + return; + } + + SET_INT_MIB(ccch_mib_tags[csb->which],csb->sense,0,ccch_set_fail[csb->which]); + } else { + if (csb->nvgen) { + oam_getMibIntVar(ccch_mib_tags[csb->which],&nvgen_int); + printf("\n\t %s %d",csb->nv_command,nvgen_int); + return; + } + SET_INT_MIB(ccch_mib_tags[csb->which],GETOBJ(int,1),ccch_mib_def[csb->which], + ccch_set_fail[csb->which]); + } +} diff --git a/data/mnet/GP10/Host/cli/src/diag_chain.c b/data/mnet/GP10/Host/cli/src/diag_chain.c new file mode 100644 index 0000000..f45ecc3 --- /dev/null +++ b/data/mnet/GP10/Host/cli/src/diag_chain.c @@ -0,0 +1,336 @@ +#include "parser_if.h" + +/* + * Include other api headers + */ +#include "Mch/MCHDefs.h" +#include "oam_api.h" +#include "mibtags.h" +#include "MnetModuleId.h" + +/* + * Parse chains for Exec diagnostic commands + */ +#define ALTERNATE NONE +#include "../include/exec_diag_cmd.h" +LINK_POINT(exec_diag_commands, ALTERNATE); +#undef ALTERNATE + +/* + * Parse chains for Exec show commands + */ +#define ALTERNATE NONE +#include "../include/exec_show_mod.h" +LINK_POINT(exec_show_mod_command, ALTERNATE); +#undef ALTERNATE + +/* + * Parse chains for module specific Exec commands + */ +#define ALTERNATE NONE +#include "../include/exec_module.h" +LINK_POINT(exec_mod_cmds, ALTERNATE); +#undef ALTERNATE + +/* + * Parse chains for module specific Exec commands + */ +#define ALTERNATE NONE +#include "../include/exec_show_conf.h" +LINK_POINT(exec_show_conf, ALTERNATE); +#undef ALTERNATE + + +/* + * Parse chains for module specific Exec commands + */ +#define ALTERNATE NONE +#include "../include/exec_debug_gp10.h" +LINK_POINT(exec_dbg_gp10, ALTERNATE); +#undef ALTERNATE + +/* + * Parse chain registration array for Exec + */ +static parser_extension_request exec_diag_chain_init_table[] = { + { PARSE_ADD_EXEC_CMD, &pname(exec_diag_commands) }, + { PARSE_ADD_SHOW_CMD, &pname(exec_show_mod_command)}, + { PARSE_ADD_SHOW_CMD, &pname(exec_show_conf)}, + { PARSE_ADD_EXEC_CMD, &pname(exec_mod_cmds) }, + { PARSE_ADD_DEBUG_CMD,&pname(exec_dbg_gp10) },
+ { PARSE_ADD_CLEAR_CMD, &pname(exec_clear_chain_voip) }, + { PARSE_LIST_END, NULL } +}; + +void show_configuration (parseinfo *csb) +{ + parseinfo *nvcsb; + + nvcsb = get_csb("NV parser CSB"); + if (csb == NULL) { + printf(nomemory); + return; + } + printf("\nBuilding configuration..."); + nvcsb->nvgen = TRUE; + nvcsb->sense = TRUE; + + nvcsb->priv = PRIV_MAX; + nvcsb->priv_set = 0xf; + nvcsb->mode = config_mode; + push_node(nvcsb, get_mode_nv(nvcsb)); + parse_token(nvcsb); + free_csb(&nvcsb); + printf("\n"); +} + + + + +void exec_diag_parser_init (void) +{ + parser_add_command_list(exec_diag_chain_init_table, "exec"); +} + + +/* + * Global variables + */ +char cmd_line[MCH_MAX_COMMAND_LEN]; + +void diagnostic_cmds (parseinfo *csb) +{ + + switch (csb->which) { + case DIAG_CFTEST_CMD : + sprintf(cmd_line,"startdiag cftest %d",GETOBJ(int,1)); + break; + case DIAG_STOPDIAG_CMD: + sprintf(cmd_line," stopdiag %s",GETOBJ(string,1)); + break; + case DIAG_HPIMEMACCESS_CMD: + sprintf(cmd_line," startdiag hpimemoryaccess %d %d %d ",GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3)); + break; + case DIAG_HPIECHOTEST_CMD: + sprintf(cmd_line," startdiag hpiechotest %d %d %d %d %d", + GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3),GETOBJ(int,4),GETOBJ(int,5)); + break; + case DIAG_HOREPORT_CMD: + sprintf(cmd_line," startdiag horeport %x %x %d",GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3)); + break; + case DIAG_FPGATEST_CMD: + sprintf(cmd_line," startdiag fpgatest %d",GETOBJ(int,1)); + break; + case DIAG_DSPMEMTEST_CMD: + sprintf(cmd_line," startdiag dspmemtest %d %d %d",GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3)); + break; + case DIAG_DSPLOOPBACK_CMD: + sprintf(cmd_line," startdiag dsploopback %d %d %d",GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3)); + break; + case DIAG_DSPEXTMEMTEST_CMD: + sprintf(cmd_line," startdiag dspextmemtest %d %d %d", + GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3)); + break; + case DIAG_DSPBBLBTEST_CMD: + sprintf(cmd_line," startdiag dspbblbtest %d %d %d %d %d", + GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3),GETOBJ(int,4),GETOBJ(int,5)); + break; + case DIAG_DLREPORT_CMD: + sprintf(cmd_line," startdiag dlreport %x %x %d",GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3)); + break; + case DIAG_IFREPORT_CMD: + sprintf(cmd_line," startdiag ifreport %x %x %d",GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3)); + break; + case DIAG_MSREPORT_CMD: + sprintf(cmd_line," startdiag msreport %x %x %d",GETOBJ(int,1),GETOBJ(int,2),GETOBJ(int,3)); + break; + case DIAG_I2CTEST_CMD : + sprintf(cmd_line," startdiag i2ctest"); + break; + case DIAG_I2CLOOPBACK_CMD : + sprintf(cmd_line,"startdiag i2cloopback numbytes %d duration %d %d %s",GETOBJ(int,1), + GETOBJ(int,2),GETOBJ(int,3),(GETOBJ(int,4)!=HALT_ON_ERROR)?"":"Haltonerror"); + break; + } + /* + * call the MCH routine to handle the command + */ + MaintCmd__FPc(cmd_line); +} + +/* + * show command handler + */ + +void show_commands (parseinfo *csb) +{ + switch (csb->which) { + case VERSION_OPT : + oam_getMibByteAry(MIB_viperCellSoftwareBuild,nvgen_string,CLI_MAX_STRING_LEN); + printf("\n %s\n",nvgen_string); + break; + case DEBUG_OPT : + ViperLogShowAllFilters(); + break; + case CDR_DATA : + CdrDataPrint(); + break; + case ALARM_STATISTICS : + AlarmPrintStatus(); + break; + case VOIP_CALL_STATS : + VoipShowCallStats__Fv(); + break; + case VOIP_CALL_CNT : + VoipShowCallCounters__Fv(); + break; + case VOIP_CALL_SHOW :
+ VoipShowCall__FP19_CALL_CONTROL_BLOCK(GETOBJ(int,1)); + break; + case VOIP_ALL_CALL:
+ VoipShowAllCalls__Fv();
+ break;
+ } +} + +/* + * module specific exec command handler + */ +extern void VoipClearCallStats__Fv(void); +void exec_module (parseinfo *csb) +{ + char cdr_ipaddr[16]; + int tag; + + switch (csb->which) { + case MIB_FILE : + switch (GETOBJ(int,1)) + { + case MIB_IMPORT : + snmp_loadMib(GETOBJ(string,1)); + break; + case MIB_EXPORT : + snmp_saveMib(GETOBJ(string,1)); + break; + } + break; + + case SNMP_SET_MIB : + if (tag = snmp_nameToTag(GETOBJ(string,1))) { + if (MTYPE_IS_TABLE(MIB_TYP(tag))) { + if (GETOBJ(int,1) == MIB_TYPE_INT) { + if (SnmpMibSet(GETOBJ(string,1),GETOBJ(int,3),GETOBJ(int,2)) != STATUS_OK ) + printf(" Setting of mib %s failed",GETOBJ(string,1)); + } else { + if (SnmpMibSet(GETOBJ(string,1),GETOBJ(int,3),GETOBJ(string,2)) != STATUS_OK) + printf(" Setting of mib %s failed",GETOBJ(string,1)); + } + } else { + if (GETOBJ(int,1) == MIB_TYPE_INT) { + if (SnmpMibSet(GETOBJ(string,1),GETOBJ(int,2)) != STATUS_OK ) + printf(" Setting of mib %s failed",GETOBJ(string,1)); + } else { + if (SnmpMibSet(GETOBJ(string,1),GETOBJ(string,2)) != STATUS_OK) + printf(" Setting of mib %s failed",GETOBJ(string,1)); + } + } + } else { + printf("Unable to locate MIB tag from supplied mib string '%s'\n", GETOBJ(string,1)); + } + break; + + case SNMP_GET_MIB : + SnmpMibGet(GETOBJ(string,1),GETOBJ(int,2)); + break; + case SNMP_MIB_LKUP : + SnmpMibLookup(GETOBJ(string,1)); + break; + case CDR_SWITCH : + address_string(GETOBJ(paddr,1)->ip_addr,cdr_ipaddr); + _cdrSwitchServer(cdr_ipaddr); + break; + case CDR_STATUS : + cdrGetStatus(); + break; + case CHECK_EEPROM : + CheckEeprom__Fv(); + break; + case WRITE_EEPROM : + WriteEeprom__Fv(); + break; + case READ_EEPROM : + ReadEeprom__Fv(); + break;
+ } +} + +/* + * Mask for turning on debugs + */ +static int gp10_debug_mask[] = {DBG_LOG_CONTROL_TRACE_MASK ,
+ DBG_LOG_CALL_TRACE_MASK ,
+ DBG_LOG_INFORMATIONAL_MASK ,
+ DBG_LOG_WARNINGS_MASK ,
+ DBG_LOG_ERRORS_MASK,
+ DBG_LOG_ALL_TRACE_MASK,
+ DBG_LOG_TIMESTAMP_MASK
+};
+ +/* + * Mask for turning off debugs + */ + +static int gp10_debug_inversemask[] = {DBG_LOG_CONTROL_TRACE_INVERSE_MASK , + DBG_LOG_CALL_TRACE_INVERSE_MASK , + DBG_LOG_INFORMATIONAL_INVERSE_MASK , + DBG_LOG_WARNINGS_INVERSE_MASK , + DBG_LOG_ERRORS_INVERSE_MASK, + DBG_LOG_ALL_TRACE_INVERSE_MASK +}; + +static int debug_option_flag = 0; + +void set_gp10_debug_flag (parseinfo *csb) +{ + if (csb->sense) { + debug_option_flag |= gp10_debug_mask[GETOBJ(int,2)]; + } else { + debug_option_flag &= gp10_debug_inversemask[GETOBJ(int,2)]; + } +} + +/* + * Handler routine for debug commands + */ +extern int logging_dest; +void gp10_debug_command( parseinfo *csb) +{
+ char c;
+
+ if(GETOBJ(int,1)==GP10_DEBUG_ALL && csb->sense){
+ printf("This may severely impact network performance: Continue: [yes/no] ");
+ read(STD_IN,&c,1);
+ write(STD_OUT,"\n",1);
+ if(c!='y')
+ return;
+ }
+
+ if (debug_option_flag == 0) { + if (csb->sense) {
+
+ debug_option_flag = gp10_debug_mask[DBG_ALL_LOG]; + } else { + debug_option_flag = gp10_debug_inversemask[DBG_ALL_LOG]; + } + }
+
+ + debug_option_flag |= logging_dest; + ViperLogSetModuleFilters(GETOBJ(int,1),debug_option_flag); + debug_option_flag = 0; +} +
+
+void clearVoipCall(parseinfo *csb){
+ VoipClearCallStats__Fv();
+}
diff --git a/data/mnet/GP10/Host/cli/src/proto_chain.c b/data/mnet/GP10/Host/cli/src/proto_chain.c new file mode 100644 index 0000000..53b12f3 --- /dev/null +++ b/data/mnet/GP10/Host/cli/src/proto_chain.c @@ -0,0 +1,150 @@ +#include "parser_if.h" + +#include "oam_api.h" +#include "mibtags.h" +#include "MnetModuleId.h" + +/* + * Parse chains for system information configuration commands + */ +#define ALTERNATE NONE +#include "../include/cfg_timers.h" +LINK_POINT(cfg_timer, ALTERNATE); +#undef ALTERNATE + +#define ALTERNATE NONE +#include "cfg_proto_exit.h" +LINK_TRANS (configure_gp10_proto_extend_here, ALTERNATE); +NO_OR_DEFAULT (gp10_proto_config_no, configure_gp10_proto_extend_here, + PRIV_OPR | PRIV_NONVGEN); +HELP (gp10_proto_config, gp10_proto_config_no, + "Configure gp10 protocol configuration parameters:\n"); +#undef ALTERNATE + +static parser_extension_request cfg_proto_init_table[] = { + { PARSE_ADD_CFG_GP10_PROTO, &pname(cfg_timer) }, + { PARSE_LIST_END, NULL } +}; + +parser_mode *config_proto; +/* + * Register the parser chain + */ +void cfg_proto_parser_init (void) +{ + parser_add_link_point(PARSE_ADD_CFG_GP10_PROTO, "config-proto", + &pname(configure_gp10_proto_extend_here)); + config_proto = parser_add_mode("config-proto", "config-proto", + "Configure Protocol Configuration Parameters", TRUE, TRUE, "configure", + NULL, NULL, &pname(gp10_proto_config),NULL); + parser_add_command_list(cfg_proto_init_table,"config"); +} + + + +/* + * Mib tags of the timer + */ + +static MibTag timer_mib_tags[] = {MIB_sdcchSAPI0,MIB_sdcchSAPI3,MIB_sacchSDCCH, + MIB_sacchTCHSAPI0,MIB_sdcchTCHSAPI3, + MIB_t3101,MIB_t3103,MIB_t3105,MIB_t3107,MIB_t3109, + MIB_t3111,MIB_t3113,MIB_cc_alerting_T301,MIB_cc_setup_T303, + MIB_cc_call_confirmed_T310,MIB_cc_connect_T313, + MIB_cc_disconnect_T305,MIB_cc_release_T308 +}; + +/* + * String for printing SNMP failiure to set the timer + */ + +static char *time_set_fail_str[] = { + "\nConfiguration of Stand-alone dedicated control channel sapi0 timer failed", + "\nConfiguration of Stand-alone dedicated control channel sapi3 timer failed", + "\nConfiguration of Stand-alone dedicated control channel sdcch timer failed", + "\nConfiguration of sacch tracffic channel sapi0 timer failed", + "\nConfiguration of Stand-alone dedicated control channel tch sapi3 timer failed", + "\nConfiguration of immediate assignment timer failed", + "\nConfiguration of handover command timer failed", + "\nConfiguration of physical information timer failed", + "\nConfiguration of assignment command timer failed", + "\nConfiguration of lower layer failiure timer failed", + "\nConfiguration of channel activation delay timer failed", + "\nConfiguration of paging message timer failed", + "\nConfiguration of alerting received timer failed", + "\nConfiguration of setup sent timer failed", + "\nConfiguration of call confirmation received timer failed", + "\nConfiguration of connect sent timer failed", + "\nConfiguration of disconnect sent timer failed", + "\nConfiguration of release sent timer failed" +}; + + +void rmm_timer_nvgen (parseinfo *csb) +{ + NVADDGEN_TIMER_MIB(MIB_t3101,"immediate-assignment"); + NVADDGEN_TIMER_MIB(MIB_t3103,"handover-command"); + NVADDGEN_TIMER_MIB(MIB_t3105,"physical-information"); + NVADDGEN_TIMER_MIB(MIB_t3107,"assignment-command"); + NVADDGEN_TIMER_MIB(MIB_t3109,"lower-layer-failure"); + NVADDGEN_TIMER_MIB(MIB_t3111,"channel-activation"); + NVADDGEN_TIMER_MIB(MIB_t3113,"paging-messages"); +} + +void ccm_timer_nvgen (parseinfo *csb) +{ + NVADDGEN_TIMER_MIB(MIB_cc_alerting_T301,"alerting-received"); + NVADDGEN_TIMER_MIB(MIB_cc_setup_T303,"setup-sent"); + NVADDGEN_TIMER_MIB(MIB_cc_call_confirmed_T310,"call-confirmed"); + NVADDGEN_TIMER_MIB(MIB_cc_connect_T313,"connect-sent"); + NVADDGEN_TIMER_MIB(MIB_cc_disconnect_T305,"disconnect-sent"); + NVADDGEN_TIMER_MIB(MIB_cc_release_T308,"release-sent"); +} + + +/* + * Timer confiuration routine + */ + +void timer_configuration (parseinfo *csb) +{ + long nvgen_int; + + switch (csb->which) { + case CCM_TIMER : + if (csb->nvgen) { + ccm_timer_nvgen(csb); + return; + } + SET_INT_MIB(timer_mib_tags[GETOBJ(int,1)],GETOBJ(int,2),0,time_set_fail_str[GETOBJ(int,1)]); + break; + case RMM_TIMER : + if (csb->nvgen) { + rmm_timer_nvgen(csb); + return; + } + SET_INT_MIB(timer_mib_tags[GETOBJ(int,1)],GETOBJ(int,2),0,time_set_fail_str[GETOBJ(int,1)]); + break; + case SACCH_TIMER : + NVADDGEN_TIMER_MIB(MIB_sacchTCHSAPI0,"tch-0-timer"); + NVGEN_TIMER_MIB(MIB_sacchSDCCH,"sdcch-timer"); + SET_INT_MIB(timer_mib_tags[GETOBJ(int,1)],GETOBJ(int,2),0,time_set_fail_str[GETOBJ(int,1)]); + break; + case SDCCH_TIMER : + NVADDGEN_TIMER_MIB(MIB_sdcchSAPI0,"sapi-0-timer"); + NVADDGEN_TIMER_MIB(MIB_sdcchSAPI3,"sapi-3-timer"); + NVGEN_TIMER_MIB(MIB_sdcchTCHSAPI3,"sdcch-tch-timer"); + SET_INT_MIB(timer_mib_tags[GETOBJ(int,1)],GETOBJ(int,2),0,time_set_fail_str[GETOBJ(int,1)]); + break; + case FACCH_TIMER : + if (csb->nvgen) { + oam_getMibIntVar(MIB_facchTCHF,&nvgen_int); + printf("\n\t %s %d",csb->nv_command,nvgen_int); + return; + } + + SET_INT_MIB(MIB_facchTCHF,GETOBJ(int,1),0,"\nConfiguration of TCH full rate timer failed"); + break; + } +} + diff --git a/data/mnet/GP10/Host/cli/src/sys_info_chain.c b/data/mnet/GP10/Host/cli/src/sys_info_chain.c new file mode 100644 index 0000000..932c734 --- /dev/null +++ b/data/mnet/GP10/Host/cli/src/sys_info_chain.c @@ -0,0 +1,871 @@ +#include "parser_if.h" + +#include "oam_api.h" +#include "mibtags.h" +#include "MnetModuleId.h" +/* + * Parse chains for system information configuration commands + */ +#define ALTERNATE NONE +#include "../include/cfg_sys_info.h" +LINK_POINT(cfg_sys_info, ALTERNATE); +#undef ALTERNATE + +/* + * Parse chains for voip configuration commands + */ +#define ALTERNATE NONE +#include "../include/cfg_voip.h" +LINK_POINT(cfg_voip, ALTERNATE); +#undef ALTERNATE + + +/* + * Parse chains for bts option commands + */ +#define ALTERNATE NONE +#include "../include/cfg_bts_options.h" +LINK_POINT(cfg_bts_option, ALTERNATE); +#undef ALTERNATE + +/* + * Parse chains for bts option commands + */ +#define ALTERNATE NONE +#include "../include/cfg_sys_feat.h" +LINK_POINT(cfg_sys_feat, ALTERNATE); +#undef ALTERNATE + + +/* + * Parse chains for bts option commands + */ +#define ALTERNATE NONE +#include "../include/cfg_mspwr_ctrl.h" +LINK_POINT(cfg_mspwr_ctrl, ALTERNATE); +#undef ALTERNATE + +/* + * Parse chains for the global subconfig mode + */ + +#define ALTERNATE NONE +#include "cfg_cell_exit.h" +LINK_TRANS (configure_gp10_cell_extend_here, ALTERNATE); +NO_OR_DEFAULT (gp10_cell_config_no, configure_gp10_cell_extend_here, + PRIV_OPR | PRIV_NONVGEN); +HELP (gp10_cell_config, gp10_cell_config_no, + "Configure gp10 cell configuration parameters:\n"); +#undef ALTERNATE + +#define ALTERNATE NONE +#include "cfg_adjcell_exit.h" +LINK_TRANS (configure_gp10_adjcell_extend_here, ALTERNATE); +NO_OR_DEFAULT (gp10_adjcell_config_no, configure_gp10_adjcell_extend_here, + PRIV_OPR | PRIV_NONVGEN); +HELP (gp10_adjcell_config, gp10_adjcell_config_no, + "Configure gp10 adjacent cell configuration parameters:\n"); +#undef ALTERNATE + +/* + * Parse chain registration array for Exec + */ +static parser_extension_request cfg_sysinfo_init_table[] = { + { PARSE_ADD_CFG_TOP_CMD, &pname(cfg_sys_info) }, + { PARSE_ADD_CFG_TOP_CMD, &pname(cfg_voip) }, + { PARSE_ADD_CFG_GP10_CELL, &pname(cfg_bts_option) }, + { PARSE_ADD_CFG_TOP_CMD, &pname(cfg_sys_feat) }, + { PARSE_ADD_CFG_TOP_CMD, &pname(cfg_mspwr_ctrl) },
+ { PARSE_LIST_END, NULL } +}; + +static parser_mode *config_adjcell; +static parser_mode *config_cell; +extern parser_mode *config_proto; +extern parser_mode *ccch_config; +extern parser_mode *bts_basic; + +/* parser init routine */ + +void gp10_subconfig_init (void) +{ + parser_add_link_point(PARSE_ADD_CFG_GP10_CELL, "config-cell", + &pname(configure_gp10_cell_extend_here)); + config_cell = parser_add_mode("config-cell", "config-cell", + "Configure Cell Configuration Parameters", TRUE, TRUE, "configure", + NULL, NULL, &pname(gp10_cell_config),NULL); + parser_add_link_point(PARSE_ADD_CFG_GP10_ADJCELL, "config-adjcell", + &pname(configure_gp10_adjcell_extend_here)); + config_adjcell = parser_add_mode("config-adjcell", "config-adjcell", + "Configure Adjacent Cell Configuration Parameters", TRUE, TRUE, "configure", + NULL, NULL, &pname(gp10_adjcell_config),NULL); +} + +/* + * Register the parser chain + */ +void commands_init (void) +{ + gp10_subconfig_init(); + parser_add_command_list(cfg_sysinfo_init_table,"config"); + exec_diag_parser_init(); + cfg_bts_basic_parser_init(); + cfg_bts_ccch_parser_init(); + cfg_bts_adjcell_parser_init (); + cfg_trx_parser_init(); + cfg_proto_parser_init(); +} + + +static void submode_nvgen (parseinfo *csb,parser_mode *mode) +{ + parseinfo *nvcsb; + + nvcsb = get_csb("NV parser CSB"); + if (csb == NULL) { + printf(nomemory); + return; + } + nvcsb->nvgen = TRUE; + nvcsb->sense = TRUE; + nvcsb->priv = PRIV_MAX; + nvcsb->priv_set = 0xf; + nvcsb->mode = mode; + push_node(nvcsb, get_mode_nv(nvcsb)); + parse_token(nvcsb); + free_csb(&nvcsb); +} + +/* + * sub config modes + */ + + +void gp10_subconfig_cmds (parseinfo *csb) +{ + + switch (csb->which) { + case SUB_CONFIG_PROTO : + if (csb->nvgen) { + printf("\n\nconfig-proto"); + submode_nvgen(csb,config_proto); + return; + } + set_mode_byname(&csb->mode, "config-proto", MODE_VERBOSE); + break; + case SUB_CONFIG_ADJCELL : + if (csb->nvgen) { + adjcell_nvgen (); + return; + } + SETOBJ(udb, current1) = (void *)GETOBJ(int,1); + set_mode_byname(&csb->mode, "config-adjcell", MODE_VERBOSE); + break; + case SUB_CONFIG_CELL : + if (csb->nvgen) { + submode_nvgen(csb,config_cell); + return; + } + set_mode_byname(&csb->mode, "config-cell", MODE_VERBOSE); + break; + } +} + +/* + * cell sub config modes + */ + +void gp10_cell_subconfig_cmds (parseinfo *csb) +{ + switch (csb->which) { + case CFG_CELL_CCCH : + if (csb->nvgen) { + printf("\n\n ccch-config"); + submode_nvgen(csb,ccch_config); + return; + } + set_mode_byname(&csb->mode, "ccch-config", MODE_VERBOSE); + break; + case CFG_CELL_TRX : + if (csb->nvgen) { + trx_nvgen(); + return; + } + SETOBJ(udb, current1) = (void *)GETOBJ(int,1); + set_mode_byname(&csb->mode, "config-trx", MODE_VERBOSE); + break; + case CFG_CELL_BTS : + if (csb->nvgen) { + printf("\n\n bts-basic"); + submode_nvgen(csb,bts_basic); + return; + } + set_mode_byname(&csb->mode, "bts-basic", MODE_VERBOSE); + break; + } +} + + +char * +address_hexstring (ulong address,char *buf) +{ + sprintf(buf, ":%02x%02x%02x%02x", + (address >> 24) & 0xff, (address >> 16) & 0xff, + (address >> 8) & 0xff, address & 0xff); + + return buf; +} + +/* + * System configuration commands + */ +void system_configuration (parseinfo *csb) +{ + long nvgen_int; + char ip_string[16]; + + switch (csb->which) { + case CONF_CUSTADDR : + NVGEN_STRING_MIB(MIB_viperCellCustomerAddress, + "\n Show configuration of vipercell customer address failed"); + + if (csb->sense) { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerAddress, + (unsigned char *)GETOBJ(string,1),strlen(GETOBJ(string,1))) != STATUS_OK) { + printf("\n Configuration of vipercell customer address failed"); + } + } else { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerAddress, + (unsigned char *)" ",1) != STATUS_OK) { + printf("\n Configuration of vipercell customer address failed"); + } + } + break; + + + case CONF_CUSTINFO : + NVGEN_STRING_MIB(MIB_viperCellCustomerInfo, + "\n Show Configuration of vipercell customer information failed"); + + if (csb->sense) { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerInfo,(unsigned char *)GETOBJ(string,1), + strlen(GETOBJ(string,1))) != STATUS_OK) { + printf("\n Configuration of vipercell customer information failed"); + } + } else { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerInfo,(unsigned char *)" ", + 1) != STATUS_OK) { + printf("\n Configuration of vipercell customer information failed"); + } + } + break; + + + case CONF_CUSTEMAIL : + + NVGEN_STRING_MIB(MIB_viperCellCustomerEmail, + "\n Show Configuration of vipercell customer email failed"); + + if (csb->sense) { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerEmail, + (unsigned char *)GETOBJ(string,1),strlen(GETOBJ(string,1))) != STATUS_OK) { + printf("\n Configuration of vipercell customer email failed"); + } + } else { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerEmail,(unsigned char *)" ", + 1) != STATUS_OK) { + printf("\n Configuration of vipercell customer email failed"); + } + } + break; + + + case CONF_CUSTPHONE : + + NVGEN_STRING_MIB(MIB_viperCellCustomerPhone, + "\n Show Configuration of vipercell customer phone failed"); + if (csb->sense) { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerPhone, + (unsigned char *)GETOBJ(string,1),strlen(GETOBJ(string,1))) != STATUS_OK) { + printf("\n Configuration of vipercell customer phone failed"); + } + } else { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerPhone, + (unsigned char *)" ",1) != STATUS_OK) { + printf("\n Configuration of vipercell customer phone failed"); + } + } + break; + + + case CONF_CUSTNAME : + NVGEN_STRING_MIB(MIB_viperCellCustomerName, + "\n Show Configuration of vipercell customer name failed"); + if (csb->sense) { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerName,(unsigned char *)GETOBJ(string,1), + strlen(GETOBJ(string,1))) != STATUS_OK) { + printf("\n Configuration of vipercell customer name failed"); + } + } else { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellCustomerName,(unsigned char *)" ", + 1) != STATUS_OK) { + printf("\n Configuration of vipercell customer name failed"); + } + } + break; + + + case CONF_ASSET : + NVGEN_STRING_MIB(MIB_viperCellAssetNumber, + "\n Show Configuration of vipercell asset number failed"); + + if (csb->sense) { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellAssetNumber,(unsigned char *)GETOBJ(string,1), + strlen(GETOBJ(string,1))) != STATUS_OK) { + printf("\n Configuration of vipercell asset number failed"); + } + } else { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellAssetNumber,(unsigned char *)" ", + 1) != STATUS_OK) { + printf("\n Configuration of vipercell asset number failed"); + } + } + break; + oam_getMibIntVar(MIB_viperCellDefGateway,&nvgen_int); + address_string(nvgen_int,ip_string); + printf("\n ip default-gateway %s",ip_string);; + + + case CONF_LOCATION : + + NVGEN_STRING_MIB(MIB_viperCellLocation, + "\n Show Configuration of vipercell location failed"); + + if (csb->sense) { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellLocation,(unsigned char *)GETOBJ(string,1), + strlen(GETOBJ(string,1))) != STATUS_OK) { + printf("\n Configuration of vipercell location failed"); + } + } else { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellLocation,(unsigned char *)" ", + 1) != STATUS_OK) { + printf("\n Configuration of vipercell location failed"); + } + } + break; + + + case CONF_GW_IPADDR : + NVGEN_IP_MIB(MIB_viperCellDefGateway, + "\n Show Configuration of vipercell gateway ip address failed"); + if (csb->sense) { + if ((oam_setMibIntVar(CLI_MODULE_ID,MIB_viperCellDefGateway, + GETOBJ(paddr,1)->ip_addr))!= STATUS_OK) { + printf("\n Configuration of vipercell gateway IP address failed"); + } + } else { + if (oam_setMibIntVar(CLI_MODULE_ID,MIB_viperCellDefGateway,0)!= STATUS_OK) { + printf("\n Configuration of vipercell gateway IP address failed"); + } + } + break; + + + case CONF_SYS_IPADDR : + if (csb->nvgen) { + sysIpAddrGet(nvgen_string); + printf("\n %s %s",csb->nv_command,nvgen_string); + return; + } + SET_INT_MIB(MIB_viperCellIPAddress,GETOBJ(paddr,1)->ip_addr,0, + "\n Configuration of vipercell IP address failed"); + address_string(GETOBJ(paddr,1)->ip_addr,nvgen_string); + address_hexstring(GETOBJ(paddr,2)->ip_addr,ip_string); + strcat(nvgen_string,ip_string); + sysIpAddrSet(nvgen_string); + break; + + case CONF_SYS_NAME : + NVGEN_STRING_MIB(MIB_viperCellName, + "\n Show Configuration of vipercell name failed"); + if (csb->sense) { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellName,(unsigned char *)GETOBJ(string,1), + strlen(GETOBJ(string,1))) != STATUS_OK) { + printf("\n Configuration of vipercell name failed"); + } + } else { + if (oam_setMibByteAry(CLI_MODULE_ID,MIB_viperCellName,(unsigned char *)" ", + 1) != STATUS_OK) { + printf("\n Configuration of vipercell name failed"); + } + } + break; + case CONF_SNMP_COMM : + NVADDGEN_STRING_MIB(MIB_readCommunity, + "\n Show Configuration of vipercell snmp read community failed",TRUE,FALSE); + NVADDGEN_STRING_MIB(MIB_writeCommunity, + "\n Show Configuration of vipercell snmp write community failed",FALSE,TRUE); + if (csb->sense) { + oam_setMibByteAry(CLI_MODULE_ID,MIB_readCommunity,(unsigned char *) GETOBJ(string,1), + strlen(GETOBJ(string,1))); + oam_setMibByteAry(CLI_MODULE_ID,MIB_writeCommunity,(unsigned char *) GETOBJ(string,2), + strlen(GETOBJ(string,2))); + } else { + oam_setMibByteAry(CLI_MODULE_ID,MIB_readCommunity,(unsigned char *)" ",1); + oam_setMibByteAry(CLI_MODULE_ID,MIB_writeCommunity,(unsigned char *)" ",1); + } + } +} + + + +/* + * voice over ip parameter configuration + */ + +void voip_parameters (parseinfo *csb) +{ + switch (csb->which) { + case COUNTRY_CODE : + NVGEN_INT_MIB(MIB_h323_t35CountryCode, + "\n Show Configuration voice-over-ip country code failed") + SET_INT_MIB(MIB_h323_t35CountryCode,GETOBJ(int,1),181, + "\n Configuration voice-over-ip country code failed"); + break; + + case CALL_SIG_PORT_NUM : + NVGEN_INT_MIB(MIB_h323_Q931CallSignalingPort, + "\n Show Configuration voice-over-ip signalling port failed"); + SET_INT_MIB(MIB_h323_Q931CallSignalingPort,GETOBJ(int,1),1720, + "\n Configuration voice-over-ip signalling port failed"); + break; + + case GMC_IP_ADDR : + NVGEN_IP_MIB(MIB_h323_GKIPAddress, + "\n Show Configuration gmc ip address failed"); + SET_INT_MIB(MIB_h323_GKIPAddress,GETOBJ(paddr,1)->ip_addr,0, + "\n Configuration gmc ip address failed"); + break; + case GMC_PORT_NUM : + NVGEN_INT_MIB(MIB_h323_GKPort, + "\n Show Configuration gmc port failed"); + SET_INT_MIB(MIB_h323_GKPort,GETOBJ(int,1),1719, + "\n Configuration gmc port failed"); + break; + } +} + +void mspower_commands (parseinfo *csb) +{ + switch(csb->which) { + case MAX_POWER_LEVEL : + NVGEN_INT_MIB(MIB_msTxPwrMaxCellDef, + "\n Show Configuration of ms-power-control max ms tx power failed"); + + SET_INT_MIB(MIB_msTxPwrMaxCellDef,GETOBJ(int,1),30, + "\n Configuration of ms-power-control max ms tx power failed"); + break; + case UPLINK_TARGET : + NVGEN_INT_MIB(MIB_pcLowerThresholdLevParamRxLevelUL, + "\n Show Configuration of ms-power-control uplink power control target failed"); + SET_INT_MIB(MIB_pcLowerThresholdLevParamRxLevelUL,GETOBJ(int,1),30, + "\n Configuration of ms-power-control uplink power control target failed"); + break; + + case SIGNAL_QUALITY : + NVGEN_INT_MIB(MIB_pcAveragingQualHreqave, + "\n Show Configuration of ms-power-control signal-quality-avg-window failed"); + SET_INT_MIB(MIB_pcAveragingQualHreqave,GETOBJ(int,1),4, + "\n Configuration of ms-power-control signal-quality-avg-window failed"); + break; + case SIGNAL_STRENGTH : + NVGEN_INT_MIB(MIB_pcAveragingLevHreqave, + "\n Show Configuration of ms-power-control signal-strength-avg-window failed"); + SET_INT_MIB(MIB_pcAveragingLevHreqave,GETOBJ(int,1),4, + "\n Configuration of ms-power-control signal-strength-avg-window failed"); + break; + } +} + + +static MibTag bts_mib_tags[] = {MIB_allowIMSIAttachDetach,MIB_cellBarred, + MIB_dtxDownlink,MIB_rm_nim_1_0,MIB_emergencyCallRestricted}; + + +static char *bts_nv_str[] = { + " imsi-attach ", + " cell-barred ", + " downlink-dtx ", + " imsi-for-emergency ", + " restricted-emergency-call " +}; + +static char *bts_set_fail[] = { + "\n IMSI Attach enable/disable failed", + "\n Cell barred enable/disable failed", + "\n Downlink dex enable/disable failed", + "\n Imsi for emergency required enable/disable failed", + "\n Restricted emergency call enable/disable failed" + +}; + +static char *bts_dtx_mode[] = { + " ms-may-use-dtx ", + " ms-shall-use-dtx ", + " ms-shall-not-use-dtx " +}; + +static void bts_options_nvgen (void) +{ + long nvgen_int; + int intbuf[2]= {0,0}; + int index; + + printf("\n\n config-cell"); + + for (index = 0;index < 5;index++) { + oam_getMibIntVar(bts_mib_tags[index],&nvgen_int); + if (nvgen_int) { + printf("\n\t bts-options %s enable",bts_nv_str[index]); + } else { + printf("\n\t no bts-options %s enable",bts_nv_str[index]); + } + } + + oam_getMibIntVar(MIB_timerPeriodicUpdateMS,&nvgen_int); + printf("\n\t bts-options location-update-interval %d ",nvgen_int); + + for (index=0;index<16;index++) { + oam_getMibTblEntry(MIBT_notAllowedAccessClassEntry,index,intbuf,sizeof(int)*2); + if (intbuf[1]) { + printf("\n\t bts-options ms-access-class-not-allowed %d",index); + } else { + printf("\n\t no bts-options ms-access-class-not-allowed %d",index); + } + } + + oam_getMibIntVar(MIB_dtxUplink,&nvgen_int); + printf("\n\t bts-options dtx-mode %s",bts_dtx_mode[nvgen_int]); + +} + + +void bts_options (parseinfo *csb) +{ + int intbuf[2] = {0,1}; + int intnobuf[2] = {0,0}; + + switch (csb->which) { + case UPDATE_INTERVAL : + if (csb->nvgen) { + bts_options_nvgen (); + return; + } + SET_INT_MIB(MIB_timerPeriodicUpdateMS,GETOBJ(int,1),30, + "\n Configuration of update interval failed"); + break; + + case ACCESS_CLASS : + if (csb->nvgen) { + return; + } + if (csb->sense) { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_notAllowedAccessClassEntry,GETOBJ(int,1),intbuf, + sizeof(int) *2); + } else { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_notAllowedAccessClassEntry,GETOBJ(int,1),intnobuf,sizeof(int) *2); + } + break; + + case DTX_MODE_OPTIONS : + NVGEN_INT_MIB(MIB_dtxUplink, + "\n Show Configuration of downlink dtx failed"); + SET_INT_MIB(MIB_dtxUplink,GETOBJ(int,1),2, + "\n Configuration of downlink dtx failed"); + break; + case ENABLE_OPTIONS : + SET_INT_MIB(bts_mib_tags[GETOBJ(int,1)],1,0, + bts_set_fail[GETOBJ(int,1)]); + break; + } +} + + +static void authentication_nvgen (parseinfo *csb) +{ + long nvgen_int1,nvgen_int2; + oam_getMibIntVar(MIB_mm_authenticationRequired,&nvgen_int1); + oam_getMibIntVar(MIB_mm_cipheringRequired,&nvgen_int2); + + if (nvgen_int1 && nvgen_int2){ + printf("\n %s ciphering enable",csb->nv_command); + return; + } + + if (nvgen_int1) { + printf("\n %s enable",csb->nv_command); + return; + } + + if (!nvgen_int1) { + printf("\n no %s ciphering enable",csb->nv_command); + } +} + + +/* + * system feature control parameters + */ + +void sysfeature_commands (parseinfo *csb) +{ + switch (csb->which) { + case CELL_BARR_ENABLE : + NVGEN_BOOL_MIB(MIB_rm_nim_1_1, + "\n Show Configuration of cell barring failed"); + SET_INT_MIB(MIB_rm_nim_1_1,csb->sense,0, + "\n Configuration of cell barring failed"); + break; + + case SMS_CB_ENABLE : + NVGEN_BOOL_MIB (MIB_rm_nim_0_1, + "\n Show Configuration of sms cb failed"); + SET_INT_MIB(MIB_rm_nim_0_1,csb->sense,0, + "\n Configuration of sms cb failed"); + break; + + case AUTH_FREQ_VAL : + NVGEN_INT_MIB(MIB_rm_nim_0_7, + "\n Show Configuration of authenticaion frequency failed"); + SET_INT_MIB(MIB_rm_nim_0_7,GETOBJ(int,1),1, + "\n Configuration of authenticaion frequency failed"); + break; + case AUTH_CIPH_ENABLE : + if (csb->nvgen) { + authentication_nvgen(csb); + return; + } + SET_INT_MIB(MIB_mm_authenticationRequired,csb->sense,0, + "\n Configuration of authenticaion failed"); + SET_INT_MIB(MIB_mm_cipheringRequired,GETOBJ(int,1),0, + "\n Configuration of ciphering failed"); + + break; + } +} + +void gp10_config_cdr_data(parseinfo *csb) +{ + + switch (csb->which){ + + case CONFIG_CDR_CLIENT_SSL_ENABLE: + NVGEN_BOOL_MIB(MIB_cdrClientSSLEnable, + "\nShow configuration of cdr client ssl enable failed"); + SET_INT_MIB(MIB_cdrClientSSLEnable,csb->sense,0, + "\nConfiguration of cdr client ssl failed"); + break; + + case CONFIG_CDR_PASSWORD: + if (csb->nvgen) { + return; + } + + if(csb->sense) { + if(SavePwdCdr((unsigned char *)GETOBJ(string, 2)) == 0) { + printf("\nConfiguration of CDR Client password failed\n"); + } + } else { + if(SavePwdCdr("") == 0) { + printf("\nConfiguration of CDR Client password failed\n"); + } + } + break; + default: + printf("\n Incorrect data"); + break; + } /* END SWITCH */ +} /* gp10_config_cdr_data() */ + +void handover_control_average_nv (parseinfo *csb) +{ + long nvgen_int; + + oam_getMibIntVar(MIB_hoThresholdLevParamNx,&nvgen_int); + printf("\n %s N5 %d",csb->nv_command,nvgen_int); + oam_getMibIntVar(MIB_hoThresholdQualParamNx,&nvgen_int); + printf("\n %s N6 %d",csb->nv_command,nvgen_int); + oam_getMibIntVar(MIB_hoThresholdLevParamPx,&nvgen_int); + printf("\n %s P5 %d",csb->nv_command,nvgen_int); + oam_getMibIntVar(MIB_hoThresholdQualParamPx,&nvgen_int); + printf("\n %s P6 %d",csb->nv_command,nvgen_int); +} + +static void handover_control_str_nv (parseinfo *csb) +{ + long nvgen_int; + + oam_getMibIntVar(MIB_hoThresholdQualParamRxQualUL,&nvgen_int); + printf("\n %s uplink quality %d",csb->nv_command,nvgen_int); + oam_getMibIntVar(MIB_hoThresholdQualParamRxQualDL,&nvgen_int); + printf("\n %s downlink quality %d",csb->nv_command,nvgen_int); + oam_getMibIntVar(MIB_hoThresholdLevParamRxLevelUL,&nvgen_int); + printf("\n %s uplink strength %d",csb->nv_command,nvgen_int); + oam_getMibIntVar(MIB_hoThresholdLevParamRxLevelDL,&nvgen_int); + printf("\n %s downlink strength %d",csb->nv_command,nvgen_int); +} + +void handover_control_commands (parseinfo *csb) +{ + switch (csb->which) { + case HANDOVER_AVERAGE : + if (csb->nvgen) { + handover_control_average_nv(csb); + return; + } + switch (GETOBJ(int,1)) { + case HANDOVER_N5 : + NVGEN_INT_MIB(MIB_hoThresholdLevParamNx, + "\n Show Configuration of N5 failed"); + SET_INT_MIB(MIB_hoThresholdLevParamNx,GETOBJ(int,2),4, + "\n Configuration of N5 failed"); + break; + case HANDOVER_N6 : + NVGEN_INT_MIB(MIB_hoThresholdQualParamNx, + "\n Show Configuration of N6 failed"); + SET_INT_MIB(MIB_hoThresholdQualParamNx,GETOBJ(int,2),4, + "\n Configuration of N6 failed"); + break; + case HANDOVER_P5 : + NVGEN_INT_MIB(MIB_hoThresholdLevParamPx, + "\n Show Configuration of P5 failed"); + SET_INT_MIB(MIB_hoThresholdLevParamPx,GETOBJ(int,2),4, + "\n Configuration of P5 failed"); + break; + case HANDOVER_P6 : + NVGEN_INT_MIB(MIB_hoThresholdQualParamPx, + "\n Show Configuration of P6 failed"); + SET_INT_MIB(MIB_hoThresholdQualParamPx,GETOBJ(int,2),4, + "\n Configuration of P6 failed"); + break; + } + break; + + case HANDOVER_QUALITY : + switch (GETOBJ(int,1)) { + case UPLINK : + SET_INT_MIB(MIB_hoThresholdQualParamRxQualUL,GETOBJ(int,2),4, + "\n Configuration of uplink quality failed"); + break; + case DOWNLINK : + SET_INT_MIB(MIB_hoThresholdQualParamRxQualDL,GETOBJ(int,2),4, + "\n Configuration of downlink quality failed"); + break; + } + break; + + case HANDOVER_STRENGTH : + if (csb->nvgen) { + handover_control_str_nv(csb); + return; + } + switch (GETOBJ(int,1)) { + case UPLINK : + SET_INT_MIB(MIB_hoThresholdLevParamRxLevelUL,GETOBJ(int,2),20, + "\n Configuration of uplink strength failed"); + break; + case DOWNLINK : + SET_INT_MIB(MIB_hoThresholdLevParamRxLevelDL,GETOBJ(int,2),20, + "\n Configuration of downlink strength failed"); + break; + } + } +} +
+
+#define LOG_DEST_CONSOLE 0x0001
+#define LOG_DEST_NETWORK 0x0002
+#define LOG_DEST_FILE 0x0004
+ +int logging_dest=LOG_DEST_CONSOLE;
+int log_port; +long log_host; + + +extern void ViperLogSetConsolePrintOptions__Fi(BOOL); +void logging_option (parseinfo *csb)
+{
+ char log_ipaddr[16];
+
+ if (csb->nvgen) {
+
+ if(logging_dest==0){
+ printf("\nlogging not configured\n");
+ return;
+ }
+
+ if(logging_dest & LOG_DEST_CONSOLE){
+ printf("\nlogging console");
+ }
+ if(logging_dest & LOG_DEST_NETWORK){
+ if (log_host != 0) {
+ if (log_port != 0)
+ printf("\nlogging %s %d",address_string(log_host,log_ipaddr),log_port);
+ else
+ printf("\nlogging %s",address_string(log_host,log_ipaddr));
+ }
+ }
+ if(logging_dest & LOG_DEST_FILE){
+ printf("\nlogging file");
+ }
+
+ return;
+ }
+
+
+ if (!csb->sense) {
+ switch(logging_dest){
+ case LOG_DEST_CONSOLE:
+ logging_dest &= ~LOG_DEST_CONSOLE;
+ break;
+ case LOG_DEST_FILE:
+ logging_dest &= ~LOG_DEST_FILE;
+ break;
+ case LOG_DEST_NETWORK:
+ logging_dest &= ~LOG_DEST_NETWORK;
+ break;
+ }
+ return;
+ }
+
+ switch (csb->which) {
+ case LOG_CONSOLE :
+ logging_dest |= LOG_DEST_CONSOLE;
+ break;
+ case LOG_FILE :
+ logging_dest |= LOG_DEST_FILE;
+ break;
+ case LOG_HOST :
+ logging_dest |= LOG_DEST_NETWORK;
+ log_host = GETOBJ(paddr,1)->ip_addr;
+ address_string(GETOBJ(paddr,1)->ip_addr,log_ipaddr);
+ if (GETOBJ(int,1) != 0) {
+ log_port = GETOBJ(int,1);
+ ViperLogSetDestPort(GETOBJ(int,1));
+ }
+ ViperLogSetDestAddress(log_ipaddr);
+ break;
+ }
+}
+ + + +void gp10_sub_config_exit (parseinfo *csb) +{ + set_mode_byname(&csb->mode,"configure",MODE_VERBOSE); +} + +void gp10_cell_sub_config_exit (parseinfo *csb) +{ + set_mode_byname(&csb->mode,"config-cell",MODE_VERBOSE); +} diff --git a/data/mnet/GP10/Host/cli/src/trx_chain.c b/data/mnet/GP10/Host/cli/src/trx_chain.c new file mode 100644 index 0000000..241f0a3 --- /dev/null +++ b/data/mnet/GP10/Host/cli/src/trx_chain.c @@ -0,0 +1,167 @@ +#include "parser_if.h" + +#include "oam_api.h" +#include "mibtags.h" +#include "MnetModuleId.h" + +#define TCH_FULL 1 +#define BCCH_COMBINED 5 +#define USE_BCC 0 + +/* + * Parse chains for transceiver configuration + */ +#define ALTERNATE NONE +#include "../include/cfg_trx.h" +LINK_POINT(cfg_trx, ALTERNATE); +#undef ALTERNATE + + + +static parser_extension_request cfg_trx_init_table[] = { + { PARSE_ADD_CFG_GP10_CELL_TRX, &pname(cfg_trx) }, + { PARSE_LIST_END, NULL } +}; + +/* + * Register the parser chain + */ +void cfg_trx_parser_init (void) +{ + parser_add_command_list(cfg_trx_init_table,"config"); +} + +static char *admin_state[] = { + " locked ", + " unlocked ", + " shutting-down " +}; +void trx_nvgen () +{ + long nvgen_int,channel; + CellAllocationEntry cell_entry; + CarrierFrequencyEntry freq_entry; + ChannelEntry chan_entry; + + printf("\n\n transceiver 0"); + + oam_getMibTblEntry(MIBT_cellAllocationEntry,0,&cell_entry,sizeof(CellAllocationEntry)); + printf("\n\t bts-cell-allocation %d",cell_entry.cellAllocation); + + oam_getMibTblEntry(MIBT_carrierFrequency_0_Entry,0,&freq_entry,sizeof(CarrierFrequencyEntry)); + printf("\n\t radio-carrier radio-frequency %d",freq_entry.carrierFrequency); + + oam_getMibIntVar(MIB_txPwrMaxReduction_0,&nvgen_int); + printf("\n\t radio-carrier transmit-power-reduction %d",nvgen_int); + + oam_getMibIntVar(MIB_basebandAdministrativeState_0,&nvgen_int); + printf("\n\t administrative-state %s",admin_state[nvgen_int]); + + for (channel=0;channel < 8;channel++) { + oam_getMibTblEntry(MIBT_channel_0_Entry,channel,&chan_entry,sizeof(ChannelEntry)); + printf("\n\t channel-table %d channel-combination %s training-sequence USE-BCC administrative-state %s",channel, + (chan_entry.channelCombination == BCCH_COMBINED)?"BCCH-COMBINED":"TCH-FULL", + admin_state[chan_entry.channelAdministrativeState]); + } + printf("\n\n transceiver 1"); + + oam_getMibTblEntry(MIBT_cellAllocationEntry,1,&cell_entry,sizeof(CellAllocationEntry)); + printf("\n\t bts-cell-allocation %d",cell_entry.cellAllocation); + + oam_getMibTblEntry(MIBT_carrierFrequency_1_Entry,0,&freq_entry,sizeof(CarrierFrequencyEntry)); + printf("\n\t radio-carrier radio-frequency %d",freq_entry.carrierFrequency); + + oam_getMibIntVar(MIB_txPwrMaxReduction_1,&nvgen_int); + printf("\n\t radio-carrier transmit-power-reduction %d",nvgen_int); + + oam_getMibIntVar(MIB_basebandAdministrativeState_1,&nvgen_int); + printf("\n\t administrative-state %s",admin_state[nvgen_int]); + + for (channel=0;channel < 8;channel++) { + oam_getMibTblEntry(MIBT_channel_1_Entry,channel,&chan_entry,sizeof(ChannelEntry)); + printf("\n\t channel-table %d channel-combination TCH-FULL training-sequence USE-BCC adminstration-state %s",channel,admin_state[chan_entry.channelAdministrativeState]); + } +} + +/* + * command handler for transceiver parameters + */ +void transceiver_parameters (parseinfo *csb) +{ + int ifnum; + int intbuf[7]; + + ifnum = (int) GETOBJ(udb,current1); + + switch (csb->which) { + case TRX_RADIO_FREQUENCY : + intbuf[0] = 0; + if (csb->sense) { + intbuf[1] = GETOBJ(int,1); + } else { + intbuf[1] = 0; + } + if (ifnum == 0) { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_carrierFrequency_0_Entry,0,intbuf, + sizeof(int) *2); + } else { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_carrierFrequency_1_Entry,0,intbuf, + sizeof(int) *2); + } + break; + + case TRX_POWER_REDUCTION : + if (ifnum == 0) { + SET_INT_MIB(MIB_txPwrMaxReduction_0,GETOBJ(int,1),0, + "\n Configuration of transmit power reduction failed"); + } else { + SET_INT_MIB(MIB_txPwrMaxReduction_1,GETOBJ(int,1),0, + "\n Configuration of transmit power reduction failed"); + } + break; + + case TRX_CHANNEL_TABLE : + intbuf[0] = 0; + intbuf[1] = GETOBJ(int,1); + intbuf[2] = GETOBJ(int,3); + intbuf[3] = 0; + intbuf[4] = USE_BCC; + if (csb->sense) { + intbuf[5] = GETOBJ(int,2); + } else { + intbuf[5] = STATE_UNLOCKED; + } + intbuf[6] = 1; + + if (ifnum == 0) { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_channel_0_Entry,GETOBJ(int,1),intbuf, + sizeof(int) * 7); + } else { + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_channel_1_Entry,GETOBJ(int,1),intbuf, + sizeof(int) * 7); + } + break; + + case TRX_ADMIN_STATE : + if (ifnum == 0) { + SET_INT_MIB( MIB_basebandAdministrativeState_0,GETOBJ(int,1),1, + "\n Configuration of Administrative state failed"); + } else { + SET_INT_MIB( MIB_basebandAdministrativeState_1,GETOBJ(int,1),1, + "\n Configuration of Administrative state failed"); + } + break; + + case TRX_ARFCN_NUMBER : + intbuf[0] = 0; + if (csb->sense) { + intbuf[1] = GETOBJ(int,1); + } else { + intbuf[1] = 0; + } + oam_setMibTblEntry(CLI_MODULE_ID,MIBT_cellAllocationEntry,ifnum,intbuf, + sizeof(int) *2); + break; + } +} + |