On Thu, Feb 23, 2017 at 04:05:37PM +0800, Chen-Yu Tsai wrote: > The tcon provides part of the functionality of the crtc, and also > provides the device node for the output port of the crtc. To be able > to use drm_of_find_possible_crtcs(), all crtc must be initialized before > any downstream encoders. The other part of the crtc is the display > backend. > > The Rockchip DRM driver does this by first binding all vops, which is > their crtc, and this step also creates the crtc objects. Then all > remaining hardware components are bound. With the Allwinner display > pipeline, we have multiple components comprising the crtc, and varying > depths of the display pipeline. Since components are added with a depth > first search of the of_graph, we can initialize the crtc object within > the tcon bind function. Since the backend precedes the tcon, and the > backends cannot be muxed or switched around, we can be sure that the > associated backend is already initialized. > > This patch also moves the crtc pointer from the main drm_device data to > the tcon device data. Besides the crtc callbacks, the crtc structure is > only used within the tcon driver to signal vblank events from its > interrupt handler. > > As the crtc and layer bits are now called from the tcon bits, we must > move them from the sun4i-drm module to the sun4i-tcon module to avoid > circular dependencies between the two modules. This is because sun4i-drm > also calls into sun4i-tcon. > > Signed-off-by: Chen-Yu Tsai <wens@xxxxxxxx> Applied, thanks! Maxime -- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel