00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * CDDL HEADER START
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * The contents of this file are subject to the terms of the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Common Development and Distribution License (the "License").
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * You may not use this file except in compliance with the License.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * or http://www.opensolaris.org/os/licensing.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * See the License for the specific language governing permissions
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * and limitations under the License.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * When distributing Covered Code, include this CDDL HEADER in each
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * If applicable, add the following below this CDDL HEADER, with the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * fields enclosed by brackets "[]" replaced with your own identifying
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * information: Portions Copyright [yyyy] [name of copyright owner]
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * CDDL HEADER END
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hanson * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Use is subject to license terms.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#pragma dictionary "PCIEX"
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
0eb822a1c0c2bea495647510b75f77f0e57633ebcindi#include <fm/topo_hc.h>
0eb822a1c0c2bea495647510b75f77f0e57633ebcindi
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * FIT rates - assume leaf devices are somewhat less reliable than
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * root complexes, switches and bridges
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_RC_FIT 500
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_SW_FIT 500
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_BDG_FIT 500
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_DEV_FIT 1000
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_RC_INV_FIT 500
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_DEV_INV_FIT 1000
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_RC_NR_FIT 500
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_SW_NR_FIT 500
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_BDG_NR_FIT 500
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_DEV_NR_FIT 1000
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_BUS_FIT 500
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define PCIEX_BUS_NR_FIT 500
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * SERD parameters.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * PCI Express correctable link errors are automatically handled by the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * hardware, so have relatively little impact and we can allow quite a
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * high frequency. We will also be quite conservative about nonfatal internal
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * errors reported by the driver.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Nonfatal dpe errors (ptlp/ecrc errors) have to be recovered by the hardened
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * driver which may cause intermittant performance/responsiveness problems, so
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * we have tighter serd parameters for these. These are most likely errors in
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * buffers/caches within devices and bridges, so use similar rates to cpu
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * data cache parity errors.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define CORRLINK_COUNT 6
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define CORRLINK_TIME 2h
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define BTLP_COUNT 6
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define BTLP_TIME 2h
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define BDLLP_COUNT 6
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define BDLLP_TIME 2h
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define RTO_COUNT 6
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define RTO_TIME 2h
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define RNR_COUNT 6
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define RNR_TIME 2h
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define RE_COUNT 6
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson#define RE_TIME 2h
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define NONFATAL_DPE_COUNT 3
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define NONFATAL_DPE_TIME 168h
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * if the source-id payload is valid, then check it matches
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define SOURCE_ID_MATCHES_BDF \
e5ba14ff435beeefdaa2e6649e175c74afe02c76stephh (!payloadprop_defined("source-valid") || \
e5ba14ff435beeefdaa2e6649e175c74afe02c76stephh payloadprop("source-valid") == 0 || \
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet payloadprop("source-id") == ((b << 8) | (d << 3) | f))
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet#define SOURCE_ID_MATCHES_OWN_BDF \
e5ba14ff435beeefdaa2e6649e175c74afe02c76stephh (payloadprop_defined("source-valid") && \
e5ba14ff435beeefdaa2e6649e175c74afe02c76stephh payloadprop("source-valid") == 1 && \
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh payloadprop("source-id") == (confprop(pciexrc, TOPO_PCI_BDF) + 0))
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Other useful macros. These use the EXCAP property (PCI Express Capabilities
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * register) to find the type for PCI Express devices, and the CLASS-CODE
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * property (PCI Class Code register) for to find the type of PCI devices behind
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * a PCI Express-PCI bridge - note that 60400 and 60401 are defined as PCI-PCI
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * bridges, everything else is consider a PCI leaf device.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define PCIEXFN pciexbus/pciexdev/pciexfn
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define PCIEXFNHZ pciexbus<>/pciexdev<>/pciexfn<>
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define PCIEXFN1 pciexbus[b]/pciexdev[d]/pciexfn[f]
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define PCIFN pcibus/pcidev/pcifn
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define PCIFNHZ pcibus<>/pcidev<>/pcifn<>
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define PCIFN1 pcibus[b]/pcidev[d]/pcifn[f]
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define IS_LF(f) (confprop(f, TOPO_PCI_EXCAP) == "pciexdev")
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define IS_BG(f) (confprop(f, TOPO_PCI_EXCAP) == "pcibus")
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define IS_SD(f) (confprop(f, TOPO_PCI_EXCAP) == "pciexswd")
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define IS_SU(f) (confprop(f, TOPO_PCI_EXCAP) == "pciexswu")
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh#define IS_PCI_LF(f) (confprop_defined(f, TOPO_PCI_CLASS) && \
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh confprop(f, TOPO_PCI_CLASS) != "60400" && \
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh confprop(f, TOPO_PCI_CLASS) != "60401")
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * define faults
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hansonevent fault.io.pciex.fw_corrupt@PCIEXFN, FITrate=PCIEX_DEV_FIT, retire=0;
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hansonevent fault.io.pciex.fw_mismatch@PCIEXFN, FITrate=PCIEX_DEV_FIT, retire=0;
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-interr@PCIEXFN, FITrate=PCIEX_DEV_FIT;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-interr-deg@PCIEXFN, FITrate=PCIEX_DEV_FIT, retire=0;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhengine serd.io.pciex.flt-nf@PCIEXFN, N=NONFATAL_DPE_COUNT, T=NONFATAL_DPE_TIME;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-interr-unaf@PCIEXFN, FITrate=PCIEX_DEV_FIT,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh engine=serd.io.pciex.flt-nf@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hansonengine serd.io.device.nonfatal@PCIEXFN, N=CORRLINK_COUNT, T=CORRLINK_TIME;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-interr-corr@PCIEXFN, FITrate=PCIEX_DEV_FIT,
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hanson engine=serd.io.device.nonfatal@PCIEXFN;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonengine serd.io.device.nonfatal@PCIEXFN/PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson N=CORRLINK_COUNT, T=CORRLINK_TIME;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent fault.io.pciex.device-interr-corr@PCIEXFN/PCIEXFN, FITrate=PCIEX_DEV_FIT,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson engine=serd.io.device.nonfatal@PCIEXFN/PCIEXFN;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonengine serd.io.device.nonfatal@pciexrc/PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson N=CORRLINK_COUNT, T=CORRLINK_TIME;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent fault.io.pciex.device-interr-corr@pciexrc/PCIEXFN, FITrate=PCIEX_DEV_FIT,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson engine=serd.io.device.nonfatal@pciexrc/PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-interr@pciexrc, FITrate=PCIEX_RC_FIT;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-interr-deg@pciexrc, FITrate=PCIEX_RC_FIT, retire=0;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhengine serd.io.pciex.flt-nf@pciexrc, N=NONFATAL_DPE_COUNT, T=NONFATAL_DPE_TIME;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-interr-unaf@pciexrc, FITrate=PCIEX_RC_FIT,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh engine=serd.io.pciex.flt-nf@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hansonengine serd.io.device.nonfatal@pciexrc, N=CORRLINK_COUNT, T=CORRLINK_TIME;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-interr-corr@pciexrc, FITrate=PCIEX_RC_FIT,
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hanson engine=serd.io.device.nonfatal@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-invreq@PCIEXFN, FITrate=PCIEX_DEV_INV_FIT;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-invreq@pciexrc, FITrate=PCIEX_RC_FIT;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-noresp@PCIEXFN, FITrate=PCIEX_DEV_NR_FIT;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.device-noresp@pciexrc, FITrate=PCIEX_RC_NR_FIT;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.bus-noresp@PCIEXFN, FITrate=PCIEX_BUS_NR_FIT;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent fault.io.pciex.bus-linkerr@PCIEXFN, FITrate=PCIEX_BUS_FIT;
27134bda765f3e2c7e4bfd072058f72e509b39bcstephh
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonengine serd.io.pciex.corrlink-bus@pciexrc/PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson N=CORRLINK_COUNT, T=CORRLINK_TIME;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent fault.io.pciex.bus-linkerr-corr@pciexrc/PCIEXFN, FITrate=PCIEX_BUS_FIT,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson engine=serd.io.pciex.corrlink-bus@pciexrc/PCIEXFN;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonengine serd.io.pciex.corrlink-bus@PCIEXFN/PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson N=CORRLINK_COUNT, T=CORRLINK_TIME;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent fault.io.pciex.bus-linkerr-corr@PCIEXFN/PCIEXFN, FITrate=PCIEX_BUS_FIT,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson engine=serd.io.pciex.corrlink-bus@PCIEXFN/PCIEXFN;
27134bda765f3e2c7e4bfd072058f72e509b39bcstephh
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Handling of leaf driver detected internal errors. Use serd engine if
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * no service impact - otherwise fail immediately
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.device.inval_state@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.device.no_response@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.device.stall@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.device.badint_limit@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.device.intern_corr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.device.intern_uncorr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.service.lost@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.service.degraded@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.service.unaffected@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.service.restored@PCIEXFN{within(30s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.service.lost@PCIFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.service.degraded@PCIFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.service.unaffected@PCIFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.noimpact-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.degraded-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.lost-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.service.restored@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.service.restored@PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.device.nf-device@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.device.deg-device@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.device.f-device@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.device.f-device@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.inval_state@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.no_response@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.stall@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.badint_limit@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.intern_corr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.intern_uncorr@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hansonprop error.io.device.f-device@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.lost-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.device.deg-device@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.inval_state@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.no_response@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.stall@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.badint_limit@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.intern_corr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.intern_uncorr@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.device.deg-device@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.degraded-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.device.nf-device@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.inval_state@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.no_response@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.stall@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.badint_limit@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.intern_corr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.device.intern_uncorr@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.device.nf-device@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.noimpact-d@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * handling of service impact ereports.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hansonprop error.io.pciex.lost-d@PCIEXFN (1)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.lost@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.lost@PCIFNHZ { is_under(PCIEXFN, PCIFNHZ) };
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hansonprop error.io.pciex.lost-d@PCIEXFN (0)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.unaffected@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.unaffected@PCIFNHZ { is_under(PCIEXFN, PCIFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.degraded@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.degraded@PCIFNHZ { is_under(PCIEXFN, PCIFNHZ) };
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hanson
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.degraded-d@PCIEXFN (1)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.degraded@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.degraded@PCIFNHZ { is_under(PCIEXFN, PCIFNHZ) };
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hansonprop error.io.pciex.degraded-d@PCIEXFN (0)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.unaffected@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.unaffected@PCIFNHZ { is_under(PCIEXFN, PCIFNHZ) };
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hanson
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.noimpact-d@PCIEXFN (1)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.unaffected@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.service.unaffected@PCIFNHZ { is_under(PCIEXFN, PCIFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.service.restored@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.service.restored@PCIFNHZ { is_under(PCIEXFN, PCIFNHZ) };
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.service.restored@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.service.lost@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.service.degraded@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.service.restored@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.service.restored@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * A faulty PCI Express hostbridge (root complex) may cause:
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - nr-d: the device not to respond to a valid upstream request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ca-d: the device to completer abort a valid upstream request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - mtlp-d: a malformed tlp to be transmitted downstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - badreq-d: a bad downstream request - not CRC error (may cause
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * completer to respond with ur or ca)
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ecrcreq-d: TLP with end-to-end CRC error transmitted downstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ecrccomp-d: TLP with end-to-end CRC error transmitted downstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - poisreq-d: poisoned request transmitted downstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - poiscomp-d: poisoned completion transmitted downstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - corrlink: correctable link or physical level error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - fatlink: fatal link or physical level error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nr-d@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ca-d@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.mtlp-d@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.fatlink@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.badreq-d@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nf-poisecrc-d@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.f-poisecrc-d@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.deg-poisecrc-d@pciexrc/PCIEXFN;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.btlp@pciexrc{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.bdllp@pciexrc{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.rto@pciexrc{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.rnr@pciexrc{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.pl.re@pciexrc{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.btlp@pciexrc/PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.bdllp@pciexrc/PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.rto@pciexrc/PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.rnr@pciexrc/PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.pl.re@pciexrc/PCIEXFN{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetprop fault.io.pciex.device-noresp@pciexrc (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nr-d@pciexrc/PCIEXFNHZ;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
eae2e508a8e70b1ec407b10bd068c080651bbe5ckrishnaeprop fault.io.pciex.device-invreq@pciexrc (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.badreq-d@pciexrc/PCIEXFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_btlp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BTLP_COUNT) && setserdt(BTLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_bdllp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BDLLP_COUNT) && setserdt(BDLLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rto") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RTO_COUNT) && setserdt(RTO_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rnr") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RNR_COUNT) && setserdt(RNR_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_re") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RE_COUNT) && setserdt(RE_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@pciexrc/PCIEXFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-unaf@pciexrc (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nf-poisecrc-d@pciexrc/PCIEXFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-deg@pciexrc (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.deg-poisecrc-d@pciexrc/PCIEXFNHZ;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetprop fault.io.pciex.device-interr@pciexrc (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.f-poisecrc-d@pciexrc/PCIEXFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ca-d@pciexrc/PCIEXFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.mtlp-d@pciexrc/PCIEXFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatlink@pciexrc/PCIEXFNHZ;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * A faulty PCI Express leaf device or upstream switch port may cause:
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-nr-u: the device not to respond to a valid downstream request
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-ca-u: the device to completer abort a valid downstream request
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-badreq-u: a bad upstream request - not CRC error (may cause
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * completer to respond with ur or ca) - leaf only
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-mtlp-u: a malformed tlp transmitted upstream - leaf only
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-ecrcreq-u: request with end-to-end CRC error transmitted upstream
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-ecrccomp-u: compl with end-to-end CRC error transmitted upstream
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-poisreq-u: poisoned request transmitted upstream
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-poiscomp-u: poisoned completion transmitted upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - device: internal error reported by leaf device
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - corrlink: correctable link or physical level error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - fatlink: fatal link or physical level error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-nr-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-ca-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-mtlp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.fatlink@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-badreq-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-nf-poisecrc-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-f-poisecrc-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-deg-poisecrc-u@PCIEXFN;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.btlp@PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.bdllp@PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.rto@PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.rnr@PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.pl.re@PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.btlp@PCIEXFN/PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.bdllp@PCIEXFN/PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.rto@PCIEXFN/PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.dl.rnr@PCIEXFN/PCIEXFN{within(5s)};
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonevent ereport.io.pciex.pl.re@PCIEXFN/PCIEXFN{within(5s)};
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hansonevent ereport.io.device.fw_corrupt@PCIEXFN{within(5s)};
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hansonevent ereport.io.device.fw_mismatch@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-noresp@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nr-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-noresp@PCIEXFN { IS_SU(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nr-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-invreq@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-badreq-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_btlp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BTLP_COUNT) && setserdt(BTLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_bdllp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BDLLP_COUNT) && setserdt(BDLLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rto") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RTO_COUNT) && setserdt(RTO_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rnr") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RNR_COUNT) && setserdt(RNR_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_re") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RE_COUNT) && setserdt(RE_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_btlp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BTLP_COUNT) && setserdt(BTLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_bdllp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BDLLP_COUNT) && setserdt(BDLLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rto") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RTO_COUNT) && setserdt(RTO_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rnr") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RNR_COUNT) && setserdt(RNR_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_re") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RE_COUNT) && setserdt(RE_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@PCIEXFN/PCIEXFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-unaf@PCIEXFN { IS_SU(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nf-poisecrc-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.device.nf-device@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-unaf@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nf-poisecrc-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-deg@PCIEXFN { IS_SU(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-deg-poisecrc-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr@PCIEXFN { IS_SU(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-f-poisecrc-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ca-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatlink@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-deg@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-deg-poisecrc-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.device.deg-device@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-f-poisecrc-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.device.f-device@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ca-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-mtlp-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatlink@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hansonprop fault.io.pciex.fw_corrupt@PCIEXFN { IS_LF(PCIEXFN) } (1)->
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson ereport.io.device.fw_corrupt@PCIEXFN;
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hansonprop fault.io.pciex.fw_corrupt@PCIEXFN { IS_LF(PCIEXFN) } (0)->
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson ereport.io.service.lost@PCIEXFN,
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson ereport.io.service.degraded@PCIEXFN;
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hansonprop fault.io.pciex.fw_mismatch@PCIEXFN { IS_LF(PCIEXFN) } (1)->
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson ereport.io.device.fw_mismatch@PCIEXFN;
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hansonprop fault.io.pciex.fw_mismatch@PCIEXFN { IS_LF(PCIEXFN) } (0)->
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson ereport.io.service.lost@PCIEXFN,
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson ereport.io.service.degraded@PCIEXFN;
05dd151b48459b1282a9ba09a1012307693cf4b9Stephen Hanson
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * A faulty PCI Express downstream switch port may cause
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - nr-d: the device not to respond to an upstream request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ca-d: the device to completer abort an upstream request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ecrcreq-d: TLP with end-to-end CRC error transmitted upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ecrccomp-d: TLP with end-to-end CRC error transmitted upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - poisreq-d: poisoned request transmitted upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - poiscomp-d: poisoned completion transmitted upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - corrlink: correctable link or physical level error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - fatlink: fatal link or physical level error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nr-d@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ca-d@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.fatlink@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nf-poisecrc-d@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.f-poisecrc-d@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.deg-poisecrc-d@PCIEXFN/PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-noresp@PCIEXFN { IS_SD(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nr-d@PCIEXFN/PCIEXFNHZ;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN { IS_SD(PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_btlp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BTLP_COUNT) && setserdt(BTLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN { IS_SD(PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_bdllp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BDLLP_COUNT) && setserdt(BDLLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN { IS_SD(PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rto") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RTO_COUNT) && setserdt(RTO_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN { IS_SD(PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rnr") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RNR_COUNT) && setserdt(RNR_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.device-interr-corr@PCIEXFN { IS_SD(PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_re") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RE_COUNT) && setserdt(RE_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@PCIEXFN/PCIEXFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-unaf@PCIEXFN { IS_SD(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nf-poisecrc-d@PCIEXFN/PCIEXFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-deg@PCIEXFN { IS_SD(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.deg-poisecrc-d@PCIEXFN/PCIEXFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr@PCIEXFN { IS_SD(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ca-d@PCIEXFN/PCIEXFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.f-poisecrc-d@PCIEXFN/PCIEXFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatlink@PCIEXFN/PCIEXFNHZ;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * A faulty PCIEX bus may cause:
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-nr-u: a device to not respond because the link is down
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - nr-d: a device to not respond because the link is down
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - corrlink: correctable link or physical level error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - fatlink: fatal link or physical level error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nr-d@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.bus-noresp@PCIEXFN { !IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nr-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nr-d@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_btlp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BTLP_COUNT) && setserdt(BTLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_bdllp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BDLLP_COUNT) && setserdt(BDLLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rto") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RTO_COUNT) && setserdt(RTO_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rnr") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RNR_COUNT) && setserdt(RNR_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@PCIEXFN/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson !IS_SD(PCIEXFN/PCIEXFN) &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_re") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RE_COUNT) && setserdt(RE_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@PCIEXFN,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@PCIEXFN/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_btlp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BTLP_COUNT) && setserdt(BTLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.btlp@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_bdllp") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(BDLLP_COUNT) && setserdt(BDLLP_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.bdllp@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rto") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RTO_COUNT) && setserdt(RTO_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rto@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_rnr") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RNR_COUNT) && setserdt(RNR_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.dl.rnr@pciexrc/PCIEXFNHZ;
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hansonprop fault.io.pciex.bus-linkerr-corr@pciexrc/PCIEXFN {
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson payloadprop_defined("detector") && setserdsuffix("_re") &&
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson setserdn(RE_COUNT) && setserdt(RE_TIME) } (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@pciexrc,
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pciex.pl.re@pciexrc/PCIEXFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.bus-linkerr@PCIEXFN { !IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatlink@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * A faulty pciex-pci bridge may cause
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * The following errors to propagate onto the PCI Express fabric
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-nr-u: the device not to respond to a valid downstream request
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-ca-u: the device to completer abort a valid downstream request
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-ecrcreq-u: request with end-to-end CRC error transmitted upstream
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-ecrccomp-u: compl with end-to-end CRC error transmitted upstream
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-poisreq-u: poisoned request transmitted upstream
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-poiscomp-u: poisoned completion transmitted upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - corrlink: correctable link or physical level error upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - fatlink: fatal link or physical level error upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - sec-interr: internal error on pci express to pci bridge
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * And the following errors to propagate onto the secondary pci or pci/x bus
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * (these will be handled by code in the pci.esc file).
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - nr-pw-d: the device not to respond to a valid upstream request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - nr-drw-d: the device not to respond to a valid upstream request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - retry-to-d: failure to retry an downstream delayed request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ta-pw-d: the device responds with a ta to a valid upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ta-drw-d: the device responds with a ta to a valid upstream
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ape-d: address/parity to get corrupted during downstream transmission.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - dpe-d: data/parity to get corrupted during downstream transmission.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - scpe-d: split completion to get corrupted during downstream transmission
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.ape-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.f-dpe-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.deg-dpe-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.nf-dpe-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.retry-to-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.nr-pw-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.nr-drw-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.ta-pw-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.ta-drw-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pcix.scpe-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.sec-interr@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.sec-sta@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-noresp@PCIEXFN { IS_BG(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nr-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.retry-to-d@PCIEXFN/PCIFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.nr-pw-d@PCIEXFN/PCIFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.nr-drw-d@PCIEXFN/PCIFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-unaf@PCIEXFN { IS_BG(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nf-poisecrc-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.nf-dpe-d@PCIEXFN/PCIFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-deg@PCIEXFN { IS_BG(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-deg-poisecrc-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.deg-dpe-d@PCIEXFN/PCIFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr@PCIEXFN { IS_BG(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-f-poisecrc-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ca-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-mtlp-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.sec-interr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatlink@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.ta-pw-d@PCIEXFN/PCIFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.ta-drw-d@PCIEXFN/PCIFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.ape-d@PCIEXFN/PCIFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pcix.scpe-d@PCIEXFN/PCIFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.f-dpe-d@PCIEXFN/PCIFNHZ;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr-unaf@PCIEXFN { IS_BG(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop fault.io.pciex.device-interr@PCIEXFN { IS_BG(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh/*
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * the following rules for ptlp and ecrc faults are split into fatal and
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * nonfatal, depending on the service impact reported by the leaf driver
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nf-poisecrc-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.deg-poisecrc-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.f-poisecrc-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ecrcreq-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ecrccomp-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poisreq-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poiscomp-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-poisreq-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-poiscomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-ecrcreq-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-ecrccomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nf-poisecrc-d@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrcreq-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrccomp-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poisreq-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poiscomp-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nf-poisecrc-d@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.noimpact-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.f-poisecrc-d@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrcreq-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrccomp-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poisreq-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poiscomp-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hansonprop error.io.pciex.f-poisecrc-d@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.lost-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.deg-poisecrc-d@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrcreq-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrccomp-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poisreq-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poiscomp-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.deg-poisecrc-d@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.degraded-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-nf-poisecrc-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ecrcreq-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ecrccomp-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-poisreq-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-poiscomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-nf-poisecrc-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.noimpact-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-deg-poisecrc-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ecrcreq-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ecrccomp-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-poisreq-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-poiscomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-deg-poisecrc-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.degraded-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-f-poisecrc-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ecrcreq-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ecrccomp-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-poisreq-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-poiscomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
8cffa125fa3761e4ea4b99a01cb1207e1d90e740Stephen Hansonprop error.io.pciex.flt-f-poisecrc-u@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.lost-d@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * declarations
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.fatal@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nonfatal@PCIEXFN;
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonevent error.io.pciex.nr-fwd-d@PCIEXFN;
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonevent error.io.pciex.mtlp-fwd-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.flt-ur-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.mtlp-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ca-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ca-fwd-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poisreq-fwd-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poisreq-fwd-d@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poisreq-fwd-d@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poiscomp-fwd-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poiscomp-fwd-d@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ecrcreq-fwd-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ecrccomp-fwd-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.source-ecrcreq-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.source-ecrccomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.source-poiscomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.source-poisreq-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.badreq-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.badreq-pw-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.badreq-drw-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.target-ma-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.target-rta-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.dpdata-pw-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.dpdata-dw-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.dpdata-dr-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ca-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ca-u@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ca-u@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ur-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ur-u@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ur-u@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nr-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nr-u@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.nr-u@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.mtlp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.mtlp-u@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.mtlp-u@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.badreq-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.badreq-u@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.badreq-u@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poisreq-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poisreq-u@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poisreq-u@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poiscomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poiscomp-u@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.poiscomp-u@pciexrc/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ecrcreq-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ecrcreq-u@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ecrccomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pciex.ecrccomp-u@PCIEXFN/PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.ma@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.mdpe@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.dpe@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.rta@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.sta@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.dl.dllp@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.pl.te@PCIEXFN{within(5s)};
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hansonevent ereport.io.pciex.pl.sd@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.tl.fcp@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.tl.rof@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.tl.mtlp@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.tl.ur@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.tl.ca@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.tl.ptlp@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.tl.ecrc@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.tl.uc@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.tl.cto@PCIEXFN{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.dl.dllp@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.pl.te@pciexrc{within(5s)};
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hansonevent ereport.io.pciex.pl.sd@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.tl.fcp@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.tl.rof@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.tl.mtlp@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.tl.ur@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.tl.ca@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.tl.ptlp@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.tl.ecrc@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.tl.cto@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.sec-ma@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.sec-mdpe@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.sec-dpe@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.sec-rta@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.sec-sta@pciexrc{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.sec-mdpe@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.sec-dpe@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.sec-rserr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.sserr@PCIEXFN{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.sec-rserr@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.rc.fe-msg@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.rc.nfe-msg@pciexrc{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.rc.mue-msg@pciexrc{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-interr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-ude@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.target-mdpe@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.target-mdpe@PCIFN{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * handling of fatal and nonfatal error messages propagated up to root complex
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Use these for errors reported by root-complex on behalf of another device.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Can use source-id payload to identify where the message came from.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.fatal@PCIEXFN1 (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.rc.mue-msg@pciexrc { is_under(pciexrc, PCIEXFN1) },
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.rc.fe-msg@pciexrc { is_under(pciexrc, PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF };
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.fatal@PCIEXFN (0)->
6e1fa242609208de48dfe1939b8814d4dff455a5Stephen Hanson ereport.io.pci.sserr@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.fatal@PCIEXFN { is_under(PCIEXFN1, PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sserr@PCIEXFN1,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-rserr@PCIEXFN1;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.fatal@PCIEXFN { is_under(pciexrc, PCIEXFN) } (0)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sec-rserr@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nonfatal@PCIEXFN1 (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.rc.mue-msg@pciexrc { is_under(pciexrc, PCIEXFN1) },
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.rc.nfe-msg@pciexrc { is_under(pciexrc, PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF };
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nonfatal@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sserr@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nonfatal@PCIEXFN { is_under(PCIEXFN1, PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sserr@PCIEXFN1,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-rserr@PCIEXFN1;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nonfatal@PCIEXFN { is_under(pciexrc, PCIEXFN) } (0)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sec-rserr@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * link-level errors - could generate ereports at either end of link
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * can use may propagations here as these ereports are only seen for these
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * faults.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.fatlink@PCIEXFN { !IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatal@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.fatlink@PCIEXFN { !IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.dl.dllp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.fcp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.rof@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.fatlink@PCIEXFN/PCIEXFN { IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatal@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.fatlink@PCIEXFN/PCIEXFN { IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.dl.dllp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.pl.te@PCIEXFN,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson ereport.io.pciex.pl.sd@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.fcp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.rof@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.fatlink@pciexrc/PCIEXFN (0)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.dl.dllp@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.pl.te@pciexrc,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson ereport.io.pciex.pl.sd@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.tl.fcp@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.tl.rof@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * bridge internal error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.sec-interr@PCIEXFN { IS_BG(PCIEXFN) } (2) ->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-interr@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * downstream poisoned request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - poisreq-d cascades down to the leaf device/bridge and any switch ports
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * on route must raise a ptlp ereport while any switch ports forwarding
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * the poisoned request must raise sec-mdpe ereports. The originator of the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * poisoning (be it root complex or downstream port of a switch) also raises
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * sec-mdpe. A hardened leaf driver will also raise ptlp. A target-mdpe may
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * be seen at the leaf (which may be a pci device beyond the bridge).
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Additionally, the leaf/bridge may treat the request as a ur, which the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * root complex will see and report an ma. Use flt-ur-u to represent this.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * The fault can always be recognized and the source identified using the ptlp
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * and sec-mdpe ereports.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-d@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poisreq-fwd-d@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN { IS_SD(PCIEXFN) ||
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh IS_SU(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ur-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poisreq-fwd-d@PCIEXFN/PCIEXFNHZ;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@pciexrc/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@pciexrc;
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN/PCIEXFN { IS_SU(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@PCIEXFN;
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN { IS_SU(PCIEXFN) } (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN { IS_SU(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN/PCIEXFN { IS_SD(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN { IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (3)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.dpdata-pw-d@PCIEXFN/PCIFNHZ,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.dpdata-dw-d@PCIEXFN/PCIFNHZ;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ur-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-fwd-d@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.target-mdpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * downstream poisoned completion
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - poiscomp-d cascades down to the leaf device/bridge and any switch ports on
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * route must raise ptlp and mdpe ereports. A hardened leaf driver will also
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * raise pltp and mdpe. For non-hardened leaf devices, no ptlp/mdpe may be
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * reported, and though we should still see a nonfatal error reported from
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * the root complex identifying the leaf device, we won't actually be informed
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * that the error was an ptlp.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-d@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poiscomp-fwd-d@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-fwd-d@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poiscomp-fwd-d@PCIEXFN/PCIEXFNHZ;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-fwd-d@PCIEXFN { IS_SU(PCIEXFN) } (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-fwd-d@PCIEXFN { IS_SU(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-fwd-d@PCIEXFN { IS_SU(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-fwd-d@PCIEXFN { IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (4)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.dpdata-dr-d@PCIEXFN/PCIFNHZ;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * downstream request with ecrc error.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ecrcreq-d cascades down to the leaf device/bridge and any switches on
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * route can optionally raise an ecrc ereport. A hardened leaf driver may also
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * raise ecrc. For non-hardened leaf devices, no ecrc may be reported, and
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * though we should still see a nonfatal error reported from the root complex
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * identifying the leaf device, we won't actually be informed that the error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * was an ecrc.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Additionally, as the leaf/bridge will just throw away the packet, we should
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * eventually get a cto at the root complex - so use an nr-u at the pciex
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * leaf or bridge to get the appropriate behaviour. For the case where the leaf
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * driver wasn't hardened we may be able to identify the leaf device (and
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * therefore any intermediate switches which might have caused the problem)
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * either via a target-ma ereport if available or via the nonfatal error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * reported from the root complex identifying the leaf device. The combination
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * of a nonfatal error reported from the root complex and a cto from the root
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * complex is sufficient to positively identify this case.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrcreq-d@PCIEXFN (1)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.ecrcreq-fwd-d@PCIEXFN,
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.ecrcreq-fwd-d@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) };
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrcreq-fwd-d@PCIEXFN { IS_SU(PCIEXFN) ||
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh IS_SD(PCIEXFN) } (1)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.flt-nr-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrcreq-fwd-d@PCIEXFN { IS_SU(PCIEXFN) ||
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrcreq-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (3)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nr-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrcreq-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nr-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrcreq-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * downstream completion with ecrc error.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ecrccomp-d cascades down to the leaf device/bridge and any switches on
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * route can optionally raise an ecrc ereport. A hardened leaf driver may
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * also raise ecrc. For non-hardened leaf devices, no ecrc may be reported,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * and though we should still see a nonfatal error reported from the root
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * complex identifying the leaf device, we won't actually be informed that
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * the error was an ecrc.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Additionally, as the leaf/bridge will just throw away the packet, we should
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * eventually get a cto. Note the leaf ereports are optional (ie in case driver
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * not hardened) but if we get both ecrc and cto we need to distinguish from
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * cto only which would be an nr-d.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrccomp-d@PCIEXFN (1)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.ecrccomp-fwd-d@PCIEXFN,
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.ecrccomp-fwd-d@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) };
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrccomp-fwd-d@PCIEXFN { IS_SU(PCIEXFN) ||
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrccomp-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (3)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nr-d@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrccomp-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrccomp-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nr-d@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * upstream poisoned request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-poisreq-u is on the pciex node which generated the fault
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - source-poisreq-u refers to at least one leaf or bridge device
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * whose bdf (if leaf) must match the source-id in the payload of the
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * ereport generated from the root complex.
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - poisreq-u propagates up to the root complex and any switch ports on
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * route will raise a ptlp ereport, while any upstream devices generating
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * or forwarding the poisoned packed will raise an mdpe ereport. The root
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * complex should also report a ptlp.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Additionally, as the root complex may treat the request as a ur, which the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * leaf/bridge will see (and if hardened report) as an ma (including sending a
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * ta onto the child pci bus if this was a delayed write).
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * We can always recognize what sort of fault this is from the ptlp (with no
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * sec-mdpe) at the root complex. Recognizing which originating devices may be
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * implicated can be done using the mdpe ereport (for a hardened leaf driver),
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * or for a non-hardened leaf driver by using the source-id payload in the ptlp
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * ereport to identify the originator of the request. The ptlp/mdpe ereports
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * at the intervening switches will narrow the fault down to a single suspect.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-poisreq-u@PCIEXFN1 { (IS_LF(PCIEXFN) ||
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh IS_BG(PCIEXFN)) && is_under(PCIEXFN1, PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.source-poisreq-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-poisreq-u@PCIEXFN1 { IS_LF(PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(pciexrc, PCIEXFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@pciexrc,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-poisreq-u@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.ma@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-poisreq-u@PCIEXFN { IS_BG(PCIEXFN) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(pciexrc, PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@pciexrc,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-poisreq-u@PCIEXFN { IS_BG(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.ma@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.ta-drw-d@PCIEXFN/PCIFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-poisreq-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poisreq-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh/*
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * the remaining propagations are also used for poisoned requests propagating
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * up due to a fault behind a pcie-pci bridge
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-u@PCIEXFN/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poisreq-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-u@PCIEXFN { IS_BG(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-u@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-u@PCIEXFN { IS_SD(PCIEXFN) } (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-u@PCIEXFN { IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-u@PCIEXFN { IS_SU(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-u@PCIEXFN { IS_SU(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poisreq-u@pciexrc/PCIEXFN (1)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sec-dpe@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * upstream poisoned completion
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-poiscomp-u is on the pciex node which generated the fault. There will
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * be a target-mdpe downstream from here.
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - source-poiscomp-u refers to at least one leaf or bridge device
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * whose bdf (if leaf) must match the source-id in the payload of the
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * ereport generated from the root complex.
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - poiscomp-u propagates up to the root complex and any switches on
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * route will raise ptlp and sec-mdpe ereports. The root complex will also
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * raise a sec-mdpe and ptlp.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * We can always recognize what sort of fault this is from the ptlp/sec-mdpe at
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * the root complex. Recognizing which originating devices may be implicated
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * can be done using the source-id payload in the ptlp ereport to identify the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * originator of the completion. The ptlp/sec-mdpe ereports at the intervening
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * switches will narrow the fault down to a single suspect.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-poiscomp-u@PCIEXFN { IS_LF(PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(PCIEXFN, PCIEXFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.target-mdpe@PCIEXFN1;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-poiscomp-u@PCIEXFN { IS_PCI_LF(PCIFN) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(PCIEXFN, PCIFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.target-mdpe@PCIFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-poiscomp-u@PCIEXFN1 { (IS_LF(PCIEXFN) ||
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh IS_BG(PCIEXFN)) && is_under(PCIEXFN1, PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.source-poiscomp-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-poiscomp-u@PCIEXFN1 { IS_LF(PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(pciexrc, PCIEXFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-poiscomp-u@PCIEXFN1 { IS_BG(PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(pciexrc, PCIEXFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-poiscomp-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poiscomp-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh/*
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * the remaining propagations are also used for poisoned completions propagating
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * up due to a fault behind a pcie-pci bridge
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-u@PCIEXFN/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poiscomp-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-u@PCIEXFN { IS_SD(PCIEXFN) } (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-u@PCIEXFN { IS_SD(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-u@PCIEXFN { IS_SD(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-u@PCIEXFN { IS_SU(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-u@pciexrc/PCIEXFN (1)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sec-dpe@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.poiscomp-u@pciexrc/PCIEXFN (0)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sec-mdpe@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * upstream request with ecrc error.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-ecrcreq-u is on the pciex node which generated the fault.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - source-ecrcreq-u cascades down to at least one leaf device (pciex or pci),
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * whose bdf (if pciex) must match the source-id in the payload of the
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * ereport generated from the root complex.
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - ecrcreq-u propagates up to the root complex which must report it with an
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * ecrc ereport and any switches on route can optionally raise an ecrc ereport
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * Additionally, as the root complex will just throw away the packet, we may
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * eventually get a cto - so use an nr-d at the pciex leaf or bridge to get
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * the appropriate behaviour.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * We can always recognize what sort of fault this is from the ecrc (with no
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * cto) at the root complex. Recognizing which leaf device may be implicated
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * can be done from the cto ereport (for a hardened leaf driver) or for a
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * non-hardened leaf using the source-id payload of the ecrc.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ecrcreq-u@PCIEXFN1 { (IS_LF(PCIEXFN) ||
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh IS_BG(PCIEXFN)) && is_under(PCIEXFN1, PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.source-ecrcreq-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-ecrcreq-u@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nr-d@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-ecrcreq-u@PCIEXFN1 { IS_LF(PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(pciexrc, PCIEXFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-ecrcreq-u@PCIEXFN { IS_BG(PCIEXFN) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(pciexrc, PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ecrcreq-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrcreq-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrcreq-u@PCIEXFN/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrcreq-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrcreq-u@PCIEXFN { IS_SD(PCIEXFN)||IS_SU(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * upstream completion with ecrc error.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-ecrccomp-u is on the pciex node which generated the fault.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - source-ecrccomp-u cascades down to at least one leaf device (pciex or pci),
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * whose bdf (if pciex) must match the source-id in the payload of the
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * ereport generated from the root complex.
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - ecrccomp-u propagates up to the root complex, which should report it with
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * an ecrc ereport and any switches on route can optionally raise an ecrc
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * ereport.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Additionally, as the root complex will just throw away the packet, we'll
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * eventually get a cto - so use an flt-nr-u at the pciex leaf or bridge to get
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * the appropriate behaviour.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * We can always recognize what sort of fault this from the ecrc/cto from the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * root complex. Recognizing which leaf device may be implicated can be done
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * using either the source-id payload of the ecrc or the target-ma ereport if
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * available.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ecrccomp-u@PCIEXFN1 { (IS_LF(PCIEXFN) ||
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh IS_BG(PCIEXFN)) && is_under(PCIEXFN1, PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.source-ecrccomp-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-ecrccomp-u@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-nr-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-ecrccomp-u@PCIEXFN1 { IS_LF(PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(pciexrc, PCIEXFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.source-ecrccomp-u@PCIEXFN { IS_BG(PCIEXFN) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(pciexrc, PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ecrccomp-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrccomp-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrccomp-u@PCIEXFN/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ecrccomp-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ecrccomp-u@PCIEXFN { IS_SD(PCIEXFN)||IS_SU(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ecrc@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * no response to downstream requester
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - nr-d will effectively cascade downstream to the requester. The fault here
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * is always at the root complex. For a hardened leaf device driver, we will
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * always be able to recognize this as the requester will report this as a
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * cto. For non-hardened leaf devices, no cto will be reported, and though we
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * should still see a nonfatal error reported from the root complex
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * identifying the leaf device, we won't actually be informed that the error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * was a cto.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nr-d@PCIEXFN (1)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.nr-fwd-d@PCIEXFN { IS_BG(PCIEXFN) || IS_LF(PCIEXFN) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.nr-fwd-d@PCIEXFNHZ { (IS_BG(PCIEXFNHZ) ||
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson IS_LF(PCIEXFNHZ)) && is_under(PCIEXFN, PCIEXFNHZ) };
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.nr-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.cto@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.nr-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.ma@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.nr-drw-d@PCIEXFN/PCIFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.ta-drw-d@PCIEXFN/PCIFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.nr-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.nr-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.ma@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.cto@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * no response to upstream requester
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * - flt-nr-u will effectively cascade upstream to the root complex which will
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * report it as a cto.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * We have to use target-ma to informs us which device failed to respond.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-nr-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.target-ma-d@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-nr-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nr-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nr-u@PCIEXFN/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nr-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nr-u@pciexrc/PCIEXFN (1)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.tl.cto@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.nr-u@pciexrc/PCIEXFN (0)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sec-ma@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * downstream malformed tlp
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * This will cascade downstream to the receiver which will report it as an mtlp.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * For non-hardened leaf drivers, no mtlp will be reported, and though we should
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * still see a fatal error reported from the root complex identifying the leaf
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * device, we won't actually be informed that the error was a mtlp.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Note that sw-mtlp-d is to handle the case where the switch is actually
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * the target of the packet (config request etc).
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.mtlp-d@PCIEXFN (1)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.mtlp-fwd-d@PCIEXFN { !IS_SD(PCIEXFN) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.mtlp-fwd-d@PCIEXFNHZ { !IS_SD(PCIEXFNHZ) &&
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson is_under(PCIEXFN, PCIEXFNHZ) };
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.mtlp-fwd-d@PCIEXFN { IS_SU(PCIEXFN) } (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.mtlp@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.mtlp-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.mtlp@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.mtlp-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.mtlp-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.mtlp@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * upstream malformed tlp
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * This will cascade upstream to the receiver which will report it as an mtlp.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-mtlp-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.mtlp-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.mtlp-u@PCIEXFN/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.mtlp-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.mtlp-u@pciexrc/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.mtlp@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * downstream completer aborts
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * This could be the fault of the root complex or a switch reporting an internal
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * error, or of the leaf device sending an invalid request (the latter is
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * handled by the flt-badreq-u case below).
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * This is reported by the completer or by an intervening downstream switch
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * port. The completer abort response propagates down to the initiator which
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * will set the legacy pci bit rta.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * The fault can always be recognized by the ca ereport from the root complex
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * or downstream switch port. The originator of the request can be recognized
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * by the rta for a hardened driver or by using the source-id payload of the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * ca ereport for a non-hardened driver.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ca-d@pciexrc/PCIEXFN (0)->
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh ereport.io.pciex.tl.ca@pciexrc;
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ca-d@pciexrc/PCIEXFN (1)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sec-sta@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ca-d@PCIEXFN/PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ca-d@PCIEXFN/PCIEXFN (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ca@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.ca-d@PCIEXFN (1)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.ca-fwd-d@PCIEXFN { IS_BG(PCIEXFN) || IS_LF(PCIEXFN) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.ca-fwd-d@PCIEXFNHZ { (IS_BG(PCIEXFNHZ) ||
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson IS_LF(PCIEXFNHZ)) && is_under(PCIEXFN, PCIEXFNHZ) };
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ca-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.rta@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ca-fwd-d@PCIEXFN { IS_BG(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.ta-drw-d@PCIEXFN/PCIFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ca-fwd-d@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.rta@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * upstream completer aborts
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * This could be the fault of the leaf device/bridge/upstream switch port
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * reporting an internal error, or of the root complex sending an invalid
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * request (the latter case is handled by badreq-d below).
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * This is reported as a ca by the completer. The completer (for non-posted
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * requests) sends the appropriate error bits in the completion message to
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * the initiator which will set the legacy pci bit sec-rta.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * The fault can always be recognized from the sec-rta bit at the root complex.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * If the fault was with a PCI Express leaf with a hardened driver, then we
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * will identify the device from the ca ereport.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * If the fault was with a PCI Express leaf with a non-hardened driver, then we
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * can still identify the leaf device from the source-id payload of the nonfatal
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * message ereport from the root complex or from the target-rta ereport.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ca-u@PCIEXFN { !IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ca@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ca-u@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ca@PCIEXFN;
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ca-u@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sta@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ca-u@PCIEXFN (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.target-rta-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ca-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ca-u@PCIEXFN/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ca-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ca-u@pciexrc/PCIEXFN (0)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sec-rta@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * upstream bad request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * When detecting bad data on a request the completer (or any switch on the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * way to the completer) may report ur or ca. If the switch detects the problem
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * first then the request doesn't get forwarded on to the completer.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * These are reported as ur/ca ereports. For non-posted requests, the reporter
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * then sends the appropriate error bits in the completion message to the
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh * initiator which will set the legacy pci bits ma or rta.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * For flt-badreq-u, the ca/ur ereports contain a source-id payload that
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * identifies the initiator.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * The fault can always be recognized by the ca/ur ereport from the root
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * complex or downstream switch port. The originator of the request can be
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * recognized by the rta/ma for a hardened driver or by using the source-id
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * payload of the ca/ur ereport for a non-hardened driver.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-badreq-u@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.ma@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.rta@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-badreq-u@PCIEXFN1 {
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(pciexrc, PCIEXFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@pciexrc,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ca@pciexrc;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-badreq-u@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.badreq-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.badreq-u@PCIEXFN/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.badreq-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.badreq-u@pciexrc/PCIEXFN (0)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sec-sta@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-badreq-u@PCIEXFN1 { IS_SD(PCIEXFN) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(PCIEXFN, PCIEXFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ca@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-badreq-u@PCIEXFN1 { IS_SD(PCIEXFN) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(PCIEXFN, PCIEXFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * downstream bad request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * When detecting bad data on a request the completer (or any switch on the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * way to the completer) may report ur or ca. If the switch detects the problem
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * first then the request doesn't get forwarded on to the completer.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * These are reported as ur/ca ereports (except where the completer is a non-
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * hardened leaf driver when all we get is a nonfatal error from the root
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * complex identifying the leaf device). The reporter then sends the appropriate
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * error bits in the completion message to the initiator which will set the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * legacy pci bits ma or rta (oddly there is no equivalent in pcie error
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * reporting).
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hansonprop error.io.pciex.badreq-d@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ur-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ca-u@PCIEXFN,
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.flt-ur-u@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pciex.flt-ca-u@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pci.badreq-pw-d@PCIEXFNHZ/PCIFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pci.badreq-drw-d@PCIEXFNHZ/PCIFNHZ { is_under(PCIEXFN,PCIEXFNHZ) };
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ur-u@PCIEXFN { !IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ur-u@PCIEXFN { IS_LF(PCIEXFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ur-u@PCIEXFN (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.target-ma-d@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ur-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.flt-ur-u@PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ur-u@PCIEXFN/PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.ur-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.ur-u@pciexrc/PCIEXFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-ma@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Stub unused legacy pci ereports at root complex.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Stub tl.uc as we can't do anything useful with it (we should eventually
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * get a cto which we can do something with - a uc without a cto is a genuinely
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * spurious completion which is at least harmless).
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Stub messages that the root complex sends to itself.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Stub mce/mue/ce/nr/noadverr.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent error.io.pciex.discard_rc@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.noadverr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.correctable@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.nonfatal@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.a-nonfatal@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.fatal@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.nr@PCIEXFN{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.nr@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.ma@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.rta@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.sta@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.dpe@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.mdpe@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pci.sserr@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.tl.uc@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.noadverr@pciexrc{within(5s)};
1d76b12554f7e16caa5910206315015445313940stephhevent ereport.io.pciex.a-nonfatal@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.rc.ce-msg@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent ereport.io.pciex.rc.mce-msg@pciexrc{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent upset.io.pciex.discard_uc@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent upset.io.pciex.discard@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetevent upset.io.pciex.discard@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop upset.io.pciex.discard_uc@PCIEXFN { IS_BG(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.uc@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop upset.io.pciex.discard_uc@PCIEXFN { IS_LF(PCIEXFN) } (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.uc@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop upset.io.pciex.discard@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.nr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.noadverr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.correctable@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.a-nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.fatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pciex.discard_rc@pciexrc (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.rc.mue-msg@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.rc.fe-msg@pciexrc { SOURCE_ID_MATCHES_OWN_BDF },
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.rc.nfe-msg@pciexrc { SOURCE_ID_MATCHES_OWN_BDF };
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreetprop upset.io.pciex.discard@pciexrc (1)->
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet error.io.pciex.discard_rc@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.nr@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.noadverr@pciexrc,
1d76b12554f7e16caa5910206315015445313940stephh ereport.io.pciex.a-nonfatal@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.rc.ce-msg@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.rc.mce-msg@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pciex.tl.uc@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.ma@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.rta@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sta@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.dpe@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.mdpe@pciexrc,
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet ereport.io.pci.sserr@pciexrc;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * rules for propagations from child PCI bus
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.retry-to-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.ma-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.ta-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.ape-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.source-ape-u@PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.target-ma-d@PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.target-rta-d@PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.badreq-pw-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.badreq-drw-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.source-perr-u@PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.source-dpdata-u@PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.dpdata-pw-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.dpdata-dw-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.dpdata-dr-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.perr-pw-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.perr-dw-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.perr-dr-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.serr-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pcix.scpe-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pcix.source-scpe-u@PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pcix.spl-comp-ma-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pcix.spl-comp-ta-u@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pcix.spl-comp-ma-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pcix.spl-comp-ta-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pcix.uscmd@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-spl-dis@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.uscmd@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-perr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-uadr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-uat@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-serr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-tex@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-rma@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-rta@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-ma-sc@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.sec-ta-sc@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.dto@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.sec-rta@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.sec-ma@PCIEXFN{within(5s)};
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * ma-u will only propagate on to pciex bus for non-posted accesses. It
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * is then represented as an unsupported request.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.ma-u@PCIEXFN/PCIFN (0)->
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson ereport.io.pciex.tl.ur@PCIEXFN,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson error.io.pciex.ur-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.ma-u@PCIEXFN/PCIFN (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-ma@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.target-ma-d@PCIFN1 { IS_BG(PCIEXFN) && IS_PCI_LF(PCIFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(PCIEXFN, PCIFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-rma@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * ta-u will only propagate on to pciex bus for non-posted accesses. It is
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * then represented as a completer abort.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.ta-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sta@PCIEXFN,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson ereport.io.pciex.tl.ca@PCIEXFN,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson error.io.pciex.ca-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.ta-u@PCIEXFN/PCIFN (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-rta@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.target-rta-d@PCIFN1 { IS_BG(PCIEXFN) && IS_PCI_LF(PCIFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(PCIEXFN, PCIFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-rta@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * PERR# on a delayed write is represented as an unsupported request
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.perr-dw-u@PCIEXFN/PCIFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.perr-dw-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.flt-ur-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.perr-pw-u@PCIEXFN/PCIFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.perr-pw-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.perr-dr-u@PCIEXFN/PCIFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.source-perr-u@PCIFN1 { IS_BG(PCIEXFN) && IS_PCI_LF(PCIFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(PCIEXFN, PCIFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-perr@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * If the bridge receives data with bad ecc/parity from pci/pci-x, it will
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * propagate onto pci express as a poisoned tlp
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.dpdata-dr-u@PCIEXFN/PCIFN (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poiscomp-u@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.dpdata-dr-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.dpdata-dr-u@PCIEXFN/PCIFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-mdpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.mdpe@PCIEXFN;
eae2e508a8e70b1ec407b10bd068c080651bbe5ckrishnae
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.dpdata-dw-u@PCIEXFN/PCIFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-dpe@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.dpdata-dw-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poisreq-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.ma@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pci.ta-drw-d@PCIEXFN/PCIFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.dpdata-pw-u@PCIEXFN/PCIFN (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.poisreq-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.dpdata-pw-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.ma@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.source-dpdata-u@PCIFN { is_under(pciexrc, PCIFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ptlp@pciexrc,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@pciexrc;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.source-dpdata-u@PCIFN1 { IS_BG(PCIEXFN) && IS_PCI_LF(PCIFN1)
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh && SOURCE_ID_MATCHES_BDF && is_under(PCIEXFN, PCIFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-ude@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * If the bridge sees an address or attribute parity error it is considered
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * a fatal error.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.ape-u@PCIEXFN/PCIFN (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatal@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.source-ape-u@PCIFN1 { IS_BG(PCIEXFN) && IS_PCI_LF(PCIFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(PCIEXFN, PCIFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-uat@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-uadr@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.ape-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-rserr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-serr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * If the bridge sees a split completion error (pci-x only) it could
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * result in a number of things
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - unrecovered split completion message data error (uscmd). This would
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * happen on a pio write. A completer abort is returned to the initiator.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - for various faults in the split completion (eg address parity error)
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * we will respond with a target abort (which the child device will treat
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * as a split completion ta)
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - for other faults we can't tell who send the split completion and so
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * just drop the request (which the child device sees as a split
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * completion ma)
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pcix.scpe-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-dpe@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-rserr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-serr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatal@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pcix.source-scpe-u@PCIFN1 { IS_BG(PCIEXFN) && IS_PCI_LF(PCIFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh SOURCE_ID_MATCHES_BDF && is_under(PCIEXFN, PCIFN1) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-uat@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-uadr@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pcix.scpe-u@PCIEXFN/PCIFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pcix.uscmd@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pcix.spl-comp-ma-d@PCIEXFN/PCIFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pcix.spl-comp-ta-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pcix.uscmd@PCIEXFN (4)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sta@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ca@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.uscmd@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hansonprop error.io.pcix.uscmd@PCIEXFN (0)->
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson error.io.pciex.ca-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Similarly a child device may have responded with a master abort or
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * target abort to one of our split competions. The hardware just logs these.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pcix.spl-comp-ma-u@PCIEXFN/PCIFN (3)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-spl-dis@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-ma-sc@PCIEXFN;
8aec91825357bbeaf2ab5d30fc97fe5051a6b8ddstephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pcix.spl-comp-ma-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-ma@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pcix.spl-comp-ta-u@PCIEXFN/PCIFN (4)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-spl-dis@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-ta-sc@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-rta@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * SERR# is considered fatal
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.serr-u@PCIEXFN/PCIFN (3)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.fatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-rserr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-serr@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * Retry time-out is nonfatal. The initial requester has stopped retrying so
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * there's nothing else the hardware can do but flag the error.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.retry-to-u@PCIEXFN/PCIFN (2)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.sec-tex@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.retry-to-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sta@PCIEXFN,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson ereport.io.pci.dto@PCIEXFN,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson error.io.pciex.ca-u@PCIEXFN;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * A bad dma request (eg with invalid address) propagates onto pci express
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * as a bad dma request. The end result may be a master abort or target abort
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * (depending on whether the child is pci-x or pci).
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.badreq-pw-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.ma@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.rta@PCIEXFN,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson error.io.pciex.badreq-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.badreq-pw-u@PCIEXFN/PCIFN {
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(pciexrc, PCIEXFN/PCIFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@pciexrc,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson ereport.io.pciex.tl.ca@pciexrc;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.badreq-pw-u@PCIEXFN/PCIFN { IS_SD(PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(PCIEXFN1, PCIEXFN/PCIFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@PCIEXFN1,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ca@PCIEXFN1,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN1,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN1;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.badreq-drw-u@PCIEXFN/PCIFN (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.ma@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.rta@PCIEXFN,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson error.io.pciex.badreq-u@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.badreq-drw-u@PCIEXFN/PCIFN {
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(pciexrc, PCIEXFN/PCIFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@pciexrc,
b0daa853ddd4c48b6374b8ac0dca46629b225c39Stephen Hanson ereport.io.pciex.tl.ca@pciexrc;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.badreq-drw-u@PCIEXFN/PCIFN { IS_SD(PCIEXFN1) &&
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh is_under(PCIEXFN1, PCIEXFN/PCIFN) } (0)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ur@PCIEXFN1,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.tl.ca@PCIEXFN1,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pci.sec-sta@PCIEXFN1,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh error.io.pciex.nonfatal@PCIEXFN1;
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh * target- propagations
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet *
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * A Root Complex driver may generate "target-" ereports when knowledge of the
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * physical address associated with a fault allows the target device to be
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * determined. This is not a requirement of the Diagnosis Engine, but can be
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * valuable when available.
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.target-ma-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent error.io.pci.target-rta-d@PCIEXFN/PCIFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.target-rta@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pci.target-ma@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.target-ma-d@PCIEXFN (0)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.pci.target-ma@PCIEXFN,
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.pci.target-ma@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pci.target-ma-d@PCIEXFNHZ/PCIFNHZ { is_under(PCIEXFN, PCIEXFNHZ) };
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop error.io.pci.target-rta-d@PCIEXFN (0)->
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.pci.target-rta@PCIEXFN,
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson ereport.io.pci.target-rta@PCIEXFNHZ { is_under(PCIEXFN, PCIEXFNHZ) },
26733bfee3481fa399a355cfb6327271bdf3d391Stephen Hanson error.io.pci.target-rta-d@PCIEXFNHZ/PCIFNHZ { is_under(PCIEXFN,PCIEXFNHZ) };
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet/*
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * stub unused pciex-pci bridge ereports
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ignore usc/sec-unex-spl
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ignore sec-spl-or/sec-spl-dly as these aren't really faults (tuning info)
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ignore ecc.ue ereports (we get everything we need from dpe/mdpe)
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * - ignore ecc.ce ereports for now (could do serd on these)
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet */
00d0963faf2e861a4aef6b1bf28f99a5b2b20755dilpreet
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pciex.bdg.usc@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-unex-spl@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-spl-or@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-spl-dly@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-ecc.ce-addr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-ecc.ce-attr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-ecc.ce-data@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-ecc.ue-addr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-ecc.ue-attr@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-ecc.ue-data@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-s-ce@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent ereport.io.pcix.sec-s-ue@PCIEXFN{within(5s)};
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhevent upset.io.pciex.discard-bdg@PCIEXFN;
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephhprop upset.io.pciex.discard-bdg@PCIEXFN (1)->
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pciex.bdg.usc@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-unex-spl@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-spl-or@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-spl-dly@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-ecc.ce-addr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-ecc.ce-attr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-ecc.ce-data@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-ecc.ue-addr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-ecc.ue-attr@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-ecc.ue-data@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-s-ce@PCIEXFN,
b7d3956b92a285d8dac2c7f5f7e28d2ef5347ef8stephh ereport.io.pcix.sec-s-ue@PCIEXFN;