[PATCH v2] dt-bindings: timer: arm,arch_timer: Allow dual compatible string

Jean-Philippe Brucker posted 1 patch 3 years, 6 months ago
.../devicetree/bindings/timer/arm,arch_timer.yaml     | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
[PATCH v2] dt-bindings: timer: arm,arch_timer: Allow dual compatible string
Posted by Jean-Philippe Brucker 3 years, 6 months ago
Since the Armv7 and Armv8 architected timers are compatible, it is valid
to expose a devicetree node with compatible string "arm,armv8-timer"
followed by "arm,armv7-timer". For example a 32-bit guest running on a
64-bit machine may look for the v7 string even though the hardware is v8.
VMMs such as QEMU and kvmtool have been using this compatible string for
some time. Clean up the compatible list a little and add the dual
option.

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
---
v2: Reworked commit message, removed "obsolete" description
v1: https://lore.kernel.org/all/20220916132959.1910374-1-jean-philippe@linaro.org/
---
 .../devicetree/bindings/timer/arm,arch_timer.yaml     | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/Documentation/devicetree/bindings/timer/arm,arch_timer.yaml b/Documentation/devicetree/bindings/timer/arm,arch_timer.yaml
index df8ce87fd54b..c5fc3b6c8bd0 100644
--- a/Documentation/devicetree/bindings/timer/arm,arch_timer.yaml
+++ b/Documentation/devicetree/bindings/timer/arm,arch_timer.yaml
@@ -22,16 +22,15 @@ properties:
   compatible:
     oneOf:
       - items:
-          - enum:
-              - arm,cortex-a15-timer
-          - enum:
-              - arm,armv7-timer
+          - const: arm,cortex-a15-timer
+          - const: arm,armv7-timer
       - items:
           - enum:
               - arm,armv7-timer
-      - items:
-          - enum:
               - arm,armv8-timer
+      - items:
+          - const: arm,armv8-timer
+          - const: arm,armv7-timer
 
   interrupts:
     minItems: 1
-- 
2.37.3
Re: [PATCH v2] dt-bindings: timer: arm,arch_timer: Allow dual compatible string
Posted by robh@kernel.org 3 years, 6 months ago
On Thu, 22 Sep 2022 17:11:50 +0100, Jean-Philippe Brucker wrote:
> Since the Armv7 and Armv8 architected timers are compatible, it is valid
> to expose a devicetree node with compatible string "arm,armv8-timer"
> followed by "arm,armv7-timer". For example a 32-bit guest running on a
> 64-bit machine may look for the v7 string even though the hardware is v8.
> VMMs such as QEMU and kvmtool have been using this compatible string for
> some time. Clean up the compatible list a little and add the dual
> option.
> 
> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
> ---
> v2: Reworked commit message, removed "obsolete" description
> v1: https://lore.kernel.org/all/20220916132959.1910374-1-jean-philippe@linaro.org/
> ---
>  .../devicetree/bindings/timer/arm,arch_timer.yaml     | 11 +++++------
>  1 file changed, 5 insertions(+), 6 deletions(-)
> 

Applied, thanks!
Re: [PATCH v2] dt-bindings: timer: arm,arch_timer: Allow dual compatible string
Posted by Marc Zyngier 3 years, 6 months ago
On Thu, 22 Sep 2022 12:11:50 -0400,
Jean-Philippe Brucker <jean-philippe@linaro.org> wrote:
> 
> Since the Armv7 and Armv8 architected timers are compatible, it is valid
> to expose a devicetree node with compatible string "arm,armv8-timer"
> followed by "arm,armv7-timer". For example a 32-bit guest running on a
> 64-bit machine may look for the v7 string even though the hardware is v8.
> VMMs such as QEMU and kvmtool have been using this compatible string for
> some time. Clean up the compatible list a little and add the dual
> option.
> 
> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>

Acked-by: Marc Zyngier <maz@kernel.org>

	M.

-- 
Without deviation from the norm, progress is not possible.