diff options
author | Vadim Yanitskiy <axilirator@gmail.com> | 2017-07-04 20:55:12 +0700 |
---|---|---|
committer | Vadim Yanitskiy <axilirator@gmail.com> | 2017-11-19 17:35:07 +0700 |
commit | 8baa369b239a262251af87d45cd4dfc4bfc5f4db (patch) | |
tree | 73952e36f0dbae179e0fe35e89557a0e8434fa88 /src/host/trxcon/trxcon.c | |
parent | 2e18fe463176702fd38f933f8691580fbc28cd9d (diff) |
host/trxcon/scheduler: implement management functions
This change introduces some new functions to configure
TDMA scheduler. They can be grouped as follows:
- Scheduler management functions
- sched_trx_init()
- sched_trx_reset()
- sched_trx_shutdown()
- Timeslot management functions
- sched_trx_add_ts()
- sched_trx_find_ts()
- sched_trx_del_ts()
- sched_trx_reset_ts()
- sched_trx_configure_ts()
- Logical channel management functions
- sched_trx_activate_lchan()
- sched_trx_deactivate_lchan()
- sched_trx_find_lchan()
Change-Id: I6d0f437a68f0eb4e22bf635bf899b08673571085
Diffstat (limited to 'src/host/trxcon/trxcon.c')
-rw-r--r-- | src/host/trxcon/trxcon.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/host/trxcon/trxcon.c b/src/host/trxcon/trxcon.c index ace2f79a..791bd25d 100644 --- a/src/host/trxcon/trxcon.c +++ b/src/host/trxcon/trxcon.c @@ -42,6 +42,8 @@ #include "l1ctl.h" #include "l1ctl_link.h" #include "l1ctl_proto.h" +#include "scheduler.h" +#include "sched_trx.h" #define COPYRIGHT \ "Copyright (C) 2016-2017 by Vadim Yanitskiy <axilirator@gmail.com>\n" \ @@ -90,7 +92,9 @@ static void trxcon_fsm_managed_action(struct osmo_fsm_inst *fi, } break; case L1CTL_EVENT_RESET_REQ: + trx_if_cmd_poweroff(app_data.trx); trx_if_cmd_echo(app_data.trx); + sched_trx_reset(app_data.trx); break; case TRX_EVENT_RESET_IND: /* TODO: send proper reset type */ @@ -270,6 +274,11 @@ int main(int argc, char **argv) if (rc) goto exit; + /* Init scheduler */ + rc = sched_trx_init(app_data.trx); + if (rc) + goto exit; + LOGP(DAPP, LOGL_NOTICE, "Init complete\n"); if (app_data.daemonize) { @@ -286,6 +295,7 @@ int main(int argc, char **argv) exit: /* Close active connections */ l1ctl_link_shutdown(app_data.l1l); + sched_trx_shutdown(app_data.trx); trx_if_close(app_data.trx); /* Shutdown main state machine */ |