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
wangjie
OpenXG-RAN
Commits
30c2746b
Commit
30c2746b
authored
May 24, 2021
by
Sakthivel Velumani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
call ul_indication again for PUCCH
parent
dbf3b724
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
22 additions
and
1 deletion
+22
-1
executables/nr-ue.c
executables/nr-ue.c
+5
-0
openair1/PHY/defs_nr_UE.h
openair1/PHY/defs_nr_UE.h
+1
-0
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
+1
-0
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
+6
-1
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.h
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.h
+9
-0
No files found.
executables/nr-ue.c
View file @
30c2746b
...
@@ -307,6 +307,7 @@ void processSlotTX(void *arg) {
...
@@ -307,6 +307,7 @@ void processSlotTX(void *arg) {
ul_indication
.
frame_tx
=
proc
->
frame_tx
;
ul_indication
.
frame_tx
=
proc
->
frame_tx
;
ul_indication
.
slot_tx
=
proc
->
nr_slot_tx
;
ul_indication
.
slot_tx
=
proc
->
nr_slot_tx
;
ul_indication
.
thread_id
=
proc
->
thread_id
;
ul_indication
.
thread_id
=
proc
->
thread_id
;
ul_indication
.
ue_sched_mode
=
rxtxD
->
ue_sched_mode
;
UE
->
if_inst
->
ul_indication
(
&
ul_indication
);
UE
->
if_inst
->
ul_indication
(
&
ul_indication
);
}
}
...
@@ -358,6 +359,9 @@ void processSlotRX(void *arg) {
...
@@ -358,6 +359,9 @@ void processSlotRX(void *arg) {
nr_pdcp_tick
(
proc
->
frame_rx
,
proc
->
nr_slot_rx
/
UE
->
frame_parms
.
slots_per_subframe
);
nr_pdcp_tick
(
proc
->
frame_rx
,
proc
->
nr_slot_rx
/
UE
->
frame_parms
.
slots_per_subframe
);
}
}
}
}
// calling UL_indication to schedule things other than PUSCH (eg, PUCCH)
rxtxD
->
ue_sched_mode
=
NOT_PUSCH
;
processSlotTX
(
rxtxD
);
// Wait for PUSCH processing to finish
// Wait for PUSCH processing to finish
notifiedFIFO_elt_t
*
res
;
notifiedFIFO_elt_t
*
res
;
...
@@ -365,6 +369,7 @@ void processSlotRX(void *arg) {
...
@@ -365,6 +369,7 @@ void processSlotRX(void *arg) {
delNotifiedFIFO_elt
(
res
);
delNotifiedFIFO_elt
(
res
);
}
else
{
}
else
{
rxtxD
->
ue_sched_mode
=
SCHED_ALL
;
processSlotTX
(
rxtxD
);
processSlotTX
(
rxtxD
);
}
}
...
...
openair1/PHY/defs_nr_UE.h
View file @
30c2746b
...
@@ -1084,6 +1084,7 @@ typedef struct {
...
@@ -1084,6 +1084,7 @@ typedef struct {
typedef
struct
nr_rxtx_thread_data_s
{
typedef
struct
nr_rxtx_thread_data_s
{
UE_nr_rxtx_proc_t
proc
;
UE_nr_rxtx_proc_t
proc
;
PHY_VARS_NR_UE
*
UE
;
PHY_VARS_NR_UE
*
UE
;
NR_UE_SCHED_MODE_t
ue_sched_mode
;
notifiedFIFO_t
txFifo
;
notifiedFIFO_t
txFifo
;
}
nr_rxtx_thread_data_t
;
}
nr_rxtx_thread_data_t
;
...
...
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
View file @
30c2746b
...
@@ -1778,6 +1778,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,
...
@@ -1778,6 +1778,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,
nr_rxtx_thread_data_t
*
curMsg
=
(
nr_rxtx_thread_data_t
*
)
NotifiedFifoData
(
newElt
);
nr_rxtx_thread_data_t
*
curMsg
=
(
nr_rxtx_thread_data_t
*
)
NotifiedFifoData
(
newElt
);
curMsg
->
proc
=
*
proc
;
curMsg
->
proc
=
*
proc
;
curMsg
->
UE
=
ue
;
curMsg
->
UE
=
ue
;
curMsg
->
ue_sched_mode
=
ONLY_PUSCH
;
pushTpool
(
&
(
get_nrUE_params
()
->
Tpool
),
newElt
);
pushTpool
(
&
(
get_nrUE_params
()
->
Tpool
),
newElt
);
#if UE_TIMING_TRACE
#if UE_TIMING_TRACE
...
...
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
View file @
30c2746b
...
@@ -94,6 +94,11 @@ int nr_ue_ul_indication(nr_uplink_indication_t *ul_info){
...
@@ -94,6 +94,11 @@ int nr_ue_ul_indication(nr_uplink_indication_t *ul_info){
module_id_t
module_id
=
ul_info
->
module_id
;
module_id_t
module_id
=
ul_info
->
module_id
;
NR_UE_MAC_INST_t
*
mac
=
get_mac_inst
(
module_id
);
NR_UE_MAC_INST_t
*
mac
=
get_mac_inst
(
module_id
);
if
(
ul_info
->
ue_sched_mode
==
PUSCH
)
{
ret
=
nr_ue_scheduler
(
NULL
,
ul_info
);
return
0
;
}
else
if
(
ul_info
->
ue_sched_mode
==
SCHED_ALL
)
ret
=
nr_ue_scheduler
(
NULL
,
ul_info
);
ret
=
nr_ue_scheduler
(
NULL
,
ul_info
);
NR_TDD_UL_DL_ConfigCommon_t
*
tdd_UL_DL_ConfigurationCommon
=
mac
->
scc
!=
NULL
?
mac
->
scc
->
tdd_UL_DL_ConfigurationCommon
:
mac
->
scc_SIB
->
tdd_UL_DL_ConfigurationCommon
;
NR_TDD_UL_DL_ConfigCommon_t
*
tdd_UL_DL_ConfigurationCommon
=
mac
->
scc
!=
NULL
?
mac
->
scc
->
tdd_UL_DL_ConfigurationCommon
:
mac
->
scc_SIB
->
tdd_UL_DL_ConfigurationCommon
;
...
...
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.h
View file @
30c2746b
...
@@ -39,6 +39,12 @@
...
@@ -39,6 +39,12 @@
typedef
struct
NR_UL_TIME_ALIGNMENT
NR_UL_TIME_ALIGNMENT_t
;
typedef
struct
NR_UL_TIME_ALIGNMENT
NR_UL_TIME_ALIGNMENT_t
;
typedef
enum
{
ONLY_PUSCH
,
NOT_PUSCH
,
SCHED_ALL
,
}
NR_UE_SCHED_MODE_t
;
typedef
struct
{
typedef
struct
{
/// module id
/// module id
module_id_t
module_id
;
module_id_t
module_id
;
...
@@ -100,6 +106,9 @@ typedef struct {
...
@@ -100,6 +106,9 @@ typedef struct {
/// dci reception indication structure
/// dci reception indication structure
fapi_nr_dci_indication_t
*
dci_ind
;
fapi_nr_dci_indication_t
*
dci_ind
;
NR_UE_SCHED_MODE_t
ue_sched_mode
;
}
nr_uplink_indication_t
;
}
nr_uplink_indication_t
;
// Downlink subframe P7
// Downlink subframe P7
...
...
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