aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/udl/udl_main.c
diff options
context:
space:
mode:
authorRobert Tarasov <[email protected]>2017-10-13 00:13:49 +0000
committerAlex Deucher <[email protected]>2017-10-16 19:36:02 +0000
commitafdfc4c6f55f953e073f0eef9e2afa3c8cf78d7c (patch)
tree988d8334f9c836534aef4dfe1e4df3e69c700ab3 /drivers/gpu/drm/udl/udl_main.c
parentdrm/armada: Replace drm_framebuffer_reference/unreference() with _get/put() (diff)
downloadkernel-afdfc4c6f55f953e073f0eef9e2afa3c8cf78d7c.tar.gz
kernel-afdfc4c6f55f953e073f0eef9e2afa3c8cf78d7c.zip
drm/udl: Fixed problem with UDL adpater reconnection
Fixed problem with DisplayLink and DisplayLink certified adapers in drm/udl driver when adapter doesn't want to work if it was initialized with disconnected DVI cable by enabling drm connectot polling and updating current connector's state. Signed-off-by: Robert Tarasov <[email protected]> Reviewed-by: Alex Deucher <[email protected]> Signed-off-by: Alex Deucher <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
Diffstat (limited to 'drivers/gpu/drm/udl/udl_main.c')
-rw-r--r--drivers/gpu/drm/udl/udl_main.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/udl/udl_main.c b/drivers/gpu/drm/udl/udl_main.c
index 0328b2c7b210..f1ec4528a73e 100644
--- a/drivers/gpu/drm/udl/udl_main.c
+++ b/drivers/gpu/drm/udl/udl_main.c
@@ -11,6 +11,7 @@
* more details.
*/
#include <drm/drmP.h>
+#include <drm/drm_crtc_helper.h>
#include "udl_drv.h"
/* -BULK_SIZE as per usb-skeleton. Can we get full page and avoid overhead? */
@@ -350,6 +351,8 @@ int udl_driver_load(struct drm_device *dev, unsigned long flags)
if (ret)
goto err_fb;
+ drm_kms_helper_poll_init(dev);
+
return 0;
err_fb:
udl_fbdev_cleanup(dev);
@@ -371,6 +374,8 @@ void udl_driver_unload(struct drm_device *dev)
{
struct udl_device *udl = dev->dev_private;
+ drm_kms_helper_poll_fini(dev);
+
if (udl->urbs.count)
udl_free_urb_list(dev);