diff mbox series

[v2,5/5] dt-bindings: perf: Add compatible for Arm DSU-110

Message ID 51a8060493e1220886dcd468fad9a2b603607297.1639490264.git.robin.murphy@arm.com
State Accepted, archived
Headers show
Series arm64: PMU updates | expand

Checks

Context Check Description
robh/checkpatch success
robh/dtbs-check success
robh/dt-meta-schema success

Commit Message

Robin Murphy Dec. 14, 2021, 2:16 p.m. UTC
DSU-110 is the newest and shiniest for Armv9. Its programmer's model is
largely identical to the previous generation of DSUs, so we can treat it
as compatible, but it does have a a handful of extra IMP-DEF PMU events
to call its own. Thanks to the new notion of core complexes, the maximum
number of supported CPUs goes up as well.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
---

v2: Also make it complete and valid

 Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

Comments

Suzuki K Poulose Dec. 14, 2021, 2:42 p.m. UTC | #1
On 14/12/2021 14:16, Robin Murphy wrote:
> DSU-110 is the newest and shiniest for Armv9. Its programmer's model is
> largely identical to the previous generation of DSUs, so we can treat it
> as compatible, but it does have a a handful of extra IMP-DEF PMU events
> to call its own. Thanks to the new notion of core complexes, the maximum
> number of supported CPUs goes up as well.
> 
> Signed-off-by: Robin Murphy <robin.murphy@arm.com>
> ---
> 
> v2: Also make it complete and valid
> 
>   Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml | 8 ++++++--
>   1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml b/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
> index 09ddeb6a3ccc..7f31bcecedb5 100644
> --- a/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
> +++ b/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
> @@ -21,7 +21,11 @@ description:
>   
>   properties:
>     compatible:
> -    const: arm,dsu-pmu
> +    oneOf:
> +      - const: arm,dsu-pmu
> +      - items:
> +          - const: arm,dsu-110-pmu
> +          - const: arm,dsu-pmu

Couldn't this be :

	compatible:
	  oneOf:
	    - const: arm,dsu-110-pmu
	    - const: arm,dsu-pmu

Otherwise, looks good to me.

Suzuki
Robin Murphy Dec. 14, 2021, 2:59 p.m. UTC | #2
On 2021-12-14 14:42, Suzuki K Poulose wrote:
> On 14/12/2021 14:16, Robin Murphy wrote:
>> DSU-110 is the newest and shiniest for Armv9. Its programmer's model is
>> largely identical to the previous generation of DSUs, so we can treat it
>> as compatible, but it does have a a handful of extra IMP-DEF PMU events
>> to call its own. Thanks to the new notion of core complexes, the maximum
>> number of supported CPUs goes up as well.
>>
>> Signed-off-by: Robin Murphy <robin.murphy@arm.com>
>> ---
>>
>> v2: Also make it complete and valid
>>
>>   Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml | 8 ++++++--
>>   1 file changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml 
>> b/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
>> index 09ddeb6a3ccc..7f31bcecedb5 100644
>> --- a/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
>> +++ b/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
>> @@ -21,7 +21,11 @@ description:
>>   properties:
>>     compatible:
>> -    const: arm,dsu-pmu
>> +    oneOf:
>> +      - const: arm,dsu-pmu
>> +      - items:
>> +          - const: arm,dsu-110-pmu
>> +          - const: arm,dsu-pmu
> 
> Couldn't this be :
> 
>      compatible:
>        oneOf:
>          - const: arm,dsu-110-pmu
>          - const: arm,dsu-pmu
> 
> Otherwise, looks good to me.

My intent here was for the new case to use both strings and thus still 
permit a less-specific match to the original one (hence why there's no 
change to the actual driver included here). It's a true "compatible" in 
the sense that you can run the thing with the existing driver as if it's 
a 1st-gen DSU and get the expected results - at least that's the 
conclusion I drew from a side-by-side comparison of the TRMs, and the 
folks testing FPGAs haven't complained since I told them to try it 
months ago :)

Thanks,
Robin.
Suzuki K Poulose Dec. 14, 2021, 6:54 p.m. UTC | #3
On 14/12/2021 14:59, Robin Murphy wrote:
> On 2021-12-14 14:42, Suzuki K Poulose wrote:
>> On 14/12/2021 14:16, Robin Murphy wrote:
>>> DSU-110 is the newest and shiniest for Armv9. Its programmer's model is
>>> largely identical to the previous generation of DSUs, so we can treat it
>>> as compatible, but it does have a a handful of extra IMP-DEF PMU events
>>> to call its own. Thanks to the new notion of core complexes, the maximum
>>> number of supported CPUs goes up as well.
>>>
>>> Signed-off-by: Robin Murphy <robin.murphy@arm.com>
>>> ---
>>>
>>> v2: Also make it complete and valid
>>>
>>>   Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml | 8 ++++++--
>>>   1 file changed, 6 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml 
>>> b/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
>>> index 09ddeb6a3ccc..7f31bcecedb5 100644
>>> --- a/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
>>> +++ b/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
>>> @@ -21,7 +21,11 @@ description:
>>>   properties:
>>>     compatible:
>>> -    const: arm,dsu-pmu
>>> +    oneOf:
>>> +      - const: arm,dsu-pmu
>>> +      - items:
>>> +          - const: arm,dsu-110-pmu
>>> +          - const: arm,dsu-pmu
>>
>> Couldn't this be :
>>
>>      compatible:
>>        oneOf:
>>          - const: arm,dsu-110-pmu
>>          - const: arm,dsu-pmu
>>
>> Otherwise, looks good to me.
> 
> My intent here was for the new case to use both strings and thus still 
> permit a less-specific match to the original one (hence why there's no 
> change to the actual driver included here). It's a true "compatible" in 
> the sense that you can run the thing with the existing driver as if it's 
> a 1st-gen DSU and get the expected results - at least that's the 
> conclusion I drew from a side-by-side comparison of the TRMs, and the 
> folks testing FPGAs haven't complained since I told them to try it 
> months ago :)

Ah, right. I should have guessed it from the lack of update to the driver.

Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Rob Herring (Arm) Dec. 14, 2021, 8:41 p.m. UTC | #4
On Tue, 14 Dec 2021 14:16:17 +0000, Robin Murphy wrote:
> DSU-110 is the newest and shiniest for Armv9. Its programmer's model is
> largely identical to the previous generation of DSUs, so we can treat it
> as compatible, but it does have a a handful of extra IMP-DEF PMU events
> to call its own. Thanks to the new notion of core complexes, the maximum
> number of supported CPUs goes up as well.
> 
> Signed-off-by: Robin Murphy <robin.murphy@arm.com>
> ---
> 
> v2: Also make it complete and valid
> 
>  Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 

Applied, thanks!
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml b/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
index 09ddeb6a3ccc..7f31bcecedb5 100644
--- a/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
+++ b/Documentation/devicetree/bindings/perf/arm,dsu-pmu.yaml
@@ -21,7 +21,11 @@  description:
 
 properties:
   compatible:
-    const: arm,dsu-pmu
+    oneOf:
+      - const: arm,dsu-pmu
+      - items:
+          - const: arm,dsu-110-pmu
+          - const: arm,dsu-pmu
 
   interrupts:
     items:
@@ -30,7 +34,7 @@  properties:
   cpus:
     $ref: /schemas/types.yaml#/definitions/phandle-array
     minItems: 1
-    maxItems: 8
+    maxItems: 12
     description: List of phandles for the CPUs connected to this DSU instance.
 
 required: