From: Oliver Brown Date: Fri, 4 Aug 2017 06:31:35 +0000 (+0800) Subject: MLK-16137 video: fbdev: add defer probe for mxs framebuffer X-Git-Tag: C0P2-H0.0--20200415~1929 X-Git-Url: https://git.somdevices.com/?a=commitdiff_plain;h=f6d6492aa1083c669f1a9646ad598bf492078cec;p=linux.git MLK-16137 video: fbdev: add defer probe for mxs framebuffer When mxs framebuffer probes, the DISPDRV (here is MIPI DSI driver) is likely not ready, then mxsfb_dispdrv_init() will fail which in turn causes framebuffer dirver probe fails. Add the defer probe schema for second probe later to fix it. Signed-off-by: Oliver Brown Signed-off-by: Robby Cai Reviewed-by: Fancy Fang --- diff --git a/drivers/video/fbdev/mxsfb.c b/drivers/video/fbdev/mxsfb.c index b5e7ae75b894..0ec3c03763f9 100644 --- a/drivers/video/fbdev/mxsfb.c +++ b/drivers/video/fbdev/mxsfb.c @@ -1493,14 +1493,9 @@ static int mxsfb_dispdrv_init(struct platform_device *pdev, kfree(setting.dft_mode_str); - if (IS_ERR(host->dispdrv)) { - if (PTR_ERR(host->dispdrv) == -EPROBE_DEFER) - return PTR_ERR(host->dispdrv); - - host->dispdrv = NULL; - dev_info(dev, "failed to find mxc display driver %s\n", - disp_dev); - } else + if (IS_ERR(host->dispdrv)) + return -EPROBE_DEFER; + else dev_info(dev, "registered mxc display driver %s\n", disp_dev);