[Intel-gfx] [PATCH 2/2] drm/i915: vlv/chv: fix DSI sideband register accessing
Daniel Vetter
daniel at ffwll.ch
Mon May 19 17:50:45 CEST 2014
On Mon, May 19, 2014 at 08:33:16AM -0700, Jesse Barnes wrote:
> On Mon, 19 May 2014 18:10:18 +0300
> Imre Deak <imre.deak at intel.com> wrote:
>
> > On Mon, 2014-05-19 at 08:01 -0700, Jesse Barnes wrote:
> > > On Mon, 19 May 2014 11:41:18 +0300
> > > Imre Deak <imre.deak at intel.com> wrote:
> > >
> > > > So far we used the wrong opcodes to access the DSI registers, so the
> > > > register writes during DSI programming didn't actually succeed and left
> > > > the registers unchanged. This wasn't a problem for the initial modeset,
> > > > where the BIOS-programmed values happened to work, but after resuming
> > > > from s0ix these registers are reset and failing to program them results
> > > > in a blank screen.
> > > >
> > > > Signed-off-by: Imre Deak <imre.deak at intel.com>
> > > > ---
> > > > drivers/gpu/drm/i915/intel_sideband.c | 4 ++--
> > > > 1 file changed, 2 insertions(+), 2 deletions(-)
> > > >
> > > > diff --git a/drivers/gpu/drm/i915/intel_sideband.c b/drivers/gpu/drm/i915/intel_sideband.c
> > > > index f3909d5..01d841e 100644
> > > > --- a/drivers/gpu/drm/i915/intel_sideband.c
> > > > +++ b/drivers/gpu/drm/i915/intel_sideband.c
> > > > @@ -270,13 +270,13 @@ void intel_sbi_write(struct drm_i915_private *dev_priv, u16 reg, u32 value,
> > > > u32 vlv_flisdsi_read(struct drm_i915_private *dev_priv, u32 reg)
> > > > {
> > > > u32 val = 0;
> > > > - vlv_sideband_rw(dev_priv, DPIO_DEVFN, IOSF_PORT_FLISDSI, SB_MRD_NP,
> > > > + vlv_sideband_rw(dev_priv, DPIO_DEVFN, IOSF_PORT_FLISDSI, SB_CRRDDA_NP,
> > > > reg, &val);
> > > > return val;
> > > > }
> > > >
> > > > void vlv_flisdsi_write(struct drm_i915_private *dev_priv, u32 reg, u32 val)
> > > > {
> > > > - vlv_sideband_rw(dev_priv, DPIO_DEVFN, IOSF_PORT_FLISDSI, SB_MWR_NP,
> > > > + vlv_sideband_rw(dev_priv, DPIO_DEVFN, IOSF_PORT_FLISDSI, SB_CRWRDA_NP,
> > > > reg, &val);
> > > > }
> > >
> > > Nice find... is this documented somewhere so we can put a reference
> > > in? Or is it in the Punit HAS somewhere already and we just missed it?
> >
> > I found it in the VLV2_SidebandMsg_HAS, there is already a comment in
> > this file with a reference to it.
>
> Cool, this one has my
> Reviewed-by: Jesse Barnes <jbarnes at virtuousgeek.org>
> then too.
Both patches merged, thanks.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
More information about the Intel-gfx
mailing list