RE: [Intel-gfx] [RFC][PATCH 5/5] drm/i915/display: Add Nearest-neighbor based integer scaling support

From: Laxminarayan Bharadiya, Pankaj
Date: Fri Feb 28 2020 - 00:50:23 EST




> -----Original Message-----
> From: Daniel Stone <daniel@xxxxxxxxxxxxx>
> Sent: 25 February 2020 13:00
> To: Laxminarayan Bharadiya, Pankaj
> <pankaj.laxminarayan.bharadiya@xxxxxxxxx>
> Cc: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx>; Daniel Vetter
> <daniel@xxxxxxxx>; intel-gfx <intel-gfx@xxxxxxxxxxxxxxxxxxxxx>; dri-devel
> <dri-devel@xxxxxxxxxxxxxxxxxxxxx>; Ville SyrjÃlÃ
> <ville.syrjala@xxxxxxxxxxxxxxx>; David Airlie <airlied@xxxxxxxx>; Maarten
> Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>; tzimmermann@xxxxxxx;
> Maxime Ripard <mripard@xxxxxxxxxx>; mihail.atanassov@xxxxxxx; Joonas
> Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>; Vivi, Rodrigo
> <rodrigo.vivi@xxxxxxxxx>; Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>; Souza,
> Jose <jose.souza@xxxxxxxxx>; De Marchi, Lucas
> <lucas.demarchi@xxxxxxxxx>; Roper, Matthew D
> <matthew.d.roper@xxxxxxxxx>; Deak, Imre <imre.deak@xxxxxxxxx>;
> Shankar, Uma <uma.shankar@xxxxxxxxx>; Nautiyal, Ankit K
> <ankit.k.nautiyal@xxxxxxxxx>; Linux Kernel Mailing List <linux-
> kernel@xxxxxxxxxxxxxxx>
> Subject: Re: [Intel-gfx] [RFC][PATCH 5/5] drm/i915/display: Add Nearest-
> neighbor based integer scaling support
>
> Hi,
>
> On Tue, 25 Feb 2020 at 07:17, Pankaj Bharadiya
> <pankaj.laxminarayan.bharadiya@xxxxxxxxx> wrote:
> > @@ -415,18 +415,26 @@ skl_program_scaler(struct intel_plane *plane,
> > u16 y_vphase, uv_rgb_vphase;
> > int hscale, vscale;
> > const struct drm_plane_state *state = &plane_state->uapi;
> > + u32 src_w = drm_rect_width(&plane_state->uapi.src) >> 16;
> > + u32 src_h = drm_rect_height(&plane_state->uapi.src) >> 16;
> > u32 scaling_filter = PS_FILTER_MEDIUM;
> > + struct drm_rect dst;
> >
> > if (state->scaling_filter ==
> DRM_SCALING_FILTER_NEAREST_NEIGHBOR) {
> > scaling_filter = PS_FILTER_PROGRAMMED;
> > + skl_setup_nearest_neighbor_filter(dev_priv, pipe,
> > + scaler_id);
> > +
> > + /* Make the scaling window size to integer multiple of source
> > + * TODO: Should userspace take desision to round scaling window
> > + * to integer multiple?
> > + */
> > + crtc_w = rounddown(crtc_w, src_w);
> > + crtc_h = rounddown(crtc_h, src_h);
>
> The kernel should absolutely not be changing the co-ordinates that
> userspace requested.

Thanks, Will get rid of this in V2.

Thanks,
Pankaj
>
> Cheers,
> Daniel