lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <31f501dc1b4c$dedf8fd0$9c9eaf70$@samsung.com>
Date: Mon, 1 Sep 2025 19:59:45 +0530
From: "Alim Akhtar" <alim.akhtar@...sung.com>
To: "'Krzysztof Kozlowski'" <krzysztof.kozlowski@...aro.org>, "'Wim Van
 Sebroeck'" <wim@...ux-watchdog.org>, "'Guenter Roeck'" <linux@...ck-us.net>,
	"'Rob Herring'" <robh@...nel.org>, "'Krzysztof Kozlowski'"
	<krzk+dt@...nel.org>, "'Conor Dooley'" <conor+dt@...nel.org>
Cc: "'Krzysztof Kozlowski'" <krzk@...nel.org>,
	<linux-watchdog@...r.kernel.org>, <devicetree@...r.kernel.org>,
	<linux-kernel@...r.kernel.org>, <linux-arm-kernel@...ts.infradead.org>,
	<linux-samsung-soc@...r.kernel.org>
Subject: RE: [PATCH 4/4] dt-bindings: watchdog: samsung-wdt: Split if:then:
 and constrain more



> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
> Sent: Saturday, August 30, 2025 3:49 PM
> To: Wim Van Sebroeck <wim@...ux-watchdog.org>; Guenter Roeck
> <linux@...ck-us.net>; Rob Herring <robh@...nel.org>; Krzysztof Kozlowski
> <krzk+dt@...nel.org>; Conor Dooley <conor+dt@...nel.org>; Alim Akhtar
> <alim.akhtar@...sung.com>
> Cc: Krzysztof Kozlowski <krzk@...nel.org>; linux-
> watchdog@...r.kernel.org; devicetree@...r.kernel.org; linux-
> kernel@...r.kernel.org; linux-arm-kernel@...ts.infradead.org; linux-
> samsung-soc@...r.kernel.org; Krzysztof Kozlowski
> <krzysztof.kozlowski@...aro.org>
> Subject: [PATCH 4/4] dt-bindings: watchdog: samsung-wdt: Split if:then: and
> constrain more
> 
> Binding defined two if:then: blocks covering different conditions but not fully
> constraining the properties per each variant:
> 1. "if:" to require samsung,syscon-phandle, 2. "if:" with "else:" to narrow
> number of clocks and require or disallow
>    samsung,cluster-index.
> 
> This still did not cover following cases:
> 1. Disallow samsung,syscon-phandle when not applicable, 2. Narrow
> samsung,cluster-index to [0, 1], for SoCs with only two
>    clusters.
> 
> Solving this in current format would lead to spaghetti code, so re-write entire
> "if:then:" approach into mutually exclusive cases so each SoC appears only in
> one "if:" block.  This allows to forbid samsung,syscon-phandle for S3C6410,
> and narrow samsung,cluster-index to [0, 1].
> 
This looks much cleaner. 
On a side note, may be you can add an example of latest SoC binding 
for the documentation purpose as current example in this file is pretty old and simple one. 
(I know one can always look into dtsi/dts for the example, but updating here won't harm)

> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
> ---
In anycase,

Reviewed-by: Alim Akhtar <alim.akhtar@...sung.com>

>  .../devicetree/bindings/watchdog/samsung-wdt.yaml  | 70
> ++++++++++++++++------
>  1 file changed, 52 insertions(+), 18 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/watchdog/samsung-
> wdt.yaml b/Documentation/devicetree/bindings/watchdog/samsung-
> wdt.yaml
> index
> 51e597ba7db2615da41f5d3b6dc4e70f6bb72bb6..41aee1655b0c22a6dce212a6
> 3fa4849089253f09 100644
> --- a/Documentation/devicetree/bindings/watchdog/samsung-wdt.yaml
> +++ b/Documentation/devicetree/bindings/watchdog/samsung-wdt.yaml
> @@ -74,24 +74,7 @@ allOf:
>            contains:
>              enum:
>                - google,gs101-wdt
> -              - samsung,exynos5250-wdt
> -              - samsung,exynos5420-wdt
> -              - samsung,exynos7-wdt
>                - samsung,exynos850-wdt
> -              - samsung,exynos990-wdt
> -              - samsung,exynosautov9-wdt
> -              - samsung,exynosautov920-wdt
> -    then:
> -      required:
> -        - samsung,syscon-phandle
> -  - if:
> -      properties:
> -        compatible:
> -          contains:
> -            enum:
> -              - google,gs101-wdt
> -              - samsung,exynos850-wdt
> -              - samsung,exynos990-wdt
>                - samsung,exynosautov9-wdt
>                - samsung,exynosautov920-wdt
>      then:
> @@ -104,9 +87,41 @@ allOf:
>            items:
>              - const: watchdog
>              - const: watchdog_src
> +        samsung,cluster-index:
> +          enum: [0, 1]
>        required:
>          - samsung,cluster-index
> -    else:
> +        - samsung,syscon-phandle
> +
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - samsung,exynos990-wdt
> +    then:
> +      properties:
> +        clocks:
> +          items:
> +            - description: Bus clock, used for register interface
> +            - description: Source clock (driving watchdog counter)
> +        clock-names:
> +          items:
> +            - const: watchdog
> +            - const: watchdog_src
> +      required:
> +        - samsung,cluster-index
> +        - samsung,syscon-phandle
> +
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - samsung,exynos5250-wdt
> +              - samsung,exynos5420-wdt
> +              - samsung,exynos7-wdt
> +    then:
>        properties:
>          clocks:
>            items:
> @@ -115,6 +130,25 @@ allOf:
>            items:
>              - const: watchdog
>          samsung,cluster-index: false
> +      required:
> +        - samsung,syscon-phandle
> +
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - samsung,s3c6410-wdt
> +    then:
> +      properties:
> +        clocks:
> +          items:
> +            - description: Bus clock, which is also a source clock
> +        clock-names:
> +          items:
> +            - const: watchdog
> +        samsung,cluster-index: false
> +        samsung,syscon-phandle: false
> 
>  unevaluatedProperties: false
> 
> 
> --
> 2.48.1



Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ