[PATCH] phy: airoha: adjust initialization delay in airoha_pcie_phy_init()
Lorenzo Bianconi
lorenzo at kernel.org
Mon Aug 5 10:17:54 PDT 2024
> On 09-07-24, 09:03, Lorenzo Bianconi wrote:
> > 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>
> > ---
> > 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..445bacfdaaf4 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
> > + */
> > + mdelay(PHY_HW_INIT_TIME_MS);
>
> Why not use msleep()...?
ack, you are right, it is not in an atomic context. I will fix it in v2.
Regards,
Lorenzo
>
> --
> ~Vinod
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-phy/attachments/20240805/c53fdb55/attachment.sig>
More information about the linux-phy
mailing list