[PATCH 0/1] This patch fixes connection detection for monitors w/o DDC.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Even in source code of this driver there is an author's description:
    /*
     * Even if we have an I2C bus, we can't assume that the cable
     * is disconnected if drm_probe_ddc fails. Some cables don't
     * wire the DDC pins, or the I2C bus might not be working at
     * all.
     */

That's true. DDC and VGA channels are independent, and therefore
we cannot decide whether the monitor is connected or not,
depending on the information from the DDC.

So the monitor should always be considered connected.
Thus there is no reason to use connector detect callback for this
driver: DRM sub-system considers monitor always connected if there
is no detect() callback registered with drm_connector_init().

How to reproduce the bug:
* setup: i.MX8QXP, LCDIF video module + gpu/drm/mxsfb driver,
  adv712x VGA DAC + dumb-vga-dac driver, VGA-connector w/o DDC;
* try to use drivers chain mxsfb-drm + dumb-vga-dac;
* any DRM applications consider the monitor is not connected:
  ===========
  $ weston-start
  $ cat /var/log/weston.log
      ...
      DRM: head 'VGA-1' found, connector 32 is disconnected.
      ...
  $ cat /sys/devices/platform/5a180000.lcdif/drm/card0/card0-VGA-1/status
  unknown
  ===========


Oleksandr Suvorov (1):
  drm/bridge: vga-dac: Fix detect of monitor connection

 drivers/gpu/drm/bridge/dumb-vga-dac.c | 18 ------------------
 1 file changed, 18 deletions(-)

-- 
2.20.1

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux