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
754e8e30
Commit
754e8e30
authored
3 years ago
by
Laurent OpenCells
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
CMakeList cleanup,improvement and trial to run in ubuntu 16
parent
b3f3a1db
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
274 additions
and
811 deletions
+274
-811
cmake_targets/CMakeLists.txt
cmake_targets/CMakeLists.txt
+268
-289
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
+6
-4
openair2/PHY_INTERFACE/mac_phy_primitives.c
openair2/PHY_INTERFACE/mac_phy_primitives.c
+0
-283
openair2/PHY_INTERFACE/mac_phy_primitives.h
openair2/PHY_INTERFACE/mac_phy_primitives.h
+0
-232
openair2/RRC/LTE/rrc_eNB.c
openair2/RRC/LTE/rrc_eNB.c
+0
-3
No files found.
cmake_targets/CMakeLists.txt
View file @
754e8e30
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
View file @
754e8e30
...
...
@@ -119,12 +119,14 @@ void dump_mac_stats(gNB_MAC_INST *gNB)
UE_id
,
stats
->
ulsch_total_bytes_scheduled
,
stats
->
ulsch_total_bytes_rx
);
for
(
int
lc_id
=
0
;
lc_id
<
63
;
lc_id
++
)
{
if
(
stats
->
lc_bytes_tx
[
lc_id
]
>
0
)
if
(
stats
->
lc_bytes_tx
[
lc_id
]
>
0
)
{
stroff
+=
sprintf
(
output
+
stroff
,
"UE %d: LCID %d: %d bytes TX
\n
"
,
UE_id
,
lc_id
,
stats
->
lc_bytes_tx
[
lc_id
]);
LOG_D
(
NR_MAC
,
"UE %d: LCID %d: %d bytes TX
\n
"
,
UE_id
,
lc_id
,
stats
->
lc_bytes_tx
[
lc_id
]);
if
(
stats
->
lc_bytes_rx
[
lc_id
]
>
0
)
LOG_D
(
NR_MAC
,
"UE %d: LCID %d: %d bytes TX
\n
"
,
UE_id
,
lc_id
,
stats
->
lc_bytes_tx
[
lc_id
]);
}
if
(
stats
->
lc_bytes_rx
[
lc_id
]
>
0
)
{
stroff
+=
sprintf
(
output
+
stroff
,
"UE %d: LCID %d: %d bytes RX
\n
"
,
UE_id
,
lc_id
,
stats
->
lc_bytes_rx
[
lc_id
]);
LOG_D
(
NR_MAC
,
"UE %d: LCID %d: %d bytes RX
\n
"
,
UE_id
,
lc_id
,
stats
->
lc_bytes_rx
[
lc_id
]);
LOG_D
(
NR_MAC
,
"UE %d: LCID %d: %d bytes RX
\n
"
,
UE_id
,
lc_id
,
stats
->
lc_bytes_rx
[
lc_id
]);
}
}
}
print_meas
(
&
gNB
->
eNB_scheduler
,
"DL & UL scheduling timing stats"
,
NULL
,
NULL
);
...
...
This diff is collapsed.
Click to expand it.
openair2/PHY_INTERFACE/mac_phy_primitives.c
deleted
100644 → 0
View file @
b3f3a1db
/*
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The OpenAirInterface Software Alliance licenses this file to You under
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
* except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.openairinterface.org/?page_id=698
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*-------------------------------------------------------------------------------
* For more information about the OpenAirInterface (OAI) Software Alliance:
* contact@openairinterface.org
*/
/*________________________mac_phy_primitives.c________________________
Authors : Hicham Anouar, Raymond Knopp
Company : EURECOM
Emails : anouar@eurecom.fr, knopp@eurecom.fr
________________________________________________________________*/
//#include "openair_extern.h"
#ifdef MAC_CONTEXT
#include "LAYER2/MAC/defs.h"
#include "LAYER2/MAC/extern.h"
//#include "extern.h"
#include "defs.h"
#endif //MAC_CONTEXT
//#define DEBUG_UE_DECODE_SACH
//#define DEBUG_NODEB_DECODE_SACH
#ifdef PHY_CONTEXT
#ifdef PHY_EMUL
#include "extern.h"
#include "SIMULATION/simulation_defs.h"
#else //PHY_EMUL
#include "MAC_INTERFACE/extern.h"
#endif //PHY_EMUL
void
clear_macphy_data_req
(
unsigned
char
Mod_id
)
{
//msg("CLEAR DATA_REQ\n");
unsigned
char
i
;
Macphy_req_table
[
Mod_id
].
Macphy_req_cnt
=
0
;
for
(
i
=
0
;
i
<
NB_REQ_MAX
;
i
++
)
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[
i
].
Active
=
0
;
}
/*
unsigned char phy_resources_compare(PHY_RESOURCES *Phy1,PHY_RESOURCES* Phy2 ){
if(Phy1->Time_alloc==Phy2->Time_alloc && Phy1->Freq_alloc==Phy2->Freq_alloc)// && Phy1->Coding_fmt==Phy2->Coding_fmt && Phy1->Seq_index==Phy2->Seq_index)
return 1;
else
return 0;
}
*/
MACPHY_DATA_REQ_TABLE_ENTRY
*
find_data_req_entry
(
unsigned
char
Mod_id
,
MACPHY_REQ_ENTRY_KEY
*
Search_key
)
{
unsigned
char
i
;
//msg("[MAC_PHY]MAC_PHY_REQUEST_CNT=%d\n",Macphy_req_table.Macphy_req_cnt);
if
(
Macphy_req_table
[
Mod_id
].
Macphy_req_cnt
>
0
)
{
#ifdef DEBUG_PHY
// msg("[MACPHY_FIND_REQ] SEARCH KEY=%d\n",Search_key->Key_type);
#endif //DEBUG_PHY
//msg("[MACPHY_FIND_REQ] SEARCH KEY=%d, NB_REQ_MAX=%d\n",Search_key->Key_type,NB_REQ_MAX);
switch
(
Search_key
->
Key_type
)
{
case
PDU_TYPE_KEY
:
for
(
i
=
0
;
i
<
NB_REQ_MAX
;
i
++
)
{
if
(
(
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[
i
].
Macphy_data_req
.
Pdu_type
==
Search_key
->
Key
.
Pdu_type
)
&&
(
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[
i
].
Active
==
1
)
)
{
//msg("[MACPHY_FIND] MACPHY_req_table_entry=%p,idx=%d,Phy_resources %p", &Macphy_req_table.Macphy_req_table_entry[i],i,Macphy_req_table.Macphy_req_table_entry[i].Macphy_data_req.Phy_Resources_Entry);
return
(
&
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[
i
]);
}
}
break
;
/*
case LCHAN_KEY:
for(i=0;i<NB_REQ_MAX;i++){
if ((Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Lchan_id.Index==Search_key->Key.Lchan_id->Index) &&
(Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Active == 1) )
return(&Macphy_req_table[Mod_id].Macphy_req_table_entry[i]);
}
break;
case PHY_RESOURCES_KEY:
for(i=0;i<NB_REQ_MAX;i++){
if(Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Active == 1)
if ( ( Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Phy_resources->Time_alloc ==
Search_key->Key.Phy_resources.Time_alloc )
&&( Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Phy_resources->Freq_alloc ==
Search_key->Key.Phy_resources.Freq_alloc )
&&( Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.CH_index ==
Search_key->CH_index )
&& ( Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Direction == RX))
return(&Macphy_req_table[Mod_id].Macphy_req_table_entry[i]);
}
break;
*/
}
}
#ifndef PHY_EMUL
// msg("[PHY][PHY_MAC] Frame %d : No data request\n",mac_xface->frame);
#endif //PHY_EMUL
return
(
MACPHY_DATA_REQ_TABLE_ENTRY
*
)
0
;
}
void
print_active_requests
(
unsigned
char
Mod_id
)
{
int
i
;
msg
(
"_________________________INST %d , FRAME %d ACTIVE_REQUESTS_________________
\n
"
,
Mod_id
,
mac_xface
->
frame
);
for
(
i
=
0
;
i
<
NB_REQ_MAX
;
i
++
)
{
if
(
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[
i
].
Active
==
1
)
{
msg
(
"[MACPHY][DATA][REQ] Request %d: Direction %d, Pdu_type %d
\n
"
,
i
,
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[
i
].
Macphy_data_req
.
Direction
,
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[
i
].
Macphy_data_req
.
Pdu_type
);
// Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Lchan_id.Index);
// Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Phy_resources,
// Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Phy_resources->Time_alloc,
// Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Phy_resources->Freq_alloc);
//if(Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Pdu_type==RACH)
//msg("[RACH_REQ] Rach_pdu %p, Payload %p\n",Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Dir.Req_rx.Pdu.Rach_pdu,
// Macphy_req_table[Mod_id].Macphy_req_table_entry[i].Macphy_data_req.Dir.Req_rx.Pdu.Rach_pdu->Rach_payload);
}
}
}
/*___________________________________________________________________________________________________*/
#define RCNT Macphy_req_table[Mod_id].Macphy_req_cnt
MACPHY_DATA_REQ
*
new_macphy_data_req
(
unsigned
char
Mod_id
)
{
/*___________________________________________________________________________________________________*/
unsigned
char
i
;
for
(
i
=
0
;
i
<
NB_REQ_MAX
;
i
++
)
{
if
(
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[(
i
)
%
NB_REQ_MAX
].
Active
==
0
)
{
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[(
i
)
%
NB_REQ_MAX
].
Active
=
1
;
RCNT
=
(
RCNT
+
1
)
%
NB_REQ_MAX
;
// msg("[MAC_PHY]NEW MAC_REQUEST_CNT=%d,frame %d, Module %d, entry %d \n",Macphy_req_table[Mod_id].Macphy_req_cnt,mac_xface->frame,Mod_id,i);
// Macphy_req_table[Mod_id].Macphy_req_table_entry[i%NB_REQ_MAX].Macphy_data_req.Phy_resources=(PHY_RESOURCES*)malloc16(sizeof(PHY_RESOURCES));
return
(
&
Macphy_req_table
[
Mod_id
].
Macphy_req_table_entry
[
i
%
NB_REQ_MAX
].
Macphy_data_req
);
}
}
msg
(
"[OPENAIR][MAC][ERROR] frame %d: No more DATA_REQ !!!!
\n
"
,
mac_xface
->
frame
);
print_active_requests
(
Mod_id
);
mac_xface
->
macphy_exit
(
"new_macphy_data_req: no more DATA_REQ"
);
//rt_sleep(nano2count(2000));
return
((
MACPHY_DATA_REQ
*
)
0
);
}
#endif //PHY_CONTEXT
#ifdef MAC_CONTEXT
#include "LAYER2/MAC/extern.h"
// Function called by PHY to indicate available data/measurements for MAC
/*___________________________________________________________________________________________________*/
void
macphy_data_ind
(
unsigned
char
Mod_id
,
unsigned
char
Pdu_type
,
void
*
pdu
,
unsigned
short
rnti
)
{
/*___________________________________________________________________________________________________*/
//msg("[OPENAIR][MACPHY] Calling mac_resp In\n");
int
i
;
// if (Req_rx->crc_status[0]!= -1) { //CRC_STATUS
// msg("[OPENAIR][MACPHY] Calling mac_indicate In\n");
// Req_rx->Meas.UL_meas=&UL_meas[Mod_id];
// Req_rx->Meas.DL_meas=&DL_meas[Mod_id];
switch
(
Pdu_type
)
{
case
ULSCH
:
// msg("[OPENAIR][MACPHY] Received RACH, Sending to MAC\n");
nodeb_decode_ulsch
(
Mod_id
,(
ULSCH_PDU
*
)
pdu
,
rnti
);
break
;
case
DLSCH
:
#ifdef DEBUG_UE_DECODE_SACH
msg
(
"[MAC][UE][MAC_PHY] TTI %d Inst %d
\n
"
,
mac_xface
->
frame
,
Mod_id
);
#endif
// ue_decode_dlsch(Mod_id-NB_CH_INST,
// (DLSCH_PDU *)pdu,rnti);
break
;
default:
break
;
}
// msg("Freeing Req %p\n",Macphy_data_req_table_entry);
// }
}
/*PHY_RESOURCES_TABLE_ENTRY *new_phy_resources() {
unsigned char i;
//msg("[OPENAIR][PHY][MAC Interface] New Phy Resource, cnt %d\n",Phy_resources_table.Phy_resources_cnt);
for (i=0;i<NB_PHY_RESOURCES_MAX;i++){
if (Phy_resources_table.Phy_resources_table_entry[(i+Phy_resources_table.Phy_resources_cnt+1)%NB_PHY_RESOURCES_MAX].Active == 0) {
Phy_resources_table.Phy_resources_table_entry[(i+Phy_resources_table.Phy_resources_cnt+1)%NB_PHY_RESOURCES_MAX].Active = 1;
Phy_resources_table.Phy_resources_cnt = (Phy_resources_table.Phy_resources_cnt + 1)%NB_PHY_RESOURCES_MAX;
// msg("[OPENAIR][PHY][MAC Interface] NEW PHY_RESOURCES: Taking index %d\n\n",(i+Phy_resources_table.Phy_resources_cnt+1)%NB_PHY_RESOURCES_MAX);
return(&Phy_resources_table.Phy_resources_table_entry[(i+Phy_resources_table.Phy_resources_cnt)%NB_PHY_RESOURCES_MAX]);
}
}
msg("[OPENAIR][MAC][ERROR] No more PHY_RESOURCES !!!!\n");
exit(-1);
}
*/
#endif //MAC_CONTEXT
// Measurements, etc ..
//short phy_resource_cnt = 0, macphy_data_req_cnt = 0, macphy_data_ind_cnt = 0;
This diff is collapsed.
Click to expand it.
openair2/PHY_INTERFACE/mac_phy_primitives.h
deleted
100644 → 0
View file @
b3f3a1db
This diff is collapsed.
Click to expand it.
openair2/RRC/LTE/rrc_eNB.c
View file @
754e8e30
...
...
@@ -104,9 +104,6 @@ static int is_en_dc_supported(LTE_UE_EUTRA_Capability_t *c);
extern
RAN_CONTEXT_t
RC
;
#ifdef PHY_EMUL
extern
EMULATION_VARS
*
Emul_vars
;
#endif
extern
eNB_MAC_INST
*
eNB_mac_inst
;
extern
UE_MAC_INST
*
UE_mac_inst
;
...
...
This diff is collapsed.
Click to expand it.
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