MCPcopy Create free account
hub / github.com/F-Stack/f-stack / ena_parse_devargs

Function ena_parse_devargs

dpdk/drivers/net/ena/ena_ethdev.c:3669–3706  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3667}
3668
3669static int ena_parse_devargs(struct ena_adapter *adapter,
3670 struct rte_devargs *devargs)
3671{
3672 static const char * const allowed_args[] = {
3673 ENA_DEVARG_LARGE_LLQ_HDR,
3674 ENA_DEVARG_MISS_TXC_TO,
3675 ENA_DEVARG_ENABLE_LLQ,
3676 NULL,
3677 };
3678 struct rte_kvargs *kvlist;
3679 int rc;
3680
3681 if (devargs == NULL)
3682 return 0;
3683
3684 kvlist = rte_kvargs_parse(devargs->args, allowed_args);
3685 if (kvlist == NULL) {
3686 PMD_INIT_LOG(ERR, "Invalid device arguments: %s\n",
3687 devargs->args);
3688 return -EINVAL;
3689 }
3690
3691 rc = rte_kvargs_process(kvlist, ENA_DEVARG_LARGE_LLQ_HDR,
3692 ena_process_bool_devarg, adapter);
3693 if (rc != 0)
3694 goto exit;
3695 rc = rte_kvargs_process(kvlist, ENA_DEVARG_MISS_TXC_TO,
3696 ena_process_uint_devarg, adapter);
3697 if (rc != 0)
3698 goto exit;
3699 rc = rte_kvargs_process(kvlist, ENA_DEVARG_ENABLE_LLQ,
3700 ena_process_bool_devarg, adapter);
3701
3702exit:
3703 rte_kvargs_free(kvlist);
3704
3705 return rc;
3706}
3707
3708static int ena_setup_rx_intr(struct rte_eth_dev *dev)
3709{

Callers 1

eth_ena_dev_initFunction · 0.85

Calls 3

rte_kvargs_parseFunction · 0.85
rte_kvargs_processFunction · 0.85
rte_kvargs_freeFunction · 0.85

Tested by

no test coverage detected