fixeria has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmocom-bb/+/30628 )
Change subject: [WIP] trxcon: implement the missing TRXCON_ST_DCH_TUNING
......................................................................
[WIP] trxcon: implement the missing TRXCON_ST_DCH_TUNING
This is a transient state called 'TUNING DCH' in 3GPP TS 44.004,
Figure 5.1. We may want to have it implemented in the trxcon_fsm
for proper handling of the L1CTL_DM_REL_REQ (TRXCON_EV_DCH_REL_REQ)
and additionally for handling DCH establishment failures.
Change-Id: I817691243d5c45f23bed1d9f8d7d16c002108a38
---
M src/host/trxcon/include/osmocom/bb/trxcon/trxcon_fsm.h
M src/host/trxcon/src/trxcon_fsm.c
2 files changed, 18 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/28/30628/1
diff --git a/src/host/trxcon/include/osmocom/bb/trxcon/trxcon_fsm.h
b/src/host/trxcon/include/osmocom/bb/trxcon/trxcon_fsm.h
index ec0b2c6..75ce6f5 100644
--- a/src/host/trxcon/include/osmocom/bb/trxcon/trxcon_fsm.h
+++ b/src/host/trxcon/include/osmocom/bb/trxcon/trxcon_fsm.h
@@ -12,6 +12,7 @@
TRXCON_ST_FULL_POWER_SCAN,
TRXCON_ST_FBSB_SEARCH,
TRXCON_ST_BCCH_CCCH,
+ TRXCON_ST_DCH_TUNING,
TRXCON_ST_DEDICATED,
TRXCON_ST_PACKET_DATA,
};
diff --git a/src/host/trxcon/src/trxcon_fsm.c b/src/host/trxcon/src/trxcon_fsm.c
index dbab84a..d272dc8 100644
--- a/src/host/trxcon/src/trxcon_fsm.c
+++ b/src/host/trxcon/src/trxcon_fsm.c
@@ -622,8 +622,7 @@
.name = "BCCH_CCCH",
.out_state_mask = S(TRXCON_ST_RESET)
| S(TRXCON_ST_FBSB_SEARCH)
- | S(TRXCON_ST_DEDICATED)
- | S(TRXCON_ST_PACKET_DATA),
+ | S(TRXCON_ST_DCH_TUNING),
.in_event_mask = S(TRXCON_EV_RX_DATA_IND)
| S(TRXCON_EV_SET_CCCH_MODE_REQ)
| S(TRXCON_EV_TX_ACCESS_BURST_REQ)
@@ -631,9 +630,24 @@
| S(TRXCON_EV_DCH_EST_REQ),
.action = &trxcon_st_bcch_ccch_action,
},
+ [TRXCON_ST_DCH_TUNING] = {
+ .name = "DCH_TUNING",
+ .out_state_mask = S(TRXCON_ST_RESET)
+ | S(TRXCON_ST_FBSB_SEARCH)
+ | S(TRXCON_ST_DEDICATED)
+ | S(TRXCON_ST_PACKET_DATA),
+ .in_event_mask = S(TRXCON_EV_DCH_REL_REQ)
+ | S(TRXCON_EV_SET_TCH_MODE_REQ)
+ | S(TRXCON_EV_TX_DATA_REQ)
+ | S(TRXCON_EV_TX_DATA_CNF)
+ | S(TRXCON_EV_RX_DATA_IND)
+ | S(TRXCON_EV_CRYPTO_REQ),
+ .action = &trxcon_st_dch_tuning_action,
+ },
[TRXCON_ST_DEDICATED] = {
.name = "DEDICATED",
.out_state_mask = S(TRXCON_ST_RESET)
+ | S(TRXCON_ST_DCH_TUNING)
| S(TRXCON_ST_FBSB_SEARCH)
| S(TRXCON_ST_DEDICATED)
| S(TRXCON_ST_PACKET_DATA),
@@ -651,6 +665,7 @@
[TRXCON_ST_PACKET_DATA] = {
.name = "PACKET_DATA",
.out_state_mask = S(TRXCON_ST_RESET)
+ | S(TRXCON_ST_DCH_TUNING)
| S(TRXCON_ST_FBSB_SEARCH)
| S(TRXCON_ST_DEDICATED)
| S(TRXCON_ST_PACKET_DATA),
--
To view, visit
https://gerrit.osmocom.org/c/osmocom-bb/+/30628
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: I817691243d5c45f23bed1d9f8d7d16c002108a38
Gerrit-Change-Number: 30628
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange