Re: [PATCH v8 net-next 6/6] octeontx2-af: npc: Support for custom KPU profile from filesystem
From: Simon Horman <horms@kernel.org>
Date: 2026-03-27 13:30:41
Also in:
lkml
On Wed, Mar 25, 2026 at 12:51:59PM +0530, Ratheesh Kannoth wrote: ... Thanks for the updates, much appreciated. I have a few more minor questions.
+void npc_load_kpu_profile(struct rvu *rvu)
+{
+ struct npc_kpu_profile_adapter *profile = &rvu->kpu;
+ const char *kpu_profile = rvu->kpu_pfl_name;
+
+ profile->from_fs = false;
+
+ /* If user not specified profile customization */
+ if (!strncmp(kpu_profile, def_pfl_name, KPU_NAME_LEN)) {
+ npc_prepare_default_kpu(rvu, profile);
+ return;
+ }
+
+ /* Order of preceedence for load loading NPC profile (high to low)
+ * Firmware binary in filesystem.
+ * Firmware database method.
+ * Default KPU profile.
+ */
+
+ /* No support for filesystem KPU loading for cn20k */
+npc_prepare_default_kpu if (!is_cn20k(rvu->pdev)) {
+ if (!npc_load_kpu_profile_from_fs(rvu))AI review flags that: npc_load_kpu_profile_from_fs() calls npc_apply_custom_kpu(), which returns early if the following condition is met. if (fw->kpus > profile->kpus) Does npc_prepare_default_kpu() need to be called before npc_load_kpu_profile_from_fs() to initialise profile->kpus, which is 0 by default due to profile being allocated using devm_kzalloc()?
+ return; + } + + /* First prepare default KPU, then we'll customize top entries. */ + npc_prepare_default_kpu(rvu, profile); + if (!npc_load_kpu_profile_from_fw(rvu)) + return; -revert_to_default: npc_prepare_default_kpu(rvu, profile);
Is this call to npc_prepare_default_kpu() still needed?
}
static void npc_parser_profile_init(struct rvu *rvu, int blkaddr)
{
+ struct npc_kpu_profile_adapter *profile = &rvu->kpu;
struct rvu_hwinfo *hw = rvu->hw;
int num_pkinds, num_kpus, idx;
...