The drivers gm12u320 and udl operate on USB devices. They leave the PCI device in struct drm_device empty and store the USB device in their own driver structure. It's expected that DRM core and helpers only touch the PCI-device field for actual PCI devices. Fix this special case by upcasting struct drm_device.dev to the USB device. The drivers' udev variables are being removed. v2: * upcast USB device from struct drm_device.dev (Daniel) Thomas Zimmermann (3): drm: Add USB helpers drm/tiny/gm12u320: Retrieve USB device from struct drm_device.dev drm/udl: Retrieve USB device from struct drm_device.dev Documentation/gpu/drm-internals.rst | 5 +++ drivers/gpu/drm/tiny/gm12u320.c | 52 +++++++++++++---------------- drivers/gpu/drm/udl/udl_connector.c | 9 ++--- drivers/gpu/drm/udl/udl_drv.c | 3 -- drivers/gpu/drm/udl/udl_drv.h | 1 - drivers/gpu/drm/udl/udl_main.c | 25 ++++++++------ include/drm/drm_usb_helper.h | 25 ++++++++++++++ 7 files changed, 73 insertions(+), 47 deletions(-) create mode 100644 include/drm/drm_usb_helper.h -- 2.29.0 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel