<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - turning off LVDS leads to acpi_video0/brightness:0 on another console"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=67025">67025</a>
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>chris@chris-wilson.co.uk
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>turning off LVDS leads to acpi_video0/brightness:0 on another console
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>intel-gfx-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux (All)
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>consume.noise@gmail.com
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>x86-64 (AMD64)
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Driver/intel
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>xorg
          </td>
        </tr></table>
      <p>
        <div>
        <pre>First, I thought this was a kernel bug:
    <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED DUPLICATE - Vectors and hats are not correctly displayed"
   href="show_bug.cgi?id=60545">Bug 60545</a> - acpi_video0/brightness:0 after VT switch
    <a href="https://bugzilla.kernel.org/show_bug.cgi?id=60545">https://bugzilla.kernel.org/show_bug.cgi?id=60545</a>

"I'm having an X server configured to use the external monitor only (LVDS off).
If I switch from that X server to a console (or to another X server which uses
the LVDS), then the brightness of the LVDS stays at very low level (text is
unreadable)."

Now, I've figured out that xf86-video-intel is causing this behaviour. (The
affected code in uxa seems to be equal, but I've tested sna only.)
Commenting out the call to sna_output_dpms_backlight() when dpms==DPMSModeOff
in sna_output_dpms() fixed it.

What happens when disabling the LVDS output - the dpms state changes:
- sna_output_dpms(..., dpms=DPMSModeOff)
  o sna_output_dpms_backlight(..., mode=DPMSModeOff)
    * sna_output_backlight_set(..., 0)
      -> writes 0 to $backlight_iface/brightness
  o drmModeConnectorSetProperty(..., dpms=DPMSModeOff)
    ... from libdrm into the kernel ...
    * intel_crtc_dpms()
      -> disable encoder driving the LVDS connector

So, from what I think sna_output_backlight_set(..., 0) is not necessary as this
lowers the brightness, when the output gets turned off anyways. Maybe calling
sna_output_backlight_set() in the case of dpms!=DPMSModeOff is not necessary
too.
I've tested the patched version (just commenting out the dpms==DPMSModeOff case
in sna_output_dpms()) without the acpi_backlight kernel parameter (acpi_video)
and with acpi_backlight=vendor (thinkpad_screen). Both worked.
But, I'm not sure about the implications on other backlight interfaces, maybe
it's necessary for others or for older kernels. That's why I haven't made it a
patch yet.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
      </ul>
    </body>
</html>