1*3126df22SRasesh Mody /* SPDX-License-Identifier: BSD-3-Clause 29adde217SRasesh Mody * Copyright (c) 2016 - 2018 Cavium Inc. 3ec94dbc5SRasesh Mody * All rights reserved. 49adde217SRasesh Mody * www.cavium.com 5ec94dbc5SRasesh Mody */ 6ec94dbc5SRasesh Mody 7ec94dbc5SRasesh Mody #ifndef __ECORE_CXT_API_H__ 8ec94dbc5SRasesh Mody #define __ECORE_CXT_API_H__ 9ec94dbc5SRasesh Mody 10ec94dbc5SRasesh Mody struct ecore_hwfn; 11ec94dbc5SRasesh Mody 12ec94dbc5SRasesh Mody struct ecore_cxt_info { 13ec94dbc5SRasesh Mody void *p_cxt; 14ec94dbc5SRasesh Mody u32 iid; 15ec94dbc5SRasesh Mody enum protocol_type type; 16ec94dbc5SRasesh Mody }; 17ec94dbc5SRasesh Mody 18ec94dbc5SRasesh Mody #define MAX_TID_BLOCKS 512 19ec94dbc5SRasesh Mody struct ecore_tid_mem { 20ec94dbc5SRasesh Mody u32 tid_size; 21ec94dbc5SRasesh Mody u32 num_tids_per_block; 22ec94dbc5SRasesh Mody u32 waste; 23ec94dbc5SRasesh Mody u8 *blocks[MAX_TID_BLOCKS]; /* 4K */ 24ec94dbc5SRasesh Mody }; 25ec94dbc5SRasesh Mody 26ec94dbc5SRasesh Mody /** 27ec94dbc5SRasesh Mody * @brief ecoreo_cid_get_cxt_info - Returns the context info for a specific cid 28ec94dbc5SRasesh Mody * 29ec94dbc5SRasesh Mody * 30ec94dbc5SRasesh Mody * @param p_hwfn 31ec94dbc5SRasesh Mody * @param p_info in/out 32ec94dbc5SRasesh Mody * 33ec94dbc5SRasesh Mody * @return enum _ecore_status_t 34ec94dbc5SRasesh Mody */ 35ec94dbc5SRasesh Mody enum _ecore_status_t ecore_cxt_get_cid_info(struct ecore_hwfn *p_hwfn, 36ec94dbc5SRasesh Mody struct ecore_cxt_info *p_info); 37ec94dbc5SRasesh Mody 38ec94dbc5SRasesh Mody #endif 39