• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/edac/

Lines Matching refs:status

174  * Various status data gathered and manipulated when checking and
175 * reporting ECC status.
275 * @status: A pointer to the ECC status structure to check for an
286 ppc4xx_edac_check_bank_error(const struct ppc4xx_ecc_status *status,
291 return status->ecces & SDRAM_ECCES_BK0ER;
293 return status->ecces & SDRAM_ECCES_BK1ER;
300 * ppc4xx_edac_generate_bank_message - generate interpretted bank status message
303 * @status: A pointer to the ECC status structure to generate the
311 * field of the specified ECC status.
318 const struct ppc4xx_ecc_status *status,
335 if (ppc4xx_edac_check_bank_error(status, row)) {
365 * @status: A pointer to the ECC status structure to generate the
373 * field of the specified ECC status.
380 const struct ppc4xx_ecc_status *status,
387 switch (status->ecces & SDRAM_ECCES_CKBER_MASK) {
423 * @status: A pointer to the ECC status structure to generate the
431 * field of the specified ECC status.
438 const struct ppc4xx_ecc_status *status,
457 if ((status->ecces & SDRAM_ECCES_BNCE_ENCODE(lane)) != 0) {
485 * ppc4xx_edac_generate_ecc_message - generate interpretted ECC status message
488 * @status: A pointer to the ECC status structure to generate the
496 * the specified ECC status.
503 const struct ppc4xx_ecc_status *status,
509 n = ppc4xx_edac_generate_bank_message(mci, status, buffer, size);
518 n = ppc4xx_edac_generate_checkbit_message(mci, status, buffer, size);
527 n = ppc4xx_edac_generate_lane_message(mci, status, buffer, size);
541 * ppc4xx_edac_generate_plb_message - generate interpretted PLB status message
544 * @status: A pointer to the ECC status structure to generate the
552 * and/or WMIRQ registers of the specified ECC status.
559 const struct ppc4xx_ecc_status *status,
566 if ((status->besr & SDRAM_BESR_MASK) == 0)
569 if ((status->besr & SDRAM_BESR_M0ET_MASK) == SDRAM_BESR_M0ET_NONE)
572 read = ((status->besr & SDRAM_BESR_M0RW_MASK) == SDRAM_BESR_M0RW_READ);
574 master = SDRAM_BESR_M0ID_DECODE(status->besr);
586 * ppc4xx_edac_generate_message - generate interpretted status message
589 * @status: A pointer to the ECC status structure to generate the
596 * EDAC report message from the specified ECC status.
600 const struct ppc4xx_ecc_status *status,
609 n = ppc4xx_edac_generate_ecc_message(mci, status, buffer, size);
617 ppc4xx_edac_generate_plb_message(mci, status, buffer, size);
622 * ppc4xx_ecc_dump_status - dump controller ECC status registers
624 * associated with the status being dumped.
625 * @status: A pointer to the ECC status structure to generate the
629 * interpretted specified ECC status.
633 const struct ppc4xx_ecc_status *status)
637 ppc4xx_edac_generate_message(mci, status, message, sizeof(message));
646 status->ecces,
647 status->wmirq,
648 status->besr,
649 status->bearh,
650 status->bearl,
656 * ppc4xx_ecc_get_status - get controller ECC status
658 * associated with the status being retrieved.
659 * @status: A pointer to the ECC status structure to populate the
660 * ECC status with.
663 * status registers that deal with ibm,sdram-4xx-ddr2 ECC errors.
670 struct ppc4xx_ecc_status *status)
675 status->ecces = mfsdram(dcr_host, SDRAM_ECCES) & SDRAM_ECCES_MASK;
676 status->wmirq = mfsdram(dcr_host, SDRAM_WMIRQ) & SDRAM_WMIRQ_MASK;
677 status->besr = mfsdram(dcr_host, SDRAM_BESR) & SDRAM_BESR_MASK;
678 status->bearl = mfsdram(dcr_host, SDRAM_BEARL);
679 status->bearh = mfsdram(dcr_host, SDRAM_BEARH);
683 * ppc4xx_ecc_clear_status - clear controller ECC status
685 * associated with the status being cleared.
686 * @status: A pointer to the ECC status structure containing the
687 * values to write to clear the ECC status.
689 * This routine clears--by writing the masked (as appropriate) status
690 * values back to--the status registers that deal with
695 const struct ppc4xx_ecc_status *status)
700 mtsdram(dcr_host, SDRAM_ECCES, status->ecces & SDRAM_ECCES_MASK);
701 mtsdram(dcr_host, SDRAM_WMIRQ, status->wmirq & SDRAM_WMIRQ_MASK);
702 mtsdram(dcr_host, SDRAM_BESR, status->besr & SDRAM_BESR_MASK);
711 * @status: A pointer to the ECC status structure associated with
716 * enough status available to use the full EDAC correctable error
722 const struct ppc4xx_ecc_status *status)
727 ppc4xx_edac_generate_message(mci, status, message, sizeof(message));
730 if (ppc4xx_edac_check_bank_error(status, row))
739 * @status: A pointer to the ECC status structure associated with
747 const struct ppc4xx_ecc_status *status)
749 const u64 bear = ((u64)status->bearh << 32 | status->bearl);
755 ppc4xx_edac_generate_message(mci, status, message, sizeof(message));
758 if (ppc4xx_edac_check_bank_error(status, row))
778 struct ppc4xx_ecc_status status;
780 ppc4xx_ecc_get_status(mci, &status);
784 ppc4xx_ecc_dump_status(mci, &status);
787 if (status.ecces & SDRAM_ECCES_UE)
788 ppc4xx_edac_handle_ue(mci, &status);
790 if (status.ecces & SDRAM_ECCES_CE)
791 ppc4xx_edac_handle_ce(mci, &status);
793 ppc4xx_ecc_clear_status(mci, &status);
805 * polling to check, report and clear the ECC status.
895 int status = 0;
959 status = -EINVAL;
991 return status;
1022 int status = 0;
1086 status = ppc4xx_edac_init_csrows(mci, mcopt1);
1088 if (status)
1092 return status;
1113 int status = 0;
1124 status = -ENODEV;
1128 status = request_irq(ded_irq,
1134 if (status < 0) {
1138 status = -ENODEV;
1142 status = request_irq(sec_irq,
1148 if (status < 0) {
1152 status = -ENODEV;
1171 return status;
1243 int status = 0;
1267 status = ppc4xx_edac_map_dcrs(np, &dcr_host);
1269 if (status)
1270 return status;
1284 status = -ENODEV;
1303 status = -ENOMEM;
1307 status = ppc4xx_edac_mc_init(mci, op, match, &dcr_host, mcopt1);
1309 if (status) {
1324 status = -ENODEV;
1329 status = ppc4xx_edac_register_irq(op, mci);
1331 if (status)
1346 return status;