Hello, The omapdss/omapdrm initialization code is quite a mess. The physical devices are instantiated from DT, but two virtual devices named omapdrm and omapdss are instanciated from platform code to pass various pieces of platform data to the drivers. The omapdrm and omapdss platform devices should eventually be removed. That will require non-trivial work to implement the features provided by platform data in a pure DT architecture without platform code. This patch series starts by focussing on the omapdrm device. It moves all its platform data to the omapdss device, to finally remove the omapdrm device completely from platform code. Doing so involves registering the omapdrm platform device from within the omapdss driver. This is a hack, but isn't worse than the current situation. Quite the contrary, given that the omapdrm device exists for the sole purpose of supporting the omapdrm/omapdss driver architecture, moving it out of platform code can be considered as (slightly) cleaner. In any case, it will be easier to refactor the code as everything is now isolated on the driver side. The series will be annoying to merge given how interleaved the ARM and driver patches are. The easiest solution would be to merge everything through the ARM tree (as the risk of conflict on the DRM side is low), in which case some patches could be squashed together if desired (especially the last two that wouldn't require renaming the driver internally anymore). Laurent Pinchart (7): drm: omapdrm: Add OMAP revision to omapdss platform data ARM: OMAP2+: Populate the omapdss platform data OMAP revision drm: omapdrm: Retrieve OMAP revision from omapdss ARM: OMAP2+: Remove omapdrm platform data drm: omapdrm: Remove omapdrm platform data drm: omapdrm: Register omapdrm platform device in omapdss driver ARM: OMAP2+: Remove unused omapdrm platform device arch/arm/mach-omap2/Makefile | 2 +- arch/arm/mach-omap2/display.c | 8 +---- arch/arm/mach-omap2/display.h | 1 - arch/arm/mach-omap2/drm.c | 53 ---------------------------------- drivers/gpu/drm/omapdrm/dss/core.c | 25 ++++++++++++++++ drivers/gpu/drm/omapdrm/dss/omapdss.h | 1 + drivers/gpu/drm/omapdrm/omap_drv.c | 5 ++-- drivers/gpu/drm/omapdrm/omap_drv.h | 1 - include/linux/platform_data/omap_drm.h | 53 ---------------------------------- include/linux/platform_data/omapdss.h | 1 + 10 files changed, 31 insertions(+), 119 deletions(-) delete mode 100644 arch/arm/mach-omap2/drm.c delete mode 100644 include/linux/platform_data/omap_drm.h -- Regards, Laurent Pinchart _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel