diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2019-09-04 16:28:03 +0300 |
---|---|---|
committer | Sam Ravnborg <sam@ravnborg.org> | 2019-09-08 19:04:01 +0200 |
commit | 9a2654c0f62a1704f36acb6329f9ccbd539f75ad (patch) | |
tree | 0eb30c790b569ce9e5afd2d94802a7c8d490f81c /include/drm/drm_panel.h | |
parent | 464828dfb1c9aa0febe17d6344d0d0400c151d7c (diff) |
drm/panel: Add and fill drm_panel type field
Add a type field to the drm_panel structure to report the panel type,
using DRM_MODE_CONNECTOR_* macros (the values that make sense are LVDS,
eDP, DSI and DPI). This will be used to initialise the corresponding
connector type.
Update all panel drivers accordingly. The panel-simple driver only
specifies the type for the known to be LVDS panels, while all other
panels are left as unknown and will be converted on a case-by-case
basis as they all need to be carefully reviewed.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20190904132804.29680-2-laurent.pinchart@ideasonboard.com
Diffstat (limited to 'include/drm/drm_panel.h')
-rw-r--r-- | include/drm/drm_panel.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h index 4b9c656dc15e..ce8da64022b4 100644 --- a/include/drm/drm_panel.h +++ b/include/drm/drm_panel.h @@ -140,6 +140,15 @@ struct drm_panel { const struct drm_panel_funcs *funcs; /** + * @connector_type: + * + * Type of the panel as a DRM_MODE_CONNECTOR_* value. This is used to + * initialise the drm_connector corresponding to the panel with the + * correct connector type. + */ + int connector_type; + + /** * @list: * * Panel entry in registry. @@ -148,7 +157,8 @@ struct drm_panel { }; void drm_panel_init(struct drm_panel *panel, struct device *dev, - const struct drm_panel_funcs *funcs); + const struct drm_panel_funcs *funcs, + int connector_type); int drm_panel_add(struct drm_panel *panel); void drm_panel_remove(struct drm_panel *panel); |