All of lore.kernel.org
 help / color / mirror / Atom feed
From: "H. Nikolaus Schaller" <hns@goldelico.com>
To: Paul Cercueil <paul@crapouillou.net>
Cc: "Maxime Ripard" <maxime@cerno.tech>,
	"Tony Lindgren" <tony@atomide.com>,
	"Philipp Rossak" <embed3d@gmail.com>,
	"Jonathan Bakker" <xc-racer2@live.ca>,
	"David Airlie" <airlied@linux.ie>,
	"Daniel Vetter" <daniel@ffwll.ch>,
	"Rob Herring" <robh+dt@kernel.org>,
	"Mark Rutland" <mark.rutland@arm.com>,
	"Benoît Cousson" <bcousson@baylibre.com>,
	"Ralf Baechle" <ralf@linux-mips.org>,
	"Paul Burton" <paulburton@kernel.org>,
	"James Hogan" <jhogan@kernel.org>,
	"Kukjin Kim" <kgene@kernel.org>,
	"Krzysztof Kozlowski" <krzk@kernel.org>,
	"Chen-Yu Tsai" <wens@csie.org>,
	"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>,
	"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
	<devicetree@vger.kernel.org>,
	"OpenPVRSGX Linux Driver Group" <openpvrsgx-devgroup@letux.org>,
	linux-omap <linux-omap@vger.kernel.org>,
	"Linux Kernel Mailing List" <linux-kernel@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)
Date: Wed, 22 Apr 2020 19:23:52 +0200	[thread overview]
Message-ID: <D90A610B-1F26-4AD4-843A-60EB4E410377@goldelico.com> (raw)
In-Reply-To: <MC879Q.XY9S0U9R35681@crapouillou.net>

Hi Paul,

> Am 22.04.2020 um 18:55 schrieb Paul Cercueil <paul@crapouillou.net>:
> 
> Hi Nikolaus,
> 
> 
> Le mer. 22 avril 2020 à 18:09, H. Nikolaus Schaller <hns@goldelico.com> a écrit :
>> Hi Maxime,
>>> Am 22.04.2020 um 17:13 schrieb Maxime Ripard <maxime@cerno.tech>:
>>> On Wed, Apr 22, 2020 at 09:10:57AM +0200, H. Nikolaus Schaller wrote:
>>>>> Am 22.04.2020 um 08:58 schrieb Maxime Ripard <maxime@cerno.tech>:
>>>>>> 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.
>>>>> I disagree. Every other GPU binding and driver is handling that just fine, and
>>>>> the SGX is not special in any case here.
>>>> 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.
>> Hm. Now I am fully puzzled.
>> You have no knowledge about this GPU but disagree with our proposal?
>> Is it just gut feeling?
>> Anyways, we need to find a solution. Together.
>>>> 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.
>>>> 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.
>> Well, I do not need inspiration, we need to come to an agreement about
>> img,pvrsgx.yaml and we need some maintainer to finally pick it up.
>> I wonder how we can come to this stage.
>> If I look at vivante,gc.yaml or arm,mali-utgard.yaml I don't
>> see big differences to what we propose and those I see seem to come
>> from technical differences between sgx, vivante, mali etc. So there
>> is no single scheme that fits all different gpu types.
>> One thing we can learn is that "core" seems to be a de facto standard
>> for the core clock-name. An alternative "gpu" is used by nvidia,gk20a.txt.
> 
> The Vivante GPU binding requires "bus", "core" and "shader" clocks. But if your SoC only has one clock for the GPU, there's nothing that prevents you from passing the very same clock as "bus", "core" and "shader". This is what we do on the Ingenic JZ4770 SoC.

Fine and good to know.

Well, for the SGX we so far only know a single "core" clock (with different
names). Only the A31 seems to be different.

Fortunately I finally found a little time to scan through the a31
user manual: http://dl.linux-sunxi.org/A31/A31%20User%20Manual%20V1.20.pdf

There are 3 clock dividers. And there is a single clock PLL8 dedicated to
the gpu. The clock dividers are called "gpu core", "gpu mem", "gpu hyd".

Then, there are dedicated clock gating registers. And idle/power status
registers.

Unfortunately, chapter "5.1. GPU" is almost empty and has no block diagram.
So I have no idea what "HYD" stands for. And if the memory and HYD clocks
are needed and how they should be initialized. If they are different ones
or can all be driven by PLL8 in parallel.

That scarce information makes it difficult to form a "proper" bindings
document out of it. Any can fit or be false.

At least there is something common with all other SGX implementations I
am aware of: there is a "core" clock.

So I'd suggest to get things moving forwards:
* we add a "core" clock-names to the bindings
* this can't be wrong for the A31 since it is defined in the data sheet
* we make it optional since the omap chips have a clock wrapper
* "core" is a name I think all architectures/drivers can live with
  and can add later "shader", "bus" etc. if needed
* any additions for the A31 will be additions

If that sounds ok and nobody objects to it, I can submit a new patch
version for further review.

BR and thanks,
Nikolaus


  parent reply	other threads:[~2020-04-22 17:24 UTC|newest]

Thread overview: 198+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-15  8:35 [PATCH v6 00/12] ARM/MIPS: DTS: add child nodes describing the PVRSGX GPU present in some OMAP SoC and JZ4780 (and many more) H. Nikolaus Schaller
2020-04-15  8:35 ` H. Nikolaus Schaller
2020-04-15  8:35 ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 01/12] dt-bindings: add img,pvrsgx.yaml for Imagination GPUs H. Nikolaus Schaller
2020-04-15  8:35   ` [PATCH v6 01/12] dt-bindings: add img, pvrsgx.yaml " H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15 10:12   ` [PATCH v6 01/12] dt-bindings: add img,pvrsgx.yaml " Maxime Ripard
2020-04-15 10:12     ` Maxime Ripard
2020-04-15 10:12     ` Maxime Ripard
2020-04-15 12:43     ` H. Nikolaus Schaller
2020-04-15 12:43       ` [PATCH v6 01/12] dt-bindings: add img, pvrsgx.yaml " H. Nikolaus Schaller
2020-04-15 12:43       ` H. Nikolaus Schaller
2020-04-15 12:54       ` Neil Armstrong
2020-04-15 12:54         ` Neil Armstrong
2020-04-15 12:54         ` Neil Armstrong
2020-04-15 13:17         ` H. Nikolaus Schaller
2020-04-15 13:17           ` H. Nikolaus Schaller
2020-04-15 13:17           ` H. Nikolaus Schaller
2020-04-15 14:21           ` Maxime Ripard
2020-04-15 14:21             ` Maxime Ripard
2020-04-15 14:21             ` Maxime Ripard
2020-04-15 15:09             ` H. Nikolaus Schaller
2020-04-15 15:09               ` H. Nikolaus Schaller
2020-04-15 15:09               ` H. Nikolaus Schaller
2020-04-15 16:21               ` Maxime Ripard
2020-04-15 16:21                 ` Maxime Ripard
2020-04-15 16:21                 ` Maxime Ripard
2020-04-15 16:42                 ` H. Nikolaus Schaller
2020-04-15 16:42                   ` H. Nikolaus Schaller
2020-04-15 16:42                   ` H. Nikolaus Schaller
2020-04-15 17:13                   ` Tony Lindgren
2020-04-15 17:13                     ` Tony Lindgren
2020-04-15 17:13                     ` Tony Lindgren
2020-04-17 10:25                   ` Maxime Ripard
2020-04-17 10:25                     ` Maxime Ripard
2020-04-17 10:25                     ` Maxime Ripard
2020-04-17 12:15                     ` H. Nikolaus Schaller
2020-04-17 12:15                       ` H. Nikolaus Schaller
2020-04-17 12:15                       ` H. Nikolaus Schaller
2020-04-18 23:02                       ` Philipp Rossak
2020-04-18 23:02                         ` Philipp Rossak
2020-04-18 23:02                         ` Philipp Rossak
2020-04-20  8:04                       ` Maxime Ripard
2020-04-20  8:04                         ` Maxime Ripard
2020-04-20  8:04                         ` Maxime Ripard
2020-04-16 20:41   ` [PATCH v6 01/12] dt-bindings: add img,pvrsgx.yaml " Rob Herring
2020-04-16 20:41     ` Rob Herring
2020-04-16 20:41     ` Rob Herring
2020-04-17 12:16     ` [PATCH v6 01/12] dt-bindings: add img, pvrsgx.yaml " H. Nikolaus Schaller
2020-04-17 12:16       ` H. Nikolaus Schaller
2020-04-21 19:02       ` Rob Herring
2020-04-21 19:02         ` Rob Herring
2020-04-21 19:02         ` Rob Herring
2020-04-15  8:35 ` [PATCH v6 02/12] ARM: DTS: am33xx: add sgx gpu child node H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 03/12] ARM: DTS: am3517: " H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 04/12] ARM: DTS: omap34xx: " H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 05/12] ARM: DTS: omap36xx: " H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 06/12] ARM: DTS: omap4: " H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 07/12] ARM: DTS: omap5: " H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15 11:38   ` Krzysztof Kozlowski
2020-04-15 11:38     ` Krzysztof Kozlowski
2020-04-15 11:38     ` Krzysztof Kozlowski
2020-04-15 11:46     ` H. Nikolaus Schaller
2020-04-15 11:46       ` H. Nikolaus Schaller
2020-04-15 11:46       ` H. Nikolaus Schaller
2020-04-15 13:47       ` Krzysztof Kozlowski
2020-04-15 13:47         ` Krzysztof Kozlowski
2020-04-15 13:47         ` Krzysztof Kozlowski
2020-04-15 14:07         ` H. Nikolaus Schaller
2020-04-15 14:07           ` H. Nikolaus Schaller
2020-04-15 14:07           ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 08/12] arm: dts: s5pv210: Add G3D node H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  9:15   ` Sergei Shtylyov
2020-04-15  9:15     ` Sergei Shtylyov
2020-04-15  9:15     ` Sergei Shtylyov
2020-04-15  9:26     ` H. Nikolaus Schaller
2020-04-15  9:26       ` H. Nikolaus Schaller
2020-04-15  9:26       ` H. Nikolaus Schaller
2020-04-15 11:49   ` Krzysztof Kozlowski
2020-04-15 11:49     ` Krzysztof Kozlowski
2020-04-15 11:49     ` Krzysztof Kozlowski
2020-04-15 12:50     ` H. Nikolaus Schaller
2020-04-15 12:50       ` H. Nikolaus Schaller
2020-04-15 12:50       ` H. Nikolaus Schaller
2020-04-15 13:44       ` Krzysztof Kozlowski
2020-04-15 13:44         ` Krzysztof Kozlowski
2020-04-15 13:44         ` Krzysztof Kozlowski
2020-04-15 18:17       ` Jonathan Bakker
2020-04-15 18:17         ` Jonathan Bakker
2020-04-15 18:17         ` Jonathan Bakker
2020-04-16  8:50         ` Krzysztof Kozlowski
2020-04-16  8:50           ` Krzysztof Kozlowski
2020-04-16  8:50           ` Krzysztof Kozlowski
2020-04-17 12:15         ` H. Nikolaus Schaller
2020-04-17 12:15           ` H. Nikolaus Schaller
2020-04-17 12:15           ` H. Nikolaus Schaller
2020-04-22  5:56   ` kbuild test robot
2020-04-22  5:56     ` kbuild test robot
2020-04-22  5:56     ` kbuild test robot
2020-04-15  8:35 ` [PATCH v6 09/12] ARM: dts: sun6i: a31: add sgx gpu child node H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 10/12] ARM: dts: sun6i: a31s: " H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 11/12] ARM: dts: sun8i: a83t: " H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35 ` [PATCH v6 12/12] MIPS: DTS: jz4780: add sgx gpu node H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15  8:35   ` H. Nikolaus Schaller
2020-04-15 10:10 ` [PATCH v6 00/12] ARM/MIPS: DTS: add child nodes describing the PVRSGX GPU present in some OMAP SoC and JZ4780 (and many more) Maxime Ripard
2020-04-15 10:10   ` Maxime Ripard
2020-04-15 10:10   ` Maxime Ripard
2020-04-15 12:41   ` H. Nikolaus Schaller
2020-04-15 12:41     ` H. Nikolaus Schaller
2020-04-15 12:41     ` H. Nikolaus Schaller
2020-04-15 12:46     ` Daniel Vetter
2020-04-15 12:46       ` Daniel Vetter
2020-04-15 12:46       ` Daniel Vetter
2020-04-15 13:02     ` Maxime Ripard
2020-04-15 13:02       ` Maxime Ripard
2020-04-15 13:02       ` Maxime Ripard
2020-04-15 13:04       ` H. Nikolaus Schaller
2020-04-15 13:04         ` H. Nikolaus Schaller
2020-04-15 13:04         ` H. Nikolaus Schaller
2020-04-17 12:09         ` Philipp Rossak
2020-04-17 12:09           ` Philipp Rossak
2020-04-17 12:09           ` Philipp Rossak
2020-04-20  7:38           ` Maxime Ripard
2020-04-20  7:38             ` Maxime Ripard
2020-04-20  7:38             ` Maxime Ripard
2020-04-21  9:57             ` Philipp Rossak
2020-04-21  9:57               ` Philipp Rossak
2020-04-21  9:57               ` Philipp Rossak
2020-04-21 11:21               ` Maxime Ripard
2020-04-21 11:21                 ` Maxime Ripard
2020-04-21 11:21                 ` Maxime Ripard
2020-04-21 14:15                 ` Tony Lindgren
2020-04-21 14:15                   ` Tony Lindgren
2020-04-21 14:15                   ` Tony Lindgren
2020-04-21 17:29                   ` H. Nikolaus Schaller
2020-04-21 17:29                     ` H. Nikolaus Schaller
2020-04-21 17:29                     ` H. Nikolaus Schaller
2020-04-21 17:39                     ` Tony Lindgren
2020-04-21 17:39                       ` Tony Lindgren
2020-04-21 17:39                       ` Tony Lindgren
2020-04-21 17:46                       ` Tony Lindgren
2020-04-21 17:46                         ` Tony Lindgren
2020-04-21 17:46                         ` Tony Lindgren
2020-04-22  6:58                     ` Maxime Ripard
2020-04-22  6:58                       ` Maxime Ripard
2020-04-22  6:58                       ` Maxime Ripard
2020-04-22  7:10                       ` H. Nikolaus Schaller
2020-04-22  7:10                         ` H. Nikolaus Schaller
2020-04-22  7:10                         ` H. Nikolaus Schaller
2020-04-22 15:13                         ` Maxime Ripard
2020-04-22 15:13                           ` Maxime Ripard
2020-04-22 15:13                           ` Maxime Ripard
2020-04-22 16:09                           ` H. Nikolaus Schaller
2020-04-22 16:09                             ` H. Nikolaus Schaller
2020-04-22 16:09                             ` H. Nikolaus Schaller
     [not found]                             ` <MC879Q.XY9S0U9R35681@crapouillou.net>
2020-04-22 17:23                               ` H. Nikolaus Schaller [this message]
2020-04-22 19:00                                 ` Philipp Rossak
2020-04-22 19:33                                   ` Tony Lindgren
2020-04-22 21:12                                     ` H. Nikolaus Schaller
2020-04-23 15:00                             ` Neil Armstrong
2020-04-23 15:00                               ` Neil Armstrong
2020-04-23 15:00                               ` Neil Armstrong
2020-04-23 15:45                               ` H. Nikolaus Schaller
2020-04-23 15:45                                 ` H. Nikolaus Schaller
2020-04-23 15:45                                 ` H. Nikolaus Schaller
2020-04-23 20:36                                 ` Maxime Ripard
2020-04-23 20:36                                   ` Maxime Ripard
2020-04-23 20:36                                   ` Maxime Ripard
2020-04-24  9:51                                   ` H. Nikolaus Schaller
2020-04-24  9:51                                     ` H. Nikolaus Schaller
2020-04-24  9:51                                     ` H. Nikolaus Schaller
2020-04-21 16:42                 ` Philipp Rossak
2020-04-21 16:42                   ` Philipp Rossak
2020-04-21 16:42                   ` Philipp Rossak
2020-04-23 20:37                   ` Maxime Ripard
2020-04-23 20:37                     ` Maxime Ripard
2020-04-23 20:37                     ` Maxime Ripard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=D90A610B-1F26-4AD4-843A-60EB4E410377@goldelico.com \
    --to=hns@goldelico.com \
    --cc=airlied@linux.ie \
    --cc=bcousson@baylibre.com \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=embed3d@gmail.com \
    --cc=jhogan@kernel.org \
    --cc=kgene@kernel.org \
    --cc=krzk@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=maxime@cerno.tech \
    --cc=openpvrsgx-devgroup@letux.org \
    --cc=paul@crapouillou.net \
    --cc=paulburton@kernel.org \
    --cc=ralf@linux-mips.org \
    --cc=robh+dt@kernel.org \
    --cc=tony@atomide.com \
    --cc=tsbogend@alpha.franken.de \
    --cc=wens@csie.org \
    --cc=xc-racer2@live.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.