Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
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
littleBu
OpenXG-RAN
Commits
f2229adb
Commit
f2229adb
authored
Feb 17, 2024
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
nr_schedule_response(): make right order (222.10.0x "API message order")
parent
4fe8d3cd
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
21 additions
and
18 deletions
+21
-18
openair1/SCHED_NR/fapi_nr_l1.c
openair1/SCHED_NR/fapi_nr_l1.c
+21
-18
No files found.
openair1/SCHED_NR/fapi_nr_l1.c
View file @
f2229adb
...
...
@@ -166,27 +166,18 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO)
clear_slot_beamid
(
gNB
,
slot
);
// reset beam_id information for the slot to be processed
DevAssert
(
NFAPI_MODE
==
NFAPI_MONOLITHIC
);
bool
is_dl
=
slot_type
==
NR_DOWNLINK_SLOT
||
slot_type
==
NR_MIXED_SLOT
;
if
(
slot_type
==
NR_DOWNLINK_SLOT
||
slot_type
==
NR_MIXED_SLOT
)
{
processingData_L1tx_t
*
msgTx
=
gNB
->
msgDataTx
;
msgTx
->
num_ul_pdcch
=
number_ul_dci_pdu
;
/* store the sched_response_id for the TX thread to release it when done */
msgTx
->
sched_response_id
=
Sched_INFO
->
sched_response_id
;
DevAssert
(
Sched_INFO
->
DL_req
.
SFN
==
frame
);
DevAssert
(
Sched_INFO
->
DL_req
.
Slot
==
slot
);
nr_schedule_dl_tti_req
(
gNB
,
&
Sched_INFO
->
DL_req
);
for
(
int
i
=
0
;
i
<
number_ul_dci_pdu
;
i
++
)
msgTx
->
ul_pdcch_pdu
[
i
]
=
UL_dci_req
->
ul_dci_pdu_list
[
i
];
processingData_L1tx_t
*
msgTx
=
gNB
->
msgDataTx
;
msgTx
->
num_ul_pdcch
=
number_ul_dci_pdu
;
/* store the sched_response_id for the TX thread to release it when done */
msgTx
->
sched_response_id
=
Sched_INFO
->
sched_response_id
;
nr_schedule_tx_req
(
gNB
,
&
Sched_INFO
->
TX_req
);
DevAssert
(
Sched_INFO
->
DL_req
.
SFN
==
frame
);
DevAssert
(
Sched_INFO
->
DL_req
.
Slot
==
slot
);
/* Both the current thread and the TX thread will access the sched_info
* at the same time, so increase its reference counter, so that it is
* released only when both threads are done with it.
*/
inc_ref_sched_response
(
Sched_INFO
->
sched_response_id
);
if
(
is_dl
)
{
nr_schedule_dl_tti_req
(
gNB
,
&
Sched_INFO
->
DL_req
);
}
for
(
int
i
=
0
;
i
<
number_ul_tti_pdu
;
i
++
)
{
...
...
@@ -233,6 +224,18 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO)
}
}
if
(
is_dl
)
{
nr_schedule_tx_req
(
gNB
,
&
Sched_INFO
->
TX_req
);
for
(
int
i
=
0
;
i
<
number_ul_dci_pdu
;
i
++
)
msgTx
->
ul_pdcch_pdu
[
i
]
=
UL_dci_req
->
ul_dci_pdu_list
[
i
];
/* Both the current thread and the TX thread will access the sched_info
* at the same time, so increase its reference counter, so that it is
* released only when both threads are done with it.
*/
inc_ref_sched_response
(
Sched_INFO
->
sched_response_id
);
}
/* this thread is done with the sched_info, decrease the reference counter */
if
((
slot_type
==
NR_DOWNLINK_SLOT
||
slot_type
==
NR_MIXED_SLOT
)
&&
NFAPI_MODE
==
NFAPI_MONOLITHIC
)
{
LOG_D
(
NR_PHY
,
"Calling dref_sched_response for id %d in %d.%d (sched_response)
\n
"
,
Sched_INFO
->
sched_response_id
,
frame
,
slot
);
...
...
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