On 10/13/2024 8:44 AM, Mateusz Polchlopek wrote:
> Initially, during VF creation it registers the PTP clock in
> the system and negotiates with PF it's capabilities. In the
> meantime the PF enables the Flexible Descriptor for VF.
> Only this type of descriptor allows to receive Rx timestamps.
> 
> Enabling virtual clock would be possible, though it would probably
> perform poorly due to the lack of direct time access.
> 
> Enable timestamping should be done using userspace tools, e.g.
> hwstamp_ctl -i $VF -r 14
> 
> In order to report the timestamps to userspace, the VF extends
> timestamp to 40b.
> 
> To support this feature the flexible descriptors and PTP part
> in iavf driver have been introduced.
> 
> Side notes:
> Wojtek did great job handling this series during my vacations. Thanks!
> ---
> v11:
> - addressed all comments from v10 done by Alexander L. Short list: changed 
> some
>   logging functions (like pci_warn instead of dev_warn), fix RCT, fix 
> indentation,
>   remove unnecessary comments and casts, change error codes where applicable,
>   remove ptp.initialized field in struct (now check for ptp.clock as Olek
>   suggested), invert condition in few places to avoid +1 indent level, 
> function
>   iavf_ptp_do_aux_work made as static, add more descriptive kdoc for libeth
>   struct fields, restore ptype as a field in libeth struct, remove unused
>   defines, pass to specific functions quad word of descriptor instead of pass
>   rx_desc, add asserts to structs where applicable, return from fields 
> extracting
>   functions when !fields.eop, refactor get VLAN tags, remove unnecessary empty
>   initialization of structs and few more. Please see v10 to compare all 
> changes.
> 
Unfortunately, v11 doesn't compile. Can you please address that in a
v12? While at it, please also address the concern about the post_ts
calls in the .gettimex implementation.

Thanks,
Jake

Reply via email to