| /linux/Documentation/ABI/testing/ |
| H A D | sysfs-devices-edac | 1 What: /sys/devices/system/edac/mc/mc*/reset_counters 3 Contact: linux-edac@vger.kernel.org 12 What: /sys/devices/system/edac/mc/mc*/seconds_since_reset 14 Contact: linux-edac@vger.kernel.org 19 What: /sys/devices/system/edac/mc/mc*/mc_name 21 Contact: linux-edac@vger.kernel.org 25 What: /sys/devices/system/edac/mc/mc*/size_mb 27 Contact: linux-edac@vger.kernel.org 31 What: /sys/devices/system/edac/mc/mc*/ue_count 33 Contact: linux-edac@vger.kernel.org [all …]
|
| H A D | sysfs-edac-scrub | 1 What: /sys/bus/edac/devices/<dev-name>/scrubX 4 Contact: linux-edac@vger.kernel.org 6 The sysfs EDAC bus devices /<dev-name>/scrubX subdirectory 9 region registered with the EDAC device driver for the 14 function and provided the necessary operations to the EDAC 17 What: /sys/bus/edac/devices/<dev-name>/scrubX/addr 20 Contact: linux-edac@vger.kernel.org 29 What: /sys/bus/edac/devices/<dev-name>/scrubX/size 32 Contact: linux-edac@vger.kernel.org 37 What: /sys/bus/edac/devices/<dev-name>/scrubX/enable_background [all …]
|
| /linux/drivers/edac/ |
| H A D | ti_edac.c | 21 #include <linux/edac.h> 71 #define EDAC_MOD_NAME "ti-emif-edac" 82 static u32 ti_edac_readl(struct ti_edac *edac, u16 offset) in ti_edac_readl() argument 84 return readl_relaxed(edac->reg + offset); in ti_edac_readl() 87 static void ti_edac_writel(struct ti_edac *edac, u32 val, u16 offset) in ti_edac_writel() argument 89 writel_relaxed(val, edac->reg + offset); in ti_edac_writel() 95 struct ti_edac *edac = mci->pvt_info; in ti_edac_isr() local 100 irq_status = ti_edac_readl(edac, EMIF_IRQ_STATUS); in ti_edac_isr() 103 err_addr = ti_edac_readl(edac, EMIF_1B_ECC_ERR_ADDR_LOG); in ti_edac_isr() 104 err_count = ti_edac_readl(edac, EMIF_1B_ECC_ERR_CNT); in ti_edac_isr() [all …]
|
| H A D | edac_module.c | 13 #include <linux/edac.h> 44 MODULE_PARM_DESC(edac_debug_level, "EDAC debug level: [0-4], default: 2"); 67 * sysfs object: /sys/devices/system/edac 71 .name = "edac", 72 .dev_name = "edac", 79 /* create the /sys/devices/system/edac directory */ in edac_subsys_init() 82 printk(KERN_ERR "Error registering toplevel EDAC sysfs dir\n"); in edac_subsys_init() 92 /* return pointer to the 'edac' node in sysfs */ 168 MODULE_DESCRIPTION("Core library routines for EDAC reporting");
|
| H A D | edac_pci.h | 18 * Please look at Documentation/driver-api/edac.rst for more info about 19 * EDAC core structs and functions. 26 #include <linux/edac.h> 55 /* pointer to edac polling checking routine: 65 const char *ctl_name; /* edac controller name */ 72 /* sysfs top name under 'edac' directory 81 /* Event counters for the this whole EDAC Device */ 84 /* edac sysfs device control for the 'name' 128 * edac local routine to do pci_write_config_dword, but adds 164 * edac_pci it is going to control/register with the EDAC CORE. [all …]
|
| H A D | edac_mc.h | 18 * Please look at Documentation/driver-api/edac.rst for more info about 19 * EDAC core structs and functions. 38 #include <linux/edac.h> 49 printk(level "EDAC " prefix ": " fmt, ##arg) 52 printk(level "EDAC MC%d: " fmt, mci->mc_idx, ##arg) 55 printk(level "EDAC " prefix " MC%d: " fmt, mci->mc_idx, ##arg) 58 printk(level "EDAC DEVICE%d: " fmt, ctl->dev_idx, ##arg) 61 printk(level "EDAC PCI%d: " fmt, ctl->pci_idx, ##arg) 131 * edac_get_owner - Return the owner's mod_name of EDAC MC 134 * Pointer to mod_name string when EDAC MC is owned. NULL otherwise. [all …]
|
| H A D | aspeed_edac.c | 6 #include <linux/edac.h> 18 #define DRV_NAME "aspeed-edac" 165 dev_dbg(mci->pdev, "received edac interrupt w/ mcr register 50: 0x%x\n", in mcr_isr() 194 dev_dbg(mci->pdev, "received edac interrupt, but did not find any ECC counters\n"); in mcr_isr() 197 dev_dbg(mci->pdev, "edac interrupt handled. mcr reg 50 is now: 0x%x\n", in mcr_isr() 306 /* allocate & init EDAC MC data structure */ in aspeed_probe() 336 /* register with edac core */ in aspeed_probe() 339 dev_err(&pdev->dev, "failed to register with EDAC core\n"); in aspeed_probe() 376 { .compatible = "aspeed,ast2400-sdram-edac" }, 377 { .compatible = "aspeed,ast2500-sdram-edac" }, [all …]
|
| H A D | npcm_edac.c | 11 #define EDAC_MOD_NAME "npcm-edac" 279 * ~# echo 0 > /sys/kernel/debug/edac/npcm-edac/error_type 280 * ~# echo 1 > /sys/kernel/debug/edac/npcm-edac/location 281 * ~# echo 7 > /sys/kernel/debug/edac/npcm-edac/bit 282 * ~# echo 1 > /sys/kernel/debug/edac/npcm-edac/force_ecc_error 285 * ~# echo 1 > /sys/kernel/debug/edac/npcm-edac/error_type 286 * ~# echo 1 > /sys/kernel/debug/edac/npcm-edac/force_ecc_error 530 .name = "npcm-edac", 541 MODULE_DESCRIPTION("Nuvoton NPCM EDAC Driver");
|
| H A D | sifive_edac.c | 3 * SiFive Platform EDAC Driver 10 #include <linux/edac.h> 23 * EDAC error callback 65 dev_err(p->dci->dev, "failed to register with EDAC core\n"); in ecc_register() 117 MODULE_DESCRIPTION("SiFive platform EDAC driver");
|
| H A D | edac_module.h | 20 * INTERNAL EDAC MODULE: 21 * EDAC memory controller sysfs create/remove functions 48 /* edac core workqueue: single CPU mode */ 60 * EDAC debugfs functions 100 * EDAC PCI functions
|
| H A D | a72_edac.c | 3 * Cortex A72 EDAC L1 and L2 cache error detection 20 #define DRVNAME "a72-edac" 194 of_property_read_bool(np, "edac-enabled")) { in a72_edac_driver_init() 207 pr_err("failed to register A72 EDAC device\n"); in a72_edac_driver_init() 225 MODULE_DESCRIPTION("Cortex A72 L1 and L2 cache EDAC driver");
|
| H A D | zynqmp_edac.c | 8 #include <linux/edac.h> 152 * @dci: Pointer to the EDAC device instance 225 * @priv: Pointer to the EDAC private struct 246 * echo <fault_count val> > /sys/kernel/debug/edac/ocm/inject_fault_count 248 * echo <bit_pos val> > /sys/kernel/debug/edac/ocm/inject_ce_bitpos 290 * echo <fault_count val> > /sys/kernel/debug/edac/ocm/inject_fault_count 292 * echo <bit_pos0 val>,<bit_pos1 val> > /sys/kernel/debug/edac/ocm/inject_ue_bitpos 454 .name = "zynqmp-ocm-edac",
|
| H A D | bluefield_edac.c | 3 * Bluefield-specific EDAC driver. 11 #include <linux/edac.h> 18 #define DRIVER_NAME "bluefield-edac" 171 * and report it to the edac handler. 447 /* Register with EDAC core */ in bluefield_edac_mc_probe() 450 dev_err(dev, "failed to register with EDAC core\n"); in bluefield_edac_mc_probe() 492 MODULE_DESCRIPTION("Mellanox BlueField memory edac driver");
|
| H A D | octeon_edac-pc.c | 16 #include <linux/edac.h> 34 * EDAC CPU cache error callback 140 MODULE_DESCRIPTION("Cavium Octeon Primary Caches EDAC driver");
|
| H A D | cpc925_edac.c | 3 * cpc925_edac.c, EDAC driver for IBM CPC925 Bridge and Memory Controller. 13 #include <linux/edac.h> 37 * EDAC device names for the error detections of 263 /* Private structure for edac memory controller */ 271 /* Private structure for common edac device */ 408 * are cleared here if we want to re-install CPC925 EDAC in cpc925_mc_exit() 642 * are cleared here if we want to re-install CPC925 EDAC in cpc925_cpu_exit() 802 cpc925_printk(KERN_ERR, "No memory for edac device\n"); in cpc925_add_edac_devices() 820 "Unable to add edac device for %s\n", in cpc925_add_edac_devices() 825 edac_dbg(0, "Successfully added edac device for %s\n", in cpc925_add_edac_devices() [all …]
|
| H A D | synopsys_edac.c | 9 #include <linux/edac.h> 344 * @get_error_info: Get EDAC error info. 347 * @get_mem_info: Get EDAC memory info 503 * @mci: EDAC memory controller instance. 640 * @mci: EDAC memory controller instance. 669 * Get the EDAC device type width appropriate for the current controller 700 * Get the EDAC device type width appropriate for the current controller 783 * Get the EDAC memory type appropriate for the current controller 807 * Get the EDAC memory type appropriate for the current controller 833 * @mci: EDAC memory controller instance. [all …]
|
| H A D | dmc520_edac.c | 4 * EDAC driver for DMC-520 memory controller. 15 #include <linux/edac.h> 82 #define EDAC_MOD_NAME "dmc520-edac" 164 * The EDAC driver private data. 506 /* Initialize dmc520 edac */ in dmc520_edac_probe() 582 "Failed to register with EDAC core\n"); in dmc520_edac_probe()
|
| /linux/Documentation/driver-api/ |
| H A D | edac.rst | 1 Error Detection And Correction (EDAC) Devices 4 Main Concepts used at the EDAC subsystem 123 Most of the EDAC core is focused on doing Memory Controller error detection. 125 to describe the memory controllers, with is an opaque struct for the EDAC 126 drivers. Only the EDAC core is allowed to touch it. 128 .. kernel-doc:: include/linux/edac.h 130 .. kernel-doc:: drivers/edac/edac_mc.h 135 The EDAC subsystem provides a mechanism to handle PCI controllers by calling 139 .. kernel-doc:: drivers/edac/edac_pci.h 141 EDAC Blocks [all …]
|
| /linux/drivers/cxl/ |
| H A D | Kconfig | 119 bool "CXL: EDAC Memory Features" 123 depends on EDAC >= CXL_BUS 125 The CXL EDAC memory feature is optional and allows host to 126 control the EDAC memory features configurations of CXL memory 138 The CXL EDAC scrub control is optional and allows host to 142 When enabled 'cxl_mem' and 'cxl_region' EDAC devices are 144 Documentation/ABI/testing/sysfs-edac-scrub. 156 The CXL EDAC ECS control is optional and allows host to 160 When enabled 'cxl_mem' EDAC devices are published with memory 162 Documentation/ABI/testing/sysfs-edac-ecs. [all …]
|
| /linux/Documentation/devicetree/bindings/edac/ |
| H A D | amazon,al-mc-edac.yaml | 4 $id: http://devicetree.org/schemas/edac/amazon,al-mc-edac.yaml# 7 title: Amazon's Annapurna Labs Memory Controller EDAC 14 EDAC node is defined to describe on-chip error detection and correction for 20 const: amazon,al-mc-edac 57 edac@f0080000 { 60 compatible = "amazon,al-mc-edac";
|
| H A D | dmc-520.yaml | 4 $id: http://devicetree.org/schemas/edac/dmc-520.yaml# 7 title: ARM DMC-520 EDAC
|
| /linux/Documentation/firmware-guide/acpi/apei/ |
| H A D | einj.rst | 232 [22715.830801] EDAC sbridge MC3: HANDLING MCE MEMORY ERROR 233 [22715.834759] EDAC sbridge MC3: CPU 0: Machine Check Event: 0 Bank 7: 8c00004000010090 234 [22715.834759] EDAC sbridge MC3: TSC 0 235 [22715.834759] EDAC sbridge MC3: ADDR 12345000 EDAC sbridge MC3: MISC 144780c86 236 [22715.834759] EDAC sbridge MC3: PROCESSOR 0:306e7 TIME 1422553404 SOCKET 0 APIC 0 237 …[22716.616173] EDAC MC3: 1 CE memory read error on CPU_SrcID#0_Channel#0_DIMM#0 (channel:0 slot:0 …
|
| /linux/Documentation/edac/ |
| H A D | scrub.rst | 59 A generic memory EDAC scrub control allows users to manage underlying 188 supported in EDAC. 248 | EDAC control | | | | | 258 /sys/bus/edac/devices/<dev-name>/scrubX/ 264 `Documentation/ABI/testing/sysfs-edac-scrub` 266 `Documentation/ABI/testing/sysfs-edac-ecs` 297 `Documentation/ABI/testing/sysfs-edac-scrub` 327 `Documentation/ABI/testing/sysfs-edac-scrub` 342 `Documentation/ABI/testing/sysfs-edac-ecs`
|
| H A D | memory_repair.rst | 4 EDAC Memory Repair Control 115 accessed in the /sys/bus/edac/devices/<dev-name>/mem_repairX/ 121 `Documentation/ABI/testing/sysfs-edac-memory-repair`. 152 `Documentation/ABI/testing/sysfs-edac-memory-repair`
|
| /linux/arch/powerpc/include/asm/ |
| H A D | edac.h | 2 * PPC EDAC common defs 15 * Implements the per arch edac_atomic_scrub() that EDAC use for software
|