nb_regs
nb_regs_t *rp = &log->nb_regs;
nb_regs_t *rp = &log->nb_regs;
nb_log.nb_regs.chipset = nb_chipset;
nb_log.nb_regs.ferr = ferr;
nb_log.nb_regs.nerr = nerr;
nb_fsb_err_payload(const nb_regs_t *nb_regs, nvlist_t *payload,
DATA_TYPE_UINT8, nb_regs->nb.fsb_regs.fsb, NULL);
DATA_TYPE_UINT8, nb_regs->nb.fsb_regs.ferr_fat_fsb, NULL);
DATA_TYPE_UINT8, nb_regs->nb.fsb_regs.nerr_fat_fsb, NULL);
DATA_TYPE_UINT8, nb_regs->nb.fsb_regs.ferr_nf_fsb, NULL);
DATA_TYPE_UINT8, nb_regs->nb.fsb_regs.nerr_nf_fsb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fsb_regs.nrecfsb, NULL);
DATA_TYPE_UINT64, nb_regs->nb.fsb_regs.nrecfsb_addr, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fsb_regs.recfsb, NULL);
nb_pex_err_payload(const nb_regs_t *nb_regs, nvlist_t *payload,
DATA_TYPE_UINT8, nb_regs->nb.pex_regs.pex, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.pex_fat_ferr, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.pex_fat_nerr, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.pex_nf_corr_ferr, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.pex_nf_corr_nerr, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.uncerrsev, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.rperrsts, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.rperrsid, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.uncerrsts, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.aerrcapctrl, NULL);
DATA_TYPE_UINT32, nb_regs->nb.pex_regs.corerrsts, NULL);
DATA_TYPE_UINT16, nb_regs->nb.pex_regs.pexdevsts, NULL);
nb_int_err_payload(const nb_regs_t *nb_regs, nvlist_t *payload,
DATA_TYPE_UINT16, nb_regs->nb.int_regs.ferr_fat_int, NULL);
DATA_TYPE_UINT16, nb_regs->nb.int_regs.ferr_nf_int, NULL);
DATA_TYPE_UINT16, nb_regs->nb.int_regs.nerr_fat_int, NULL);
DATA_TYPE_UINT16, nb_regs->nb.int_regs.nerr_nf_int, NULL);
DATA_TYPE_UINT32, nb_regs->nb.int_regs.nrecint, NULL);
DATA_TYPE_UINT32, nb_regs->nb.int_regs.recint, NULL);
DATA_TYPE_UINT64, nb_regs->nb.int_regs.nrecsf, NULL);
DATA_TYPE_UINT64, nb_regs->nb.int_regs.recsf, NULL);
nb_fat_fbd_err_payload(const nb_regs_t *nb_regs, nvlist_t *payload,
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.ferr_fat_fbd, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nerr_fat_fbd, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nrecmema, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nrecmemb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nrecfglog, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nrecfbda, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nrecfbdb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nrecfbdc, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nrecfbdd, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nrecfbde, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.nrecfbdf, NULL);
DATA_TYPE_UINT8, nb_regs->nb.fat_fbd_regs.spcps, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.spcpc, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.uerrcnt, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.uerrcnt_last, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.badrama, NULL);
DATA_TYPE_UINT16, nb_regs->nb.fat_fbd_regs.badramb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.fat_fbd_regs.badcnt, NULL);
nb_nf_fbd_err_payload(const nb_regs_t *nb_regs, nvlist_t *payload,
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.ferr_nf_fbd, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.nerr_nf_fbd, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.recmema, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.recmemb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.recfglog, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.recfbda, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.recfbdb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.recfbdc, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.recfbdd, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.recfbde, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.recfbdf, NULL);
DATA_TYPE_UINT8, nb_regs->nb.nf_fbd_regs.spcps, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.spcpc, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.cerrcnta, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.cerrcntb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.cerrcntc,
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.cerrcntd,
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.cerrcnta_last,
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.cerrcntb_last,
nb_regs->nb.nf_fbd_regs.cerrcntc_last, NULL);
nb_regs->nb.nf_fbd_regs.cerrcntd_last, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.cerrcnta, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.cerrcnta_last,
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.badrama, NULL);
DATA_TYPE_UINT16, nb_regs->nb.nf_fbd_regs.badramb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_fbd_regs.badcnt, NULL);
nb_nf_mem_err_payload(const nb_regs_t *nb_regs, nvlist_t *payload,
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.ferr_nf_mem, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.nerr_nf_mem, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.recmema, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.recmemb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.redmema, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.redmemb, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.nrecmema, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.nrecmemb, NULL);
DATA_TYPE_UINT8, nb_regs->nb.nf_mem_regs.spcps, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.spcpc, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.cerrcnt, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.cerrcnt_last, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.cerrcnt_ext, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.cerrcnt_ext_last, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.badram, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.badcnt, NULL);
DATA_TYPE_UINT32, nb_regs->nb.nf_mem_regs.validlog, NULL);
nb_dma_err_payload(const nb_regs_t *nb_regs, nvlist_t *payload)
DATA_TYPE_UINT16, nb_regs->nb.dma_regs.pcists, NULL);
DATA_TYPE_UINT16, nb_regs->nb.dma_regs.pexdevsts, NULL);
nb_thr_err_payload(const nb_regs_t *nb_regs, nvlist_t *payload,
DATA_TYPE_UINT8, nb_regs->nb.thr_regs.ferr_fat_thr, NULL);
DATA_TYPE_UINT8, nb_regs->nb.thr_regs.nerr_fat_thr, NULL);
DATA_TYPE_UINT8, nb_regs->nb.thr_regs.ferr_nf_thr, NULL);
DATA_TYPE_UINT8, nb_regs->nb.thr_regs.nerr_nf_thr, NULL);
DATA_TYPE_UINT8, nb_regs->nb.thr_regs.ctsts, NULL);
DATA_TYPE_UINT16, nb_regs->nb.thr_regs.thrtsts, NULL);
const nb_regs_t *nb_regs = &acl->nb_regs;
switch (nb_regs->flag) {
nb_fsb_err_payload(nb_regs, payload, data);
nb_pex_err_payload(nb_regs, payload, data);
nb_int_err_payload(nb_regs, payload, data);
nb_fat_fbd_err_payload(nb_regs, payload, data);
nb_nf_fbd_err_payload(nb_regs, payload, data);
nb_dma_err_payload(nb_regs, payload);
nb_thr_err_payload(nb_regs, payload, data);
nb_nf_mem_err_payload(nb_regs, payload, data);
DATA_TYPE_UINT64, nb_regs->ferr, NULL);
DATA_TYPE_UINT32, nb_regs->nerr, NULL);
nb_fsb_report(const nb_regs_t *nb_regs, char *class, nvlist_t *detector,
chip = nb_regs->nb.fsb_regs.fsb * 2;
chip = nb_regs->nb.fsb_regs.fsb;
if (nb_regs->nb.fsb_regs.ferr_fat_fsb == 0 &&
nb_regs->nb.fsb_regs.ferr_nf_fsb == 0) {
data->intel_error_list = intel_fsb_err(nb_regs->nb.fsb_regs.fsb,
nb_regs->nb.fsb_regs.nerr_fat_fsb,
nb_regs->nb.fsb_regs.nerr_nf_fsb);
data->intel_error_list = intel_fsb_err(nb_regs->nb.fsb_regs.fsb,
nb_regs->nb.fsb_regs.ferr_fat_fsb,
nb_regs->nb.fsb_regs.ferr_nf_fsb);
nb_pex_report(const nb_regs_t *nb_regs, char *class, nvlist_t *detector,
if (nb_regs->nb.pex_regs.pex == 0) {
hostbridge = nb_regs->nb.pex_regs.pex - 1;
if (nb_regs->nb.pex_regs.pex_fat_ferr == 0 &&
nb_regs->nb.pex_regs.pex_nf_corr_ferr == 0) {
nb_regs->nb.pex_regs.pex_fat_nerr,
nb_regs->nb.pex_regs.pex_nf_corr_nerr);
intel_pex_err(nb_regs->nb.pex_regs.pex_fat_nerr,
nb_regs->nb.pex_regs.pex_nf_corr_nerr);
nb_regs->nb.pex_regs.pex_fat_ferr,
nb_regs->nb.pex_regs.pex_nf_corr_ferr);
intel_pex_err(nb_regs->nb.pex_regs.pex_fat_ferr,
nb_regs->nb.pex_regs.pex_nf_corr_ferr);
if (nb_regs->nb.pex_regs.pex == 0) {
nb_int_report(const nb_regs_t *nb_regs, char *class, nvlist_t *detector,
if (nb_regs->nb.int_regs.ferr_fat_int == 0 &&
nb_regs->nb.int_regs.ferr_nf_int == 0) {
intel_int_err(nb_regs->nb.int_regs.nerr_fat_int,
nb_regs->nb.int_regs.nerr_nf_int);
intel_int_err(nb_regs->nb.int_regs.ferr_fat_int,
nb_regs->nb.int_regs.ferr_nf_int);
nb_fat_fbd_report(const nb_regs_t *nb_regs, char *class, nvlist_t *detector,
intr = fat_memory_error(nb_regs, data);
nb_nf_fbd_report(const nb_regs_t *nb_regs, char *class, nvlist_t *detector,
intr = nf_memory_error(nb_regs, data);
nb_thr_report(const nb_regs_t *nb_regs, char *class, nvlist_t *detector,
intel_thr_err(nb_regs->nb.thr_regs.ferr_fat_thr,
nb_regs->nb.thr_regs.ferr_nf_thr);
nb_nf_mem_report(const nb_regs_t *nb_regs, char *class, nvlist_t *detector,
intr = nf_mem_error(nb_regs, data);
nb_report(const nb_regs_t *nb_regs, char *class, nv_alloc_t *nva, void *scratch)
switch (nb_regs->flag) {
nb_fsb_report(nb_regs, class, detector, scratch);
nb_pex_report(nb_regs, class, detector, scratch);
nb_int_report(nb_regs, class, detector, scratch);
nb_fat_fbd_report(nb_regs, class, detector, scratch);
nb_nf_fbd_report(nb_regs, class, detector, scratch);
nb_thr_report(nb_regs, class, detector, scratch);
nb_nf_mem_report(nb_regs, class, detector, scratch);
detector = nb_report(&acl->nb_regs, buf, nva, &nb_scatchpad);
nb_regs_t nb_regs;