Devicetree
 help / color / mirror / Atom feed
* [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties
@ 2026-07-01 10:57 Krzysztof Kozlowski
  2026-07-01 10:57 ` [PATCH 2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes Krzysztof Kozlowski
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2026-07-01 10:57 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Peter Griffin,
	Alim Akhtar, devicetree, linux-arm-kernel, linux-samsung-soc,
	linux-kernel
  Cc: Krzysztof Kozlowski

Each schema for a child node should end with either additionalProperties
or unevaluatedProperties, so add missing one making the schema tighter.
Defining 'type: object' is on the other hand not necessary when other
schema is referenced.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
 .../devicetree/bindings/soc/samsung/exynos-pmu.yaml         | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
index 76ce7e98c10f..d124f3ae9fbd 100644
--- a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
+++ b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
@@ -94,19 +94,19 @@ properties:
 
   reboot-mode:
     $ref: /schemas/power/reset/syscon-reboot-mode.yaml
-    type: object
+    unevaluatedProperties: false
     description:
       Reboot mode to alter bootloader behavior for the next boot
 
   syscon-poweroff:
     $ref: /schemas/power/reset/syscon-poweroff.yaml#
-    type: object
+    unevaluatedProperties: false
     description:
       Node for power off method
 
   syscon-reboot:
     $ref: /schemas/power/reset/syscon-reboot.yaml#
-    type: object
+    unevaluatedProperties: false
     description:
       Node for reboot method
 
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes
  2026-07-01 10:57 [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties Krzysztof Kozlowski
@ 2026-07-01 10:57 ` Krzysztof Kozlowski
  2026-07-01 19:58   ` Rob Herring (Arm)
  2026-07-09 13:10   ` Peter Griffin
  2026-07-01 19:58 ` [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties Rob Herring (Arm)
                   ` (2 subsequent siblings)
  3 siblings, 2 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2026-07-01 10:57 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Peter Griffin,
	Alim Akhtar, devicetree, linux-arm-kernel, linux-samsung-soc,
	linux-kernel
  Cc: Krzysztof Kozlowski

syscon-reboot-mode schema allows arbitrary "mode-.* properties but only
a subset actually makes sense and is valid.  Provide negative look-ahead
pattern to disallow any modes not supported by the device, which
tightens the binding.

Most of Android-based Exynos devices share the bootloader or its parts,
thus reboot modes are most likely the same, however only a few upstream
DTS define them, so add restrictions only for these.

Google GS101 has on the other hand quite different bootloader with many
known reboot modes.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
 .../bindings/soc/samsung/exynos-pmu.yaml      | 21 +++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
index d124f3ae9fbd..5bd39876e3b3 100644
--- a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
+++ b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
@@ -176,6 +176,20 @@ allOf:
       properties:
         dp-phy: false
 
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - samsung,exynos7-pmu
+    then:
+      properties:
+        reboot-mode:
+          patternProperties:
+            # Negative look-ahead to disallow unsupported modes. The '$' has to be
+            # part of lookahead group to work, instead of trailing outside of ().
+            "^mode-(?!(bootloader$|download$|fastboot$|recovery$))": false
+
   - if:
       properties:
         compatible:
@@ -183,6 +197,13 @@ allOf:
             enum:
               - google,gs101-pmu
     then:
+      properties:
+        reboot-mode:
+          patternProperties:
+            # Negative look-ahead to disallow unsupported modes. The '$' has to be
+            # part of lookahead group to work, instead of trailing outside of ().
+            "^mode-(?!(bootloader$|charge$|dm-verity-device-corrupted$|fastboot$|reboot-ab-update$|recovery$)|rescue$|shutdown-thermal$|shutdown-thermal-battery$)": false
+
       required:
         - google,pmu-intr-gen-syscon
     else:
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties
  2026-07-01 10:57 [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties Krzysztof Kozlowski
  2026-07-01 10:57 ` [PATCH 2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes Krzysztof Kozlowski
@ 2026-07-01 19:58 ` Rob Herring (Arm)
  2026-07-09 13:10 ` Peter Griffin
  2026-07-09 13:19 ` Krzysztof Kozlowski
  3 siblings, 0 replies; 7+ messages in thread
From: Rob Herring (Arm) @ 2026-07-01 19:58 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Peter Griffin, devicetree, Alim Akhtar, linux-samsung-soc,
	linux-kernel, linux-arm-kernel, Conor Dooley, Krzysztof Kozlowski


On Wed, 01 Jul 2026 12:57:32 +0200, Krzysztof Kozlowski wrote:
> Each schema for a child node should end with either additionalProperties
> or unevaluatedProperties, so add missing one making the schema tighter.
> Defining 'type: object' is on the other hand not necessary when other
> schema is referenced.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> ---
>  .../devicetree/bindings/soc/samsung/exynos-pmu.yaml         | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 

Acked-by: Rob Herring (Arm) <robh@kernel.org>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes
  2026-07-01 10:57 ` [PATCH 2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes Krzysztof Kozlowski
@ 2026-07-01 19:58   ` Rob Herring (Arm)
  2026-07-09 13:10   ` Peter Griffin
  1 sibling, 0 replies; 7+ messages in thread
From: Rob Herring (Arm) @ 2026-07-01 19:58 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Peter Griffin, linux-kernel, Krzysztof Kozlowski, Conor Dooley,
	devicetree, Alim Akhtar, linux-samsung-soc, linux-arm-kernel


On Wed, 01 Jul 2026 12:57:33 +0200, Krzysztof Kozlowski wrote:
> syscon-reboot-mode schema allows arbitrary "mode-.* properties but only
> a subset actually makes sense and is valid.  Provide negative look-ahead
> pattern to disallow any modes not supported by the device, which
> tightens the binding.
> 
> Most of Android-based Exynos devices share the bootloader or its parts,
> thus reboot modes are most likely the same, however only a few upstream
> DTS define them, so add restrictions only for these.
> 
> Google GS101 has on the other hand quite different bootloader with many
> known reboot modes.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> ---
>  .../bindings/soc/samsung/exynos-pmu.yaml      | 21 +++++++++++++++++++
>  1 file changed, 21 insertions(+)
> 

Acked-by: Rob Herring (Arm) <robh@kernel.org>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties
  2026-07-01 10:57 [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties Krzysztof Kozlowski
  2026-07-01 10:57 ` [PATCH 2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes Krzysztof Kozlowski
  2026-07-01 19:58 ` [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties Rob Herring (Arm)
@ 2026-07-09 13:10 ` Peter Griffin
  2026-07-09 13:19 ` Krzysztof Kozlowski
  3 siblings, 0 replies; 7+ messages in thread
From: Peter Griffin @ 2026-07-09 13:10 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Alim Akhtar,
	devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel

On Wed, 1 Jul 2026 at 11:57, Krzysztof Kozlowski
<krzysztof.kozlowski@oss.qualcomm.com> wrote:
>
> Each schema for a child node should end with either additionalProperties
> or unevaluatedProperties, so add missing one making the schema tighter.
> Defining 'type: object' is on the other hand not necessary when other
> schema is referenced.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> ---

Reviewed-by: Peter Griffin <peter.griffin@linaro.org>

>  .../devicetree/bindings/soc/samsung/exynos-pmu.yaml         | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
> index 76ce7e98c10f..d124f3ae9fbd 100644
> --- a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
> +++ b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
> @@ -94,19 +94,19 @@ properties:
>
>    reboot-mode:
>      $ref: /schemas/power/reset/syscon-reboot-mode.yaml
> -    type: object
> +    unevaluatedProperties: false
>      description:
>        Reboot mode to alter bootloader behavior for the next boot
>
>    syscon-poweroff:
>      $ref: /schemas/power/reset/syscon-poweroff.yaml#
> -    type: object
> +    unevaluatedProperties: false
>      description:
>        Node for power off method
>
>    syscon-reboot:
>      $ref: /schemas/power/reset/syscon-reboot.yaml#
> -    type: object
> +    unevaluatedProperties: false
>      description:
>        Node for reboot method
>
> --
> 2.53.0
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes
  2026-07-01 10:57 ` [PATCH 2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes Krzysztof Kozlowski
  2026-07-01 19:58   ` Rob Herring (Arm)
@ 2026-07-09 13:10   ` Peter Griffin
  1 sibling, 0 replies; 7+ messages in thread
From: Peter Griffin @ 2026-07-09 13:10 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Alim Akhtar,
	devicetree, linux-arm-kernel, linux-samsung-soc, linux-kernel

On Wed, 1 Jul 2026 at 11:57, Krzysztof Kozlowski
<krzysztof.kozlowski@oss.qualcomm.com> wrote:
>
> syscon-reboot-mode schema allows arbitrary "mode-.* properties but only
> a subset actually makes sense and is valid.  Provide negative look-ahead
> pattern to disallow any modes not supported by the device, which
> tightens the binding.
>
> Most of Android-based Exynos devices share the bootloader or its parts,
> thus reboot modes are most likely the same, however only a few upstream
> DTS define them, so add restrictions only for these.
>
> Google GS101 has on the other hand quite different bootloader with many
> known reboot modes.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> ---

Reviewed-by: Peter Griffin <peter.griffin@linaro.org>

>  .../bindings/soc/samsung/exynos-pmu.yaml      | 21 +++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
> index d124f3ae9fbd..5bd39876e3b3 100644
> --- a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
> +++ b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
> @@ -176,6 +176,20 @@ allOf:
>        properties:
>          dp-phy: false
>
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - samsung,exynos7-pmu
> +    then:
> +      properties:
> +        reboot-mode:
> +          patternProperties:
> +            # Negative look-ahead to disallow unsupported modes. The '$' has to be
> +            # part of lookahead group to work, instead of trailing outside of ().
> +            "^mode-(?!(bootloader$|download$|fastboot$|recovery$))": false
> +
>    - if:
>        properties:
>          compatible:
> @@ -183,6 +197,13 @@ allOf:
>              enum:
>                - google,gs101-pmu
>      then:
> +      properties:
> +        reboot-mode:
> +          patternProperties:
> +            # Negative look-ahead to disallow unsupported modes. The '$' has to be
> +            # part of lookahead group to work, instead of trailing outside of ().
> +            "^mode-(?!(bootloader$|charge$|dm-verity-device-corrupted$|fastboot$|reboot-ab-update$|recovery$)|rescue$|shutdown-thermal$|shutdown-thermal-battery$)": false
> +
>        required:
>          - google,pmu-intr-gen-syscon
>      else:
> --
> 2.53.0
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties
  2026-07-01 10:57 [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2026-07-09 13:10 ` Peter Griffin
@ 2026-07-09 13:19 ` Krzysztof Kozlowski
  3 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2026-07-09 13:19 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Peter Griffin,
	Alim Akhtar, devicetree, linux-arm-kernel, linux-samsung-soc,
	linux-kernel, Krzysztof Kozlowski


On Wed, 01 Jul 2026 12:57:32 +0200, Krzysztof Kozlowski wrote:
> Each schema for a child node should end with either additionalProperties
> or unevaluatedProperties, so add missing one making the schema tighter.
> Defining 'type: object' is on the other hand not necessary when other
> schema is referenced.

Applied, thanks!

[1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties
      https://git.kernel.org/krzk/linux/c/3527091de0feb27e437bce175048b54be835221b
[2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes
      https://git.kernel.org/krzk/linux/c/e131ca83dabc8bfb8c1d455d02bf2d7a7bc1198a

Best regards,
-- 
Krzysztof Kozlowski <krzk@kernel.org>


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-07-09 13:19 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-01 10:57 [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties Krzysztof Kozlowski
2026-07-01 10:57 ` [PATCH 2/2] dt-bindings: samsung: exynos-pmu: Narrow allowed reboot modes Krzysztof Kozlowski
2026-07-01 19:58   ` Rob Herring (Arm)
2026-07-09 13:10   ` Peter Griffin
2026-07-01 19:58 ` [PATCH 1/2] dt-bindings: samsung: exynos-pmu: Restrict children with unevaluatedProperties Rob Herring (Arm)
2026-07-09 13:10 ` Peter Griffin
2026-07-09 13:19 ` Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox