提交 8be7c669 编写于 作者: L Laurent Pinchart

fbdev: sh_mobile_lcdc: Fix overlay registers update during pan operation

Updating overlay registers require switching to overlay update mode.
This was correctly done when configuring the overlay format and size,
but not when updating the base address registers during pan operation.
Fix it.
Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
上级 15dede88
......@@ -1539,9 +1539,14 @@ static int sh_mobile_lcdc_overlay_pan(struct fb_var_screeninfo *var,
ovl->base_addr_c = base_addr_c;
}
lcdc_write(ovl->channel->lcdc, LDBCR, LDBCR_UPC(ovl->index));
lcdc_write_overlay(ovl, LDBnBSAYR(ovl->index), ovl->base_addr_y);
lcdc_write_overlay(ovl, LDBnBSACR(ovl->index), ovl->base_addr_c);
lcdc_write(ovl->channel->lcdc, LDBCR,
LDBCR_UPF(ovl->index) | LDBCR_UPD(ovl->index));
ovl->pan_offset = pan_offset;
return 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册
新手
引导
客服 返回
顶部