From: Max <[email protected]>

Use uint8_t for TRX numbering everywhere (we don't expect hardware with
more than 256 transceivers in the near future). This change helps to
avoid unnecessary casts and make API much clearer.
---
 src/osmo-bts-sysmo/sysmo_l1_if.c | 8 ++++----
 src/osmo-bts-sysmo/sysmo_l1_if.h | 2 +-
 src/pcu_l1_if.cpp                | 9 ++++-----
 3 files changed, 9 insertions(+), 10 deletions(-)

diff --git a/src/osmo-bts-sysmo/sysmo_l1_if.c b/src/osmo-bts-sysmo/sysmo_l1_if.c
index 8572786..8ecbcfb 100644
--- a/src/osmo-bts-sysmo/sysmo_l1_if.c
+++ b/src/osmo-bts-sysmo/sysmo_l1_if.c
@@ -155,7 +155,7 @@ static int handle_ph_readytosend_ind(struct femtol1_hdl 
*fl1h,
        switch (rts_ind->sapi) {
        case GsmL1_Sapi_Pdtch:
        case GsmL1_Sapi_Pacch:
-               rc = pcu_rx_rts_req_pdtch((long)fl1h->priv, rts_ind->u8Tn,
+               rc = pcu_rx_rts_req_pdtch(fl1h->trx, rts_ind->u8Tn,
                        rts_ind->u16Arfcn, rts_ind->u32Fn, rts_ind->u8BlockNbr);
        case GsmL1_Sapi_Ptcch:
                // FIXME
@@ -215,7 +215,7 @@ static int handle_ph_data_ind(struct femtol1_hdl *fl1h,
                        != GsmL1_PdtchPlType_Full)
                        break;
                /* PDTCH / PACCH frame handling */
-               pcu_rx_data_ind_pdtch((long)fl1h->priv, data_ind->u8Tn,
+               pcu_rx_data_ind_pdtch(fl1h->trx, data_ind->u8Tn,
                        data_ind->msgUnitParam.u8Buffer + 1,
                        data_ind->msgUnitParam.u8Size - 1,
                        data_ind->u32Fn,
@@ -357,7 +357,7 @@ int l1if_pdch_req(void *obj, uint8_t ts, int is_ptcch, 
uint32_t fn,
        return 0;
 }

-void *l1if_open_pdch(void *priv, uint32_t hlayer1)
+void *l1if_open_pdch(uint8_t trx, uint32_t hlayer1)
 {
        struct femtol1_hdl *fl1h;
        int rc;
@@ -367,7 +367,7 @@ void *l1if_open_pdch(void *priv, uint32_t hlayer1)
                return NULL;

        fl1h->hLayer1 = hlayer1;
-       fl1h->priv = priv;
+       fl1h->trx = trx;
        fl1h->clk_cal = 0;
        /* default clock source: OCXO */
        fl1h->clk_src = SuperFemto_ClkSrcId_Ocxo;
diff --git a/src/osmo-bts-sysmo/sysmo_l1_if.h b/src/osmo-bts-sysmo/sysmo_l1_if.h
index 6b50d4e..83ca481 100644
--- a/src/osmo-bts-sysmo/sysmo_l1_if.h
+++ b/src/osmo-bts-sysmo/sysmo_l1_if.h
@@ -38,7 +38,7 @@ struct femtol1_hdl {
        struct gsmtap_inst *gsmtap;
        uint32_t gsmtap_sapi_mask;

-       void *priv;                     /* user reference */
+       uint8_t trx;

        struct osmo_timer_list alive_timer;
        unsigned int alive_prim_cnt;
diff --git a/src/pcu_l1_if.cpp b/src/pcu_l1_if.cpp
index 06cf234..b938acf 100644
--- a/src/pcu_l1_if.cpp
+++ b/src/pcu_l1_if.cpp
@@ -42,7 +42,7 @@ extern "C" {

 // FIXME: move this, when changed from c++ to c.
 extern "C" {
-void *l1if_open_pdch(void *priv, uint32_t hlayer1);
+void *l1if_open_pdch(uint8_t trx, uint32_t hlayer1);
 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, uint8_t len);
@@ -315,9 +315,8 @@ static int pcu_rx_info_ind(struct gsm_pcu_if_info_ind 
*info_ind)
        struct gprs_bssgp_pcu *pcu;
        struct gprs_rlcmac_pdch *pdch;
        struct in_addr ia;
-       int rc = 0;
-       int trx, ts;
-       int i;
+       int rc = 0, ts, i;
+       uint8_t trx;

        if (info_ind->version != PCU_IF_VERSION) {
                fprintf(stderr, "PCU interface version number of BTS (%d) is "
@@ -435,7 +434,7 @@ bssgp_failed:
                                info_ind->trx[trx].hlayer1);
                                if (!bts->trx[trx].fl1h)
                                        bts->trx[trx].fl1h = l1if_open_pdch(
-                                               (void *)trx,
+                                               trx,
                                                info_ind->trx[trx].hlayer1);
                        if (!bts->trx[trx].fl1h) {
                                LOGP(DL1IF, LOGL_FATAL, "Failed to open direct "
-- 
2.5.0

Reply via email to