[PATCH v2 00/30] omapdrm: Allocate objects dynamically
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Tue Feb 13 12:00:18 UTC 2018
Hello,
Most of this series has previously been posted as part of "[PATCH 00/48]
omapdrm: Merge omapdrm and omapdss". With "[PATCH v2 00/15] omapdrm:
Miscellaneous fixes and cleanups" posted and merged a few days ago, it
completes the rework of the omapdrm and omapdss drivers to replace most
global variables with dynamically-allocated objects. The actual merge of
the omapdrm and omapdss drivers has been left out for now as it still
suffers from unresolved issues.
As with the previous series I have other pending patches based on top of this,
as passing driver objects around explicitly helps not relying on more global
variables that would hinder the effort to move to the DRM bridge and DRM panel
APIs.
Patches 02/30, 14/30, 22/30 and 23/30 are new. Patch 21/30 has seen
significant changes and I have thus dropped the Reviewed-by tag from
Sebastian. All other patches have been rebased and reordered, thus sometimes
modified to resolve conflicts, but have otherwise seen only minor changes.
The series is based on top of the omapdrm-next branch from
git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux.git.
Tomi, as the series has been stripped of its controversial patches, I think
it's now ready to be merged (pending review of the patches mentioned above of
course). I have tested it on both a Panda board and an AM57xx EVM without any
issues (and this time I made sure to try with the drivers compiled as
modules).
Laurent Pinchart (30):
drm: omapdrm: Split init and cleanup from probe and remove functions
drm: omapdrm: dss: Expose DSS data in a dss_device structure
drm: omapdrm: dss: Pass DSS private structure to runtime PM functions
drm: omapdrm: dss: Pass PLL pointer to dss_ctrl_pll_enable()
drm: omapdrm: dss: Pass DSS pointer to dss_sdi_*() functions
drm: omapdrm: dss: Pass DSS pointer to dss_ops operations
drm: omapdrm: dss: Pass DSS pointer to dss_get_*_clk_source()
drm: omapdrm: dss: Pass DSS pointer to dss clock functions
drm: omapdrm: dss: Pass DSS pointer to remaining dss functions
drm: omapdrm: dss: Allocate the DSS private data structure dynamically
drm: omapdrm: dss: Support passing private data to debugfs show
handlers
drm: omapdrm: dss: Store the registered plls array in struct
dss_device
drm: omapdrm: dss: Store the debugfs root directory in struct
dss_device
drm: omapdrm: dss: Don't unnecessarily cast to dev to pdev and back
drm: omapdrm: dsi: Pass the dsi_data pointer to internal functions
drm: omapdrm: dsi: Combine two commonly used inline functions
drm: omapdrm: dsi: Use dev pointer directly in dsi_bind() function
drm: omapdrm: dsi: Store the struct device pointer in struct dsi_data
drm: omapdrm: dsi: Don't pass channel to dispc init/uninit functions
drm: omapdrm: dss: Pass omap_dss_device pointer to dss_mgr_*()
functions
drm: omapdrm: dss: Pass omap_drm_private pointer to dss_mgr_ops
drm: omapdrm: dss: Store DSS device pointer in the omapdrm private
data
drm: omapdrm: dss: Store dispc ops in dss_device structure
drm: omapdrm: dispc: Pass DISPC pointer to dispc_ops operations
drm: omapdrm: dispc: Pass DISPC pointer to remaining dispc API
functions
drm: omapdrm: dispc: Allocate the dispc private data structure
dynamically
drm: omapdrm: hdmi4: Allocate the omap_hdmi data structure dynamically
drm: omapdrm: hdmi5: Allocate the omap_hdmi data structure dynamically
drm: omapdrm: sdi: Allocate the sdi private data structure dynamically
drm: omapdrm: venc: Allocate the venc private data structure
dynamically
drivers/gpu/drm/omapdrm/dss/base.c | 27 +-
drivers/gpu/drm/omapdrm/dss/dispc.c | 2183 ++++++++++++++++--------------
drivers/gpu/drm/omapdrm/dss/dpi.c | 89 +-
drivers/gpu/drm/omapdrm/dss/dsi.c | 1466 ++++++++++----------
drivers/gpu/drm/omapdrm/dss/dss.c | 668 ++++-----
drivers/gpu/drm/omapdrm/dss/dss.h | 229 ++--
drivers/gpu/drm/omapdrm/dss/hdmi.h | 11 +-
drivers/gpu/drm/omapdrm/dss/hdmi4.c | 371 ++---
drivers/gpu/drm/omapdrm/dss/hdmi4_cec.c | 4 +-
drivers/gpu/drm/omapdrm/dss/hdmi4_core.h | 4 +-
drivers/gpu/drm/omapdrm/dss/hdmi5.c | 379 +++---
drivers/gpu/drm/omapdrm/dss/hdmi_pll.c | 15 +-
drivers/gpu/drm/omapdrm/dss/omapdss.h | 171 ++-
drivers/gpu/drm/omapdrm/dss/output.c | 52 +-
drivers/gpu/drm/omapdrm/dss/pll.c | 40 +-
drivers/gpu/drm/omapdrm/dss/sdi.c | 162 ++-
drivers/gpu/drm/omapdrm/dss/venc.c | 453 ++++---
drivers/gpu/drm/omapdrm/dss/video-pll.c | 19 +-
drivers/gpu/drm/omapdrm/omap_crtc.c | 62 +-
drivers/gpu/drm/omapdrm/omap_crtc.h | 2 +-
drivers/gpu/drm/omapdrm/omap_drv.c | 102 +-
drivers/gpu/drm/omapdrm/omap_drv.h | 4 +
drivers/gpu/drm/omapdrm/omap_irq.c | 32 +-
drivers/gpu/drm/omapdrm/omap_plane.c | 12 +-
24 files changed, 3484 insertions(+), 3073 deletions(-)
--
Regards,
Laurent Pinchart
More information about the dri-devel
mailing list