[PATCH v2] phy: airoha: adjust initialization delay in airoha_pcie_phy_init()
AngeloGioacchino Del Regno
angelogioacchino.delregno at collabora.com
Tue Aug 6 01:17:12 PDT 2024
Il 05/08/24 21:57, Lorenzo Bianconi ha scritto:
> Align phy-pcie initialization delay to the vendor sdk in
> airoha_pcie_phy_init routine and allow the hw to complete required
> configuration before proceeding
>
> Signed-off-by: Lorenzo Bianconi <lorenzo at kernel.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno at collabora.com>
> ---
> Changes since v1:
> - use msleep() instead of mdelay()
> ---
> drivers/phy/phy-airoha-pcie.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/phy/phy-airoha-pcie.c b/drivers/phy/phy-airoha-pcie.c
> index bd3edaa986c8..6d61e6486a03 100644
> --- a/drivers/phy/phy-airoha-pcie.c
> +++ b/drivers/phy/phy-airoha-pcie.c
> @@ -18,6 +18,9 @@
> #define LEQ_LEN_CTRL_MAX_VAL 7
> #define FREQ_LOCK_MAX_ATTEMPT 10
>
> +/* PCIe-PHY initialization time in ms needed by the hw to complete */
> +#define PHY_HW_INIT_TIME_MS 30
> +
> enum airoha_pcie_port_gen {
> PCIE_PORT_GEN1 = 1,
> PCIE_PORT_GEN2,
> @@ -1180,8 +1183,11 @@ static int airoha_pcie_phy_init(struct phy *phy)
> PCIE_DA_XPON_CDR_PR_PWDB);
> airoha_phy_pma1_set_bits(pcie_phy, REG_PCIE_PMA_SS_DA_XPON_PWDB0,
> PCIE_DA_XPON_CDR_PR_PWDB);
> -
> - usleep_range(100, 200);
> + /*
> + * Wait for the time in ms needed by the hw to complete the PCIe-PHY
> + * initialization
...but regardless, I have a nit here (not a blocker for me, hence the R-b tag):
there's no need to say that we're waiting for milliseconds, so this comment can
be just one line:
/* Wait for the PCIe PHY to complete initialization before returning */
Cheers,
Angelo
> + */
> + msleep(PHY_HW_INIT_TIME_MS);
>
> return 0;
> }
More information about the linux-phy
mailing list