Hello, This patch series finishes the large omapdrm refactoring started in v4.17 to transition from the omapdrm-specific encoder and panel drivers to drm_bridge and drm_panel. While more changes will follow, the next patch series will focus on the usage of the first drm_bridge driver (for the tftp410). The series starts with a few miscalleanous cleanups (01/29 to 04/29) and then reverses the direction of the DSS device .enable() and .disable() operations (05/29 to 09/29). All DSS device operations now match the drm_bridge model. After a bit of further cleanups (10/29 and 11/29), the next step is to move from struct videomode to struct drm_display_mode in the encoder and panel drivers (12/29 to 14/29). This allows the VENC encoder to report all supported modes (PAL and NTSC), not just the active mode (15/29). We then move to removing access to the component at the end of the pipeline, as the bridge API doesn't give us easy access to it (patches 16/29 to 18/29). The next three patches (19/29 to 21/29) remove the src field from the omap_dss_device structure, again to align with drm_bridge. Additional miscellaneous refactoring follows to simplify the code (22/29 to 24/29), and the next patch (25/29) replaces usage of struct videomode with struct drm_display_mode for the .check_timings() and .set_timings() operations. The VENC encoder can then use struct drm_display_mode internally (26/29) and the DPI and SDI drivers can avoid storing the full mode (27/29). Finally patches 28/29 and 29/29 simplify and refactor the omapdrm initialization sequence to prepare for drm_bridge usage. With these changes in place, the next series will fix a few issues in the tfp410 drm_bridge driver, add direct support for drm_bridge in omapdrm, and remove the internal tfp410 and DVI connector drivers. Laurent Pinchart (29): drm/omap: Remove declaration of nonexisting function drm/omap: Remove unused kobj field from struct omap_dss_device drm/omap: venc: Remove wss_data field from venc_device structure drm/omap: Use atomic suspend/resume helpers drm/omap: Move common display enable/disable code to encoder drm/omap: Remove connection checks from internal encoders .enable() drm/omap: Remove connection checks from display .enable() and .remove() drm/omap: Remove enable checks from display .enable() and .remove() drm/omap: Reverse direction of the DSS device enable/disable operations drm/omap: Remove omap_dss_device dst field drm/omap: Factor out common init/cleanup code for output devices drm/omap: Expose DRM modes instead of timings in display devices drm/omap: Merge display .get_modes() and .get_size() operations drm/omap: Add a dss device operation flag for .get_modes() drm/omap: venc: List both PAL and NTSC modes drm/omap: Don't pass display pointer to encoder init function drm/omap: Move display alias ID to omap_drm_pipeline drm/omap: Don't store display pointer in omap_connector structure drm/omap: panel-dsi-cm: Store source pointer internally drm/omap: Notify all devices in the pipeline of output disconnection drm/omap: Remove src field from omap_dss_device structure drm/omap: Move DISPC timing checks to CRTC .mode_valid() operation drm/omap: venc: Simplify mode setting by caching configuration drm/omap: Factor out common mode validation code drm/omap: Pass drm_display_mode to .check_timings() and .set_timings() drm/omap: venc: Use drm_display_mode natively drm/omap: Store pixel clock instead of full mode in DPI and SDI encoders drm/omap: Simplify OF lookup of DSS devices drm/omap: Refactor initialization sequence .../omapdrm/displays/connector-analog-tv.c | 44 ---- .../gpu/drm/omapdrm/displays/connector-dvi.c | 38 --- .../gpu/drm/omapdrm/displays/connector-hdmi.c | 44 ---- .../gpu/drm/omapdrm/displays/encoder-opa362.c | 38 +-- .../gpu/drm/omapdrm/displays/encoder-tfp410.c | 34 +-- .../drm/omapdrm/displays/encoder-tpd12s015.c | 39 ---- drivers/gpu/drm/omapdrm/displays/panel-dpi.c | 43 +--- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 139 +++++------ .../displays/panel-lgphilips-lb035q02.c | 35 +-- .../omapdrm/displays/panel-nec-nl8048hl11.c | 35 +-- .../displays/panel-sharp-ls037v7dw01.c | 55 ++--- .../omapdrm/displays/panel-sony-acx565akm.c | 49 +--- .../omapdrm/displays/panel-tpo-td028ttec1.c | 46 +--- .../omapdrm/displays/panel-tpo-td043mtea1.c | 42 +--- drivers/gpu/drm/omapdrm/dss/base.c | 76 ++++-- drivers/gpu/drm/omapdrm/dss/display.c | 24 +- drivers/gpu/drm/omapdrm/dss/dpi.c | 62 ++--- drivers/gpu/drm/omapdrm/dss/dsi.c | 44 +--- drivers/gpu/drm/omapdrm/dss/dss-of.c | 60 +---- drivers/gpu/drm/omapdrm/dss/hdmi4.c | 52 +---- drivers/gpu/drm/omapdrm/dss/hdmi5.c | 52 +---- drivers/gpu/drm/omapdrm/dss/omapdss.h | 48 ++-- drivers/gpu/drm/omapdrm/dss/output.c | 18 +- drivers/gpu/drm/omapdrm/dss/sdi.c | 62 ++--- drivers/gpu/drm/omapdrm/dss/venc.c | 219 ++++++++---------- drivers/gpu/drm/omapdrm/omap_connector.c | 158 ++++++------- drivers/gpu/drm/omapdrm/omap_connector.h | 7 +- drivers/gpu/drm/omapdrm/omap_crtc.c | 9 + drivers/gpu/drm/omapdrm/omap_drv.c | 170 ++++++-------- drivers/gpu/drm/omapdrm/omap_drv.h | 3 + drivers/gpu/drm/omapdrm/omap_encoder.c | 99 ++++---- drivers/gpu/drm/omapdrm/omap_encoder.h | 3 +- 32 files changed, 625 insertions(+), 1222 deletions(-) -- Regards, Laurent Pinchart _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel