| /linux/drivers/edac/ |
| H A D | edac_mc.c | 64 struct mem_ctl_info *mci = dimm->mci; in edac_dimm_info_location() local 68 for (i = 0; i < mci->n_layers; i++) { in edac_dimm_info_location() 70 edac_layer_name[mci->layers[i].type], in edac_dimm_info_location() 100 dimm->mci->csbased ? "rank" : "dimm", in edac_mc_dump_dimm() 117 edac_dbg(4, " csrow->mci = %p\n", csrow->mci); in edac_mc_dump_csrow() 120 static void edac_mc_dump_mci(struct mem_ctl_info *mci) in edac_mc_dump_mci() argument 122 edac_dbg(3, "\tmci = %p\n", mci); in edac_mc_dump_mci() 123 edac_dbg(3, "\tmci->mtype_cap = %lx\n", mci->mtype_cap); in edac_mc_dump_mci() 124 edac_dbg(3, "\tmci->edac_ctl_cap = %lx\n", mci->edac_ctl_cap); in edac_mc_dump_mci() 125 edac_dbg(3, "\tmci->edac_cap = %lx\n", mci->edac_cap); in edac_mc_dump_mci() [all …]
|
| H A D | pasemi_edac.c | 63 static u32 pasemi_edac_get_error_info(struct mem_ctl_info *mci) in pasemi_edac_get_error_info() argument 65 struct pci_dev *pdev = to_pci_dev(mci->pdev); in pasemi_edac_get_error_info() 84 static void pasemi_edac_process_error_info(struct mem_ctl_info *mci, u32 errsta) in pasemi_edac_process_error_info() argument 86 struct pci_dev *pdev = to_pci_dev(mci->pdev); in pasemi_edac_process_error_info() 101 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, in pasemi_edac_process_error_info() 102 mci->csrows[cs]->first_page, 0, 0, in pasemi_edac_process_error_info() 103 cs, 0, -1, mci->ctl_name, ""); in pasemi_edac_process_error_info() 108 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, in pasemi_edac_process_error_info() 109 mci->csrows[cs]->first_page, 0, 0, in pasemi_edac_process_error_info() 110 cs, 0, -1, mci->ctl_name, ""); in pasemi_edac_process_error_info() [all …]
|
| H A D | octeon_edac-lmc.c | 38 static void octeon_lmc_edac_poll(struct mem_ctl_info *mci) in octeon_lmc_edac_poll() argument 44 cfg0.u64 = cvmx_read_csr(CVMX_LMCX_MEM_CFG0(mci->mc_idx)); in octeon_lmc_edac_poll() 47 fadr.u64 = cvmx_read_csr(CVMX_LMCX_FADR(mci->mc_idx)); in octeon_lmc_edac_poll() 55 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, 0, 0, 0, in octeon_lmc_edac_poll() 62 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, 0, 0, 0, in octeon_lmc_edac_poll() 68 cvmx_write_csr(CVMX_LMCX_MEM_CFG0(mci->mc_idx), cfg0.u64); in octeon_lmc_edac_poll() 71 static void octeon_lmc_edac_poll_o2(struct mem_ctl_info *mci) in octeon_lmc_edac_poll_o2() argument 73 struct octeon_lmc_pvt *pvt = mci->pvt_info; in octeon_lmc_edac_poll_o2() 79 int_reg.u64 = cvmx_read_csr(CVMX_LMCX_INT(mci->mc_idx)); in octeon_lmc_edac_poll_o2() 91 fadr.u64 = cvmx_read_csr(CVMX_LMCX_FADR(mci->mc_idx)); in octeon_lmc_edac_poll_o2() [all …]
|
| H A D | edac_mc_sysfs.c | 269 static int edac_create_dimm_object(struct mem_ctl_info *mci, in edac_create_dimm_object() argument 273 dimm->mci = mci; in edac_create_dimm_object() 279 dimm->dev.parent = &mci->dev; in edac_create_dimm_object() 280 if (mci->csbased) in edac_create_dimm_object() 285 pm_runtime_forbid(&mci->dev); in edac_create_dimm_object() 315 struct mem_ctl_info *mci = to_mci(dev); in mci_reset_counters_store() local 319 mci->ue_mc = 0; in mci_reset_counters_store() 320 mci->ce_mc = 0; in mci_reset_counters_store() 321 mci->ue_noinfo_count = 0; in mci_reset_counters_store() 322 mci->ce_noinfo_count = 0; in mci_reset_counters_store() [all …]
|
| H A D | aspeed_edac.c | 92 static void count_rec(struct mem_ctl_info *mci, u8 rec_cnt, u32 rec_addr) in count_rec() argument 94 struct csrow_info *csrow = mci->csrows[0]; in count_rec() 107 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, rec_cnt-1, in count_rec() 118 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, in count_rec() 124 static void count_un_rec(struct mem_ctl_info *mci, u8 un_rec_cnt, in count_un_rec() argument 127 struct csrow_info *csrow = mci->csrows[0]; in count_un_rec() 139 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, in count_un_rec() 150 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, un_rec_cnt-1, in count_un_rec() 159 struct mem_ctl_info *mci = arg; in mcr_isr() local 165 dev_dbg(mci->pdev, "received edac interrupt w/ mcr register 50: 0x%x\n", in mcr_isr() [all …]
|
| H A D | fsl_ddr_edac.c | 71 struct mem_ctl_info *mci = to_mci(dev); in fsl_mc_inject_data_hi_show() local 72 struct fsl_mc_pdata *pdata = mci->pvt_info; in fsl_mc_inject_data_hi_show() 81 struct mem_ctl_info *mci = to_mci(dev); in fsl_mc_inject_data_lo_show() local 82 struct fsl_mc_pdata *pdata = mci->pvt_info; in fsl_mc_inject_data_lo_show() 91 struct mem_ctl_info *mci = to_mci(dev); in fsl_mc_inject_ctrl_show() local 92 struct fsl_mc_pdata *pdata = mci->pvt_info; in fsl_mc_inject_ctrl_show() 101 struct mem_ctl_info *mci = to_mci(dev); in fsl_mc_inject_data_hi_store() local 102 struct fsl_mc_pdata *pdata = mci->pvt_info; in fsl_mc_inject_data_hi_store() 121 struct mem_ctl_info *mci = to_mci(dev); in fsl_mc_inject_data_lo_store() local 122 struct fsl_mc_pdata *pdata = mci->pvt_info; in fsl_mc_inject_data_lo_store() [all …]
|
| H A D | highbank_mc_edac.c | 56 struct mem_ctl_info *mci = dev_id; in highbank_mc_err_handler() local 57 struct hb_mc_drvdata *drvdata = mci->pvt_info; in highbank_mc_err_handler() 65 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, in highbank_mc_err_handler() 69 mci->ctl_name, ""); in highbank_mc_err_handler() 75 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, in highbank_mc_err_handler() 79 mci->ctl_name, ""); in highbank_mc_err_handler() 87 static void highbank_mc_err_inject(struct mem_ctl_info *mci, u8 synd) in highbank_mc_err_inject() argument 89 struct hb_mc_drvdata *pdata = mci->pvt_info; in highbank_mc_err_inject() 103 struct mem_ctl_info *mci = to_mci(dev); in highbank_mc_inject_ctrl() local 109 highbank_mc_err_inject(mci, synd); in highbank_mc_inject_ctrl() [all …]
|
| H A D | cpc925_edac.c | 26 #define cpc925_mc_printk(mci, level, fmt, arg...) \ argument 27 edac_mc_chipset_printk(mci, level, "CPC925", fmt, ##arg) 314 static void cpc925_init_csrows(struct mem_ctl_info *mci) in cpc925_init_csrows() argument 316 struct cpc925_mc_pdata *pdata = mci->pvt_info; in cpc925_init_csrows() 326 for (index = 0; index < mci->nr_csrows; index++) { in cpc925_init_csrows() 337 csrow = mci->csrows[index]; in cpc925_init_csrows() 380 static void cpc925_mc_init(struct mem_ctl_info *mci) in cpc925_mc_init() argument 382 struct cpc925_mc_pdata *pdata = mci->pvt_info; in cpc925_mc_init() 402 static void cpc925_mc_exit(struct mem_ctl_info *mci) in cpc925_mc_exit() argument 435 static void cpc925_mc_get_pfn(struct mem_ctl_info *mci, u32 mear, in cpc925_mc_get_pfn() argument [all …]
|
| H A D | al_mc_edac.c | 74 static int handle_ce(struct mem_ctl_info *mci) in handle_ce() argument 77 struct al_mc_edac *al_mc = mci->pvt_info; in handle_ce() 97 dev_dbg(mci->pdev, "eccuaddr0=0x%08x eccuaddr1=0x%08x\n", in handle_ce() 112 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, in handle_ce() 113 ce_count, 0, 0, 0, 0, 0, -1, mci->ctl_name, msg); in handle_ce() 119 static int handle_ue(struct mem_ctl_info *mci) in handle_ue() argument 122 struct al_mc_edac *al_mc = mci->pvt_info; in handle_ue() 142 dev_dbg(mci->pdev, "eccuaddr0=0x%08x eccuaddr1=0x%08x\n", in handle_ue() 157 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, in handle_ue() 158 ue_count, 0, 0, 0, 0, 0, -1, mci->ctl_name, msg); in handle_ue() [all …]
|
| H A D | bluefield_edac.c | 173 static void bluefield_gather_report_ecc(struct mem_ctl_info *mci, in bluefield_gather_report_ecc() argument 177 struct bluefield_edac_priv *priv = mci->pvt_info; in bluefield_gather_report_ecc() 212 edac_mc_handle_error(ecc_type, mci, error_cnt, 0, 0, 0, in bluefield_gather_report_ecc() 213 0, 0, -1, mci->ctl_name, ""); in bluefield_gather_report_ecc() 241 edac_mc_handle_error(ecc_type, mci, error_cnt, in bluefield_gather_report_ecc() 244 syndrom, ecc_dimm, 0, 0, mci->ctl_name, ""); in bluefield_gather_report_ecc() 247 static void bluefield_edac_check(struct mem_ctl_info *mci) in bluefield_edac_check() argument 249 struct bluefield_edac_priv *priv = mci->pvt_info; in bluefield_edac_check() 257 if (mci->edac_cap == EDAC_FLAG_NONE) in bluefield_edac_check() 272 bluefield_gather_report_ecc(mci, single_error_count, 1); in bluefield_edac_check() [all …]
|
| H A D | ti_edac.c | 94 struct mem_ctl_info *mci = data; in ti_edac_isr() local 95 struct ti_edac *edac = mci->pvt_info; in ti_edac_isr() 106 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, err_count, in ti_edac_isr() 109 mci->ctl_name, "1B"); in ti_edac_isr() 114 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, in ti_edac_isr() 117 mci->ctl_name, "2B"); in ti_edac_isr() 121 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, in ti_edac_isr() 123 mci->ctl_name, "WR"); in ti_edac_isr() 130 static void ti_edac_setup_dimm(struct mem_ctl_info *mci, u32 type) in ti_edac_setup_dimm() argument 133 struct ti_edac *edac = mci->pvt_info; in ti_edac_setup_dimm() [all …]
|
| H A D | npcm_edac.c | 104 static void handle_ce(struct mem_ctl_info *mci) in handle_ce() argument 106 struct priv_data *priv = mci->pvt_info; in handle_ce() 133 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, 1, addr >> PAGE_SHIFT, in handle_ce() 137 static void handle_ue(struct mem_ctl_info *mci) in handle_ue() argument 139 struct priv_data *priv = mci->pvt_info; in handle_ue() 166 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, 1, addr >> PAGE_SHIFT, in handle_ue() 173 struct mem_ctl_info *mci = dev_id; in edac_ecc_isr() local 176 pdata = ((struct priv_data *)mci->pvt_info)->pdata; in edac_ecc_isr() 179 handle_ce(mci); in edac_ecc_isr() 186 handle_ue(mci); in edac_ecc_isr() [all …]
|
| H A D | dmc520_edac.c | 365 static void dmc520_handle_dram_ecc_errors(struct mem_ctl_info *mci, in dmc520_handle_dram_ecc_errors() argument 368 struct dmc520_edac *pvt = mci->pvt_info; in dmc520_handle_dram_ecc_errors() 387 mci, cnt, 0, 0, 0, info.rank, -1, -1, in dmc520_handle_dram_ecc_errors() 392 static irqreturn_t dmc520_edac_dram_ecc_isr(int irq, struct mem_ctl_info *mci, in dmc520_edac_dram_ecc_isr() argument 395 struct dmc520_edac *pvt = mci->pvt_info; in dmc520_edac_dram_ecc_isr() 400 dmc520_handle_dram_ecc_errors(mci, is_ce); in dmc520_edac_dram_ecc_isr() 407 static irqreturn_t dmc520_edac_dram_all_isr(int irq, struct mem_ctl_info *mci, in dmc520_edac_dram_all_isr() argument 410 struct dmc520_edac *pvt = mci->pvt_info; in dmc520_edac_dram_all_isr() 418 irq_ret = dmc520_edac_dram_ecc_isr(irq, mci, true); in dmc520_edac_dram_all_isr() 422 irq_ret = dmc520_edac_dram_ecc_isr(irq, mci, false); in dmc520_edac_dram_all_isr() [all …]
|
| H A D | armada_xp_edac.c | 127 static void axp_mc_check(struct mem_ctl_info *mci) in axp_mc_check() argument 129 struct axp_mc_drvdata *drvdata = mci->pvt_info; in axp_mc_check() 165 dev_warn(mci->pdev, "inconsistent SBE count detected\n"); in axp_mc_check() 170 dev_warn(mci->pdev, "inconsistent DBE count detected\n"); in axp_mc_check() 175 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, in axp_mc_check() 179 mci->ctl_name, in axp_mc_check() 182 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, in axp_mc_check() 186 mci->ctl_name, in axp_mc_check() 203 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, in axp_mc_check() 209 mci->ctl_name, drvdata->msg); in axp_mc_check() [all …]
|
| H A D | synopsys_edac.c | 508 static void handle_error(struct mem_ctl_info *mci, struct synps_ecc_status *p) in handle_error() argument 510 struct synps_edac_priv *priv = mci->pvt_info; in handle_error() 528 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, in handle_error() 546 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, in handle_error() 603 struct mem_ctl_info *mci = dev_id; in intr_handler() local 607 priv = mci->pvt_info; in intr_handler() 627 handle_error(mci, &priv->stat); in intr_handler() 644 static void check_errors(struct mem_ctl_info *mci) in check_errors() argument 650 priv = mci->pvt_info; in check_errors() 659 handle_error(mci, &priv->stat); in check_errors() [all …]
|
| H A D | versal_edac.c | 414 static void handle_error(struct mem_ctl_info *mci, struct ecc_status *stat) in handle_error() argument 416 struct edac_priv *priv = mci->pvt_info; in handle_error() 427 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, in handle_error() 440 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, in handle_error() 457 struct mem_ctl_info *mci = (struct mem_ctl_info *)data; in err_callback() local 462 priv = mci->pvt_info; in err_callback() 475 handle_error(mci, &priv->stat); in err_callback() 590 static void init_csrows(struct mem_ctl_info *mci) in init_csrows() argument 592 struct edac_priv *priv = mci->pvt_info; in init_csrows() 600 for (row = 0; row < mci->nr_csrows; row++) { in init_csrows() [all …]
|
| H A D | versalnet_edac.c | 160 struct mem_ctl_info *mci[NUM_CONTROLLERS]; member 433 struct mem_ctl_info *mci; in handle_error() local 441 mci = priv->mci[ctl_num]; in handle_error() 449 edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, in handle_error() 460 edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, in handle_error() 476 static void mc_init(struct mem_ctl_info *mci, struct device *dev) in mc_init() argument 478 struct mc_priv *priv = mci->pvt_info; in mc_init() 485 mci->mtype_cap = MEM_FLAG_DDR5; in mc_init() 486 mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED; in mc_init() 487 mci->scrub_cap = SCRUB_HW_SRC; in mc_init() [all …]
|
| H A D | sb_edac.c | 46 #define sbridge_mc_printk(mci, level, fmt, arg...) \ argument 47 edac_mc_chipset_printk(mci, level, "sbridge", fmt, ##arg) 369 struct mem_ctl_info *mci; member 1561 static void get_source_id(struct mem_ctl_info *mci) in get_source_id() argument 1563 struct sbridge_pvt *pvt = mci->pvt_info; in get_source_id() 1578 static int __populate_dimms(struct mem_ctl_info *mci, in __populate_dimms() argument 1582 struct sbridge_pvt *pvt = mci->pvt_info; in __populate_dimms() 1620 dimm = edac_get_dimm(mci, i, j, 0); in __populate_dimms() 1679 static int get_dimm_config(struct mem_ctl_info *mci) in get_dimm_config() argument 1681 struct sbridge_pvt *pvt = mci->pvt_info; in get_dimm_config() [all …]
|
| H A D | pnd2_edac.c | 94 void (*get_dimm_config)(struct mem_ctl_info *mci); 95 int (*pmi2mem)(struct mem_ctl_info *mci, u64 pmiaddr, u32 pmiidx, 107 #define pnd2_mc_printk(mci, level, fmt, arg...) \ argument 108 edac_mc_chipset_printk(mci, level, "pnd2", fmt, ##arg) 904 static int apl_pmi2mem(struct mem_ctl_info *mci, u64 pmiaddr, u32 pmiidx, in apl_pmi2mem() argument 908 struct pnd2_pvt *pvt = mci->pvt_info; in apl_pmi2mem() 974 static int dnv_pmi2mem(struct mem_ctl_info *mci, u64 pmiaddr, u32 pmiidx, in dnv_pmi2mem() argument 1095 static int get_memory_error_data(struct mem_ctl_info *mci, u64 addr, in get_memory_error_data() argument 1111 ret = ops->pmi2mem(mci, pmiaddr, pmiidx, daddr, msg); in get_memory_error_data() 1121 static void pnd2_mce_output_error(struct mem_ctl_info *mci, const struct mce *m, in pnd2_mce_output_error() argument [all …]
|
| H A D | edac_module.h | 29 extern int edac_create_sysfs_mci_device(struct mem_ctl_info *mci, 31 extern void edac_remove_sysfs_mci_device(struct mem_ctl_info *mci); 68 void edac_create_debugfs_nodes(struct mem_ctl_info *mci); 84 static inline void edac_create_debugfs_nodes(struct mem_ctl_info *mci) { } in edac_create_debugfs_nodes() argument
|
| /linux/drivers/net/wireless/ath/ath9k/ |
| H A D | mci.c | 26 ath_mci_find_profile(struct ath_mci_profile *mci, in ath_mci_find_profile() argument 31 if (list_empty(&mci->info)) in ath_mci_find_profile() 34 list_for_each_entry(entry, &mci->info, list) { in ath_mci_find_profile() 42 struct ath_mci_profile *mci, in ath_mci_add_profile() argument 48 if ((mci->num_sco == ATH_MCI_MAX_SCO_PROFILE) && in ath_mci_add_profile() 52 if (((NUM_PROF(mci) - mci->num_sco) == ATH_MCI_MAX_ACL_PROFILE) && in ath_mci_add_profile() 61 INC_PROF(mci, info); in ath_mci_add_profile() 62 list_add_tail(&entry->list, &mci->info); in ath_mci_add_profile() 65 mci->voice_priority = voice_priority[info->voice_type]; in ath_mci_add_profile() 67 mci->voice_priority = 110; in ath_mci_add_profile() [all …]
|
| H A D | gpio.c | 174 struct ath_mci_profile *mci = &btcoex->mci; in ath_mci_ftp_adjust() local 179 (mci->num_pan || mci->num_other_acl)) in ath_mci_ftp_adjust() 180 ah->btcoex_hw.mci.stomp_ftp = in ath_mci_ftp_adjust() 183 ah->btcoex_hw.mci.stomp_ftp = false; in ath_mci_ftp_adjust() 347 struct ath_mci_profile *mci = &sc->btcoex.mci; in ath9k_btcoex_aggr_limit() local 350 if ((sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_MCI) && mci->aggr_limit) in ath9k_btcoex_aggr_limit() 351 aggr_limit = (max_4ms_framelen * mci->aggr_limit) >> 4; in ath9k_btcoex_aggr_limit() 395 ath_mci_flush_profile(&sc->btcoex.mci); in ath9k_stop_btcoex() 437 INIT_LIST_HEAD(&sc->btcoex.mci.info); in ath9k_init_btcoex() 456 struct ath_mci_profile *mci = &btcoex->mci; in ath9k_dump_mci_btcoex() local [all …]
|
| /linux/drivers/media/pci/ddbridge/ |
| H A D | ddbridge-sx8.c | 36 struct mci mci; member 49 struct mci_base *mci_base = state->mci.base; in release() 67 cmd.demod = state->mci.demod; in get_info() 68 stat = ddb_mci_cmd(&state->mci, &cmd, &state->signal_info); in get_info() 108 cmd.demod = state->mci.demod; in read_status() 109 stat = ddb_mci_cmd(&state->mci, &cmd, &res); in read_status() 127 struct mci_base *mci_base = state->mci.base; in mci_set_tuner() 132 cmd.tuner = state->mci.tuner; in mci_set_tuner() 134 cmd.sx8_input_enable.flags = sx8_base->gain_mode[state->mci.tuner]; in mci_set_tuner() 135 return ddb_mci_cmd(&state->mci, &cmd, NULL); in mci_set_tuner() [all …]
|
| H A D | ddbridge-mci.h | 224 struct mci { struct 237 int (*init)(struct mci *mci); argument 245 int ddb_mci_cmd(struct mci *state, struct mci_command *command, 247 int ddb_mci_config(struct mci *state, u32 config);
|
| H A D | ddbridge-mci.c | 16 static int mci_reset(struct mci *state) in mci_reset() 42 int ddb_mci_config(struct mci *state, u32 config) in ddb_mci_config() 52 static int _mci_cmd_unlocked(struct mci *state, in _mci_cmd_unlocked() 80 int ddb_mci_cmd(struct mci *state, in ddb_mci_cmd() 111 static int probe(struct mci *state) in probe() 125 struct mci *state; in ddb_mci_attach()
|