[PATCH] drm: cleanup device registration

Sascha Hauer s.hauer at pengutronix.de
Thu Feb 2 03:57:52 PST 2012


The non modesetting drm drivers currently use a handcrafted pci probe
function. This requires the drm core to keep a list of registered devices
for each driver. This series adds a probe function for the non modesetting
drivers and removes the legacy probe code. The USB and platform drivers
use the devices_list aswell which is unnecessary. This is also cleaned
up in this series.

I am confident that the standard pci probe mechanism will work for the non
modesetting drivers, but unfortunately I have non of them handy for testing,
so it would be great if someone with access to one of those devices could
give this series a test.

Sascha

Sascha Hauer (12):
      drm: remove kdriver union from struct drm_driver
      drm: remove platformdev and usbdev from struct drm_device
      drm: remove unused field bus_type from struct drm_bus
      drm: provide a pci probe function for non modesetting devices
      drm: use drm_get_platform_dev and drop drm_platform_init/exit
      drm usb: drop drm_usb_init/exit
      drm: remove now unused device_list
      drm vmwgfx: remove unused field vmw_chipset from struct vmw_private
      drm: Add drm_register_device function
      drm pci: use drm_register_device
      drm platform: use drm_register_device
      drm usb: use drm_register_device

 drivers/gpu/drm/drm_pci.c                 |   98 ++------------------------
 drivers/gpu/drm/drm_platform.c            |  108 +++++------------------------
 drivers/gpu/drm/drm_stub.c                |   56 +++++++++++++++
 drivers/gpu/drm/drm_usb.c                 |   72 ++------------------
 drivers/gpu/drm/exynos/exynos_drm_drv.c   |    6 +-
 drivers/gpu/drm/exynos/exynos_drm_fbdev.c |    3 +-
 drivers/gpu/drm/i810/i810_drv.c           |   16 ++++
 drivers/gpu/drm/mga/mga_drv.c             |   16 ++++
 drivers/gpu/drm/r128/r128_drv.c           |   16 ++++
 drivers/gpu/drm/savage/savage_drv.c       |   16 ++++
 drivers/gpu/drm/sis/sis_drv.c             |   16 ++++
 drivers/gpu/drm/tdfx/tdfx_drv.c           |   16 ++++
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.c       |    1 -
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.h       |    1 -
 include/drm/drmP.h                        |   21 +-----
 include/drm/drm_usb.h                     |    3 -
 16 files changed, 190 insertions(+), 275 deletions(-)



More information about the dri-devel mailing list