drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.h

Source file repositories/reference/linux-study-clean/drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.h

File Facts

System
Linux kernel
Corpus path
drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.h
Extension
.h
Size
1146 bytes
Lines
39
Domain
Driver Families
Bucket
drivers/net
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

#ifndef RVU_NPC_H
#define RVU_NPC_H

u64 npc_enable_mask(int count);
void npc_load_kpu_profile(struct rvu *rvu);
void npc_config_kpuaction(struct rvu *rvu, int blkaddr,
			  const struct npc_kpu_profile_action *kpuaction,
			  int kpu, int entry, bool pkind);
int npc_fwdb_prfl_img_map(struct rvu *rvu, void __iomem **prfl_img_addr,
			  u64 *size);

void npc_mcam_clear_bit(struct npc_mcam *mcam, u16 index);
void npc_mcam_set_bit(struct npc_mcam *mcam, u16 index);

struct npc_kpu_profile_action *
npc_get_ikpu_nth_entry(struct rvu *rvu, int n);

int
npc_get_num_kpu_cam_entries(struct rvu *rvu,
			    const struct npc_kpu_profile *kpu_pfl);
struct npc_kpu_profile_cam *
npc_get_kpu_cam_nth_entry(struct rvu *rvu,
			  const struct npc_kpu_profile *kpu_pfl, int n);

int
npc_get_num_kpu_action_entries(struct rvu *rvu,
			       const struct npc_kpu_profile *kpu_pfl);
struct npc_kpu_profile_action *
npc_get_kpu_action_nth_entry(struct rvu *rvu,
			     const struct npc_kpu_profile *kpu_pfl, int n);
#endif /* RVU_NPC_H */

Annotation

Implementation Notes