This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Ivan Kluchnikov gerrit-no-reply at lists.osmocom.orgIvan Kluchnikov has submitted this change and it was merged. Change subject: all models: fix vty write: bts_model_config_write_phy ...................................................................... all models: fix vty write: bts_model_config_write_phy The vty write for phy/inst is broken, leading to a written-out config being unparsable; fix all of these: - in common/vty.c, actually call bts_model_config_write_phy_inst(). - in sysmo and lc15 write the phy instance elements in bts_model_config_write_phy_inst() and not in bts_model_config_write_phy(), which lead to writing the members above their parent 'instance'. - sysmo, lc15 and oct omit the bts_model_config_write_phy_inst() implementation. This did not cause a compilation problem because it was in fact never called. - sysmo writes 'clock-source None' when clk_src is zero, leading to unparsable config (related: OS#1944). Instead omit the 'clock-source' when zero. - osmo-bts-trx seems to be the only part that lacks nothing, yet it also didn't work properly because bts_model_config_write_phy_inst() was never called. This problem existed since commit d784e50747b8cf0ce505489e1451f75be5ccbd4b "Introduce new phy_link and phy_instance abstraction" Change-Id: Icc54fa70045c8fa58e78cf9f788c21a437edfbd4 --- M src/common/vty.c M src/osmo-bts-litecell15/lc15bts_vty.c M src/osmo-bts-octphy/octphy_vty.c M src/osmo-bts-sysmo/sysmobts_vty.c 4 files changed, 19 insertions(+), 21 deletions(-) Approvals: Harald Welte: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/common/vty.c b/src/common/vty.c index b48afa4..646ac87 100644 --- a/src/common/vty.c +++ b/src/common/vty.c @@ -358,6 +358,7 @@ if (!pinst) break; vty_out(vty, " instance %u%s", pinst->num, VTY_NEWLINE); + bts_model_config_write_phy_inst(vty, pinst); } } diff --git a/src/osmo-bts-litecell15/lc15bts_vty.c b/src/osmo-bts-litecell15/lc15bts_vty.c index 0ffe663..46f73ab 100644 --- a/src/osmo-bts-litecell15/lc15bts_vty.c +++ b/src/osmo-bts-litecell15/lc15bts_vty.c @@ -329,7 +329,11 @@ vty_out(vty, " nominal-tx-power %d%s", trx->nominal_power,VTY_NEWLINE); } -static void write_phy_inst(struct vty *vty, struct phy_instance *pinst) +void bts_model_config_write_phy(struct vty *vty, struct phy_link *plink) +{ +} + +void bts_model_config_write_phy_inst(struct vty *vty, struct phy_instance *pinst) { int i; @@ -344,14 +348,6 @@ if (pinst->u.lc15.calib_path) vty_out(vty, " trx-calibration-path %s%s", pinst->u.lc15.calib_path, VTY_NEWLINE); -} - -void bts_model_config_write_phy(struct vty *vty, struct phy_link *plink) -{ - struct phy_instance *pinst; - - llist_for_each_entry(pinst, &plink->instances, list) - write_phy_inst(vty, pinst); } int bts_model_vty_init(struct gsm_bts *bts) diff --git a/src/osmo-bts-octphy/octphy_vty.c b/src/osmo-bts-octphy/octphy_vty.c index c2d1fbb..abfac1e 100644 --- a/src/osmo-bts-octphy/octphy_vty.c +++ b/src/osmo-bts-octphy/octphy_vty.c @@ -219,6 +219,10 @@ VTY_NEWLINE); } +void bts_model_config_write_phy_inst(struct vty *vty, struct phy_instance *pinst) +{ +} + void bts_model_config_write_bts(struct vty *vty, struct gsm_bts *bts) { } diff --git a/src/osmo-bts-sysmo/sysmobts_vty.c b/src/osmo-bts-sysmo/sysmobts_vty.c index e67d8be..330c9ce 100644 --- a/src/osmo-bts-sysmo/sysmobts_vty.c +++ b/src/osmo-bts-sysmo/sysmobts_vty.c @@ -443,7 +443,11 @@ VTY_NEWLINE); } -static void write_phy_inst(struct vty *vty, struct phy_instance *pinst) +void bts_model_config_write_phy(struct vty *vty, struct phy_link *plink) +{ +} + +void bts_model_config_write_phy_inst(struct vty *vty, struct phy_instance *pinst) { int i; @@ -464,17 +468,10 @@ if (pinst->u.sysmobts.calib_path) vty_out(vty, " trx-calibration-path %s%s", pinst->u.sysmobts.calib_path, VTY_NEWLINE); - vty_out(vty, " clock-source %s%s", - get_value_string(femtobts_clksrc_names, - pinst->u.sysmobts.clk_src), VTY_NEWLINE); -} - -void bts_model_config_write_phy(struct vty *vty, struct phy_link *plink) -{ - struct phy_instance *pinst; - - llist_for_each_entry(pinst, &plink->instances, list) - write_phy_inst(vty, pinst); + if (pinst->u.sysmobts.clk_src) + vty_out(vty, " clock-source %s%s", + get_value_string(femtobts_clksrc_names, + pinst->u.sysmobts.clk_src), VTY_NEWLINE); } int bts_model_vty_init(struct gsm_bts *bts) -- To view, visit https://gerrit.osmocom.org/1761 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: Icc54fa70045c8fa58e78cf9f788c21a437edfbd4 Gerrit-PatchSet: 4 Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Owner: Neels Hofmeyr <nhofmeyr at sysmocom.de> Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org> Gerrit-Reviewer: Ivan Kluchnikov <kluchnikovi at gmail.com> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Max <msuraev at sysmocom.de> Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr at sysmocom.de>