Commit b9e56754 authored by Jani Nikula's avatar Jani Nikula

drm/i915/dsi: call vbt_panel_get_modes directly instead of via drm_panel

Commit 18a00095 ("drm/i915/dsi: Make intel_dsi_enable/disable
directly exec VBT sequences") started calling the VBT sequence functions
directly instead of using the drm_panel hooks. Remove the last drm_panel
hook by calling vbt_panel_get_modes() directly. No functional changes.
Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
Reviewed-by: default avatarBob Paauwe <bob.j.paauwe@intel.com>
Reviewed-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Cc: Madhav Chauhan <madhav.chauhan@intel.com>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Bob Paauwe <bob.j.paauwe@intel.com>
Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/63d0d41f29583507f5968b42b5f52e6574a1f245.1488810382.git.jani.nikula@intel.com
parent 7967ef6a
...@@ -1843,7 +1843,7 @@ void intel_dsi_init(struct drm_i915_private *dev_priv) ...@@ -1843,7 +1843,7 @@ void intel_dsi_init(struct drm_i915_private *dev_priv)
drm_panel_attach(intel_dsi->panel, connector); drm_panel_attach(intel_dsi->panel, connector);
mutex_lock(&dev->mode_config.mutex); mutex_lock(&dev->mode_config.mutex);
drm_panel_get_modes(intel_dsi->panel); intel_dsi_vbt_get_modes(intel_dsi->panel);
list_for_each_entry(scan, &connector->probed_modes, head) { list_for_each_entry(scan, &connector->probed_modes, head) {
if ((scan->type & DRM_MODE_TYPE_PREFERRED)) { if ((scan->type & DRM_MODE_TYPE_PREFERRED)) {
fixed_mode = drm_mode_duplicate(dev, scan); fixed_mode = drm_mode_duplicate(dev, scan);
......
...@@ -147,6 +147,7 @@ void intel_dsi_reset_clocks(struct intel_encoder *encoder, ...@@ -147,6 +147,7 @@ void intel_dsi_reset_clocks(struct intel_encoder *encoder,
enum port port); enum port port);
struct drm_panel *intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id); struct drm_panel *intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id);
int intel_dsi_vbt_get_modes(struct drm_panel *panel);
enum mipi_dsi_pixel_format pixel_format_from_register_bits(u32 fmt); enum mipi_dsi_pixel_format pixel_format_from_register_bits(u32 fmt);
#endif /* _INTEL_DSI_H */ #endif /* _INTEL_DSI_H */
...@@ -492,7 +492,7 @@ void intel_dsi_exec_vbt_sequence(struct intel_dsi *intel_dsi, ...@@ -492,7 +492,7 @@ void intel_dsi_exec_vbt_sequence(struct intel_dsi *intel_dsi,
} }
} }
static int vbt_panel_get_modes(struct drm_panel *panel) int intel_dsi_vbt_get_modes(struct drm_panel *panel)
{ {
struct vbt_panel *vbt_panel = to_vbt_panel(panel); struct vbt_panel *vbt_panel = to_vbt_panel(panel);
struct intel_dsi *intel_dsi = vbt_panel->intel_dsi; struct intel_dsi *intel_dsi = vbt_panel->intel_dsi;
...@@ -514,10 +514,6 @@ static int vbt_panel_get_modes(struct drm_panel *panel) ...@@ -514,10 +514,6 @@ static int vbt_panel_get_modes(struct drm_panel *panel)
return 1; return 1;
} }
static const struct drm_panel_funcs vbt_panel_funcs = {
.get_modes = vbt_panel_get_modes,
};
struct drm_panel *intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id) struct drm_panel *intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
{ {
struct drm_device *dev = intel_dsi->base.base.dev; struct drm_device *dev = intel_dsi->base.base.dev;
...@@ -816,7 +812,6 @@ struct drm_panel *intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id) ...@@ -816,7 +812,6 @@ struct drm_panel *intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
vbt_panel->intel_dsi = intel_dsi; vbt_panel->intel_dsi = intel_dsi;
drm_panel_init(&vbt_panel->panel); drm_panel_init(&vbt_panel->panel);
vbt_panel->panel.funcs = &vbt_panel_funcs;
drm_panel_add(&vbt_panel->panel); drm_panel_add(&vbt_panel->panel);
/* a regular driver would get the device in probe */ /* a regular driver would get the device in probe */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment