return adjust_head(nfp_prog, meta);
        case BPF_FUNC_map_lookup_elem:
        case BPF_FUNC_map_update_elem:
+       case BPF_FUNC_map_delete_elem:
                return map_call_stack_common(nfp_prog, meta);
        default:
                WARN_ONCE(1, "verifier allowed unsupported function\n");
                        case BPF_FUNC_map_update_elem:
                                val = nfp_prog->bpf->helpers.map_update;
                                break;
+                       case BPF_FUNC_map_delete_elem:
+                               val = nfp_prog->bpf->helpers.map_delete;
+                               break;
                        default:
                                pr_err("relocation of unknown helper %d\n",
                                       val);
 
        case BPF_FUNC_map_update_elem:
                bpf->helpers.map_update = readl(&cap->func_addr);
                break;
+       case BPF_FUNC_map_delete_elem:
+               bpf->helpers.map_delete = readl(&cap->func_addr);
+               break;
        }
 
        return 0;
 
  * @helpers:           helper addressess for various calls
  * @helpers.map_lookup:                map lookup helper address
  * @helpers.map_update:                map update helper address
+ * @helpers.map_delete:                map delete helper address
  */
 struct nfp_app_bpf {
        struct nfp_app *app;
        struct {
                u32 map_lookup;
                u32 map_update;
+               u32 map_delete;
        } helpers;
 };
 
 
                    !nfp_bpf_stack_arg_ok("map_update", env, reg3, NULL))
                        return -EOPNOTSUPP;
                break;
+
+       case BPF_FUNC_map_delete_elem:
+               if (!nfp_bpf_map_call_ok("map_delete", env, meta,
+                                        bpf->helpers.map_delete, reg1) ||
+                   !nfp_bpf_stack_arg_ok("map_delete", env, reg2,
+                                         meta->func_id ? &meta->arg2 : NULL))
+                       return -EOPNOTSUPP;
+               break;
        default:
                pr_vlog(env, "unsupported function id: %d\n", func_id);
                return -EOPNOTSUPP;