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
lizhongxiao
OpenXG-RAN
Commits
cf284d76
Commit
cf284d76
authored
Feb 22, 2022
by
rmagueta
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix build after merge
parent
6f19524e
Changes
17
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
56 additions
and
66 deletions
+56
-66
common/utils/nr/nr_common.c
common/utils/nr/nr_common.c
+0
-1
openair1/PHY/INIT/nr_init_ru.c
openair1/PHY/INIT/nr_init_ru.c
+4
-3
openair1/PHY/NR_TRANSPORT/nr_dlsch.c
openair1/PHY/NR_TRANSPORT/nr_dlsch.c
+2
-0
openair1/PHY/NR_TRANSPORT/nr_sch_dmrs.c
openair1/PHY/NR_TRANSPORT/nr_sch_dmrs.c
+1
-1
openair1/PHY/NR_TRANSPORT/pucch_rx.c
openair1/PHY/NR_TRANSPORT/pucch_rx.c
+1
-1
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
+2
-2
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
+6
-3
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_phytest.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_phytest.c
+1
-3
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
+0
-1
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c
+4
-11
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
+24
-24
openair2/RRC/NR/MESSAGES/asn1_msg.c
openair2/RRC/NR/MESSAGES/asn1_msg.c
+3
-5
openair2/RRC/NR/nr_rrc_config.c
openair2/RRC/NR/nr_rrc_config.c
+2
-1
openair2/RRC/NR/nr_rrc_defs.h
openair2/RRC/NR/nr_rrc_defs.h
+4
-4
openair2/RRC/NR/rrc_gNB.c
openair2/RRC/NR/rrc_gNB.c
+0
-1
openair2/RRC/NR/rrc_gNB_reconfig.c
openair2/RRC/NR/rrc_gNB_reconfig.c
+1
-3
targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
+1
-2
No files found.
common/utils/nr/nr_common.c
View file @
cf284d76
...
...
@@ -482,7 +482,6 @@ int get_nr_table_idx(int nr_bandP, uint8_t scs_index) {
return
i
;
}
int
get_subband_size
(
int
NPRB
,
int
size
)
{
// implements table 5.2.1.4-2 from 36.214
//
...
...
openair1/PHY/INIT/nr_init_ru.c
View file @
cf284d76
...
...
@@ -124,9 +124,10 @@ int nr_phy_init_RU(RU_t *ru) {
ru
->
num_gNB
,
NUMBER_OF_gNB_MAX
);
LOG_I
(
PHY
,
"[INIT] %s() ru->num_gNB:%d
\n
"
,
__FUNCTION__
,
ru
->
num_gNB
);
if
(
ru
->
do_precoding
==
1
)
{
if
(
ru
->
do_precoding
==
1
)
{
int
beam_count
=
0
;
if
(
ru
->
nb_tx
>
1
)
{
//Enable beamforming when nb_tx > 1
if
(
ru
->
nb_tx
>
1
)
{
//Enable beamforming when nb_tx > 1
for
(
p
=
0
;
p
<
ru
->
nb_log_antennas
;
p
++
)
{
//if ((fp->L_ssb >> (63-p)) & 0x01)//64 bit-map with the MSB @2⁶³ corresponds to SSB ssb_index 0
...
...
@@ -149,7 +150,7 @@ int nr_phy_init_RU(RU_t *ru) {
}
// for j
//}
}
// for p
}
//for i
}
//
for i
}
ru
->
common
.
beam_id
=
(
uint8_t
**
)
malloc16_clear
(
ru
->
nb_tx
*
sizeof
(
uint8_t
*
));
...
...
openair1/PHY/NR_TRANSPORT/nr_dlsch.c
View file @
cf284d76
...
...
@@ -211,6 +211,7 @@ void nr_generate_pdsch(processingData_L1tx_t *msgTx,
#endif
stop_meas
(
&
gNB
->
dlsch_layer_mapping_stats
);
/// Resource mapping
// Non interleaved VRB to PRB mapping
...
...
@@ -228,6 +229,7 @@ void nr_generate_pdsch(processingData_L1tx_t *msgTx,
for
(
int
nl
=
0
;
nl
<
rel15
->
nrOfLayers
;
nl
++
)
{
int
dmrs_port
=
get_dmrs_port
(
nl
,
rel15
->
dmrsPorts
);
// DMRS params for this dmrs port
get_Wt
(
Wt
,
dmrs_port
,
dmrs_Type
);
get_Wf
(
Wf
,
dmrs_port
,
dmrs_Type
);
...
...
openair1/PHY/NR_TRANSPORT/nr_sch_dmrs.c
View file @
cf284d76
...
...
@@ -92,6 +92,6 @@ uint8_t get_l0(uint16_t dlDmrsSymbPos) {
if
((
mask
&
1
)
==
1
)
break
;
mask
>>=
1
;
}
AssertFatal
(
l0
<
4
,
"impossible l0 %d, dlDmrsSymbPos %x
\n
"
,
l0
,
dlDmrsSymbPos
);
AssertFatal
(
l0
<
4
,
"impossible l0 %d, dlDmrsSymbPos %x
\n
"
,
l0
,
dlDmrsSymbPos
);
return
(
l0
);
}
openair1/PHY/NR_TRANSPORT/pucch_rx.c
View file @
cf284d76
...
...
@@ -1528,7 +1528,7 @@ void nr_decode_pucch2(PHY_VARS_gNB *gNB,
#ifdef DEBUG_NR_PUCCH_RX
printf
(
"cw_ML %d, metric %d dB
\n
"
,
cw_ML
,
corr_dB
);
#endif
LOG_D
(
PHY
,
"slot %d PUCCH2 cw_ML %d, metric %d dB
\n
"
,
slot
,
cw_ML
,
corr_dB
);
LOG_D
(
PHY
,
"slot %d PUCCH2 cw_ML %d, metric %d dB
\n
"
,
slot
,
cw_ML
,
corr_dB
);
decodedPayload
[
0
]
=
(
uint64_t
)
cw_ML
;
}
...
...
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
View file @
cf284d76
...
...
@@ -871,10 +871,10 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
(
get_softmodem_params
()
->
nsa
)
?
mac
->
scc
->
dmrs_TypeA_Position
:
mac
->
mib
->
dmrs_TypeA_Position
,
dlsch_config_pdu_1_0
->
number_symbols
,
dlsch_config_pdu_1_0
->
start_symbol
,
mappingtype
,
1
);
mappingtype
,
1
);
dlsch_config_pdu_1_0
->
dmrsConfigType
=
(
mac
->
DLbwp
[
0
]
!=
NULL
)
?
(
mac
->
DLbwp
[
0
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
dmrs_DownlinkForPDSCH_MappingTypeA
->
choice
.
setup
->
dmrs_Type
==
NULL
?
0
:
1
)
:
0
;
/* number of DM-RS CDM groups without data according to subclause 5.1.6.2 of 3GPP TS 38.214 version 15.9.0 Release 15 */
if
(
dlsch_config_pdu_1_0
->
number_symbols
==
2
)
dlsch_config_pdu_1_0
->
n_dmrs_cdm_groups
=
1
;
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
View file @
cf284d76
...
...
@@ -587,7 +587,7 @@ bool allocate_dl_retransmission(module_id_t module_id,
/* check whether we need to switch the TDA allocation since the last
* (re-)transmission */
if
(
ps
->
time_domain_allocation
!=
tda
)
nr_set_pdsch_semi_static
(
scc
,
UE_info
->
CellGroup
[
UE_id
]
,
sched_ctrl
->
active_bwp
,
bwpd
,
tda
,
ps
->
nrOfLayers
,
sched_ctrl
,
ps
);
nr_set_pdsch_semi_static
(
scc
,
cg
,
sched_ctrl
->
active_bwp
,
bwpd
,
tda
,
ps
->
nrOfLayers
,
sched_ctrl
,
ps
);
}
else
{
/* the retransmission will use a different time domain allocation, check
* that we have enough resources */
...
...
@@ -716,7 +716,7 @@ void pf_dl(module_id_t module_id,
/* get the PID of a HARQ process awaiting retrnasmission, or -1 otherwise */
sched_pdsch
->
dl_harq_pid
=
sched_ctrl
->
retrans_dl_harq
.
head
;
layers
[
UE_id
]
=
ps
->
nrOfLayers
;
// initialization of layers to the previous value in the str
cu
ture
layers
[
UE_id
]
=
ps
->
nrOfLayers
;
// initialization of layers to the previous value in the str
uc
ture
/* Calculate Throughput */
const
float
a
=
0
.
0005
f
;
// corresponds to 200ms window
...
...
@@ -744,6 +744,9 @@ void pf_dl(module_id_t module_id,
set_dl_mcs
(
sched_pdsch
,
sched_ctrl
,
&
mac
->
dl_max_mcs
,
ps
->
mcsTableIdx
);
sched_pdsch
->
mcs
=
get_mcs_from_bler
(
module_id
,
/* CC_id = */
0
,
frame
,
slot
,
UE_id
);
layers
[
UE_id
]
=
set_dl_nrOfLayers
(
sched_ctrl
);
// uint32_t tbs = pf_tbs[ps->mcsTableIdx][sched_pdsch->mcs]; // for nrOfLayers = 1
const
uint8_t
Qm
=
nr_get_Qm_dl
(
sched_pdsch
->
mcs
,
ps
->
mcsTableIdx
);
const
uint16_t
R
=
nr_get_code_rate_dl
(
sched_pdsch
->
mcs
,
ps
->
mcsTableIdx
);
uint32_t
tbs
=
nr_compute_tbs
(
Qm
,
...
...
@@ -754,6 +757,7 @@ void pf_dl(module_id_t module_id,
0
/* N_PRB_oh, 0 for initialBWP */
,
0
/* tb_scaling */
,
layers
[
UE_id
])
>>
3
;
coeff_ue
[
UE_id
]
=
(
float
)
tbs
/
thr_ue
[
UE_id
];
LOG_D
(
NR_MAC
,
"b %d, thr_ue[%d] %f, tbs %d, coeff_ue[%d] %f
\n
"
,
b
,
UE_id
,
thr_ue
[
UE_id
],
tbs
,
UE_id
,
coeff_ue
[
UE_id
]);
...
...
@@ -856,7 +860,6 @@ void pf_dl(module_id_t module_id,
AssertFatal
(
tda
>=
0
,
"Unable to find PDSCH time domain allocation in list
\n
"
);
NR_sched_pdsch_t
*
sched_pdsch
=
&
sched_ctrl
->
sched_pdsch
;
NR_pdsch_semi_static_t
*
ps
=
&
sched_ctrl
->
pdsch_semi_static
;
const
long
f
=
(
sched_ctrl
->
active_bwp
||
bwpd
)
?
sched_ctrl
->
search_space
->
searchSpaceType
->
choice
.
ue_Specific
->
dci_Formats
:
0
;
if
(
ps
->
nrOfLayers
!=
layers
[
UE_id
]
||
ps
->
time_domain_allocation
!=
tda
)
nr_set_pdsch_semi_static
(
scc
,
UE_info
->
CellGroup
[
UE_id
],
sched_ctrl
->
active_bwp
,
bwpd
,
tda
,
layers
[
UE_id
],
sched_ctrl
,
ps
);
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_phytest.c
View file @
cf284d76
...
...
@@ -279,12 +279,10 @@ void nr_preprocessor_phytest(module_id_t module_id,
UE_id
);
NR_UE_sched_ctrl_t
*
sched_ctrl
=
&
UE_info
->
UE_sched_ctrl
[
UE_id
];
const
int
tda
=
sched_ctrl
->
active_bwp
?
RC
.
nrmac
[
module_id
]
->
preferred_dl_tda
[
sched_ctrl
->
active_bwp
->
bwp_Id
][
slot
]
:
1
;
const
long
f
=
sched_ctrl
->
active_bwp
?
sched_ctrl
->
search_space
->
searchSpaceType
->
choice
.
ue_Specific
->
dci_Formats
:
0
;
NR_pdsch_semi_static_t
*
ps
=
&
sched_ctrl
->
pdsch_semi_static
;
ps
->
nrOfLayers
=
target_dl_Nl
;
if
(
ps
->
time_domain_allocation
!=
tda
)
nr_set_pdsch_semi_static
(
scc
,
UE_info
->
CellGroup
[
UE_id
],
sched_ctrl
->
active_bwp
,
NULL
,
tda
,
f
,
ps
);
nr_set_pdsch_semi_static
(
scc
,
UE_info
->
CellGroup
[
UE_id
],
sched_ctrl
->
active_bwp
,
NULL
,
tda
,
ps
->
nrOfLayers
,
sched_ctrl
,
ps
);
/* find largest unallocated chunk */
const
int
bwpSize
=
NRRIV2BW
(
sched_ctrl
->
active_bwp
->
bwp_Common
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
View file @
cf284d76
...
...
@@ -2437,7 +2437,6 @@ void nr_csirs_scheduling(int Mod_idP,
int
period
,
offset
;
nfapi_nr_dl_tti_request_body_t
*
dl_req
=
&
gNB_mac
->
DL_req
[
CC_id
].
dl_tti_request_body
;
NR_BWP_Downlink_t
*
bwp
=
sched_ctrl
->
active_bwp
;
NR_BWP_t
*
genericParameters
=
sched_ctrl
->
active_bwp
?
&
sched_ctrl
->
active_bwp
->
bwp_Common
->
genericParameters
:
&
gNB_mac
->
common_channels
[
0
].
ServingCellConfigCommon
->
downlinkConfigCommon
->
initialDownlinkBWP
->
genericParameters
;
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c
View file @
cf284d76
...
...
@@ -280,7 +280,6 @@ void compute_li_bitlen(struct NR_CSI_ReportConfig *csi_reportconfig,
}
}
void
get_n1n2_o1o2_singlepanel
(
int
*
n1
,
int
*
n2
,
int
*
o1
,
int
*
o2
,
struct
NR_CodebookConfig__codebookType__type1__subType__typeI_SinglePanel__nrOfAntennaPorts__moreThanTwo
*
morethantwo
)
{
...
...
@@ -547,7 +546,6 @@ void compute_cqi_bitlen(struct NR_CSI_ReportConfig *csi_reportconfig,
AssertFatal
(
1
==
0
,
"Sub-band CQI reporting not yet supported"
);
}
//!TODO : same function can be written to handle csi_resources
void
compute_csi_bitlen
(
NR_CSI_MeasConfig_t
*
csi_MeasConfig
,
NR_UE_info_t
*
UE_info
,
int
UE_id
,
module_id_t
Mod_idP
){
uint8_t
csi_report_id
=
0
;
...
...
@@ -700,7 +698,7 @@ void nr_csi_meas_reporting(int Mod_idP,
const
NR_CSI_MeasConfig_t
*
csi_measconfig
=
CellGroup
->
spCellConfig
->
spCellConfigDedicated
->
csi_MeasConfig
->
choice
.
setup
;
AssertFatal
(
csi_measconfig
->
csi_ReportConfigToAddModList
->
list
.
count
>
0
,
"NO CSI report configuration available"
);
NR_PUCCH_Config_t
*
pucch_Config
;
NR_PUCCH_Config_t
*
pucch_Config
=
NULL
;
if
(
sched_ctrl
->
active_ubwp
)
{
pucch_Config
=
sched_ctrl
->
active_ubwp
->
bwp_Dedicated
->
pucch_Config
->
choice
.
setup
;
}
else
if
(
RC
.
nrmac
[
Mod_idP
]
->
UE_info
.
CellGroup
[
UE_id
]
&&
...
...
@@ -712,7 +710,6 @@ void nr_csi_meas_reporting(int Mod_idP,
pucch_Config
=
RC
.
nrmac
[
Mod_idP
]
->
UE_info
.
CellGroup
[
UE_id
]
->
spCellConfig
->
spCellConfigDedicated
->
uplinkConfig
->
initialUplinkBWP
->
pucch_Config
->
choice
.
setup
;
}
for
(
int
csi_report_id
=
0
;
csi_report_id
<
csi_measconfig
->
csi_ReportConfigToAddModList
->
list
.
count
;
csi_report_id
++
){
NR_CSI_ReportConfig_t
*
csirep
=
csi_measconfig
->
csi_ReportConfigToAddModList
->
list
.
array
[
csi_report_id
];
...
...
@@ -735,7 +732,7 @@ void nr_csi_meas_reporting(int Mod_idP,
if
(
*
pucchresset
->
resourceList
.
list
.
array
[
res_index
]
==
pucchcsires
->
pucch_Resource
)
break
;
AssertFatal
(
res_index
<
n
,
"CSI pucch resource %
d not found among PUCCH resources
\n
"
,
pucchcsires
->
pucch_Resource
);
"CSI pucch resource %
ld not found among PUCCH resources
\n
"
,
pucchcsires
->
pucch_Resource
);
// find free PUCCH that is in order with possibly existing PUCCH
// schedulings (other CSI, SR)
...
...
@@ -924,13 +921,10 @@ void tci_handling(module_id_t Mod_idP, int UE_id, frame_t frame, slot_t slot) {
uint8_t
idx
=
0
;
NR_UE_info_t
*
UE_info
=
&
RC
.
nrmac
[
Mod_idP
]
->
UE_info
;
NR_UE_sched_ctrl_t
*
sched_ctrl
=
&
UE_info
->
UE_sched_ctrl
[
UE_id
];
int
bwp_id
=
sched_ctrl
->
active_bwp
?
1
:
0
;
int
bwp_id
=
sched_ctrl
->
active_bwp
?
sched_ctrl
->
active_bwp
->
bwp_Id
:
0
;
NR_CellGroupConfig_t
*
CellGroup
=
UE_info
->
CellGroup
[
UE_id
];
NR_BWP_Downlink_t
*
bwp
=
bwp_id
>
0
?
sched_ctrl
->
active_bwp
:
NULL
;
NR_BWP_Downlink_t
*
bwp
=
bwp_id
>
0
?
sched_ctrl
->
active_bwp
:
NULL
;
//bwp indicator
int
n_dl_bwp
=
0
;
if
(
CellGroup
->
spCellConfig
->
spCellConfigDedicated
&&
...
...
@@ -942,7 +936,6 @@ void tci_handling(module_id_t Mod_idP, int UE_id, frame_t frame, slot_t slot) {
int
better_rsrp_reported
=
-
140
-
(
-
0
);
/*minimum_measured_RSRP_value - minimum_differntail_RSRP_value*/
//considering the minimum RSRP value as better RSRP initially
uint8_t
diff_rsrp_idx
=
0
;
uint8_t
i
,
j
;
NR_UE_sched_ctrl_t
*
sched_ctrl
=
&
UE_info
->
UE_sched_ctrl
[
UE_id
];
if
(
n_dl_bwp
<
4
)
pdsch_bwp_id
=
bwp_id
;
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
View file @
cf284d76
...
...
@@ -1636,30 +1636,30 @@ void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot)
UE_info
->
mac_stats
[
UE_id
].
ulsch_current_bytes
=
sched_pusch
->
tb_size
;
sched_ctrl
->
last_ul_frame
=
sched_pusch
->
frame
;
sched_ctrl
->
last_ul_slot
=
sched_pusch
->
slot
;
if
(
sched_pusch
->
rbSize
>
5
)
LOG_D
(
NR_MAC
,
"ULSCH/PUSCH: %4d.%2d RNTI %04x UL sched %4d.%2d DCI L %d start %2d RBS %3d startSymbol %2d nb_symbol %2d dmrs_pos %x MCS %2d TBS %4d HARQ PID %2d round %d RV %d NDI %d est %6d sched %6d est BSR %6d TPC %d
\n
"
,
frame
,
slot
,
rnti
,
sched_pusch
->
frame
,
sched_pusch
->
slot
,
sched_ctrl
->
aggregation_level
,
sched_pusch
->
rbStart
,
sched_pusch
->
rbSize
,
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
,
ps
->
ul_dmrs_symb_pos
,
sched_pusch
->
mcs
,
sched_pusch
->
tb_size
,
harq_id
,
cur_harq
->
round
,
nr_rv_round_map
[
cur_harq
->
round
],
cur_harq
->
ndi
,
sched_ctrl
->
estimated_ul_buffer
,
sched_ctrl
->
sched_ul_bytes
,
sched_ctrl
->
estimated_ul_buffer
-
sched_ctrl
->
sched_ul_bytes
,
sched_ctrl
->
tpc0
);
LOG_D
(
NR_MAC
,
"ULSCH/PUSCH: %4d.%2d RNTI %04x UL sched %4d.%2d DCI L %d start %2d RBS %3d startSymbol %2d nb_symbol %2d dmrs_pos %x MCS %2d TBS %4d HARQ PID %2d round %d RV %d NDI %d est %6d sched %6d est BSR %6d TPC %d
\n
"
,
frame
,
slot
,
rnti
,
sched_pusch
->
frame
,
sched_pusch
->
slot
,
sched_ctrl
->
aggregation_level
,
sched_pusch
->
rbStart
,
sched_pusch
->
rbSize
,
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
,
ps
->
ul_dmrs_symb_pos
,
sched_pusch
->
mcs
,
sched_pusch
->
tb_size
,
harq_id
,
cur_harq
->
round
,
nr_rv_round_map
[
cur_harq
->
round
],
cur_harq
->
ndi
,
sched_ctrl
->
estimated_ul_buffer
,
sched_ctrl
->
sched_ul_bytes
,
sched_ctrl
->
estimated_ul_buffer
-
sched_ctrl
->
sched_ul_bytes
,
sched_ctrl
->
tpc0
);
/* PUSCH in a later slot, but corresponding DCI now! */
...
...
openair2/RRC/NR/MESSAGES/asn1_msg.c
View file @
cf284d76
...
...
@@ -395,7 +395,6 @@ uint8_t do_SIB1_NR(rrc_gNB_carrier_data_t *carrier,
initialDownlinkBWP
->
genericParameters
=
configuration
->
scc
->
downlinkConfigCommon
->
initialDownlinkBWP
->
genericParameters
;
for
(
int
i
=
0
;
i
<
configuration
->
scc
->
downlinkConfigCommon
->
frequencyInfoDL
->
frequencyBandList
.
list
.
count
;
i
++
)
{
asn1cSequenceAdd
(
ServCellCom
->
downlinkConfigCommon
.
frequencyInfoDL
.
frequencyBandList
.
list
,
struct
NR_NR_MultiBandInfo
,
nrMultiBandInfo
);
...
...
@@ -510,7 +509,6 @@ uint8_t do_SIB1_NR(rrc_gNB_carrier_data_t *carrier,
ss7
->
searchSpaceType
->
choice
.
common
=
calloc
(
1
,
sizeof
(
*
ss7
->
searchSpaceType
->
choice
.
common
));
ss7
->
searchSpaceType
->
choice
.
common
->
dci_Format0_0_AndFormat1_0
=
calloc
(
1
,
sizeof
(
*
ss7
->
searchSpaceType
->
choice
.
common
->
dci_Format0_0_AndFormat1_0
));
asn1cCallocOne
(
initialDownlinkBWP
->
pdcch_ConfigCommon
->
choice
.
setup
->
searchSpaceSIB1
,
0
);
asn1cCallocOne
(
initialDownlinkBWP
->
pdcch_ConfigCommon
->
choice
.
setup
->
searchSpaceOtherSystemInformation
,
7
);
asn1cCallocOne
(
initialDownlinkBWP
->
pdcch_ConfigCommon
->
choice
.
setup
->
pagingSearchSpace
,
5
);
...
...
@@ -1301,8 +1299,8 @@ void fill_initial_SpCellConfig(int uid,
// frequency domain resources depends on BWP size
// options are 24, 48 or 96
coreset
->
frequencyDomainResources
.
buf
=
calloc
(
1
,
6
);
int
curr_bwp
=
scc
->
downlinkConfigCommon
->
frequencyInfoDL
->
scs_SpecificCarrierList
.
list
.
array
[
0
]
->
carrierBandwidth
;
if
(
0
)
{
int
curr_bwp
=
scc
->
downlinkConfigCommon
->
frequencyInfoDL
->
scs_SpecificCarrierList
.
list
.
array
[
0
]
->
carrierBandwidth
;
if
(
curr_bwp
<
48
)
coreset
->
frequencyDomainResources
.
buf
[
0
]
=
0xf0
;
else
...
...
@@ -1455,7 +1453,7 @@ void fill_initial_SpCellConfig(int uid,
csi_MeasConfig
->
nzp_CSI_RS_ResourceSetToReleaseList
=
NULL
;
config_csirs
(
scc
,
csi_MeasConfig
,
carrier
->
pdsch_AntennaPorts
,
curr_bwp
,
carrier
->
do_CSIRS
);
config_csirs
(
scc
,
csi_MeasConfig
,
uid
,
carrier
->
pdsch_AntennaPorts
,
curr_bwp
,
carrier
->
do_CSIRS
);
csi_MeasConfig
->
csi_SSB_ResourceSetToAddModList
=
calloc
(
1
,
sizeof
(
*
csi_MeasConfig
->
csi_SSB_ResourceSetToAddModList
));
csi_MeasConfig
->
csi_SSB_ResourceSetToReleaseList
=
NULL
;
...
...
@@ -1957,7 +1955,7 @@ int do_RRCSetup(rrc_gNB_ue_context_t *const ue_context_pP,
return
-
1
;
}
LOG_
I
(
NR_RRC
,
"RRCSetup Encoded %zd bits (%zd bytes)
\n
"
,
LOG_
D
(
NR_RRC
,
"RRCSetup Encoded %zd bits (%zd bytes)
\n
"
,
enc_rval
.
encoded
,(
enc_rval
.
encoded
+
7
)
/
8
);
return
((
enc_rval
.
encoded
+
7
)
/
8
);
}
...
...
openair2/RRC/NR/nr_rrc_config.c
View file @
cf284d76
...
...
@@ -158,7 +158,8 @@ void config_csirs(NR_ServingCellConfigCommon_t *servingcellconfigcommon,
*
nzpcsi0
->
powerControlOffsetSS
=
NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0
;
nzpcsi0
->
scramblingID
=
*
servingcellconfigcommon
->
physCellId
;
set_csirs_periodicity
(
nzpcsi0
,
uid
,
nb_slots_per_period
);
nzpcsi0
->
qcl_InfoPeriodicCSI_RS
=
NULL
;
nzpcsi0
->
qcl_InfoPeriodicCSI_RS
=
calloc
(
1
,
sizeof
(
*
nzpcsi0
->
qcl_InfoPeriodicCSI_RS
));
*
nzpcsi0
->
qcl_InfoPeriodicCSI_RS
=
0
;
ASN_SEQUENCE_ADD
(
&
csi_MeasConfig
->
nzp_CSI_RS_ResourceToAddModList
->
list
,
nzpcsi0
);
}
else
{
...
...
openair2/RRC/NR/nr_rrc_defs.h
View file @
cf284d76
...
...
@@ -286,10 +286,10 @@ typedef struct gNB_RRC_UE_s {
NR_DRB_ToReleaseList_t
*
DRB_Release_configList2
[
RRC_TRANSACTION_IDENTIFIER_NUMBER
];
uint8_t
DRB_active
[
8
];
NR_SRB_INFO
SI
;
NR_SRB_INFO
Srb0
;
NR_SRB_INFO_TABLE_ENTRY
Srb1
;
NR_SRB_INFO_TABLE_ENTRY
Srb2
;
NR_SRB_INFO
SI
;
NR_SRB_INFO
Srb0
;
NR_SRB_INFO_TABLE_ENTRY
Srb1
;
NR_SRB_INFO_TABLE_ENTRY
Srb2
;
NR_MeasConfig_t
*
measConfig
;
HANDOVER_INFO
*
handover_info
;
NR_MeasResults_t
*
measResults
;
...
...
openair2/RRC/NR/rrc_gNB.c
View file @
cf284d76
...
...
@@ -3516,7 +3516,6 @@ void nr_rrc_subframe_process(protocol_ctxt_t *const ctxt_pP, const int CC_id) {
if
(
fd
)
fclose
(
fd
);
/* send a tick to x2ap */
if
(
is_x2ap_enabled
()){
msg
=
itti_alloc_new_message
(
TASK_RRC_ENB
,
0
,
X2AP_SUBFRAME_PROCESS
);
...
...
openair2/RRC/NR/rrc_gNB_reconfig.c
View file @
cf284d76
...
...
@@ -562,9 +562,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
}
bwp
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
dataScramblingIdentityPDSCH
=
NULL
;
if
((
get_softmodem_params
()
->
do_ra
||
get_softmodem_params
()
->
phy_test
)
&&
dl_antenna_ports
>
1
)
// for MIMO, we use DMRS Config Type 2 but only with OAI UE
if
((
get_softmodem_params
()
->
do_ra
||
get_softmodem_params
()
->
phy_test
)
&&
dl_antenna_ports
>
1
)
// for MIMO, we use DMRS Config Type 2 but only with OAI UE
bwp
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
dmrs_DownlinkForPDSCH_MappingTypeA
->
choice
.
setup
->
dmrs_Type
=
calloc
(
1
,
sizeof
(
*
bwp
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
dmrs_DownlinkForPDSCH_MappingTypeA
->
choice
.
setup
->
dmrs_Type
));
else
bwp
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
dmrs_DownlinkForPDSCH_MappingTypeA
->
choice
.
setup
->
dmrs_Type
=
NULL
;
...
...
targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
View file @
cf284d76
...
...
@@ -694,7 +694,6 @@ static int trx_usrp_read(openair0_device *device, openair0_timestamp *ptimestamp
((
int16x8_t
*
)
buff
[
i
])[
j
]
=
vshrq_n_s16
(
buff_tmp
[
i
][
j
],
rxshift
);
#endif
}
}
if
(
samples_received
<
nsamps
)
{
LOG_E
(
HW
,
"[recv] received %d samples out of %d
\n
"
,
samples_received
,
nsamps
);
...
...
@@ -1096,7 +1095,7 @@ extern "C" {
if
(
device
->
type
==
USRP_X300_DEV
)
{
openair0_cfg
[
0
].
rx_gain_calib_table
=
calib_table_x310
;
std
::
cerr
<<
"-- Using calibration table: calib_table_x310"
<<
std
::
endl
;
//
s->usrp->set_rx_dc_offset(true);
s
->
usrp
->
set_rx_dc_offset
(
true
);
}
if
(
device
->
type
==
USRP_N300_DEV
)
{
...
...
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