Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp802232ybz; Wed, 22 Apr 2020 08:15:33 -0700 (PDT) X-Google-Smtp-Source: APiQypL0eakY3l30mV4Ps/rAdxCcnJHL6HDHWhcauukcogT9tLEltdNz1SpyHcqG0nPiJolW3UOW X-Received: by 2002:a17:906:4903:: with SMTP id b3mr20369655ejq.80.1587568532773; Wed, 22 Apr 2020 08:15:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587568532; cv=none; d=google.com; s=arc-20160816; b=X2XRngZu7QDLs6WqPiKvK2Mt4MrmebBMzx39mRieA12oZko8gXzd8ED/r+W0GWvSgL EQDZMa1iliWahXxjXxcFO+DMvFz8dsbHrrsTz4MiTyJ+65o39UoIAsCO/uww50cTgrYU Tu+tw2R9VT/wkZXAVD734mJ3uIFlAAbCGUnxcR1zljHvbZG+4XOzm5yexO788YhzNi9s yELSs8/ttoSfu5ExxHK3jvCBvFAtw7nhlowIWXHzpOs5TOpUjUpDLbAms34yVEN87Vsd e1B9dCoWGLuJnLFSkqnxGyYEZB8eCkIvNnoNq+RqTDPsNyWcCvM7ESFIsc/m9LBTytsV onrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature:dkim-signature; bh=/ftWw9tHlitciumaaug4a1Czrh736GE3jEJuWgmD3SY=; b=XqN1tayQRRjDFQKEka2Y2kh/lBB0JweKksDARf49CIl61Eo9yrmEr9gLCcn92Q+eAu kaUsinbcn+lHPUcQ0kUibrqv4wbpJ++vWwL3cKUYAnEFdYxNrmbCCFFUtUXkrClmNXiM WfTuzhceJYeg/hEu6dA14wO/WTP9KSZ99kZvE18qo0O1WwScUyB+RGPOAdBXwu1sFEUt uBPkMRjx/cdHLnBq7lqHrQw7KZ9H0vQXPZ4Tm8+/DJEW3jjsbGaQkr23gwgHYreUnQt/ qojLxRzdRUZirWDKRFKyqIUsF7kHyjLAF+d2aWV/9HeyfgdKPolCQMpphwylKHZZ2sF9 Dm6Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cerno.tech header.s=fm2 header.b=tbwhr2e9; dkim=pass header.i=@messagingengine.com header.s=fm2 header.b=bse4Moqz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=cerno.tech Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id j26si3588471ejt.88.2020.04.22.08.14.42; Wed, 22 Apr 2020 08:15:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@cerno.tech header.s=fm2 header.b=tbwhr2e9; dkim=pass header.i=@messagingengine.com header.s=fm2 header.b=bse4Moqz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=cerno.tech Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726151AbgDVPNj (ORCPT + 99 others); Wed, 22 Apr 2020 11:13:39 -0400 Received: from new1-smtp.messagingengine.com ([66.111.4.221]:40675 "EHLO new1-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725779AbgDVPNi (ORCPT ); Wed, 22 Apr 2020 11:13:38 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailnew.nyi.internal (Postfix) with ESMTP id 91DD65800DD; Wed, 22 Apr 2020 11:13:36 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Wed, 22 Apr 2020 11:13:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cerno.tech; h= date:from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=fm2; bh=/ftWw9tHlitciumaaug4a1Czrh7 36GE3jEJuWgmD3SY=; b=tbwhr2e9IectRyCHdVrQk9XLSpGKO6zc9jdte3x5eKI sy8rt00KrKw5fVcnWrZz6/Vg/BfNuEhQyZwrlAXZNp/4BLSPEhyHMJrev0eiWq9T PGDheS8Aj9EaKjnj2Rj8abBAktYTjqE3jI+E+JPO0Ef3HjnK+qarV8do007cCviK AqBIbW/exkVD7DfQbAmUZAeH+dHfZgRYLkLddFp+1tNhexzgvILBhSpzgQYUxJMp i0Pk5VGK42WWdThariqK+N3mhnRLknIwjhTWzGNdmp+onIo4tAD/2B0i6IE4tW17 r4eTEIpARnksJO0lhIrwzomO8Zq/VLJ8MGTkYFE7DGw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=/ftWw9 tHlitciumaaug4a1Czrh736GE3jEJuWgmD3SY=; b=bse4Moqzfl9bRZmpeMKwID +adLbBq6TvV7yZkdrsx4H5E6vrYt6vRuT4wmbdHsIwgoZJ2/49MLuCpgJNu7OegP JF6KaANRzn80w0ye3onNFi2jElrQmMu14F3UcUdoBI8XMWWup4zdqsqLAKYLDOGr 34YnDDLkzz6s6/rmKzgk1NbXHNjCiQwN8CJa0zZW30Vixn7wiV31o7eH4AbM5mQi 3RI1mPho3FdOAqAE2JCqcLcX41rPEbvQrYAX68V9w2kdHmZI2Fy0xC3gvWip6DjT 27HC/zTnnYCvHO7L4XCH+Pc0IqmRdinX3cFmc9K1UZUCxEZiE2cmbP5E9hsXjf6A == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedrgeejgdejlecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpeffhffvuffkfhggtggujgesghdtreertddtvdenucfhrhhomhepofgrgihimhgv ucftihhprghrugcuoehmrgigihhmvgestggvrhhnohdrthgvtghhqeenucfkphepledtrd ekledrieekrdejieenucevlhhushhtvghrufhiiigvpedunecurfgrrhgrmhepmhgrihhl fhhrohhmpehmrgigihhmvgestggvrhhnohdrthgvtghh X-ME-Proxy: Received: from localhost (lfbn-tou-1-1502-76.w90-89.abo.wanadoo.fr [90.89.68.76]) by mail.messagingengine.com (Postfix) with ESMTPA id E8B423280068; Wed, 22 Apr 2020 11:13:29 -0400 (EDT) Date: Wed, 22 Apr 2020 17:13:28 +0200 From: Maxime Ripard To: "H. Nikolaus Schaller" Cc: Tony Lindgren , Philipp Rossak , Jonathan Bakker , David Airlie , Daniel Vetter , Rob Herring , Mark Rutland , =?utf-8?Q?Beno=C3=AEt?= Cousson , Paul Cercueil , Ralf Baechle , Paul Burton , James Hogan , Kukjin Kim , Krzysztof Kozlowski , Chen-Yu Tsai , Thomas Bogendoerfer , "open list:DRM PANEL DRIVERS" , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , Linux Kernel Mailing List , linux-omap , OpenPVRSGX Linux Driver Group , Discussions about the Letux Kernel , kernel@pyra-handheld.com, linux-mips@vger.kernel.org, arm-soc , linux-samsung-soc@vger.kernel.org Subject: Re: [PATCH v6 00/12] ARM/MIPS: DTS: add child nodes describing the PVRSGX GPU present in some OMAP SoC and JZ4780 (and many more) Message-ID: <20200422151328.2oyqz7gqkbunmd6o@gilmour.lan> References: <20200415130233.rgn7xrtwqicptke2@gilmour.lan> <10969e64-fe1f-d692-4984-4ba916bd2161@gmail.com> <20200420073842.nx4xb3zqvu23arkc@gilmour.lan> <20200421112129.zjmkmzo3aftksgka@gilmour.lan> <20200421141543.GU37466@atomide.com> <20200422065859.quy6ane5v7vsy5tf@gilmour.lan> <1AA57A0C-48E6-49BB-BB9A-2AAFFB371BCD@goldelico.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="rleqzgonq2kd6jcq" Content-Disposition: inline In-Reply-To: <1AA57A0C-48E6-49BB-BB9A-2AAFFB371BCD@goldelico.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --rleqzgonq2kd6jcq Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Apr 22, 2020 at 09:10:57AM +0200, H. Nikolaus Schaller wrote: > > Am 22.04.2020 um 08:58 schrieb Maxime Ripard : > >=20 > > On Tue, Apr 21, 2020 at 07:29:32PM +0200, H. Nikolaus Schaller wrote: > >>=20 > >>> Am 21.04.2020 um 16:15 schrieb Tony Lindgren : > >>>=20 > >>> * Maxime Ripard [200421 11:22]: > >>>> On Tue, Apr 21, 2020 at 11:57:33AM +0200, Philipp Rossak wrote: > >>>>> I had a look on genpd and I'm not really sure if that fits. > >>>>>=20 > >>>>> It is basically some bit that verify that the clocks should be enab= led or > >>>>> disabled. > >>>>=20 > >>>> No, it can do much more than that. It's a framework to control the S= oCs power > >>>> domains, so clocks might be a part of it, but most of the time it's = going to be > >>>> about powering up a particular device. > >>>=20 > >>> Note that on omaps there are actually SoC module specific registers. > >>=20 > >> Ah, I see. This is of course a difference that the TI glue logic has > >> its own registers in the same address range as the sgx and this can't > >> be easily handled by a common sgx driver. > >>=20 > >> This indeed seems to be unique with omap. > >>=20 > >>> And there can be multiple devices within a single target module on > >>> omaps. So the extra dts node and device is justified there. > >>>=20 > >>> For other SoCs, the SGX clocks are probably best handled directly > >>> in pvr-drv.c PM runtime functions unless a custom hardware wrapper > >>> with SoC specific registers exists. > >>=20 > >> That is why we need to evaluate what the better strategy is. > >>=20 > >> So we have > >> a) omap which has a custom wrapper around the sgx > >> b) others without, i.e. an empty (or pass-through) wrapper > >>=20 > >> Which one do we make the "standard" and which one the "exception"? > >> What are good reasons for either one? > >>=20 > >>=20 > >> I am currently in strong favour of a) being standard because it > >> makes the pvr-drv.c simpler and really generic (independent of > >> wrapping into any SoC). > >>=20 > >> This will likely avoid problems if we find more SoC with yet another > >> scheme how the SGX clocks are wrapped. > >>=20 > >> It also allows to handle different number of clocks (A31 seems to > >> need 4, Samsung, A83 and JZ4780 one) without changing the sgx bindings > >> or making big lists of conditionals. This variance would be handled > >> outside the sgx core bindings and driver. > >=20 > > I disagree. Every other GPU binding and driver is handling that just fi= ne, and > > the SGX is not special in any case here. >=20 > Can you please better explain this? With example or a description > or a proposal? I can't, I don't have any knowledge about this GPU. > I simply do not have your experience with "every other GPU" as you have. > And I admit that I can't read from your statement what we should do > to bring this topic forward. >=20 > So please make a proposal how it should be in your view. If you need some inspiration, I guess you could look at the mali and vivante bindings once you have an idea of what the GPU needs across the SoCs it's integrated in. Maxime --rleqzgonq2kd6jcq Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHQEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCXqBfGAAKCRDj7w1vZxhR xVRsAPYpkPvaPx/Gv4bZtD3Q7LlR8I4ICX5CAiGURBKX85mvAQCaSeZMVEC2ANUR ZQ5hvxKQcP4oYw7VwmIsM46WtpHQDg== =lYBS -----END PGP SIGNATURE----- --rleqzgonq2kd6jcq--