From: Karol Kolacinski <karol.kolacin...@intel.com>
Date: Thu, 25 Jul 2024 11:34:50 +0200

> E830 PHY supports timestamp ready bitmap.
> Enable the bitmap by refactoring tx init function.
> 
> Reviewed-by: Przemek Kitszel <przemyslaw.kits...@intel.com>
> Signed-off-by: Karol Kolacinski <karol.kolacin...@intel.com>

[...]

> @@ -987,24 +965,25 @@ ice_ptp_init_tx_e82x(struct ice_pf *pf, struct 
> ice_ptp_tx *tx, u8 port)
>  }
>  
>  /**
> - * ice_ptp_init_tx_e810 - Initialize tracking for Tx timestamps
> + * ice_ptp_init_tx - Initialize tracking for Tx timestamps
>   * @pf: Board private structure
>   * @tx: the Tx tracking structure to initialize
> + * @port: the port this structure tracks
>   *
> - * Initialize the Tx timestamp tracker for this PF. For E810 devices, each
> - * port has its own block of timestamps, independent of the other ports.
> + * Initialize the Tx timestamp tracker for this PF. For all PHYs except E82X,
> + * each port has its own block of timestamps, independent of the other ports.

A 'Return:' block?

>   */
> -static int
> -ice_ptp_init_tx_e810(struct ice_pf *pf, struct ice_ptp_tx *tx)
> +static int ice_ptp_init_tx(struct ice_pf *pf, struct ice_ptp_tx *tx, u8 port)
>  {
> -     tx->block = pf->hw.port_info->lport;
> +     tx->block = port;
>       tx->offset = 0;
> -     tx->len = INDEX_PER_PORT_E810;
> +     tx->len = INDEX_PER_PORT;
> +
>       /* The E810 PHY does not provide a timestamp ready bitmap. Instead,
>        * verify new timestamps against cached copy of the last read
>        * timestamp.
>        */
> -     tx->has_ready_bitmap = 0;
> +     tx->has_ready_bitmap = pf->hw.ptp.phy_model != ICE_PHY_E810;
>  
>       return ice_ptp_alloc_tx_tracker(tx);
>  }

[...]

Thanks,
Olek

Reply via email to