Update logs to NR_ version and add some new
This commit is contained in:
committed by
Robert Schmidt
parent
1ec528dbdb
commit
bb044cf940
+1
-1
@@ -283,7 +283,7 @@ void fh_if5_south_out(RU_t *ru, int frame, int slot, uint64_t timestamp) {
|
|||||||
for (int aid=0;aid<ru->nb_tx;aid++) buffs[aid] = (void*)&ru->common.txdata[aid][offset];
|
for (int aid=0;aid<ru->nb_tx;aid++) buffs[aid] = (void*)&ru->common.txdata[aid][offset];
|
||||||
struct timespec txmeas;
|
struct timespec txmeas;
|
||||||
clock_gettime(CLOCK_MONOTONIC, &txmeas);
|
clock_gettime(CLOCK_MONOTONIC, &txmeas);
|
||||||
LOG_D(PHY,"IF5 TX %d.%d, TS %llu, buffs[0] %p, buffs[1] %p ener0 %f dB, tx start %d\n",frame,slot,(unsigned long long)timestamp,buffs[0],buffs[1],
|
LOG_D(NR_PHY,"IF5 TX %d.%d, TS %llu, buffs[0] %p, buffs[1] %p ener0 %f dB, tx start %d\n",frame,slot,(unsigned long long)timestamp,buffs[0],buffs[1],
|
||||||
10*log10((double)signal_energy(buffs[0],ru->nr_frame_parms->get_samples_per_slot(slot,ru->nr_frame_parms))),(int)txmeas.tv_nsec);
|
10*log10((double)signal_energy(buffs[0],ru->nr_frame_parms->get_samples_per_slot(slot,ru->nr_frame_parms))),(int)txmeas.tv_nsec);
|
||||||
ru->ifdevice.trx_write_func2(&ru->ifdevice,
|
ru->ifdevice.trx_write_func2(&ru->ifdevice,
|
||||||
timestamp,
|
timestamp,
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ void nr_fill_prach(PHY_VARS_gNB *gNB,
|
|||||||
|
|
||||||
gNB->prach_vars.list[prach_id].frame=SFN;
|
gNB->prach_vars.list[prach_id].frame=SFN;
|
||||||
gNB->prach_vars.list[prach_id].slot=Slot;
|
gNB->prach_vars.list[prach_id].slot=Slot;
|
||||||
|
LOG_D(NR_PHY,"Copying prach pdu %d bytes to index %d\n",(int)sizeof(*prach_pdu),prach_id);
|
||||||
memcpy((void*)&gNB->prach_vars.list[prach_id].pdu,(void*)prach_pdu,sizeof(*prach_pdu));
|
memcpy((void*)&gNB->prach_vars.list[prach_id].pdu,(void*)prach_pdu,sizeof(*prach_pdu));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ void handle_nr_nfapi_ssb_pdu(processingData_L1tx_t *msgTx,int frame,int slot,
|
|||||||
|
|
||||||
uint8_t i_ssb = dl_tti_pdu->ssb_pdu.ssb_pdu_rel15.SsbBlockIndex;
|
uint8_t i_ssb = dl_tti_pdu->ssb_pdu.ssb_pdu_rel15.SsbBlockIndex;
|
||||||
|
|
||||||
LOG_D(PHY,"%d.%d : ssb index %d pbch_pdu: %x\n",frame,slot,i_ssb,dl_tti_pdu->ssb_pdu.ssb_pdu_rel15.bchPayload);
|
LOG_D(NR_PHY,"%d.%d : ssb index %d pbch_pdu: %x\n",frame,slot,i_ssb,dl_tti_pdu->ssb_pdu.ssb_pdu_rel15.bchPayload);
|
||||||
if (msgTx->ssb[i_ssb].active)
|
if (msgTx->ssb[i_ssb].active)
|
||||||
AssertFatal(1==0,"SSB PDU with index %d already active\n",i_ssb);
|
AssertFatal(1==0,"SSB PDU with index %d already active\n",i_ssb);
|
||||||
else {
|
else {
|
||||||
@@ -109,7 +109,7 @@ void handle_nfapi_nr_csirs_pdu(processingData_L1tx_t *msgTx, int frame, int slot
|
|||||||
for (int id = 0; id < NR_SYMBOLS_PER_SLOT; id++) {
|
for (int id = 0; id < NR_SYMBOLS_PER_SLOT; id++) {
|
||||||
NR_gNB_CSIRS_t *csirs = &msgTx->csirs_pdu[id];
|
NR_gNB_CSIRS_t *csirs = &msgTx->csirs_pdu[id];
|
||||||
if (csirs->active == 0) {
|
if (csirs->active == 0) {
|
||||||
LOG_D(PHY,"Frame %d Slot %d CSI_RS with ID %d is now active\n",frame,slot,id);
|
LOG_D(NR_PHY,"Frame %d Slot %d CSI_RS with ID %d is now active\n",frame,slot,id);
|
||||||
csirs->active = 1;
|
csirs->active = 1;
|
||||||
memcpy((void*)&csirs->csirs_pdu, (void*)csirs_pdu, sizeof(nfapi_nr_dl_tti_csi_rs_pdu));
|
memcpy((void*)&csirs->csirs_pdu, (void*)csirs_pdu, sizeof(nfapi_nr_dl_tti_csi_rs_pdu));
|
||||||
found = 1;
|
found = 1;
|
||||||
@@ -181,7 +181,7 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO)
|
|||||||
|
|
||||||
for (int i=0;i<number_dl_pdu;i++) {
|
for (int i=0;i<number_dl_pdu;i++) {
|
||||||
nfapi_nr_dl_tti_request_pdu_t *dl_tti_pdu = &DL_req->dl_tti_request_body.dl_tti_pdu_list[i];
|
nfapi_nr_dl_tti_request_pdu_t *dl_tti_pdu = &DL_req->dl_tti_request_body.dl_tti_pdu_list[i];
|
||||||
LOG_D(PHY,"NFAPI: dl_pdu %d : type %d\n",i,dl_tti_pdu->PDUType);
|
LOG_D(NR_PHY,"NFAPI: dl_pdu %d : type %d\n",i,dl_tti_pdu->PDUType);
|
||||||
switch (dl_tti_pdu->PDUType) {
|
switch (dl_tti_pdu->PDUType) {
|
||||||
case NFAPI_NR_DL_TTI_SSB_PDU_TYPE:
|
case NFAPI_NR_DL_TTI_SSB_PDU_TYPE:
|
||||||
handle_nr_nfapi_ssb_pdu(msgTx,frame,slot,
|
handle_nr_nfapi_ssb_pdu(msgTx,frame,slot,
|
||||||
@@ -189,18 +189,18 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case NFAPI_NR_DL_TTI_PDCCH_PDU_TYPE:
|
case NFAPI_NR_DL_TTI_PDCCH_PDU_TYPE:
|
||||||
LOG_D(PHY,"frame %d, slot %d, Got NFAPI_NR_DL_TTI_PDCCH_PDU_TYPE for %d.%d\n",frame,slot,DL_req->SFN,DL_req->Slot);
|
LOG_D(NR_PHY,"frame %d, slot %d, Got NFAPI_NR_DL_TTI_PDCCH_PDU_TYPE for %d.%d\n",frame,slot,DL_req->SFN,DL_req->Slot);
|
||||||
msgTx->pdcch_pdu[msgTx->num_dl_pdcch] = dl_tti_pdu->pdcch_pdu;
|
msgTx->pdcch_pdu[msgTx->num_dl_pdcch] = dl_tti_pdu->pdcch_pdu;
|
||||||
msgTx->num_dl_pdcch++;
|
msgTx->num_dl_pdcch++;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case NFAPI_NR_DL_TTI_CSI_RS_PDU_TYPE:
|
case NFAPI_NR_DL_TTI_CSI_RS_PDU_TYPE:
|
||||||
LOG_D(PHY,"frame %d, slot %d, Got NFAPI_NR_DL_TTI_CSI_RS_PDU_TYPE for %d.%d\n",frame,slot,DL_req->SFN,DL_req->Slot);
|
LOG_D(NR_PHY,"frame %d, slot %d, Got NFAPI_NR_DL_TTI_CSI_RS_PDU_TYPE for %d.%d\n",frame,slot,DL_req->SFN,DL_req->Slot);
|
||||||
handle_nfapi_nr_csirs_pdu(msgTx,frame,slot,&dl_tti_pdu->csi_rs_pdu);
|
handle_nfapi_nr_csirs_pdu(msgTx,frame,slot,&dl_tti_pdu->csi_rs_pdu);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case NFAPI_NR_DL_TTI_PDSCH_PDU_TYPE:
|
case NFAPI_NR_DL_TTI_PDSCH_PDU_TYPE:
|
||||||
LOG_D(PHY,"frame %d, slot %d, Got NFAPI_NR_DL_TTI_PDSCH_PDU_TYPE for %d.%d\n",frame,slot,DL_req->SFN,DL_req->Slot);
|
LOG_D(NR_PHY,"frame %d, slot %d, Got NFAPI_NR_DL_TTI_PDSCH_PDU_TYPE for %d.%d\n",frame,slot,DL_req->SFN,DL_req->Slot);
|
||||||
nfapi_nr_dl_tti_pdsch_pdu_rel15_t *pdsch_pdu_rel15 = &dl_tti_pdu->pdsch_pdu.pdsch_pdu_rel15;
|
nfapi_nr_dl_tti_pdsch_pdu_rel15_t *pdsch_pdu_rel15 = &dl_tti_pdu->pdsch_pdu.pdsch_pdu_rel15;
|
||||||
uint16_t pduIndex = pdsch_pdu_rel15->pduIndex;
|
uint16_t pduIndex = pdsch_pdu_rel15->pduIndex;
|
||||||
AssertFatal(TX_req->pdu_list[pduIndex].num_TLV == 1, "TX_req->pdu_list[%d].num_TLV %d != 1\n",
|
AssertFatal(TX_req->pdu_list[pduIndex].num_TLV == 1, "TX_req->pdu_list[%d].num_TLV %d != 1\n",
|
||||||
@@ -229,22 +229,22 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO)
|
|||||||
for (int i = 0; i < number_ul_tti_pdu; i++) {
|
for (int i = 0; i < number_ul_tti_pdu; i++) {
|
||||||
switch (UL_tti_req->pdus_list[i].pdu_type) {
|
switch (UL_tti_req->pdus_list[i].pdu_type) {
|
||||||
case NFAPI_NR_UL_CONFIG_PUSCH_PDU_TYPE:
|
case NFAPI_NR_UL_CONFIG_PUSCH_PDU_TYPE:
|
||||||
LOG_D(PHY,"frame %d, slot %d, Got NFAPI_NR_UL_TTI_PUSCH_PDU_TYPE for %d.%d\n", frame, slot, UL_tti_req->SFN, UL_tti_req->Slot);
|
LOG_D(NR_PHY,"frame %d, slot %d, Got NFAPI_NR_UL_TTI_PUSCH_PDU_TYPE for %d.%d\n", frame, slot, UL_tti_req->SFN, UL_tti_req->Slot);
|
||||||
nr_fill_ulsch(gNB,UL_tti_req->SFN, UL_tti_req->Slot, &UL_tti_req->pdus_list[i].pusch_pdu);
|
nr_fill_ulsch(gNB,UL_tti_req->SFN, UL_tti_req->Slot, &UL_tti_req->pdus_list[i].pusch_pdu);
|
||||||
break;
|
break;
|
||||||
case NFAPI_NR_UL_CONFIG_PUCCH_PDU_TYPE:
|
case NFAPI_NR_UL_CONFIG_PUCCH_PDU_TYPE:
|
||||||
LOG_D(PHY,"frame %d, slot %d, Got NFAPI_NR_UL_TTI_PUCCH_PDU_TYPE for %d.%d\n", frame, slot, UL_tti_req->SFN, UL_tti_req->Slot);
|
LOG_D(NR_PHY,"frame %d, slot %d, Got NFAPI_NR_UL_TTI_PUCCH_PDU_TYPE for %d.%d\n", frame, slot, UL_tti_req->SFN, UL_tti_req->Slot);
|
||||||
nr_fill_pucch(gNB,UL_tti_req->SFN, UL_tti_req->Slot, &UL_tti_req->pdus_list[i].pucch_pdu);
|
nr_fill_pucch(gNB,UL_tti_req->SFN, UL_tti_req->Slot, &UL_tti_req->pdus_list[i].pucch_pdu);
|
||||||
break;
|
break;
|
||||||
case NFAPI_NR_UL_CONFIG_PRACH_PDU_TYPE:
|
case NFAPI_NR_UL_CONFIG_PRACH_PDU_TYPE:
|
||||||
LOG_D(PHY,"frame %d, slot %d, Got NFAPI_NR_UL_TTI_PRACH_PDU_TYPE for %d.%d\n", frame, slot, UL_tti_req->SFN, UL_tti_req->Slot);
|
LOG_D(NR_PHY,"frame %d, slot %d, Got NFAPI_NR_UL_TTI_PRACH_PDU_TYPE for %d.%d\n", frame, slot, UL_tti_req->SFN, UL_tti_req->Slot);
|
||||||
nfapi_nr_prach_pdu_t *prach_pdu = &UL_tti_req->pdus_list[i].prach_pdu;
|
nfapi_nr_prach_pdu_t *prach_pdu = &UL_tti_req->pdus_list[i].prach_pdu;
|
||||||
nr_fill_prach(gNB, UL_tti_req->SFN, UL_tti_req->Slot, prach_pdu);
|
nr_fill_prach(gNB, UL_tti_req->SFN, UL_tti_req->Slot, prach_pdu);
|
||||||
if (gNB->RU_list[0]->if_south == LOCAL_RF ||
|
if (gNB->RU_list[0]->if_south == LOCAL_RF ||
|
||||||
gNB->RU_list[0]->if_south == REMOTE_IF5) nr_fill_prach_ru(gNB->RU_list[0], UL_tti_req->SFN, UL_tti_req->Slot, prach_pdu);
|
gNB->RU_list[0]->if_south == REMOTE_IF5) nr_fill_prach_ru(gNB->RU_list[0], UL_tti_req->SFN, UL_tti_req->Slot, prach_pdu);
|
||||||
break;
|
break;
|
||||||
case NFAPI_NR_UL_CONFIG_SRS_PDU_TYPE:
|
case NFAPI_NR_UL_CONFIG_SRS_PDU_TYPE:
|
||||||
LOG_D(PHY,"frame %d, slot %d, Got NFAPI_NR_UL_CONFIG_SRS_PDU_TYPE for %d.%d\n", frame, slot, UL_tti_req->SFN, UL_tti_req->Slot);
|
LOG_D(NR_PHY,"frame %d, slot %d, Got NFAPI_NR_UL_CONFIG_SRS_PDU_TYPE for %d.%d\n", frame, slot, UL_tti_req->SFN, UL_tti_req->Slot);
|
||||||
nr_fill_srs(gNB,UL_tti_req->SFN, UL_tti_req->Slot, &UL_tti_req->pdus_list[i].srs_pdu);
|
nr_fill_srs(gNB,UL_tti_req->SFN, UL_tti_req->Slot, &UL_tti_req->pdus_list[i].srs_pdu);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -120,6 +120,7 @@ void L1_nr_prach_procedures(PHY_VARS_gNB *gNB,int frame,int slot) {
|
|||||||
int prach_id=find_nr_prach(gNB,frame,slot,SEARCH_EXIST);
|
int prach_id=find_nr_prach(gNB,frame,slot,SEARCH_EXIST);
|
||||||
|
|
||||||
if (prach_id>=0) {
|
if (prach_id>=0) {
|
||||||
|
LOG_D(NR_PHY,"%d.%d Got prach entry id %d\n",frame,slot,prach_id);
|
||||||
nfapi_nr_prach_pdu_t *prach_pdu = &gNB->prach_vars.list[prach_id].pdu;
|
nfapi_nr_prach_pdu_t *prach_pdu = &gNB->prach_vars.list[prach_id].pdu;
|
||||||
uint8_t prachStartSymbol;
|
uint8_t prachStartSymbol;
|
||||||
uint8_t N_dur = get_nr_prach_duration(prach_pdu->prach_format);
|
uint8_t N_dur = get_nr_prach_duration(prach_pdu->prach_format);
|
||||||
@@ -140,9 +141,9 @@ void L1_nr_prach_procedures(PHY_VARS_gNB *gNB,int frame,int slot) {
|
|||||||
&max_preamble[0],
|
&max_preamble[0],
|
||||||
&max_preamble_energy[0],
|
&max_preamble_energy[0],
|
||||||
&max_preamble_delay[0]);
|
&max_preamble_delay[0]);
|
||||||
|
LOG_D(NR_PHY,"Freeing PRACH entry %d\n",prach_id);
|
||||||
free_nr_prach_entry(gNB,prach_id);
|
free_nr_prach_entry(gNB,prach_id);
|
||||||
LOG_D(PHY,"[RAPROC] Frame %d, slot %d, occasion %d (prachStartSymbol %d) : Most likely preamble %d, energy %d.%d dB delay %d (prach_energy counter %d)\n",
|
LOG_D(NR_PHY,"[RAPROC] Frame %d, slot %d, occasion %d (prachStartSymbol %d) : Most likely preamble %d, energy %d.%d dB delay %d (prach_energy counter %d)\n",
|
||||||
frame,slot,prach_oc,prachStartSymbol,
|
frame,slot,prach_oc,prachStartSymbol,
|
||||||
max_preamble[0],
|
max_preamble[0],
|
||||||
max_preamble_energy[0]/10,
|
max_preamble_energy[0]/10,
|
||||||
|
|||||||
@@ -105,6 +105,7 @@ NR_Sched_Rsp_t *allocate_sched_response(void)
|
|||||||
|
|
||||||
static void release_sched_response(int sched_response_id)
|
static void release_sched_response(int sched_response_id)
|
||||||
{
|
{
|
||||||
|
LOG_D(NR_MAC,"Releasing sched_response %d\n",sched_response_id);
|
||||||
resp_freelist_next[sched_response_id] = resp_freelist_head;
|
resp_freelist_next[sched_response_id] = resp_freelist_head;
|
||||||
resp_freelist_head = sched_response_id;
|
resp_freelist_head = sched_response_id;
|
||||||
}
|
}
|
||||||
@@ -124,6 +125,7 @@ void deref_sched_response(int sched_response_id)
|
|||||||
AssertFatal(resp_freelist_inited, "sched_response used before init\n");
|
AssertFatal(resp_freelist_inited, "sched_response used before init\n");
|
||||||
AssertFatal(resp_refcount[sched_response_id] > 0, "sched_reponse decreased too much\n");
|
AssertFatal(resp_refcount[sched_response_id] > 0, "sched_reponse decreased too much\n");
|
||||||
|
|
||||||
|
LOG_D(NR_MAC,"resp_refcount[%d] %d\n",sched_response_id,resp_refcount[sched_response_id]);
|
||||||
resp_refcount[sched_response_id]--;
|
resp_refcount[sched_response_id]--;
|
||||||
if (resp_refcount[sched_response_id] == 0)
|
if (resp_refcount[sched_response_id] == 0)
|
||||||
release_sched_response(sched_response_id);
|
release_sched_response(sched_response_id);
|
||||||
@@ -141,6 +143,8 @@ void inc_ref_sched_response(int sched_response_id)
|
|||||||
if (sched_response_id == -1)
|
if (sched_response_id == -1)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
LOG_D(NR_MAC,"Incrementing sched_resp resp_refounct[%d] = %d\n",
|
||||||
|
sched_response_id,resp_refcount[sched_response_id]);
|
||||||
if (pthread_mutex_lock(&resp_mutex))
|
if (pthread_mutex_lock(&resp_mutex))
|
||||||
AssertFatal(0, "pthread_mutex_lock failed\n");
|
AssertFatal(0, "pthread_mutex_lock failed\n");
|
||||||
|
|
||||||
|
|||||||
@@ -337,7 +337,7 @@ void *trx_eth_write_udp_cmd(udpTXelem_t *udpTXelem) {
|
|||||||
TS -= device->txrx_offset;
|
TS -= device->txrx_offset;
|
||||||
int TSinc = (6*256*device->sampling_rate_ratio_d)/device->sampling_rate_ratio_n;
|
int TSinc = (6*256*device->sampling_rate_ratio_d)/device->sampling_rate_ratio_n;
|
||||||
int len=256;
|
int len=256;
|
||||||
LOG_D(PHY,"TS %llu (%llu),txrx_offset %d,d %d, n %d, buff[0] %p buff[1] %p\n",
|
LOG_D(NR_PHY,"in eth send: TS %llu (%llu),txrx_offset %d,d %d, n %d, buff[0] %p buff[1] %p\n",
|
||||||
(unsigned long long)TS,(unsigned long long)timestamp,device->txrx_offset,device->sampling_rate_ratio_d,device->sampling_rate_ratio_n,
|
(unsigned long long)TS,(unsigned long long)timestamp,device->txrx_offset,device->sampling_rate_ratio_d,device->sampling_rate_ratio_n,
|
||||||
buff[0],buff[1]);
|
buff[0],buff[1]);
|
||||||
for (int offset=0;offset<nsamps;offset+=256,TS+=TSinc) {
|
for (int offset=0;offset<nsamps;offset+=256,TS+=TSinc) {
|
||||||
@@ -349,7 +349,7 @@ void *trx_eth_write_udp_cmd(udpTXelem_t *udpTXelem) {
|
|||||||
*(uint8_t *)(buff2 + 2) = len>>8;
|
*(uint8_t *)(buff2 + 2) = len>>8;
|
||||||
*(uint8_t *)(buff2 + 3) = len&0xff;
|
*(uint8_t *)(buff2 + 3) = len&0xff;
|
||||||
for (int aid = 0; aid<nant; aid++) {
|
for (int aid = 0; aid<nant; aid++) {
|
||||||
LOG_D(PHY,"TS %llu (TS0 %llu) aa %d : offset %d, len %d\n",(unsigned long long)TS,(unsigned long long)fhstate->TS0,aid,offset,len);
|
LOG_D(NR_PHY,"TS %llu (TS0 %llu) aa %d : offset %d, len %d\n",(unsigned long long)TS,(unsigned long long)fhstate->TS0,aid,offset,len);
|
||||||
// ECPRI PC_ID (2 bytes)
|
// ECPRI PC_ID (2 bytes)
|
||||||
*(uint16_t *)(buff2 + 4) = aid;
|
*(uint16_t *)(buff2 + 4) = aid;
|
||||||
// bring TX data into 12 MSBs
|
// bring TX data into 12 MSBs
|
||||||
@@ -383,6 +383,7 @@ void *trx_eth_write_udp_cmd(udpTXelem_t *udpTXelem) {
|
|||||||
} // aid
|
} // aid
|
||||||
} // offset
|
} // offset
|
||||||
free(buff);
|
free(buff);
|
||||||
|
LOG_D(NR_PHY,"Returning from eth send\n");
|
||||||
return(NULL);
|
return(NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user