> -----Original Message-----
> From: Mateusz Polchlopek <mateusz.polchlo...@intel.com>
> Sent: Thursday, April 18, 2024 10:55 AM
> To: intel-wired-...@lists.osuosl.org
> Cc: net...@vger.kernel.org; ho...@kernel.org; anthony.l.ngu...@intel.com;
> Jacob Keller <jacob.e.kel...@intel.com>; Wojciech Drewek
> <wojciech.dre...@intel.com>; Mateusz Polchlopek
> <mateusz.polchlo...@intel.com>
> Subject: [EXTERNAL] [Intel-wired-lan] [PATCH iwl-next v5 09/12] iavf: refactor
> iavf_clean_rx_irq to support legacy and flex descriptors
> 
> From: Jacob Keller <jacob.e.kel...@intel.com>
> 
> Using VIRTCHNL_VF_OFFLOAD_FLEX_DESC, the iAVF driver is capable of
> negotiating to enable the advanced flexible descriptor layout. Add the 
> flexible
> NIC layout (RXDID=2) as a member of the Rx descriptor union.
> 
> Also add bit position definitions for the status and error indications that 
> are
> needed.
> 
> The iavf_clean_rx_irq function needs to extract a few fields from the Rx
> descriptor, including the size, rx_ptype, and vlan_tag.
> Move the extraction to a separate function that decodes the fields into a
> structure. This will reduce the burden for handling multiple descriptor types 
> by
> keeping the relevant extraction logic in one place.
> 
> To support handling an additional descriptor format with minimal code
> duplication, refactor Rx checksum handling so that the general logic is
> separated from the bit calculations. Introduce an iavf_rx_desc_decoded
> structure which holds the relevant bits decoded from the Rx descriptor.
> This will enable implementing flexible descriptor handling without duplicating
> the general logic twice.
> 
> Introduce an iavf_extract_flex_rx_fields, iavf_flex_rx_hash, and
> iavf_flex_rx_csum functions which operate on the flexible NIC descriptor
> format instead of the legacy 32 byte format. Based on the negotiated RXDID,
> select the correct function for processing the Rx descriptors.
> 
> With this change, the Rx hot path should be functional when using either the
> default legacy 32byte format or when we switch to the flexible NIC layout.
> 
> Modify the Rx hot path to add support for the flexible descriptor format and
> add request enabling Rx timestamps for all queues.
> 
> As in ice, make sure we bump the checksum level if the hardware detected a
> packet type which could have an outer checksum. This is important because
> hardware only verifies the inner checksum.
> 

What is the relevance of these csum related changes wrt introducing flex 
descriptor parsing
for HW timestamps ?

Thanks,
Sunil.

Reply via email to