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