xref: /freebsd-src/sys/contrib/device-tree/Bindings/pci/rcar-pci-ep.yaml (revision 8cc087a1eee9ec1ca9f7ac1e63ad51bdb5a682eb)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c66ec88fSEmmanuel Vadot# Copyright (C) 2020 Renesas Electronics Europe GmbH - https://www.renesas.com/eu/en/
3c66ec88fSEmmanuel Vadot%YAML 1.2
4c66ec88fSEmmanuel Vadot---
5c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/pci/rcar-pci-ep.yaml#
6c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7c66ec88fSEmmanuel Vadot
8c66ec88fSEmmanuel Vadottitle: Renesas R-Car PCIe Endpoint
9c66ec88fSEmmanuel Vadot
10c66ec88fSEmmanuel Vadotmaintainers:
11c66ec88fSEmmanuel Vadot  - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
12c66ec88fSEmmanuel Vadot  - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
13c66ec88fSEmmanuel Vadot
14c66ec88fSEmmanuel Vadotproperties:
15c66ec88fSEmmanuel Vadot  compatible:
16c66ec88fSEmmanuel Vadot    items:
176be33864SEmmanuel Vadot      - enum:
186be33864SEmmanuel Vadot          - renesas,r8a774a1-pcie-ep     # RZ/G2M
196be33864SEmmanuel Vadot          - renesas,r8a774b1-pcie-ep     # RZ/G2N
206be33864SEmmanuel Vadot          - renesas,r8a774c0-pcie-ep     # RZ/G2E
216be33864SEmmanuel Vadot          - renesas,r8a774e1-pcie-ep     # RZ/G2H
22*8cc087a1SEmmanuel Vadot          - renesas,r8a7795-pcie-ep      # R-Car H3
236be33864SEmmanuel Vadot      - const: renesas,rcar-gen3-pcie-ep # R-Car Gen3 and RZ/G2
24c66ec88fSEmmanuel Vadot
25c66ec88fSEmmanuel Vadot  reg:
26c66ec88fSEmmanuel Vadot    maxItems: 5
27c66ec88fSEmmanuel Vadot
28c66ec88fSEmmanuel Vadot  reg-names:
29c66ec88fSEmmanuel Vadot    items:
30c66ec88fSEmmanuel Vadot      - const: apb-base
31c66ec88fSEmmanuel Vadot      - const: memory0
32c66ec88fSEmmanuel Vadot      - const: memory1
33c66ec88fSEmmanuel Vadot      - const: memory2
34c66ec88fSEmmanuel Vadot      - const: memory3
35c66ec88fSEmmanuel Vadot
365def4c47SEmmanuel Vadot  interrupts:
375def4c47SEmmanuel Vadot    minItems: 3
385def4c47SEmmanuel Vadot    maxItems: 3
395def4c47SEmmanuel Vadot
40c66ec88fSEmmanuel Vadot  power-domains:
41c66ec88fSEmmanuel Vadot    maxItems: 1
42c66ec88fSEmmanuel Vadot
43c66ec88fSEmmanuel Vadot  resets:
44c66ec88fSEmmanuel Vadot    maxItems: 1
45c66ec88fSEmmanuel Vadot
46c66ec88fSEmmanuel Vadot  clocks:
47c66ec88fSEmmanuel Vadot    maxItems: 1
48c66ec88fSEmmanuel Vadot
49c66ec88fSEmmanuel Vadot  clock-names:
50c66ec88fSEmmanuel Vadot    items:
51c66ec88fSEmmanuel Vadot      - const: pcie
52c66ec88fSEmmanuel Vadot
53c66ec88fSEmmanuel Vadot  max-functions:
54c66ec88fSEmmanuel Vadot    minimum: 1
55c66ec88fSEmmanuel Vadot    maximum: 1
56c66ec88fSEmmanuel Vadot
57c66ec88fSEmmanuel Vadotrequired:
58c66ec88fSEmmanuel Vadot  - compatible
59c66ec88fSEmmanuel Vadot  - reg
60c66ec88fSEmmanuel Vadot  - reg-names
615def4c47SEmmanuel Vadot  - interrupts
62c66ec88fSEmmanuel Vadot  - resets
63c66ec88fSEmmanuel Vadot  - power-domains
64c66ec88fSEmmanuel Vadot  - clocks
65c66ec88fSEmmanuel Vadot  - clock-names
66c66ec88fSEmmanuel Vadot  - max-functions
67c66ec88fSEmmanuel Vadot
686be33864SEmmanuel VadotadditionalProperties: false
696be33864SEmmanuel Vadot
70c66ec88fSEmmanuel Vadotexamples:
71c66ec88fSEmmanuel Vadot  - |
72c66ec88fSEmmanuel Vadot    #include <dt-bindings/clock/r8a774c0-cpg-mssr.h>
735def4c47SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
74c66ec88fSEmmanuel Vadot    #include <dt-bindings/power/r8a774c0-sysc.h>
75c66ec88fSEmmanuel Vadot
76c66ec88fSEmmanuel Vadot     pcie0_ep: pcie-ep@fe000000 {
77c66ec88fSEmmanuel Vadot            compatible = "renesas,r8a774c0-pcie-ep",
78c66ec88fSEmmanuel Vadot                         "renesas,rcar-gen3-pcie-ep";
79c66ec88fSEmmanuel Vadot            reg = <0xfe000000 0x80000>,
80c66ec88fSEmmanuel Vadot                  <0xfe100000 0x100000>,
81c66ec88fSEmmanuel Vadot                  <0xfe200000 0x200000>,
82c66ec88fSEmmanuel Vadot                  <0x30000000 0x8000000>,
83c66ec88fSEmmanuel Vadot                  <0x38000000 0x8000000>;
84c66ec88fSEmmanuel Vadot            reg-names = "apb-base", "memory0", "memory1", "memory2", "memory3";
855def4c47SEmmanuel Vadot            interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
865def4c47SEmmanuel Vadot                         <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
875def4c47SEmmanuel Vadot                         <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
88c66ec88fSEmmanuel Vadot            resets = <&cpg 319>;
89c66ec88fSEmmanuel Vadot            power-domains = <&sysc R8A774C0_PD_ALWAYS_ON>;
90c66ec88fSEmmanuel Vadot            clocks = <&cpg CPG_MOD 319>;
91c66ec88fSEmmanuel Vadot            clock-names = "pcie";
92c66ec88fSEmmanuel Vadot            max-functions = /bits/ 8 <1>;
93c66ec88fSEmmanuel Vadot    };
94