mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-20 02:34:23 +08:00
drm/hisilicon: Fix DRM_INFO printed issue
This patch fixed the bellow no DRM_INFO is printed issue: if (!delay_count) DRM_INFO("phylock and phystopstateclklane is not ready.\n"); There will some printed issues with above info, under certain circumstances: If ((BIT(0) | BIT(2)) & val) is never true, break will not happen and delay_count will be max u32 value (?), and no DRM_INFO is printed. Also if ((BIT(0) | BIT(2)) & val) is true at the last possible loop round, break happens, but now delay_count is already zero ( because of earlier delay_count-- ) and DRM_INFO is erroneously printed. Thanks to Juha Leppänen, he reports to me this issue. Signed-off-by: Xinliang Liu <xinliang.liu@linaro.org> Reported-by: Juha Leppänen <juha_efku@dnainternet.net>
This commit is contained in:
parent
12cb4c87aa
commit
165cccc843
@ -430,12 +430,13 @@ static void dsi_set_mipi_phy(void __iomem *base,
|
|||||||
* wait for phy's clock ready
|
* wait for phy's clock ready
|
||||||
*/
|
*/
|
||||||
delay_count = 100;
|
delay_count = 100;
|
||||||
while (delay_count--) {
|
while (delay_count) {
|
||||||
val = readl(base + PHY_STATUS);
|
val = readl(base + PHY_STATUS);
|
||||||
if ((BIT(0) | BIT(2)) & val)
|
if ((BIT(0) | BIT(2)) & val)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
udelay(1);
|
udelay(1);
|
||||||
|
delay_count--;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!delay_count)
|
if (!delay_count)
|
||||||
|
Loading…
Reference in New Issue
Block a user