[Intel-gfx] [PATCH] drm/i915: Fix VIDEO_DIP_CTL bit shifts
Manasi Navare
manasi.d.navare at intel.com
Fri Oct 5 00:27:17 UTC 2018
On Thu, Oct 04, 2018 at 05:00:06PM -0700, Dhinakaran Pandiyan wrote:
> On Thu, 2018-10-04 at 16:28 -0700, Manasi Navare wrote:
> > On Thu, Oct 04, 2018 at 04:13:26PM -0700, Dhinakaran Pandiyan wrote:
> > > On Thu, 2018-10-04 at 16:03 -0700, Lucas De Marchi wrote:
> > > > On Thu, Oct 04, 2018 at 01:51:49PM -0700, Dhinakaran Pandiyan
> > > > wrote:
> > > > > The shifts for VSC_SELECT bits are wrong, fix it. Good thing is
> > > > > the
> > > > > definitions are unused.
No need to mention that defs are unused in the commit since that will not make sense
once the patches get merged that start using these.
More comments below
> > > >
> > > > If they are unused why are we fixing them instead of removing? Or
> > > > better,
> > > > why did we add them?
> > >
> > > I guess there are plans to make use of them, no idea.
> > >
> >
> > Yes, the VDIP_RNABLE_PPS and DIP enables get used in the DSC patch
> > series:
> >
> > https://patchwork.freedesktop.org/series/47514/
> >
> > If you want I can combine this fixes patch with the new revision of
> > DSC patchseries
> > I am about to send out
>
> That might create an unnecessary dependency on the series getting
> merged. We'll have to program these bits for PSR2 from the looks of it.
> Let's get this into the tree soon, can you please review the fix?
>
> -DK
>
> >
> > Manasi
> >
> > > Cc: Anusha, Manasi
> > >
> > > >
> > > > Lucas De Marchi
> > > >
> > > > >
> > > > > Cc: Manasi Navare <manasi.d.navare at intel.com>
> > > > > Cc: Anusha Srivatsa <anusha.srivatsa at intel.com>
> > > > > Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> > > > > Fixes: 7af2be6d54d4 ("drm/i915/icl: Add VIDEO_DIP registers")
> > > > > Signed-off-by: Dhinakaran Pandiyan <
> > > > > dhinakaran.pandiyan at intel.com>
> > > > > ---
> > > > > drivers/gpu/drm/i915/i915_reg.h | 18 +++++++++---------
> > > > > 1 file changed, 9 insertions(+), 9 deletions(-)
> > > > >
> > > > > diff --git a/drivers/gpu/drm/i915/i915_reg.h
> > > > > b/drivers/gpu/drm/i915/i915_reg.h
> > > > > index 27e650fe591b..a0ad77b9212b 100644
> > > > > --- a/drivers/gpu/drm/i915/i915_reg.h
> > > > > +++ b/drivers/gpu/drm/i915/i915_reg.h
> > > > > @@ -4584,6 +4584,15 @@ enum {
> > > > > #define VIDEO_DIP_FREQ_2VSYNC (2 << 16)
> > > > > #define VIDEO_DIP_FREQ_MASK (3 << 16)
> > > > > /* HSW and later: */
> > > > > +#define DRM_DIP_ENABLE (1 << 28)
> > > > > +#define PSR_VSC_BIT_7_SET (1 << 27)
> > > > > +#define VSC_SELECT_MASK (0x3 << 25)
> > > > > +#define VSC_SELECT_SHIFT 25
> > > > > +#define VSC_DIP_HW_HEA_DATA (0 << 25)
> > > > > +#define VSC_DIP_HW_HEA_SW_DATA (1 << 25)
> > > > > +#define VSC_DIP_HW_DATA_SW_HEA (2 << 25)
> > > > > +#define VSC_DIP_SW_HEA_DATA (3 << 25)
> > > > > +#define VDIP_ENABLE_PPS (1 << 24)
> > > > > #define VIDEO_DIP_ENABLE_VSC_HSW (1 << 20)
> > > > > #define VIDEO_DIP_ENABLE_GCP_HSW (1 << 16)
> > > > > #define VIDEO_DIP_ENABLE_AVI_HSW (1 << 12)
> > > > > @@ -4591,15 +4600,6 @@ enum {
> > > > > #define VIDEO_DIP_ENABLE_GMP_HSW (1 << 4)
> > > > > #define VIDEO_DIP_ENABLE_SPD_HSW (1 << 0)
> > > > >
> > > > > -#define DRM_DIP_ENABLE (1 << 28)
> > > > > -#define PSR_VSC_BIT_7_SET (1 << 27)
> > > > > -#define VSC_SELECT_MASK (0x3 << 26)
> > > > > -#define VSC_SELECT_SHIFT 26
> > > > > -#define VSC_DIP_HW_HEA_DATA (0 << 26)
> > > > > -#define VSC_DIP_HW_HEA_SW_DATA (1 << 26)
> > > > > -#define VSC_DIP_HW_DATA_SW_HEA (2 << 26)
> > > > > -#define VSC_DIP_SW_HEA_DATA (3 << 26)
> > > > > -#define VDIP_ENABLE_PPS (1 << 24)
Why do you need to remove all of these defs?
>From the spec, the only shift thats wrong is :
VSC_SELECT_MASK (0x3 << 26)
#define VSC_SELECT_SHIFT 26
#define VSC_DIP_HW_HEA_DATA (0 << 26)
define VSC_DIP_HW_HEA_SW_DATA (1 << 26)
define VSC_DIP_HW_DATA_SW_HEA (2 << 26)
VSC_DIP_SW_HEA_DATA (3 << 26)
Removing others and redefining to be the same is misleading
Other than that the actual fixes look good, double checked with the spec.
So after the above fix and the commit message fix
Reviewed-by: Manasi Navare <manasi.d.navare at intel.com>
Manasi
> > > > >
> > > > > /* Panel power sequencing */
> > > > > #define PPS_BASE 0x61200
> > > > > --
> > > > > 2.14.1
> > > > >
> > > > > _______________________________________________
> > > > > Intel-gfx mailing list
> > > > > Intel-gfx at lists.freedesktop.org
> > > > > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
More information about the Intel-gfx
mailing list