Added "show ba 1" to view BA lists via VTY interface.
This commit is contained in:
parent
3928d757f0
commit
b763a07c47
|
@ -187,6 +187,8 @@ int gsm322_dump_sorted_plmn(struct osmocom_ms *ms);
|
|||
int gsm322_dump_cs_list(struct gsm322_cellsel *cs, uint8_t flags,
|
||||
void (*print)(void *, const char *, ...), void *priv);
|
||||
int gsm322_dump_forbidden_la(struct osmocom_ms *ms);
|
||||
int gsm322_dump_ba_list(struct gsm322_cellsel *cs, uint16_t mcc, uint16_t mnc,
|
||||
void (*print)(void *, const char *, ...), void *priv);
|
||||
void start_cs_timer(struct gsm322_cellsel *cs, int sec, int micro);
|
||||
void start_loss_timer(struct gsm322_cellsel *cs, int sec, int micro);
|
||||
|
||||
|
|
|
@ -3055,7 +3055,7 @@ int gsm322_dump_cs_list(struct gsm322_cellsel *cs, uint8_t flags,
|
|||
s = cs->list[i].sysinfo;
|
||||
if (!s || !(cs->list[i].flags & flags))
|
||||
continue;
|
||||
print(priv, "%04d |%4d |", i, cs->list[i].rxlev_db);
|
||||
print(priv, "%4d |%4d |", i, cs->list[i].rxlev_db);
|
||||
if ((cs->list[i].flags & GSM322_CS_FLAG_SYSINFO)) {
|
||||
print(priv, "%03d |%02d |", s->mcc, s->mnc);
|
||||
if ((cs->list[i].flags & GSM322_CS_FLAG_FORBIDD))
|
||||
|
@ -3101,6 +3101,28 @@ int gsm322_dump_forbidden_la(struct osmocom_ms *ms)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int gsm322_dump_ba_list(struct gsm322_cellsel *cs, uint16_t mcc, uint16_t mnc,
|
||||
void (*print)(void *, const char *, ...), void *priv)
|
||||
{
|
||||
struct gsm322_ba_list *ba;
|
||||
int i;
|
||||
|
||||
llist_for_each_entry(ba, &cs->ba_list, entry) {
|
||||
if (mcc && mnc && (mcc != ba->mcc || mnc != ba->mnc))
|
||||
continue;
|
||||
print(priv, "Band Allocation of network: MCC %03d MNC %02d "
|
||||
"(%s, %s)\n", ba->mcc, ba->mnc, gsm_get_mcc(ba->mcc),
|
||||
gsm_get_mnc(ba->mcc, ba->mnc));
|
||||
for (i = 0; i <= 1023; i++) {
|
||||
if ((ba->freq[i >> 3] & (1 << (i & 7))))
|
||||
print(priv, " %d", i);
|
||||
}
|
||||
print(priv, "\n");
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* initialization
|
||||
*/
|
||||
|
|
|
@ -162,6 +162,26 @@ DEFUN(show_cell_si, show_cell_si_cmd, "show cell MS_NAME <0-1023>",
|
|||
return CMD_SUCCESS;
|
||||
}
|
||||
|
||||
DEFUN(show_ba, show_ba_cmd, "show ba MS_NAME [mcc] [mnc]",
|
||||
SHOW_STR "Display information about band allocations\n")
|
||||
{
|
||||
struct osmocom_ms *ms;
|
||||
uint16_t mcc = 0, mnc = 0;
|
||||
|
||||
ms = get_ms(argv[0], vty);
|
||||
if (!ms)
|
||||
return CMD_WARNING;
|
||||
|
||||
if (argc >= 3) {
|
||||
mcc = atoi(argv[1]);
|
||||
mnc = atoi(argv[2]);
|
||||
}
|
||||
|
||||
gsm322_dump_ba_list(&ms->cellsel, mcc, mnc, print_vty, vty);
|
||||
|
||||
return CMD_SUCCESS;
|
||||
}
|
||||
|
||||
DEFUN(insert_test, insert_test_cmd, "insert testcard MS_NAME [mcc] [mnc]",
|
||||
SHOW_STR "Insert test card\n")
|
||||
{
|
||||
|
@ -180,7 +200,7 @@ DEFUN(insert_test, insert_test_cmd, "insert testcard MS_NAME [mcc] [mnc]",
|
|||
|
||||
if (argc >= 3) {
|
||||
mcc = atoi(argv[1]);
|
||||
mnc = atoi(argv[1]);
|
||||
mnc = atoi(argv[2]);
|
||||
}
|
||||
|
||||
gsm_subscr_testcard(ms, mcc, mnc, "0000000000");
|
||||
|
@ -217,6 +237,7 @@ int ms_vty_init(void)
|
|||
install_element(VIEW_NODE, &show_subscr_cmd);
|
||||
install_element(VIEW_NODE, &show_cell_cmd);
|
||||
install_element(VIEW_NODE, &show_cell_si_cmd);
|
||||
install_element(VIEW_NODE, &show_ba_cmd);
|
||||
|
||||
install_element(VIEW_NODE, &insert_test_cmd);
|
||||
install_element(VIEW_NODE, &remove_sim_cmd);
|
||||
|
|
Loading…
Reference in New Issue