[Intel-gfx] [PATCH i-g-t] igt/pm_rps: current freq < user specified min is no longer a fail
Bob Paauwe
bob.j.paauwe at intel.com
Thu Nov 12 10:17:38 PST 2015
On Thu, 12 Nov 2015 11:18:11 +0200
Imre Deak <imre.deak at intel.com> wrote:
> On ke, 2015-11-11 at 13:37 -0800, Bob Paauwe wrote:
> > Since commit
> >
> > commit aed242ff7ebb697e4dff912bd4dc7ec7192f7581
> > Author: Chris Wilson <chris at chris-wilson.co.uk>
> > Date: Wed Mar 18 09:48:21 2015 +0000
> >
> > drm/i915: Relax RPS contraints to allows setting minfreq on
> > idle
> >
> > it is now possible that the current frequency will drop below the
> > user
> > specified minimum frequency. Update the pm_rps tests to reflect that
> > this is no longer considered a failure.
>
> Yes, in case the GPU is idle the frequency will drop now to the idle fr
> equency regardless of the minimum limit set by the user. We should
> still check though if the frequency drops to the idle value not
> something higher. You can use the i915_frequency_info in debugfs for
> that.
>
Yeah, good idea.
Right now, the idle freq is the same as the hardware minimum. So I
could have it check against the hardware min. Adding support to read
the info out i915_frequency_info would be a larger change to the test.
But that might be a better long term solution.
> >
> > Signed-off-by: Bob Paauwe <bob.j.paauwe at intel.com>
> > ---
> > tests/pm_rps.c | 7 +++----
> > 1 file changed, 3 insertions(+), 4 deletions(-)
> >
> > diff --git a/tests/pm_rps.c b/tests/pm_rps.c
> > index 74f08f4..e92ca3b 100644
> > --- a/tests/pm_rps.c
> > +++ b/tests/pm_rps.c
> > @@ -146,7 +146,6 @@ static void checkit(const int *freqs)
> > {
> > igt_assert_lte(freqs[MIN], freqs[MAX]);
> > igt_assert_lte(freqs[CUR], freqs[MAX]);
> > - igt_assert_lte(freqs[MIN], freqs[CUR]);
> > igt_assert_lte(freqs[RPn], freqs[MIN]);
> > igt_assert_lte(freqs[MAX], freqs[RP0]);
> > igt_assert_lte(freqs[RP1], freqs[RP0]);
> > @@ -472,14 +471,14 @@ static void idle_check(void)
> > read_freqs(freqs);
> > dump(freqs);
> > checkit(freqs);
> > - if (freqs[CUR] == freqs[MIN])
> > + if (freqs[CUR] <= freqs[MIN])
> > break;
> > usleep(1000 * IDLE_WAIT_TIMESTEP_MSEC);
> > wait += IDLE_WAIT_TIMESTEP_MSEC;
> > } while (wait < IDLE_WAIT_TIMEOUT_MSEC);
> >
> > - igt_assert_eq(freqs[CUR], freqs[MIN]);
> > - igt_debug("Required %d msec to reach cur=min\n", wait);
> > + igt_assert_lte(freqs[CUR], freqs[MIN]);
> > + igt_debug("Required %d msec to reach cur<=min\n", wait);
> > }
> >
> > #define LOADED_WAIT_TIMESTEP_MSEC 100
--
--
Bob Paauwe
Bob.J.Paauwe at intel.com
IOTG / PED Software Organization
Intel Corp. Folsom, CA
(916) 356-6193
More information about the Intel-gfx
mailing list