[Intel-gfx] [PATCH] drm/i915: Fix VIDEO_DIP_CTL bit shifts
Manasi Navare
manasi.d.navare at intel.com
Fri Oct 5 18:10:36 UTC 2018
On Thu, Oct 04, 2018 at 07:56:37PM -0700, Dhinakaran Pandiyan wrote:
> On Thu, 2018-10-04 at 17:27 -0700, Manasi Navare wrote:
> > 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.
> Well, the patch is based on the current state of the code base.
>
Well IMHO that statement is still redundant and more expressive than informative.
Mentioning that this is
a fix for VSC SELECT should suffice. But thats a nitcpick, so its your call.
> >
> > 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
>
> Please see other definitions in the file and the documentation above,
> we generally organize bit definitions in the descending order of their
> position.
>
I still dont see why you had remove earlier defs and redefine since
it was already organized in descending order of their position in the originl
patches starting with DRM_DIP_ENABLE with 1<< 28 all the way to VDIP_ENABLE_PPS with
1 << 24 and your changes keeps the same order with the fix of VSC HSIFT from 26 to 25.
So only those VSC defs should be changed not the entire set.
Manasi
>
> >
> > 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