Disable "maybe-uninitialized" warning globally
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / arm / altera / socfpga-eccmgr.txt
1 Altera SoCFPGA ECC Manager
2 This driver uses the EDAC framework to implement the SOCFPGA ECC Manager.
3 The ECC Manager counts and corrects single bit errors and counts/handles
4 double bit errors which are uncorrectable.
5
6 Cyclone5 and Arria5 ECC Manager
7 Required Properties:
8 - compatible : Should be "altr,socfpga-ecc-manager"
9 - #address-cells: must be 1
10 - #size-cells: must be 1
11 - ranges : standard definition, should translate from local addresses
12
13 Subcomponents:
14
15 L2 Cache ECC
16 Required Properties:
17 - compatible : Should be "altr,socfpga-l2-ecc"
18 - reg : Address and size for ECC error interrupt clear registers.
19 - interrupts : Should be single bit error interrupt, then double bit error
20         interrupt. Note the rising edge type.
21
22 On Chip RAM ECC
23 Required Properties:
24 - compatible : Should be "altr,socfpga-ocram-ecc"
25 - reg : Address and size for ECC error interrupt clear registers.
26 - iram : phandle to On-Chip RAM definition.
27 - interrupts : Should be single bit error interrupt, then double bit error
28         interrupt. Note the rising edge type.
29
30 Example:
31
32         eccmgr: eccmgr@ffd08140 {
33                 compatible = "altr,socfpga-ecc-manager";
34                 #address-cells = <1>;
35                 #size-cells = <1>;
36                 ranges;
37
38                 l2-ecc@ffd08140 {
39                         compatible = "altr,socfpga-l2-ecc";
40                         reg = <0xffd08140 0x4>;
41                         interrupts = <0 36 1>, <0 37 1>;
42                 };
43
44                 ocram-ecc@ffd08144 {
45                         compatible = "altr,socfpga-ocram-ecc";
46                         reg = <0xffd08144 0x4>;
47                         iram = <&ocram>;
48                         interrupts = <0 178 1>, <0 179 1>;
49                 };
50         };
51
52 Arria10 SoCFPGA ECC Manager
53 The Arria10 SoC ECC Manager handles the IRQs for each peripheral
54 in a shared register instead of individual IRQs like the Cyclone5
55 and Arria5. Therefore the device tree is different as well.
56
57 Required Properties:
58 - compatible : Should be "altr,socfpga-a10-ecc-manager"
59 - altr,sysgr-syscon : phandle to Arria10 System Manager Block
60         containing the ECC manager registers.
61 - #address-cells: must be 1
62 - #size-cells: must be 1
63 - interrupts : Should be single bit error interrupt, then double bit error
64         interrupt. Note the rising edge type.
65 - ranges : standard definition, should translate from local addresses
66
67 Subcomponents:
68
69 L2 Cache ECC
70 Required Properties:
71 - compatible : Should be "altr,socfpga-a10-l2-ecc"
72 - reg : Address and size for ECC error interrupt clear registers.
73
74 On-Chip RAM ECC
75 Required Properties:
76 - compatible : Should be "altr,socfpga-a10-ocram-ecc"
77 - reg        : Address and size for ECC block registers.
78
79 Example:
80
81         eccmgr: eccmgr@ffd06000 {
82                 compatible = "altr,socfpga-a10-ecc-manager";
83                 altr,sysmgr-syscon = <&sysmgr>;
84                 #address-cells = <1>;
85                 #size-cells = <1>;
86                 interrupts = <0 2 IRQ_TYPE_LEVEL_HIGH>,
87                              <0 0 IRQ_TYPE_LEVEL_HIGH>;
88                 ranges;
89
90                 l2-ecc@ffd06010 {
91                         compatible = "altr,socfpga-a10-l2-ecc";
92                         reg = <0xffd06010 0x4>;
93                 };
94
95                 ocram-ecc@ff8c3000 {
96                         compatible = "altr,socfpga-a10-ocram-ecc";
97                         reg = <0xff8c3000 0x90>;
98                 };
99         };