[S] Change in osmocom-bb[master]: ASCI: Select correct state when returning to idle or group receive mode
jolly has submitted this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email ) ( 1 is the latest approved patch-set. No files were changed between the latest approved patch-set and the submitted one. )Change subject: ASCI: Select correct state when returning to idle or group receive mode .. ASCI: Select correct state when returning to idle or group receive mode This fixes I05957182a57423ad947ab200b52f65fde859e110. Related: OS#5364 and OS#6214 Change-Id: I626195161b987f1ba0065134afcf3936c9c090eb --- M src/host/layer23/src/mobile/gsm48_mm.c 1 file changed, 26 insertions(+), 18 deletions(-) Approvals: laforge: Looks good to me, but someone else must approve Jenkins Builder: Verified fixeria: Looks good to me, approved pespin: Looks good to me, but someone else must approve diff --git a/src/host/layer23/src/mobile/gsm48_mm.c b/src/host/layer23/src/mobile/gsm48_mm.c index afc83f7..e2924f7 100644 --- a/src/host/layer23/src/mobile/gsm48_mm.c +++ b/src/host/layer23/src/mobile/gsm48_mm.c @@ -1236,7 +1236,14 @@ struct gsm48_mmlayer *mm = >mmlayer; struct gsm322_cellsel *cs = >cellsel; struct gsm48_sysinfo *s = >sel_si; - bool vgcs = mm->vgcs.enabled; + + /* When we are in group transmit mode, we return to group receive mode. */ + if (mm->vgcs.enabled) { + LOGP(DMM, LOGL_INFO, "Return to group receive mode.\n"); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, (mm->vgcs.normal_service) ? GSM48_MM_SST_RX_VGCS_NORMAL + : GSM48_MM_SST_RX_VGCS_LIMITED); + return 0; + } if (cs->state != GSM322_C3_CAMPED_NORMALLY && cs->state != GSM322_C7_CAMPED_ANY_CELL) { @@ -1286,9 +1293,7 @@ new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_ATTEMPT_UPDATE); else - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_NORMAL - : GSM48_MM_SST_NORMAL_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_NORMAL_SERVICE); return 0; } @@ -1299,39 +1304,30 @@ if (gsm_subscr_is_forbidden_plmn(subscr, >sel_cgi.lai.plmn)) { /* location update not allowed */ LOGP(DMM, LOGL_INFO, "Loc. upd. not allowed PLMN.\n"); - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_LIMITED_SERVICE); } else if (gsm322_is_forbidden_la(ms, >sel_cgi.lai)) { /* location update not allowed */ LOGP(DMM, LOGL_INFO, "Loc. upd. not allowed LA.\n"); - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_LIMITED_SERVICE); } else /* 4.4.4.9 if cell is barred, don't start */ if ((!subscr->acc_barr && s->cell_barr) || (!subscr->acc_barr && !((subscr->acc_class & 0xfbff) & (s->class_barr ^ 0x { LOGP(DMM, LOGL_INFO, "Loc. upd. no access.\n"); - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_LIMITED_SERVICE); } else { /* location update allowed */ LOGP(DMM, LOGL_INFO, "Loc. upd. allowed.\n"); new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + GSM48_MM_SST_LOC_UPD_NEEDED); } } else { /* location update not allowed */ LOGP(DMM, LOGL_INFO, "We are camping on any cell as returning " "to MM IDLE\n"); - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE,
[S] Change in osmocom-bb[master]: ASCI: Select correct state when returning to idle or group receive mode
Attention is currently required from: jolly. Hello Jenkins Builder, fixeria, laforge, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder The change is no longer submittable: Verified is unsatisfied now. Change subject: ASCI: Select correct state when returning to idle or group receive mode .. ASCI: Select correct state when returning to idle or group receive mode This fixes I05957182a57423ad947ab200b52f65fde859e110. Related: OS#5364 and OS#6214 Change-Id: I626195161b987f1ba0065134afcf3936c9c090eb --- M src/host/layer23/src/mobile/gsm48_mm.c 1 file changed, 26 insertions(+), 18 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/90/34790/2 -- To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-Change-Id: I626195161b987f1ba0065134afcf3936c9c090eb Gerrit-Change-Number: 34790 Gerrit-PatchSet: 2 Gerrit-Owner: jolly Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Attention: jolly Gerrit-MessageType: newpatchset
[S] Change in osmocom-bb[master]: ASCI: Select correct state when returning to idle or group receive mode
Attention is currently required from: jolly. fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email ) Change subject: ASCI: Select correct state when returning to idle or group receive mode .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-Change-Id: I626195161b987f1ba0065134afcf3936c9c090eb Gerrit-Change-Number: 34790 Gerrit-PatchSet: 1 Gerrit-Owner: jolly Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Attention: jolly Gerrit-Comment-Date: Wed, 18 Oct 2023 05:18:59 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
[S] Change in osmocom-bb[master]: ASCI: Select correct state when returning to idle or group receive mode
Attention is currently required from: jolly. laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email ) Change subject: ASCI: Select correct state when returning to idle or group receive mode .. Patch Set 1: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-Change-Id: I626195161b987f1ba0065134afcf3936c9c090eb Gerrit-Change-Number: 34790 Gerrit-PatchSet: 1 Gerrit-Owner: jolly Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Attention: jolly Gerrit-Comment-Date: Tue, 17 Oct 2023 15:47:57 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
[S] Change in osmocom-bb[master]: ASCI: Select correct state when returning to idle or group receive mode
Attention is currently required from: jolly. pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email ) Change subject: ASCI: Select correct state when returning to idle or group receive mode .. Patch Set 1: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-Change-Id: I626195161b987f1ba0065134afcf3936c9c090eb Gerrit-Change-Number: 34790 Gerrit-PatchSet: 1 Gerrit-Owner: jolly Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: pespin Gerrit-Attention: jolly Gerrit-Comment-Date: Tue, 17 Oct 2023 15:37:29 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
[S] Change in osmocom-bb[master]: ASCI: Select correct state when returning to idle or group receive mode
jolly has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email ) Change subject: ASCI: Select correct state when returning to idle or group receive mode .. ASCI: Select correct state when returning to idle or group receive mode This fixes I05957182a57423ad947ab200b52f65fde859e110. Related: OS#5364 and OS#6214 Change-Id: I626195161b987f1ba0065134afcf3936c9c090eb --- M src/host/layer23/src/mobile/gsm48_mm.c 1 file changed, 26 insertions(+), 18 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/90/34790/1 diff --git a/src/host/layer23/src/mobile/gsm48_mm.c b/src/host/layer23/src/mobile/gsm48_mm.c index 072dacc..1a6d711 100644 --- a/src/host/layer23/src/mobile/gsm48_mm.c +++ b/src/host/layer23/src/mobile/gsm48_mm.c @@ -1236,7 +1236,14 @@ struct gsm48_mmlayer *mm = >mmlayer; struct gsm322_cellsel *cs = >cellsel; struct gsm48_sysinfo *s = >sel_si; - bool vgcs = mm->vgcs.enabled; + + /* When we are in group transmit mode, we return to group receive mode. */ + if (mm->vgcs.enabled) { + LOGP(DMM, LOGL_INFO, "Return to group receive mode.\n"); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, (mm->vgcs.normal_service) ? GSM48_MM_SST_RX_VGCS_NORMAL + : GSM48_MM_SST_RX_VGCS_LIMITED); + return 0; + } if (cs->state != GSM322_C3_CAMPED_NORMALLY && cs->state != GSM322_C7_CAMPED_ANY_CELL) { @@ -1286,9 +1293,7 @@ new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_ATTEMPT_UPDATE); else - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_NORMAL - : GSM48_MM_SST_NORMAL_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_NORMAL_SERVICE); return 0; } @@ -1299,39 +1304,30 @@ if (gsm_subscr_is_forbidden_plmn(subscr, >sel_cgi.lai.plmn)) { /* location update not allowed */ LOGP(DMM, LOGL_INFO, "Loc. upd. not allowed PLMN.\n"); - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_LIMITED_SERVICE); } else if (gsm322_is_forbidden_la(ms, >sel_cgi.lai)) { /* location update not allowed */ LOGP(DMM, LOGL_INFO, "Loc. upd. not allowed LA.\n"); - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_LIMITED_SERVICE); } else /* 4.4.4.9 if cell is barred, don't start */ if ((!subscr->acc_barr && s->cell_barr) || (!subscr->acc_barr && !((subscr->acc_class & 0xfbff) & (s->class_barr ^ 0x { LOGP(DMM, LOGL_INFO, "Loc. upd. no access.\n"); - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_LIMITED_SERVICE); } else { /* location update allowed */ LOGP(DMM, LOGL_INFO, "Loc. upd. allowed.\n"); new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + GSM48_MM_SST_LOC_UPD_NEEDED); } } else { /* location update not allowed */ LOGP(DMM, LOGL_INFO, "We are camping on any cell as returning " "to MM IDLE\n"); - new_mm_state(mm, GSM48_MM_ST_MM_IDLE, -(vgcs) ? GSM48_MM_SST_RX_VGCS_LIMITED - : GSM48_MM_SST_LIMITED_SERVICE); + new_mm_state(mm, GSM48_MM_ST_MM_IDLE, GSM48_MM_SST_LIMITED_SERVICE); } return 0; -- To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/34790?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: