lb_hash_int.h (1503B)
1 /*! \file lb_hash_int.h 2 * 3 * LB hash internal header file. 4 * This file contains lb hash definitions internal to the LB hash module 5 * itself. 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 13 14 #ifndef BCMI_LTSW_LB_HASH_INT_H 15 #define BCMI_LTSW_LB_HASH_INT_H 16 17 #include <bcm_int/ltsw/lb_hash.h> 18 19 /* LB hash output selection table database. */ 20 typedef struct bcmint_ltsw_lb_hash_os_tbl_s { 21 /* Support. */ 22 int valid; 23 24 /* Flow based. */ 25 int flow_based; 26 27 /* Table name. */ 28 const char *name; 29 30 /* Key name. */ 31 const char *key_name; 32 33 /* Offset name. */ 34 const char *offset_name; 35 36 /* Sub sel name. */ 37 const char *sub_sel_name; 38 39 /* Concat name. */ 40 const char *concat_name; 41 } bcmint_ltsw_lb_hash_os_tbl_t; 42 43 typedef struct bcmint_ltsw_lb_hash_os_tbl_db_s { 44 /* The table array. */ 45 const bcmint_ltsw_lb_hash_os_tbl_t *tbls; 46 } bcmint_ltsw_lb_hash_os_tbl_db_t; 47 48 /*! 49 * \brief Get the lb hash outut selection table database. 50 * 51 * \param [in] unit Unit number. 52 * \param [in] type LB hash output selection type. 53 * \param [out] tbl_info LB hash output selection table databse. 54 * 55 * \retval SHR_E_NONE No errors. 56 */ 57 extern int 58 bcmint_ltsw_lb_hash_os_tbl_get( 59 int unit, 60 bcmi_ltsw_lb_hash_os_t type, 61 const bcmint_ltsw_lb_hash_os_tbl_t **tbl_info); 62 63 #endif /* BCMI_LTSW_LB_HASH_INT_H */ 64