浏览代码

Merge tag 'drm-misc-next-fixes-2018-01-18' of git://anongit.freedesktop.org/drm/drm-misc into drm-next

Fixes for 4.16:

Fixes one Kconfig issue and a enable some panels to work properly.
There is also a fix of error code return in sun4i.

* tag 'drm-misc-next-fixes-2018-01-18' of git://anongit.freedesktop.org/drm/drm-misc:
  drm: Fix PANEL_ORIENTATION_QUIRKS breaking the Kconfig DRM menuconfig
  drm/panel: lvds: Handle the optional regulator case properly
  drm/sun4i: Fix error code in sun4i_tcon_bind()
Dave Airlie 7 年之前
父节点
当前提交
559f17bec5
共有 3 个文件被更改,包括 14 次插入7 次删除
  1. 4 4
      drivers/gpu/drm/Kconfig
  2. 9 2
      drivers/gpu/drm/panel/panel-lvds.c
  3. 1 1
      drivers/gpu/drm/sun4i/sun4i_tcon.c

+ 4 - 4
drivers/gpu/drm/Kconfig

@@ -27,10 +27,6 @@ config DRM_MIPI_DSI
 	bool
 	depends on DRM
 
-# Separate option because drm_panel_orientation_quirks.c is shared with fbdev
-config DRM_PANEL_ORIENTATION_QUIRKS
-	tristate
-
 config DRM_DP_AUX_CHARDEV
 	bool "DRM DP AUX Interface"
 	depends on DRM
@@ -372,6 +368,10 @@ config DRM_SAVAGE
 
 endif # DRM_LEGACY
 
+# Separate option because drm_panel_orientation_quirks.c is shared with fbdev
+config DRM_PANEL_ORIENTATION_QUIRKS
+	tristate
+
 config DRM_LIB_RANDOM
 	bool
 	default n

+ 9 - 2
drivers/gpu/drm/panel/panel-lvds.c

@@ -215,8 +215,15 @@ static int panel_lvds_probe(struct platform_device *pdev)
 	lvds->supply = devm_regulator_get_optional(lvds->dev, "power");
 	if (IS_ERR(lvds->supply)) {
 		ret = PTR_ERR(lvds->supply);
-		dev_err(lvds->dev, "failed to request regulator: %d\n", ret);
-		return ret;
+
+		if (ret != -ENODEV) {
+			if (ret != -EPROBE_DEFER)
+				dev_err(lvds->dev, "failed to request regulator: %d\n",
+					ret);
+			return ret;
+		}
+
+		lvds->supply = NULL;
 	}
 
 	/* Get GPIOs and backlight controller. */

+ 1 - 1
drivers/gpu/drm/sun4i/sun4i_tcon.c

@@ -902,7 +902,7 @@ static int sun4i_tcon_bind(struct device *dev, struct device *master,
 				has_lvds_alt = false;
 			} else {
 				dev_err(dev, "Couldn't get the LVDS PLL\n");
-				return PTR_ERR(tcon->lvds_rst);
+				return PTR_ERR(tcon->lvds_pll);
 			}
 		} else {
 			has_lvds_alt = true;