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
常顺宇
OpenXG-RAN
Commits
a1403400
Commit
a1403400
authored
9 years ago
by
Florian Kaltenberger
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
adding header files from old svn branch
parent
33325d46
Changes
3
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
1232 additions
and
0 deletions
+1232
-0
openair2/LAYER2/MAC/ff-mac-common.h
openair2/LAYER2/MAC/ff-mac-common.h
+569
-0
openair2/LAYER2/MAC/ff-mac-csched-sap.h
openair2/LAYER2/MAC/ff-mac-csched-sap.h
+389
-0
openair2/LAYER2/MAC/ff-mac-sched-sap.h
openair2/LAYER2/MAC/ff-mac-sched-sap.h
+274
-0
No files found.
openair2/LAYER2/MAC/ff-mac-common.h
0 → 100644
View file @
a1403400
This diff is collapsed.
Click to expand it.
openair2/LAYER2/MAC/ff-mac-csched-sap.h
0 → 100644
View file @
a1403400
This diff is collapsed.
Click to expand it.
openair2/LAYER2/MAC/ff-mac-sched-sap.h
0 → 100644
View file @
a1403400
/*******************************************************************************
OpenAirInterface
Copyright(c) 1999 - 2015 Eurecom
OpenAirInterface is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenAirInterface is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with OpenAirInterface.The full GNU General Public License is
included in this distribution in the file called "COPYING". If not,
see <http://www.gnu.org/licenses/>.
Contact Information
OpenAirInterface Admin: openair_admin@eurecom.fr
OpenAirInterface Tech : openair_tech@eurecom.fr
OpenAirInterface Dev : openair4g-devel@eurecom.fr
Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
*******************************************************************************/
/*! \file ff-mac-sched-sap.h
* \brief this is the implementation of the Femto Forum LTE MAC Scheduler Interface Specification v1.11
* \author Florian Kaltenberger
* \date March 2015
* \version 1.0
* \email: florian.kaltenberger@eurecom.fr
* @ingroup _mac
*/
#ifndef FF_MAC_SCHED_SAP_H
#define FF_MAC_SCHED_SAP_H
#include <stdint.h>
#include <stdbool.h>
#include "ff-mac-common.h"
/**
* Parameters of the API primitives
*/
/**
* Parameters of the SCHED_DL_RLC_BUFFER_REQ primitive.
* See section 4.2.1 for a detailed description of the parameters.
*/
struct
SchedDlRlcBufferReqParameters
{
uint16_t
rnti
;
uint8_t
logicalChannelIdentity
;
uint32_t
rlcTransmissionQueueSize
;
uint16_t
rlcTransmissionQueueHolDelay
;
uint32_t
rlcRetransmissionQueueSize
;
uint16_t
rlcRetransmissionHolDelay
;
uint16_t
rlcStatusPduSize
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_DL_PAGING_BUFFER_REQ primitive.
* See section 4.2.2 for a detailed description of the parameters.
*/
struct
SchedDlPagingBufferReqParameters
{
uint16_t
rnti
;
uint8_t
nr_pagingInfoList
;
struct
PagingInfoListElement_s
*
pagingInfoList
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_DL_MAC_BUFFER_REQ primitive.
* See section 4.2.3 for a detailed description of the parameters.
*/
struct
SchedDlMacBufferReqParameters
{
uint16_t
rnti
;
uint8_t
nr_macCEDL_List
;
struct
MacCeDlListElement_s
*
macCeDlList
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_DL_TRIGGER_REQ primitive.
* See section 4.2.4 for a detailed description of the parameters.
*/
struct
SchedDlTriggerReqParameters
{
uint16_t
sfnSf
;
uint8_t
nr_dlInfoList
;
struct
DlInfoListElement_s
*
dlInfoList
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_DL_RACH_INFO_REQ primitive.
* See section 4.2.5 for a detailed description of the parameters.
*/
struct
SchedDlRachInfoReqParameters
{
uint16_t
sfnSf
;
uint8_t
nrrachList
;
struct
RachListElement_s
*
rachList
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_DL_CQI_INFO_REQ primitive.
* See section 4.2.6 for a detailed description of the parameters.
*/
struct
SchedDlCqiInfoReqParameters
{
uint16_t
sfnSf
;
uint8_t
nrcqiList
;
struct
CqiListElement_s
*
cqiList
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_UL_TRIGGER_REQ primitive.
* See section 4.2.8 for a detailed description of the parameters.
*/
struct
SchedUlTriggerReqParameters
{
uint16_t
sfnSf
;
uint8_t
nr_ulInfoList
;
struct
UlInfoListElement_s
*
ulInfoList
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_UL_NOISE_INTERFERENCE_REQ primitive.
* See section 4.2.9 for a detailed description of the parameters.
*/
struct
SchedUlNoiseInterferenceReqParameters
{
uint8_t
carrierIndex
;
uint16_t
sfnSf
;
uint16_t
rip
;
uint16_t
tnp
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_UL_SR_INFO_REQ primitive.
* See section 4.2.10 for a detailed description of the parameters.
*/
struct
SchedUlSrInfoReqParameters
{
uint16_t
sfnSf
;
uint8_t
nr_srList
;
struct
SrListElement_s
*
srList
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_UL_MAC_CTRL_INFO_REQ primitive.
* See section 4.2.11 for a detailed description of the parameters.
*/
struct
SchedUlMacCtrlInfoReqParameters
{
uint16_t
sfnSf
;
uint8_t
nr_macCEUL_List
;
struct
MacCeUlListElement_s
macCeUlList
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_UL_CQI_INFO_REQ primitive.
* See section 4.2.12 for a detailed description of the parameters.
*/
struct
SchedUlCqiInfoReqParameters
{
uint16_t
sfnSf
;
struct
UlCqi_s
ulCqi
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
//
// SCHED - MAC Scheduler SAP primitives
// (See 4.2 for description of the primitives)
//
void
SchedDlRlcBufferReq
(
const
struct
SchedDlRlcBufferReqParameters
*
params
);
void
SchedDlPagingBufferReq
(
const
struct
SchedDlPagingBufferReqParameters
*
params
);
void
SchedDlMacBufferReq
(
const
struct
SchedDlMacBufferReqParameters
*
params
);
void
SchedDlTriggerReq
(
const
struct
SchedDlTriggerReqParameters
*
params
);
void
SchedDlRachInfoReq
(
const
struct
SchedDlRachInfoReqParameters
*
params
);
void
SchedDlCqiInfoReq
(
const
struct
SchedDlCqiInfoReqParameters
*
params
);
void
SchedUlTriggerReq
(
const
struct
SchedUlTriggerReqParameters
*
params
);
void
SchedUlNoiseInterferenceReq
(
const
struct
SchedUlNoiseInterferenceReqParameters
*
params
);
void
SchedUlSrInfoReq
(
const
struct
SchedUlSrInfoReqParameters
*
params
);
void
SchedUlMacCtrlInfoReq
(
const
struct
SchedUlMacCtrlInfoReqParameters
*
params
);
void
SchedUlCqiInfoReq
(
const
struct
SchedUlCqiInfoReqParameters
*
params
);
/**
* Parameters of the API primitives
*/
/**
* Parameters of the SCHED_DL_CONFIG_IND primitive.
* See section 4.2.7 for a detailed description of the parameters.
*/
struct
SchedDlConfigIndParameters
{
uint8_t
nr_buildDataList
;
uint8_t
nr_buildRARList
;
uint8_t
nr_buildBroadcastList
;
struct
BuildDataListElement_s
*
buildDataList
;
struct
BuildRarListElement_s
*
buildRarList
;
struct
BuildBroadcastListElement_s
*
buildBroadcastList
;
/* mind: this is just number of elems in the next array (not actual number of PDCCH OFDM symbols) */
uint8_t
nr_ofdmSymbolsCount
;
struct
PdcchOfdmSymbolCountListElement_s
*
nrOfPdcchOfdmSymbols
[
MAX_NUM_CCs
];
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
/**
* Parameters of the SCHED_UL_CONFIG_IND primitive.
* See section 4.2.13 for a detailed description of the parameters.
*/
struct
SchedUlConfigIndParameters
{
uint8_t
nr_dciList
;
uint8_t
nr_phichList
;
struct
UlDciListElement_s
*
dciList
;
struct
PhichListElement_s
*
phichList
;
uint8_t
nr_vendorSpecificList
;
struct
VendorSpecificListElement_s
*
vendorSpecificList
;
};
//
// SCHED - MAC Scheduler SAP primitives
// (See 4.2 for description of the primitives)
//
void
SchedDlConfigInd
(
const
struct
SchedDlConfigIndParameters
*
params
);
void
SchedUlConfigInd
(
const
struct
SchedUlConfigIndParameters
*
params
);
#endif
/* FF_MAC_SCHED_SAP_H */
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