linux/drivers/edac/sb_edac.c
<<
>>
Prefs
   1/* Intel Sandy Bridge -EN/-EP/-EX Memory Controller kernel module
   2 *
   3 * This driver supports the memory controllers found on the Intel
   4 * processor family Sandy Bridge.
   5 *
   6 * This file may be distributed under the terms of the
   7 * GNU General Public License version 2 only.
   8 *
   9 * Copyright (c) 2011 by:
  10 *       Mauro Carvalho Chehab <mchehab@redhat.com>
  11 */
  12
  13#include <linux/module.h>
  14#include <linux/init.h>
  15#include <linux/pci.h>
  16#include <linux/pci_ids.h>
  17#include <linux/slab.h>
  18#include <linux/delay.h>
  19#include <linux/edac.h>
  20#include <linux/mmzone.h>
  21#include <linux/smp.h>
  22#include <linux/bitmap.h>
  23#include <linux/math64.h>
  24#include <asm/processor.h>
  25#include <asm/mce.h>
  26
  27#include "edac_core.h"
  28
  29/* Static vars */
  30static LIST_HEAD(sbridge_edac_list);
  31static DEFINE_MUTEX(sbridge_edac_lock);
  32static int probed;
  33
  34/*
  35 * Alter this version for the module when modifications are made
  36 */
  37#define SBRIDGE_REVISION    " Ver: 1.0.0 "
  38#define EDAC_MOD_STR      "sbridge_edac"
  39
  40/*
  41 * Debug macros
  42 */
  43#define sbridge_printk(level, fmt, arg...)                      \
  44        edac_printk(level, "sbridge", fmt, ##arg)
  45
  46#define sbridge_mc_printk(mci, level, fmt, arg...)              \
  47        edac_mc_chipset_printk(mci, level, "sbridge", fmt, ##arg)
  48
  49/*
  50 * Get a bit field at register value <v>, from bit <lo> to bit <hi>
  51 */
  52#define GET_BITFIELD(v, lo, hi) \
  53        (((v) & ((1ULL << ((hi) - (lo) + 1)) - 1) << (lo)) >> (lo))
  54
  55/*
  56 * sbridge Memory Controller Registers
  57 */
  58
  59/*
  60 * FIXME: For now, let's order by device function, as it makes
  61 * easier for driver's development process. This table should be
  62 * moved to pci_id.h when submitted upstream
  63 */
  64#define PCI_DEVICE_ID_INTEL_SBRIDGE_SAD0        0x3cf4  /* 12.6 */
  65#define PCI_DEVICE_ID_INTEL_SBRIDGE_SAD1        0x3cf6  /* 12.7 */
  66#define PCI_DEVICE_ID_INTEL_SBRIDGE_BR          0x3cf5  /* 13.6 */
  67#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_HA0     0x3ca0  /* 14.0 */
  68#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TA      0x3ca8  /* 15.0 */
  69#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_RAS     0x3c71  /* 15.1 */
  70#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TAD0    0x3caa  /* 15.2 */
  71#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TAD1    0x3cab  /* 15.3 */
  72#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TAD2    0x3cac  /* 15.4 */
  73#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_TAD3    0x3cad  /* 15.5 */
  74#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_DDRIO   0x3cb8  /* 17.0 */
  75
  76        /*
  77         * Currently, unused, but will be needed in the future
  78         * implementations, as they hold the error counters
  79         */
  80#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_ERR0    0x3c72  /* 16.2 */
  81#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_ERR1    0x3c73  /* 16.3 */
  82#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_ERR2    0x3c76  /* 16.6 */
  83#define PCI_DEVICE_ID_INTEL_SBRIDGE_IMC_ERR3    0x3c77  /* 16.7 */
  84
  85/* Devices 12 Function 6, Offsets 0x80 to 0xcc */
  86static const u32 dram_rule[] = {
  87        0x80, 0x88, 0x90, 0x98, 0xa0,
  88        0xa8, 0xb0, 0xb8, 0xc0, 0xc8,
  89};
  90#define MAX_SAD         ARRAY_SIZE(dram_rule)
  91
  92#define SAD_LIMIT(reg)          ((GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
  93#define DRAM_ATTR(reg)          GET_BITFIELD(reg, 2,  3)
  94#define INTERLEAVE_MODE(reg)    GET_BITFIELD(reg, 1,  1)
  95#define DRAM_RULE_ENABLE(reg)   GET_BITFIELD(reg, 0,  0)
  96
  97static char *get_dram_attr(u32 reg)
  98{
  99        switch(DRAM_ATTR(reg)) {
 100                case 0:
 101                        return "DRAM";
 102                case 1:
 103                        return "MMCFG";
 104                case 2:
 105                        return "NXM";
 10arg...de=DRA:uasier for driver's development process. This table should be
  59/*
  v2.6.12.2
T8ivers/eda2.2  18#include </*0, 0xc8,
  19#include </*dac.c#11" id="L11" class="line" name="L11"00"> 100  *   1   Mau11" id="L11" class="line" name="L11"">  11> * retu1MUTEX" classref">u32 dram_rule);
  12
  13#include < 104#include <  15#include <DRA=ARR=reg" clas ARRAY_SIZE(dram_rule);
  16#include <  17#include <SBRIlasPKGL_SBRIDGE_IMC_ERIlasPKGLef">reg)          GET_BITFIELD(reg, 0,  0)
  18#include <reg)          GET_BITFIELD(reg, 0,  0)
  19#include <reg)          GET_BITFIELD(reg, 0,  0)
  20#include <MAX_SAD IlasPKGL_SBRIDGE_IMC_ERIlasPKGLef">reg)          GET_BITFIELD(reg, 0,  0)
  21#include <reg)          GET_BITFIELD(reg, 0,  0)
  12>
SAD_LIMIT(PKG5_SBRIDGE_IMC_ERIlasPKG5ef">reg)          GET_BITFIELD(reg, 0,  0)
  23#include <DRAM_ATTRreg)          GET_BITFIELD(reg, 0,  0)
 104#include <INTEIlasPKG7_SBRIDGE_IMC_ERIlasPKG7ef">reg)          GET_BITFIELD(reg, 0,  0)
  15#include <  26
dram_ruleprobed;
u32 reg)
probed;
);
  27#include "  28
))
);
  291/* St12=DRAM_ATTR" cdac.c#L101" id="L101" class="line" name="L0">  30static SBRIlasPKGL_SBRIDGE_IMC_ERIlasPKGLef">reg)            31static   32static int SBRIlasPKGL_SBRIDGE_IMC_ERIlasPKGLef">reg)            13>#include <  341/*SBRIlasPKGcode=dram_rule" IlasPKGcef">reg)            151 * Al135DRAM_ATTR" cdac.c3L105" id="L105" class="line" name="L4">  261 */SBRIlasPKGL_SBRIDGE_IMC_ERIlasPKGLef">reg)            27#define   28#define SBRIlasPKG4_SBRIDGE_IMC_ERIlasPKG4ef">reg)            29
  401/*SBRIlasPKG5_SBRIDGE_IMC_ERIlasPKG5ef">reg)            311 * De141DRAM_ATTR" cdac.c6L105" id="L105" class="line" name="L0">  321 */SBRIlasPKG6_SBRIDGE_IMC_ERIlasPKG6ef">reg)            13#define   14>#include <SBRIlasPKG7_SBRIDGE_IMC_ERIlasPKG7ef">reg)            15

  46#define   27          48
  291/*  501 * Ge1 a bit field at register val0x80 to 0xcc */
sb_edac.c#L84" id="L84" class="line" name="L811">  511 */  52#define GET_BITTOLMa href="+code=GTOLM#39;s developmenref=92" id="L92" class="line" name="L912">  13        (((DRAM_ATTR  14
  551/*DRAg" cTOLMa href="+code=Gg" cTOLMef">reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<0c.c#L="drivers/e8ac/sb_edac.c#L93" id="L93" class="line" name="L916">  561 * sb15VICE_ID_INTEL_SBRIDGE_BR" clg" cTOHMa href="+code=Gg" cTOHMef">reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<0c.20L="drivers/e5ac/sb_edac.c#L93" id="L93" class="line" name="L916">  271 */
<93" id="L93" class="line" name="L916">  48
  291/*  601 * FI16D" class="sref">MAX_SAD IlasTARg" _SBRIDGE_IMC_ERIlasTARg" #39;s deve0xf=92" id="L92" class="line" name="L911">  611 * ea16c.c#L92" id="L92" class="line" name="L912">  621 * mo16MIT" class="sref">SAD_LIMITreg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<9ed11L93" id="L93" class="line" name="L913">  631 */  64#define   65#define   66#define reg)          GET_BITFIELD(reg, 0,  0)
  67#define   68#define   69#define   70#define u32 dram_rule)
  71#define /* 12.4edac.44"dri4ac/sb4cL89" id="L89" class="line" name="L812">  72#define   63#define   64#define   75
DRA=ARRT   DRAE(dram_rule)
  76          771     17E_REVISION" class="sref">SBRTa>((reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<12, 31f="drivers/edac/sb_edac.c#L93" id="L93" class="line" name="L918">  781     17VICE_ID_INTEL_SBRIDGE_IMC_TATa>(SOCKef="+code=reg" Ta>(SOCKef">reg)          GET_BITFIELD(reg, 0,  0)
  791     17VICE_ID_INTEL_SBRIDGE_IMC_RATa>(CHef="+code=reg" Ta>(CHef">reg)          GET_BITFIELD(reg, 0,  0)
  80#define reg)          GET_BITFIELD(reg, 0,  0)
  71#define (TGTcef">reg)          GET_BITFIELD(reg, 0,  0)
  82#define reg)          GET_BITFIELD(reg, 0,  0)
  83#define reg)          GET_BITFIELD(reg, 0,  0)
  84
  851/* De1ices 12 Function 6, Offsets 0x80 to 0 15,ref="driv sb_edac.c#L75" id="L75" class="line" name="L716">  86static const   87        0x80, 0x88, 0x190, 018E_REVISION" class="sref">SBRMCMhref="+code=reg" MCMhr#39;s development prs/eri7c97" id="L97" class="line" name="L917">  18>#include <  89};
reg, 0,  0)
mcm(GET_BITFIELD(reg, 0,  0)
mcm(  90#define MAX_SAD IS_LOCKSTEPass="sra href="+code=reIS_LOCKSTEPass="sraef">reg, 0,  0)
mcm(GET_BITFIELD(reg, 0,  0)
mcm(  71
reg, 0,  0)
mcm(GET_BITFIELD(reg, 0,  0)
mcm(  82#define   83#define   94#define   95#define DRARASss="srL_SBRIDGE_IMC_RARASss="srL#39;s development riac85" id="L85" class="line" name="L815">  86
reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
  87static char *  98{
  99        switch( 1002/a>                case 2:
usref">probed;
 1012/a>                     2  ret20comment">/* 12.f="driv4"driver87" id="L87" class="line" name="L821">  22                case 2:
 1032/a>                     2  ret20c.c#L34" id="L34" class="line" name="L32104"> 1042/a>                case 2:
(reg, 0,  0)
m(GET_BITFIELD(reg, 0,  0)
m( 1052/a>                     2  ret20ULE_ENABLE" class="sref">DRAIS_DIMM_PRESssref="+code=reg" IS_DIMM_PRESssref">reg, 0,  0)
m(GET_BITFIELD(reg, 0,  0)
m(  26...de=DRA:uasier fo2 driv20VICE_ID_INTEL_SBRIDGE_BR" clRANK_CN clasL_SBRIDGE_IMC_RARANK_CN clasLef">reg, 0,  0)
m(GET_BITFIELD(reg, 0,  0)
m(20E_REVISION" class="sref">SBRRANK_WIDTHclasL_SBRIDGE_IMC_RARANK_WIDTHclasLef">reg, 0,  0)
m(GET_BITFIELD(reg, 0,  0)
m(  28#include <20VICE_ID_INTEL_SBRIDGE_IMC_TACOL_WIDTHclasL_SBRIDGE_IMC_RACOL_WIDTHclasLef">reg, 0,  0)
m(GET_BITFIELD(reg, 0,  0)
m(  19#include <20c.c#L40" id="L40" class="line" name="L42"00"> 1002a>2 *   21AD" class="sref">u32 dram_rule  11>2* ret21comment">/* 12.dac/sb_4c/sb_edac.9cL89" id="L89" class="line" name="L822">  12
 1032a>#include < 1042a>#include <  15#include <DRACHN_IDX_OFFS" _SBRIDGE_IMC_ERCHN_IDX_OFFS" ef">reg)          GET_BITFIELD(reg, 0,  0)
  16#include <(OFFS" _SBRIDGE_IMC_ERTa>(OFFS" ef">reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<#include <  18#include <u32 dram_rule  19#include <  20#include <  21#include <DRAE(dram_rule  12>
  23#include <DRAM_ATTRreg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<31, 31f98" id="L98" class="line" name="L92304"> 1042a>#include <INTERIR_WAY_SBRIDGE_IMC_RARIR_WAYef">reg)          GET_BITFIELD(reg, 0,  0)
  15#include <DRARIR_reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
  26
  27#include "SBRMARRRIR_WAY_SBRIDGE_IMC_RAMARRRIR_WAYf="driver897" id="L97" class="line" name="L927">  18
  292/* St22=DRAMlass="sref">u32 dram_rule  30static   31static   12static int   23>#include < 1042a>2/*  152 * Al235DRAM#L90" id="L90" class="line" name="L924">  262 */  27#define SBRRIR_RNK(TGTef="+code=reg" RIR_RNK(TGTef">reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<16ed19L95" id="L95" class="line" name="L924">  28#define reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
  29
  402/*  312 * De24c.c#L92" id="L92" class="line" name="L920">  322 */  13#define  1042>>#include <  15
  46#define u32 dram_rule  27          28
  292/*  502 * Ge25D" class="sref">MAX_SAD RANK_ODD_OV_SBRIDGE_IMC_RARANK_ODD_OVef">reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<31, 31f98" id="L98" class="line" name="L921">  512 */reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<16ed3cL98" id="L98" class="line" name="L922">  52#define GET_BITRANK_EVEN_OV_SBRIDGE_IMC_RARANK_EVEN_OVef">reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<15
<15L98" id="L98" class="line" name="L922">  13        (((DRAM_ATTRreg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
  14
  552/*u32 dram_rule  562 * sb256_chipset_prisb11cc/sb120c/sb124c/sb12ac87" id="L87" class="line" name="L826">  272 */
<#L90" id="L90" class="line" name="L926">  48
  292/*reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<16ed3cL98" id="L98" class="line" name="L920">  602 * FI26D" class="sref">MAX_SAD RANK_EVEN_ERR_THRSreg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
  612 * ea26c.c#L92" id="L92" class="line" name="L922">  622 * mo26MIT" 98" id="L98" class="line" name="L923">  632 */
  64#define   65#define DRARANK_CFG_A href="+code=reRANK_CFG_A_chipset_priet_prisb032897" id="L97" class="line" name="L926">  66#define   67#define SBRIS_RDIMM_ss="sra href="+code=reIS_RDIMM_ss="sraef">reg)          GET_BITFIELD(reg, 6, 25) << 26) | 0x3ffffff)
<11ed11L93" id="L93" class="line" name="L928">  68#define   69#define   70#define   61#define   72#define   63#define DRAM_ATTR  64#define INTEMARRDIMML_SBRIDGE_IMC_RA=ARRDIMML_chipset_pr3ELD" classsssss= href="drivers/edac/s0x8Max DIMML perr" cnnelb_edac.c#L64" id="L64" class="line" name="L622">  65
  76        probed;
  772     27c_chipset_pri32   782     27c.c#L#L90" id="L90" class="line" name="L929">  792     27c.c#L40" id="L40" class="line" name="L420">  80#define probed;
  71#define   82#define   63#define   84
  852/* De2852" claructf">probed;
  76static const   77        0x80, 0x88, 0x290, 0287_chipset_prisrefffffffffffffffffffff32   78>#include <  79};
  90#define   71
  82#define probed;
  83#define ulaructf">probed;
  84#define   85#define   86
  87static char *probed;
  78{
probed;
  79        switch(  1003/a>                case 3:
   1003/>
/* 1laructf">probed;
  22                case 3:
  1033/a>                     3  ret303omment">/* 1laructf">probed;
/*32  1033/>#define  1053/a>                     3  ret30c.c#L76" id="L76" class="line" name="L731">  26...de=DRA:uasier fo3 driv3032" claructf">probed;
);
307omment">/* 1laructf">probed;
probed;
probed;
probed;
{
300, 0xc8,
probed;
probed;
probed;
probed;
        switch(309, 0xc8,
probed;
probed;
 1003a>3 *   310omment">/* 1laructf">probed;
probed;
DRAM_ATTR 1003>>3* ret31c.c#L92" id="L92" class="line" name="L932">  12
probed;
probed;
 1033a>#include < 1043a>#include <probed;
  1053a>#include <probed;
dram_ruleDRAM_ATTR  26#include <#include <  18#include < #include <  20#include <  21#include </* 1laructf">probed;
probed;
DRAM_ATTR  12>
probed;
probed;
DRAM_ATTR 1033a>#include < 1043a>#include < 1053a>#include <    26
  27#include "  18
 3/* St32c.c#L40" id="L40" class="line" name="L430">  30static   31static #define    12static int   23>#include < 1043a>3/*INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_reg, 6, 25) d to 0a href="+code=udevich#39;
<32   1053a>3 * Al335f="drivers/e.32 GET_BITd to 0a href="+code=udevich#39;),rivers/edac/sb_et_pri   \34" id="L34" class="line" name="L331">  263 */ GET_BITef="driva href="+code=uef="driv#39;),rivers/edac/sb_et_pri\34" id="L34" class="line" name="L331">  27#define  GET_BITd to 0_ida href="+code=udevicf_idb_ed)34" id="L34" class="line" name="L331">  18#define   29
ulaructf">probed;
probed;
  403/*  313 * De341DRAM_ATTR" c{sass="sref">INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r14c/s
<32   323 */  13#define  1043>>#include <INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r15c/s
<32  1053a>
INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r15c/1
<32   26#define INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r15c/2
<32   27        INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r15c/3
<32   18
INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r15c/4
<32   293/*INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r15c/5
<32   503 * Ge350_chipset_pri{sass="sref">INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r17c/s
<32   312 */reg)    R_CN _SBRIDGE_IMC_RARANK_EVEN_ERR_C33D" cl35et_pri32  1043>>        (3(INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r17c/s
<32 hr6href=PCI_DEVI  0x3_INTEL_SBRIDG 0xMC_DDRIO_SBSIMC_ERPCI_DEVI  0x3_INTEL_SBRIDG 0xMC_TADLb_edS    }r87" id="L8="L87" class="line" name="L830">  31INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r15c/s
<32 hr7href=PCI_DEVI  0x3_INTEL_SBRIDG 0xMC_DDRIO_SBSIMC_ERPCI_DEVI  0x3_INTEL_SBRIDG 0xMC_TADLb_edS    }r87" id="L8="L87" class="line" name="L830">  312/*  262 * sb256_ch3pset_3risb11cc/sb120 1053a>2 */
3#L90"35i{sass="sref">INTEPCI_DESCref="+code=reg" PCI_DESCrAVE_r15c/3
<323hr6href=PCI_DEVI  0x3_INTEL_SBRIDG 0xMC_DDRIO_SBBeg" PCI_DESCrAVE_r15c/L_SBRIDG 0xMC_DDRIO_SBBe }r87" id="L8="L8L87" class="line" name="L830">  31  792/*  302 * FI26D" c3ass="3ref">MAX_SAD RANK_EVEN_ER_r15IDGT_ENTRC_RAMARRRIR_WAYf_r15IDGT_ENTRC 6, 25) d to 0a hrefe=rePCI_DEVI  0x    }r8{href=dev_ida href="code=udesc<_chiL90" id="L90=5) d to 0a hrefe=rePCI_DEVI  0x    },href=dev_ida href="+code=un_devs_chiL90" id="L90 =>DRAE(dram_rule  302 * ea26c.c#392" i3="L92"ulaructf">probed;
  402 * mo26MIT"398" i36i32   312 */
3a hre363{sass="sref">0,}cc/sb120 1053a>#define <3 href="+code2=PCI_26c.c#355" i36d="L90" class="line" name="L93105"> 1053/a#define <3 href="+code2=PCI_26ULE_3NABLE36"L76" class="line" name="L731">  26  70  70 1053a>#span cla3 href="+code2=PCI_26c.c#3pci_i36ref">ularuct5) d to 0a hrefDEFINE__r15c/L_SBRTf="+codRANK_DISEbC_RAsbridge_" cnnel_chip ef">bC   }r887" class="line" name="L830">  40#define <3 href="+code2=PCI_27a bi3 fiel37i{sass="sref">ef=PCI_DEVI  0x3_INTEL_SBg" PCI_DESCrAVE_r15c/L_SB 6, 25) d to 0a href_r15VENDORRIDG 0xMCg" PCI_DESCrAVE_r15VENDORRIDG 0xMC   310,}cc/sb120 1053a>#define <3 href="+code2=PCI_27MIT"398" i37d="L90" class="line" name="L931">  23>#define <3 href="+code2=PCI_27TTR"3class37"L34" class="line" name="L33104"> 1043a>#define <3 href="+code2=PCI_27EAVE3MODE"37"L85" class="line" name="L825">  85 1053a>#define <3pan class="c2ommen2732" 3laruc37"L97"n submitte_edac.c#L77"cc/sb120  612     27c_ch3pset_37classgister val * sbridge strrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrid="L64" class="line" name="L63105"> 1053a>#2     27c.c#3#L90"37"L59" class="line" name="L531">  292     27c.c#340" i37ref">ularuct5) d to 0a hrefin>2    ePCI_DEVI  0xin>2  {sass;
dram_rule  29#define <3 href="+code2=PCI_2802" 3laruc3f">pro" class="line" name="L830">  40#define <3 href="+code2=PCI_281_ch3pset_3ri32 ;
reg, 0,  0)
m(  23>#define <3 href="+code2=PCI_282_ch3pset_38"L98" class="line" name="L93"">  13#define <3 href="+code2=PCI_2EVICE3#L90"383{sass="sref"ifT_BITd to 0_ida h"+code=uranksBITFL90" id="L90G&gdac4)7" class="line" name="L830">  40
 BITd to 0_ida h  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"Invald=u0umber of " id=: %d (maxGET4)7raw valueGET%x (%04x)\n"d="L64"" class="line" name="L830">  312/* De2852" 3laruc385dac/sb_et_pri32 ri32 BITd to 0_ida h"+code=uranksBITFL90" id="L90, (pment prereg, 0,  0)
m(  23>#define <3st   12        0380, 0x88, 0x290, 0287_ch3pset_3risrefffffffff} class="line" name="L430">  30#include 3lt;  29};
  12#define <3 href="+code2=MAX_29D" c3#L90"3id="L90 class="line" name="L931">  12#define <3drivers/edac2/sb_e29c.c#392" i3="L92" class="line" name="L920">  82probearuct5) d to 0a hrefin>2    ePCI_DEVI  0xin>2  {sass;
dram_rule  29#define <3 href="+code2=DRAM293DRA3_ATTR3 cdef"" class="line" name="L830">  40#define <3 href="+code2=INTE294_ch3pset_3risrefffffffffffffBITd to 0_ida h"owde=uranksBITFL90"owdef">GET_BITd to 0_ida hasL_SBRIDGE_IMC_RARANK_WIDTHclasLef">reg, 0,  0)
m(  23>#define <3 href="+code2=DRAM295DRA3#L90"39"L76" class="line" name="L731">  26G1fdac13 ||fBITd to 0_ida h"owde=uranksBITFL90"owdef">G&gdac18)7" class="line" name="L830">  40static ch3r *"Invald=u0umber of "owd: %d (should be between 14 and 17)7raw valueGET%x (%04x)\n"d="L64"" class="line" name="L830">  31  BITd to 0_ida h"owde=uranksBITFL90"owdef">, (pment prereg, 0,  0)
m(  23>        s3itch(  12        4       case 3:
   12/40"L92" class="line" name="L920">  82        4       case 3:
" class="line" name="L931">  123       4 href="+code2=DRAM293DRA4nt">/4 1laru0 class="line" name="L931">  12  85        4            3  ret30c.c#476" i405>probearuct5) d to 0a hrefin>2    ePCI_DEVI  0xin>2  {sass;
dram_rule  29...de=4RA:uasier fo3 driv3032" 4laruc4f">pro" class="line" name="L830">  40307omm4nt">/40isrefffffffffffffleGET_BITd to 0_ida hCOLRBRIDGE_IMC_RARANK_WIDTHclCOLRBRIDGE_IMC 0,  0)
m(  234{
300, 04c8,
<40"L59" class="line" name="L531">  29309, 04c8,
<4 hlaructf">proifT_BITd to 0_ida hcMCde=uranksBITFL90cMCdef">G&gdac12)7" class="line" name="L830">  403 *   310omm4nt">/41edac/sb_e3 href="driveITd to 0_ida h  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"Invald=u0umber of cMCd: %d (maxGET4)7raw valueGET%x (%04x)\n"d="L64"" class="line" name="L830">  313* ret31c.c#492" i411pment pret_pri32  BITd to 0_ida hcMCde=uranksBITFL90cMCdef">, (pment pre  234
   12   12  85proreturn 1)/sb_1fdac;
" class="line" name="L931">  12...de=4lt;  12  12;
prob>;
   29  40probed;
prob>;
 1033a4#include 4lt;/42"L92" class="line" name="L920">  82   40 DRAE(   29  1033a4#include 4lt;  12  27 1033a4#
  123/* St32c.c#440" i4="L40" class="line" name="L430">  30;
prob>;
   31                    f">probed;
  29  40probed;
prob>;
 1033a43/*  853 * Al335f="4river4/e.32 prob=>DRAE(;
  2343 */  234 return BITd to 0_ida hNULCg" PCI_DESCrAVENULC"L90" class="line" name="L93"03"> 1033a4#define <4 href="+code3=EDAC33c.c#459" i4="L59" class="line" name="L531">  29   313/*  2343 * De341DRA4_ATTR4 c{sass="sref"ifT_!;
  403 */ (  234 1033a4#include 4lt;  12  26   1033a4#include 4 href="+code3=edac3mc_ch4pset_44i32  1033a4#define <4drivers/edac3/sb_e348_ch4pset_44h32   234<3/*  303 * Ge350_ch4pset_4ri{sass="sref"return BITd to 0_ida h href="+code=usbridge_dev_chiL90" id="L90" class="line" name="L93"03"> 1033a4ass="comm4nt">2 */  12  13;
prob>;
  234ainclude 4drivers/edac2/sb_e2ac.c#455" i45c{sas" class="line" name="L830">  402/*   2342 * sb256_ch4pset_45c{sass="sref"BITd to 0_ida hkfres/edpci_id_tab hkfres 6, 25) d to 0a hrefchipL87"code=usbridge_dev_chiL90" id="L90-&gda5) d to 0a href+code=updevBITFL90" id="L90)" class="line" name="L931">  2342 */
4#L90"45i32   234a  122/*  302 * FI26D" c4ass="46at register val * sbridge sfttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttd="L64" class="line" name="L63105"> 1053a42 * ea26c.c#492" i46"drivers/edac/sb_edac.c#L64""""""""""""""""""""""""oller=_eheck rout2omid="L77" class="line" name="L720">  612 * mo26MIT"498" i46i32 1053a42 */
4a hre463{sasbeaructbed;
>;
   31 " class="line" name="L931">  234#define <4 href="+code2=PCI_26ULE_4NABLE46"L76"" class="line" name="L830">  40;
prob>;
  234#define <4 href="+code2=PCI_26E_RE4ISION46isrefffffffffffffle 1033/4#  29proifT_!;
  234#define <4 href="+code2=PCI_27a bi4 fiel47edac/sb_e3 href="drivreturn BITd to 0_ida hNULCg" PCI_DESCrAVENULC"L90" class="line" name="L93"03"> 1033a4#define <4 href="+code2=PCI_27comm4a hre47"L92" class="line" name="L920">  82 for 25) d to 0a hrefde=umci_chiL90" ="L90 =>0ac;
  40  234#define <4 href="+code2=PCI_27EAVE4MODE"47edac/sb_et_pri32  1033a4#define <4drivers/edac2/sb_e27c.c#476" i47"L76" class="line" name="L731">  26DRAE(  262     27c_ch4pset_477dac/sb_et_pri32     BITd to 0_ida h3_INFUNCe=umci_chiL90" 3_INFUNC 6, 25) d to 0a hrefchipL87"code=usbridge_dev_chiL90" id="L90-&gda5) d to 0a href+code=updevBITFL90" id="L90TTRDRAE(" " class="line" name="L830">  402     27c.c#4#L90"47opment pret_pri32 DRAE("Associated %02x.%02x.%d with %p\n"d="L64"" class="line" name="L830">  312     27c.c#440" i47i32  DRAE( DRAE(href=mca href="+cchref="+code=usbridge_dev_chiL90" id="L90-&gda5) d to 0a href+code=updevBITFL90" id="L90TTR  26  260 class="line" name="L931">  12 0 class="line" name="L931">  12 1043a4
 1033a42/* De2852" 4laruc485dac/0 class="line" name="L931">  12  27 1053a4#include 4lt; 1053a4#span cla4="drivers/ed2ac/sb289_ch4pset_4risrefns, as the0x80 to 0e15" _/a>:pri32Did4"  /a> <"L64" class="line" name="L63105"> 1053a4#define <4 href="+code2=MAX_29D" c4#L90"49at register val * sbridge s" id="L64" class="line" name="L63105"> 1053a4#define <4drivers/edac2/sb_e29c.c#492" i49"L92"ulaructfffflepro5) d to 0a hrefrle" c8#39;s development5) d to 0a hrefcode=ubusfff)
<32   234#define <4 href="+code2=SAD_2IMIT"4laruc49ram_r" class="line" name="L830">  40probed;
>;
 1033a4#define <4 href="+code2=INTE294_ch4pset_4risrefffffffff5) d to 0a hrefrule" class="sref">dram_rule 1033a4#span cla4 href="+code2=DRAM295DRA4#L90"49"L76" class="line" name="L731">  26DRAE(    26
4laruc497dac/sb_et_prifT_!;
  40BITd to 0_ida h href="+pdintde=un_devs_chiL9 href="+pdintd 6, 25) d to 0a hrefKERN_EReg" PCI_DESCrAVEKERN_EReef">hreister val * beding">"Couldn't find 3_I rid4"  "d="L64" class="line" name="L830">  40 "%2x.%02d.%d!!!\n"d="L64"" class="line" name="L830">  31        5       case 3:
  26/501pment pret_pri32return -ef=mch_outref="ENODEVe=ubusfff)
<32 1033a5>        5       case 3:
 0 class="line" name="L931">  123       5 href="+code2=DRAM293DRA5nt">/50"L34" class="line" name="L33104"> 1043a5
4       5 href="+code2=INTE294_ch5#L90"50isrefffffffff5) d to 0a href devread_f">fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+code=updevBITFL90" id="L90href=mca href="+cMCMTeg" PCI_DESCrAVEMCMTe"L90hr&5) d to 0a hrefccdode=um(  26  40...de=5RA:uasier fo3 driv3032" 5laruc50isb11cc/sb120hreister val * beding">"ECC is dis" idd. Aborting\n"d="L64""; class="line" name="L731">  26...de=5R */507dac/sb_et_pri32 return -ef=mch_outref="ENODEVe=ubusfff)
<32 1033a5>8>...de=5Rdrivers/eda2c/sb_290, 05c8,
<508t_pri32 0 class="line" name="L931">  129>...de=5Rtch( 1033a53 *   310omm5nt">/51d="L90 class="line" name="L931">  123* ret31c.c#592" i51"L92" class="line" name="L920">  82probeaructfffflefige=uef="BITF =ssget_dimm_f">fig 6, 2bed;
>;
  235#include 5lt;  40;
>;
=>DRAE( 1033a5#include 5lt;prosed;
>;
 1033a5#a>...de=5lt;, le, 5) d to 0a href=pagede=un_devs_chiL90pagedasss" class="line" name="L93"03"> 1033a5#7>...de=5lt;/edac/s;
 1033a5#8>...de=5lt;dram_rule 1033a5#9>...de=5lt;DRAE( 1033a5#include 5lt;proenum>DRAE( 1033a5#span cla5lt;/52"L92" class="line" name="L920">  82 fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst, 5) d to 0a hrefSADGT  26=>DRAE(  26  85 fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst, 5) d to 0a hrefSADGCONTROCg" PCI_DESCrAVESADGCONTROC"L90hr&5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26...de=5drivers/edac3/sb_e32c.c#597" i52c{sass="sref"BITd to 0_ida h+vf="dstDRAE(  26...de=5quot;"mc#%d: Nram ID: %d, cour"  ID: %d\n"d="L64"" class="line" name="L830">  31 BITd to 0_ida h+vf="dsth class="line" name="L830">  31...de=5s="comment">3/* St32c.c#540" i52i32   31  26  82 fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst, 5) d to 0a hrefRASENf="+C_RARANK_WIDTHclasSENf="+C"L90hr&5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26proifT_BITd to 0_ida hIS_MIRROR_ENf="+De=um(  403/* BITd to 0_ida h  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"oller=_mirror is en" idd\n"d="L64""; class="line" name="L731">  263 * Al335f="5river535dac/sb_et_pri32 5) d to 0a href+vf="dstDRAE( 1033a53 */  40...de=5 href="+code3=SBRI337f="5river537dac/sb_et_pri32 BITd to 0_ida h  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"oller=_mirror is dis" idd\n"d="L64""; class="line" name="L731">  26BITd to 0_ida h+vf="dstDRAE( 1033a5<9>...de=5drivers/edac3/sb_e33=DRA5lass=53i32   123/*  123 * De341DRA5_ATTR5 c{sass="sref"ef="+code=dram_ devread_f">fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  263 */ ifT_BITd to 0_ida hIS_LOCKSTEP_ENf="+De=um(  40"Lockstep is en" idd\n"d="L64""; class="line" name="L731">  26 BITd to 0_ida hchrse=umci_chiL90" mhrsasssb=>DRAE( 1033a5
 5) d to 0a href+vf="dstDRAE( 1033a5#define <5 href="+code3=sbri346DRA5_ATTR546{sass="sref"} else " class="line" name="L830">  40 BITd to 0_ida h  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"Lockstep is dis" idd\n"d="L64""; class="line" name="L731">  26BITd to 0_ida hchrse=umci_chiL90" mhrsasssb=>DRAE( 1033a5#9>...de=5s="comment">3/* DRAE( 1033a53 * Ge350_ch5pset_55i32   122 */  40 ("address map is oer vosed page mhrs\n"d="L64""; class="line" name="L731">  26DRAE( 1033a5ainclude 5drivers/edac2/sb_e2ac.c#555" i554{sass="sref"} else " class="line" name="L830">  402/* 5) d to 0a href  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"address map is oeropen page mhrs\n"d="L64""; class="line" name="L731">  262 * sb256_ch5pset_55isb11cc/sb120DRAE( 1033a52 */
5#L90"55i32   12  292/* fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst, 5) d to 0a hrefRAf">rFG_A_RARANK_WIDTHclasf">rFG_A"L90hr&5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  262 * FI26D" c5ass="560{sass="sref"ifT_BITd to 0_ida hIS_RDIMM_ENf="+De=um(  402 * ea26c.c#592" i561pment pret_pri32gister val * sbridge s/t FIXME: Cteralso be LRDIMM" id="L64" class="line" name="L63105"> 1053a52 * mo26MIT"598" i56et_pri32 ("oller=_is registerdd\n"d="L64""; class="line" name="L731">  262 */
5a hre56edac/sb_e3 href="drivBITd to 0_ida hctypng" PCI_DESCrAVE typnam_rb=>DRAE( 1033a5#define <5 href="+code2=PCI_26c.c#555" i564{sass="sref"} else " class="line" name="L830">  40 5) d to 0a href  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"oller=_is unregisterdd\n"d="L64""; class="line" name="L731">  26DRAE( 1033a5#include 5 href="+code2=PCI_26E_RE5ISION56i32   12  29progister val * sbridge s/t Oerall supported DDR3 DIMM"typns, therd ard 8 b id= avail" id" id="L64" class="line" name="L63105"> 1053a5#define <5 href="+code2=PCI_27a bi5 fiel57edac/sb_e3 hrDRAE( 1033a5#define <5 href="+code2=PCI_27comm5a hre57"L92" class="line" name="L920">  82 for 25) d to 0a hrefde=umci_chiL90" ="L90 =>0ac;
  40dram_rule 1033a5#define <5 href="+code2=PCI_27EAVE5MODE"57"L85" class="line" name="L825">  85 for 25) d to 0a hrefje=umci_chiL90" j"L90 =>0ac;
  40DRAE(, 5) d to 0a href cde=umci_chiL90" mcd , 5) d to 0a href cde=umci_chiL90" mcd , class="line" name="L830">  402     27c_ch5pset_577dac/sb_et_pri32     120  262     27c.c#5#L90"57opment pret_pri32 DRAE(fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  402     27c.c#540" i57i32  2 DRAE(  235#define <5 href="+code2=PCI_2802" 5laruc58edac/sb_e3 href="drivvvvvvvvv5) d to 0a href  40_db 0x3is_close_pt_  40_db  0,  4hreister val * beding">"Channel #%d  MTR%d ET%x\n"d="L64""e5) d to 0a hrefde=umci_chiL90" ="L90href=mca href="+cje=umci_chiL90" j"L90href=mca href="+ccode=um(  235#define <5 href="+code2=PCI_281_ch5pset_581pment pret_pri32>>>>>>>>ifT_BITd to 0_ida hIS_DIMM_PRESENTe=umci_chiL90" IS_DIMM_PRESENT 6, 25) d to 0a href cle=um(  40  DRAE(++" class="line" name="L931">  235#define <5 href="+code2=PCI_2EVICE5#L90"58"L34" class="line" name="L33104"> 1043a5
 ri32 DRAE(  235#define <5s="comment">2/* De2852" 5laruc585dac/sb_et_pri32 ri32 DRAE(b=>DRAE(  235#define <5st DRAE(b=>DRAE(  235#include 580, 0x88, 0x290, 0287_ch5pset_58class class="line" name="L931">  235# 1053a5#span cla5="drivers/ed2ac/sb289_ch5pset_58i32  (25) d to 0a hrefr href="+cod"sref">/edac/)DRAE(b*ref=tohm#define cMCde=uranksBITFL90cMCdef">b*ref=tohm#define b+code=uranksBITFL90b id="L90b*ref=tohm#define "+code=uranksBITFL90" id="L90) &gda&gda (20 - 3"" class="line" name="L931">  235#define <5 href="+code2=MAX_29D" c5#L90"59edac/sb_e3 href="drivvvvvvvvvvvvvvvvvDRAE(DRAE(  235#define <5drivers/edac2/sb_e29c.c#592" i59"L92" class="line" name="L920">  82  DRAE("mc#%d: channel %d, dimm %d, %Ld Mb (%d paged) b id: %d, r id: %d, row: %#x, cMC: %#x\n"d="L64"" class="line" name="L830">  31 DRAE(he5) d to 0a hrefde=umci_chiL90" ="L90href=mca href="+cje=umci_chiL90" j"L90h class="line" name="L830">  31 ri32 > DRAE(  31 ri32 > DRAE(, le"" class="line" name="L931">  235#define <5drivers/edac2/sb_e29c.c#597" i59"L97" class="line" name="L937">  27
5laruc597dac/sb_et_pri32     120b=>DRAE( 1033a5{
    120b=>32" class="line" name="L93"03"> 1033a5{span cla5itch(25) d to 0a hrefc+code=uranksBITFL90b id="L90b== 8) ?v;
 1033a6>        6       case 3:
DRAE( 1033a6
/601pment pret_pri32vvvvvvvvvvvvvvvv;
DRAE( 1033a6
2a href=6dhref="+code2=SAD_2IMIT"6pset_60et_pri32  DRAE(,  iznof25) d to 0a hrefdimme=um()h class="line" name="L830">  313       6 href="+code2=DRAM293DRA6nt">/60edac/sb_e3 href="driv  Dister val * beding">"CPU_SrcID#%u_Channel#%u_DIMM#%u"d="L64"" class="line" name="L830">  31 ri32 > DRAE(  236
5       6 href="+code2=DRAM295DRA676" i605dac/sb_et_pri32 ri320 class="line" name="L931">  12...de=6RA:uasier fo3 driv3032" 6laruc60isb11cc/sb120  12...de=6R */60i32   128>...de=6Rdrivers/eda2c/sb_290, 06c8,
<60"L59" class="line" name="L531">  299>...de=6Rtch( 1033a63 *   310omm6nt">/61d="L90 class="line" name="L931">  123* ret31c.c#692" i61"L92" class="line" name="L920">  82probeaructvoidref=ef="driva hrget_mller=_layouf="dstprobed;
>;
  236#include 6lt;  40;
>;
=>DRAE( 1033a6#include 6lt;proffffle 1033a6#a>...de=6lt;dram_rule 1033a6#7>...de=6lt;/edac/s;
 1033a6<8>...de=6lt;/edac/s;
 1033a6#9>...de=6lt; dram_rule 1033a6#include 6lt;dram_rule 1033a6#span cla6lt;/62"L92" class="line" name="L920">  82  1053a6#include 6lt; 1053a6#include 6lt; 1053a6#include 6lt;  26...de=6drivers/edac3/sb_e32c.c#697" i62c{sass="sref"Bister val * sbridge s/t Address r ige_is 32:28"*id="L64" class="line" name="L63105"> 1053a6#7>...de=6quot;fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  31              &5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26...de=6s="comment">3/* St32c.c#640" i62i32 =>DRAE(  26(21 +ref="8ode=dram_r vf="dst 1033a6static   82 =>DRAE(/evreme=um(/evrem 6, 25) d to 0a hreftmp_mbref="+cod"sref"tmp_mbasss, 1000hr&5) d to 0a hrefdbref="+cod"sref"kbasss"; class="line" name="L731">  26proDRAE("TOLM: %u.%03u GB (0x%016Lx)\n"d="L64""e5) d to 0a hrefcbref="+cod"sref"mbassshref=mca href="+cdbref="+cod"sref"kbasss,>25) d to 0a hrefr href="+cod"sref">/edac/)DRAE(  263/*  853 * Al335f="6river635dac/sb_et_prBister val * sbridge s/t Address r ige_is already 45:25"*id="L64" class="line" name="L63105"> 1053a63 */fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  31...de=6 href="+code3=SBRI337f="6river637dac/sb_et_pri32               &5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26 =>DRAE(  26...de=6drivers/edac3/sb_e33=DRA6lass=63i32 21 +ref="8ode=dram_r vf="dst 1033a63/*  123 * De341DRA6_ATTR6 c{sass="sref"ef="+code=dram_cbref="+cod"sref"mbasss>=>DRAE(/evreme=um(/evrem 6, 25) d to 0a hreftmp_mbref="+cod"sref"tmp_mbasss, 1000hr&5) d to 0a hrefdbref="+cod"sref"kbasss"; class="line" name="L731">  263 */ "TOHM: %u.%03u GB (0x%016Lx)"d="L64""e5) d to 0a hrefcbref="+cod"sref"mbassshref=mca href="+cdbref="+cod"sref"kbasss,>25) d to 0a hrefr href="+cod"sref">/edac/)DRAE(  26 1043a6#include 6lt; 1053a6
 1053a6
span cla6 href="+code3=sbri346DRA6_ATTR646{sasgister val * sbridge s"""""""""* TAD registers f">tain the interCeave wayness. Howe na, itd="L64" class="line" name="L63105"> 1053a6
7>...de=6 href="+code3=edac3mc_ch6pset_647dac/gister val * sbridge s"""""""""* seems simpler to just disco na it indirectly, with thed="L64" class="line" name="L63105"> 1053a6

 1053a6
9>...de=6s="comment">3/* 1053a63 * Ge350_ch6pset_65edac/sb_e3 hrDRAE( 1033a6ass="comm6nt">2 */0ac;
  40  1053a6fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  40 ri32 >   262/* 5) d to 0a hreflimif="dst=>DRAE(  262 * sb256_ch6pset_65"L97" class="line" name="L937">  272 */
6#L90"657dac/sb_et_pri32 ifT_!;
  236adefine <6drivers/edac2/sb_e25c.c#659" i65opment pret_pri32        f">tinue; class="line" name="L731">  26...de=6s="comment">2/*  262 * FI26D" c6ass="66edac/sb_e3 href="drivifT_BITd to 0_ida hlimif="dst1fda=>DRAE(  2362 * ea26c.c#692" i661pment pret_pri32>>>>>>>>break; class="line" name="L731">  262 * mo26MIT"698" i66et_pr class="line" name="L731">  262 */
6a hre66edac/sb_e3 href="drivBITd to 0_ida htmp_mbref="+cod"sref"tmp_mbasssb=>2BITd to 0_ida hlimif="dst+ 1) &gda&gda 20" class="line" name="L93"03"> 1033a6#define <6 href="+code2=PCI_26c.c#655" i66edac/sb_et_pri32 ef="+code=dram_cbref="+cod"sref"mbasss>=>DRAE(/evreme=um(/evrem 6, 25) d to 0a hreftmp_mbref="+cod"sref"tmp_mbasss, 1000hr&5) d to 0a hrefdbref="+cod"sref"kbasss"; class="line" name="L731">  26 5) d to 0a href  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"SAD#%d %s up to %u.%03u GB (0x%016Lx) InterCeave: %s reg=0x%08x\n"d="L64"" class="line" name="L830">  31 5) d to 0a href=_sadme=umci_chiL90" n_sadmasss, class="line" name="L830">  31          5) d to 0a hrefget_dram_atcle=um(  31         5) d to 0a hrefcbref="+cod"sref"mbassshref=mca href="+cdbref="+cod"sref"kbasss, class="line" name="L830">  31...de=6 href="+code2=PCI_26c.c#6pci_i66i32 /edac/)DRAE(1fda1fdac20L, class="line" name="L830">  31("8:6"d="L64"b:v;ister val * beding">"[8:6]XOR[18:16]"d="L64"" class="line" name="L830">  31vvvvvvvvv5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26 (  26 1043a6#define <6 href="+code2=PCI_27EAVE6MODE"67edac/sb_et_pri32 ef="+code=dram_+devread_f">fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  40                       &5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26BITd to 0_ida hsad_pkge=uef="BITF =sssad_pkg 6, 25) d to 0a hrefrege=uef="BITF =ssregassshr "; class="line" name="L731">  262     27c_ch6pset_677dac/sb_et_pri32 for 25) d to 0a hrefje=umci_chiL90" j"L90 =>0ac;
  402     27c.c#6#L90"67opment pret_pri32 ifT_BITd to 0_ida hje=umci_chiL90" j"L90 1gda 0 &&v5) d to 0a hrefsad_interC_RA" cnnel_chiasad_interCasssb==>BITd to 0_ida hsad_pkge=uef="BITF =sssad_pkg 6, 25) d to 0a hrefrege=uef="BITF =ssregassshrBITd to 0_ida hje=umci_chiL90" j"L90"" class="line" name="L931">  236#span cla6s="comment">2     27c.c#640" i67i32    26  12>>>>>>>>5) d to 0a href  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"SAD#%d, interCeave #%d: %d\n"d="L64"" class="line" name="L830">  31   5) d to 0a href=_sadme=umci_chiL90" n_sadmasss, 5) d to 0a hrefje=umci_chiL90" j"L90href=mca href="+csad_pkge=uef="BITF =sssad_pkg 6, 25) d to 0a hrefrege=uef="BITF =ssregassshrBITd to 0_ida hje=umci_chiL90" j"L90""; class="line" name="L731">  26  12  122/* De2852" 6laruc68"L76" class="line" name="L731">  26 1053a6#include 680, 0x88, 0x290, 0287_ch6pset_687dac/gister val * sbridge s"""""""""* Step 3) Get TAD r iged="L64" class="line" name="L63105"> 1053a6# 1053a6#span cla6="drivers/ed2ac/sb289_ch6pset_68i32  1033a6#define <6 href="+code2=MAX_29D" c6#L90"69edac/sb_e3 hrfor 25) d to 0a href=_tadme=umci_chiL90" n_tadmasss =>0ac;
  40gf="+code=dram_+devread_f">fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  40  >>>>>>&5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26=>DRAE(  26 ifT_BITd to 0_ida hlimif="dst1fda=>DRAE(  236#define <6 href="+code2=DRAM295DRA6#L90"695dac/sb_et_pri32 ri32break; class="line" name="L731">  262BITd to 0_ida hlimif="dst+ 1) &gda&gda 20" class="line" name="L93"03"> 1033a6static ch6r *  236{
ef="+code=dram_cbref="+cod"sref"mbasss>=>DRAE(/evreme=um(/evrem 6, 25) d to 0a hreftmp_mbref="+cod"sref"tmp_mbasss, 1000hr&5) d to 0a hrefdbref="+cod"sref"kbasss"; class="line" name="L731">  26 "TAD#%d: up to %u.%03u GB (0x%016Lx), socket interCeave %d, mller=_interCeave %d, TGT: %d, %d, %d, %d, reg=0x%08x\n"d="L64"" class="line" name="L830">  31        7       case 3:
  311       7 rivers/edac2/sb_e29c.c#7nt">/701pment pret_pri32vvvvvvvvv(25) d to 0a hrefr href="+cod"sref">/edac/)DRAE(1fda1fdac20L, class="line" name="L830">  31  25) d to 0a hrefrule" class="sref">dram_r)DRAE(  313       7 href="+code2=DRAM293DRA7nt">/70edac/sb_e3 href="driv dram_r)DRAE(  314       7 href="+code2=INTE294_ch7#L90"70edac/sb_et_pri32 ri32 25) d to 0a hrefrule" class="sref">dram_r)DRAE(  315       7 href="+code2=DRAM295DRA776" i705dac/sb_et_pri32 ri32 25) d to 0a hrefrule" class="sref">dram_r)DRAE(  316       7 rivers/edac2/sb_e29c.c#7laruc70isb11cc/sb120 25) d to 0a hrefrule" class="sref">dram_r)DRAE(  317       7  */707dac/sb_et_pri32          25) d to 0a hrefrule" class="sref">dram_r)DRAE(  318       7 drivers/eda2c/sb_290, 07c8,
<70opment pret_pri32         5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  269>...de=7Rtch(  263 *   310omm7nt">/71i32   123* ret31c.c#792" i71"L92" class="line" name="L920">  82  1053a7#include 7lt; 1053a7#4       7lt; 1053a7#include 7lt;profor 25) d to 0a hrefde=umci_chiL90" ="L90 =>0ac;
  40...de=7lt;" class="line" name="L931">  237#7>...de=7lt;tinue; class="line" name="L731">  26...de=7lt;0ac;
  40...de=7lt; fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  40  40/721pment pret_pri32vvvvvvvvvvvvvvvvvvvvvvvvvvvvvv&5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26 5) d to 0a hreftmp_mbref="+cod"sref"tmp_mbasssb=>DRAE( 1033a7#include 7lt;=>DRAE(/evreme=um(/evrem 6, 25) d to 0a hreftmp_mbref="+cod"sref"tmp_mbasss, 1000hr&5) d to 0a hrefdbref="+cod"sref"kbasss"; class="line" name="L731">  26 ri325) d to 0a href  40_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"TAD CH#%d, offset #%d: %u.%03u GB (0x%016Lx), reg=0x%08x\n"d="L64"" class="line" name="L830">  31                  TR  31...de=7drivers/edac3/sb_e32c.c#797" i72isb11cc/sb120  31...de=7quot;/edac/)DRAE(1fda1fdac20L, class="line" name="L830">  31              a>e5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26...de=7s="comment">3/* St32c.c#740" i72i32   12   12  82  1053a7sinclude 7lt; 1053a7sinclude 7s="comment">3/* 1053a73 * Al335f="7river73elaructf">profor 25) d to 0a hrefde=umci_chiL90" ="L90 =>0ac;
  403 */" class="line" name="L931">  237<7>...de=7 href="+code3=SBRI337f="7river737dac/sb_et_pri32         f">tinue; class="line" name="L731">  26for 25) d to 0a hrefje=umci_chiL90" j"L90 =>0ac;
  40...de=7drivers/edac3/sb_e33=DRA7lass=73i32 fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  403/*  403 * De341DRA7_ATTR741pment pret_pri32vvvvvvvvvvvvvvvvvvvvvvvvvvvvvv&5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  263 */  26  237#include 7lt;tinue; class="line" name="L731">  26  26DRAE( 1033a7
7>...de=7 href="+code3=edac3mc_ch7pset_747dac/sb_et_pri32         gf="+code=dram_rir_way="dst1>1fda1fdacDRAE( 1033a7

        ef="+code=dram_cbref="+cod"sref"mbasss>=>DRAE(/evreme=um(/evrem 6, 25) d to 0a hreftmp_mbref="+cod"sref"tmp_mbasss, 1000hr&5) d to 0a hrefdbref="+cod"sref"kbasss"; class="line" name="L731">  26...de=7s="comment">3/* "CH#%d RIR#%d, limif: %u.%03u GB (0x%016Lx), way: %d, reg=0x%08x\n"d="L64"" class="line" name="L830">  313 * Ge350_ch7pset_75edac/sb_e3 href="drivvvvvvvvvvvvvvvvv TR  312 */vvvvvvvvvvvvvvvvv5) d to 0a hrefcbref="+cod"sref"mbassshref=mca href="+cdbref="+cod"sref"kbasss, class="line" name="L830">  31 /edac/)DRAE(1fda1fdac20L, class="line" name="L830">  31  31 ri32 >5) d to 0a hrefrege=uef="BITF =ssregasss"" class="line" name="L93"03"> 1033a7a2/*  262 * sb256_ch7pset_75isb11cc/sb1200ac;
(  402 */
7#L90"757dac/sb_et_pri32 i32 >5) d to 0a href+devread_f">fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  40        et_pri32 ri32 >5) d to 0a hrefrir_offsetg" PCI_DESCrAVErir_offsetpm*"TTR  40...de=7s="comment">2/*    262 * FI26D" c7ass="76edac/sb_e3 href="drivi32 >5) d to 0a hreftmp_mbref="+cod"sref"tmp_mbasssb=>DRAE(  262 * ea26c.c#792" i76"L92" class="line" name="L920">  822 * mo26MIT"798" i76et_pri32  DRAE(=>DRAE(/evreme=um(/evrem 6, 25) d to 0a hreftmp_mbref="+cod"sref"tmp_mbasss, 1000hr&5) d to 0a hrefdbref="+cod"sref"kbasss"; class="line" name="L731">  262 */
7a hre76edac/sb_e3 href="drivri32 DRAE("CH#%d RIR#%d INTL#%d, offset %u.%03u GB (0x%016Lx), tgt: %d, reg=0x%08x\n"d="L64"" class="line" name="L830">  31 ref="drivri32 DRAE(  31   DRAE(  31                 (25) d to 0a hrefr href="+cod"sref">/edac/)DRAE(1fda1fdac20L, class="line" name="L830">  31                          (5) d to 0a hrefrule" class="sref">dram_r)DRAE(  31         ri32 DRAE(  26...de=7 href="+code2=PCI_26c.c#7pci_i76i32   12  12  12  12 1043a7#define <7 href="+code2=PCI_27EAVE7MODE"77edac/bed;
>;
opment5) d to 0a hrefndev_ide=udevicf_idb_endev_id 6, " class="line" name="L931">  237#define <7drivers/edac2/sb_e27c.c#776" i775dac/" class="line" name="L830">  40;
>;
  262     27c_ch7pset_77class class="line" name="L931">  237#2     27c.c#7#L90"77h32   402     27c.c#740" i77i32 BITd to 0_ida hndev_ide=udevicf_idb_endev_id 6, " class="line" name="L931">  237#define <7 href="+code2=PCI_2802" 7laruc78edac/sb_e3 href="drivi32 return>;
  26  12 return>;
  26  12  852/* De2852" 7laruc78"L76"static_int 5) d to 0a hrefget_mller=_error_datae=udevicf_idb_eget_mller=_error_data 6, 2bed;
>;
  31e5) d to 0a hrefr href="+cod"sref">/edac/e5) d to 0a hrefaddle=um(  31                  5) d to 0a hrefu8e" class="sref">opment>;
  31         ri32longt>;
  31  opment>;
  31;
  237#define <7drivers/edac2/sb_e29c.c#792" i791pmen" class="line" name="L830">  40 bed;
>>>>*;
  26;
=>DRAE(  26   26   26   26
7laruc797dac/sb_et_prunsignedri32   26 dram_r rivpri32   26 opment rivpri32   26        8       case 3:
(dram_r rivpri32   261       8 rivers/edac2/sb_e29c.c#8nt">/80c{sass="sref"ef="+code=dram_rule" class="sref">dram_r rivpri32   262       8 href="+code2=SAD_2IMIT"8pset_80et_pri32 ef="+code=dram_rule" class="sref">dram_r rivpri32   263       8 href="+code2=DRAM293DRA8nt">/80edac/sb_e3 hr5) d to 0a hrefr href="+cod"sref">/edac/erivpri32  1033a8>4       8 href="+code2=INTE294_ch8#L90"80"L85" class="line" name="L825">  855       8 href="+code2=DRAM295DRA876" i80"L76" class="line" name="L731">  266       8 rivers/edac2/sb_e29c.c#8laruc80c{sass="sref"Bister val * sbridge s/td="L64" class="line" name="L63105"> 1053a8>7       8  */807dac/gister val * sbridge s"""""""""* Step 0) CheckvifTthe address is at special mller=_r igesd="L64" class="line" name="L63105"> 1053a8>8       8 drivers/eda2c/sb_290, 08c8,
<80opmengister val * sbridge s"""""""""* The checkvbellow is probably enough to fill all cases whered="L64" class="line" name="L63105"> 1053a8>9>...de=8Rtch( 1053a83 *   310omm8nt">/81i32 1053a83* ret31c.c#892" i81"L92"gister val * sbridge s"""""""""*Tmller=_f">troller would generate an error on that r ige.d="L64" class="line" name="L63105"> 1053a8
 1053a8#include 8lt;/edac/)ref=mca href="+c vf="dst1amp;&v_BITd to 0_ida haddle=um(1fda1fdac32))) " class="line" name="L830">  40 ef="+code=dram_sprintfe=uef="BITF =sssprintf 6, 25) d to 0a hrefmsge=uef="BITF =ssmsg 6, hreister val * beding">"Error at TOLM area, on addl 0x%08Lx"d="L64""e5) d to 0a hrefaddle=um(  26 return>-5) d to 0a hrefEINVALe=um(  26...de=8lt;  12...de=8lt;2BITd to 0_ida hr href="+cod"sref">/edac/)DRAE(  40...de=8lt;"Error at MMIOH area, on addl 0x%016Lx"d="L64""e5) d to 0a hrefaddle=um(  26...de=8lt; -5) d to 0a hrefEINVALe=um(  26   12/82"L92" class="line" name="L920">  82 Bister val * sbridge s/td="L64" class="line" name="L63105"> 1053a8#include 8lt; 1053a8#4       8lt; 1053a8#include 8lt;profor 25) d to 0a href=_sadme=umci_chiL90" n_sadmasss =>0ac;
  40...de=8drivers/edac3/sb_e32c.c#897" i82isb11cc/sb120(fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  40...de=8quot;  26  26...de=8s="comment">3/* St32c.c#840" i82i32   238static tinue; class="line" name="L731">  26  82 =>DRAE(  261fda=>DRAE(  403/* ri325) d to 0a hrefsprintfe=uef="BITF =sssprintf 6, 25) d to 0a hrefmsge=uef="BITF =ssmsg 6, hreister val * beding">"Can't disco na the mller=_ ocket"d="L64""; class="line" name="L731">  263 * Al335f="8river835dac/sb_et_pri32  -5) d to 0a hrefEINVALe=um(  263 */  12...de=8 href="+code3=SBRI337f="8river837dac/sb_et_pri32 ifTv_BITd to 0_ida haddle=um(BITd to 0_ida hlimif="dst  238s
>>>>>>>>break; class="line" name="L731">  26...de=8drivers/edac3/sb_e33=DRA8lass=83i32   263/*   123 * De341DRA8_ATTR841pment pret_pifT_BITd to 0_ida h=_sadme=umci_chiL90" n_sadmasss ==>BITd to 0_ida hMAX_SADe=umci_chiL90" MAX_SADasss" " class="line" name="L830">  403 */ "Can't disco na the mller=_ ocket"d="L64""; class="line" name="L731">  26-5) d to 0a hrefEINVALe=um(  26  12;
BITd to 0_ida hget_dram_attle=um(  26BITd to 0_ida hINTERLEAVE_MODE_RA" cnnel_chiaINTERLEAVE_MODE 6, 25) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  26...de=8 href="+code3=edac3mc_ch8pset_84class class="line" name="L931">  238

 fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  40...de=8s="comment">3/*   263 * Ge350_ch8pset_85edac/sb_e3 hrDRAE(BITd to 0_ida hsad_pkge=uef="BITF =sssad_pkg 6, 25) d to 0a hrefrege=uef="BITF =ssregasss, 0"; class="line" name="L731">  262 */0ac;
  40 1amp;&vDRAE(BITd to 0_ida hsad_pkge=uef="BITF =sssad_pkg 6, 25) d to 0a hrefrege=uef="BITF =ssregasss, BITd to 0_ida h ad_waye=uef="BITF =sssad_wayasss"" class="line" name="L931">  238  26 DRAE(BITd to 0_ida hsad_pkge=uef="BITF =sssad_pkg 6, 25) d to 0a hrefrege=uef="BITF =ssregasss, BITd to 0_ida h ad_waye=uef="BITF =sssad_wayasss"; class="line" name="L731">  262/* BITd to 0_ida h  26_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"SAD_interCeave #%d: %d\n"d="L64"" class="line" name="L830">  312 * sb256_ch8pset_85isb11cc/sb120  26...de=8s="comment">2 */
8#L90"857dac/sb_et_pr0 class="line" name="L931">  12 "mc#%d: Error detected on SAD#%d: address 0x%016Lx 1fdac0x%016Lx, InterCeave [%d:6]%s\n"d="L64"" class="line" name="L830">  31...de=8s="comment">2/*   312 * FI26D" c8ass="86edac/sb_e3 href="driviTR  312 * ea26c.c#892" i861pment pret_pri32vBITd to 0_ida haddle=um(  312 * mo26MIT"898" i86et_pri32   312 */
8a hre86edac/sb_e3 href="drivrBITd to 0_ida h ad_waye=uef="BITF =sssad_wayasss + 7" class="line" name="L830">  31 ""d="L64" :reister val * beding">"XOR[18:16]"d="L64""; class="line" name="L731">  26  238__BITd to 0_ida haddle=um(1amp; 7; class="line" name="L731">  26...de=8 href="+code2=PCI_26E_RE8ISION867dac/sb_et_prelse class="line" name="L731">  26BITd to 0_ida hidxe=umci_chiL90" =dxasssb=>_BITd to 0_ida haddle=um(  26...de=8 href="+code2=PCI_26c.c#8pci_i86i32   40  40BITd to 0_ida hidxe=umci_chiL90" =dxasssb=>0" class="line" name="L93"03"> 1033a8#span cla8 href="+code2=PCI_27MIT"898" i87et_pri32   26  40 DRAE(DRAE(  26 break; class="line" name="L731">  26  40...de=8s="comment">2     27c_ch8pset_877dac/sb_et_pri32 DRAE(DRAE(  262     27c.c#8#L90"87opment pret_pri32break; class="line" name="L731">  26...de=8s="comment">2     27c.c#840" i87i32   40  26  40 "Can't disco na  ocket_interCeave"d="L64""; class="line" name="L731">  26-5) d to 0a hrefEINVALe=um(  26  122/* De2852" 8laruc885dac/sb_et_pr>;
BITd to 0_ida hsad_interCeave_RA" cnnel_chiasad_interCeavepm*"TTR  26"SAD_interCeave index: %d (wayness %d)b=>CPU  ocket_%d\n"d="L64"" class="line" name="L830">  31  TR;
  26  26  1053a8#define <8 href="+code2=MAX_29D" c8#L90"89i32 1053a8#define <8drivers/edac2/sb_e29c.c#892" i89"L92"gister val * sbridge s"""""""""*Tright PCI registersd="L64" class="line" name="L63105"> 1053a8#define <8 href="+code2=SAD_2IMIT"8laruc89i32 1053a8#define <8 href="+code2=DRAM293DRA8_ATTR89edac/sb_e3 hr5) d to 0a hrefnew_mdee=um(BITd to 0_ida hget_mdevfor_ndev_ide=udevicf_idb_eget_mdevfor_ndev_id 6, 2>;
  26  40 BITd to 0_ida hsprintfe=uef="BITF =sssprintf 6, 25) d to 0a hrefmsge=uef="BITF =ssmsg 6, hreister val * beding">"Sedfor  ocket_#%u wasn't initialized"d="L64"" class="line" name="L830">  31;
  26
8laruc897dac/sb_et_pri32 return>-5) d to 0a hrefEINVALe=um(  26   12 BITd to 0_ida hnew_mdee=um(  26        9       case 3:
(=>DRAE(  261       9 rivers/edac2/sb_e29c.c#9nt">/90"L92" class="line" name="L920">  822       9 href="+code2=SAD_2IMIT"9pset_90et_pri32 Bister val * sbridge s/td="L64" class="line" name="L63105"> 1053a9>3       9 href="+code2=DRAM293DRA9nt">/90edac/gister val * sbridge s"""""""""* Step 2) Get mller=_fhannelpm"L64" class="line" name="L63105"> 1053a9>4       9 href="+code2=INTE294_ch9#L90"90"L85"gister val * sbridge s"""""""""*id="L64" class="line" name="L63105"> 1053a9>5       9 href="+code2=DRAM295DRA976" i905dac/sb_e3 hrDRAE( 1033a9>6       9 rivers/edac2/sb_e29c.c#9laruc90c{sass="sref"for 25) d to 0a href=_tadme=umci_chiL90" n_tadmasss =>0ac;
  407       9  */907dac/sb_et_pri32 DRAE(fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  408       9 drivers/eda2c/sb_290, 09c8,
<90opment pret_pri32         ri32   269>...de=9Rtch(=>DRAE(  263 *   310omm9nt">/91edac/sb_e3 href="drivifT_BITd to 0_ida hlimif="dst1fda=>DRAE(  403* ret31c.c#992" i911pment pret_pri32vvvvvvvvef=mca href="+csprintfe=uef="BITF =sssprintf 6, 25) d to 0a hrefmsge=uef="BITF =ssmsg 6, hreister val * beding">"Can't disco na the mller=_fhannel"d="L64""; class="line" name="L731">  26 return>-5) d to 0a hrefEINVALe=um(  26  12 ifTv_BITd to 0_ida haddle=um(BITd to 0_ida hlimif="dst  239#include 9lt;         break; class="line" name="L731">  26...de=9lt;(  26...de=9lt;  12...de=9lt;=>DRAE(  26...de=9lt; =>DRAE(  26  1053a9#span cla9lt;/92"L92"gister val * sbridge s"""""""""*TFIXME: Is itTright to always use_fhannel 0"for offsets?d="L64" class="line" name="L63105"> 1053a9# 1053a9#include 9lt;fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst  40 ref="drivri32  40                 &5) d to 0a hreftad_offsetg" PCI_DESCrAVEtad_offsetpm*""; class="line" name="L731">  26...de=9drivers/edac3/sb_e32c.c#997" i92isb11 class="line" name="L731">  26...de=9quot;== 3" class="line" name="L931">  239#
BITd to 0_ida haddle=um(  26...de=9s="comment">3/* St32c.c#940" i92i32   26BITd to 0_ida haddle=um(  26DRAE(  26  26 1053a9sinclude 9s="comment">3/*== 3 ???d="L64" class="line" name="L63105"> 1053a9sinclude 9s="comment">3 * Al335f="9river935dac/gister val * sbridge s"""""""""*id="L64" class="line" name="L63105"> 1053a93 */  40...de=9 href="+code3=SBRI337f="9river937dac/sb_et_prcase 0: class="line" name="L830">  40BITd to 0_ida hbase_che=uef="BITF =ssbase_chpm*">=>DRAE(  26...de=9drivers/edac3/sb_e33=DRA9lass=93i32   263/*  403 * De341DRA9_ATTR941pment pret_pri32BITd to 0_ida hbase_che=uef="BITF =ssbase_chpm*">=>DRAE(  263 */   26  40 DRAE(=>DRAE(  26 break; class="line" name="L731">  26  40...de=9 href="+code3=edac3mc_ch9pset_947dac/sb_et_pri32 DRAE(=>DRAE(  26break; class="line" name="L731">  26...de=9s="comment">3/*   403 * Ge350_ch9pset_95edac/sb_e3 href="drivBITd to 0_ida hsprintfe=uef="BITF =sssprintf 6, 25) d to 0a hrefmsge=uef="BITF =ssmsg 6, hreister val * beding">"Can't disco na the TAD target"d="L64""; class="line" name="L731">  262 */return>-5) d to 0a hrefEINVALe=um(  26 0 class="line" name="L931">  12;
=>1>1fda1fdacDRAE(  26  852/*  402 * sb256_ch9pset_95isb11cc/sb120;
|=>1>1fda1fdac__BITd to 0_ida hbase_che=uef="BITF =ssbase_chpm*">+ 2) 1#37;r4"; class="line" name="L731">  26...de=9s="comment">2 */
9#L90"957dac/sb_et_pri32 switch_BITd to 0_ida hch_waye=uef="BITF =ssch_wayasss" " class="line" name="L830">  40case 2: class="line" name="L830">  40...de=9s="comment">2/*   402 * FI26D" c9ass="96edac/sb_e3 href="drivif="drivBITd to 0_ida hsck_xche=uef="BITF =sssck_xchpm*">=>1>1fda1fdacDRAE(*T_BITd to 0_ida hch_waye=uef="BITF =ssch_wayasss>1gda1gda 1"; class="line" name="L731">  262 * ea26c.c#992" i961pment pret_pri32vvvvvvvvbreak; class="line" name="L731">  262 * mo26MIT"998" i96et_pri32   402 */
9a hre96edac/sb_e3 href="drivrf="drivBITd to 0_ida hsprintfe=uef="BITF =sssprintf 6, 25) d to 0a hrefmsge=uef="BITF =ssmsg 6, hreister val * beding">"Invalid mirror set. Can't de hre addr"d="L64""; class="line" name="L731">  26 return>-5) d to 0a hrefEINVALe=um(  26 0 class="line" name="L931">  12  26...de=9 href="+code2=PCI_26E_RE9ISION967dac/sb_et_pri32 DRAE(=>(1>1fda1fdacDRAE(*Tef=bool_SBRIDGEch_waye=uef="BITF =ssch_wayasss; class="line" name="L731">  26  26...de=9 href="+code2=PCI_26c.c#9pci_i96i32   239#define <9 href="+code2=PCI_27a bi9 fiel97edac/sb_e3 href="driv>;
|=>1>1fda1fdac__BITd to 0_ida hbase_che=uef="BITF =ssbase_chpm*">+ 1) 1#37;r4"; class="line" name="L731">  26  82 BITd to 0_ida hoffsetg" PCI_DESCrAVEoffsetpm*">=>DRAE(  26  26"TAD#%d: address 0x%016Lx 1fdac0x%016Lx,  ocket_interCeave_%d,_fhannel interCeave_%d (offset 0x%08Lx), index_%d,_base_fh:_%d,_fh masd: 0x%02lx\n"d="L64"" class="line" name="L830">  31 c;
  31  31...de=9s="comment">2     27c_ch9pset_977dac/sb_et_pri32 rBITd to 0_ida hlimif="dst  312     27c.c#9#L90"97opment pret_pri32>2BITd to 0_ida hrule" class="sref">dram_r)DRAE(  31...de=9s="comment">2     27c.c#940" i97i32   31  31vBITd to 0_ida hidxe=umci_chiL90" =dxasss" class="line" name="L830">  31 (  31;
  26  852/* De2852" 9laruc985dac/sb_et_prBister val * sbridge s/t Calculate fhannel address *id="L64" class="line" name="L63105"> 1053a9#define <9st  1053a9#7>...de=980, 0x88, 0x290, 0287_ch9pset_98class class="line" name="L931">  239#define <9lt;1gda BITd to 0_ida haddle=um(  40 "Can't calculate fh addr: TAD offset 0x%08Lx is too high"for addl 0x%08Lx!"d="L64"" class="line" name="L830">  31  26return>-5) d to 0a hrefEINVALe=um(  26 0 class="line" name="L931">  12DRAE(  26 1053a9#define <9 href="+code2=DRAM295DRA9#L90"995dac/sb_e3 hrDRAE(=>DRAE(  26remo n 6 bits *id="L64" class="line" name="L63105"> 1053a9#7>...de=9r *  26 DRAE((  26  26        10>   (  261       10>rivers/edac2/sb_e29c.c#10>ri>10>c{sass="sref"ef="+code=dram_addle=um(DRAE(  262       10>href="+code2=SAD_2IMIT"10>hr>10>et_pr#endif class="line" name="L731">  263       10>href="+code2=DRAM293DRA10>hr>10>edac/sb_e3 hrBister val * sbridge s/t Reco na the valt 6 bits *id="L64" class="line" name="L63105"> 1053a10>4       10>href="+code2=INTE294_ch10>hr>10>edac/sb_et_pr5) d to 0a hrefch_addle=um(|=>DRAE(  265       10>href="+code2=DRAM295DRA10>hr>10>5lass class="line" name="L931">  2310>6       10>rivers/edac2/sb_e29c.c#10>ri>10>isb11cc/sb1205ister val * sbridge s/td="L64" class="line" name="L63105"> 1053a10>7       10> * 1053a10>8       10>drivers/eda2c/sb_290, 010>dr>10>8dac/gister val * sbridge s"""""""""*id="L64" class="line" name="L63105"> 1053a10>9       10>tch(0ac;
  403 *   310omm10s=">10s=32 fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst(  403* ret31c.c#10s=">10s1pment pret_pri32vvvvvvvv (  4010set_pri32 >>>>>>>>>>>>>>&5) d to 0a hrefrege=uef="BITF =ssregasss"; class="line" name="L731">  2610s3dac/ class="line" name="L731">  2610sedac/sb_et_pri32 ifT_!;
  2310s5       10lt;10s5dac/sb_et_pri32         f">tinue; class="line" name="L731">  2610sisb11 class="line" name="L731">  2610s7dac/sb_et_pri32 DRAE(=>DRAE(  2610sopment pret_pri32BITd to 0_ida hmbe=uef="BITF =ssmbpm*" =>DRAE(1gda1gda 20, 10> ,>&5) d to 0a hrefkbe=uef="BITF =sskbasss"; class="line" name="L731">  2610si32 "RIR#%d,_limif:_%u.%03u GB (0x%016Lx),_way: %d\n"d="L64"" class="line" name="L830">  3110ltt_pri32 >DRAE(  3110l1pment pret_pri32vvvvvvvv BITd to 0_ida hmbe=uef="BITF =ssmbpm*"" DRAE(  3110let_pri32 >BITd to 0_ida hlimif="dst  3110ledac/sb_e3 href="drivrf="driv>1>1fda1fdacDRAE(  2610ledac/sb_et_pri32 ifTv_BITd to 0_ida hch_addle=um(1fda=>BITd to 0_ida hlimif="dst  2310l5       10lt;10l5dac/sb_et_pri32         break; class="line" name="L731">  2610lisb11cc/sb120} class="line" name="L731">  2610l7dac/sb_et_prifT_BITd to 0_ida h=_rile=um(BITd to 0_ida hMAX_RIR_RANGESe=um(  4010lopment pret_pri32BITd to 0_ida hsprintfe=uef="BITF =sssprintf 6, 25) d to 0a hrefmsge=uef="BITF =ssmsg 6, hreister val * beding">"Can't disco na the mller=_rankrfor fh addr 0x%08Lx"d="L64"" class="line" name="L830">  313/* St32c.c#10s=">10li32   2610hrpment pret_pri32return>-5) d to 0a hrefEINVALe=um(  2610h1sb11cc/sb120} class="line" name="L731">  2610het_pri32 BITd to 0_ida hril_way="dst=>DRAE(  2610h3dac/sb_et_prifT_BITd to 0_ida h+vf="dst  231034       10s="comment">3/*10hedac/sb_et_pri32 DRAE(_BITd to 0_ida hch_addle=um(1gda1gda 6)" class="line" name="L731">  263 * Al335f="10s=">10h5dac/sb_et_prelse class="line" name="L731">  263 */10hisb11cc/sb120_BITd to 0_ida hch_addle=um(1gda1gda 13);hrBister val * sbridge s/t FIXME: Datasheet says to shift b=_15"*id="L64" class="line" name="L63105"> 1053a1037       10 href="+code3=SBRI337f="10 hr>10h7dac/sb_et_prDRAE(1>1fda1fdacDRAE(  2610hopmen class="line" name="L731">  2610hi32 fig_dworde=udevicf_idb_e devread_f">fig_dword 6, 25) d to 0a href+vf="dst(  403/*10s=t_pri32 >>>>>>DRAE((  403 * De341DRA10s=">10s1pment pret_pri32vvvvvvvv   263 */10set_pri32 >;
=>DRAE(  2610s3dac/ class="line" name="L731">  2610sedac/sb_et_pr5) d to 0a href  26_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"RIR#%d: fhannel address 0x%08Lx 1fdac0x%08Lx, RIR_interCeave_%d,_index_%d\n"d="L64"" class="line" name="L830">  3110s5dac/sb_et_pri32 c;
  3110sisb11cc/sb120  3110s7dac/sb_et_pri32 rBITd to 0_ida hlimif="dst  3110sopment pret_pri32>DRAE(  313/*10si32   263 * Ge350_ch10s=">10s=dac/ class="line" name="L731">  262 */10s1pment pret_preturn>0" class="line" name="L93"03"> 1033a10s2       10E_IMC_RARANK_EVEN_ERR_C310E_I>10set_pr} class="line" name="L731">  2610s3dac/ class="line" name="L731">  2610s"L85"gister val * sbridge s/****************************************************************************d="L64" class="line" name="L63105"> 1053a1055       10s="comment">2/*10s5dac/gister val * sbridge s""""""""Device initialization rout2/*s: put/get, init/exifas"L64" class="line" name="L63105"> 1053a1056       10s="comment">2 * sb256_ch10s=">10s6dac/gister val * sbridge s"****************************************************************************id="L64" class="line" name="L63105"> 1053a1057       10s="comment">2 */
10s=">10sclass class="line" name="L931">  2310s8       10drivers/edac2/sb_e25c.c#10dri>10s8dac/gister val * sbridge s/td="L64" class="line" name="L63105"> 1053a1059       10s="comment">2/*10s9dac/gister val * sbridge s"*""""""sbridge_put_all_devices 'put' all the devices that we havepm"L64" class="line" name="L63105"> 1053a106        10s="comment">2 * FI26D" c10s=">10s=dac/gister val * sbridge s"*""""""""""""""""""""""""""""""reserved via 'get'pm"L64" class="line" name="L63105"> 1053a1061       10s="comment">2 * ea26c.c#10s=">10s"L92"gister val * sbridge s"*id="L64" class="line" name="L63105"> 1053a1062       10s="comment">2 * mo26MIT"10s=">10set_prstatic void>BITd to 0_ida hsbridge_put_devicese=uef="BITF =sssbridge_put_devices 0,  sedBITd to 0_ida hsbridge_deve=uef="BITF =sssbridge_devpment>;
  231063       10s="comment">2 */
10s=">10s3dac/" class="line" name="L830">  4010sedac/sb_et_prina>BITd to 0_ida hee=um(  2610s5lass class="line" name="L931">  231066       10 href="+code2=PCI_26c.c#10 hr>10sisb11cc/sb1205) d to 0a href  26_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"\n"d="L64""" class="line" name="L731">  2610s7dac/sb_et_prfor 25) d to 0a hrefee=um(0ac;
(  4010sopment pret_pri32sedBITd to 0_ida h devdeve=uef="BITF =ss devdevpment>;
BITd to 0_ida hsbridge_deve=uef="BITF =sssbridge_devpmen-&gda5) d to 0a hrefpdeve=uef="BITF =ss devpmenTTR  2610si32   23107        10 href="+code2=PCI_27a bi10 hr>10 hdac/sb_et_pri32         f">tinue; class="line" name="L731">  2610 1pment pret_pri32BITd to 0_ida h  26_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"Remo ing dev %02x:%02x.%d\n"d="L64"" class="line" name="L830">  3110 et_pri32 >BITd to 0_ida hpdeve=uef="BITF =ss devpmen-&gda5) d to 0a hrefbume=umci_chiL90" bumpmen-&gda5) d to 0a hrefnumbele=um(  3110 edac/sb_e3 href="drivrf="driv>5) d to 0a hrefPCI_SLOT="dst(  2610 edac/sb_et_pri32 DRAE(  2610 5dac/sb_et_pr} class="line" name="L731">  2610 6t_pr} class="line" name="L731">  262     27c_ch10s=">10 class class="line" name="L931">  231078       10s="comment">2     27c.c#10s=">10 8t_prstatic void>BITd to 0_ida hsbridge_put_all_devicese=uef="BITF =sssbridge_put_all_devices 6, 2void" class="line" name="L931">  231079       10s="comment">2     27c.c#10s=">10 9dac/" class="line" name="L830">  4010 hdac/sb_et_prsedBITd to 0_ida hsbridge_deve=uef="BITF =sssbridge_devpment>;
;
  2610 "L92" class="line" name="L920">  8210 et_pri32 BITd to 0_ida hlistvfor_each_dgery_safe="dst&5) d to 0a hrefsbridge_  40_liste=uef="BITF =sssbridge_  40_listpmen,t;
  4010 edac/sb_e3 href="drivBITd to 0_ida hsbridge_put_devicese=uef="BITF =sssbridge_put_devices 0,  ;
  2610 edac/sb_et_pri32 DRAE(  262/* De2852" 10s=">10 5dac/sb_et_pr} class="line" name="L731">  2610 6t_pr} class="line" name="L731">  2610 class class="line" name="L931">  231088       10lt; 1053a1089       10="drivers/ed2ac/sb289_ch10="d>10 9dac/gister val * sbridge s"*""""""sbridge_get_all_devices Find and>perform 'get' operation on the MCH'sd="L64" class="line" name="L63105"> 1053a109        10 href="+code2=MAX_29D" c10 hr>10 hdac/gister val * sbridge s"*""""""""""""""""""""""device/functions we want to s="erencerfor this ne" nad="L64" class="line" name="L63105"> 1053a1091       10drivers/edac2/sb_e29c.c#10dri>10 "L92"gister val * sbridge s"*d="L64" class="line" name="L63105"> 1053a1092       10 href="+code2=SAD_2IMIT"10 hr>10 i32func 2d="L64" class="line" name="L63105"> 1053a1093       10 href="+code2=DRAM293DRA10 hr>10 3L92"gister val * sbridge s"*id="L64" class="line" name="L63105"> 1053a1094       10 href="+code2=INTE294_ch10 hr>10 4t_prstatic ina>BITd to 0_ida hsbridge_get_onedevicee=uef="BITF =sssbridge_get_onedevice 0,  sedBITd to 0_ida h devdeve=uef="BITF =ss devdevpment>>;
 1053a1095       10 href="+code2=DRAM295DRA10 hr>10 5dac/sb_et_pri32                 >BITd to 0_ida hu8e=uef="BITF =ssu8pment>;
 1053a1096       10drivers/edac2/sb_e29c.c#10dri>10 isb11cc/sb120sedBITd to 0_ida h devid_tablng" PCI_DESCrAVE devid_tablnpment>;
 1053a1097       10r *  231098       10"drivers/eda2c/sb_290, 010"dr>10 8dac/" class="line" name="L830">  4010 i32 BITd to 0_ida hsbridge_deve=uef="BITF =sssbridge_devpment>;
  26        11>   (;
&5) d to 0a hreftablng" PCI_DESCrAVEtablnpmen-&gda5) d to 0a hrefdescle=um(  261       11>rivers/edac2/sb_e29c.c#11>ri>110"L92" class="line" name="L920">  822       11>href="+code2=SAD_2IMIT"11>hr>110232 BITd to 0_ida h devdeve=uef="BITF =ss devdevpment>;
BITd to 0_ida hNULLe=um(  263       11>href="+code2=DRAM293DRA11>hr>110edac/sb_e3 hr5) d to 0a hrefu8e=uef="BITF =ssu8pment5) d to 0a hrefbume=umci_chiL90" bumpmen =>0a class="line" name="L731">  264       11>href="+code2=INTE294_ch11>hr>110"L85" class="line" name="L825">  85href="+code2=DRAM295DRA11>hr>1105dac/sb_e3 hrDRAE( 1053a11>6       11>rivers/edac2/sb_e29c.c#11>ri>110isb11cc/sb120"Seeking for: dev %02x.%d PCI ID %04x:%04x\n"d="L64"" class="line" name="L830">  31 * 1053a11>8       11>drivers/eda2c/sb_290, 011>dr>110opment pret_pri32BITd to 0_ida hPCI_VENDOR_ID_INTELe=um(  269       11>tch(  263 *   310omm11s=">11s=32 BITd to 0_ida h devget_devicee=uef="BITF =ss devget_device 0,  ;
  263* ret31c.c#11s=">11s1pment pret_pri32vvvvvvvv ;
  26111ram_r class="line" name="L731">  261113dac/sb_et_prifT_!;
  4011sedac/sb_et_pri32 ifT_>;
  4011s5dac/sb_et_pri32         >;
BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  26111isb11cc/sb1200" class="line" name="L93"03"> 1033a11s7       11lt;  26111opmen class="line" name="L731">  2611si32   23112        11lt; 1033a1121       11lt;  8211let_pri32 0" class="line" name="L931">  231123       11lt;  26112"L85" class="line" name="L825">  8511l5dac/sb_et_pri32 DRAE( 1053a11l6       11drivers/edac3/sb_e32c.c#11dri>112isb11cc/sb120"Device not found: dev %02x.%d PCI ID %04x:%04x\n"d="L64"" class="line" name="L830">  311127dac/sb_et_pri32 reeeeeeeDRAE( 1053a1128       11drivers/edac3/sb_e328f="11dri>11lopment pret_pri32reeeeeeeDRAE(  263/* St32c.c#11s=">112i32  2611hrpment pret_pri32Bister val * sbridge s/t End ofTlist, Ceave_*id="L64" class="line" name="L63105"> 1053a11h1       11href="+code=3DEFIN331_ch11hre>1131pment pret_pri32return>-5) d to 0a hrefENODEVref="+cod"sref"ENODEVpmen; class="line" name="L731">  2611het_pri32 } class="line" name="L731">  26113edac/sb_e3 hr5) d to 0a hrefbume=umci_chiL90" bumpmen =>BITd to 0_ida h deve=uef="BITF =ss devpmen-&gda5) d to 0a hrefbume=umci_chiL90" bumpmen-&gda5) d to 0a hrefnumbele=um(  263/*113"L85" class="line" name="L825">  853 * Al335f="11s=">1135dac/sb_e3 hrDRAE(BITd to 0_ida hget_sbridge_deve=uef="BITF =ssget_sbridge_dev 0,  ;
  263 */11hisb11cc/sb120ifT_!;
  401137dac/sb_et_pri32 DRAE(BITd to 0_ida halloc_sbridge_deve=uef="BITF =ssalloc_sbridge_dev 0,  ;
  26113opment pret_pri32ifT_!;
  40113i32   263/*11s=t_pri32 return>-5) d to 0a hrefENOMEMref="+cod"sref"ENOMEMasss; class="line" name="L731">  263 * De341DRA11s=">11s1pment pret_pri32} class="line" name="L731">  263 */114et_pri32 ;
  261143t_pri32 } class="line" name="L731">  26114"L85" class="line" name="L825">  8511s5dac/sb_et_prifT_BITd to 0_ida hsbridge_deve=uef="BITF =sssbridge_devpmen-&gda5) d to 0a hrefpdeve=uef="BITF =ss devpmenTTR  4011sisb11cc/sb120( 1053a1147       11 href="+code3=edac3mc_ch11 hr>11s7dac/sb_et_pri32 ra hrrivDister val * beding">"Duplicated device for "d="L64" class="line" name="L63105"> 1053a1148       11drivers/edac3/sb_e348_ch11dri>11sopment pret_pri32>a hrrivDister val * beding">"dev %02x:%d.%d PCI ID %04x:%04x\n"d="L64"" class="line" name="L830">  313/*11si32 ( 1053a115        11s="comment">3 * Ge350_ch11s=">115edac/sb_e3 href="drivif="drivBITd to 0_ida hPCI_VENDOR_ID_INTELe=um(  262 */1151pment pret_pri32BITd to 0_ida h devdev_pute=uef="BITF =ss devdev_put 6, 25) d to 0a href+deve=uef="BITF =ss devpmen"" class="line" name="L731">  26115et_pri32 -5) d to 0a hrefENODEVref="+cod"sref"ENODEVpmen; class="line" name="L731">  261153t_pri32 } class="line" name="L731">  26115"L85" class="line" name="L825">  852/*1155dac/sb_e3 hrDRAE(BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  262 * sb256_ch11s=">115isb11 class="line" name="L731">  262 */
11s=">1157dac/sb_et_prDister val * sbridge s/t Sanit=_fheck_*id="L64" class="line" name="L63105"> 1053a11s8       11drivers/edac2/sb_e25c.c#11dri>115opment pret_pifT_BITd to 0_ida hunlikely="dstDRAE( 1053a11s9       11s="comment">2/*115i32 (DRAE(  402 * FI26D" c11s=">116=32  1053a1161       11s="comment">2 * ea26c.c#11s=">1161pment pret_pri32vvvvvvvvBister val * beding">"Device PCI ID %04x:%04x "d="L64" class="line" name="L63105"> 1053a1162       11s="comment">2 * mo26MIT"11s=">116et_pri32 Bister val * beding">"has dev %02x:%d.%d instead ofTdev %02x:%02x.%d\n"d="L64"" class="line" name="L830">  312 */
11s=">116edac/sb_e3 href="drivrf="drivBITd to 0_ida hPCI_VENDOR_ID_INTELe=um(  31116edac/sb_et_pri32 rf="drivBITd to 0_ida hbume=umci_chiL90" bumpmen,t;
(  311165dac/sb_et_pri32         DRAE(  26116isb11cc/sb120-5) d to 0a hrefENODEVref="+cod"sref"ENODEVpmen; class="line" name="L731">  2611s7dac/sb_et_pr} class="line" name="L731">  26116opmen class="line" name="L731">  2611si32  1053a117        11 href="+code2=PCI_27a bi11 hr>11 hdac/sb_et_prifT_BITd to 0_ida hunlikely="dst  4011 1pment pret_pri32BITd to 0_ida hsbridge_printke=uef="BITF =sssbridge_printk 0,  ;
 1053a1172       11 href="+code2=PCI_27MIT"11 hr>11 et_pri32 eister val * beding">"Couldn't enabln "d="L64" class="line" name="L63105"> 1053a1173       11 href="+code2=PCI_27TTR"11 hr>11 edac/sb_e3 href="drivrf="drivDister val * beding">"dev %02x:%d.%d PCI ID %04x:%04x\n"d="L64"" class="line" name="L830">  3111 edac/sb_et_pri32         DRAE(  311175dac/sb_et_pri32         DRAE(  26117isb11cc/sb120-5) d to 0a hrefENODEVref="+cod"sref"ENODEVpmen; class="line" name="L731">  262     27c_ch11s=">1177dac/sb_et_pr} class="line" name="L731">  262     27c.c#11s=">117opmen class="line" name="L731">  262     27c.c#11s=">117i32 "Detected dev %02x:%d.%d PCI ID %04x:%04x\n"d="L64"" class="line" name="L830">  31118edac/sb_e3 href="driviDRAE(  311181pment pret_pri32vDRAE(  26118ram_r class="line" name="L731">  2611 edac/sb_e3 hrgister val * sbridge s/td="L64" class="line" name="L63105"> 1053a1184       11drivers/edac2/sb_e2ac.c#11dri>118"L85"gister val * sbridge sri32v* As stated on ne" name de/search.c, the r="erencercount foad="L64" class="line" name="L63105"> 1053a1185       11s="comment">2/* De2852" 11s=">1185dac/gister val * sbridge s""""""""v* @from is always decreidgeed ifTit is not %NULL. So, as we needd="L64" class="line" name="L63105"> 1053a1186       11st  1053a1187       1180, 0x88, 0x290, 0287_ch1180,>11 classgister val * sbridge s""""""""v*id="L64" class="line" name="L63105"> 1053a1188       11lt;  26118i32  26119edac/sb_e3 hr>;
BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  26119"L92" class="line" name="L920">  82119et_pri32 return>0" class="line" name="L93"03"> 1033a1193       11 href="+code2=DRAM293DRA11 hr>11 3L92"} class="line" name="L731">  26119"L85" class="line" name="L825">  8511 5dac/static ina>BITd to 0_ida hsbridge_get_all_devicese=uef="BITF =sssbridge_get_all_devices 6, 25) d to 0a hrefu8e=uef="BITF =ssu8pment>;
  231196       11drivers/edac2/sb_e29c.c#11dri>11 isb11" class="line" name="L830">  40
11r *>11 7dac/sb_et_prina>BITd to 0_ida hee=um(  26119832 BITd to 0_ida h devdeve=uef="BITF =ss devdevpment>;
BITd to 0_ida hNULLe=um(  2611 i32 sedBITd to 0_ida h devid_tablng" PCI_DESCrAVE devid_tablnpment>;
BITd to 0_ida h devdev_descl_sbridge_tablng" PCI_DESCrAVE devdev_descl_sbridge_tablnpmen; class="line" name="L731">  26        12>   (  261       12>rivers/edac2/sb_e29c.c#12>ri>1201pment pret_pwhileT_BITd to 0_ida htablng" PCI_DESCrAVEtablnpment&&t;
  402       12>href="+code2=SAD_2IMIT"12>hr>120et_pri32 0ac;
(  403       12>href="+code2=DRAM293DRA12>hr>120edac/sb_e3 href="drivrf="drivBITd to 0_ida hpdeve=uef="BITF =ss devpment=>BITd to 0_ida hNULLe=um(  264       12>href="+code2=INTE294_ch12>hr>120edac/sb_et_pri32         do " class="line" name="L830">  405       12>href="+code2=DRAM295DRA12>hr>1205dac/sb_et_pri32                 ;
BITd to 0_ida hsbridge_get_onedevicee=uef="BITF =sssbridge_get_onedevice 0,  &5) d to 0a hrefpdeve=uef="BITF =ss devpmen,t;
 1053a12>6       12>rivers/edac2/sb_e29c.c#12>ri>120isb11cc/sb120(  26 *  408       12>drivers/eda2c/sb_290, 012>dr>120opment pret_pri32i32                 ifT_BITd to 0_ida hee=um(  409       12>tch(DRAE(  403 *   310omm12s=">121=t_pri32 >>>>>>>>>>>>>>>>>>>>>>>>break; class="line" name="L830">  403* ret31c.c#12s=">12s1pment pret_pri32vvvvvvvv   26121et_pri32 >vvvvvvvvvvvvvvvDRAE(  26121edac/sb_e3 href="drivrf="drivvvvvvvvvvvvvvvvvreturn>-5) d to 0a hrefENODEVref="+cod"sref"ENODEVpmen; class="line" name="L731">  2612sedac/sb_et_pri32    2612s5dac/sb_et_pri32         }pwhileT_BITd to 0_ida h+deve=uef="BITF =ss devpmen"" class="line" name="L731">  26121isb11cc/sb120  2612s7dac/sb_et_pri32 DRAE(  26121opment pret_p} class="line" name="L731">  26121i32  2612ltt_pri32 return>0" class="line" name="L93"03"> 1033a1221       12lt;  26122ram_r class="line" name="L731">  2612ledac/static ina>BITd to 0_ida hmdevbind_devme=umci_chiL90" mdevbind_devm 6, 2sedBITd to 0_ida hmem_ctl_inforef="+cod"sref"mem_ctl_infopment>;
 1053a1224       12lt;;
  2312l5       12lt;12l5dac/" class="line" name="L830">  40122isb11cc/sb120sedBITd to 0_ida hsbridge_pvte=uef="BITF =sssbridge_pvtpment>;
DRAE(  261227dac/sb_et_prsedBITd to 0_ida h devdeve=uef="BITF =ss devdevpment>;
  2612lopment pret_pina>BITd to 0_ida hee=um(BITd to 0_ida hslote=uef="BITF =ssslotpmen; class="line" name="L731">  263/* St32c.c#12s=">122i32  2612hrpment pret_pfor 25) d to 0a hrefee=um(0ac;
(  261231pment pret_pri32BITd to 0_ida hpdeve=uef="BITF =ss devpment=>BITd to 0_ida hsbridge_deve=uef="BITF =sssbridge_devpmen-&gda5) d to 0a hrefpdeve=uef="BITF =ss devpmenTTR  26123et_pri32   2312h3       12lt;tinue; class="line" name="L731">  263/*123edac/sb_et_pri32 DRAE(BITd to 0_ida hPCI_SLOT="dst  263 * Al335f="12s=">1235dac/sb_et_pri32 DRAE(BITd to 0_ida hPCI_FUNC="dst  263 */123isb11cc/sb120  261237dac/sb_et_pri32 case 12: class="line" name="L731">  26123opment pret_pri32  26123i32   263/*12s=t_pri32 i32 DRAE(BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  263 * De341DRA12s=">12s1pment pret_pri32>>>>>>>>>>>>>>>>break; class="line" name="L830">  403 */124et_pri32   26124edac/sb_e3 href="drivrf="drivvvvvvvvvDRAE(BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  26124edac/sb_et_pri32    401245dac/sb_et_pri32         default: class="line" name="L731">  2612sisb11cc/sb120  2612s7dac/sb_et_pri32 ra hrriv} class="line" name="L731">  2612sopment pret_pri32>a hrrivbreak; class="line" name="L830">  403/*12si32   263 * Ge350_ch12s=">125edac/sb_e3 href="drivif="drivswitchT_BITd to 0_ida hfunce=uef="BITF =ssfuncpmen" " class="line" name="L731">  262 */1251pment pret_pri32  26125et_pri32 (BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  26125edac/sb_e3 href="drivrf="drivvvvvvvvvbreak; class="line" name="L830">  40125edac/sb_et_pri32         default: class="line" name="L731">  262/*1255dac/sb_et_pri32                 gotor5) d to 0a href rrole=um(  262 * sb256_ch12s=">125isb11cc/sb120  262 */
12s=">1257dac/sb_et_pri32 ra hrrivbreak; class="line" name="L830">  40125opment pret_pri32case 14: class="line" name="L731">  262/*125i32   262 * FI26D" c12s=">126=32 case 0: class="line" name="L731">  262 * ea26c.c#12s=">1261pment pret_pri32vvvvvvvvvvvvvvvvDRAE(BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  262 * mo26MIT"12s=">126et_pri32 ra hrrivbreak; class="line" name="L830">  402 */
12s=">126edac/sb_e3 href="drivrf="drivdefault: class="line" name="L731">  26126edac/sb_et_pri32 rf="drivvvvvvvvvgotor5) d to 0a href rrole=um(  261265dac/sb_et_pri32         } class="line" name="L731">  26126isb11cc/sb120  401267dac/sb_et_pri32 case 15: class="line" name="L731">  26126opment pret_pri32  26126i32   26127=t_pri32 i32 DRAE(BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  2612 1pment pret_pri32  4012 et_pri32 case 1: class="line" name="L731">  2612 edac/sb_e3 href="drivrf="drivi32 DRAE(BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  2612 edac/sb_et_pri32         ra hrrivbreak; class="line" name="L830">  401275dac/sb_et_pri32         case 2: class="line" name="L731">  26127isb11cc/sb120  262     27c_ch12s=">1277dac/sb_et_pri32 ra hrrivcase 4: class="line" name="L731">  262     27c.c#12s=">127opment pret_pri32  262     27c.c#12s=">127i32 (BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  26128edac/sb_e3 href="driviiiiiiiiiiiiiiiibreak; class="line" name="L830">  401281pment pret_pri32vvvvvvvvdefault: class="line" name="L731">  26128et_pri32 ra hrrivgotor5) d to 0a href rrole=um(  26128edac/sb_e3 href="drivrf="driv} class="line" name="L731">  26128edac/sb_et_pri32         break; class="line" name="L830">  402/* De2852" 12s=">1285dac/sb_et_pri32 case 17: class="line" name="L731">  26128isb11cc/sb120  261287dac/sb_et_pri32 ra hrrivcase 0: class="line" name="L731">  26128opment pret_pri32i32         DRAE(BITd to 0_ida h deve=uef="BITF =ss devpmen; class="line" name="L731">  26128i32   40129edac/sb_e3 href="driviiiiiiiidefault: class="line" name="L731">  261291pment pret_pri32  26129et_pri32 } class="line" name="L731">  26129edac/sb_e3 href="drivrf="drivbreak; class="line" name="L830">  40129edac/sb_et_pri32 default: class="line" name="L731">  261295dac/sb_et_pri32         gotor5) d to 0a href rrole=um(  26129isb11cc/sb120  26
12r *>12 7dac/ class="line" name="L731">  26129opment pret_pri325) d to 0a href d26_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"Associated PCI %02x.%02d.%d with dev = %p\n"d="L64"" class="line" name="L830">  31129i32   31        13>   ((  311       13>rivers/edac2/sb_e29c.c#13>ri>1301pment pret_pri32  262       13>href="+code2=SAD_2IMIT"13>hr>130et_pri32 } class="line" name="L731">  263       13>href="+code2=DRAM293DRA13>hr>130edac/ class="line" name="L731">  264       13>href="+code2=INTE294_ch13>hr>130edac/sb_et_prDister val * sbridge s/t Check_if e naything were r=gistered_*id="L64" class="line" name="L63105"> 1053a13>5       13>href="+code2=DRAM295DRA13>hr>1305dac/sb_et_prifT_!;
 1053a13>6       13>rivers/edac2/sb_e29c.c#13>ri>130isb11cc/sb120BITd to 0_ida h devtade=udevicf_idb_epdevtadpment|| !;
 1053a13>7       13> *  2313>8       13>drivers/eda2c/sb_290, 013>dr>130opment pret_pri32gotor5) d to 0a href nodeve=uef="BITF =ss nodevpmen; class="line" name="L731">  269       13>tch(  263 *   310omm13s=">131rpment pret_pfor 25) d to 0a hrefee=um(0ac;
(  263* ret31c.c#13s=">13s1pment pret_pri32ifT_!;
  2313s2       13drivers/edac3/sb_e31ef="13dri>131et_pri32 gotor5) d to 0a href nodeve=uef="BITF =ss nodevpmen; class="line" name="L731">  26131edac/sb_e3 hr} class="line" name="L731">  2613sedac/sb_et_prreturn>0" class="line" name="L93"03"> 1033a13s5       13lt;13s5dac/ class="line" name="L93"03"> 1033a13s6       13lt;  2613s7dac/sb_et_prBITd to 0_ida hsbridge_printke=uef="BITF =sssbridge_printk 0,  ;
"Some needed devices are missing\n"d="L64""; class="line" name="L731">  26131opment pret_preturn>-5) d to 0a hrefENODEVref="+cod"sref"ENODEVpmen; class="line" name="L731">  26131i32  2613ltt_pr5) d to 0a href rrole=um(  261321dac/sb_et_prBITd to 0_ida hsbridge_printke=uef="BITF =sssbridge_printk 0,  ;
"Device %d, function %d "d="L64" class="line" name="L63105"> 1053a1322       13drivers/edac3ssb_e32ef="13dri>132et_pri32 "is out ofTthe expected range\n"d="L64"" class="line" name="L830">  31132edac/sb_e3 href="drivrf="drBITd to 0_ida hslote=uef="BITF =ssslotpmen,t;
  26132edac/sb_et_prreturn>-5) d to 0a hrefEINVALe=um(  2613l5dac/} class="line" name="L731">  26132isb11 class="line" name="L731">  26132classgister val * sbridge s/****************************************************************************d="L64" class="line" name="L63105"> 1053a1328       13drivers/edac3/sb_e328f="13dri>13lopmengister val * sbridge s""""""""vvvvvvvvvvvvvvvvErrol_fheck_rout3/ssd="L64" class="line" name="L63105"> 1053a1329       13s="comment">3/* St32c.c#13s=">132i32 1053a133        13href="+code=3LIST_330_ch13hre>133=dac/ class="line" name="L731">  261331pmengister val * sbridge s/td="L64" class="line" name="L63105"> 1053a1332       13 133et_prgister val * sbridge s"* WhileTSandy Bridge has errol_fount r=gisters, SMI BIOS r=ad values fromd="L64" class="line" name="L63105"> 1053a1333       13lt; 1053a1334       13s="comment">3/*133"L85"gister val * sbridge sr* from them. So, we have no option but torjust trust on whate na MCE isd="L64" class="line" name="L63105"> 1053a1335       13s="comment">3 * Al335f="13s=">1335dac/gister val * sbridge s"* telling us about the errols.d="L64" class="line" name="L63105"> 1053a1336       13s="comment">3 */1336dac/gister val * sbridge s"*id="L64" class="line" name="L63105"> 1053a1337       13 href="+code3=SBRI337f="13 hr>1337dac/static voidrBITd to 0_ida hsbridge_mce_output_ rrole=um(BITd to 0_ida hmem_ctl_inforef="+cod"sref"mem_ctl_infopment>;
 1053a1338       13 href="+code3=EDAC33c.c#13 hr>133opment pret_pri32sedBITd to 0_ida hmcee=uef="BITF =ssmcnpment>;
  231339       13drivers/edac3/sb_e33=DRA13dri>133i32  263/*13s=t_pri32 sedBITd to 0_ida hmem_ctl_inforef="+cod"sref"mem_ctl_infopment>;
  263 * De341DRA13s=">13s1pment pret_psedBITd to 0_ida hsbridge_pvte=uef="BITF =sssbridge_pvtpment>;
DRAE(  263 */134et_pri32 enum>DRAE((  26134edac/sb_e3 hrchart>;
;
  26134edac/sb_et_pr5) d to 0a hrefboole=umci_chiL90" boolt_priDRAE(DRAE(  261345dac/sb_et_pr5) d to 0a hrefboole=umci_chiL90" boolt_priDRAE(DRAE(  2613sisb11cc/sb1205) d to 0a hrefboole=umci_chiL90" boolt_priDRAE(DRAE(  261347dac/sb_et_prBITd to 0_ida hboole=umci_chiL90" boolt_priDRAE(DRAE(  26134832 DRAE(  263/*13si32 DRAE(  263 * Ge350_ch13s=">135edac/sb_e3 hr5) d to 0a hrefu DRAE(  262 */1351dac/sb_et_prBITd to 0_ida hu DRAE(  26135et_pri32 BITd to 0_ida hu DRAE(  26135edac/sb_e3 hrlongi5) d to 0a hrefchannel_maske=uef="BITF =sschannel_maskpmen,t;
  26135edac/sb_et_pr5) d to 0a hrefu8e=uef="BITF =ssu8pmentiDRAE(  262/*1355dac/sb_et_prina>BITd to 0_ida hrce=um(  262 * sb256_ch13s=">135isb11cc/sb120chart>;
DRAE(  262 */
13s=">1357dac/ class="line" name="L731">  26135opment pret_pifT_BITd to 0_ida huncorrected_ rrole=um(  262/*135i32   262 * FI26D" c13s=">136=32 ;
Dister val * beding">"FATAL"d="L64"; class="line" name="L731">  262 * ea26c.c#13s=">1361pment pret_pri32vvvvvvvvDRAE(DRAE(  262 * mo26MIT"13s=">136et_pri32   262 */
13s=">136edac/sb_e3 href="drivrf="driv;
Dister val * beding">"NON_FATAL"d="L64"; class="line" name="L731">  26136edac/sb_et_pri32 rf="drivDRAE(DRAE(  261365dac/sb_et_pri32 } class="line" name="L731">  26136isb11cc/sb120} else " class="line" name="L731">  261367dac/sb_et_pri32 ;
Dister val * beding">"CORRECTED"d="L64"; class="line" name="L731">  26136opment pret_pri32DRAE(DRAE(  26136i32   26137=dac/ class="line" name="L731">  2613 1pment pret_pgister val * sbridge s/td="L64" class="line" name="L63105"> 1053a1372       13 href="+code2=PCI_27MIT"13 hr>137et_prgister val * sbridge s"""""""""* According with Tabln 15-9 ofTthe Intel Architecture spec vol 3A,d="L64" class="line" name="L63105"> 1053a1373       13 href="+code2=PCI_27TTR"13 hr>137edac/gister val * sbridge s"""""""""* memory errols should fitrinTthis mask:d="L64" class="line" name="L63105"> 1053a1374       13 href="+code2=PCI_27EAVE13 hr>137"L85"gister val * sbridge sr""""""""*      000f 0000 1mmm cccc (binary)d="L64" class="line" name="L63105"> 1053a1375       13drivers/edac2/sb_e27c.c#13dri>1375dac/gister val * sbridge s"""""""""* where:d="L64" class="line" name="L63105"> 1053a1376       13pan class="c2ommen2732" 13pan>1376dac/gister val * sbridge s"""""""""*      ft=>Correction Report Filteding Bit. If 1, subsequdge errolsd="L64" class="line" name="L63105"> 1053a1377       13s="comment">2     27c_ch13s=">137classgister val * sbridge s"""""""""*          won't be shownd="L64" class="line" name="L63105"> 1053a1378       13s="comment">2     27c.c#13s=">137opmengister val * sbridge s""""""""v*      mmm = errol_typet_"L64" class="line" name="L63105"> 1053a1379       13s="comment">2     27c.c#13s=">137i32 1053a138        13 href="+code2=PCI_2802" 13 hr>138edac/gister val * sbridge s""""""""v* IfTthe mask doesn't match, report tererrol_toTthe parsing logicpm"L64" class="line" name="L63105"> 1053a1381       13 href="+code2=PCI_281_ch13 hr>1381pmengister val * sbridge s""""""""v*id="L64" class="line" name="L63105"> 1053a13 2       13 href="+code2=PCI_282_ch13 hr>138et_pri32 ifT_! (_BITd to 0_ida h rr hree=um(  26138edac/sb_e3 href="driv;
Dister val * beding">"Can't parse: itris not a mem"d="L64"; class="line" name="L731">  26138edac/sb_et_pr} else " class="line" name="L731">  262/* De2852" 13s=">1385dac/sb_et_pri32 switchT_BITd to 0_ida hoptypenume=uef="BITF =ssoptypenumpmen) " class="line" name="L731">  26138isb11cc/sb120  261387dac/sb_et_pri32 ra hrriv;
Dister val * beding">"genedic undef requdse errol"d="L64"; class="line" name="L731">  26138opment pret_pri32i32 break; class="line" name="L830">  40138i32   26139edac/sb_e3 href="driviiiiiiii;
Dister val * beding">"memory r=ad errol"d="L64"; class="line" name="L731">  261391pment pret_pri32  40139et_pri32   26139edac/sb_e3 href="drivrf="driv;
Dister val * beding">"memory write errol"d="L64"; class="line" name="L731">  26139edac/sb_et_pri32   401395dac/sb_et_pri32 case 3: class="line" name="L731">  26139isb11cc/sb120Dister val * beding">"addr/cmd errol"d="L64"; class="line" name="L731">  26
13r *>1397dac/sb_et_pri32 ra hrrivbreak; class="line" name="L830">  40139opment pret_pri32case 4: class="line" name="L731">  26139i32 Dister val * beding">"memory scrubbing errol"d="L64"; class="line" name="L731">  26        14>   (  401       14>rivers/edac2/sb_e29c.c#14>ri>1401pment pret_pri32default: class="line" name="L731">  262       14>href="+code2=SAD_2IMIT"14>hr>140et_pri32 ;
Dister val * beding">"r=served"d="L64"; class="line" name="L731">  263       14>href="+code2=DRAM293DRA14>hr>140edac/sb_e3 href="drivrf="drivbreak; class="line" name="L830">  404       14>href="+code2=INTE294_ch14>hr>140edac/sb_et_pri32 } class="line" name="L731">  265       14>href="+code2=DRAM295DRA14>hr>1405dac/sb_et_pr} class="line" name="L731">  266       14>rivers/edac2/sb_e29c.c#14>ri>140isb11 class="line" name="L731">  267       14> *DRAE( 1053a14>8       14>drivers/eda2c/sb_290, 014>dr>140opment pret_pri32>>>>>>>>>>>>>>>>>>>&;
  269       14>tch(  23141        14s="comment">3 *   310omm14s=">141edac/sb_e3 href="drivgotor5) d to 0a href rr_parsinge=um(  263* ret31c.c#14s=">1411dac/sb_et_prBITd to 0_ida hnew_mdee=umci_chiL90" new_mdepment=>DRAE(  26141et_pri32 ifT_!BITd to 0_ida hnew_mdee=umci_chiL90" new_mdepmen) " class="line" name="L731">  26141edac/sb_e3 href="driv;
"Errol: socketvgot corrupted!"d="L64""; class="line" name="L731">  26141edac/sb_et_pri32 gotor5) d to 0a href rr_parsinge=um(  261415dac/sb_et_pr} class="line" name="L731">  26141isb11cc/sb1205) d to 0a hrefmdee=umci_chiL90" mdepment=>DRAE(  2614s7dac/sb_et_prBITd to 0_ida hpvte=uef="BITF =sspvtpment=>DRAE(  26141opmen class="line" name="L731">  26141i32 DRAE((  26142=dac/ class="line" name="L731">  261421dac/sb_et_prifT_BITd to 0_ida hranke=uef="BITF =ssrankpment1fdac4" class="line" name="L931">  231422       14drivers/edac3ssb_e32ef="14dri>142et_pri32 0a class="line" name="L931">  231423       14lt;  231424       14lt;1a class="line" name="L931">  231425       14lt;1425dac/sb_e3 hrelse class="line" name="L931">  231426       14drivers/edac3/sb_e32c.c#14dri>142isb11cc/sb1202a class="line" name="L931">  231427       14quot;  26142opmen class="line" name="L731">  263/* St32c.c#14s=">142i32  1053a143        14href="+code=3LIST_330_ch14hre>143edac/gister val * sbridge s""""""""v* FIXME: On some memory configurations (mirrol, lockstep), thed="L64" class="line" name="L63105"> 1053a1431       14href="+code=3DEFIN331_ch14hre>1431pmengister val * sbridge s""""""""v* Memory Controller can't poina>the errol_toTa single DIMM. Thed="L64" class="line" name="L63105"> 1053a1432       14 143et_prgister val * sbridge s""""""""v* EDAC core should be handling the fhannel mask,rinTordel_toTpoinad="L64" class="line" name="L63105"> 1053a1433       14lt;the errol_may be happening.d="L64" class="line" name="L63105"> 1053a1434       14s="comment">3/*143"L85"gister val * sbridge sr"""""""v*id="L64" class="line" name="L63105"> 1053a1435       14s="comment">3 * Al335f="14s=">1435dac/sb_et_pr5) d to 0a hrefsnprintfe=umci_chiL90" snprintf 0,  ;
  313 */143isb11cc/sb120"%s%s area:%s  rr_cdev:%04x:%04x socket:%d channel_mask:%ld rank:%d"d="L64"" class="line" name="L830">  311437dac/sb_et_pri32 r;
" OVERFLOW"d="L64" :reister val * beding">""d="L64"" class="line" name="L830">  31143opment pret_pri32<_BITd to 0_ida huncorrected_ rrole=um(" reco naabln"d="L64" :reister val * beding">""d="L64"" class="line" name="L830">  31143i32   313/*144edac/sb_e3 href="drivi;
(  313 * De341DRA14s=">1441pment pret_pri32<;
 1053a1442       14s="comment">3 */144et_pri32  1053a1443       14 href="+code3=sbri343f="14 hr>144edac/sb_e3 href="drivrBITd to 0_ida hranke=uef="BITF =ssrankpmen"; class="line" name="L731">  26144edac/ class="line" name="L731">  261445dac/sb_et_pr5) d to 0a href  26_db 0x3is_close_pt_  40_db  0,   hreister val * beding">"%s\n"d="L64""t;
  26144isb11 class="line" name="L731">  261i47dacac/sb_et_prDister val * r val *;
 1053a1435       13drivers/e4ac3/sb_e348_ch13dri>134834 44s="line" name="L731">  263/*13si34 44 hr5ister val * sbridge s/td="L64" cl Call_may helpad="L6ol 0, nfissage class="line" name="L63105"> 1053a1435       13s="commen4">3 * Ge350_ch13s=">135ed4c/sb_43 hr5) d to 0a hrefu DRAE 1053a1443       13nt">2 */<4253 */1351d4c/sb_45t_pri32 1053a1443       13s="commentNK_EVEN_ERR_C313E_I>135et4pri3245a> ;
2a clas, -1ine" name="L63105"> 1053a1443       13 href="+co+c2ode=v25TTR"13(135ed4c/sb_45 href="drivrf="drivbreak; claridge_devachannel_maf="BITF =ssoptypepmen,t;
  26135ed4c/sb_4t_pr5) d to 0a d to ine" name="L731">  262/*1355d4c/sb_4t_prin href rr_parsinge=um(  262       13s="commen4">2 * sb256_ch13s=">135is411cc/451205) d to 0a hrefmdee=umci_,   hmc_he fhe(DRAE 1053a1443       13 href="+co">2 */
13s=">1357d4c/ cl45_pri32 ra hrrivbreak; claaaaaa-1ia-1ia-1ine" name="L63105"> 1053a1443       13drivers/e4ac2/sb_e25c.c#13dri>135op4ent p45t_pri32>>>>>>>>>>>>>>>>>>>&_devams 0x3is_close_pt_ms pmen,reister val * beding">"Errol: soc64""; class="line" name="L731">  262/*135i34 45s="line" name="L731">  262 * FI26D" c13s=">136=34 4a hr  262 * ea26c.c#13s=">1361p4ent p4et_prine" name="L731">  262 * mo26MIT"13s=">136et4pri3246r val * sbridge s""""""""v*class="line" name="L63105"> 1053a143        13s="commen4">2 */
13s=">136ed4c/sb_46r val * sbridge s"* and r=setsssssstpment>;3/ssd(DsTtheprocissould fiterrol_"B by" class="line" name="L63105"> 1053a1431       13 href="+c4de2=PCI_26c.c#13 hr>136ed4c/sb_46r val * sbridge sr* from them..............................hardware. Call"B by" cln Ree modulelass="line" name="L63105"> 1053a1434       13 href="+c4de2=PCI_26ULE_13 hr>1365d4c/sb_46r val * sbridge s"* telling ulass="line" name="L63105"> 1053a1435       13 href="+c4de2=PCI_26c.c#13 hr>136is411cc/4b120} drBITd to 0_ida hsbridge_mce_output3/ssd(;
  231424       13 href="+c4de2=PCI_26E_RE13 hr>1367d4c/sb_4t_pri3ine" name="L731">  26136op4ent p4et_pri32DRd to 0_ida hsbridge_pvte=uef="BITF =sssbridge_pvtpment>;
DRAE(  26136i34 4a hr} class="lo 0_ida hrce=um(  26137=d4c/ cl47 hr5) d to 0aunsigne0_ida hsbridge_mcSo, tF =sscore_ rr_cntuRAE(  231423       13 href="+c4de2=PCI_27comm13 hr>13 1p4ent p47t_psedBITd to 0_ida hsbridge_pvBITF =ssmcnpment>;
  231423       13s="commentde2=PCI_27MIT"13 hr>137et4prgis4er valne" name="L931">  231423       13s="commen4de2=PCI_27TTR"13 hr>137ed4c/gis47 href="drivrf * sbridge s""""""""v*class="line" name="L63105"> 1053a143        13 href="+c4de2=PCI_27EAVE13 hr>137"L45"gis4er val * sbridge sr""""""""*      000f 64" 0,  & d="L:n Rpy all_
 1053a143        13 href="+c4ac2/sb_e27c.c#13dri>1375d4c/gis4er val * sbridge s"""""""""* where:d="LWe usDsT doufTthbufferannerrol,"L64" ducl_may risk ofass="line" name="L63105"> 1053a143        13 href="+c4"c2ommen2732" 13pan>1376d4c/gis4er val * sbridge s"""""""""*      ft=>Cloopm"L6oTthe palass="line" name="L63105"> 1053a1434       13s="commen4">2     27c_ch13s=">137cl4ssgis4er val * sbridge s"""""""""*          lass="line" name="L63105"> 1053a1435       13s="commen4">2     27c.c#13s=">137op4engis47 hr5) d to 0a hrefu   262     27c.c#13s=">137i34(;
+a hreffirst_chan64"_LOG_LENF =ssmcnpment>;64"_LOG_LENE-_ida hpvte=uef="BITF =sspvtpment=>DRAE  231424       13 href="+c4de2=PCI_2802" 13 hr>138ed4c/gis48 href="drivi;
;64"_LOG_LENE  261381p4engis48_prifT_BITd to 0__ida hnew_mdee=uSo, tF =sscore_ rr_cntuRAE  231424       13s="commentde2=PCI_282_ch13 hr>138et4pri3248a> ;
 d to ine" name="L731">  26138ed4c/sb_48s="line" name="L731">  264       43drivers/e4ac2/sb_e2ac.c#13dri>138ed4c/sb_4t_pr} else " c_devame=uef="BITF =ssmpmen" class="l>(  262/* De2852" 13s=">1385d4c/sb_4t_pri32 swo 0_ida hranke=uef=BITF =sspvtpment=>DRAE;64"_LOG_LENE  26138is411cc/4b120(;64"_LOG_LENE-_ida hpvte=uef="BITF =sspvtpment=>DRAE  261387d4c/sb_48s="line" name="L731">  26138op4ent p4et_pri32i32 brida hmem_ctl_inforchiL90" stdcpy 0, forchiridge_devams 0x3is_clF =ssmpmen" class="lsbridge_devaarea_typeeBITF =sspvtpment=>DRAEDRAE  26138i34 4a hr  26139ed4c/sb_43 href="driviiiiiiii;
ida hranke=uef=BITF =sspvtpment=>DRAE  231423       13drivers/e4ac2/sb_e29c.c#13dri>1391p4ent p4et_pri32-(  231423       13s="commentde2=SAD_2IMIT"13 hr>139et4pri324/a>   231423       13 href="+c4de2=DRAM293DRA13 hr>139ed4c/sb_43 href="drivrfine" name="L731">  26139ed4c/sb_49_pr} else " c_devame=uef="BITorchiL90" stdcpy 0, forchiridge_devams 0x3is_clF =ssmpmen" class="lsbridge_devaarea_typeeBITF =sspvtpment=>DRAEDRAE  231423       13 href="+c4de2=DRAM295DRA13 hr>1395d4c/sb_49_pr5) d to 0a hrefsnprintfe=ump_wmbF =sssbridge_pvtmp_wmbridgeline" name="L731">  26139is411cc/491205) d to 0a hrefmdee=umci_BITF =sspvtpment=>DRAE  26
13r *>1397d4c/sb_49s="line" name="L731">  26139op4ent p49 hr5) d to 0a hrefu   26139i34 49 hrifT_BITd to 0_ida hrce=um(ru"sref"devfnpmen"_ rro1">ru"E  26   ("Device Lostuot;d="Lols should fi"L64"" class="line" name="L830">  31rivers/e5ac2/sb_e29c.c#14>ri>1401p5ent p5et_pri32default: cdriviiiiiiii;
ida hranke=uef=BITF =sspvtpment=>DRAEru"sref"devfnpmen"_ rro1">ru"E  26href="+c5de2=SAD_2IMIT"14>hr>140et5pri325/a> ;
 hrefsnprintfe=ump_wmbF =sssbridge_pvtmp_wmbridgeline" name="L731">  26href="+c5de2=DRAM293DRA14>hr>140ed5c/sb_53 href="drivrf="drivbrida hranke=uef=BITF =sspvtpment=>DRAEru"sref"devfnpmen"_ rro1">ru"E(  231423       54>href="+c5de2=INTE294_ch14>hr>140ed5c/sb_5t_pri32 } ine" name="L731">  26href="+c5de2=DRAM295DRA14>hr>1405d5c/sb_5t_pr} ne" name="L731">  26139is511 cl501205) d to 0a * sbridge s""""""""v*class="line" name="L63105"> 1053a143        54> * 1053a143        548 *139op5ent p50r val * sbridge s""""""""v*      mmm lass="line" name="L63105"> 1053a1435       54>tch(  231424       54s="commen5">3 *   310omm14s=">141ed5c/sb_53 href="drivgotor5) d ida hsbridge_pvte=uef="_ rrole=um(BITa hremdee=umci_chiL90" mdepmen-&gda5) d sbridge_devaarea_typeeBITF =sspvtpment=>DRAE  263* ret31c.c#14s=">1411d5c/sb_5t_prBIine" name="L731">  26141et5pri3251r valne" name="L931">  231423       54lt; 1053a143        54lt;141ed5c/sb_51r val * sbridge sr* from them.e_output_ rr3/ssd( 1053a1377       54lt;1415d5c/sb_51r val * sbridge s"* telling u32default: cdriviiiiiiii;
T="L6rol ="1"simply queues_
 1053a1377       546href="+c5="3inclu31c.c#14lt;>141is511cc/51r val * sbridge s"""""""""* u32default: cdriviiiiiiii;
 d to 4" cl be hapitself handling the fhed laterass="line" name="L63105"> 1053a143        54lt;default: cdriviiiiiiii;
bystpment>;3/ssd( 1053a1434       54lt; 1053a1434       54>tch( 1053a1434       54lt; 1053a1435       54lt; 1053a1435       54drivers/e5ac3ssb_e32ef="14dri>142et5pri325/a>   231424       54lt;  26142ed5c/sb_5t_pri32 ;
d to 0_ida hsbridge_pvBITF =ssmcnpment>;
;
;
  261425d5c/sb_53 hrelse classd to 0_ida hmem_ctl_inforef="+cod"sref"mem_ctl_infopment>;
  26142is511cc/5b120;
DRAE  261427d5c/ cl5ss="line" name="L731">  26142op5en cl52 hr5) d to 0a hrefu DRAE(;
  263/* St32c.c#14s=">142i35 52 hrifT_BITd to 0__ida hnew_mdee=uchiL90" mdepmen, class="line" name="L931">  231424       54href="+co5e=3LIST_330_ch14hre>143ed5c/gis53 href="drivgotor5) d  d to   261431p5engis53_prBITd to 0_ida hnew_mdee=uBITF =sspvtpment=>DRAE(  26143et5prgis53r valne" name="L931">  231423       54lt; 1053a143        54s="commen5">3/*143"L55"gis5er val * sbridge sr"""""""v*id="L64" c Justule"L
 1053a1377       54s="commen5">3 * Al335f="14s=">1435d5c/sb_53r val * sbridge s"""""""""* where:d="Lol sidl_may figurationn't. ALols should fass="line" name="L63105"> 1053a1377       546href="+c5">3 */143is511cc/53r val * sbridge s"""""""""*      ft=>Ciito dicateB by"ba m7s="ltTthlba ss="8-11,13-15>( 1053a1434       54 href="+c5de3=SBRI337f="14 hr>1437d5c/sb_53r val * sbridge s"""""""""*          wba m12 heitTt3A,d=ialLola4" class="line" name="L63105"> 1053a1434       54 href="+c5de3=EDAC33c.c#14 hr>143op5ent p53r val * sbridge s""""""""v*      mmm lass="line" name="L63105"> 1053a1435       54drivers/e5ac3/sb_e33=DRA14dri>143i35 53 hrifT_BITd to 0_e_devasocketg" PfITF =ssmcnpment>;
  231424       54s="commen5">3/*144ed5c/sb_53 href="drivi;
  263 * De341DRA14s=">1441p5ent p54t_prine" name="L731">  263 */144et5pri325/a> "Device tpment>: HANDLINGw64" MEMORY ERROR"L64"" class="l"ine" name="L731">  26144ed5c/sb_54s="line" name="L731">  264       54lt;"Device CPUuot;d=": Mach="1"C/ssd Exceprol,:uot;d=Lx Bankuot;d=": ocket:16Lx"L64"" class="line" name="L830">  311445d5c/sb_5t_pr5) d to 0ad to 0a hrefu ;
;extcpuer val hrefu ;
;
;
  26144is511 cl541205) d to 0a hrefmdee=umci_B="BITF =sssbridge_pr ;
"Device TSC ocketllx 64""t;
;
  261i47d5cac/s54_prBITd to 0_ida hpvte=uef="B="BITF =sssbridge_pr ;
"Device ADDR ocketllx 64""t;
;
  26134835 54 hr5) d to 0a hrefu "Device MISC ocketllx 64""t;
;
  263/*13si35 54s="line" name="L731">  263 * Ge350_ch13s=">135ed5c/sb_53 hr5) d to 0a hrefu "Device PROCESSOR ocketuot;d="x TIME ocketllu SOCKET ocketu APIC ocketx"L64"" class="line" name="L830">  312 */<5253 */1351d5c/sb_55t_pri32;
;
;
 1053a1435       53s="commen5NK_EVEN_ERR_C313E_I>135et5pri3255a> ;
_devasocketg" PfITF =ssmcnpment>;
;
  26135ed5c/sb_55s="line" name="L731">  264       53drivers/e5ac2/sb_e2ac.c#13dri>135ed5c/sb_5t_pr5) d to 0a * sbridge s/td="L64" cl Only he fhe af a mem&may righ"L
 1053a1435       53drivers/e5">2/*1355d5c/sb_55_pri32 swo 0_ida hranke=uef=cpu="BITF =ssget_memorycpu="BITridge_devasocketg" PfITF =ssmcnpment>;
;cpuer v). hrefu ;devF =sssbridge_pvtpment>;devbridto 0a hrefstatume=ummcF =ssmcnpment>;
  231424       53s="commen5">2 * sb256_ch13s=">135is511cc/55120  262 */
13s=">1357d5c/ cl55s="line" name="L731">  26135op5ent p55 hr5) d to 0a hrefu   262/*135i35 55 hrifT_BITd to 0_e_devasocketg" P"ITF =sspvtpmen-&gda5) d to 0a hrefpdevtade=u_ rrol F =ssmcnpment>;
+a1)guot;da hreffirst_chan64"_LOG_LENF =ssmcnpment>;64"_LOG_LENE  262 * FI26D" c13s=">136=35 56 href="drivgotor5) d ida hsbridge_pvtmp_wmbF =sssbridge_pvtmp_wmbridgeline" name="L731">  262 * ea26c.c#13s=">1361p5ent p56t_pri32DRAEru"sref"devfnpmen"_ rro1">ru"E  262 * mo26MIT"13s=">136et5pri3256a> ;
 d to   262 */
13s=">136ed5c/sb_56 href="drivrfine" name="L731">  26136ed5c/sb_56s="line" name="L731">  261365d5c/sb_565pr5) d to 0a * sbridge s/td="L64" cl  Rpy ols should f at may ringbufferm lass="line" name="L63105"> 1053a1435       53 href="+c5de2=PCI_26c.c#13 hr>136is511cc/561205) d to 0a hrefmdee=umci_corchiL90" stdcpy 0, forchiridgeridge_devaarea_typeeBITF =sspvtpment=>DRAEDRAE;
;
;
  261367d5c/sb_56_prBITd to 0_ida hpvte=uef="tmp_wmbF =sssbridge_pvtmp_wmbridgeline" name="L731">  26136op5ent p56 hr5) d to 0a hrefu ;
(;
+a1)guot;da hreffirst_chan64"_LOG_LENF =ssmcnpment>;64"_LOG_LENE  26136i35 56s="line" name="L731">  26137=d5c/ cl57 hr5) d to 0a * sbridge s/td="L64" cl He fhe fBITlould fito="Ldiately  lass="line" name="L63105"> 1053a1435       53 href="+c5de2=PCI_27comm13 hr>13 1p5ent p57_prifT_BITd to 0_ida hranke=uef=chTF =ssmcnpment>;
  231424       53s="commen5de2=PCI_27MIT"13 hr>137et5prgis57a> ;
 hrefsnprintfe=u_output3/ssd(  26137ed5c/gis57s="line" name="L731">  264       53 href="+c5de2=PCI_27EAVE13 hr>137"L55"gis57_pr5) d to 0a * sbridge s/td="L64" cl AdviceL
 1053a1435       53 href="+c5ac2/sb_e27c.c#13dri>1375d5c/gis575pr5) d to 0a d to   261376d5c/gis5er valine" name="L731">  262     27c_ch13s=">137cl5ssgis57s="line" name="L731">  262     27c.c#13s=">137op5engis57 hr5)drBITd d to 0_ida hmem_ctl_innotifier_b theIELD"sbridge_mcnotifier_b thebridg hrefsnprintfe=u_output
;u_output
(  262     27c.c#13s=">137i35 1053a1435       53 href="+c5de2=PCI_2802" 13 hr>138ed5c/gis58 href}ine" name="L731">  261381p5engis58t_prine" name="L731">  26138et5pri3258r val * sbridge s""""""""v*cllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllass="line" name="L63105"> 1053a1435       53 href="+c5de2=PCI_2EVICE13 hr>138ed5c/sb_58r val * sbridge s""""""""v* toTthe ggggggggggggggggshoulregister/unregister logicass="line" name="L63105"> 1053a1435       53 href="+c5ac2/sb_e2ac.c#13dri>138ed5c/sb_58r val * sbridge sr* from themmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmlass="line" name="L63105"> 1053a1435       53 href="+c5">2/* De2852" 13s=">1385d5c/sb_58_pr} ne" name="L731">  26138is511cc/58120} drBITd to 0_ida hsbridge_mce_outputunregister_chiL90" new_mdepmee_outputunregister_chiridged to 0_ida hsbridge_pvte=uef="devF =sssbridge_pvtpment>;devbridge_devapvte=uef="te=uef="devF =sssbridge_pvtpment>;devbridine" name="L931">  231424       53s="commen50x290, 0287_ch1380,>1387d5c/sb_58_pri3ine" name="L731">  26138op5ent p58t_pri32DRd to 0_ida hsbridge_pvforef="+cod"sref"mem_ctl_infopment>;
;devbridto 0a hrefstatume=ummciL90" mdepmen, class="line" name="L731">  26138i35 5a hr;
DRAE  26139ed5c/sb_59s="line" name="L731">  261391p5ent p59_prifT_BITd to 0_ida hranke=uef=unlikelyF =sspvtpment=>unlikelyridge_ida hnew_mdee=uchiL90" mdepmen, class="l || _ida hnew_mdee=uchiL90" mdepmen, class="lto 0a hrefpvt_inforef="+cod"sref"pvt_infopmen; class="l)iline" name="L731">  26139et5pri325/a> "%s\n&qMC: dev  cuot;dp"L64""t;
;devbridto 0a hrefstatume=umpdevF =sssbridge_pvpdevbrid[0]to 0a hrefstatume=umdevF =sssbridge_pvdevbridiine" name="L731">  26139ed5c/sb_59s="line" name="L731">  264       53 href="+c5de2=INTE294_ch13 hr>139ed5c/sb_59_pr} else " c32;
 hrefsnprintfe=u_outputB="BITF =sssbridge_printk 0,  ;
"Device Cndliina>the _bitL
  261395d5c/sb_59_pr5) d to 0ad to 0a
 d to ine" name="L731">  26139is511cc/591205) d to 0aine" name="L731">  26
13r *>1397d5c/sb_59s="line" name="L731">  26139op5ent p59 hr5) d to 0a hrefu DRAE(  26139i35 59s="line" name="L731">  26   ("%s\n&qMC: 
  261391p6ent p6et_pri32default: cda hremdee=umci_chiL90" mdepmen-&gda5) d geridge_devaarea_typeee_outputdevF =sssbridge_pvtpment>;devbridto 0a hrefstatume=umpdevF =sssbridge_pvpdevbrid[0]to 0a hrefstatume=umdevF =sssbridge_pvdevbridiine" name="L731">  26href="+c6de2=SAD_2IMIT"14>hr>140et6pri3260r valne" name="L931">  231423       64>href="+c6de2=DRAM293DRA14>hr>140ed6c/sb_60 href="drivrf * sbridge s""""""""v*cl Remove MC sysfs   ;
s  lass="line" name="L63105"> 1053a1435       64>href="+c6de2=INTE294_ch14>hr>140ed6c/sb_60_pr} else " c_devame=uef="BI,   hm hrn, ccF =ssmcnpment>;,   hm hrn, ccridgeida hnew_mdee=uchiL90" mdepmen, class="lto 0a hrefstatume=umpdevF =sssbridge_pvpdevbridiine" name="L731">  261395d6c/sb_6t_pr} ne" name="L731">  26139is611 cl601205) d to 0a hrefmdee=umci_,   hlose_pt_  40_db  0,   hreister 1al * beding">"%s\n"d=: free 
  26
13r *>1397d6c/sb_60_prBITd to 0_ida hpvte=uef="kfreeF =ssmcnpment>;kfreeridgeida hnew_mdee=uchiL90" mdepmen, class="lto 0a hrefstatume=ument>ri>1F =ssmcnpment>;cnt>ri>1bridiine" name="L731">  26139op6ent p60 hr5) d to 0a hrefu ;,   hm hfreeridgeida hnew_mdee=uchiL90" mdepmen, class="liine" name="L731">  26tch(;devbridto 0a hrefstatume=ummciL90" mdepmen, class="l>(  263 *   310omm14s=">141ed6c/sb_61 hr  263* ret31c.c#14s=">1411d6c/sb_61t_prine" name="L731">  26141et6pri3261r valdrBITd o 0_ida hrce=um(;devbridge_devapvte=uef="te=uef="devF =sssbridge_pvtpment>;devbridine" name="L931">  231424       64lt;  26141ed6c/sb_61_pri32 ;
d to 0_ida hsbridge_pvBoref="+cod"sref"mem_ctl_infopment>;
  261415d6c/sb_61 hrelse classd to 0_ida hmem_ctl_in,   hm hlayeFIELD"uncorrecte,   hmc_layeFbridg hrefsnprintfe=layeFiL90" statumpmenlayeFibrid[2]ine" name="L731">  26141is611cc/61120;
DRAE  2614s7d6c/sb_61_prBITd to 0_o 0_ida hrce=um(;rcE  26141op6en cl61s="line" name="L731">  26tch(DsTthenotedisabhed skpmen,s  lass="line" name="L63105"> 1053a1435       64lt;  261421d6c/sb_62_prifT_BITd to 0_ida hranke=uef=unlikelyF =sspvtpment=>unlikelyridge hrefu ;rcEass="0)ine" name="L931">  231424       64drivers/e6ac3ssb_e32ef="14dri>142et6pri326/a> ;rcE  26142ed6c/sb_62s="line" name="L731">  264       64lt; 1053a1435       64lt;1425d6c/sb_63 hrelse class hrefsnprintfe=layeFiL90" statumpmenlayeFibrid[0]. hrefu   26142is611cc/621205) d to 0a hrefmdee=umci_layeFiL90" statumpmenlayeFibrid[0]. hrefu   261427d6c/ cl62_prBITd to 0_ida hpvte=uef="layeFiL90" statumpmenlayeFibrid[0]. hrefu   26142op6en cl62 hr5) d to 0a hrefu   26tch(3/* St32c.c#14s=">142i36 62 hrifT_BITd t_devasocketg" PlayeFiL90" statumpmenlayeFibrid[1]. hrefu   26143ed6c/gis63 hr5) d to 0a hrefu   261431p6engis63_prBITd to 0_ida hnew_mdee=umciL90" mdepmen, class="l>(;devbridto 0a hrefstatume=ummcF =ssmcnpment>;
  26143et6prgis63a> DRAE  26143ed6c/gis63s="line" name="L731">  264       64s="commen6">3/*143"L65"gis63_pr5) d to 0ao 0_ida hranke=uef=unlikelyF =sspvtpment=>unlikelyridge_ida hnew_mdee=uchiL90" mdepmen, class="l)ine" name="L931">  231424       64s="commen6">3 * Al335f="14s=">1435d6c/sb_63_pr5) d to 0ad to 0a
 d to  -a hremdee=umci_sNOMEMF =ssHW_EVENT_EsNOMEME  263 */143is611cc/63r valne" name="L731">  261437d6c/sb_63_prBITd to 0_ida hpvte=uef=",   hlose_pt_  40_db  0,   hreister val * beding">"%s\n&qMC: 
  26143op6ent p63t_pri32i32 brda hremdee=umci_chiL90" mdepmen-&gda5) d geridge_devaarea_typeee_outputdevF =sssbridge_pvtpment>;devbridto 0a hrefstatume=umpdevF =sssbridge_pvpdevbrid[0]to 0a hrefstatume=umdevF =sssbridge_pvdevbridiine" name="L731">  26143i36 63s="line" name="L731">  263/*144ed6c/sb_64 hr5) d to 0a hrefu DRAE(  263 * De341DRA14s=">1441p6ent p64_prBITd to 0_ida hnew_mdee=umemse F =ssmcnpment>;
emse ridgeida hnew_mdee=uBITF =sspvtpment=>DRAEDRAE  263 */144et6pri3264r valne" name="L931">  231423       64 href="+c6de3=sbri343f="14 hr>144ed6c/sb_64 href="drivrf * sbridge s""""""""v*cl Associate tpment>;devsTthe
 1053a1435       64lt;;devF =sssbridge_pvtpment>;devbrid  c_devasocketg" Pe_outputdevF =sssbridge_pvtpment>;devbridine" name="L731">  261445d6c/sb_64 hrelse class hrefsnprintfe=e_outputdevF =sssbridge_pvtpment>;devbridto 0a hrefstatume=ummciL90" mdepmen, class="l>(  26144is611 cl64r valne" name="L731">  261i47d6cac/s64_prBITd to 0_ida hpvte=uef="chiL90" mdepmen-&gda5) d to 0a hrefpvt_inforem;
  26134836 64 hr5) d to 0a hrefu capL90" mdepmen-&g,   hent>capbrid>(  263/*13si36 64 hrifT_BITd t_devasocketg" PchiL90" mdepmen-&gda5) d to 0a hrefpvt_infore,   heapL90" mdepmen-&g,   heapbrid>(  263 * Ge350_ch13s=">135ed6c/sb_63 hr5) d to 0a hrefu ri>1F =ssmcnpment>;mod>ri>1brid>("Device tpment>4s4    64""t;
  261351d6c/sb_65_prBITd to 0_ida hnew_mdee=umciL90" mdepmen, class="lto 0a hrefpvt_inforemod>veFIELD"uncorrectemod>veFbrid>(;SBRIDGE_REVISIONs="line" name="L731">  26135et6pri3265a> "Device STthy Bment> S clas#ot;d="64""t;
  26135ed6c/sb_653>   26135ed6c/sb_65_pr} else " c_devame=uef="BIchiL90" mdepmen, class="lto 0a hrefstatume=ument>page_to_BhysF =ssmcnpment>;cnt>page_to_Bhyss="l>(  262/*1355d6c/sb_65_pr} ne" name="L731">  262 * sb256_ch13s=">135is611cc/65120 1053a1435       63 href="+c6">2 */
13s=">1357d6c/ cl65_prBITd to 0_ida hpvte=uef="chiL90" mdepmen-&gda5) d to 0a hrefpvt_infore,   he/ssdL90" mdepmen-&g,   he/ssdbrid  c_devasocketg" Pe_output3/ssd(  26135op6ent p65s="line" name="L731">  262/*135i36 65 hr5ister val * sbridge s/td="L64" cl Store pci devices at 
 1053a1435       63s="commen6">2 * FI26D" c13s=">136=36 66 hr5) d to 0a hrefu ;rcE(;devbridiine" name="L731">  262 * ea26c.c#13s=">1361p6ent p66_prifT_BITd to 0_ida hranke=uef=unlikelyF =sspvtpment=>unlikelyridge hrefu ;rcEass="0)ine" name="L931">  231424       63s="commen6">2 * mo26MIT"13s=">136et6pri3266a> ;
goe Da hremdee=umci_fail0F =ssmcnpment>;fail0ridgine" name="L731">  262 */
13s=">136ed6c/sb_66s="line" name="L731">  264       63 href="+c6de2=PCI_26c.c#13 hr>136ed6c/sb_66_pr5) d to 0a * sbridge s/td="L64" cl Getedimm basi 1053a1435       63drivers/e6de2=PCI_26ULE_13 hr>1365d6c/sb_66 hrelse class hrefsnprintfe=l_nodimm_ionfigF =ssmcnpment>;l_nodimm_ionfigridgeida hnew_mdee=uchiL90" mdepmen-&gda5) d iine" name="L731">  26136is611cc/661205) d to 0a hrefmdee=umci_l_nodigura_layoutF =ssmcnpment>;l_nodigura_layoutridgeida hnew_mdee=uchiL90" mdepmen-&gda5) d iine" name="L731">  261367d6c/sb_66s="line" name="L731">  26136op6ent p66 hr5) d to 0a * sbridge s/td="L64" cl record ptrle Deay generi 1053a1435       63s="commen6de2=PCI_26c.c#13 hr>136i36 66 hrifT_BITd t_devasocketg" PchiL90" mdepmen-&gda5) d to 0a hrefpvt_inforepdevF =sssbridge_pvpdevbrid  cuidge_devaarea_typeee_outputdevF =sssbridge_pvtpment>;devbridto 0a hrefstatume=umpdevF =sssbridge_pvpdevbrid[0]to 0a hrefstatume=umdevF =sssbridge_pvdevbridine" name="L731">  26137=d6c/ cl67s="line" name="L731">  2613 1p6ent p67_prifT_BITd t * sbridge s/td="L64" cl add:d="L6new MC ionn
d to 0ure e Dshouna>ths list of MCs  lass="line" name="L63105"> 1053a1435       63s="commen6de2=PCI_27MIT"13 hr>137et6prgis67a> unlikelyridge hrefu ;,   hm hadd ccridgeida hnew_mdee=uchiL90" mdepmen-&gda5) d i)iline" name="L731">  26137ed6c/gis673> ;
ida hpvte=uef=",   hlose_pt_  40_db  0,   hreister val * beding">"%s\n&qMC: failed ,   hm hadd cc()"L64"" class="l"ine" name="L731">  26137"L65"gis67_pr} else " c32;
 hrefsnprintfe=rcF =ssmcnpment>;rcE(<-a hremdee=umci_sINVALF =ssHW_EVENT_EsINVALbridine" name="L731">  261375d6c/gis67_pr5) d to 0ad to 0a
goe Da hremdee=umci_fail0F =ssmcnpment>;fail0ridgine" name="L731">  261376d6c/gis671205) d to 0aine" name="L731">  262     27c_ch13s=">137cl6ssgis67s="line" name="L731">  262     27c.c#13s=">137op6engis67 hr5) d to 0a d to  0ine" name="L731">  262     27c.c#13s=">137i36  26138ed6c/gis68 hrefa hremdee=umci_fail0F =ssmcnpment>;fail0ridg:ne" name="L731">  261381p6engis68_prBITd to 0_ida hnew_mdee=ukfreeF =ssmcnpment>;kfreeridgeida hnew_mdee=uchiL90" mdepmen, class="lto 0a hrefstatume=ument>ri>1F =ssmcnpment>;cnt>ri>1bridiine" name="L731">  26138et6pri3268a> ;,   hm hfreeridgeida hnew_mdee=uchiL90" mdepmen, class="liine" name="L731">  26138ed6c/sb_683> ;devbridto 0a hrefstatume=ummciL90" mdepmen, class="l>(  26138ed6c/sb_684hr5) d to 0a d to   hrefsnprintfe=rcF =ssmcnpment>;rcE  262/* De2852" 13s=">1385d6c/sb_68_pr} ine" name="L731">  26138is611cc/68r valne" name="L731">  261387d6c/sb_68r val * sbridge s"""""""""*class="line" name="L63105"> 1053a143        63lt; 1053a143        63s="commen6ed2ac/sb289_ch13="d>138i36 68r val * sbridge s""""""""v* *nnnnnnnnnnnnnnnnnnnnnnpres"""lass="line" name="L63105"> 1053a1434       63 href="+c6de2=MAX_29D" c13 hr>139ed6c/sb_69r val * sbridge s""""""""v*   to 0a d to :ass="line" name="L63105"> 1053a1434       63 href="+c6ac2/sb_e29c.c#13dri>1391p6ent p69_prif * sbridge s""""""""v* *nnnnnnnnnnnnnn0 foutFOUND a deviceass="line" name="L63105"> 1053a1434       63s="commen6de2=SAD_2IMIT"13 hr>139et6pri3269r val * sbridge s""""""""v* *nnnnnnnnnnnnnnass="0 fout singlntfeass="line" name="L63105"> 1053a1434       63 href="+c6de2=DRAM293DRA13 hr>139ed6c/sb_69r val * sbridge s""""""""v*  lass="line" name="L63105"> 1053a1435       63 href="+c6de2=INTE294_ch13 hr>139ed6c/sb_69s="line" name="L731">  261395d6c/sb_69_pr5)drBITd o 0_ida hrce=um(;_;devinithr5)  hrefpvt_inforee_output ;obeF =sssbridge_pvtpment>; ;oberidged to 0_ida hsbridge_pvpci>devF =sssbridge_pvpci>devhr5) e_devame=uef="BIBdevF =sssbridge_pvpdevbridgne" name="L731">  26139is611cc/691205) d to 0aaaaaaaaaaaaaaaaaaaaaaaaaaaionst d to 0_ida hsbridge_pvpci>devicclose_pt_get_mci_fopci>deviccloshr5) e_devame=uef="BIose_pt_get_mci_foos;;
<"ne" name="L731">  26
13r *>1397d6c/sb_69_pri3ine" name="L731">  26139op6ent p69 hr5) d to 0ao 0_ida hrce=um(;rcE  26139i36 69 hrifT_BITd t_devasocketg" Pu8F =ssmcnpment>;u8hr5)  hrefpvt_inforemcF =ssmcnpment>;
;num ccs="l>(<0ine" name="L731">  26   (;devbridge_devapvte=uef="te=uef="devF =sssbridge_pvtpment>;devbridine" name="L731">  261391p7ent p70t_prine" name="L731">  26href="+c7de2=SAD_2IMIT"14>hr>140et7pri3270a>  1053a1435       74>href="+c7de2=DRAM293DRA14>hr>140ed7c/sb_703>   26href="+c7de2=INTE294_ch14>hr>140ed7c/sb_70s="line" name="L731">  261395d7c/sb_705pr5) d to 0a * sbridge s/td="L64" class="line" name="L63105"> 1053a1435       746href="+c7dc2/sb_e29c.c#13dri>139is711 cl70r val * sbridge s"""""""""*      ft=>CAll figurationn'ts are allocated at may first pge lass="line" name="L63105"> 1053a1434       747href="+c7d"2+code29an>
13r *>1397d7c/sb_70r val * sbridge s"""""""""*          lass="line" name="L63105"> 1053a1435       748href="+c7da2c/sb_290, 013"dr>139op7ent p70 hr5) d to 0ao 0_ida hranke=uef=unlikelyF =sspvtpment=>unlikelyridge hrefu a 0a="liiline" name="L731">  26tch(  263 *   310omm14s=">141ed7c/sb_71 href="drivi;
  263* ret31c.c#14s=">1411d7c/sb_71_prBITd to 0_ine" name="L731">  26141et7pri3271a>   26141ed7c/sb_71s="line" name="L731">  264       74lt;141ed7c/sb_71_pr} else " c_devame=uef="BIrcF =ssmcnpment>;rcE(devicciL90" statumpmen,_outputl_noall>devicciridgeuidge_devaarea_typeenum ccF =ssmcnpment>;num ccs="liine" name="L731">  261415d7c/sb_71 hrelse classo 0_ida hranke=uef=unlikelyF =sspvtpment=>unlikelyridge hrefu ;rcEass="0)ine" name="L931">  231424       746href="+c7="3inclu31c.c#14lt;>141is711cc/711205) d to 0aaaaaaaaagoe Da hremdee=umci_fail0F =ssmcnpment>;fail0ridgine" name="L731">  2614s7d7c/sb_71_prBITd to 0_ida hpvte=uef="chF =ssmcnpment>;
(<0ine" name="L731">  26141op7en cl71s="line" name="L731">  26tch(;devbridgeridge_devaarea_typeee_output,   h istIELD"sbridge_mce_output,   h ists="lge_devams 0x3is_c istIELD"sbridge_mc ists="liline" name="L731">  26142=d7c/ cl72 href="drivgotor5) d ida hsbridge_pv,   hlose_pt_  40_db  0,   hreister val * beding">"%s\n&qRegister;&# MC#ot;d=" (ot;d=" ofcuot;dd)"L64"" class="lgne" name="L731">  261421d7c/sb_72t_pri32default: cdTd to 0_ida hpvte=uef="chF =ssmcnpment>;
;
+ 1ge_devams 0x3is_cnum ccF =ssmcnpment>;num ccs="liine" name="L731">  26142et7pri327/a> ;devbridto 0a hrefstatume=ummcF =ssmcnpment>;
(< hrefstatume=ummcF =ssmcnpment>;
  26142ed7c/sb_723> ;
ida hpvte=uef="rcF =ssmcnpment>;rcE(;devbridiine" name="L731">  26142ed7c/sb_72_pr} else " c32;
o 0_ida hranke=uef=unlikelyF =sspvtpment=>unlikelyridge hrefu ;rcEass="0)ine" name="L931">  231424       74lt;1425d7c/sb_72_pr5) d to 0ad to 0a
aaaaaaaagoe Da hremdee=umci_fail1F =ssmcnpment>;fail1ridgine" name="L731">  26142is711cc/721205) d to 0aine" name="L731">  261427d7c/ cl72s="line" name="L731">  26142op7en cl72 hr5) d to 0a hrefu "%s\n&qD731"> loaded."L64"" class="l"ine" name="L731">  26tch(3/* St32c.c#14s=">142i37 72s="line" name="L731">  26143ed7c/gis73 hr5) d to 0a hrefu   261431p7engis73_prBITd to 0_ d to  0ine" name="L731">  26143et7prgis73r valne" name="L931">  231423       74lt;;fail1ridg:ne" name="L731">  263/*143"L75"gis73_pr} else " c_devame=uef="BIlist_fou_eachr"""riL90" stdcpy 0, list_fou_eachr"""riridge hrefu ;devbridgeridge_devaarea_typeee_output,   h istIELD"sbridge_mce_output,   h ists="lge_devams 0x3is_c istIELD"sbridge_mc ists="line" name="L731">  263 * Al335f="14s=">1435d7c/sb_73_pr5) d to 0ad to 0a
_devaarea_typeee_outputunregister_chiL90" new_mdepmee_outputunregister_chiridge hrefpvt_inforee_outputdevF =sssbridge_pvtpment>;devbridiine" name="L731">  263 */143is711cc/73r valne" name="L731">  261437d7c/sb_73_prBITd to 0_ida hpvte=uef="intk 0,  unoall>devicciL90" statumpmen,_output unoall>devicciridgeiine" name="L731">  26143op7ent p73t_pria hremdee=umci_fail0F =ssmcnpment>;fail0ridg:ne" name="L731">  26143i37 73 hrifT_BITd t_devasocketg" Pcutex_unltheIELD"sbridge_mccutex_unltheridgeuidge_devaarea_typeee_output,   h theIELD"sbridge_mce_output,   h thes="liine" name="L731">  263/*144ed7c/sb_74 hr5) d to 0a d to   hrefsnprintfe=rcF =ssmcnpment>;rcE  263 * De341DRA14s=">1441p7ent p74_prBIine" name="L731">  263 */144et7pri3274r valne" name="L931">  231423       74 href="+c7de3=sbri343f="14 hr>144ed7c/sb_74r val * sbridge s""""""""v*class="line" name="L63105"> 1053a1435       74lt; 1053a1435       74lt;1445d7c/sb_74 hrel * sbridge sr* from themass="line" name="L63105"> 1053a1435       746href="+c7de3=sbri346DRA14 hr>144is711 cl74r val * sbridge s"""""""""*  lass="line" name="L63105"> 1053a1435       74 href="+c7de3=edac3mc_ch14 hr>1i47d7cac/s74_prBIdrBITd to 0_ida hsbridge_mc_;devexitF =ssmcnpment>;_;devexithr5)  hrefpvt_inforee_outputremoveL90" new_mdepmee_outputremoveridged to 0_ida hsbridge_pvpci>devF =sssbridge_pvpci>devhr5) e_devame=uef="BIBdevF =sssbridge_pvpdevbridine" name="L731">  26134837 74 hr5)ine" name="L731">  263/*13si37 74 hrifT_BITd td to 0_ida hsbridge_pvte=uef="devF =sssbridge_pvtpment>;devbridge_devapvte=uef="te=uef="devF =sssbridge_pvtpment>;devbridine" name="L731">  263 * Ge350_ch13s=">135ed7c/sb_75s="line" name="L731">  261351d7c/sb_75_prBITd to 0_ida hnew_mdee=u,   hlose_pt_  40_db  0,   hreister val * beding">"%s\n&q"L64"" class="l"ine" name="L731">  26135et7pri3275r valne" name="L931">  231423       73 href="+c7+c2ode=v25TTR"13(135ed7c/sb_753>  1053a1435       73lt;135ed7c/sb_75r val * sbridge sr* from theeeeeeeee* we ha>DsT trouble here: pdev value foutremoval will be wrong
 1053a1435       73drivers/e7">2/*1355d7c/sb_75 hrel * sbridge sr* from theeeeeeeee* it will po
 1053a1435       736href="+c7">2 * sb256_ch13s=">135is711cc/75r val * sbridge s"""""""""*      ft=>CissT Nehalem outupper dedign. However, duele Deay way several PCIass="line" name="L63105"> 1053a1435       73 href="+c7">2 */
13s=">1357d7c/ cl75r val * sbridge s"""""""""*           devices are groupedle geeayrle Dprovide MC funcrol,ality, we neesE 1053a1435       73 href="+c7ac2/sb_e25c.c#13dri>135op7ent p75r val * sbridge s""""""""v*           e Duse a differe 1053a1435       73drivers/e7">2/*135i37 75r val * sbridge s""""""""v*          lass="line" name="L63105"> 1053a1435       73s="commen7">2 * FI26D" c13s=">136=37 76s="line" name="L731">  262 * ea26c.c#13s=">1361p7ent p76_prBITd to 0_ida hnew_mdee=umutex_ theIELD"sbridge_mccutex_ theridgeuidge_devaarea_typeee_output,   h theIELD"sbridge_mce_output,   h thes="liine" name="L731">  262 * mo26MIT"13s=">136et7pri3276r valne" name="L931">  231423       73s="commen7">2 */
13s=">136ed7c/sb_763> unlikelyridge_ida hnew_mdee=uf=obese_pt_get_mci_fop;obesE  26136ed7c/sb_76_pr} else " c32;
 hrefsnprintfe=cutex_unltheIELD"sbridge_mccutex_unltheridgeuidge_devaarea_typeee_output,   h theIELD"sbridge_mce_output,   h thes="liine" name="L731">  261365d7c/sb_76_pr5) d to 0ad to 0a
 d to ine" name="L731">  26136is711cc/761205) d to 0aine" name="L731">  261367d7c/sb_76s="line" name="L731">  26136op7ent p76 hr5) d to 0a hrefu ;devbridgeridge_devaarea_typeee_output,   h istIELD"sbridge_mce_output,   h ists="lge_devams 0x3is_c istIELD"sbridge_mc ists="line" name="L731">  26136i37 76 hrifT_BITd t hrrivr; hrefpvt_inforee_outputunregister_chiL90" new_mdepmee_outputunregister_chiridge hrefpvt_inforee_outputdevF =sssbridge_pvtpment>;devbridiine" name="L731">  26137=d7c/ cl77s="line" name="L731">  2613 1p7ent p77_prifT_BITd t * sbridge s/td="L64" cl Release PCIDresourc
s  lass="line" name="L63105"> 1053a1435       73s="commen7de2=PCI_27MIT"13 hr>137et7prgis77a> devicciL90" statumpmen,_output unoall>devicciridgeiine" name="L731">  26137ed7c/gis77s="line" name="L731">  264       73 href="+c7de2=PCI_27EAVE13 hr>137"L75"gis77_pr} else " c_devame=uef="BIf=obese_pt_get_mci_fop;obesE  261375d7c/gis77_pr} ne" name="L731">  261376d7c/gis771205) d to 0a hrefmdee=umci_cutex_unltheIELD"sbridge_mccutex_unltheridgeuidge_devaarea_typeee_output,   h theIELD"sbridge_mce_output,   h thes="liine" name="L731">  262     27c_ch13s=">137cl7ssgis77s="liine" name="L731">  262     27c.c#13s=">137op7engis77s="line" name="L731">  262     27c.c#13s=">137i37tblL90" statumpmen,_output ci>tbls="liine" name="L731">  26138ed7c/gis78s="line" name="L731">  261381p7engis78_prif * sbridge s""""""""v*class="line" name="L63105"> 1053a1435       73s="commen7de2=PCI_282_ch13 hr>138et7pri3278r val * sbridge s""""""""v* *nnnnnntpment>;d731">  pci>d731"> d to 0ure foutd="L6modul1ass="line" name="L63105"> 1053a1435       73 href="+c7de2=PCI_2EVICE13 hr>138ed7c/sb_78r val * sbridge s""""""""v*  ass="line" name="L63105"> 1053a1435       73 href="+c7ac2/sb_e2ac.c#13dri>138ed7c/sb_78r val * sbridge sr* from themlass="line" name="L63105"> 1053a1435       73drivers/e7">2/* De2852" 13s=">1385d7c/sb_78_pr5)drBITd d to 0_ida hsbridge_pvpci>d63105F =sssbridge_pvpci>d63105hr5)  hrefpvt_inforee_outputd63105F =sssbridge_pve_outputd63105E(  26138is711cc/781205) d to 0a. hrefu 1F =ssmcnpment>;ri>1bridto 0a("Device tpment>4s4  64"" class="lgne" name="L731">  261387d7c/sb_787205) d to 0a. hrefu ; ;oberidggne" name="L731">  26138op7ent p788205) d to 0a. hrefu   26138i37 789205) d to 0a. hrefu (tblL90" statumpmen,_output ci>tbls="lgne" name="L731">  26139ed7c/sb_79r val}ine" name="L731">  261391p7ent p79t_prine" name="L731">  26139et7pri3279r val * sbridge s""""""""v*class="line" name="L63105"> 1053a1435       73 href="+c7de2=DRAM293DRA13 hr>139ed7c/sb_79r val * sbridge s""""""""v*  nnnnnntpment>;initTd t hrrivr;Modul1 """ri funcrol,ass="line" name="L63105"> 1053a1435       73 href="+c7de2=INTE294_ch13 hr>139ed7c/sb_79r val * sbridge sr* from them to 0aaaaaaaaaaaaaaaaaTri to initializetd="L6modul1 foutits devicciris="line" name="L63105"> 1053a1435       73 href="+c7de2=DRAM295DRA13 hr>1395d7c/sb_79 hrel * sbridge sr* from themlass="line" name="L63105"> 1053a1435       73st 139is711cc/791205)drBITd o 0_ida hrce=um(;_;inithr5)  hrefpvt_inforee_outputinitF =ssmcnpment>;e_outputinitridgeto 0ine" name="L731">  26
13r *>1397d7c/sb_79_pri3ine" name="L731">  26139op7ent p79 hr5) d to 0ao 0_ida hrce=um(rcF =ssmcnpment>; ci>rcbridine" name="L731">  26139i37 79s="line" name="L731">  26   ("%s\n&q"L64"" class="l"ine" name="L731">  261391p8ent p80t_prine" name="L731">  26href="+c8de2=SAD_2IMIT"14>hr>140et8pri3280a>  1053a1435       84>href="+c8de2=DRAM293DRA14>hr>140ed8c/sb_803> ;opdrBIutinitridgeiine" name="L731">  26href="+c8de2=INTE294_ch14>hr>140ed8c/sb_80s="line" name="L731">  261395d8c/sb_805pr5) d to 0a da hrce=um(rcF =ssmcnpment>; ci>rcbrid>(register_d63105F =sssbridge_pvpci>register_d63105ridgeuidge_devaarea_typeee_outputd63105F =sssbridge_pve_outputd63105E  26139is811 cl80r valne" name="L731">  26
13r *>1397d8c/sb_807205) d to 0ao 0_ida hranke=uef= ci>rcF =ssmcnpment>; ci>rcbrid>a 0a="0iline" name="L731">  26139op8ent p80t_pri32i32 br hrefmdee=umci_ccutregister_deumci_chainIELD"sbridge_mcccutregister_deumci_chainridgeuidge_devaarea_typeee_outputccutdeuF =sssbridge_pve_outputccutdeuE  26139i38 8a hrifT_BITd t hrrivr; d to  0ine" name="L731">  263 *   310omm14s=">141ed8c/sb_81 href="drivi;ine" name="L731">  263* ret31c.c#14s=">1411d8c/sb_81t_prine" name="L731">  26141et8pri3281a> "%s\n&qFailed e Dregister device witht singluot;dd."L64"" class="lgne" name="L731">  26141ed8c/sb_813> ;
 to 0a da hrce=um(rcF =ssmcnpment>; ci>rcbridiine" name="L731">  26141ed8c/sb_81s="line" name="L731">  261415d8c/sb_81 hrelse class d to   hrefsnprintfe= ci>rcF =ssmcnpment>; ci>rcbridine" name="L731">  26141is811cc/811205)ine" name="L731">  2614s7d8c/sb_81s="line" name="L731">  26141op8en cl81r val * sbridge s""""""""v*class="line" name="L63105"> 1053a1435       84>tch(4sxit()r;Modul1 "xit funcrol,ass="line" name="L63105"> 1053a1435       84lt; 1053a1435       84s="commen8="3inclu32comm14lt;>1421d8c/sb_82_prif * sbridge s""""""""v* *lass="line" name="L63105"> 1053a1435       84drivers/e8ac3ssb_e32ef="14dri>142et8pri328/a> ;_;exithr5)  hrefpvt_inforee_outputexitF =ssmcnpment>;e_outputexitridgeto 0ine" name="L731">  26142ed8c/sb_823>   26142ed8c/sb_82_pr} else " c_devame=uef="BI,   hlose_pt_  40_db  0,   hreister 2al * beding">"%s\n&q"L64"" class="l"ine" name="L731">  261425d8c/sb_825pr5) d to 0a da hrce=um(unregister_d63105F =sssbridge_pvpci>unregister_d63105ridgeuidge_devaarea_typeee_outputd63105F =sssbridge_pve_outputd63105E  26142is811cc/821205) d to 0a hrefmdee=umci_ccutunregister_deumci_chainIELD"sbridge_mcccutunregister_deumci_chainridgeuidge_devaarea_typeee_outputccutdeuF =sssbridge_pve_outputccutdeuE  261427d8c/ cl82s="liine" name="L731">  26142op8en cl82s="line" name="L731">  26tch(3/* St32c.c#14s=">142i38 82s="li_devaarea_typeemodul1tinitF =ssmcnpment>;modul1tinitridge hrefpvt_inforee_outputinitF =ssmcnpment>;e_outputinitridgiine" name="L731">  26143ed8c/gis83 hrefa hremdee=umci_modul1texitF =ssmcnpment>;modul1texitridge hrefpvt_inforee_outputexitF =ssmcnpment>;e_outputexitridgiine" name="L731">  261431p8engis83t_prine" name="L731">  26143et8prgis83r vala hremdee=umci_modul1tparamF =ssmcnpment>;modul1tparamridge hrefpvt_infore,   hop_drBIue_pt_  40_db  0,   hop_drBIu) d ge
  26143ed8c/gis83s="lia hremdee=umci_MODULE_PARM_DESCIELD"sbridge_mcMODULE_PARM_DESCridge hrefpvt_infore,   hop_drBIue_pt_  40_db  0,   hop_drBIu) d ge * beding">"%s\n&qshou EsinglReport;&# drBIu: 0=Poll,1=NMI64"" class="l"ine" name="L731">  263/*143"L85"gis83s="line" name="L731">  263 * Al335f="14s=">1435d8c/sb_83_pr5)a hremdee=umci_MODULE_LICENSEIELD"sbridge_mcMODULE_LICENSEridge * beding">"%s\n&qGPL64"" class="l"ine" name="L731">  263 */143is811cc/83r vala hremdee=umci_MODULE_AUTHORF =sssbridge_prMODULE_AUTHORridge * beding">"%s\n&qMauro Carvalho Chehab>ass=mchehab@redhat."""a 0a64"" class="l"ine" name="L731">  261437d8c/sb_83_prBIa hremdee=umci_MODULE_AUTHORF =sssbridge_prMODULE_AUTHORridge * beding">"%s\n&qRed Hat Inc. (http://www.redhat.""")64"" class="l"ine" name="L731">  26143op8ent p83t_pria hremdee=umci_MODULE_DESCRIPTIONF =ssmcnpment>;MODULE_DESCRIPTIONridge * beding">"%s\n&qMC D731"> foutIntel STthy Bment> figurationn'ts - 64"" class="lne" name="L731">  26tch(143i38 83 hrifT_BITd t hrrivr; 0a hrefmdee=umci_SBRIDGE_REVISIONF =ssmcnpment>;SBRIDGE_REVISIONs="l"ine" name="L731">  263/*144ed8c/sb_84 hr5)


Tay original LXR software by eay e" name="http://sourc fouge.net/projects/lxr">LXR """"unity) d ged="L6experi""""al 1"> ol, by e" name="mailto:lxr@f="ux.no">lxr@f="ux.no) d .
lxr.f="ux.no kindly hosted by e" name="http://www.redpill-f="pro.no">Redpill L="pro AS) d geprovider of L="uxaionsult;&# Tthloperarol,ssservices sbnce 1995.