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

ipmc.h (1816B)


      1 /*
      2  * DO NOT EDIT THIS FILE!
      3  * This file is auto-generated.
      4  * Edits to this file will be lost when it is regenerated.
      5  *
      6  * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file.
      7  * 
      8  * Copyright 2007-2020 Broadcom Inc. All rights reserved.
      9  */
     10 
     11 #ifndef BCMI_LTSW_IPMC_H
     12 #define BCMI_LTSW_IPMC_H
     13 
     14 #include <bcm/ipmc.h>
     15 
     16 #include <bcm_int/ltsw/l3_fib.h>
     17 
     18 #include <sal/sal_types.h>
     19 
     20 /*!
     21  * \brief Get the flexctr action ID of IPMC hitbit.
     22  *
     23  * \param [in] unit Unit Number.
     24  * \param [out] action_id Flexctr action ID.
     25  *
     26  * \retval SHR_E_NONE No errors.
     27  * \retval !SHR_E_NONE Failure.
     28  */
     29 extern int
     30 bcmi_ltsw_ipmc_hit_flexctr_action_id_get(
     31     int unit,
     32     uint32_t *action_id);
     33 
     34 /*!
     35  * \brief Get the IPMC hit info. Clear the hit bit if hit_clr is set.
     36  *
     37  * \param [in] unit Unit Number.
     38  * \param [in] object Flexctr object value.
     39  * \param [in] action_id Flexctr action ID.
     40  * \param [in] hit_clr Clear the hit bit.
     41  * \param [out] hit_flags Hit bit flags (BCM_IPMC_HIT/HIT_ENABLE).
     42  *
     43  * \retval SHR_E_NONE No errors.
     44  * \retval !SHR_E_NONE Failure.
     45  */
     46 extern int
     47 bcmi_ltsw_ipmc_flexctr_hit_get(
     48     int unit,
     49     uint32_t object,
     50     uint32_t action_id,
     51     bool hit_clr,
     52     uint32_t *hit_flags);
     53 
     54 /*!
     55  * \brief Transform bcmi_ltsw_l3_fib_t to bcm_ipmc_addr_t.
     56  *
     57  * \param [in] unit Unit Number.
     58  * \param [in] l3_fib L3 fib structure.
     59  * \param [out] ipmc Ipmc data structure.
     60  *
     61  * \retval SHR_E_NONE No errors.
     62  * \retval !SHR_E_NONE Failure.
     63  */
     64 extern int
     65 bcmi_ltsw_ipmc_l3_fib_to_ipmc(
     66     int unit,
     67     bcmi_ltsw_l3_fib_t *l3_fib,
     68     bcm_ipmc_addr_t *ipmc);
     69 
     70 /*!
     71  * \brief Dump ipmc software info.
     72  *
     73  * \param [in] unit Unit Number.
     74  */
     75 extern void
     76 bcmi_ltsw_ipmc_sw_dump(int unit);
     77 
     78 #endif /* BCMI_LTSW_IPMC_H */