dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/31574 )
Change subject: pcu_l1_if_phy: add new PHY API function to initialize PHY ......................................................................
pcu_l1_if_phy: add new PHY API function to initialize PHY
The PHY implementations we currently have do not require any initialization that has to run directly on startup. This will change when we introduce support for the E1 based Ericsson RBS CCU. Then we will have to perform at least one elarly initialization (VTY config file). So lets add an API function for PHY initialization now.
Related: OS#5198 Change-Id: Ibf2a3a058c826f6ee5b740eee72d5be94d460517 --- 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/pcu_l1_if_phy.h M src/pcu_main.cpp 5 files changed, 39 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/74/31574/1
diff --git a/src/osmo-bts-litecell15/lc15_l1_if.c b/src/osmo-bts-litecell15/lc15_l1_if.c index 580cdf0..043a3ba 100644 --- a/src/osmo-bts-litecell15/lc15_l1_if.c +++ b/src/osmo-bts-litecell15/lc15_l1_if.c @@ -404,3 +404,8 @@ talloc_free(fl1h); return 0; } + +int l1if_init(void) +{ + return 0; +} diff --git a/src/osmo-bts-oc2g/oc2g_l1_if.c b/src/osmo-bts-oc2g/oc2g_l1_if.c index 48005a2..c827d72 100644 --- a/src/osmo-bts-oc2g/oc2g_l1_if.c +++ b/src/osmo-bts-oc2g/oc2g_l1_if.c @@ -409,3 +409,8 @@ talloc_free(fl1h); return 0; } + +int l1if_init(void) +{ + return 0; +} diff --git a/src/osmo-bts-sysmo/sysmo_l1_if.c b/src/osmo-bts-sysmo/sysmo_l1_if.c index 18378b6..348497f 100644 --- a/src/osmo-bts-sysmo/sysmo_l1_if.c +++ b/src/osmo-bts-sysmo/sysmo_l1_if.c @@ -386,3 +386,8 @@ talloc_free(fl1h); return 0; } + +int l1if_init(void) +{ + return 0; +} diff --git a/src/pcu_l1_if_phy.h b/src/pcu_l1_if_phy.h index 318d0aa..297883b 100644 --- a/src/pcu_l1_if_phy.h +++ b/src/pcu_l1_if_phy.h @@ -3,6 +3,7 @@ #include <stdint.h> #include <osmocom/core/gsmtap_util.h>
+int l1if_init(void); void *l1if_open_pdch(uint8_t trx_no, uint32_t hlayer1, struct gsmtap_inst *gsmtap); int l1if_connect_pdch(void *obj, uint8_t ts); int l1if_pdch_req(void *obj, uint8_t ts, int is_ptcch, uint32_t fn, uint16_t arfcn, uint8_t block_nr, uint8_t *data, diff --git a/src/pcu_main.cpp b/src/pcu_main.cpp index 901ee6c..ec7bddd 100644 --- a/src/pcu_main.cpp +++ b/src/pcu_main.cpp @@ -33,6 +33,7 @@ extern "C" { #include "pcu_vty.h" #include "coding_scheme.h" +#include "pcu_l1_if_phy.h" #include <osmocom/gprs/gprs_bssgp.h> #include <osmocom/gprs/gprs_ns2.h> #include <osmocom/vty/telnet_interface.h> @@ -250,6 +251,12 @@ osmo_cpu_sched_vty_init(tall_pcu_ctx); logging_vty_add_deprecated_subsys(tall_pcu_ctx, "bssgp");
+#ifdef ENABLE_DIRECT_PHY + rc = l1if_init(); + if (rc < 0) + return -EINVAL; +#endif + handle_options(argc, argv); if ((!!spoof_mcc) + (!!spoof_mnc) == 1) { fprintf(stderr, "--mcc and --mnc must be specified "