X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;ds=sidebyside;f=drivers%2Fcommon%2Fcnxk%2Froc_npc.h;h=996739e80228e08fabbb061529fd6c1a75e522be;hb=a07f7ced436d;hp=c8412407247196daa35e4d137aff7f3602472452;hpb=2199f5cdbe5200dd6ebecbc9bb47aae80ffc9f00;p=dpdk.git diff --git a/drivers/common/cnxk/roc_npc.h b/drivers/common/cnxk/roc_npc.h index c841240724..996739e802 100644 --- a/drivers/common/cnxk/roc_npc.h +++ b/drivers/common/cnxk/roc_npc.h @@ -126,4 +126,44 @@ struct roc_npc { uint8_t reserved[ROC_NPC_MEM_SZ]; } __plt_cache_aligned; +int __roc_api roc_npc_init(struct roc_npc *roc_npc); +int __roc_api roc_npc_fini(struct roc_npc *roc_npc); +const char *__roc_api roc_npc_profile_name_get(struct roc_npc *roc_npc); + +struct roc_npc_flow *__roc_api +roc_npc_flow_create(struct roc_npc *roc_npc, const struct roc_npc_attr *attr, + const struct roc_npc_item_info pattern[], + const struct roc_npc_action actions[], int *errcode); +int __roc_api roc_npc_flow_destroy(struct roc_npc *roc_npc, + struct roc_npc_flow *flow); +int __roc_api roc_npc_mcam_free_entry(struct roc_npc *roc_npc, uint32_t entry); +int __roc_api roc_npc_mcam_alloc_entry(struct roc_npc *roc_npc, + struct roc_npc_flow *mcam, + struct roc_npc_flow *ref_mcam, int prio, + int *resp_count); +int __roc_api roc_npc_mcam_alloc_entries(struct roc_npc *roc_npc, int ref_entry, + int *alloc_entry, int req_count, + int priority, int *resp_count); +int __roc_api roc_npc_mcam_ena_dis_entry(struct roc_npc *roc_npc, + struct roc_npc_flow *mcam, + bool enable); +int __roc_api roc_npc_mcam_write_entry(struct roc_npc *roc_npc, + struct roc_npc_flow *mcam); +int __roc_api roc_npc_flow_parse(struct roc_npc *roc_npc, + const struct roc_npc_attr *attr, + const struct roc_npc_item_info pattern[], + const struct roc_npc_action actions[], + struct roc_npc_flow *flow); +int __roc_api roc_npc_get_low_priority_mcam(struct roc_npc *roc_npc); + +int __roc_api roc_npc_mcam_free_counter(struct roc_npc *roc_npc, + uint16_t ctr_id); + +int __roc_api roc_npc_mcam_read_counter(struct roc_npc *roc_npc, + uint32_t ctr_id, uint64_t *count); +int __roc_api roc_npc_mcam_clear_counter(struct roc_npc *roc_npc, + uint32_t ctr_id); + +int __roc_api roc_npc_mcam_free_all_resources(struct roc_npc *roc_npc); + #endif /* _ROC_NPC_H_ */