aboutsummaryrefslogtreecommitdiffstats
path: root/src/nacc_fsm.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/nacc_fsm.h')
-rw-r--r--src/nacc_fsm.h12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/nacc_fsm.h b/src/nacc_fsm.h
index beea0f75..cab62af5 100644
--- a/src/nacc_fsm.h
+++ b/src/nacc_fsm.h
@@ -12,10 +12,6 @@
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#pragma once
@@ -26,6 +22,7 @@
struct GprsMs;
struct gprs_rlcmac_tbf;
+struct gprs_rlcmac_pdch;
enum nacc_fsm_event {
NACC_EV_RX_CELL_CHG_NOTIFICATION, /* data: Packet_Cell_Change_Notification_t* */
@@ -49,9 +46,8 @@ enum nacc_fsm_states {
struct nacc_fsm_ctx {
struct osmo_fsm_inst *fi;
struct GprsMs* ms; /* back pointer */
- struct ctrl_handle *neigh_ctrl;
- struct ctrl_connection *neigh_ctrl_conn;
struct neigh_cache_entry_key neigh_key; /* target cell info from MS */
+ bool neigh_key_present; /* target cell info from MS is present */
struct osmo_cell_global_id_ps cgi_ps; /* target cell info resolved from req_{arfcn+bsic} */
struct si_cache_value si_info; /* SI info resolved from SGSN, to be sent to MS */
size_t si_info_bytes_sent; /* How many bytes out of si_info->si_len were already sent to MS */
@@ -63,8 +59,8 @@ struct nacc_fsm_ctx {
/* passed as data in NACC_EV_CREATE_RLCMAC_MSG */
struct nacc_ev_create_rlcmac_msg_ctx {
struct gprs_rlcmac_tbf *tbf; /* target tbf to create messages for */
+ const struct gprs_rlcmac_pdch *pdch; /* TS where the created DL ctrl block is to be sent */
uint32_t fn; /* FN where the created DL ctrl block is to be sent */
- uint8_t ts; /* TS where the created DL ctrl block is to be sent */
struct msgb *msg; /* to be filled by FSM during event processing */
};
@@ -77,3 +73,5 @@ bool nacc_fsm_is_waiting_si_resolution(const struct nacc_fsm_ctx *ctx,
const struct osmo_cell_global_id_ps *cgi_ps);
bool nacc_fsm_exp_ctrl_ack(const struct nacc_fsm_ctx *ctx, uint32_t fn, uint8_t ts);
+
+bool tbf_nacc_rts(const struct gprs_rlcmac_tbf *tbf, const struct gprs_rlcmac_pdch *pdch);