[dpdk-dev] 答复: How to set timestamp in 82599 NICs in DPDK?

科来 谭春海 chunhai.tan at colasoft.com.cn
Mon Jun 1 08:39:11 CEST 2015


Hi Keunhong,

 

Thanks for your response. Seems ixgbe only supports hw timestamping for PTP packets. But I still don’t understand why igb and e1000 support hw timestamping all packets while ixgbe does not.

 

发件人: Keunhong Lee [mailto:dlrmsghd at gmail.com] 
发送时间: 2015年6月1日 11:51
收件人: 科来 谭春海
抄送: dev at dpdk.org
主题: Re: [dpdk-dev] How to set timestamp in 82599 NICs in DPDK?

 

http://dpdk.org/browse/dpdk/tree/app/test-pmd/ieee1588fwd.c

 

This code example contains enabling PTP with intel NICs.

 

Keunhong.

 

 

 

2015-06-01 12:48 GMT+09:00 Keunhong Lee <dlrmsghd at gmail.com>:

82599 supports hw timestamping for PTP packets.

I don't know whether it supports timestamping for general packets.

 

 

http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L640

says that

 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L640> 640         default:
 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L641> 641                 /*
 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L642> 642                  * register RXMTRL must be set in order to do V1 packets,
 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L643> 643                  * therefore it is not possible to time stamp both V1 Sync and
 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L644> 644                  * Delay_Req messages and hardware does not support
 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L645> 645                  * timestamping all packets => return error
 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L646> 646                  */
 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L647> 647                  <http://lxr.free-electrons.com/ident?i=config> config->rx_filter = HWTSTAMP_FILTER_NONE;
 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L648> 648                 return - <http://lxr.free-electrons.com/ident?i=ERANGE> ERANGE;
 <http://lxr.free-electrons.com/source/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c#L649> 649         }

 

Keunhong.

 

2015-06-01 11:38 GMT+09:00 科来 谭春海 <chunhai.tan at colasoft.com.cn>:

Hi



I noticed that there is a patch which can set hardware timestamp for the
received
packets(http://www.wand.net.nz/trac/libtrace/browser/Intel%20DPDK%20Patches/ <http://www.wand.net.nz/trac/libtrace/browser/Intel%20DPDK%20Patches/hardware_timestamp.patch?rev=ce7153dbc6a13c18bf8033af08c1249527754168> 
hardware_timestamp.patch?rev=ce7153dbc6a13c18bf8033af08c1249527754168), but
it only works in e1000 and igb NICs. I want to capture packets with
timestamp info in 82599 NICs, what should I do? Could you give me some help?



Thanks.



Chunhai Tan






 

 



More information about the dev mailing list