numam-dpdk/drivers/common/cnxk/roc_idev_priv.h
Anoob Joseph 0a2879b2e8 common/cnxk: add CPT get/set
Add APIs to set & get CPT device.

Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Acked-by: Akhil Goyal <gakhil@marvell.com>
2021-07-07 21:15:08 +02:00

44 lines
969 B
C

/* SPDX-License-Identifier: BSD-3-Clause
* Copyright(C) 2021 Marvell.
*/
#ifndef _ROC_IDEV_PRIV_H_
#define _ROC_IDEV_PRIV_H_
/* Intra device related functions */
struct npa_lf;
struct roc_bphy;
struct roc_cpt;
struct idev_cfg {
uint16_t sso_pf_func;
uint16_t npa_pf_func;
struct npa_lf *npa;
uint16_t npa_refcnt;
uint32_t max_pools;
uint16_t lmt_pf_func;
uint16_t num_lmtlines;
uint64_t lmt_base_addr;
struct roc_bphy *bphy;
struct roc_cpt *cpt;
};
/* Generic */
struct idev_cfg *idev_get_cfg(void);
void idev_set_defaults(struct idev_cfg *idev);
/* idev npa */
uint16_t idev_npa_pffunc_get(void);
struct npa_lf *idev_npa_obj_get(void);
uint32_t idev_npa_maxpools_get(void);
void idev_npa_maxpools_set(uint32_t max_pools);
uint16_t idev_npa_lf_active(struct dev *dev);
/* idev sso */
void idev_sso_pffunc_set(uint16_t sso_pf_func);
uint16_t idev_sso_pffunc_get(void);
/* idev lmt */
uint16_t idev_lmt_pffunc_get(void);
#endif /* _ROC_IDEV_PRIV_H_ */