Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG UE
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenXG
OpenXG UE
Commits
0ea91a9b
Commit
0ea91a9b
authored
Jul 16, 2020
by
Andrew Burger
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Debugging msg4
parent
bf62b0aa
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
62 additions
and
44 deletions
+62
-44
nfapi/oai_integration/nfapi_vnf.c
nfapi/oai_integration/nfapi_vnf.c
+2
-1
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h
+1
-1
openair2/PHY_INTERFACE/phy_stub_UE.c
openair2/PHY_INTERFACE/phy_stub_UE.c
+9
-3
openair2/RRC/LTE/rrc_UE.c
openair2/RRC/LTE/rrc_UE.c
+2
-2
targets/RT/USER/lte-ue.c
targets/RT/USER/lte-ue.c
+48
-37
No files found.
nfapi/oai_integration/nfapi_vnf.c
View file @
0ea91a9b
...
@@ -504,7 +504,8 @@ int phy_rach_indication(struct nfapi_vnf_p7_config *config, nfapi_rach_indicatio
...
@@ -504,7 +504,8 @@ int phy_rach_indication(struct nfapi_vnf_p7_config *config, nfapi_rach_indicatio
int
phy_harq_indication
(
struct
nfapi_vnf_p7_config
*
config
,
nfapi_harq_indication_t
*
ind
)
{
int
phy_harq_indication
(
struct
nfapi_vnf_p7_config
*
config
,
nfapi_harq_indication_t
*
ind
)
{
struct
PHY_VARS_eNB_s
*
eNB
=
RC
.
eNB
[
0
][
0
];
struct
PHY_VARS_eNB_s
*
eNB
=
RC
.
eNB
[
0
][
0
];
LOG_D
(
MAC
,
"%s() NFAPI SFN/SF:%d number_of_harqs:%u
\n
"
,
__FUNCTION__
,
NFAPI_SFNSF2DEC
(
ind
->
sfn_sf
),
ind
->
harq_indication_body
.
number_of_harqs
);
LOG_D
(
MAC
,
"%s() NFAPI Frame: %d Subframe: %d number_of_harqs:%u
\n
"
,
__FUNCTION__
,
NFAPI_SFNSF2SFN
(
ind
->
sfn_sf
),
NFAPI_SFNSF2SF
(
ind
->
sfn_sf
),
ind
->
harq_indication_body
.
number_of_harqs
);
LOG_E
(
MAC
,
"%s entered
\n
"
,
__func__
);
LOG_E
(
MAC
,
"%s entered
\n
"
,
__func__
);
pthread_mutex_lock
(
&
eNB
->
UL_INFO_mutex
);
pthread_mutex_lock
(
&
eNB
->
UL_INFO_mutex
);
if
(
NFAPI_MODE
==
NFAPI_MODE_VNF
){
if
(
NFAPI_MODE
==
NFAPI_MODE_VNF
){
...
...
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h
View file @
0ea91a9b
...
@@ -2566,7 +2566,7 @@ typedef struct {
...
@@ -2566,7 +2566,7 @@ typedef struct {
}
nfapi_harq_indication_tdd_rel13_t
;
}
nfapi_harq_indication_tdd_rel13_t
;
#define NFAPI_HARQ_INDICATION_TDD_REL13_TAG 0x204F
#define NFAPI_HARQ_INDICATION_TDD_REL13_TAG 0x204F
typedef
struct
{
typedef
struct
{
nfapi_tl_t
tl
;
nfapi_tl_t
tl
;
uint8_t
harq_tb1
;
uint8_t
harq_tb1
;
uint8_t
harq_tb2
;
uint8_t
harq_tb2
;
...
...
openair2/PHY_INTERFACE/phy_stub_UE.c
View file @
0ea91a9b
...
@@ -700,8 +700,13 @@ int ul_config_req_UE_MAC(nfapi_ul_config_request_t *req,
...
@@ -700,8 +700,13 @@ int ul_config_req_UE_MAC(nfapi_ul_config_request_t *req,
req
->
ul_config_request_body
.
rach_prach_frequency_resources
,
req
->
ul_config_request_body
.
rach_prach_frequency_resources
,
req
->
ul_config_request_body
.
srs_present
);
req
->
ul_config_request_body
.
srs_present
);
int
sfn
=
timer_frame
;
// int sfn = timer_frame; // Needs the ul_config_req sfn_sf
int
sf
=
timer_subframe
;
// int sf = timer_subframe;
LOG_D
(
MAC
,
"ul_config_req Frame: %d Subframe: %d Proxy Frame: %u Subframe: %u
\n
"
,
NFAPI_SFNSF2SFN
(
req
->
sfn_sf
),
NFAPI_SFNSF2SF
(
req
->
sfn_sf
),
timer_frame
,
timer_subframe
);
int
sfn
=
NFAPI_SFNSF2SFN
(
req
->
sfn_sf
);
// Needs the ul_config_req sfn_sf
int
sf
=
NFAPI_SFNSF2SF
(
req
->
sfn_sf
);
LOG_D
(
MAC
,
LOG_D
(
MAC
,
"ul_config_req_UE_MAC() TOTAL NUMBER OF UL_CONFIG PDUs: %d, SFN/SF: "
"ul_config_req_UE_MAC() TOTAL NUMBER OF UL_CONFIG PDUs: %d, SFN/SF: "
...
@@ -1345,8 +1350,9 @@ const char *hexdump(const void *data, size_t data_len, char *out, size_t out_len
...
@@ -1345,8 +1350,9 @@ const char *hexdump(const void *data, size_t data_len, char *out, size_t out_len
LOG_E
(
MAC
,
"CQI_IND sent to Proxy, Size: %d
\n
"
,
encoded_size
);
LOG_E
(
MAC
,
"CQI_IND sent to Proxy, Size: %d
\n
"
,
encoded_size
);
break
;
break
;
case
NFAPI_HARQ_INDICATION
:
case
NFAPI_HARQ_INDICATION
:
LOG_E
(
MAC
,
"HARQ_IND sent to Proxy, Size: %d
\n
"
,
encoded_size
);
encoded_size
=
nfapi_p7_message_pack
(
&
UL
->
harq_ind
,
buffer
,
sizeof
(
buffer
),
NULL
);
encoded_size
=
nfapi_p7_message_pack
(
&
UL
->
harq_ind
,
buffer
,
sizeof
(
buffer
),
NULL
);
LOG_E
(
MAC
,
"HARQ_IND sent to Proxy, Size: %d Frame %d Subframe %d
\n
"
,
encoded_size
,
NFAPI_SFNSF2SFN
(
UL
->
harq_ind
.
sfn_sf
),
NFAPI_SFNSF2SF
(
UL
->
harq_ind
.
sfn_sf
));
break
;
break
;
case
NFAPI_RX_SR_INDICATION
:
// is this the right nfapi message_id? Ask Raymond
case
NFAPI_RX_SR_INDICATION
:
// is this the right nfapi message_id? Ask Raymond
encoded_size
=
nfapi_p7_message_pack
(
&
UL
->
sr_ind
,
buffer
,
sizeof
(
buffer
),
NULL
);
encoded_size
=
nfapi_p7_message_pack
(
&
UL
->
sr_ind
,
buffer
,
sizeof
(
buffer
),
NULL
);
...
...
openair2/RRC/LTE/rrc_UE.c
View file @
0ea91a9b
...
@@ -505,8 +505,8 @@ static void rrc_ue_generate_RRCConnectionSetupComplete( const protocol_ctxt_t *c
...
@@ -505,8 +505,8 @@ static void rrc_ue_generate_RRCConnectionSetupComplete( const protocol_ctxt_t *c
}
}
size
=
do_RRCConnectionSetupComplete
(
ctxt_pP
->
module_id
,
buffer
,
Transaction_id
,
nas_msg_length
,
nas_msg
);
size
=
do_RRCConnectionSetupComplete
(
ctxt_pP
->
module_id
,
buffer
,
Transaction_id
,
nas_msg_length
,
nas_msg
);
LOG_I
(
RRC
,
"[UE %d][RAPROC] Frame %d : Logical Channel UL-DCCH (SRB1), Generating RRCConnectionSetupComplete (bytes%d, eNB %d)
\n
"
,
LOG_I
(
RRC
,
"[UE %d][RAPROC] Frame %d
Subframe %d
: Logical Channel UL-DCCH (SRB1), Generating RRCConnectionSetupComplete (bytes%d, eNB %d)
\n
"
,
ctxt_pP
->
module_id
,
ctxt_pP
->
frame
,
size
,
eNB_index
);
ctxt_pP
->
module_id
,
ctxt_pP
->
frame
,
ctxt_pP
->
subframe
,
size
,
eNB_index
);
LOG_D
(
RLC
,
LOG_D
(
RLC
,
"[FRAME %05d][RRC_UE][MOD %02d][][--- PDCP_DATA_REQ/%d Bytes (RRCConnectionSetupComplete to eNB %d MUI %d) --->][PDCP][MOD %02d][RB %02d]
\n
"
,
"[FRAME %05d][RRC_UE][MOD %02d][][--- PDCP_DATA_REQ/%d Bytes (RRCConnectionSetupComplete to eNB %d MUI %d) --->][PDCP][MOD %02d][RB %02d]
\n
"
,
ctxt_pP
->
frame
,
ctxt_pP
->
module_id
+
NB_eNB_INST
,
size
,
eNB_index
,
rrc_mui
,
ctxt_pP
->
module_id
+
NB_eNB_INST
,
DCCH
);
ctxt_pP
->
frame
,
ctxt_pP
->
module_id
+
NB_eNB_INST
,
size
,
eNB_index
,
rrc_mui
,
ctxt_pP
->
module_id
+
NB_eNB_INST
,
DCCH
);
...
...
targets/RT/USER/lte-ue.c
View file @
0ea91a9b
...
@@ -1040,54 +1040,65 @@ static void *UE_phy_stub_standalone_pnf_task(void *arg)
...
@@ -1040,54 +1040,65 @@ static void *UE_phy_stub_standalone_pnf_task(void *arg)
int
num_pairs
=
0
;
int
num_pairs
=
0
;
int
num_lone
=
0
;
int
num_lone
=
0
;
int
last_sfn_sf
=
-
1
;
while
(
!
oai_exit
)
{
while
(
!
oai_exit
)
{
bool
sent_any
=
false
;
bool
sent_any
=
false
;
int
sfn_sf
=
current_sfn_sf
;
if
(
sem_wait
(
&
sfn_semaphore
)
!=
0
)
{
if
(
sfn_sf
==
last_sfn_sf
)
{
LOG_E
(
MAC
,
"sem_wait() error
\n
"
);
if
(
sem_wait
(
&
sfn_semaphore
)
!=
0
)
abort
();
{
LOG_E
(
MAC
,
"sem_wait() error
\n
"
);
abort
();
}
continue
;
}
}
int
sfn_sf
=
current_sfn_sf
;
last_sfn_sf
=
sfn_sf
;
LOG_E
(
MAC
,
"received from proxy frame %d subframe %d
\n
"
,
NFAPI_SFNSF2SFN
(
sfn_sf
),
NFAPI_SFNSF2SF
(
sfn_sf
));
nfapi_dl_config_request_t
*
dl_config_req
=
get_queue
(
&
dl_config_req_queue
);
nfapi_dl_config_request_t
*
dl_config_req
=
get_queue
(
&
dl_config_req_queue
);
nfapi_tx_request_pdu_t
*
tx_request_pdu_list
=
get_queue
(
&
tx_req_pdu_queue
);
nfapi_tx_request_pdu_t
*
tx_request_pdu_list
=
get_queue
(
&
tx_req_pdu_queue
);
nfapi_ul_config_request_t
*
ul_config_req
=
get_queue
(
&
ul_config_req_queue
);
nfapi_ul_config_request_t
*
ul_config_req
=
get_queue
(
&
ul_config_req_queue
);
nfapi_hi_dci0_request_t
*
hi_dci0_req
=
get_queue
(
&
hi_dci0_req_queue
);
nfapi_hi_dci0_request_t
*
hi_dci0_req
=
get_queue
(
&
hi_dci0_req_queue
);
if
((
dl_config_req
!=
NULL
)
!=
(
tx_request_pdu_list
!=
NULL
))
{
uint64_t
start
=
clock_usec
();
uint64_t
deadline
=
start
+
10000
;
for
(;;)
{
LOG_I
(
MAC
,
"received from proxy frame %d subframe %d
\n
"
,
if
(
dl_config_req
==
NULL
)
{
NFAPI_SFNSF2SFN
(
sfn_sf
),
NFAPI_SFNSF2SF
(
sfn_sf
));
dl_config_req
=
get_queue
(
&
dl_config_req_queue
);
if
(
dl_config_req
!=
NULL
)
{
}
LOG_I
(
MAC
,
"dl_config_req pdus: %u
\n
"
,
if
(
tx_request_pdu_list
==
NULL
)
{
dl_config_req
->
dl_config_request_body
.
number_pdu
);
tx_request_pdu_list
=
get_queue
(
&
tx_req_pdu_queue
);
}
}
if
(
tx_request_pdu_list
!=
NULL
)
{
if
(
dl_config_req
&&
tx_request_pdu_list
)
{
LOG_I
(
MAC
,
"tx_req segments: %u
\n
"
,
uint64_t
elapsed
=
clock_usec
()
-
start
;
tx_request_pdu_list
->
num_segments
);
if
(
elapsed
>
1000
)
{
LOG_E
(
MAC
,
"Time difference between dl_config_req & tx_pdu is: %"
PRIu64
"usec (%d %d)
\n
"
,
elapsed
,
num_lone
,
num_pairs
);
}
break
;
}
if
(
clock_usec
()
>
deadline
)
{
LOG_E
(
MAC
,
"In behemoth dl_config_req: %p tx_req_pdu_list: %p (%d %d)
\n
"
,
dl_config_req
,
tx_request_pdu_list
,
num_lone
,
num_pairs
);
break
;
}
}
}
}
if
(
ul_config_req
!=
NULL
)
{
LOG_I
(
MAC
,
"ul_config_req pdus: %u
\n
"
,
ul_config_req
->
ul_config_request_body
.
number_of_pdus
);
}
if
(
hi_dci0_req
!=
NULL
)
{
LOG_I
(
MAC
,
"hi_dci0_req pdus: %u
\n
"
,
hi_dci0_req
->
hi_dci0_request_body
.
number_of_dci
);
}
// if ((dl_config_req != NULL) != (tx_request_pdu_list != NULL)) {
// uint64_t start = clock_usec();
// uint64_t deadline = start + 10000;
// for (;;) {
// if (dl_config_req == NULL) {
// dl_config_req = get_queue(&dl_config_req_queue);
// }
// if (tx_request_pdu_list == NULL) {
// tx_request_pdu_list = get_queue(&tx_req_pdu_queue);
// }
// if (dl_config_req && tx_request_pdu_list) {
// uint64_t elapsed = clock_usec() - start;
// if (elapsed > 1000) {
// LOG_E(MAC, "Time difference between dl_config_req & tx_pdu is: %" PRIu64 "usec (%d %d)\n",
// elapsed, num_lone, num_pairs);
// }
// break;
// }
// if (clock_usec() > deadline) {
// LOG_E(MAC, "In behemoth dl_config_req: %p tx_req_pdu_list: %p (%d %d)\n", dl_config_req,
// tx_request_pdu_list, num_lone, num_pairs);
// break;
// }
// }
// }
if
((
dl_config_req
!=
NULL
)
!=
(
tx_request_pdu_list
!=
NULL
))
{
if
((
dl_config_req
!=
NULL
)
!=
(
tx_request_pdu_list
!=
NULL
))
{
num_lone
++
;
num_lone
++
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment