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
wangwenhui
OpenXG-RAN
Commits
5e42e3c6
Commit
5e42e3c6
authored
8 years ago
by
Cedric Roux
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
deal with puschTransmissionTimestamp (does not work yet)
parent
2896e5bf
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
10 deletions
+12
-10
openair2/LAYER2/MAC/eNB_scheduler.c
openair2/LAYER2/MAC/eNB_scheduler.c
+12
-10
No files found.
openair2/LAYER2/MAC/eNB_scheduler.c
View file @
5e42e3c6
...
@@ -102,6 +102,7 @@ static struct {
...
@@ -102,6 +102,7 @@ static struct {
/* TODO: do it per CC */
/* TODO: do it per CC */
static
struct
{
static
struct
{
struct
{
struct
{
int
reception_subframe
;
/* the subframe where the ACK/NACK has been received */
int
rnti
;
int
rnti
;
int
ack
;
int
ack
;
int
length
[
MAX_LC_LIST
+
1
];
int
length
[
MAX_LC_LIST
+
1
];
...
@@ -143,8 +144,9 @@ printf("GOT UPLINK ack %d for rnti %x (f/sf %d/%d)\n", ack, rnti, frame, subfram
...
@@ -143,8 +144,9 @@ printf("GOT UPLINK ack %d for rnti %x (f/sf %d/%d)\n", ack, rnti, frame, subfram
LOG_E
(
MAC
,
"fapi_ul_ack_nack: full! (f/sf %d/%d)
\n
"
,
frame
,
subframe
);
LOG_E
(
MAC
,
"fapi_ul_ack_nack: full! (f/sf %d/%d)
\n
"
,
frame
,
subframe
);
abort
();
abort
();
}
}
fapi_ul_ack_nack_data
[
subframe
].
ack
[
pos
].
rnti
=
rnti
;
fapi_ul_ack_nack_data
[
subframe
].
ack
[
pos
].
reception_subframe
=
subframe
;
fapi_ul_ack_nack_data
[
subframe
].
ack
[
pos
].
ack
=
ack
;
fapi_ul_ack_nack_data
[
subframe
].
ack
[
pos
].
rnti
=
rnti
;
fapi_ul_ack_nack_data
[
subframe
].
ack
[
pos
].
ack
=
ack
;
/* the values in length are set later in the function fapi_ul_lc_length */
/* the values in length are set later in the function fapi_ul_lc_length */
memset
(
fapi_ul_ack_nack_data
[
subframe
].
ack
[
pos
].
length
,
0
,
sizeof
(
int
)
*
MAX_LC_LIST
+
1
);
memset
(
fapi_ul_ack_nack_data
[
subframe
].
ack
[
pos
].
length
,
0
,
sizeof
(
int
)
*
MAX_LC_LIST
+
1
);
...
@@ -842,20 +844,20 @@ printf("FAPI to MAC downlink DCI_pdu[%d]->num_pdcch_symbols %d f/sf %d/%d\n", cc
...
@@ -842,20 +844,20 @@ printf("FAPI to MAC downlink DCI_pdu[%d]->num_pdcch_symbols %d f/sf %d/%d\n", cc
ulreq
.
vendorSpecificList
=
NULL
;
ulreq
.
vendorSpecificList
=
NULL
;
/* fill ulInfoList */
/* fill ulInfoList */
ulsf
=
(
subframeP
+
6
)
%
10
;
ulsf
=
(
subframeP
+
10
-
3
)
%
10
;
ulsf
=
(
subframeP
+
6
)
%
10
;
if
(
fapi_ul_ack_nack_data
[
ulsf
].
count
)
{
if
(
fapi_ul_ack_nack_data
[
ulsf
].
count
)
{
ulreq
.
nr_ulInfoList
=
fapi_ul_ack_nack_data
[
ulsf
].
count
;
ulreq
.
nr_ulInfoList
=
fapi_ul_ack_nack_data
[
ulsf
].
count
;
ulreq
.
ulInfoList
=
ulinfo
;
ulreq
.
ulInfoList
=
ulinfo
;
for
(
i
=
0
;
i
<
ulreq
.
nr_ulInfoList
;
i
++
)
{
for
(
i
=
0
;
i
<
ulreq
.
nr_ulInfoList
;
i
++
)
{
printf
(
"MAC to FAPI uplink acknack ue %x ulsf %d ack %d
\n
"
,
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
rnti
,
ulsf
,
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
ack
);
printf
(
"MAC to FAPI uplink acknack ue %x f/sf %d/%d ulsf %d [reception_subframe %d] ack %d
\n
"
,
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
rnti
,
frameP
,
subframeP
,
ulsf
,
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
reception_subframe
,
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
ack
);
ulinfo
[
i
].
rnti
=
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
rnti
;
ulinfo
[
i
].
puschTransmissionTimestamp
=
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
reception_subframe
;
ulinfo
[
i
].
receptionStatus
=
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
ack
==
1
?
Ok
:
NotOk
;
ulinfo
[
i
].
rnti
=
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
rnti
;
ulinfo
[
i
].
tpc
=
0
;
/* TODO */
ulinfo
[
i
].
receptionStatus
=
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
ack
==
1
?
Ok
:
NotOk
;
ulinfo
[
i
].
servCellIndex
=
0
;
/* TODO: get correct value */
ulinfo
[
i
].
tpc
=
0
;
/* TODO */
ulinfo
[
i
].
servCellIndex
=
0
;
/* TODO: get correct value */
for
(
j
=
0
;
j
<
MAX_LC_LIST
+
1
;
j
++
)
{
for
(
j
=
0
;
j
<
MAX_LC_LIST
+
1
;
j
++
)
{
ulinfo
[
i
].
ulReception
[
j
]
=
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
length
[
j
];
ulinfo
[
i
].
ulReception
[
j
]
=
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
length
[
j
];
printf
(
"MAC to FAPI uplink ue %x
lcid %d size acked %d
\n
"
,
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
rnti
,
j
,
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
length
[
j
]);
printf
(
"MAC to FAPI uplink ue %x
f/sf %d/%d lcid %d size acked %d
\n
"
,
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
rnti
,
frameP
,
subframeP
,
j
,
fapi_ul_ack_nack_data
[
ulsf
].
ack
[
i
].
length
[
j
]);
}
}
}
}
fapi_ul_ack_nack_data
[
ulsf
].
count
=
0
;
fapi_ul_ack_nack_data
[
ulsf
].
count
=
0
;
...
...
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