From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yakir Yang Subject: Re: [PATCH] drm/rockchip: vop: fix window origin calculation Date: Tue, 10 Nov 2015 18:07:16 +0800 Message-ID: <5641C1D4.8060006@rock-chips.com> References: <1447149550-18595-1-git-send-email-mark.yao@rock-chips.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1447149550-18595-1-git-send-email-mark.yao@rock-chips.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Mark Yao , David Airlie , Heiko Stuebner , Russell King , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org List-Id: linux-rockchip.vger.kernel.org SGkgTWFyaywKCk9uIDExLzEwLzIwMTUgMDU6NTkgUE0sIE1hcmsgWWFvIHdyb3RlOgo+IEZyb206 IERvbWluaWsgQmVociA8ZGJlaHJAY2hyb21pdW0ub3JnPgo+Cj4gVk9QX1dJTnhfRFNQX1NUIGRv ZXMgbm90IHJlcXVpcmUgc3VidHJhY3RpbmcgMSBmcm9tIHRoZSB2YWx1ZXMgd3JpdHRlbiB0bwo+ IGl0LiBJdCBhY3R1YWxseSBjYXVzZXMgdGhlIHNjcmVlbiB0byBiZSBzaGlmdGVkIGJ5IG9uZSBw aXhlbC4KPgo+IFNpZ25lZC1vZmYtYnk6IE1hcmsgWWFvIDxtYXJrLnlhb0Byb2NrLWNoaXBzLmNv bT4KCkkgaGF2ZSBtZWV0IHRoZSBzY3JlZW4gc2hpZnQgcHJvYmxlbSBvbiBSSzMwMzYgU0RLIGJv YXJkLCBhbmQgdGhpcwpjb3VsZCBmaXggbXkgcHJvYmxlbSwgc28KClRlc3RlZC1ieTogWWFraXIg WWFuZyA8eWtrQHJvY2stY2hpcHMuY29tPgoKLSBZYWtpcgoKPiAtLS0KPiAgIGRyaXZlcnMvZ3B1 L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fdm9wLmMgfCAgICA0ICsrLS0KPiAgIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3AuYyBiL2RyaXZlcnMvZ3B1 L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fdm9wLmMKPiBpbmRleCA0ODcxOWRmLi40NzMwYWU0 IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fdm9w LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX3ZvcC5jCj4g QEAgLTk1OSw4ICs5NTksOCBAQCBzdGF0aWMgaW50IHZvcF91cGRhdGVfcGxhbmVfZXZlbnQoc3Ry dWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gICAJdmFsID0gKGRlc3QueTIgLSBkZXN0LnkxIC0gMSkg PDwgMTY7Cj4gICAJdmFsIHw9IChkZXN0LngyIC0gZGVzdC54MSAtIDEpICYgMHhmZmZmOwo+ICAg CVZPUF9XSU5fU0VUKHZvcCwgd2luLCBkc3BfaW5mbywgdmFsKTsKPiAtCXZhbCA9IChkc3Bfc3R5 IC0gMSkgPDwgMTY7Cj4gLQl2YWwgfD0gKGRzcF9zdHggLSAxKSAmIDB4ZmZmZjsKPiArCXZhbCA9 IGRzcF9zdHkgPDwgMTY7Cj4gKwl2YWwgfD0gZHNwX3N0eCAmIDB4ZmZmZjsKPiAgIAlWT1BfV0lO X1NFVCh2b3AsIHdpbiwgZHNwX3N0LCB2YWwpOwo+ICAgCVZPUF9XSU5fU0VUKHZvcCwgd2luLCBy Yl9zd2FwLCByYl9zd2FwKTsKPiAgIAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vZHJpLWRldmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: ykk@rock-chips.com (Yakir Yang) Date: Tue, 10 Nov 2015 18:07:16 +0800 Subject: [PATCH] drm/rockchip: vop: fix window origin calculation In-Reply-To: <1447149550-18595-1-git-send-email-mark.yao@rock-chips.com> References: <1447149550-18595-1-git-send-email-mark.yao@rock-chips.com> Message-ID: <5641C1D4.8060006@rock-chips.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Mark, On 11/10/2015 05:59 PM, Mark Yao wrote: > From: Dominik Behr > > VOP_WINx_DSP_ST does not require subtracting 1 from the values written to > it. It actually causes the screen to be shifted by one pixel. > > Signed-off-by: Mark Yao I have meet the screen shift problem on RK3036 SDK board, and this could fix my problem, so Tested-by: Yakir Yang - Yakir > --- > drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > index 48719df..4730ae4 100644 > --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > @@ -959,8 +959,8 @@ static int vop_update_plane_event(struct drm_plane *plane, > val = (dest.y2 - dest.y1 - 1) << 16; > val |= (dest.x2 - dest.x1 - 1) & 0xffff; > VOP_WIN_SET(vop, win, dsp_info, val); > - val = (dsp_sty - 1) << 16; > - val |= (dsp_stx - 1) & 0xffff; > + val = dsp_sty << 16; > + val |= dsp_stx & 0xffff; > VOP_WIN_SET(vop, win, dsp_st, val); > VOP_WIN_SET(vop, win, rb_swap, rb_swap); > From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752187AbbKJKHb (ORCPT ); Tue, 10 Nov 2015 05:07:31 -0500 Received: from lucky1.263xmail.com ([211.157.147.131]:44201 "EHLO lucky1.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751131AbbKJKH2 (ORCPT ); Tue, 10 Nov 2015 05:07:28 -0500 X-263anti-spam: KSV:0; X-MAIL-GRAY: 1 X-MAIL-DELIVERY: 0 X-KSVirus-check: 0 X-ABS-CHECKED: 4 X-ADDR-CHECKED: 0 X-RL-SENDER: ykk@rock-chips.com X-FST-TO: linux-kernel@vger.kernel.org X-SENDER-IP: 58.22.7.114 X-LOGIN-NAME: ykk@rock-chips.com X-UNIQUE-TAG: <2d44866ff89480a28c1cf83df864d0da> X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 Subject: Re: [PATCH] drm/rockchip: vop: fix window origin calculation To: Mark Yao , David Airlie , Heiko Stuebner , Russell King , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org References: <1447149550-18595-1-git-send-email-mark.yao@rock-chips.com> From: Yakir Yang Message-ID: <5641C1D4.8060006@rock-chips.com> Date: Tue, 10 Nov 2015 18:07:16 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: <1447149550-18595-1-git-send-email-mark.yao@rock-chips.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Mark, On 11/10/2015 05:59 PM, Mark Yao wrote: > From: Dominik Behr > > VOP_WINx_DSP_ST does not require subtracting 1 from the values written to > it. It actually causes the screen to be shifted by one pixel. > > Signed-off-by: Mark Yao I have meet the screen shift problem on RK3036 SDK board, and this could fix my problem, so Tested-by: Yakir Yang - Yakir > --- > drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > index 48719df..4730ae4 100644 > --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > @@ -959,8 +959,8 @@ static int vop_update_plane_event(struct drm_plane *plane, > val = (dest.y2 - dest.y1 - 1) << 16; > val |= (dest.x2 - dest.x1 - 1) & 0xffff; > VOP_WIN_SET(vop, win, dsp_info, val); > - val = (dsp_sty - 1) << 16; > - val |= (dsp_stx - 1) & 0xffff; > + val = dsp_sty << 16; > + val |= dsp_stx & 0xffff; > VOP_WIN_SET(vop, win, dsp_st, val); > VOP_WIN_SET(vop, win, rb_swap, rb_swap); >