[PATCH v4 093/103] net/ice/base: make Tx and Rx vernier offset calibration independent
Burakov, Anatoly
anatoly.burakov at intel.com
Wed Jun 26 14:11:32 CEST 2024
On 6/26/2024 1:42 PM, Anatoly Burakov wrote:
> The Tx and Rx calibration and timestamp generation blocks are independent. It is
> not required to wait for both to complete before programming the offsets.
> Instead, we can program the offset for each independently as soon as they are
> ready.
>
> Modify the ice_phy_cfg_tx_offset_e822 and ice_phy_cfg_rx_offset_e822 functions
> with the following additions:
>
> a) Check the relevant P_REG_*_OR bit first and do nothing if the offset has
> already been programmed
>
> b) Check the P_REG_*_OV_STATUS bit to determine if the offset status is ready,
> meaning that the hardware vernier calibration steps have completed. Return
> ICE_ERR_NOT_READY if the offset is not yet read.
>
> The driver can now simply call ice_phy_cfg_rx_offset_e822 and
> ice_phy_cfg_tx_offset_e822 periodically until the offsets have been programmed.
>
> In this way, the Tx and Rx blocks will be enabled independently without each
> waiting on the other block to complete. This can enable faster calibration on
> some setups which have a low rate of either Tx or Rx traffic.
>
> Signed-off-by: Siddaraju DH <siddaraju.dh at intel.com>
> Signed-off-by: Jacob Keller <jacob.e.keller at intel.com>
> Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
> ---
The patch has accidentally been submitted with incorrect authorship
information, please amend on apply to being authored by Siddaraju DH
(from first signoff line).
--
Thanks,
Anatoly
More information about the dev
mailing list