From: Wojciech Drewek <wojciech.drewek@intel.com>
To: Alexander Lobakin <aleksander.lobakin@intel.com>
Cc: netdev@vger.kernel.org, alexandr.lobakin@intel.com,
horms@kernel.org, kuba@kernel.org, anthony.l.nguyen@intel.com,
intel-wired-lan@lists.osuosl.org
Subject: Re: [Intel-wired-lan] [PATCH iwl-next v10 02/14] ice: support Rx timestamp on flex descriptor
Date: Fri, 23 Aug 2024 11:52:56 +0200 [thread overview]
Message-ID: <675c1a1b-49c9-4893-8f8c-92d33e2f6dd7@intel.com> (raw)
In-Reply-To: <10175186-abff-42a9-aebe-d8d0d1daaf5c@intel.com>
On 21.08.2024 15:29, Alexander Lobakin wrote:
> From: Wojciech Drewek <wojciech.drewek@intel.com>
> Date: Wed, 21 Aug 2024 14:15:27 +0200
>
>> From: Simei Su <simei.su@intel.com>
>>
>> To support Rx timestamp offload, VIRTCHNL_OP_1588_PTP_CAPS is sent by
>> the VF to request PTP capability and responded by the PF what capability
>> is enabled for that VF.
>>
>> Hardware captures timestamps which contain only 32 bits of nominal
>> nanoseconds, as opposed to the 64bit timestamps that the stack expects.
>> To convert 32b to 64b, we need a current PHC time.
>> VIRTCHNL_OP_1588_PTP_GET_TIME is sent by the VF and responded by the
>> PF with the current PHC time.
>
> [...]
>
>> diff --git a/drivers/net/ethernet/intel/ice/ice_vf_lib.h b/drivers/net/ethernet/intel/ice/ice_vf_lib.h
>> index be4266899690..b7c340bb7aa7 100644
>> --- a/drivers/net/ethernet/intel/ice/ice_vf_lib.h
>> +++ b/drivers/net/ethernet/intel/ice/ice_vf_lib.h
>> @@ -136,6 +136,8 @@ struct ice_vf {
>> const struct ice_virtchnl_ops *virtchnl_ops;
>> const struct ice_vf_ops *vf_ops;
>>
>> + u32 ptp_caps;
>
> Hmm, there'll be a 4-byte hole here now.
> If you put this new field either after ::mbx_info or after ::link_up,
> the struct size won't change at all.
Sure thing
>
>> +
>> /* devlink port data */
>> struct devlink_port devlink_port;
>>
>
> [...]
>
>> diff --git a/include/linux/avf/virtchnl.h b/include/linux/avf/virtchnl.h
>> index 252fad21b04a..012ed2f5f9d0 100644
>> --- a/include/linux/avf/virtchnl.h
>> +++ b/include/linux/avf/virtchnl.h
>> @@ -304,6 +304,18 @@ struct virtchnl_txq_info {
>>
>> VIRTCHNL_CHECK_STRUCT_LEN(24, virtchnl_txq_info);
>>
>> +/* virtchnl_rxq_info_flags - definition of bits in the flags field of the
>> + * virtchnl_rxq_info structure.
>> + *
>> + * @VIRTCHNL_PTP_RX_TSTAMP: request to enable Rx timestamping
>> + *
>> + * Other flag bits are currently * reserved and they may be extended in the
>
> ^
>
> Just curious, what is this?
No idea :), will be removed
>
>> + * future.
>> + */
>> +enum virtchnl_rxq_info_flags {
>> + VIRTCHNL_PTP_RX_TSTAMP = BIT(0),
>> +};
>> +
>> /* VIRTCHNL_OP_CONFIG_RX_QUEUE
>> * VF sends this message to set up parameters for one RX queue.
>> * External data buffer contains one instance of virtchnl_rxq_info.
>> @@ -327,7 +339,8 @@ struct virtchnl_rxq_info {
>> u32 max_pkt_size;
>> u8 crc_disable;
>> u8 rxdid;
>> - u8 pad1[2];
>> + enum virtchnl_rxq_info_flags flags:8; /* see virtchnl_rxq_info_flags */
>> + u8 pad1;
>> u64 dma_ring_addr;
>>
>> /* see enum virtchnl_rx_hsplit; deprecated with AVF 1.0 */
>
> Thanks,
> Olek
next prev parent reply other threads:[~2024-08-23 9:53 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-21 12:15 [Intel-wired-lan] [PATCH iwl-next v10 00/14] Add support for Rx timestamping for both ice and iavf drivers Wojciech Drewek
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 01/14] virtchnl: add support for enabling PTP on iAVF Wojciech Drewek
2024-08-21 13:32 ` Alexander Lobakin
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 02/14] ice: support Rx timestamp on flex descriptor Wojciech Drewek
2024-08-21 13:29 ` Alexander Lobakin
2024-08-23 9:52 ` Wojciech Drewek [this message]
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 03/14] virtchnl: add enumeration for the rxdid format Wojciech Drewek
2024-08-21 13:30 ` Alexander Lobakin
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 04/14] iavf: add support for negotiating flexible RXDID format Wojciech Drewek
2024-08-21 13:52 ` Alexander Lobakin
2024-08-26 9:45 ` Wojciech Drewek
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 05/14] iavf: negotiate PTP capabilities Wojciech Drewek
2024-08-21 14:06 ` Alexander Lobakin
2024-08-26 12:43 ` Wojciech Drewek
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 06/14] iavf: add initial framework for registering PTP clock Wojciech Drewek
2024-08-21 14:20 ` Alexander Lobakin
2024-08-27 10:59 ` Wojciech Drewek
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 07/14] iavf: add support for indirect access to PHC time Wojciech Drewek
2024-08-21 14:31 ` Alexander Lobakin
2024-08-28 11:15 ` Wojciech Drewek
2024-08-28 12:05 ` Alexander Lobakin
2024-08-28 14:50 ` Wojciech Drewek
2024-10-01 7:20 ` Mateusz Polchlopek
2024-10-01 13:49 ` Alexander Lobakin
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 08/14] iavf: periodically cache " Wojciech Drewek
2024-08-21 14:43 ` Alexander Lobakin
2024-08-28 11:31 ` Wojciech Drewek
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 09/14] libeth: move idpf_rx_csum_decoded and idpf_rx_extracted Wojciech Drewek
2024-08-21 15:03 ` Alexander Lobakin
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 10/14] iavf: define Rx descriptors as qwords Wojciech Drewek
2024-08-22 16:16 ` Alexander Lobakin
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 11/14] iavf: refactor iavf_clean_rx_irq to support legacy and flex descriptors Wojciech Drewek
2024-08-22 16:40 ` Alexander Lobakin
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 12/14] iavf: Implement checking DD desc field Wojciech Drewek
2024-08-22 16:46 ` Alexander Lobakin
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 13/14] iavf: handle set and get timestamps ops Wojciech Drewek
2024-08-22 16:48 ` Alexander Lobakin
2024-08-21 12:15 ` [Intel-wired-lan] [PATCH iwl-next v10 14/14] iavf: add support for Rx timestamps to hotpath Wojciech Drewek
2024-08-22 16:54 ` Alexander Lobakin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=675c1a1b-49c9-4893-8f8c-92d33e2f6dd7@intel.com \
--to=wojciech.drewek@intel.com \
--cc=aleksander.lobakin@intel.com \
--cc=alexandr.lobakin@intel.com \
--cc=anthony.l.nguyen@intel.com \
--cc=horms@kernel.org \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox