<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - commit c1132367 "Extract GT render sleep (rc6) management" prevents entering s2idle"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=111909#c16">Comment # 16</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - commit c1132367 "Extract GT render sleep (rc6) management" prevents entering s2idle"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=111909">bug 111909</a>
              from <span class="vcard"><a class="email" href="mailto:chris@chris-wilson.co.uk" title="Chris Wilson <chris@chris-wilson.co.uk>"> <span class="fn">Chris Wilson</span></a>
</span></b>
        <pre>commit c601cb2135fda0b5fb9d08153b0125fcb153c7e0
Author: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
Date:   Fri Nov 1 14:10:09 2019 +0000

    drm/i915: Defer rc6 shutdown to suspend_late

    Currently we shutdown rc6 during i915_gem_resume() but this is called
    during the preparation phase (i915_drm_prepare) for all suspend paths,
    but we only want to shutdown rc6 for S3+. Move the actual shutdown to
    i915_gem_suspend_late().

    We then need to differentiate between suspend targets, to distinguish S0
    (s2idle) where the device is kept awake but needs to be in a low power
    mode (the same as runtime suspend) from the device suspend levels where
    we lose control of HW and so must disable any HW access to dangling
    memory.

    Bugzilla: <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - commit c1132367 "Extract GT render sleep (rc6) management" prevents entering s2idle"
   href="show_bug.cgi?id=111909">https://bugs.freedesktop.org/show_bug.cgi?id=111909</a>
    Fixes: c113236718e8 ("drm/i915: Extract GT render sleep (rc6) management")
    Testcase: igt/gem_exec_suspend/power-S0
    Signed-off-by: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
    Cc: Andi Shyti <<a href="mailto:andi.shyti@intel.com">andi.shyti@intel.com</a>>
    Acked-by: Andi Shyti <<a href="mailto:andi.shyti@intel.com">andi.shyti@intel.com</a>>
    Link:
<a href="https://patchwork.freedesktop.org/patch/msgid/20191101141009.15581-4-chris@chris-wilson.co.uk">https://patchwork.freedesktop.org/patch/msgid/20191101141009.15581-4-chris@chris-wilson.co.uk</a>

restores rc6 (if you didn't opt to use guc!) for S0, dropping power consumption
on my bdw by 500mW.

We added

commit 922f28ad8843251adc6760e7f4b867f1d2b5104f
Author: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
Date:   Sun Oct 27 16:15:55 2019 +0000

    i915/gem_exec_suspend: Measure power consumption during suspend

    For this test, we need a laptop running on battery power so that we can
    read the battery charge level before and after suspend. And then wait
    long enough for a reliable measure.

    References: <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - commit c1132367 "Extract GT render sleep (rc6) management" prevents entering s2idle"
   href="show_bug.cgi?id=111909">https://bugs.freedesktop.org/show_bug.cgi?id=111909</a>
    Signed-off-by: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
    Cc: Mika Kuoppala <<a href="mailto:mika.kuoppala@linux.intel.com">mika.kuoppala@linux.intel.com</a>>
    Acked-by: Mika Kuoppala <<a href="mailto:mika.kuoppala@linux.intel.com">mika.kuoppala@linux.intel.com</a>>

so that we are capable of measuring power consumption across suspend and we're
discussing with the CI team how we can automate it.

As for enabling runtime-pm for S0; on my bdw laptop it did not make any
difference, but I will keep looking for opportunities to try it out!</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>