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
Michael Black
OpenXG-RAN
Commits
04a0fa58
Commit
04a0fa58
authored
Jul 17, 2018
by
Calvin HSU
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
UE: linked IF module, ready for testing
parent
283e11e2
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
77 additions
and
13 deletions
+77
-13
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_interface.h
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_interface.h
+1
-1
openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c
openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c
+6
-0
openair1/PHY/defs_nr_UE.h
openair1/PHY/defs_nr_UE.h
+1
-0
openair1/SCHED_NR_UE/fapi_nr_ue_l1.c
openair1/SCHED_NR_UE/fapi_nr_ue_l1.c
+52
-0
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
+5
-1
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
+10
-9
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.h
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.h
+2
-2
No files found.
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_interface.h
100755 → 100644
View file @
04a0fa58
...
...
@@ -389,7 +389,7 @@ typedef struct {
uint8_t
dmrs_type_a_position
;
uint8_t
pdcch_config_sib1
;
uint8_t
cell_barred
;
uint8_t
intra_frquency_reselection
;
uint8_t
intra_fr
e
quency_reselection
;
uint16_t
system_frame_number
;
uint8_t
ssb_index
;
...
...
openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c
View file @
04a0fa58
...
...
@@ -624,4 +624,10 @@ uint16_t nr_rx_pbch( PHY_VARS_NR_UE *ue,
// printf("[PBCH] decoder_output[%d] = %x\n",i,decoded_output[i]);
//#endif
ue
->
dl_indication
.
rx_ind
.
rx_request_body
.
pdu_index
=
FAPI_NR_RX_PDU_BCCH_BCH_TYPE
;
ue
->
dl_indication
.
rx_ind
.
rx_request_body
.
pdu_length
=
3
;
ue
->
dl_indication
.
rx_ind
.
rx_request_body
.
pdu
=
&
pbch_a
[
0
];
ue
->
if_inst
->
dl_indication
(
&
ue
->
dl_indication
);
}
openair1/PHY/defs_nr_UE.h
View file @
04a0fa58
...
...
@@ -992,6 +992,7 @@ typedef struct {
NR_UE_COMMON
common_vars
;
nr_ue_if_module_t
*
if_inst
;
nr_downlink_indication_t
dl_indication
;
// point to the current rxTx thread index
uint8_t
current_thread_id
[
10
];
...
...
openair1/SCHED_NR_UE/fapi_nr_ue_l1.c
100755 → 100644
View file @
04a0fa58
...
...
@@ -30,14 +30,66 @@
* \warning
*/
#include <stdio.h>
#include "fapi_nr_ue_interface.h"
#include "fapi_nr_ue_l1.h"
int8_t
nr_ue_scheduled_response
(
nr_scheduled_response_t
*
scheduled_response
){
if
(
scheduled_response
!=
NULL
){
if
(
scheduled_response
->
dl_config
!=
NULL
){
}
if
(
scheduled_response
->
ul_config
!=
NULL
){
}
if
(
scheduled_response
->
tx_request
!=
NULL
){
}
}
return
0
;
}
int8_t
nr_ue_phy_config_request
(
nr_phy_config_t
*
phy_config
){
if
(
phy_config
!=
NULL
){
if
(
phy_config
->
config_req
.
config_mask
&
FAPI_NR_CONFIG_REQUEST_MASK_PBCH
){
printf
(
"[L1][IF module][PHY CONFIG]
\n
"
);
printf
(
"subcarrier spacing: %d
\n
"
,
phy_config
->
config_req
.
pbch_config
.
subcarrier_spacing_common
);
printf
(
"ssb carrier offset: %d
\n
"
,
phy_config
->
config_req
.
pbch_config
.
ssb_subcarrier_offset
);
printf
(
"dmrs type A position: %d
\n
"
,
phy_config
->
config_req
.
pbch_config
.
dmrs_type_a_position
);
printf
(
"pdcch config sib1: %d
\n
"
,
phy_config
->
config_req
.
pbch_config
.
pdcch_config_sib1
);
printf
(
"cell barred: %d
\n
"
,
phy_config
->
config_req
.
pbch_config
.
cell_barred
);
printf
(
"intra frequcney reselection: %d
\n
"
,
phy_config
->
config_req
.
pbch_config
.
intra_frequency_reselection
);
printf
(
"system frame number: %d
\n
"
,
phy_config
->
config_req
.
pbch_config
.
system_frame_number
);
printf
(
"ssb index: %d
\n
"
,
phy_config
->
config_req
.
pbch_config
.
ssb_index
);
printf
(
"half frame bit: %d
\n
"
,
phy_config
->
config_req
.
pbch_config
.
half_frame_bit
);
printf
(
"-------------------------------
\n
"
);
}
if
(
phy_config
->
config_req
.
config_mask
&
FAPI_NR_CONFIG_REQUEST_MASK_DL_BWP_COMMON
){
}
if
(
phy_config
->
config_req
.
config_mask
&
FAPI_NR_CONFIG_REQUEST_MASK_UL_BWP_COMMON
){
}
if
(
phy_config
->
config_req
.
config_mask
&
FAPI_NR_CONFIG_REQUEST_MASK_DL_BWP_DEDICATED
){
}
if
(
phy_config
->
config_req
.
config_mask
&
FAPI_NR_CONFIG_REQUEST_MASK_UL_BWP_DEDICATED
){
}
}
return
0
;
}
\ No newline at end of file
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
View file @
04a0fa58
...
...
@@ -33,6 +33,8 @@
#include "proto.h"
#include "RRC/NR_UE/rrc_proto.h"
#include <stdio.h>
int8_t
nr_ue_decode_mib
(
module_id_t
module_id
,
int
CC_id
,
...
...
@@ -44,6 +46,8 @@ int8_t nr_ue_decode_mib(
void
*
pduP
,
// encoded MIB
uint16_t
pdu_len
){
printf
(
"[L2][MAC] decode mib
\n
"
);
NR_UE_MAC_INST_t
*
mac
=
get_mac_inst
(
module_id
);
nr_mac_rrc_data_ind_ue
(
module_id
,
CC_id
,
gNB_index
,
...
...
@@ -79,7 +83,7 @@ int8_t nr_ue_decode_mib(
mac
->
phy_config
.
config_req
.
pbch_config
.
dmrs_type_a_position
=
mac
->
mib
->
dmrs_TypeA_Position
;
mac
->
phy_config
.
config_req
.
pbch_config
.
pdcch_config_sib1
=
mac
->
mib
->
pdcch_ConfigSIB1
;
mac
->
phy_config
.
config_req
.
pbch_config
.
cell_barred
=
mac
->
mib
->
cellBarred
;
mac
->
phy_config
.
config_req
.
pbch_config
.
intra_frquency_reselection
=
mac
->
mib
->
intraFreqReselection
;
mac
->
phy_config
.
config_req
.
pbch_config
.
intra_fr
e
quency_reselection
=
mac
->
mib
->
intraFreqReselection
;
mac
->
phy_config
.
config_req
.
pbch_config
.
half_frame_bit
=
half_frame_bit
;
mac
->
phy_config
.
config_req
.
config_mask
|=
FAPI_NR_CONFIG_REQUEST_MASK_PBCH
;
...
...
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
View file @
04a0fa58
...
...
@@ -33,7 +33,7 @@
#include "NR_IF_Module.h"
#include "LAYER2/NR_MAC_UE/proto.h"
#include <stdio.h>
#define MAX_IF_MODULES 100
...
...
@@ -50,7 +50,7 @@ int8_t handle_bcch_bch(uint32_t pdu_len, uint8_t *pduP){
extra_bits
,
0
,
// Lssb = 64 is not support
pduP
,
3
);
pdu_len
);
...
...
@@ -69,23 +69,24 @@ int8_t nr_ue_dl_indication(nr_downlink_indication_t *dl_info){
// clean up scheduled_response structure
if
(
dl_info
->
rx_ind
!=
NULL
){
switch
(
dl_info
->
rx_ind
->
rx_request_body
.
pdu_index
){
//if(dl_info->rx_ind != NULL){
printf
(
"[L2][IF MODULE][DL INDICATION][RX_IND]
\n
"
);
switch
(
dl_info
->
rx_ind
.
rx_request_body
.
pdu_index
){
case
FAPI_NR_RX_PDU_BCCH_BCH_TYPE
:
handle_bcch_bch
(
dl_info
->
rx_ind
->
rx_request_body
.
pdu_length
,
dl_info
->
rx_ind
->
rx_request_body
.
pdu
);
handle_bcch_bch
(
dl_info
->
rx_ind
.
rx_request_body
.
pdu_length
,
dl_info
->
rx_ind
.
rx_request_body
.
pdu
);
break
;
case
FAPI_NR_RX_PDU_BCCH_DLSCH_TYPE
:
handle_bcch_dlsch
(
dl_info
->
rx_ind
->
rx_request_body
.
pdu_length
,
dl_info
->
rx_ind
->
rx_request_body
.
pdu
);
handle_bcch_dlsch
(
dl_info
->
rx_ind
.
rx_request_body
.
pdu_length
,
dl_info
->
rx_ind
.
rx_request_body
.
pdu
);
break
;
default:
break
;
}
}
//
}
if
(
dl_info
->
dci_ind
!=
NULL
){
//
if(dl_info->dci_ind != NULL){
}
//
}
if
(
nr_ue_if_module_inst
[
module_id
]
!=
NULL
){
nr_ue_if_module_inst
[
module_id
]
->
scheduled_response
(
&
mac
->
scheduled_response
);
...
...
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.h
View file @
04a0fa58
...
...
@@ -50,10 +50,10 @@ typedef struct {
/// NR UE FAPI-like P7 message, direction: L1 to L2
/// data reception indication structure
fapi_nr_rx_indication_t
*
rx_ind
;
fapi_nr_rx_indication_t
rx_ind
;
/// dci reception indication structure
fapi_nr_dci_indication_t
*
dci_ind
;
fapi_nr_dci_indication_t
dci_ind
;
}
nr_downlink_indication_t
;
...
...
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