compensation.h (1589B)
1 2 /** \file bcm_int/dnx/cosq/ingress/compensation.h 3 * 4 * 5 * Compansation APIs 6 * 7 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 8 * 9 * Copyright 2007-2020 Broadcom Inc. All rights reserved. 10 */ 11 12 #ifndef _COMPENSATION_H_INCLUDED_ 13 #define _COMPENSATION_H_INCLUDED_ 14 15 #ifndef BCM_DNX_SUPPORT 16 #error "This file is for use by DNX (JR2) family only!" 17 #endif 18 19 #include <shared/shrextend/shrextend_debug.h> 20 #include <shared/gport.h> 21 22 /** 23 * \brief 24 * Set per-in-port enable for Scheduler Compensation 25 * \param [in] unit - unit 26 * \param [in] enable - enable 27 * \return 28 * shr_error_e 29 * \remark 30 * None 31 * \see 32 * NONE 33 */ 34 shr_error_e dnx_cosq_ingress_compensation_scheduler_per_port_enable_set( 35 int unit, 36 int enable); 37 38 /** 39 * \brief 40 * Get per-in-port enable for Scheduler Compensation 41 * \param [in] unit - unit 42 * \param [out] enable - enable 43 * \return 44 * shr_error_e 45 * \remark 46 * None 47 * \see 48 * NONE 49 */ 50 shr_error_e dnx_cosq_ingress_compensation_scheduler_per_port_enable_get( 51 int unit, 52 int *enable); 53 54 /** 55 * \brief 56 * Get voq compensation profile from HW. 57 * \param [in] unit - unit 58 * \param [in] core_id - device core id 59 * \param [in] voq - queue id 60 * \param [out] credit_class - voq compensation profile 61 * \return 62 * shr_error_e 63 * \remark 64 * None 65 * \see 66 * NONE 67 */ 68 shr_error_e dnx_cosq_ingress_compensation_voq_compesation_profile_hw_get( 69 int unit, 70 int core_id, 71 uint32 voq, 72 uint32 *credit_class); 73 74 #endif /** _COMPENSATION_H_INCLUDED_ */