[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPj87rPHFCntSOCx=92HitNxRBkXx3xSft0krkFLzdM2FrDSRw@mail.gmail.com>
Date: Tue, 25 Feb 2020 07:29:44 +0000
From: Daniel Stone <daniel@...ishbar.org>
To: Pankaj Bharadiya <pankaj.laxminarayan.bharadiya@...el.com>
Cc: Jani Nikula <jani.nikula@...ux.intel.com>,
Daniel Vetter <daniel@...ll.ch>,
intel-gfx <intel-gfx@...ts.freedesktop.org>,
dri-devel <dri-devel@...ts.freedesktop.org>,
Ville Syrjälä <ville.syrjala@...ux.intel.com>,
David Airlie <airlied@...ux.ie>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
tzimmermann@...e.de, Maxime Ripard <mripard@...nel.org>,
mihail.atanassov@....com,
Joonas Lahtinen <joonas.lahtinen@...ux.intel.com>,
Rodrigo Vivi <rodrigo.vivi@...el.com>,
Chris Wilson <chris@...is-wilson.co.uk>,
José Roberto de Souza <jose.souza@...el.com>,
Lucas De Marchi <lucas.demarchi@...el.com>,
Matt Roper <matthew.d.roper@...el.com>,
Imre Deak <imre.deak@...el.com>,
Uma Shankar <uma.shankar@...el.com>,
"Nautiyal, Ankit K" <ankit.k.nautiyal@...el.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
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@...el.com> 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.
Cheers,
Daniel
Powered by blists - more mailing lists