From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751275AbdBWSgE (ORCPT ); Thu, 23 Feb 2017 13:36:04 -0500 Received: from mail.free-electrons.com ([62.4.15.54]:49912 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751041AbdBWSgD (ORCPT ); Thu, 23 Feb 2017 13:36:03 -0500 Date: Thu, 23 Feb 2017 10:24:51 -0800 From: Maxime Ripard To: Chen-Yu Tsai Cc: David Airlie , dri-devel@lists.freedesktop.org, linux-sunxi@googlegroups.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 05/11] drm/sun4i: Initialize crtc from tcon bind function Message-ID: <20170223182451.vpzuf3pey3jly4te@lukather> References: <20170223080543.6659-1-wens@csie.org> <20170223080543.6659-6-wens@csie.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="jtwmhlxoorv3iwr2" Content-Disposition: inline In-Reply-To: <20170223080543.6659-6-wens@csie.org> User-Agent: Mutt/1.6.2-neo (2016-08-21) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --jtwmhlxoorv3iwr2 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable 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. >=20 > 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. >=20 > 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. >=20 > 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. >=20 > Signed-off-by: Chen-Yu Tsai Applied, thanks! Maxime --=20 Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com --jtwmhlxoorv3iwr2 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAEBCAAGBQJYryjyAAoJEBx+YmzsjxAgK2YP/jm7k8bgWJqBbXVplErSFQUD wsBCfLPhQ2Hm1fTeLHHGk6mRqd1RhHwbHIU4GEqcKTu8BrXBLR4KuGUwrE1ADgzO W6J1Oij4uhjzJAPQ3z8sGI7hT5W4FCiNo5421aDqX7K5DGXnv42mgbhE8eQo7Dxt coZKZCeDg8gMXMhuthNQanu6cH8Tnladz61KCABIYjY+lJcEA12+lDiC0OMWod4j llemSuxF0O5OTv6rkAzDMiE3/WlsL7EV6XrYwgnoNL452+TYfKaKG+A6IoD22b9b VJCrZ0CYv8AzQ54sRh/GxuCZy6ZpmpVw2nBFh3GffafPFnfmd59I52dsSwsv8T0O YkWTFFAf95cJadoOYJlETKyJyeQwF+2CD3P5+KR4HOkB78Hq2p3Sqp/02K9BV+kb bHjuk/Cm77aKItf+Py4coAKx67fcE+sWeeognSSdTgzRqLeb/9Kr+txSKDImzbNM OoWPbUoAyB/mBwR/+yqwbxRLBkA+AolI9ccreJsAUN2Hyft74vDE+RmcVyZZqrEg CwvKHelb6WfP25RF5xtufdtwG/poWr4ogdVIgEg0VgnD7nFVcogSvN/vIZDMuXgp SODklB7c13fFgYuyeFExNazIYu9Zmxy6m0h6OwOeM/RLioDoWW2RvUEMVs2yP+XP DNSMVwEJSG+x6F0lBwti =aEv7 -----END PGP SIGNATURE----- --jtwmhlxoorv3iwr2--