[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread jigsaw
Hi Venky, Good point. Thus we avoid not only replacing all callbacks, but also adding lpbk field in struct ixgbe_hw. All loopback-aware operations will be then restricted to function ixgbe_dev_start and ixgbe_dev_rxtx_start. The logic of ixgbe_dev_start will be sth. like: ... ... ixgbe_

[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread jigsaw
Hi Thomas, The patch can be made without modifying ixgbe/ at all, I will make another attempt. Please see the proposal in my previous email. The question is how to keep the lpbk_mode field in struct rte_eth_conf future-proof. Or if this is overkill to think about possible future loopback support a

[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread jigsaw
Hi Venky, Thanks for you comments. >>I for one would prefer that the changes not really modify any files in the >>librte_pmd_ixgbe/ixgbe directory With this restriction it is gonna be little bit difficult but still feasible. The solution would be after calling ixgbe_init_shared_code in ixgbe_e

[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread Venkatesan, Venky
That should work perfectly ... :) Regards, -Venky -Original Message- From: jigsaw [mailto:jig...@gmail.com] Sent: Wednesday, September 25, 2013 10:00 AM To: Venkatesan, Venky Cc: Ivan Boule; dev at dpdk.org Subject: Re: [dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread Ivan Boule
Hi Qinglai, I understand your point. In fact, because loopback modes are only intended to be used in debug situations by developers that [are supposed to] know what they do, it is much simpler to use your approach. Please, can you add into the file librte_ether/rte_ethdev.h

[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread jigsaw
Hi Ivan, Appreciations for your comments. I have one question regarding the new field, lpbk_mode, in struct rte_eth_conf. I was thinking how to define the values for this field, then I had a dilemma. 82599 has only two mode of loopback, either Tx->Rx or Rx->Tx. But other controller may have diff

[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread Thomas Monjalon
25/09/2013 16:12, Venkatesan, Venky : > I for one would prefer that the changes not really modify any files in the > librte_pmd_ixgbe/ixgbe directory. Those files are derived directly from > the BSD driver baseline, and any changes will make future merges of newer > code more challenging. The chang

[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread Venkatesan, Venky
Thanks a bunch. It does work. One more suggestion to think about; Once you set the FLU (force link up) bit (bit 0) in the AUTOC (0x42A0) register, the auto-negotiation state will be set to AN_GOOD, the link-up indication should be set regardless. Would you still need the callbacks? You could

[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread Ivan Boule
Hi Qinglai Xiao, See my remarks inline prefixed with IB> Best regards, Ivan On 09/23/2013 09:16 PM, Qinglai Xiao wrote: > Signed-off-by: Qinglai Xiao > --- > lib/librte_ether/rte_ethdev.h|1 + > lib/librte_pmd_ixgbe/ixgbe/ixgbe_82599.c | 122 > +++

[dpdk-dev] [PATCH] Add support for 82599 Tx->Rx loopback operation.

2013-09-25 Thread Venkatesan, Venky
Qinglai/Ivan, I for one would prefer that the changes not really modify any files in the librte_pmd_ixgbe/ixgbe directory. Those files are derived directly from the BSD driver baseline, and any changes will make future merges of newer code more challenging. The changes should be limited to fil