On Mon 09 Dec 14:00 PST 2019, Evan Green wrote: > The SDM845 UFS phy seems to want to do a low transition to become > ready, rather than a high transition. Without this, I am unable to > enumerate UFS on SDM845 when booted from USB. > > Fixes: 14ced7e3a1a ('phy: qcom-qmp: Correct ready status, again') > > Signed-off-by: Evan Green <evgreen@xxxxxxxxxxxx> As concluded offline, the current logic is correct, but for some reason we need a longer timeout on this particular device. Regards, Bjorn > --- > > Bjorn, > At this point I'm super confused on what the correct behavior > should be. Lack of documentation doesn't help. I'm worried that this > change breaks UFS on some other platforms, so I'm hoping you or some > PHY folks might have some advice on what the right thing to do is. > > --- > drivers/phy/qualcomm/phy-qcom-qmp.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/phy/qualcomm/phy-qcom-qmp.c b/drivers/phy/qualcomm/phy-qcom-qmp.c > index 091e20303a14d..c4f4294360b6e 100644 > --- a/drivers/phy/qualcomm/phy-qcom-qmp.c > +++ b/drivers/phy/qualcomm/phy-qcom-qmp.c > @@ -1657,7 +1657,7 @@ static int qcom_qmp_phy_enable(struct phy *phy) > if (cfg->type == PHY_TYPE_UFS) { > status = pcs + cfg->regs[QPHY_PCS_READY_STATUS]; > mask = PCS_READY; > - ready = PCS_READY; > + ready = 0; > } else { > status = pcs + cfg->regs[QPHY_PCS_STATUS]; > mask = PHYSTATUS; > -- > 2.21.0 >