amd64_edac: add module registration routines
[linux-2.6] / drivers / edac / Kconfig
1 #
2 #       EDAC Kconfig
3 #       Copyright (c) 2008 Doug Thompson www.softwarebitmaker.com
4 #       Licensed and distributed under the GPL
5 #
6
7 menuconfig EDAC
8         bool "EDAC - error detection and reporting"
9         depends on HAS_IOMEM
10         depends on X86 || PPC
11         help
12           EDAC is designed to report errors in the core system.
13           These are low-level errors that are reported in the CPU or
14           supporting chipset or other subsystems:
15           memory errors, cache errors, PCI errors, thermal throttling, etc..
16           If unsure, select 'Y'.
17
18           If this code is reporting problems on your system, please
19           see the EDAC project web pages for more information at:
20
21           <http://bluesmoke.sourceforge.net/>
22
23           and:
24
25           <http://buttersideup.com/edacwiki>
26
27           There is also a mailing list for the EDAC project, which can
28           be found via the sourceforge page.
29
30 if EDAC
31
32 comment "Reporting subsystems"
33
34 config EDAC_DEBUG
35         bool "Debugging"
36         help
37           This turns on debugging information for the entire EDAC
38           sub-system. You can insert module with "debug_level=x", current
39           there're four debug levels (x=0,1,2,3 from low to high).
40           Usually you should select 'N'.
41
42 config EDAC_DEBUG_VERBOSE
43         bool "More verbose debugging"
44         depends on EDAC_DEBUG
45         help
46           This option makes debugging information more verbose.
47           Source file name and line number where debugging message
48           printed will be added to debugging message.
49
50 config EDAC_MM_EDAC
51         tristate "Main Memory EDAC (Error Detection And Correction) reporting"
52         default y
53         help
54           Some systems are able to detect and correct errors in main
55           memory.  EDAC can report statistics on memory error
56           detection and correction (EDAC - or commonly referred to ECC
57           errors).  EDAC will also try to decode where these errors
58           occurred so that a particular failing memory module can be
59           replaced.  If unsure, select 'Y'.
60
61 config EDAC_AMD64
62         tristate "AMD64 (Opteron, Athlon64) K8, F10h, F11h"
63         depends on EDAC_MM_EDAC && X86 && PCI
64         default m
65         help
66         Support for error detection and correction on the AMD 64
67         Families of Memory Controllers (K8, F10h and F11h)
68
69 config EDAC_AMD64_ERROR_INJECTION
70         bool "Sysfs Error Injection facilities"
71         depends on EDAC_AMD64
72         help
73           Recent Opterons (Family 10h and later) provide for Memory Error
74           Injection into the ECC detection circuits. The amd64_edac module
75           allows the operator/user to inject Uncorrectable and Correctable
76           errors into DRAM.
77
78           When enabled, in each of the respective memory controller directories
79           (/sys/devices/system/edac/mc/mcX), there are 3 input files:
80
81           - inject_section (0..3, 16-byte section of 64-byte cacheline),
82           - inject_word (0..8, 16-bit word of 16-byte section),
83           - inject_ecc_vector (hex ecc vector: select bits of inject word)
84
85           In addition, there are two control files, inject_read and inject_write,
86           which trigger the DRAM ECC Read and Write respectively.
87
88 config EDAC_AMD76X
89         tristate "AMD 76x (760, 762, 768)"
90         depends on EDAC_MM_EDAC && PCI && X86_32
91         help
92           Support for error detection and correction on the AMD 76x
93           series of chipsets used with the Athlon processor.
94
95 config EDAC_E7XXX
96         tristate "Intel e7xxx (e7205, e7500, e7501, e7505)"
97         depends on EDAC_MM_EDAC && PCI && X86_32
98         help
99           Support for error detection and correction on the Intel
100           E7205, E7500, E7501 and E7505 server chipsets.
101
102 config EDAC_E752X
103         tristate "Intel e752x (e7520, e7525, e7320) and 3100"
104         depends on EDAC_MM_EDAC && PCI && X86 && HOTPLUG
105         help
106           Support for error detection and correction on the Intel
107           E7520, E7525, E7320 server chipsets.
108
109 config EDAC_I82443BXGX
110         tristate "Intel 82443BX/GX (440BX/GX)"
111         depends on EDAC_MM_EDAC && PCI && X86_32
112         depends on BROKEN
113         help
114           Support for error detection and correction on the Intel
115           82443BX/GX memory controllers (440BX/GX chipsets).
116
117 config EDAC_I82875P
118         tristate "Intel 82875p (D82875P, E7210)"
119         depends on EDAC_MM_EDAC && PCI && X86_32
120         help
121           Support for error detection and correction on the Intel
122           DP82785P and E7210 server chipsets.
123
124 config EDAC_I82975X
125         tristate "Intel 82975x (D82975x)"
126         depends on EDAC_MM_EDAC && PCI && X86
127         help
128           Support for error detection and correction on the Intel
129           DP82975x server chipsets.
130
131 config EDAC_I3000
132         tristate "Intel 3000/3010"
133         depends on EDAC_MM_EDAC && PCI && X86
134         help
135           Support for error detection and correction on the Intel
136           3000 and 3010 server chipsets.
137
138 config EDAC_X38
139         tristate "Intel X38"
140         depends on EDAC_MM_EDAC && PCI && X86
141         help
142           Support for error detection and correction on the Intel
143           X38 server chipsets.
144
145 config EDAC_I5400
146         tristate "Intel 5400 (Seaburg) chipsets"
147         depends on EDAC_MM_EDAC && PCI && X86
148         help
149           Support for error detection and correction the Intel
150           i5400 MCH chipset (Seaburg).
151
152 config EDAC_I82860
153         tristate "Intel 82860"
154         depends on EDAC_MM_EDAC && PCI && X86_32
155         help
156           Support for error detection and correction on the Intel
157           82860 chipset.
158
159 config EDAC_R82600
160         tristate "Radisys 82600 embedded chipset"
161         depends on EDAC_MM_EDAC && PCI && X86_32
162         help
163           Support for error detection and correction on the Radisys
164           82600 embedded chipset.
165
166 config EDAC_I5000
167         tristate "Intel Greencreek/Blackford chipset"
168         depends on EDAC_MM_EDAC && X86 && PCI
169         help
170           Support for error detection and correction the Intel
171           Greekcreek/Blackford chipsets.
172
173 config EDAC_I5100
174         tristate "Intel San Clemente MCH"
175         depends on EDAC_MM_EDAC && X86 && PCI
176         help
177           Support for error detection and correction the Intel
178           San Clemente MCH.
179
180 config EDAC_MPC85XX
181         tristate "Freescale MPC85xx"
182         depends on EDAC_MM_EDAC && FSL_SOC && MPC85xx
183         help
184           Support for error detection and correction on the Freescale
185           MPC8560, MPC8540, MPC8548
186
187 config EDAC_MV64X60
188         tristate "Marvell MV64x60"
189         depends on EDAC_MM_EDAC && MV64X60
190         help
191           Support for error detection and correction on the Marvell
192           MV64360 and MV64460 chipsets.
193
194 config EDAC_PASEMI
195         tristate "PA Semi PWRficient"
196         depends on EDAC_MM_EDAC && PCI
197         depends on PPC_PASEMI
198         help
199           Support for error detection and correction on PA Semi
200           PWRficient.
201
202 config EDAC_CELL
203         tristate "Cell Broadband Engine memory controller"
204         depends on EDAC_MM_EDAC && PPC_CELL_COMMON
205         help
206           Support for error detection and correction on the
207           Cell Broadband Engine internal memory controller
208           on platform without a hypervisor
209
210 config EDAC_PPC4XX
211         tristate "PPC4xx IBM DDR2 Memory Controller"
212         depends on EDAC_MM_EDAC && 4xx
213         help
214           This enables support for EDAC on the ECC memory used
215           with the IBM DDR2 memory controller found in various
216           PowerPC 4xx embedded processors such as the 405EX[r],
217           440SP, 440SPe, 460EX, 460GT and 460SX.
218
219 config EDAC_AMD8131
220         tristate "AMD8131 HyperTransport PCI-X Tunnel"
221         depends on EDAC_MM_EDAC && PCI && PPC_MAPLE
222         help
223           Support for error detection and correction on the
224           AMD8131 HyperTransport PCI-X Tunnel chip.
225           Note, add more Kconfig dependency if it's adopted
226           on some machine other than Maple.
227
228 config EDAC_AMD8111
229         tristate "AMD8111 HyperTransport I/O Hub"
230         depends on EDAC_MM_EDAC && PCI && PPC_MAPLE
231         help
232           Support for error detection and correction on the
233           AMD8111 HyperTransport I/O Hub chip.
234           Note, add more Kconfig dependency if it's adopted
235           on some machine other than Maple.
236
237 endif # EDAC