18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
28c2ecf20Sopenharmony_ci# Copyright (C) 2020 BAIKAL ELECTRONICS, JSC
38c2ecf20Sopenharmony_ci%YAML 1.2
48c2ecf20Sopenharmony_ci---
58c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/memory-controllers/baikal,bt1-l2-ctl.yaml#
68c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_cititle: Baikal-T1 L2-cache Control Block
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_cimaintainers:
118c2ecf20Sopenharmony_ci  - Serge Semin <fancer.lancer@gmail.com>
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_cidescription: |
148c2ecf20Sopenharmony_ci  By means of the System Controller Baikal-T1 SoC exposes a few settings to
158c2ecf20Sopenharmony_ci  tune the MIPS P5600 CM2 L2 cache performance up. In particular it's possible
168c2ecf20Sopenharmony_ci  to change the Tag, Data and Way-select RAM access latencies. Baikal-T1
178c2ecf20Sopenharmony_ci  L2-cache controller block is responsible for the tuning. Its DT node is
188c2ecf20Sopenharmony_ci  supposed to be a child of the system controller.
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciproperties:
218c2ecf20Sopenharmony_ci  compatible:
228c2ecf20Sopenharmony_ci    const: baikal,bt1-l2-ctl
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci  reg:
258c2ecf20Sopenharmony_ci    maxItems: 1
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ci  baikal,l2-ws-latency:
288c2ecf20Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32
298c2ecf20Sopenharmony_ci    description: Cycles of latency for Way-select RAM accesses
308c2ecf20Sopenharmony_ci    default: 0
318c2ecf20Sopenharmony_ci    minimum: 0
328c2ecf20Sopenharmony_ci    maximum: 3
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci  baikal,l2-tag-latency:
358c2ecf20Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32
368c2ecf20Sopenharmony_ci    description: Cycles of latency for Tag RAM accesses
378c2ecf20Sopenharmony_ci    default: 0
388c2ecf20Sopenharmony_ci    minimum: 0
398c2ecf20Sopenharmony_ci    maximum: 3
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci  baikal,l2-data-latency:
428c2ecf20Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32
438c2ecf20Sopenharmony_ci    description: Cycles of latency for Data RAM accesses
448c2ecf20Sopenharmony_ci    default: 1
458c2ecf20Sopenharmony_ci    minimum: 0
468c2ecf20Sopenharmony_ci    maximum: 3
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ciadditionalProperties: false
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_cirequired:
518c2ecf20Sopenharmony_ci  - compatible
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ciexamples:
548c2ecf20Sopenharmony_ci  - |
558c2ecf20Sopenharmony_ci    l2@1f04d028 {
568c2ecf20Sopenharmony_ci      compatible = "baikal,bt1-l2-ctl";
578c2ecf20Sopenharmony_ci      reg = <0x1f04d028 0x004>;
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ci      baikal,l2-ws-latency = <1>;
608c2ecf20Sopenharmony_ci      baikal,l2-tag-latency = <1>;
618c2ecf20Sopenharmony_ci      baikal,l2-data-latency = <2>;
628c2ecf20Sopenharmony_ci    };
638c2ecf20Sopenharmony_ci...
64