X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fbnxt%2Ftf_core%2Ftf_tcam.h;h=b1e7a92b0b319f684be3542ab5694118b095e89e;hb=f1f6ebc0eaf68a825c6175f5e6a436f7d91660c3;hp=563b08c23562eacdded9610d67c5f34419bb6ea2;hpb=7d5d5b877582ee30e64946ee788d21d50d03ae2e;p=dpdk.git diff --git a/drivers/net/bnxt/tf_core/tf_tcam.h b/drivers/net/bnxt/tf_core/tf_tcam.h index 563b08c235..b1e7a92b0b 100644 --- a/drivers/net/bnxt/tf_core/tf_tcam.h +++ b/drivers/net/bnxt/tf_core/tf_tcam.h @@ -1,5 +1,5 @@ /* SPDX-License-Identifier: BSD-3-Clause - * Copyright(c) 2019-2020 Broadcom + * Copyright(c) 2019-2021 Broadcom * All rights reserved. */ @@ -12,6 +12,9 @@ * The TCAM module provides processing of Internal TCAM types. */ +/* Number of slices per row for WC TCAM */ +extern uint16_t g_wc_num_slices_per_row; + /** * TCAM configuration parameters */ @@ -36,6 +39,10 @@ struct tf_tcam_cfg_parms { * Session resource allocations */ struct tf_session_resources *resources; + /** + * WC number of slices per row. + */ + enum tf_wc_num_slice wc_num_slices; }; /** @@ -134,7 +141,7 @@ struct tf_tcam_alloc_search_parms { /** * [out] Search result status (hit, miss, reject) */ - enum tf_tcam_search_status search_status; + enum tf_search_status search_status; /** * [out] Current refcnt after allocation */ @@ -207,6 +214,10 @@ struct tf_tcam_get_parms { * [in] Type of object to get */ enum tf_tcam_tbl_type type; + /** + * [in] Type of HCAPI + */ + uint16_t hcapi_type; /** * [in] Entry index to read */ @@ -233,6 +244,16 @@ struct tf_tcam_get_parms { uint16_t result_size; }; +/** + * TCAM database + * + * Tcam rm database + * + */ +struct tcam_rm_db { + struct rm_db *tcam_db[TF_DIR_MAX]; +}; + /** * @page tcam TCAM * @@ -372,4 +393,20 @@ int tf_tcam_set(struct tf *tfp, int tf_tcam_get(struct tf *tfp, struct tf_tcam_get_parms *parms); +/** + * Retrieves the allocated resource info + * + * [in] tfp + * Pointer to TF handle, used for HCAPI communication + * + * [in] parms + * Pointer to parameters + * + * Returns + * - (0) if successful. + * - (-EINVAL) on failure. + */ +int tf_tcam_get_resc_info(struct tf *tfp, + struct tf_tcam_resource_info *parms); + #endif /* _TF_TCAM_H */