diff options
author | Jyri Sarha <jsarha@ti.com> | 2016-11-19 11:00:32 -0500 |
---|---|---|
committer | Jyri Sarha <jsarha@ti.com> | 2016-11-30 07:19:16 -0500 |
commit | f13e088ca8ba28091ff030e89cdd8e25a3a7834d (patch) | |
tree | 844a3f90815150a89f8a9233e6040d42a5ee9f8c /drivers/gpu/drm/tilcdc/tilcdc_crtc.c | |
parent | 0f92e898d187e2c52cec7b93aa9d93ee8ed2cf16 (diff) |
drm/tilcdc: Fix load mode bit-field setting in tilcdc_crtc_enable()
Set LCDC_PALETTE_LOAD_MODE bit-field with new tilcdc_write_mask()
instead of tilcdc_set(). Setting a bit-fields with tilcdc_set() is
fundamentally broken.
Signed-off-by: Jyri Sarha <jsarha@ti.com>
Tested-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Diffstat (limited to 'drivers/gpu/drm/tilcdc/tilcdc_crtc.c')
-rw-r--r-- | drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_crtc.c b/drivers/gpu/drm/tilcdc/tilcdc_crtc.c index 4605942b0ab9..1ed65dd5befe 100644 --- a/drivers/gpu/drm/tilcdc/tilcdc_crtc.c +++ b/drivers/gpu/drm/tilcdc/tilcdc_crtc.c | |||
@@ -237,7 +237,9 @@ static void tilcdc_crtc_enable(struct drm_crtc *crtc) | |||
237 | tilcdc_crtc_enable_irqs(dev); | 237 | tilcdc_crtc_enable_irqs(dev); |
238 | 238 | ||
239 | tilcdc_clear(dev, LCDC_DMA_CTRL_REG, LCDC_DUAL_FRAME_BUFFER_ENABLE); | 239 | tilcdc_clear(dev, LCDC_DMA_CTRL_REG, LCDC_DUAL_FRAME_BUFFER_ENABLE); |
240 | tilcdc_set(dev, LCDC_RASTER_CTRL_REG, LCDC_PALETTE_LOAD_MODE(DATA_ONLY)); | 240 | tilcdc_write_mask(dev, LCDC_RASTER_CTRL_REG, |
241 | LCDC_PALETTE_LOAD_MODE(DATA_ONLY), | ||
242 | LCDC_PALETTE_LOAD_MODE_MASK); | ||
241 | tilcdc_set(dev, LCDC_RASTER_CTRL_REG, LCDC_RASTER_ENABLE); | 243 | tilcdc_set(dev, LCDC_RASTER_CTRL_REG, LCDC_RASTER_ENABLE); |
242 | 244 | ||
243 | drm_crtc_vblank_on(crtc); | 245 | drm_crtc_vblank_on(crtc); |