On Fri, Apr 29, 2016 at 1:32 AM, Vinay Simha simhavcs@gmail.com wrote:
hi,
In nx7, backlight brightness control is controlled by dcs commands of MIPI_DCS_SET_DISPLAY_BRIGHTNESS. there is no PWM going to panel interface directly as we have in ifc6410/nx5
afaiu it is not uncommon to need to control backlight via panel (ie, I think basically all adaptive-backlight panels). I think the answer is for these panels, the panel driver would register it's own backlight driver, rather than get a (pwm, etc) backlight via dt bindings.
Possibly if the backlight commands are standardized enough then we could implement a single drm_panel_dsi_backlight helper which could be created by any of the dsi adaptive-backlight panels (ie. pass in a 'struct mipi_dsi_device *').. something like:
struct drm_panel_dsi_backlight { struct mipi_panel_dsi_device *link; ... }
struct backlight_device *drm_panel_create_dsi_backlight(struct mipi_panel_dsi_device *link) { struct drm_panel_dsi_backlight *dsi_bl; ... return devm_backlight_device_register(&link->dev, ..., dsi_bl, dsi_bl_ops, props); }
BR, -R