xref: /freebsd-src/sys/contrib/device-tree/Bindings/memory-controllers/qca,ath79-ddr-controller.yaml (revision c9ccf3a32da427475985b85d7df023ccfb138c27)
1354d7675SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0
2354d7675SEmmanuel Vadot%YAML 1.2
3354d7675SEmmanuel Vadot---
4354d7675SEmmanuel Vadot$id: http://devicetree.org/schemas/memory-controllers/qca,ath79-ddr-controller.yaml#
5354d7675SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6354d7675SEmmanuel Vadot
7354d7675SEmmanuel Vadottitle: Qualcomm Atheros AR7xxx/AR9xxx DDR controller
8354d7675SEmmanuel Vadot
9354d7675SEmmanuel Vadotmaintainers:
10*c9ccf3a3SEmmanuel Vadot  - Krzysztof Kozlowski <krzk@kernel.org>
11354d7675SEmmanuel Vadot
12354d7675SEmmanuel Vadotdescription: |
13354d7675SEmmanuel Vadot  The DDR controller of the AR7xxx and AR9xxx families provides an interface to
14354d7675SEmmanuel Vadot  flush the FIFO between various devices and the DDR. This is mainly used by
15354d7675SEmmanuel Vadot  the IRQ controller to flush the FIFO before running the interrupt handler of
16354d7675SEmmanuel Vadot  such devices.
17354d7675SEmmanuel Vadot
18354d7675SEmmanuel Vadotproperties:
19354d7675SEmmanuel Vadot  compatible:
20354d7675SEmmanuel Vadot    oneOf:
21354d7675SEmmanuel Vadot      - items:
22354d7675SEmmanuel Vadot          - const: qca,ar9132-ddr-controller
23354d7675SEmmanuel Vadot          - const: qca,ar7240-ddr-controller
24354d7675SEmmanuel Vadot      - items:
25354d7675SEmmanuel Vadot          - enum:
26354d7675SEmmanuel Vadot              - qca,ar7100-ddr-controller
27354d7675SEmmanuel Vadot              - qca,ar7240-ddr-controller
28354d7675SEmmanuel Vadot
29354d7675SEmmanuel Vadot  "#qca,ddr-wb-channel-cells":
30354d7675SEmmanuel Vadot    description: |
31354d7675SEmmanuel Vadot      Specifies the number of cells needed to encode the write buffer channel
32354d7675SEmmanuel Vadot      index.
33354d7675SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
34354d7675SEmmanuel Vadot    const: 1
35354d7675SEmmanuel Vadot
36354d7675SEmmanuel Vadot  reg:
37354d7675SEmmanuel Vadot    maxItems: 1
38354d7675SEmmanuel Vadot
39354d7675SEmmanuel Vadotrequired:
40354d7675SEmmanuel Vadot  - compatible
41354d7675SEmmanuel Vadot  - "#qca,ddr-wb-channel-cells"
42354d7675SEmmanuel Vadot  - reg
43354d7675SEmmanuel Vadot
44354d7675SEmmanuel VadotadditionalProperties: false
45354d7675SEmmanuel Vadot
46354d7675SEmmanuel Vadotexamples:
47354d7675SEmmanuel Vadot  - |
48354d7675SEmmanuel Vadot    ddr_ctrl: memory-controller@18000000 {
49354d7675SEmmanuel Vadot        compatible = "qca,ar9132-ddr-controller",
50354d7675SEmmanuel Vadot                     "qca,ar7240-ddr-controller";
51354d7675SEmmanuel Vadot        reg = <0x18000000 0x100>;
52354d7675SEmmanuel Vadot
53354d7675SEmmanuel Vadot        #qca,ddr-wb-channel-cells = <1>;
54354d7675SEmmanuel Vadot    };
55354d7675SEmmanuel Vadot
56354d7675SEmmanuel Vadot    interrupt-controller {
57354d7675SEmmanuel Vadot        // ...
58354d7675SEmmanuel Vadot        qca,ddr-wb-channel-interrupts = <2>, <3>, <4>, <5>;
59354d7675SEmmanuel Vadot        qca,ddr-wb-channels = <&ddr_ctrl 3>, <&ddr_ctrl 2>,
60354d7675SEmmanuel Vadot                              <&ddr_ctrl 0>, <&ddr_ctrl 1>;
61354d7675SEmmanuel Vadot    };
62