stk_domain.h (3561B)
1 /** \file stk/stk_domain.h 2 * 3 * Stacking domain procedures. 4 * 5 * modue id, domain id .... 6 */ 7 /* 8 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 9 * 10 * Copyright 2007-2020 Broadcom Inc. All rights reserved. 11 */ 12 #ifndef DNX_STK_DOMAIN_H_INCLUDED 13 /* 14 * { 15 */ 16 #define DNX_STK_DOMAIN_H_INCLUDED 17 18 #ifndef BCM_DNX_SUPPORT 19 #error "This file is for use by DNX family only!" 20 #endif 21 22 /* 23 * } 24 */ 25 /* 26 * Include files. 27 * { 28 */ 29 #include <bcm/error.h> 30 #include <bcm/types.h> 31 #include <bcm/stack.h> 32 33 #include <shared/shrextend/shrextend_debug.h> 34 35 /** 36 * \brief 37 * Map and unmap module id to domain id. 38 * 39 * \param [in] unit - Unit # 40 * \param [in] modid - module id 41 * \param [in] tm_domain - domain id 42 * \param [in] is_exist - 1 for add, 0 for delete 43 * 44 * \return 45 * see shr_error_e 46 * \remark 47 * * None 48 * \see 49 * * None 50 */ 51 shr_error_e dnx_stk_domain_modid_to_domain_set( 52 int unit, 53 uint32 modid, 54 uint32 tm_domain, 55 uint32 is_exist); 56 57 /** 58 * \brief 59 * Check the mapping exist or not by given a domain id and a module id. 60 * 61 * \param [in] unit - Unit # 62 * \param [in] modid - module id 63 * \param [in] tm_domain - domain id 64 * \param [out] is_exist - flag for mapping exist 65 * 66 * \return 67 * see shr_error_e 68 * \remark 69 * * None 70 * \see 71 * * None 72 */ 73 shr_error_e dnx_stk_domain_modid_to_domain_get( 74 int unit, 75 uint32 modid, 76 uint32 tm_domain, 77 uint32 *is_exist); 78 79 /** 80 * \brief 81 * Map and unmap domain id to stack trunk id. 82 * 83 * \param [in] unit - Unit # 84 * \param [in] tm_domain - domain id 85 * \param [in] stk_tid - stack trunk id 86 * \param [in] is_exist - 1 for add, 0 for delete 87 * 88 * \return 89 * see shr_error_e 90 * \remark 91 * * None 92 * \see 93 * * None 94 */ 95 shr_error_e dnx_stk_domain_stk_domain_to_trunk_set( 96 int unit, 97 uint32 tm_domain, 98 uint32 stk_tid, 99 uint32 is_exist); 100 101 /** 102 * \brief 103 * Check the mapping exist or not by given a domain id and a stack trunk id. 104 * 105 * \param [in] unit - Unit # 106 * \param [in] tm_domain - domain id 107 * \param [in] stk_tid - stack trunk id 108 * \param [out] is_exist - 1 for add, 0 for delete 109 * 110 * \return 111 * see shr_error_e 112 * \remark 113 * * None 114 * \see 115 * * None 116 */ 117 shr_error_e dnx_stk_domain_stk_domain_to_trunk_get( 118 int unit, 119 uint32 tm_domain, 120 uint32 stk_tid, 121 uint32 *is_exist); 122 123 /** 124 * \brief 125 * Check the same domain or not by given a local module id and a sytem port module id. 126 * 127 * \param [in] unit - Unit # 128 * \param [in] local_modid - local module id 129 * \param [in] sysport_modid - sytem port module id 130 * \param [out] is_same_domain - 1 for the same domian; 0 for different domain 131 * 132 * \return 133 * see shr_error_e 134 * \remark 135 * * None 136 * \see 137 * * None 138 */ 139 shr_error_e dnx_stk_domain_stk_modid_to_domain_find( 140 int unit, 141 uint32 local_modid, 142 uint32 sysport_modid, 143 uint32 *is_same_domain); 144 145 /** 146 * \brief 147 * Get the tm domain id by given a module id. 148 * 149 * \param [in] unit - Unit # 150 * \param [in] modid - module id 151 * \param [out] tm_domain - domain id 152 * 153 * \return 154 * see shr_error_e 155 * \remark 156 * * None 157 * \see 158 * * None 159 */ 160 shr_error_e dnx_stk_domain_stk_domain_modid_get( 161 int unit, 162 uint32 modid, 163 int *tm_domain); 164 165 /** 166 * \brief - Verify tm domain id. 167 */ 168 int dnx_stk_domain_tm_domain_verify( 169 int unit, 170 int tm_domain); 171 172 /** 173 * \brief - Verify module id. 174 */ 175 int dnx_stk_domain_modid_verify( 176 int unit, 177 int modid); 178 179 #endif /* DNX_STK_DOMAIN_H_INCLUDED */