Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1471093 > unrolled thread
| Started by | Chris Zhong <zyw@rock-chips.com> |
|---|---|
| First post | 2016-08-27 05:50 +0200 |
| Last post | 2016-08-29 05:00 +0200 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH] drm/rockchip: vop: make vop register setting take effect Chris Zhong <zyw@rock-chips.com> - 2016-08-27 05:50 +0200
Re: [PATCH] drm/rockchip: vop: make vop register setting take effect Mark yao <mark.yao@rock-chips.com> - 2016-08-29 05:00 +0200
| From | Chris Zhong <zyw@rock-chips.com> |
|---|---|
| Date | 2016-08-27 05:50 +0200 |
| Subject | [PATCH] drm/rockchip: vop: make vop register setting take effect |
| Message-ID | <saCN3-7JW-1@gated-at.bofh.it> |
The setting of vop registers need a reg_done writing to take effect. In vop_enable the vop return to work by by restoring registers, but the registers do not take effect immediately, it should a vop_cfg_done after it. The same thing is needed by windows_disabled in vop_crtc_disable. Signed-off-by: Chris Zhong <zyw@rock-chips.com> --- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index efbc41a..a0bfcff 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c @@ -464,6 +464,8 @@ static int vop_enable(struct drm_crtc *crtc) } memcpy(vop->regs, vop->regsbak, vop->len); + vop_cfg_done(vop); + /* * At here, vop clock & iommu is enable, R/W vop regs would be safe. */ @@ -513,6 +515,8 @@ static void vop_crtc_disable(struct drm_crtc *crtc) spin_unlock(&vop->reg_lock); } + vop_cfg_done(vop); + drm_crtc_vblank_off(crtc); /* -- 1.9.1
[toc] | [next] | [standalone]
| From | Mark yao <mark.yao@rock-chips.com> |
|---|---|
| Date | 2016-08-29 05:00 +0200 |
| Message-ID | <sbkXL-1Bz-3@gated-at.bofh.it> |
| In reply to | #1471093 |
On 2016年08月27日 11:39, Chris Zhong wrote: > The setting of vop registers need a reg_done writing to take effect. > In vop_enable the vop return to work by by restoring registers, but the > registers do not take effect immediately, it should a vop_cfg_done > after it. The same thing is needed by windows_disabled in > vop_crtc_disable. > > Signed-off-by: Chris Zhong <zyw@rock-chips.com> > --- > drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 4 ++++ > 1 file changed, 4 insertions(+) Thanks for your fix. applied to my drm-fixes. > diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > index efbc41a..a0bfcff 100644 > --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > @@ -464,6 +464,8 @@ static int vop_enable(struct drm_crtc *crtc) > } > > memcpy(vop->regs, vop->regsbak, vop->len); > + vop_cfg_done(vop); > + > /* > * At here, vop clock & iommu is enable, R/W vop regs would be safe. > */ > @@ -513,6 +515,8 @@ static void vop_crtc_disable(struct drm_crtc *crtc) > spin_unlock(&vop->reg_lock); > } > > + vop_cfg_done(vop); > + > drm_crtc_vblank_off(crtc); > > /* -- Mark Yao
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web