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

Function init_port_config

dpdk/app/test-pmd/testpmd.c:4203–4255  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4201}
4202
4203void
4204init_port_config(void)
4205{
4206 portid_t pid;
4207 struct rte_port *port;
4208 int ret, i;
4209
4210 RTE_ETH_FOREACH_DEV(pid) {
4211 port = &ports[pid];
4212
4213 ret = eth_dev_info_get_print_err(pid, &port->dev_info);
4214 if (ret != 0)
4215 return;
4216
4217 if (nb_rxq > 1) {
4218 port->dev_conf.rx_adv_conf.rss_conf.rss_key = NULL;
4219 port->dev_conf.rx_adv_conf.rss_conf.rss_hf =
4220 rss_hf & port->dev_info.flow_type_rss_offloads;
4221 } else {
4222 port->dev_conf.rx_adv_conf.rss_conf.rss_key = NULL;
4223 port->dev_conf.rx_adv_conf.rss_conf.rss_hf = 0;
4224 }
4225
4226 if (port->dcb_flag == 0) {
4227 if (port->dev_conf.rx_adv_conf.rss_conf.rss_hf != 0) {
4228 port->dev_conf.rxmode.mq_mode =
4229 (enum rte_eth_rx_mq_mode)
4230 (rx_mq_mode & RTE_ETH_MQ_RX_RSS);
4231 } else {
4232 port->dev_conf.rxmode.mq_mode = RTE_ETH_MQ_RX_NONE;
4233 port->dev_conf.rxmode.offloads &=
4234 ~RTE_ETH_RX_OFFLOAD_RSS_HASH;
4235
4236 for (i = 0;
4237 i < port->dev_info.nb_rx_queues;
4238 i++)
4239 port->rxq[i].conf.offloads &=
4240 ~RTE_ETH_RX_OFFLOAD_RSS_HASH;
4241 }
4242 }
4243
4244 rxtx_port_config(pid);
4245
4246 ret = eth_macaddr_get_print_err(pid, &port->eth_addr);
4247 if (ret != 0)
4248 return;
4249
4250 if (lsc_interrupt && (*port->dev_info.dev_flags & RTE_ETH_DEV_INTR_LSC))
4251 port->dev_conf.intr_conf.lsc = 1;
4252 if (rmv_interrupt && (*port->dev_info.dev_flags & RTE_ETH_DEV_INTR_RMV))
4253 port->dev_conf.intr_conf.rmv = 1;
4254 }
4255}
4256
4257void set_port_member_flag(portid_t member_pid)
4258{

Callers 12

init_configFunction · 0.85
reconfigFunction · 0.85
cmd_config_rx_tx_parsedFunction · 0.85
cmd_config_burst_parsedFunction · 0.85
cmd_config_thresh_parsedFunction · 0.85

Calls 3

rxtx_port_configFunction · 0.70

Tested by

no test coverage detected