xref: /linux/drivers/edac/Kconfig (revision 0d18b2e34bd1ad8f5bd3f3a17b5e7df132e511a9)
1da9bb1d2SAlan Cox#
2da9bb1d2SAlan Cox#	EDAC Kconfig
34577ca55SDoug Thompson#	Copyright (c) 2008 Doug Thompson www.softwarebitmaker.com
4da9bb1d2SAlan Cox#	Licensed and distributed under the GPL
5da9bb1d2SAlan Cox#
6da9bb1d2SAlan Cox
7751cb5e5SJan Engelhardtmenuconfig EDAC
8e24aca67SGeunSik Lim	bool "EDAC (Error Detection And Correction) reporting"
9e25df120SMartin Schwidefsky	depends on HAS_IOMEM
104c6a1c13SAndrew Morton	depends on X86 || PPC
11da9bb1d2SAlan Cox	help
12da9bb1d2SAlan Cox	  EDAC is designed to report errors in the core system.
13da9bb1d2SAlan Cox	  These are low-level errors that are reported in the CPU or
148cb2a398SDouglas Thompson	  supporting chipset or other subsystems:
158cb2a398SDouglas Thompson	  memory errors, cache errors, PCI errors, thermal throttling, etc..
168cb2a398SDouglas Thompson	  If unsure, select 'Y'.
17da9bb1d2SAlan Cox
1857c432b5STim Small	  If this code is reporting problems on your system, please
1957c432b5STim Small	  see the EDAC project web pages for more information at:
2057c432b5STim Small
2157c432b5STim Small	  <http://bluesmoke.sourceforge.net/>
2257c432b5STim Small
2357c432b5STim Small	  and:
2457c432b5STim Small
2557c432b5STim Small	  <http://buttersideup.com/edacwiki>
2657c432b5STim Small
2757c432b5STim Small	  There is also a mailing list for the EDAC project, which can
2857c432b5STim Small	  be found via the sourceforge page.
2957c432b5STim Small
30751cb5e5SJan Engelhardtif EDAC
31da9bb1d2SAlan Cox
32da9bb1d2SAlan Coxcomment "Reporting subsystems"
33da9bb1d2SAlan Cox
34da9bb1d2SAlan Coxconfig EDAC_DEBUG
35da9bb1d2SAlan Cox	bool "Debugging"
36da9bb1d2SAlan Cox	help
37da9bb1d2SAlan Cox	  This turns on debugging information for the entire EDAC
38da9bb1d2SAlan Cox	  sub-system. You can insert module with "debug_level=x", current
39da9bb1d2SAlan Cox	  there're four debug levels (x=0,1,2,3 from low to high).
40da9bb1d2SAlan Cox	  Usually you should select 'N'.
41da9bb1d2SAlan Cox
42cc18e3cdSHitoshi Mitakeconfig EDAC_DEBUG_VERBOSE
43cc18e3cdSHitoshi Mitake	bool "More verbose debugging"
44cc18e3cdSHitoshi Mitake	depends on EDAC_DEBUG
45cc18e3cdSHitoshi Mitake	help
46cc18e3cdSHitoshi Mitake	  This option makes debugging information more verbose.
47cc18e3cdSHitoshi Mitake	  Source file name and line number where debugging message
48cc18e3cdSHitoshi Mitake	  printed will be added to debugging message.
49cc18e3cdSHitoshi Mitake
50*0d18b2e3SBorislav Petkov config EDAC_DECODE_MCE
51*0d18b2e3SBorislav Petkov	tristate "Decode MCEs in human-readable form (only on AMD for now)"
52*0d18b2e3SBorislav Petkov	depends on CPU_SUP_AMD && X86_MCE
53*0d18b2e3SBorislav Petkov	default y
54*0d18b2e3SBorislav Petkov	---help---
55*0d18b2e3SBorislav Petkov	  Enable this option if you want to decode Machine Check Exceptions
56*0d18b2e3SBorislav Petkov	  occuring on your machine in human-readable form.
57*0d18b2e3SBorislav Petkov
58*0d18b2e3SBorislav Petkov	  You should definitely say Y here in case you want to decode MCEs
59*0d18b2e3SBorislav Petkov	  which occur really early upon boot, before the module infrastructure
60*0d18b2e3SBorislav Petkov	  has been initialized.
61*0d18b2e3SBorislav Petkov
62da9bb1d2SAlan Coxconfig EDAC_MM_EDAC
63da9bb1d2SAlan Cox	tristate "Main Memory EDAC (Error Detection And Correction) reporting"
64da9bb1d2SAlan Cox	help
65da9bb1d2SAlan Cox	  Some systems are able to detect and correct errors in main
66da9bb1d2SAlan Cox	  memory.  EDAC can report statistics on memory error
67da9bb1d2SAlan Cox	  detection and correction (EDAC - or commonly referred to ECC
68da9bb1d2SAlan Cox	  errors).  EDAC will also try to decode where these errors
69da9bb1d2SAlan Cox	  occurred so that a particular failing memory module can be
70da9bb1d2SAlan Cox	  replaced.  If unsure, select 'Y'.
71da9bb1d2SAlan Cox
727d6034d3SDoug Thompsonconfig EDAC_AMD64
737d6034d3SDoug Thompson	tristate "AMD64 (Opteron, Athlon64) K8, F10h, F11h"
74*0d18b2e3SBorislav Petkov	depends on EDAC_MM_EDAC && K8_NB && X86_64 && PCI && EDAC_DECODE_MCE
757d6034d3SDoug Thompson	help
767d6034d3SDoug Thompson	  Support for error detection and correction on the AMD 64
777d6034d3SDoug Thompson	  Families of Memory Controllers (K8, F10h and F11h)
787d6034d3SDoug Thompson
797d6034d3SDoug Thompsonconfig EDAC_AMD64_ERROR_INJECTION
807d6034d3SDoug Thompson	bool "Sysfs Error Injection facilities"
817d6034d3SDoug Thompson	depends on EDAC_AMD64
827d6034d3SDoug Thompson	help
837d6034d3SDoug Thompson	  Recent Opterons (Family 10h and later) provide for Memory Error
847d6034d3SDoug Thompson	  Injection into the ECC detection circuits. The amd64_edac module
857d6034d3SDoug Thompson	  allows the operator/user to inject Uncorrectable and Correctable
867d6034d3SDoug Thompson	  errors into DRAM.
877d6034d3SDoug Thompson
887d6034d3SDoug Thompson	  When enabled, in each of the respective memory controller directories
897d6034d3SDoug Thompson	  (/sys/devices/system/edac/mc/mcX), there are 3 input files:
907d6034d3SDoug Thompson
917d6034d3SDoug Thompson	  - inject_section (0..3, 16-byte section of 64-byte cacheline),
927d6034d3SDoug Thompson	  - inject_word (0..8, 16-bit word of 16-byte section),
937d6034d3SDoug Thompson	  - inject_ecc_vector (hex ecc vector: select bits of inject word)
947d6034d3SDoug Thompson
957d6034d3SDoug Thompson	  In addition, there are two control files, inject_read and inject_write,
967d6034d3SDoug Thompson	  which trigger the DRAM ECC Read and Write respectively.
97da9bb1d2SAlan Cox
98da9bb1d2SAlan Coxconfig EDAC_AMD76X
99da9bb1d2SAlan Cox	tristate "AMD 76x (760, 762, 768)"
10090cbc45bSDave Jones	depends on EDAC_MM_EDAC && PCI && X86_32
101da9bb1d2SAlan Cox	help
102da9bb1d2SAlan Cox	  Support for error detection and correction on the AMD 76x
103da9bb1d2SAlan Cox	  series of chipsets used with the Athlon processor.
104da9bb1d2SAlan Cox
105da9bb1d2SAlan Coxconfig EDAC_E7XXX
106da9bb1d2SAlan Cox	tristate "Intel e7xxx (e7205, e7500, e7501, e7505)"
10739f1d8d3SDave Peterson	depends on EDAC_MM_EDAC && PCI && X86_32
108da9bb1d2SAlan Cox	help
109da9bb1d2SAlan Cox	  Support for error detection and correction on the Intel
110da9bb1d2SAlan Cox	  E7205, E7500, E7501 and E7505 server chipsets.
111da9bb1d2SAlan Cox
112da9bb1d2SAlan Coxconfig EDAC_E752X
1135135b797SAndrei Konovalov	tristate "Intel e752x (e7520, e7525, e7320) and 3100"
114da960a6aSRandy Dunlap	depends on EDAC_MM_EDAC && PCI && X86 && HOTPLUG
115da9bb1d2SAlan Cox	help
116da9bb1d2SAlan Cox	  Support for error detection and correction on the Intel
117da9bb1d2SAlan Cox	  E7520, E7525, E7320 server chipsets.
118da9bb1d2SAlan Cox
1195a2c675cSTim Smallconfig EDAC_I82443BXGX
1205a2c675cSTim Small	tristate "Intel 82443BX/GX (440BX/GX)"
1215a2c675cSTim Small	depends on EDAC_MM_EDAC && PCI && X86_32
12228f96eeaSAndrew Morton	depends on BROKEN
1235a2c675cSTim Small	help
1245a2c675cSTim Small	  Support for error detection and correction on the Intel
1255a2c675cSTim Small	  82443BX/GX memory controllers (440BX/GX chipsets).
1265a2c675cSTim Small
127da9bb1d2SAlan Coxconfig EDAC_I82875P
128da9bb1d2SAlan Cox	tristate "Intel 82875p (D82875P, E7210)"
12939f1d8d3SDave Peterson	depends on EDAC_MM_EDAC && PCI && X86_32
130da9bb1d2SAlan Cox	help
131da9bb1d2SAlan Cox	  Support for error detection and correction on the Intel
132da9bb1d2SAlan Cox	  DP82785P and E7210 server chipsets.
133da9bb1d2SAlan Cox
134420390f0SRanganathan Desikanconfig EDAC_I82975X
135420390f0SRanganathan Desikan	tristate "Intel 82975x (D82975x)"
136420390f0SRanganathan Desikan	depends on EDAC_MM_EDAC && PCI && X86
137420390f0SRanganathan Desikan	help
138420390f0SRanganathan Desikan	  Support for error detection and correction on the Intel
139420390f0SRanganathan Desikan	  DP82975x server chipsets.
140420390f0SRanganathan Desikan
141535c6a53SJason Uhlenkottconfig EDAC_I3000
142535c6a53SJason Uhlenkott	tristate "Intel 3000/3010"
143f5c0454cSJason Uhlenkott	depends on EDAC_MM_EDAC && PCI && X86
144535c6a53SJason Uhlenkott	help
145535c6a53SJason Uhlenkott	  Support for error detection and correction on the Intel
146535c6a53SJason Uhlenkott	  3000 and 3010 server chipsets.
147535c6a53SJason Uhlenkott
148dd8ef1dbSJason Uhlenkottconfig EDAC_I3200
149dd8ef1dbSJason Uhlenkott	tristate "Intel 3200"
150dd8ef1dbSJason Uhlenkott	depends on EDAC_MM_EDAC && PCI && X86 && EXPERIMENTAL
151dd8ef1dbSJason Uhlenkott	help
152dd8ef1dbSJason Uhlenkott	  Support for error detection and correction on the Intel
153dd8ef1dbSJason Uhlenkott	  3200 and 3210 server chipsets.
154dd8ef1dbSJason Uhlenkott
155df8bc08cSHitoshi Mitakeconfig EDAC_X38
156df8bc08cSHitoshi Mitake	tristate "Intel X38"
157df8bc08cSHitoshi Mitake	depends on EDAC_MM_EDAC && PCI && X86
158df8bc08cSHitoshi Mitake	help
159df8bc08cSHitoshi Mitake	  Support for error detection and correction on the Intel
160df8bc08cSHitoshi Mitake	  X38 server chipsets.
161df8bc08cSHitoshi Mitake
162920c8df6SMauro Carvalho Chehabconfig EDAC_I5400
163920c8df6SMauro Carvalho Chehab	tristate "Intel 5400 (Seaburg) chipsets"
164920c8df6SMauro Carvalho Chehab	depends on EDAC_MM_EDAC && PCI && X86
165920c8df6SMauro Carvalho Chehab	help
166920c8df6SMauro Carvalho Chehab	  Support for error detection and correction the Intel
167920c8df6SMauro Carvalho Chehab	  i5400 MCH chipset (Seaburg).
168920c8df6SMauro Carvalho Chehab
169da9bb1d2SAlan Coxconfig EDAC_I82860
170da9bb1d2SAlan Cox	tristate "Intel 82860"
17139f1d8d3SDave Peterson	depends on EDAC_MM_EDAC && PCI && X86_32
172da9bb1d2SAlan Cox	help
173da9bb1d2SAlan Cox	  Support for error detection and correction on the Intel
174da9bb1d2SAlan Cox	  82860 chipset.
175da9bb1d2SAlan Cox
176da9bb1d2SAlan Coxconfig EDAC_R82600
177da9bb1d2SAlan Cox	tristate "Radisys 82600 embedded chipset"
17839f1d8d3SDave Peterson	depends on EDAC_MM_EDAC && PCI && X86_32
179da9bb1d2SAlan Cox	help
180da9bb1d2SAlan Cox	  Support for error detection and correction on the Radisys
181da9bb1d2SAlan Cox	  82600 embedded chipset.
182da9bb1d2SAlan Cox
183eb60705aSEric Wollesenconfig EDAC_I5000
184eb60705aSEric Wollesen	tristate "Intel Greencreek/Blackford chipset"
185eb60705aSEric Wollesen	depends on EDAC_MM_EDAC && X86 && PCI
186eb60705aSEric Wollesen	help
187eb60705aSEric Wollesen	  Support for error detection and correction the Intel
188eb60705aSEric Wollesen	  Greekcreek/Blackford chipsets.
189eb60705aSEric Wollesen
1908f421c59SArthur Jonesconfig EDAC_I5100
1918f421c59SArthur Jones	tristate "Intel San Clemente MCH"
1928f421c59SArthur Jones	depends on EDAC_MM_EDAC && X86 && PCI
1938f421c59SArthur Jones	help
1948f421c59SArthur Jones	  Support for error detection and correction the Intel
1958f421c59SArthur Jones	  San Clemente MCH.
1968f421c59SArthur Jones
197a9a753d5SDave Jiangconfig EDAC_MPC85XX
198b4846251SIra W. Snyder	tristate "Freescale MPC83xx / MPC85xx"
199b4846251SIra W. Snyder	depends on EDAC_MM_EDAC && FSL_SOC && (PPC_83xx || MPC85xx)
200a9a753d5SDave Jiang	help
201a9a753d5SDave Jiang	  Support for error detection and correction on the Freescale
202b4846251SIra W. Snyder	  MPC8349, MPC8560, MPC8540, MPC8548
203a9a753d5SDave Jiang
2044f4aeeabSDave Jiangconfig EDAC_MV64X60
2054f4aeeabSDave Jiang	tristate "Marvell MV64x60"
2064f4aeeabSDave Jiang	depends on EDAC_MM_EDAC && MV64X60
2074f4aeeabSDave Jiang	help
2084f4aeeabSDave Jiang	  Support for error detection and correction on the Marvell
2094f4aeeabSDave Jiang	  MV64360 and MV64460 chipsets.
2104f4aeeabSDave Jiang
2117d8536fbSEgor Martovetskyconfig EDAC_PASEMI
2127d8536fbSEgor Martovetsky	tristate "PA Semi PWRficient"
2137d8536fbSEgor Martovetsky	depends on EDAC_MM_EDAC && PCI
214ddcc3050SDoug Thompson	depends on PPC_PASEMI
2157d8536fbSEgor Martovetsky	help
2167d8536fbSEgor Martovetsky	  Support for error detection and correction on PA Semi
2177d8536fbSEgor Martovetsky	  PWRficient.
2187d8536fbSEgor Martovetsky
21948764e41SBenjamin Herrenschmidtconfig EDAC_CELL
22048764e41SBenjamin Herrenschmidt	tristate "Cell Broadband Engine memory controller"
221def434c2SBenjamin Krill	depends on EDAC_MM_EDAC && PPC_CELL_COMMON
22248764e41SBenjamin Herrenschmidt	help
22348764e41SBenjamin Herrenschmidt	  Support for error detection and correction on the
22448764e41SBenjamin Herrenschmidt	  Cell Broadband Engine internal memory controller
22548764e41SBenjamin Herrenschmidt	  on platform without a hypervisor
2267d8536fbSEgor Martovetsky
227dba7a77cSGrant Ericksonconfig EDAC_PPC4XX
228dba7a77cSGrant Erickson	tristate "PPC4xx IBM DDR2 Memory Controller"
229dba7a77cSGrant Erickson	depends on EDAC_MM_EDAC && 4xx
230dba7a77cSGrant Erickson	help
231dba7a77cSGrant Erickson	  This enables support for EDAC on the ECC memory used
232dba7a77cSGrant Erickson	  with the IBM DDR2 memory controller found in various
233dba7a77cSGrant Erickson	  PowerPC 4xx embedded processors such as the 405EX[r],
234dba7a77cSGrant Erickson	  440SP, 440SPe, 460EX, 460GT and 460SX.
235dba7a77cSGrant Erickson
236e8765584SHarry Ciaoconfig EDAC_AMD8131
237e8765584SHarry Ciao	tristate "AMD8131 HyperTransport PCI-X Tunnel"
238715fe7afSHarry Ciao	depends on EDAC_MM_EDAC && PCI && PPC_MAPLE
239e8765584SHarry Ciao	help
240e8765584SHarry Ciao	  Support for error detection and correction on the
241e8765584SHarry Ciao	  AMD8131 HyperTransport PCI-X Tunnel chip.
242715fe7afSHarry Ciao	  Note, add more Kconfig dependency if it's adopted
243715fe7afSHarry Ciao	  on some machine other than Maple.
244e8765584SHarry Ciao
24558b4ce6fSHarry Ciaoconfig EDAC_AMD8111
24658b4ce6fSHarry Ciao	tristate "AMD8111 HyperTransport I/O Hub"
247715fe7afSHarry Ciao	depends on EDAC_MM_EDAC && PCI && PPC_MAPLE
24858b4ce6fSHarry Ciao	help
24958b4ce6fSHarry Ciao	  Support for error detection and correction on the
25058b4ce6fSHarry Ciao	  AMD8111 HyperTransport I/O Hub chip.
251715fe7afSHarry Ciao	  Note, add more Kconfig dependency if it's adopted
252715fe7afSHarry Ciao	  on some machine other than Maple.
25358b4ce6fSHarry Ciao
2542a9036afSHarry Ciaoconfig EDAC_CPC925
2552a9036afSHarry Ciao	tristate "IBM CPC925 Memory Controller (PPC970FX)"
2562a9036afSHarry Ciao	depends on EDAC_MM_EDAC && PPC64
2572a9036afSHarry Ciao	help
2582a9036afSHarry Ciao	  Support for error detection and correction on the
2592a9036afSHarry Ciao	  IBM CPC925 Bridge and Memory Controller, which is
2602a9036afSHarry Ciao	  a companion chip to the PowerPC 970 family of
2612a9036afSHarry Ciao	  processors.
2622a9036afSHarry Ciao
263751cb5e5SJan Engelhardtendif # EDAC
264