VTY: Allow for per-BTS-model specific config file write functions
This way a BTS module can append config data to the TS, TRX and BTS sections.
This commit is contained in:
parent
a0fe72de6f
commit
face7edc62
|
@ -426,6 +426,8 @@ enum gsm_bts_type {
|
|||
GSM_BTS_TYPE_RBS2000,
|
||||
};
|
||||
|
||||
struct vty;
|
||||
|
||||
struct gsm_bts_model {
|
||||
struct llist_head list;
|
||||
|
||||
|
@ -434,6 +436,10 @@ struct gsm_bts_model {
|
|||
|
||||
int (*oml_rcvmsg)(struct msgb *msg);
|
||||
|
||||
void (*config_write_bts)(struct vty *vty, struct gsm_bts *bts);
|
||||
void (*config_write_trx)(struct vty *vty, struct gsm_bts_trx *trx);
|
||||
void (*config_write_ts)(struct vty *vty, struct gsm_bts_trx_ts *ts);
|
||||
|
||||
struct tlv_definition nm_att_tlvdef;
|
||||
|
||||
struct bitvec features;
|
||||
|
|
|
@ -333,6 +333,9 @@ static void config_write_ts_single(struct vty *vty, struct gsm_bts_trx_ts *ts)
|
|||
}
|
||||
}
|
||||
config_write_e1_link(vty, &ts->e1_link, " ");
|
||||
|
||||
if (ts->trx->bts->model->config_write_ts)
|
||||
ts->trx->bts->model->config_write_ts(vty, ts);
|
||||
}
|
||||
|
||||
static void config_write_trx_single(struct vty *vty, struct gsm_bts_trx *trx)
|
||||
|
@ -352,6 +355,9 @@ static void config_write_trx_single(struct vty *vty, struct gsm_bts_trx *trx)
|
|||
config_write_e1_link(vty, &trx->rsl_e1_link, " rsl ");
|
||||
vty_out(vty, " rsl e1 tei %u%s", trx->rsl_tei, VTY_NEWLINE);
|
||||
|
||||
if (trx->bts->model->config_write_trx)
|
||||
trx->bts->model->config_write_trx(vty, trx);
|
||||
|
||||
for (i = 0; i < TRX_NR_TS; i++)
|
||||
config_write_ts_single(vty, &trx->ts[i]);
|
||||
}
|
||||
|
@ -500,6 +506,9 @@ static void config_write_bts_single(struct vty *vty, struct gsm_bts *bts)
|
|||
|
||||
config_write_bts_gprs(vty, bts);
|
||||
|
||||
if (bts->model->config_write_bts)
|
||||
bts->model->config_write_bts(vty, bts);
|
||||
|
||||
llist_for_each_entry(trx, &bts->trx_list, list)
|
||||
config_write_trx_single(vty, trx);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue