openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

tune.h (2779B)


      1 /*
      2  * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file.
      3  * 
      4  * Copyright 2007-2020 Broadcom Inc. All rights reserved.
      5  */
      6 /*
      7  * ! \file bcm_int/dnx/tune/tune.h
      8  * Reserved.$ 
      9  */
     10 
     11 #ifndef _DNX_TUNE_H_INCLUDED_
     12 /*
     13  * { 
     14  */
     15 #define _DNX_TUNE_H_INCLUDED_
     16 
     17 #ifndef BCM_DNX_SUPPORT
     18 #error "This file is for use by DNX (JR2) family only!"
     19 #endif
     20 
     21 /*
     22  * Include files.
     23  * {
     24  */
     25 #include <bcm/cosq.h>
     26 
     27 /**
     28  * \brief - perform  tune module init
     29  * 
     30  * \par DIRECT_INPUT:
     31  *   \param [in] unit -  Unit-ID 
     32  * \par DIRECT OUTPUT:
     33  *   shr_error_e 
     34  * \remark
     35  *   * None
     36  * \see
     37  *   * None
     38  */
     39 shr_error_e dnx_tune_init(
     40     int unit);
     41 
     42 /**
     43  * \brief - perform  tune for bcm_port_add API
     44  *
     45  * \par DIRECT_INPUT:
     46  *   \param [in] unit -  Unit-ID
     47  * \par DIRECT OUTPUT:
     48  *   shr_error_e
     49  * \remark
     50  *   * None
     51  * \see
     52  *   * None
     53  */
     54 shr_error_e dnx_tune_port_add(
     55     int unit);
     56 
     57 /**
     58  * \brief - perform  tune for bcm_port_remove API
     59  *
     60  * \par DIRECT_INPUT:
     61  *   \param [in] unit -  Unit-ID
     62  * \par DIRECT OUTPUT:
     63  *   shr_error_e
     64  * \remark
     65  *   * None
     66  * \see
     67  *   * None
     68  */
     69 shr_error_e dnx_tune_port_remove(
     70     int unit);
     71 
     72 /**
     73  * \brief - Tune global reject drop thresholds
     74  *
     75  * \par DIRECT_INPUT:
     76  *   \param [in] unit -  Unit-ID
     77  *   \param [in] rate_class_id - rate class id to set with default parameters
     78  *   \param [in] create_info - additional information required to set defaults to a rate class.
     79  *              - rate - port rate
     80  *              - attributes - rate class attributes, to refine the defaults. see BCM_COSQ_RATE_CLASS_CREATE_ATTR_*
     81  * \par DIRECT OUTPUT:
     82  *   shr_error_e
     83  * \remark
     84  *   * None
     85  * \see
     86  *   * None
     87  */
     88 shr_error_e dnx_tune_ingress_congestion_default_voq_rate_class_set(
     89     int unit,
     90     int rate_class_id,
     91     bcm_cosq_rate_class_create_info_t * create_info);
     92 
     93 /*
     94  * This section is here only for use by ctest/diag. It is not part of the standard
     95  * operational code.
     96  * See ctest_dnx_dram_operation_test_cmd()
     97  * {
     98  */
     99 /**
    100  * \brief - Tune global reject drop thresholds
    101  *
    102  * \par DIRECT_INPUT:
    103  *   \param [in] unit -  Unit-ID
    104  *   \param [in] rate_class_id - rate class id to set with default parameters
    105  *   \param [in] create_info - additional information required to set defaults to a rate class.
    106  *              - rate - port rate
    107  *              - attributes - rate class attributes, to refine the defaults. see BCM_COSQ_RATE_CLASS_CREATE_ATTR_*
    108  * \par DIRECT OUTPUT:
    109  *   shr_error_e
    110  * \remark
    111  *   * None
    112  * \see
    113  *   * None
    114  */
    115 shr_error_e ctest_dnx_tune_ingress_congestion_default_voq_rate_class_set(
    116     int unit,
    117     int rate_class_id,
    118     bcm_cosq_rate_class_create_info_t * create_info);
    119 /* } */
    120 
    121 /** } */
    122 #endif /*_DNX_TUNE_H_INCLUDED_*/