diff mbox series

[2/3] dt-bindings: ufs: mediatek,ufs: add MT8195 compatible and update clock nodes

Message ID 20250718082719.653228-2-macpaul.lin@mediatek.com
State New
Headers show
Series [1/3] scsi: ufs: ufs-mediatek: Add UFS host support for MT8195 SoC | expand

Commit Message

Macpaul Lin July 18, 2025, 8:27 a.m. UTC
Add 'mediatek,mt8195-ufshci' to compatible list.
Update clocks and clock-names constraints to allow one to eight entries.
Introduce 'mediatek,ufs-disable-mcq' property to disable
MCQ (Multi-Circular Queue). Update conditional schema for mt8195
requiring eight 'clocks' and eight 'clock-names'.

Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
---
 .../devicetree/bindings/ufs/mediatek,ufs.yaml | 49 ++++++++++++++++---
 1 file changed, 43 insertions(+), 6 deletions(-)

Comments

Rob Herring July 21, 2025, 12:26 a.m. UTC | #1
On Fri, Jul 18, 2025 at 04:27:17PM +0800, Macpaul Lin wrote:
> Add 'mediatek,mt8195-ufshci' to compatible list.
> Update clocks and clock-names constraints to allow one to eight entries.
> Introduce 'mediatek,ufs-disable-mcq' property to disable
> MCQ (Multi-Circular Queue). Update conditional schema for mt8195
> requiring eight 'clocks' and eight 'clock-names'.

Don't just describe the diff, we can read it. Describe why you are 
making the changes. How is the new h/w different (or the same).

> 
> Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
> ---
>  .../devicetree/bindings/ufs/mediatek,ufs.yaml | 49 ++++++++++++++++---
>  1 file changed, 43 insertions(+), 6 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/ufs/mediatek,ufs.yaml b/Documentation/devicetree/bindings/ufs/mediatek,ufs.yaml
> index 32fd535a514a..9d6bcf735920 100644
> --- a/Documentation/devicetree/bindings/ufs/mediatek,ufs.yaml
> +++ b/Documentation/devicetree/bindings/ufs/mediatek,ufs.yaml
> @@ -9,21 +9,20 @@ title: Mediatek Universal Flash Storage (UFS) Controller
>  maintainers:
>    - Stanley Chu <stanley.chu@mediatek.com>
>  
> -allOf:
> -  - $ref: ufs-common.yaml
> -
>  properties:
>    compatible:
>      enum:
>        - mediatek,mt8183-ufshci
>        - mediatek,mt8192-ufshci
> +      - mediatek,mt8195-ufshci
>  
>    clocks:
> -    maxItems: 1
> +    minItems: 1
> +    maxItems: 8
>  
>    clock-names:
> -    items:
> -      - const: ufs
> +    minItems: 1
> +    maxItems: 8
>  
>    phys:
>      maxItems: 1
> @@ -33,6 +32,11 @@ properties:
>  
>    vcc-supply: true
>  
> +  mediatek,ufs-disable-mcq:
> +    $ref: /schemas/types.yaml#/definitions/flag
> +    description: The mask to disable MCQ (Multi-Circular Queue) for UFS host.
> +    type: boolean

Seems this was undocumented, but already in use. That should be a 
separate patch.

> +
>  required:
>    - compatible
>    - clocks
> @@ -43,6 +47,39 @@ required:
>  
>  unevaluatedProperties: false
>  
> +allOf:
> +  - $ref: ufs-common.yaml
> +
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - mediatek,mt8195-ufshci
> +    then:
> +      properties:
> +        clocks:
> +          minItems: 8
> +          maxItems: 8
> +        clock-names:
> +          items:
> +            - const: ufs
> +            - const: ufs_aes
> +            - const: ufs_tick
> +            - const: unipro_sysclk
> +            - const: unipro_tick
> +            - const: unipro_mp_bclk
> +            - const: ufs_tx_symbol
> +            - const: ufs_mem_sub
> +    else:
> +      properties:
> +        clocks:
> +          minItems: 1

1 is already the minimum. Drop.

> +          maxItems: 1
> +        clock-names:
> +          items:
> +            - const: ufs
> +
>  examples:
>    - |
>      #include <dt-bindings/clock/mt8183-clk.h>
> -- 
> 2.45.2
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/ufs/mediatek,ufs.yaml b/Documentation/devicetree/bindings/ufs/mediatek,ufs.yaml
index 32fd535a514a..9d6bcf735920 100644
--- a/Documentation/devicetree/bindings/ufs/mediatek,ufs.yaml
+++ b/Documentation/devicetree/bindings/ufs/mediatek,ufs.yaml
@@ -9,21 +9,20 @@  title: Mediatek Universal Flash Storage (UFS) Controller
 maintainers:
   - Stanley Chu <stanley.chu@mediatek.com>
 
-allOf:
-  - $ref: ufs-common.yaml
-
 properties:
   compatible:
     enum:
       - mediatek,mt8183-ufshci
       - mediatek,mt8192-ufshci
+      - mediatek,mt8195-ufshci
 
   clocks:
-    maxItems: 1
+    minItems: 1
+    maxItems: 8
 
   clock-names:
-    items:
-      - const: ufs
+    minItems: 1
+    maxItems: 8
 
   phys:
     maxItems: 1
@@ -33,6 +32,11 @@  properties:
 
   vcc-supply: true
 
+  mediatek,ufs-disable-mcq:
+    $ref: /schemas/types.yaml#/definitions/flag
+    description: The mask to disable MCQ (Multi-Circular Queue) for UFS host.
+    type: boolean
+
 required:
   - compatible
   - clocks
@@ -43,6 +47,39 @@  required:
 
 unevaluatedProperties: false
 
+allOf:
+  - $ref: ufs-common.yaml
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - mediatek,mt8195-ufshci
+    then:
+      properties:
+        clocks:
+          minItems: 8
+          maxItems: 8
+        clock-names:
+          items:
+            - const: ufs
+            - const: ufs_aes
+            - const: ufs_tick
+            - const: unipro_sysclk
+            - const: unipro_tick
+            - const: unipro_mp_bclk
+            - const: ufs_tx_symbol
+            - const: ufs_mem_sub
+    else:
+      properties:
+        clocks:
+          minItems: 1
+          maxItems: 1
+        clock-names:
+          items:
+            - const: ufs
+
 examples:
   - |
     #include <dt-bindings/clock/mt8183-clk.h>