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
Oct 08, 2015
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
Hide 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 */
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