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

Function txgbe_parse_devargs

dpdk/drivers/net/txgbe/txgbe_ethdev.c:499–546  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

497}
498
499static void
500txgbe_parse_devargs(struct txgbe_hw *hw, struct rte_devargs *devargs)
501{
502 struct rte_kvargs *kvlist;
503 u16 auto_neg = 1;
504 u16 poll = 0;
505 u16 present = 0;
506 u16 sgmii = 0;
507 u16 ffe_set = 0;
508 u16 ffe_main = 27;
509 u16 ffe_pre = 8;
510 u16 ffe_post = 44;
511
512 if (devargs == NULL)
513 goto null;
514
515 kvlist = rte_kvargs_parse(devargs->args, txgbe_valid_arguments);
516 if (kvlist == NULL)
517 goto null;
518
519 rte_kvargs_process(kvlist, TXGBE_DEVARG_BP_AUTO,
520 &txgbe_handle_devarg, &auto_neg);
521 rte_kvargs_process(kvlist, TXGBE_DEVARG_KR_POLL,
522 &txgbe_handle_devarg, &poll);
523 rte_kvargs_process(kvlist, TXGBE_DEVARG_KR_PRESENT,
524 &txgbe_handle_devarg, &present);
525 rte_kvargs_process(kvlist, TXGBE_DEVARG_KX_SGMII,
526 &txgbe_handle_devarg, &sgmii);
527 rte_kvargs_process(kvlist, TXGBE_DEVARG_FFE_SET,
528 &txgbe_handle_devarg, &ffe_set);
529 rte_kvargs_process(kvlist, TXGBE_DEVARG_FFE_MAIN,
530 &txgbe_handle_devarg, &ffe_main);
531 rte_kvargs_process(kvlist, TXGBE_DEVARG_FFE_PRE,
532 &txgbe_handle_devarg, &ffe_pre);
533 rte_kvargs_process(kvlist, TXGBE_DEVARG_FFE_POST,
534 &txgbe_handle_devarg, &ffe_post);
535 rte_kvargs_free(kvlist);
536
537null:
538 hw->devarg.auto_neg = auto_neg;
539 hw->devarg.poll = poll;
540 hw->devarg.present = present;
541 hw->devarg.sgmii = sgmii;
542 hw->phy.ffe_set = ffe_set;
543 hw->phy.ffe_main = ffe_main;
544 hw->phy.ffe_pre = ffe_pre;
545 hw->phy.ffe_post = ffe_post;
546}
547
548static int
549eth_txgbe_dev_init(struct rte_eth_dev *eth_dev, void *init_params __rte_unused)

Callers 1

eth_txgbe_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