From: Ville Syrjälä ville.syrjala@linux.intel.com
Often the hardware needs certain clocks running when accessing the palette, so don't go poking at it if the CRTC is disabled. We still call the fb_helper gamma_set hooks to update the driver's notion of what the palette should contain, so that if/when CRTC gets enabled, the driver will load the correct palette.
Signed-off-by: Ville Syrjälä ville.syrjala@linux.intel.com --- The other option would of course to put the check into the load_lut function itself. I don't really care which way we do it as long as the check is somewhere...
drivers/gpu/drm/drm_fb_helper.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c index 1b6ca23..4ecf128 100644 --- a/drivers/gpu/drm/drm_fb_helper.c +++ b/drivers/gpu/drm/drm_fb_helper.c @@ -663,7 +663,9 @@ int drm_fb_helper_setcmap(struct fb_cmap *cmap, struct fb_info *info) if (rc) goto out; } - crtc_funcs->load_lut(crtc); + + if (crtc->enabled) + crtc_funcs->load_lut(crtc); } out: drm_modeset_unlock_all(dev);