--- /dev/null
+/*******************************************************************************
+################################################################################
+# Copyright (c) [2017-2019] [Radisys] #
+# #
+# Licensed under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 #
+# #
+# 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. #
+################################################################################
+*******************************************************************************/
+
+/********************************************************************20**
+
+ Name: Ring Buffer
+
+ Type: C include file
+
+ Desc: This file implements the funcitons required to isolate
+ freeing of packer buffers from Main stack processing. This will be
+ usefull in a hyper threaded environment where the freeing can be
+ done from low priority thread
+
+ File: ss_rbuf.h
+
+*********************************************************************21*/
+#ifndef __SS_RBUF_H__
+#define __SS_RBUF_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+#define SS_RNG_TX 1
+#define SS_RNG_RX 0
+#ifdef XEON_SPECIFIC_CHANGES
+#define SS_RNG_MAX_DLPDCP_TO_DLRLC_DQ_CNT 80 /* Max Buffer Read from Ring Buffer from PDCP to RLC in DL Direction */
+#define SS_RNG_MAX_ULMAC_TO_ULRLC_DQ_CNT 200
+#define SS_RNG_ULRLC_TO_ULPDCP_SIZE 256
+#define SS_RNG_ULPDCP_TO_ULDAM_SIZE 2048
+#define SS_RNG_MAX_ULPDCP_TO_ULDAM_DAT_IND_DQ_CNT 512
+#define SS_RNG_MAX_ULRLC_TO_ULPDCP_DAT_IND_DQ_CNT 10
+#else
+#define SS_RNG_MAX_DLPDCP_TO_DLRLC_DQ_CNT 40 /* Max Buffer Read from Ring Buffer from PDCP to RLC in DL Direction */
+#define SS_RNG_MAX_ULMAC_TO_ULRLC_DQ_CNT 25
+#endif
+
+/* ccpu00143253: Changing SS_RNG_DLPDCP_TO_DLRLC_SIZE from 128 to 512,
+ * as the forwarded data packet drop observed during Handover */
+#ifdef L2_L3_SPLIT
+#define SS_RNG_DLPDCP_TO_DLRLC_SIZE 5120
+#else
+#define SS_RNG_DLPDCP_TO_DLRLC_SIZE 5120
+#endif
+
+/* Ring Size Defines, powers of 2 only */
+//#define SS_RNG_ICPU_TO_DLPDCP_SIZE 128
+#define SS_RNG_ICPU_TO_DLPDCP_SIZE 512
+#define SS_RNG_ICPU_TO_DLPDCP_NONPRIO_SIZE 20480
+//#define SS_RNG_DLPDCP_TO_DLRLC_SIZE 1024
+//#define SS_RNG_L2_RT_TO_FREE_MGR_SIZE 512
+//#define SS_RNG_L2_NRT_TO_FREE_MGR_SIZE 640
+/* Increasing from 512 to 1024
+ Increasing from 1024 to 2048 to handle free after re-est */
+#define SS_RNG_L2_RT_TO_FREE_MGR_SIZE 2048
+#define SS_RNG_L2_NRT_TO_FREE_MGR_SIZE 2048
+#define SS_RNG_L2_DLRLC_TO_FREE_MGR_SIZE 2048
+#define SS_RNG_PRC_L1D_TO_CL_SIZE 32
+#define SS_RNG_PRC_FREE_TO_CL_SIZE 256
+#define SS_RNG_ICPU_TO_DAM_SIZE 1024
+#define SS_RNG_PDCP_TO_CIPH_SIZE 2048
+#define SS_RNG_CIPH_TO_PDCP_SIZE 1024
+#ifdef XEON_SPECIFIC_CHANGES
+#define SS_RNG_ULMAC_TO_ULRLC_SIZE 1024
+#else
+#define SS_RNG_ULMAC_TO_ULRLC_SIZE 128
+#endif
+#define SS_RNG_ICCRX_TO_DLRLC_SIZE 640
+#define SS_RNG_DL_SMSG_REUSE_SIZE 384
+#define SS_RNG_DLRLC_TO_DLMAC_SIZE 512
+#define SS_RNG_BUF_MAC_HARQ_SIZE 256
+#ifndef L2_L3_SPLIT
+#ifdef XEON_SPECIFIC_CHANGES
+#define SS_FREE_MGR_MAX_FREE 1024
+#else
+#define SS_FREE_MGR_MAX_FREE 32
+#endif
+#else
+#define SS_FREE_MGR_MAX_FREE 96
+#endif
+
+#ifdef MAC_FREE_RING_BUF
+#define SS_RNG_MAC_FREE_RING_SIZE 8096
+#endif
+#ifdef RLC_FREE_RING_BUF
+#define SS_RNG_RLC_FREE_RING_SIZE 8096
+#endif
+#ifdef LC_EGTP_THREAD
+#define SS_RNG_EGTP_FREE_RING_SIZE 1024
+#endif
+/* Ring Element Size Defines */
+#define SS_RNG_BUF_ELEM sizeof(SsRngBufElem)
+
+/*Defines for Packet Prio */
+#define SS_QCI_BASED_PRIO_UNUSED 0
+#define SS_QCI_BASED_PRIO_HIGH 1
+#define SS_QCI_BASED_PRIO_LOW 2
+#define SS_QCI_BASED_PRIO_OTHER 3
+
+#ifdef XEON_SPECIFIC_CHANGES
+#define SS_RNG_MAC_TO_RLC_HARQ_IND_SIZE 512
+#define SS_RNG_DLRLC_TO_DLMAC_STA_RSP_SIZE 2048
+#define SS_RNG_DLRLC_TO_DLMAC_DAT_REQ_SIZE 256
+#define SS_RNG_MAX_DLRLC_TO_DLMAC_STA_RSP_DQ_CNT 320
+#define SS_RNG_MAX_DLRLC_TO_DLMAC_DAT_REQ_DQ_CNT 40
+#define SS_RNG_MAX_DLMAC_TO_DLRLC_HARQ_STA_DQ_CNT 80
+#else
+#define SS_RNG_MAC_TO_RLC_HARQ_IND_SIZE 64
+#define SS_RNG_DLRLC_TO_DLMAC_STA_RSP_SIZE 512
+#define SS_RNG_DLRLC_TO_DLMAC_DAT_REQ_SIZE 64
+#define SS_RNG_MAX_DLRLC_TO_DLMAC_STA_RSP_DQ_CNT 80
+#define SS_RNG_MAX_DLRLC_TO_DLMAC_DAT_REQ_DQ_CNT 10
+#define SS_RNG_MAX_DLMAC_TO_DLRLC_HARQ_STA_DQ_CNT 20
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+/**************************************************************************
+ End of file
+**************************************************************************/
+