Attention is currently required from: osmith.
Hello Jenkins Builder, laforge,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bsc/+/31340
to look at the new patch set (#2).
Change subject: ho: remove timeout for HO_ST_WAIT_LCHAN_ESTABLISHED
......................................................................
ho: remove timeout for HO_ST_WAIT_LCHAN_ESTABLISHED
Remove placeholder timer T23042. This handover fsm state waits for both
RSL/RR and RTP/MGW to be complete. I've added TTCN-3 tests to ensure
that both cases are covered by existing timer T3101 in lchan fsm state
LCHAN_ST_WAIT_RLL_RTP_ESTABLISH, which on timeout lets the handover
fail.
Related: OS#5787
Related: osmo-ttcn3-hacks I30e1811f97406cff6ba794fcd6882e2bb0205087
Related: osmo-ttcn3-hacks I2f79e3ff988a4315fbef3538f02403b818fa7839
Change-Id: I53468766c3c5fad7d7e275c0f20b5c20677fe4e8
---
M src/osmo-bsc/handover_fsm.c
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/40/31340/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/31340
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I53468766c3c5fad7d7e275c0f20b5c20677fe4e8
Gerrit-Change-Number: 31340
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: neels, laforge, fixeria.
Hello Jenkins Builder, neels,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bsc/+/30307
to look at the new patch set (#3).
Change subject: fsms: use configurable timers instead of T23042
......................................................................
fsms: use configurable timers instead of T23042
T23042 was a placeholder for timers to be filled in later. Replace it
with timers that can be configured via VTY.
Previous timeout for the states was 5s, from using the default of 5 for
undefined timers.
* ASSIGNMENT_ST_WAIT_MGW_ENDPOINT_TO_MSC and
HO_ST_WAIT_MGW_ENDPOINT_TO_MSC:
* Runs gscon_connect_mgw_to_msc() on enter, which waits for one MGCP
CRCX or MDCX response (or changes state immediately)
* Use existing X9 ("Timeout for availability of MGW endpoint"), 5s,
which is already being used by lchan_rtp_fsm for a similar purpose
* HO_ST_WAIT_RR_HO_DETECT:
* Handover initiation as described in 3GPP TS 04.08 § 3.4.4.1:
"The network initiates the handover procedure by sending a HANDOVER
COMMAND message to the mobile station on the main DCCH. It then
starts timer T3103."
* Use existing but unused timer T3103 ("Handover"), 5s
* HO_ST_WAIT_RR_HO_COMPLETE:
* Handover completion as described in 3GPP TS 04.08 § 3.4.4.3:
"When receiving the HANDOVER COMPLETE message, the network stops
timer T3103 and releases the old channels."
* Continue using T3103 with keep_timer = true
Closes: OS#5787
Change-Id: Id0d4d0788f609f3272fc81c80a754383dde25c16
---
M src/osmo-bsc/assignment_fsm.c
M src/osmo-bsc/handover_fsm.c
2 files changed, 4 insertions(+), 4 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/07/30307/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/30307
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: Id0d4d0788f609f3272fc81c80a754383dde25c16
Gerrit-Change-Number: 30307
Gerrit-PatchSet: 3
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: dexter.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/31341 )
Change subject: pcu_l1_if_phy: flexible phy access
......................................................................
Patch Set 4:
(14 comments)
Commit Message:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/3fc333c4_e65006c1
PS3, Line 22: moment only "solitary" modules. The selection mechanism will be
this sentence is not ending (no verb).
Patchset:
PS4:
The idea is good but it needs a bit of rework to follow usual way of specifying drivers (eg. like in the kernel).
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/4258c750_3c2eaa1a
PS3, Line 492: if (the_pcu->phy.l1if_pdch_req) {
this is a bit confusing. Having l1if_pdch_req means there's direct phy access? why?
Can you perhaps add an API "is_direct_phy()" or alike?
File src/osmo-bts-litecell15/lc15_l1_if.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/e4a2898a_90ae728e
PS3, Line 403: static void use_phy(struct l1if_phy *phy)
imho this is following the wrong approach. Instead of passing a function, you should pass a pointer to a struct containing a set of functions (ops). Kind of a virtual function table.
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/b33243c9_15bfa2c0
PS3, Line 413: static const uint8_t name[] = "LC15BTS";
why do you need this to be static? just pass te string directly?
File src/osmo-bts-oc2g/oc2g_l1_if.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/7302e56e_54159936
PS3, Line 418: static const uint8_t name[] = "LC15BTS";
wrong name, it's oc2g.
File src/osmobts_sock.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/e52afe65_5690283b
PS3, Line 113: if (the_pcu->phy.l1if_close_pdch && bts->trx[trx].fl1h) {
not criticial but less confusing: I'd first check for f1h and finally for l1if_close_pdch.
Logically you first want to check whether there's a l1 context, and then, if the driver supports the function, call the function.
Is fl1h actually allocated by the driver? You could even add new APIs to let the driver internally decide whether the trx is being handled or not, not relying on the fl1h pointer being set here.
File src/pcu_l1_if.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/c0f37137_9a536212
PS3, Line 215: if (the_pcu->phy.l1if_pdch_req && bts->trx[trx].fl1h) {
Same comments as in the other file regarding order, API, etc.
You could even simply always call l1if_pdch_req regardless of fl1h being set, and let the driver internally do a noop if not ready?
File src/pcu_l1_if_phy.h:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/98a0856f_8480a5fd
PS3, Line 6: struct l1if_phy {
l1if_phy_ops?
File src/pcu_l1_if_phy.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/631e6054_6eeec2bf
PS3, Line 21: void (*use_phy_cb)(struct l1if_phy *phy);
This is not needed if you pass a struct l1if_phy_ops to pcu_l1if_phy_register.
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/8ad4eeee_6bd68696
PS3, Line 24: void (*init_phy_cb)(void *ctx);
This can go inside l1if_phy_ops
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/227c465d_0a9498f3
PS3, Line 45: l1if_phy_entry->init_phy_cb = init_phy_cb;
this can all go inside l1if_phy_ops and be copied at once copying the whole struct.
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/46ce9a9b_7bd6c7ed
PS3, Line 90: l1if_phy_entry->use_phy_cb(phy);
I think you can really merge l1if_phy_entry and l1if_phy_ops. I see no real reason to have 2 structs.
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/34664682_2fd7c060
PS3, Line 96: memset(phy, 0, sizeof(*phy));
This function should only update a the_pcu->l1if_phy pointer to point to the selected l1if_phy_ops struct.
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/31341
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I8692d1bd5d137a17cf596ee2914722f419c9978d
Gerrit-Change-Number: 31341
Gerrit-PatchSet: 4
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 16 Feb 2023 09:34:43 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: fixeria, pespin.
Hello Jenkins Builder, fixeria, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/31341
to look at the new patch set (#4).
Change subject: pcu_l1_if_phy: flexible phy access
......................................................................
pcu_l1_if_phy: flexible phy access
At the moment we have three different platform specific PHY interfaces,
which can be selected using a compile time option. Since those three all
are intended to be used on embedded platforms this works fine. However,
in the future we plan to add E1 phy support (PHY/CCU is attached via an
E1 line), which shall not be a compiletime distinction. It might be also
thinkable that we might even add multiple E1 phys in the future, so
multiple phy implementations must be able to co-exist.
This patch adds a generic interface that allows for the creation of PHY
modules that are able to register themselves so that they can be
selected dynamically. The "legacy" PHY implementations are not intended
to co-exist next to other PHYs, so it is possible to register them as
"singleton" modules (only one at a time, via compiletime option). For the
moment only "singleton" modules are supported. The selection mechanism
(pcu_sock, pcu_l1_if.cpp) will be introduced with the first resident PHY
implementation (Ericsson E1 CCU support)
Change-Id: I8692d1bd5d137a17cf596ee2914722f419c9978d
Related: OS#5198
---
M src/Makefile.am
M src/gprs_pcu.h
M src/gprs_rlcmac_sched.cpp
M src/osmo-bts-litecell15/lc15_l1_if.c
M src/osmo-bts-oc2g/oc2g_l1_if.c
M src/osmo-bts-sysmo/sysmo_l1_if.c
M src/osmobts_sock.c
M src/pcu_l1_if.cpp
A src/pcu_l1_if_phy.c
M src/pcu_l1_if_phy.h
M src/pcu_main.cpp
11 files changed, 221 insertions(+), 70 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/41/31341/4
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/31341
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I8692d1bd5d137a17cf596ee2914722f419c9978d
Gerrit-Change-Number: 31341
Gerrit-PatchSet: 4
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: fixeria, pespin.
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/31341 )
Change subject: pcu_l1_if_phy: flexible phy access
......................................................................
Patch Set 3:
(1 comment)
Patchset:
PS3:
Comments are welcome. This is a preparation for the Ericsson E1 support where we must be able to have at least one permanent direct PHY support. We might also support more than one BSC co-located BTS in the future, so we also must be able to deal with multiple direct PHYs in the future - at least theoretically.
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/31341
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I8692d1bd5d137a17cf596ee2914722f419c9978d
Gerrit-Change-Number: 31341
Gerrit-PatchSet: 3
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 16 Feb 2023 09:04:14 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/31330 )
Change subject: lc15/oc2g: fix function signature of l1if_open_pdch()
......................................................................
lc15/oc2g: fix function signature of l1if_open_pdch()
The function signatures l1if_open_pdch() in the code for lc15 and oc2g
differ from what is defined in pcu_l1_if_phy.h. Lets update the
signatures so that they match the prototype.
Related: OS#5198
Change-Id: If1693b1b74c1808596d7da639b860f7b226385c0
---
M src/osmo-bts-litecell15/lc15_l1_if.c
M src/osmo-bts-oc2g/oc2g_l1_if.c
2 files changed, 2 insertions(+), 2 deletions(-)
Approvals:
Jenkins Builder: Verified
fixeria: Looks good to me, but someone else must approve
pespin: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
diff --git a/src/osmo-bts-litecell15/lc15_l1_if.c b/src/osmo-bts-litecell15/lc15_l1_if.c
index 13e0fc9..c1b9b71 100644
--- a/src/osmo-bts-litecell15/lc15_l1_if.c
+++ b/src/osmo-bts-litecell15/lc15_l1_if.c
@@ -361,7 +361,7 @@
return 0;
}
-void *l1if_open_pdch(uint8_t trx_no, uint32_t hlayer1)
+void *l1if_open_pdch(uint8_t trx_no, uint32_t hlayer1, struct gsmtap_inst *gsmtap)
{
struct lc15l1_hdl *fl1h;
int rc;
diff --git a/src/osmo-bts-oc2g/oc2g_l1_if.c b/src/osmo-bts-oc2g/oc2g_l1_if.c
index a41e7af..dae5908 100644
--- a/src/osmo-bts-oc2g/oc2g_l1_if.c
+++ b/src/osmo-bts-oc2g/oc2g_l1_if.c
@@ -366,7 +366,7 @@
return 0;
}
-void *l1if_open_pdch(uint8_t trx_no, uint32_t hlayer1)
+void *l1if_open_pdch(uint8_t trx_no, uint32_t hlayer1, struct gsmtap_inst *gsmtap)
{
struct oc2gl1_hdl *fl1h;
int rc;
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/31330
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: If1693b1b74c1808596d7da639b860f7b226385c0
Gerrit-Change-Number: 31330
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged