File Index
Files and directories
Sign in
FILE

sifive,ccache0.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/cache/sifive,ccache0.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  2# Copyright (C) 2020 SiFive, Inc.
  3%YAML 1.2
  4---
  5$id: http://devicetree.org/schemas/cache/sifive,ccache0.yaml#
  6$schema: http://devicetree.org/meta-schemas/core.yaml#
  7
  8title: SiFive Composable Cache Controller
  9
 10maintainers:
 11  - Paul Walmsley <paul.walmsley@sifive.com>
 12
 13description:
 14  The SiFive Composable Cache Controller is used to provide access to fast copies
 15  of memory for masters in a Core Complex. The Composable Cache Controller also
 16  acts as directory-based coherency manager.
 17  All the properties in ePAPR/DeviceTree specification applies for this platform.
 18
 19select:
 20  properties:
 21    compatible:
 22      contains:
 23        enum:
 24          - sifive,ccache0
 25          - sifive,fu540-c000-ccache
 26          - sifive,fu740-c000-ccache
 27
 28  required:
 29    - compatible
 30
 31properties:
 32  compatible:
 33    oneOf:
 34      - items:
 35          - enum:
 36              - sifive,ccache0
 37              - sifive,fu540-c000-ccache
 38              - sifive,fu740-c000-ccache
 39          - const: cache
 40      - items:
 41          - enum:
 42              - eswin,eic7700-l3-cache
 43              - starfive,jh7100-ccache
 44              - starfive,jh7110-ccache
 45          - const: sifive,ccache0
 46          - const: cache
 47      - items:
 48          - const: microchip,mpfs-ccache
 49          - const: sifive,fu540-c000-ccache
 50          - const: cache
 51      - items:
 52          - const: microchip,pic64gx-ccache
 53          - const: microchip,mpfs-ccache
 54          - const: sifive,fu540-c000-ccache
 55          - const: cache
 56
 57  cache-block-size:
 58    const: 64
 59
 60  cache-level:
 61    enum: [2, 3]
 62
 63  cache-sets:
 64    enum: [1024, 2048, 4096]
 65
 66  cache-size:
 67    enum: [2097152, 4194304]
 68
 69  cache-unified: true
 70
 71  interrupts:
 72    minItems: 3
 73    items:
 74      - description: DirError interrupt
 75      - description: DataError interrupt
 76      - description: DataFail interrupt
 77      - description: DirFail interrupt
 78
 79  reg:
 80    maxItems: 1
 81
 82  next-level-cache: true
 83
 84  memory-region:
 85    maxItems: 1
 86    description: |
 87      The reference to the reserved-memory for the L2 Loosely Integrated Memory region.
 88      The reserved memory node should be defined as per the bindings in reserved-memory.txt.
 89
 90allOf:
 91  - $ref: /schemas/cache-controller.yaml#
 92
 93  - if:
 94      properties:
 95        compatible:
 96          contains:
 97            enum:
 98              - eswin,eic7700-l3-cache
 99              - sifive,fu740-c000-ccache
100              - starfive,jh7100-ccache
101              - starfive,jh7110-ccache
102              - microchip,mpfs-ccache
103
104    then:
105      properties:
106        interrupts:
107          description: |
108            Must contain entries for DirError, DataError, DataFail, DirFail signals.
109          minItems: 4
110
111    else:
112      properties:
113        interrupts:
114          description: |
115            Must contain entries for DirError, DataError and DataFail signals.
116          maxItems: 3
117
118  - if:
119      properties:
120        compatible:
121          contains:
122            const: eswin,eic7700-l3-cache
123
124    then:
125      properties:
126        cache-size:
127          const: 4194304
128
129    else:
130      properties:
131        cache-size:
132          const: 2097152
133
134  - if:
135      properties:
136        compatible:
137          contains:
138            enum:
139              - sifive,fu740-c000-ccache
140              - starfive,jh7100-ccache
141              - starfive,jh7110-ccache
142
143    then:
144      properties:
145        cache-sets:
146          const: 2048
147
148  - if:
149      properties:
150        compatible:
151          contains:
152            enum:
153              - microchip,mpfs-ccache
154              - sifive,fu540-c000-ccache
155
156    then:
157      properties:
158        cache-sets:
159          const: 1024
160
161  - if:
162      properties:
163        compatible:
164          contains:
165            enum:
166              - eswin,eic7700-l3-cache
167
168    then:
169      properties:
170        cache-sets:
171          const: 4096
172
173  - if:
174      properties:
175        compatible:
176          contains:
177            const: sifive,ccache0
178
179    then:
180      properties:
181        cache-level:
182          enum: [2, 3]
183
184    else:
185      properties:
186        cache-level:
187          const: 2
188
189additionalProperties: false
190
191required:
192  - compatible
193  - cache-block-size
194  - cache-level
195  - cache-sets
196  - cache-size
197  - cache-unified
198  - interrupts
199  - reg
200
201examples:
202  - |
203    cache-controller@2010000 {
204        compatible = "sifive,fu540-c000-ccache", "cache";
205        cache-block-size = <64>;
206        cache-level = <2>;
207        cache-sets = <1024>;
208        cache-size = <2097152>;
209        cache-unified;
210        reg = <0x2010000 0x1000>;
211        interrupt-parent = <&plic0>;
212        interrupts = <1>,
213                     <2>,
214                     <3>;
215        next-level-cache = <&L25>;
216        memory-region = <&l2_lim>;
217    };
~/ Read-only file preview.