summaryrefslogtreecommitdiffstats
path: root/include/drm
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2018-09-27 14:41:30 +0200
committerSean Paul <seanpaul@chromium.org>2018-09-27 11:00:42 -0400
commitd6a77ba0eb92d8ffa4b05a442fc20d0a9b11c4c4 (patch)
treeb810efbf7ea918c967f82d1403a3a6b66ead76a1 /include/drm
parent337fe9f5c1e7de1f391c6a692531379d2aa2ee11 (diff)
downloadlinux-d6a77ba0eb92d8ffa4b05a442fc20d0a9b11c4c4.tar.bz2
Revert "drm/panel: Add device_link from panel device to DRM device"
This reverts commit 0c08754b59da5557532d946599854e6df28edc22. commit 0c08754b59da ("drm/panel: Add device_link from panel device to DRM device") creates a circular dependency under these circumstances: 1. The panel depends on dsi-host because it is MIPI-DSI child device. 2. dsi-host depends on the drm parent device (connector->dev->dev) this should be allowed. 3. drm parent dev (connector->dev->dev) depends on the panel after this patch. This makes the dependency circular and while it appears it does not affect any in-tree drivers (they do not seem to have dsi hosts depending on the same parent device) this does not seem right. As noted in a response from Andrzej Hajda, the intent is likely to make the panel dependent on the DRM device (connector->dev) not its parent. But we have no way of doing that since the DRM device doesn't contain any struct device on its own (arguably it should). Revert this until a proper approach is figured out. Cc: Jyri Sarha <jsarha@ti.com> Cc: Eric Anholt <eric@anholt.net> Cc: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Sean Paul <seanpaul@chromium.org> Link: https://patchwork.freedesktop.org/patch/msgid/20180927124130.9102-1-linus.walleij@linaro.org
Diffstat (limited to 'include/drm')
-rw-r--r--include/drm/drm_panel.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h
index 582a0ec0aa70..777814755fa6 100644
--- a/include/drm/drm_panel.h
+++ b/include/drm/drm_panel.h
@@ -89,7 +89,6 @@ struct drm_panel {
struct drm_device *drm;
struct drm_connector *connector;
struct device *dev;
- struct device_link *link;
const struct drm_panel_funcs *funcs;