PTCCH: properly handle RACH.ind for PCU_IF_SAPI_PTCCH

Change-Id: I482d60a46b9d253dfe0b16140eac9fea6420b30c
Related: OS#1545
diff --git a/src/osmo-bts-sysmo/sysmo_l1_if.c b/src/osmo-bts-sysmo/sysmo_l1_if.c
index 9b310cc..751629c 100644
--- a/src/osmo-bts-sysmo/sysmo_l1_if.c
+++ b/src/osmo-bts-sysmo/sysmo_l1_if.c
@@ -208,10 +208,6 @@
 			data_ind->u32Fn,
 			&meas);
 		break;
-	case GsmL1_Sapi_Ptcch:
-		// FIXME
-		rc = -1;
-		break;
 	default:
 		LOGP(DL1IF, LOGL_NOTICE, "Rx PH-DATA.ind for unknown L1 SAPI %s\n",
 			get_value_string(femtobts_l1sapi_names, data_ind->sapi));
@@ -240,8 +236,21 @@
 		return 0;
 
 	DEBUGP(DL1IF, "Rx PH-RA.ind");
-	bts_update_tbf_ta("PH-RA", ra_ind->u32Fn, fl1h->trx_no, ra_ind->u8Tn,
-			qta2ta(ra_ind->measParam.i16BurstTiming), true);
+
+	switch (ra_ind->sapi) {
+	case GsmL1_Sapi_Pdtch:
+		bts_update_tbf_ta("PH-RA", ra_ind->u32Fn, fl1h->trx_no, ra_ind->u8Tn,
+				  qta2ta(ra_ind->measParam.i16BurstTiming), true);
+		break;
+	case GsmL1_Sapi_Ptcch:
+		pcu_rx_rach_ind_pdtch(fl1h->trx_no, ra_ind->u8Tn, ra_ind->u32Fn,
+				      ra_ind->measParam.i16BurstTiming);
+		break;
+	default:
+		LOGP(DL1IF, LOGL_NOTICE, "Rx PH-RA.ind for unknown L1 SAPI %s\n",
+		     get_value_string(femtobts_l1sapi_names, ra_ind->sapi));
+		return -ENOTSUP;
+	}
 
 	return 0;
 }