On Mon, Jun 20, 2016 at 10:56 AM, Douglas Anderson <[email protected]> wrote: > From: Shawn Lin <[email protected]> > > According to the databook, 10.2us is the max time for dll to be ready to > work. However in testing, some chips need 20us for dll to be ready. This
Nitpick, but description (20uS) and code (more than 25 uS) don't match. > patch adds some extra margin for dllrdy to be ready, fixing our > -ETIMEDOUT issues. > > Signed-off-by: Shawn Lin <[email protected]> > Signed-off-by: Brian Norris <[email protected]> > Signed-off-by: Douglas Anderson <[email protected]> > Acked-by: Kishon Vijay Abraham I <[email protected]> > Tested-by: Heiko Stuebner <[email protected]> > --- > Changes in v3: > - Add Brian's PHY patches into my series > > Changes in v2: None > > drivers/phy/phy-rockchip-emmc.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/phy/phy-rockchip-emmc.c b/drivers/phy/phy-rockchip-emmc.c > index 6ebcf3e41c46..48cbe691a889 100644 > --- a/drivers/phy/phy-rockchip-emmc.c > +++ b/drivers/phy/phy-rockchip-emmc.c > @@ -119,10 +119,11 @@ static int rockchip_emmc_phy_power(struct > rockchip_emmc_phy *rk_phy, > PHYCTRL_ENDLL_MASK, > PHYCTRL_ENDLL_SHIFT)); > /* > - * After enable analog DLL circuits, we need extra 10.2us > - * for dll to be ready for work. > + * After enable analog DLL circuits, we need an extra 10.2us > + * for dll to be ready for work. But according to testing, we > + * find some chips need more than 25us. > */ > - udelay(11); > + udelay(30); > regmap_read(rk_phy->reg_base, > rk_phy->reg_offset + GRF_EMMCPHY_STATUS, > &dllrdy); > -- > 2.8.0.rc3.226.g39d4020 >

