aboutsummaryrefslogtreecommitdiff
path: root/target/linux/d1/patches-6.1/0067-ASoC-dt-bindings-sun4i-spdif-Add-compatible-for-D1.patch
blob: 5c7e21954f274b27f0fdfe4c8a8d1c22a8cf4a31 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
From 4e72722bfb7dec028e11278a924bb8bef3e10897 Mon Sep 17 00:00:00 2001
From: Samuel Holland <samuel@sholland.org>
Date: Sat, 13 Nov 2021 10:48:24 -0600
Subject: [PATCH 067/117] ASoC: dt-bindings: sun4i-spdif: Add compatible for D1

D1 mostly keeps the existing register layout, but it separates the
module clock into separate clocks for the RX block and the TX block.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---
 .../sound/allwinner,sun4i-a10-spdif.yaml      | 54 +++++++++++++++----
 1 file changed, 44 insertions(+), 10 deletions(-)

--- a/Documentation/devicetree/bindings/sound/allwinner,sun4i-a10-spdif.yaml
+++ b/Documentation/devicetree/bindings/sound/allwinner,sun4i-a10-spdif.yaml
@@ -18,10 +18,12 @@ properties:
 
   compatible:
     oneOf:
-      - const: allwinner,sun4i-a10-spdif
-      - const: allwinner,sun6i-a31-spdif
-      - const: allwinner,sun8i-h3-spdif
-      - const: allwinner,sun50i-h6-spdif
+      - enum:
+          - allwinner,sun4i-a10-spdif
+          - allwinner,sun6i-a31-spdif
+          - allwinner,sun8i-h3-spdif
+          - allwinner,sun20i-d1-spdif
+          - allwinner,sun50i-h6-spdif
       - items:
           - const: allwinner,sun8i-a83t-spdif
           - const: allwinner,sun8i-h3-spdif
@@ -36,14 +38,12 @@ properties:
     maxItems: 1
 
   clocks:
-    items:
-      - description: Bus Clock
-      - description: Module Clock
+    minItems: 2
+    maxItems: 3
 
   clock-names:
-    items:
-      - const: apb
-      - const: spdif
+    minItems: 2
+    maxItems: 3
 
   # Even though it only applies to subschemas under the conditionals,
   # not listing them here will trigger a warning because of the
@@ -59,8 +59,42 @@ allOf:
         compatible:
           contains:
             enum:
+              - allwinner,sun20i-d1-spdif
+
+    then:
+      properties:
+        clocks:
+          items:
+            - description: Bus Clock
+            - description: RX Module Clock
+            - description: TX Module Clock
+
+        clock-names:
+          items:
+            - const: apb
+            - const: rx
+            - const: tx
+
+    else:
+      properties:
+        clocks:
+          items:
+            - description: Bus Clock
+            - description: Module Clock
+
+        clock-names:
+          items:
+            - const: apb
+            - const: spdif
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
               - allwinner,sun6i-a31-spdif
               - allwinner,sun8i-h3-spdif
+              - allwinner,sun20i-d1-spdif
               - allwinner,sun50i-h6-spdif
 
     then: