drm/i915/dsi: Add DCS control for Panel PWM
If the source of the backlight PWM is from the panel then the PWM can be controlled by DCS command, this patch adds the support to enable/disbale panel PWM, control backlight level etc... v2: Moving the CABC bkl functions to new file.(Jani) v3: Rebase v4: Rebase v5: Use mipi_dsi_dcs_write() instead of mipi_dsi_dcs_write_buffer() (Jani) Move DCS macro`s to include/video/mipi_display.h (Jani) v6: Rename the file to intel_dsi_panel_pwm.c Removing the CABC operations v7 by Jani: renames, rebases, etc. v8 by Jani: s/INTEL_BACKLIGHT_CABC/INTEL_BACKLIGHT_DSI_DCS/ v9 by Jani: rename init function to intel_dsi_dcs_init_backlight_funcs Cc: Jani Nikula <jani.nikula@intel.com> Cc: Daniel Vetter <daniel.vetter@intel.com> Cc: Yetunde Adebisi <yetundex.adebisi@intel.com> Signed-off-by: Deepak M <m.deepak@intel.com> Reviewed-by: Yetunde Adebisi <yetundex.adebisi@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/71238a4b14b8c3a6c04070c789f09f1b4bc00a15.1461676337.git.jani.nikula@intel.com
This commit is contained in:
@@ -1474,10 +1474,25 @@ void intel_dsi_init(struct drm_device *dev)
|
||||
else
|
||||
intel_encoder->crtc_mask = BIT(PIPE_B);
|
||||
|
||||
if (dev_priv->vbt.dsi.config->dual_link)
|
||||
if (dev_priv->vbt.dsi.config->dual_link) {
|
||||
intel_dsi->ports = BIT(PORT_A) | BIT(PORT_C);
|
||||
else
|
||||
|
||||
switch (dev_priv->vbt.dsi.config->dl_dcs_backlight_ports) {
|
||||
case DL_DCS_PORT_A:
|
||||
intel_dsi->dcs_backlight_ports = BIT(PORT_A);
|
||||
break;
|
||||
case DL_DCS_PORT_C:
|
||||
intel_dsi->dcs_backlight_ports = BIT(PORT_C);
|
||||
break;
|
||||
default:
|
||||
case DL_DCS_PORT_A_AND_C:
|
||||
intel_dsi->dcs_backlight_ports = BIT(PORT_A) | BIT(PORT_C);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
intel_dsi->ports = BIT(port);
|
||||
intel_dsi->dcs_backlight_ports = BIT(port);
|
||||
}
|
||||
|
||||
/* Create a DSI host (and a device) for each port. */
|
||||
for_each_dsi_port(port, intel_dsi->ports) {
|
||||
|
Reference in New Issue
Block a user