/* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" #pragma dictionary "PCI" #define PCI_DEV_FIT 1000 #define PCI_BUS_FIT 500 asru pcibus/pcidev/pcifn; fru pcibus/pcidev; /* * Faulty PCI device */ event fault.io.pci.device@pcibus/pcidev/pcifn, FITrate=PCI_DEV_FIT, FRU=pcibus/pcidev, ASRU=pcibus/pcidev/pcifn; event error.io.pci.tx-ma@pcibus/pcidev/pcifn; event error.io.pci.rx-ma@pcibus/pcidev/pcifn; event error.io.pci.tx-serr@pcibus/pcidev/pcifn; event error.io.pci.serr@pcibus; event error.io.pci.rx-ta@pcibus/pcidev/pcifn; event error.io.pci.tx-dpe@pcibus/pcidev/pcifn; event error.io.pci.tx-wdpe@pcibus/pcidev/pcifn; event error.io.pci.rec-ma@pcibus/pcidev/pcifn; event error.io.pci.rec-ta@pcibus/pcidev/pcifn; event error.io.pci.rec-mdpe@pcibus/pcidev/pcifn; event error.io.pci.tx-pma@pcibus/pcidev/pcifn; event error.io.pci.tx-dma@pcibus/pcidev/pcifn; event error.io.pci.tx-rdpe@pcibus/pcidev/pcifn; event error.io.pci.tx-pwdpe@pcibus/pcidev/pcifn; event error.io.pci.tx-dwdpe@pcibus/pcidev/pcifn; event error.io.pci.bdg-tx-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.bdg-tx-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.bdg-tx-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.bdg-tx-sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.bdg-tx-sec-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.bdg-tx-sec-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.sta@pcibus/pcidev/pcifn; event error.io.pci.rx-pma@pcibus/pcidev/pcifn; event error.io.pci.rx-dma@pcibus/pcidev/pcifn; event error.io.pci.sec-tx-ta@pcibus/pcidev/pcifn; event error.io.pci.sec-rx-pta@pcibus/pcidev/pcifn; event error.io.pci.sec-rx-dta@pcibus/pcidev/pcifn; event error.io.pci.rx-pta@pcibus/pcidev/pcifn; event error.io.pci.tx-pta@pcibus/pcidev/pcifn; event error.io.pci.rx-dta@pcibus/pcidev/pcifn; event error.io.pci.bdg-rx-dpe@pcibus/pcidev/pcifn; event error.io.pci.sec-rx-dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.bdg-pwdpe@pcibus/pcidev/pcifn; event error.io.pci.bdg-dwdpe@pcibus/pcidev/pcifn; event error.io.pci.rx-rdpe@pcibus/pcidev/pcifn; event error.io.pci.rx-wdpe@pcibus/pcidev/pcifn; event error.io.pci.sec-rx-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.sec-target-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.sec-target-ma@pcibus/pcidev/pcifn; event error.io.pci.sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.tx-ape@pcibus/pcidev/pcifn; event error.io.pci.tx-ape-bdg@pcibus/pcidev/pcifn; event error.io.pci.bdg-tx-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.bdg-tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pcix.tx-oor@pcibus/pcidev/pcifn; event error.io.pcix.rx-discard@pcibus/pcidev/pcifn; event error.io.pcix.rx-unex-sc@pcibus/pcidev/pcifn; event ereport.io.pci.dto@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.target-ma@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.target-ma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.ma@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.ma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sec-rserr@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sserr@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sec-ma@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sserr@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.rta@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.target-rta@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sta@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.dpe@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.mdpe@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sec-sta@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.rta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sec-mdpe@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sec-rta@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.target-rta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pcix.oor@pcibus/pcidev/pcifn; event ereport.io.pcix.discard@pcibus/pcidev/pcifn; event ereport.io.pcix.unex-sc@pcibus/pcidev/pcifn; /* * A faulty PCI device may cause: * * - tx-ma: the device to not respond to a valid request. * - rx-ma: the device to issue an errant address. * - tx-serr: the device to signal an serr. * - rx-ta: the device to receive a target abort from an unhappy target. * - tx-dpe: the device to trasmit data data and/or parity. * - tx-ape: address/parity to get corrupted during transmission - * only the serr is a must - sserr/dpe will show up if * target driver is hardened. In addition the target could target * abort or master abort. * * A fault PCI-X device may cause: * * - tx-oor: the device sends a byte count larger than the completers * address range. * - tx-discard a DMA split completion received a master abort or a * target abort which caused the device to discard the * split completion * - rx-unex-sc the device recieved a split completion with a tag * which does not match any outstanding transaction. * * NOTE: The rules below are for pci-pci bridge support * * - tx-pma: the device not to respond to a posted request across a bridge. * - tx-dma: the device not to respond to a delayed request across a bridge. * - rx-pta: the device to receive a target abort from a posted transaction * across a bridge. * - rx-dta: the device to receive a target abort from a delayed transaction * across a bridge. * - tx-ape-bdg: address/parity to get corrupted during transmission. * Must see serr/serr/dpe. In addition the pci-pci bridge * could target abort or master abort or let the request through * to the secondary bus causing an ape there. * - tx-rdpe: the device to transfer bad data and/or bad parity during a read * request to a bridge. * - tx-pwdpe: the device to transfer bad data and/or bad parity during a * posted write request to a bridge. * - tx-dwdpe: the device to transfer bad data and/or bad parity during a * delayed write request to a bridge. * * NOTE: The rules below are specifically for the pci-pci bridge, in which it * sends incorrect data/parity when receiving correct data/parity. * * - bdg-tx-ape: address/parity to get corrupted during transmission * on the primary side bus. Must see sserr/dpe/rec_serr. * In addition the hostbridge could target abort * or master abort and if this was a delayed access * we could get target abort propagated to secondary bus. * - bdg-tx-dwdpe: the bridge sends bad data/parity during a delayed write * request to the primary side bus. * - bdg-tx-pwdpe: the bridge sends bad data/parity during a posted write * request to the primary side bus. * - bdg-tx-rdpe: the bridge sends bad data/parity during a read request * to the primary side bus. * - bdg-tx-sec-ape: address/parity to get corrupted during transmission * on the secondary side bus. Only the sec-rserr/sserr/ * serr *must* happen. In addition any hardened leaf * driver on the secondary bus that detects the ape will * report sserr/dpe. Also the target device can target * abort or master abort. * - bdg-tx-sec-rdpe: the bridge sends bad data/parity during a read request * to the secondary side bus. * - bdg-tx-sec-pwdpe: the bridge sends bad data/parity during a posted write * request to the secondary side bus. * - bdg-tx-sec-dwdpe: the bridge sends bad data/parity during a delayed write * request to the secondary side bus. * * - dto: the device could exceed the timeout alloted for a delayed * transaction, causing the bridge to signal a discard timeout. */ prop fault.io.pci.device@pcibus/pcidev/pcifn (0)-> error.io.pci.tx-ma@pcibus/pcidev/pcifn, error.io.pci.rx-ma@pcibus/pcidev/pcifn, error.io.pci.tx-serr@pcibus/pcidev/pcifn, error.io.pci.rx-ta@pcibus/pcidev/pcifn, error.io.pci.tx-ape@pcibus/pcidev/pcifn, error.io.pci.tx-dpe@pcibus/pcidev/pcifn, error.io.pcix.rx-discard@pcibus/pcidev/pcifn, error.io.pcix.tx-oor@pcibus/pcidev/pcifn, error.io.pcix.rx-unex-sc@pcibus/pcidev/pcifn, ereport.io.pci.dto@pcibus/pcidev<>/pcifn<>; prop fault.io.pci.device@pcibus/pcidev/pcifn (0)-> error.io.pci.tx-pma@pcibus/pcidev/pcifn, error.io.pci.tx-dma@pcibus/pcidev/pcifn, error.io.pci.rx-pta@pcibus/pcidev/pcifn, error.io.pci.rx-dta@pcibus/pcidev/pcifn, error.io.pci.tx-ape-bdg@pcibus/pcidev/pcifn, error.io.pci.tx-rdpe@pcibus/pcidev/pcifn, error.io.pci.tx-pwdpe@pcibus/pcidev/pcifn, error.io.pci.tx-dwdpe@pcibus/pcidev/pcifn; prop fault.io.pci.device@pcibus/pcidev/pcifn (0)-> error.io.pci.bdg-tx-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-sec-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-sec-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.tx-ma@pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-ma@pcibus/pcidev/pcifn; prop error.io.pci.tx-ma@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.rec-ma@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.rx-ma@pcibus/pcidev/pcifn (1)-> error.io.pci.rec-ma@pcibus/pcidev/pcifn; prop error.io.pci.rx-ma@pcibus/pcidev[fromdev]/pcifn (1)-> ereport.io.pci.target-ma@pcibus/pcidev/pcifn<> {fromdev != todev}, error.io.pci.sec-target-ma@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.sec-target-ma@pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-ma@pcibus/pcidev/pcifn/pcibus<>/pcidev<>/pcifn<>; prop error.io.pci.rec-ma@pcibus/pcidev/pcifn (1)-> ereport.io.pci.ma@pcibus/pcidev/pcifn; prop error.io.pci.rec-ta@pcibus/pcidev/pcifn (1)-> ereport.io.pci.rta@pcibus/pcidev/pcifn; prop error.io.pci.rec-mdpe@pcibus/pcidev/pcifn (1)-> ereport.io.pci.mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-serr@pcibus/pcidev/pcifn (1)-> error.io.pci.serr@pcibus; prop error.io.pci.tx-serr@pcibus/pcidev/pcifn (0)-> ereport.io.pci.sserr@pcibus/pcidev/pcifn; prop error.io.pci.rx-ta@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.rec-ta@pcibus/pcidev[fromdev]/pcifn, error.io.pci.sta@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.sta@pcibus/pcidev/pcifn (1)-> ereport.io.pci.sta@pcibus/pcidev/pcifn, ereport.io.pci.target-rta@pcibus/pcidev/pcifn; prop error.io.pci.tx-dpe@pcibus/pcidev/pcifn (1)-> error.io.pci.tx-rdpe@pcibus/pcidev/pcifn, error.io.pci.tx-wdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-rdpe@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.rx-rdpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.rx-rdpe@pcibus/pcidev/pcifn (2)-> error.io.pci.rec-mdpe@pcibus/pcidev/pcifn, ereport.io.pci.dpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-rdpe@pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-wdpe@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.rx-wdpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.tx-wdpe@pcibus/pcidev/pcifn (0)-> error.io.pci.rec-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.rx-wdpe@pcibus/pcidev/pcifn (1)-> ereport.io.pci.dpe@pcibus/pcidev/pcifn, ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-ape@pcibus/pcidev/pcifn (1)-> error.io.pci.serr@pcibus; prop error.io.pci.tx-ape@pcibus/pcidev[fromdev]/pcifn (0)-> ereport.io.pci.sserr@pcibus/pcidev/pcifn<> {fromdev != todev}, ereport.io.pci.dpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.tx-ape@pcibus/pcidev[fromdev]/pcifn (0)-> ereport.io.pci.target-rta@pcibus/pcidev/pcifn<> {fromdev != todev}, ereport.io.pci.sta@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.tx-ape@pcibus/pcidev/pcifn (0)-> error.io.pci.rec-ta@pcibus/pcidev/pcifn; prop error.io.pci.tx-ape@pcibus/pcidev[fromdev]/pcifn (0)-> ereport.io.pci.target-ma@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.tx-ape@pcibus/pcidev/pcifn (0)-> error.io.pci.rec-ma@pcibus/pcidev/pcifn; prop error.io.pcix.tx-oor@pcibus/pcidev/pcifn (1)-> ereport.io.pcix.oor@pcibus/pcidev/pcifn; prop error.io.pcix.rx-discard@pcibus/pcidev/pcifn (1)-> ereport.io.pcix.discard@pcibus/pcidev/pcifn; prop error.io.pcix.rx-unex-sc@pcibus/pcidev[fromdev]/pcifn (0)-> ereport.io.pcix.unex-sc@pcibus/pcidev/pcifn<> {fromdev != todev}; /* * the rules below are for hostbridge faults above a pci-pci bridge */ prop error.io.pci.tx-pma@pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-ma@pcibus/pcidev/pcifn; prop error.io.pci.tx-pma@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.rx-pma@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.rx-pma@pcibus/pcidev/pcifn (3)-> error.io.pci.serr@pcibus, ereport.io.pci.sserr@pcibus/pcidev/pcifn, error.io.pci.rec-ma@pcibus/pcidev/pcifn; prop error.io.pci.tx-dma@pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-ma@pcibus/pcidev/pcifn; prop error.io.pci.tx-dma@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.rx-dma@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.rx-dma@pcibus/pcidev/pcifn (2)-> error.io.pci.rec-ma@pcibus/pcidev/pcifn<>, error.io.pci.sec-tx-ta@pcibus/pcidev/pcifn; prop error.io.pci.sec-tx-ta@pcibus/pcidev/pcifn (1)-> ereport.io.pci.sec-sta@pcibus/pcidev/pcifn; prop error.io.pci.sec-tx-ta@pcibus/pcidev/pcifn (0)-> ereport.io.pci.target-rta@pcibus/pcidev/pcifn, ereport.io.pci.rta@pcibus/pcidev/pcifn/pcibus<>/pcidev<>/pcifn<>; prop error.io.pci.rx-pta@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.tx-pta@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.tx-pta@pcibus/pcidev/pcifn (3)-> error.io.pci.serr@pcibus, ereport.io.pci.sserr@pcibus/pcidev/pcifn<>, error.io.pci.sec-rx-pta@pcibus/pcidev/pcifn; prop error.io.pci.sec-rx-pta@pcibus/pcidev/pcifn (1)-> ereport.io.pci.sec-rta@pcibus/pcidev/pcifn; prop error.io.pci.sec-rx-pta@pcibus/pcidev/pcifn (0)-> ereport.io.pci.sta@pcibus/pcidev/pcifn/pcibus<>/pcidev<>/pcifn<>; prop error.io.pci.rx-dta@pcibus/pcidev/pcifn (1)-> error.io.pci.rec-ta@pcibus/pcidev/pcifn; prop error.io.pci.rx-dta@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.sec-rx-dta@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.sec-rx-dta@pcibus/pcidev/pcifn (2)-> ereport.io.pci.sec-rta@pcibus/pcidev/pcifn, ereport.io.pci.sta@pcibus/pcidev/pcifn<>; prop error.io.pci.sec-rx-dta@pcibus/pcidev/pcifn (0)-> ereport.io.pci.sta@pcibus/pcidev/pcifn/pcibus<>/pcidev<>/pcifn<>; prop error.io.pci.sec-rx-dta@pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-rta@pcibus/pcidev/pcifn/pcibus<>/pcidev<>/pcifn<>; prop error.io.pci.tx-rdpe@pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-rdpe@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.bdg-rx-dpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.bdg-rx-dpe@pcibus/pcidev/pcifn (2)-> ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn, error.io.pci.rec-mdpe@pcibus/pcidev/pcifn<>, ereport.io.pci.dpe@pcibus/pcidev/pcifn<>; prop error.io.pci.bdg-rx-dpe@pcibus/pcidev/pcifn (0)-> error.io.pci.sec-rx-mdpe@pcibus/pcidev/pcifn/pcibus<>/pcidev<>/pcifn<>; prop error.io.pci.sec-rx-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (2)-> ereport.io.pci.mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.tx-pwdpe@pcibus/pcidev/pcifn (1)-> error.io.pci.rec-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-pwdpe@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.bdg-pwdpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.bdg-pwdpe@pcibus/pcidev/pcifn (2)-> ereport.io.pci.dpe@pcibus/pcidev/pcifn<>, ereport.io.pci.sec-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.bdg-pwdpe@pcibus/pcidev/pcifn (1)-> error.io.pci.sec-target-mdpe@pcibus/pcidev/pcifn/pcibus<>/pcidev<>/pcifn<>; prop error.io.pci.sec-target-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.sec-target-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.tx-dwdpe@pcibus/pcidev/pcifn (1)-> error.io.pci.rec-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-dwdpe@pcibus/pcidev[fromdev]/pcifn (1)-> error.io.pci.bdg-dwdpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.bdg-dwdpe@pcibus/pcidev/pcifn (1)-> ereport.io.pci.dpe@pcibus/pcidev/pcifn<>; prop error.io.pci.bdg-dwdpe@pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn/pcibus<>/pcidev<>/pcifn<>; prop error.io.pci.tx-ape-bdg@pcibus/pcidev/pcifn (1)-> error.io.pci.serr@pcibus; prop error.io.pci.tx-ape-bdg@pcibus/pcidev[fromdev]/pcifn (2)-> ereport.io.pci.sserr@pcibus/pcidev/pcifn<> {fromdev != todev}, ereport.io.pci.dpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.tx-ape-bdg@pcibus/pcidev[fromdev]/pcifn (0)-> ereport.io.pci.target-rta@pcibus/pcidev/pcifn<>/pcibus/pcidev/pcifn {fromdev != todev}, ereport.io.pci.sta@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.tx-ape-bdg@pcibus/pcidev/pcifn (0)-> error.io.pci.rec-ta@pcibus/pcidev/pcifn; prop error.io.pci.tx-ape-bdg@pcibus/pcidev[fromdev]/pcifn (0)-> ereport.io.pci.target-ma@pcibus/pcidev/pcifn<>/pcibus/pcidev/pcifn {fromdev != todev}; prop error.io.pci.tx-ape-bdg@pcibus/pcidev/pcifn (0)-> error.io.pci.rec-ma@pcibus/pcidev/pcifn; prop error.io.pci.tx-ape-bdg@pcibus/pcidev[fromdev]/pcifn (0)-> error.io.pci.bdg-tx-sec-ape@pcibus/pcidev/pcifn<>/pcibus/pcidev/pcifn {fromdev != todev}; /* * The rules below are specifically for the pci-pci bridge, in which it * sends incorrect data/parity when receiving correct data/parity. */ prop error.io.pci.bdg-tx-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.rec-mdpe@pcibus/pcidev/pcifn<>; prop error.io.pci.bdg-tx-dwdpe@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.rx-wdpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.bdg-tx-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (2)-> ereport.io.pci.sserr@pcibus/pcidev/pcifn<>, error.io.pci.serr@pcibus; prop error.io.pci.bdg-tx-pwdpe@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.rx-wdpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.bdg-tx-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.rec-mdpe@pcibus/pcidev/pcifn<>; prop error.io.pci.bdg-tx-rdpe@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.rx-rdpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.bdg-tx-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (2)-> ereport.io.pci.mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-sec-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (3)-> ereport.io.pci.sserr@pcibus/pcidev/pcifn<>, error.io.pci.serr@pcibus, ereport.io.pci.sec-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-sec-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-sec-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> ereport.io.pci.sec-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-sec-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.sec-rx-dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-sec-dwdpe@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.rec-mdpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.sec-rx-dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-ape@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (3)-> ereport.io.pci.sserr@pcibus/pcidev/pcifn<> {fromdev != todev}, ereport.io.pci.dpe@pcibus/pcidev/pcifn<> {fromdev != todev}, error.io.pci.serr@pcibus; prop error.io.pci.bdg-tx-ape@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.sta@pcibus/pcidev/pcifn<> {fromdev != todev}, ereport.io.pci.target-rta@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.bdg-tx-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> error.io.pci.rec-ta@pcibus/pcidev/pcifn<>; prop error.io.pci.bdg-tx-ape@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.target-ma@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.bdg-tx-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> error.io.pci.rec-ma@pcibus/pcidev/pcifn<>; prop error.io.pci.bdg-tx-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.sec-sta@pcibus/pcidev/pcifn, ereport.io.pci.target-rta@pcibus/pcidev/pcifn, ereport.io.pci.rta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (3)-> ereport.io.pci.sec-rserr@pcibus/pcidev/pcifn, ereport.io.pci.sserr@pcibus/pcidev/pcifn<>, error.io.pci.serr@pcibus; prop error.io.pci.bdg-tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.sserr@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.bdg-tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.sta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.sec-rta@pcibus/pcidev/pcifn, ereport.io.pci.target-rta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.sta@pcibus/pcidev/pcifn<>; prop error.io.pci.bdg-tx-sec-ape@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (0)-> error.io.pci.rec-ta@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.bdg-tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.sec-ma@pcibus/pcidev/pcifn, ereport.io.pci.target-ma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.sta@pcibus/pcidev/pcifn<>; prop error.io.pci.bdg-tx-sec-ape@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (0)-> error.io.pci.rec-ta@pcibus/pcidev/pcifn<> {fromdev != todev}; fru pcibus; asru pcibus; event fault.io.pci.bus@pcibus, FITrate=PCI_BUS_FIT, FRU=pcibus, ASRU=pcibus; /* A faulty PCI bus may cause: * * - tx-dpe: data/parity to get corrupted during transmission. * - tx-ape: address/parity to get corrupted during transmission. * * NOTE: The rules below are valid for pci-pci bridge transactions. * * - tx-ape-bdg: address/parity to get corrupted during transmission. * - tx-pwdpe: data/parity to get corrupted during posted write transmission * to a pci-pci bridge. * - tx-dwdpe: data/parity to get corrupted during delayed write transmission * to a pci-pci bridge. * - tx-rdpe: data/parity to get corrupted during read transmission * to a pci-pci bridge. * - bdg-tx-ape: address/parity to get corrupted during transmission * from a pci-pci bridge. * - bdg-tx-pwdpe: data/parity to get corrupted during posted write * transmission from a pci-pci bridge. * - bdg-tx-dwdpe: data/parity to get corrupted during delayed write * transmission from a pci-pci bridge. * - bdg-tx-rdpe: data/parity to get corrupted during read transmission * from a pci-pci bridge. */ prop fault.io.pci.bus@pcibus (0)-> error.io.pci.tx-dpe@pcibus/pcidev/pcifn, error.io.pci.tx-ape@pcibus/pcidev/pcifn, error.io.pcix.tx-oor@pcibus/pcidev/pcifn, error.io.pcix.rx-unex-sc@pcibus/pcidev/pcifn; prop fault.io.pci.bus@pcibus (0)-> error.io.pci.tx-ape-bdg@pcibus/pcidev/pcifn, error.io.pci.tx-pwdpe@pcibus/pcidev/pcifn, error.io.pci.tx-rdpe@pcibus/pcidev/pcifn, error.io.pci.tx-dwdpe@pcibus/pcidev/pcifn; prop fault.io.pci.bus@pcibus (0)-> error.io.pci.bdg-tx-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; /* * A defective PCI device driver may cause: * * - tx-ma: a device to not respond because it was power managed and the * driver attempted to access it. * - rx-ma: a device to address a non-existent device. * - rx-ta: a device to request a transaction from a target that is invalid * causing a target abort to be received. */ event defect.io.pci.driver@pcibus/pcidev/pcifn; prop defect.io.pci.driver@pcibus/pcidev/pcifn (0)-> error.io.pci.tx-ma@pcibus/pcidev/pcifn, error.io.pci.rx-ma@pcibus/pcidev/pcifn, error.io.pci.rx-ta@pcibus/pcidev/pcifn, error.io.pcix.tx-oor@pcibus/pcidev/pcifn; /* PCI-PCI devices */ asru pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; fru pcibus/pcidev/pcifn/pcibus/pcidev; event fault.io.pci.device@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, FITrate=PCI_DEV_FIT, FRU=pcibus/pcidev/pcifn/pcibus/pcidev, ASRU=pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.tx-sec-pma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.tx-sec-dma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.rx-sec-pta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.rx-sec-dta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.tx-sec-serr@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.tx-sec-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.tx-sec-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.tx-sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; event error.io.pci.sec-dpe@pcibus/pcidev/pcifn; event ereport.io.pci.target-rta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.rta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sec-sta@pcibus/pcidev/pcifn{within(5s)}; event ereport.io.pci.sec-dpe@pcibus/pcidev/pcifn{within(5s)}; /* * A faulty PCI device off of a pci-pci bridge may cause: * * - tx-sec-pma: the device not to respond to a valid request during a * posted transaction. * - tx-sec-dma: the device not to respond to a valid request during a * delayed transaction. * - rx-sec-pta: the device to receive a target abort during a posted * transaction. * - rx-sec-dta: the device to receive a target abort during a delayed * transaction. * - tx-sec-serr: the device to signal a system error. * - tx-sec-ape: the transfer of bad address/parity. We must see sec_dpe/ * sserr/rec_serr. The initiator will only see the PERR# - * so may raise mdpe. Another device on the secondary bus * could detect and report the ape. The bridge could target * abort or master abort or pass the request up to the * primary bus. * - tx-sec-pwdpe: the device to deliver bad data/parity during a posted * write. * - tx-sec-dwdpe: the device to deliver bad data/parity during a delayed * write. * - tx-sec-rdpe: the device to deliver bad data/parity during a read. * - dto: the device to exceed the set timeout for a delayed * transaction. * - rx-pma: the device to send a bad address to the primary side * bus during a posted transaction. * - rx-dma: the device to send a bad address to the primary side bus * during a delayed transaction. */ prop fault.io.pci.device@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> error.io.pci.tx-sec-pma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-dma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.rx-sec-pta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.rx-sec-dta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-serr@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.rx-pma@pcibus/pcidev/pcifn, error.io.pci.rx-dma@pcibus/pcidev/pcifn, ereport.io.pci.dto@pcibus/pcidev/pcifn; prop error.io.pci.tx-sec-pma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (3)-> ereport.io.pci.sec-ma@pcibus/pcidev/pcifn, ereport.io.pci.sserr@pcibus/pcidev/pcifn<>, error.io.pci.serr@pcibus; prop error.io.pci.tx-sec-dma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (3)-> ereport.io.pci.target-rta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.sec-ma@pcibus/pcidev/pcifn, ereport.io.pci.sta@pcibus/pcidev/pcifn<>; prop error.io.pci.tx-sec-dma@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.rec-ta@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.rx-sec-pta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (3)-> error.io.pci.rx-ta@pcibus/pcidev/pcifn<>, ereport.io.pci.sserr@pcibus/pcidev/pcifn<>, error.io.pci.serr@pcibus; prop error.io.pci.rx-sec-dta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.target-rta@pcibus/pcidev/pcifn, ereport.io.pci.rta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.rx-sec-dta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (2)-> ereport.io.pci.sec-sta@pcibus/pcidev/pcifn, error.io.pci.rx-ta@pcibus/pcidev/pcifn<>; prop error.io.pci.tx-sec-serr@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (3)-> ereport.io.pci.sserr@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.sec-rserr@pcibus/pcidev/pcifn, ereport.io.pci.sserr@pcibus/pcidev/pcifn<>, error.io.pci.serr@pcibus; prop error.io.pci.tx-sec-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (2)-> ereport.io.pci.mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.sec-dpe@pcibus/pcidev/pcifn, error.io.pci.rec-mdpe@pcibus/pcidev/pcifn<>, ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-sec-pwdpe@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.sec-dpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.sec-dpe@pcibus/pcidev/pcifn (2)-> ereport.io.pci.dpe@pcibus/pcidev/pcifn, ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-sec-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (1)-> ereport.io.pci.mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.sec-dpe@pcibus/pcidev/pcifn, ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (3)-> ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.sec-mdpe@pcibus/pcidev/pcifn, ereport.io.pci.sec-dpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-sec-rdpe@pcibus/pcidev[fromdev]/pcifn/pcibus/pcidev/pcifn (1)-> error.io.pci.rx-rdpe@pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (3)-> ereport.io.pci.sec-dpe@pcibus/pcidev/pcifn, ereport.io.pci.sserr@pcibus/pcidev/pcifn<>, error.io.pci.serr@pcibus; prop error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.mdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, ereport.io.pci.target-mdpe@pcibus/pcidev/pcifn; prop error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev[fromdev]/pcifn (0)-> ereport.io.pci.dpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn<> {fromdev != todev}, ereport.io.pci.sserr@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn<> {fromdev != todev}; prop error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.sec-rserr@pcibus/pcidev/pcifn; prop error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.sec-sta@pcibus/pcidev/pcifn, ereport.io.pci.target-rta@pcibus/pcidev/pcifn, ereport.io.pci.rta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> ereport.io.pci.target-ma@pcibus/pcidev/pcifn, ereport.io.pci.ma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> error.io.pci.bdg-tx-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; asru pcibus/pcidev; fru pcibus/pcidev/pcifn/pcibus; /* * A faulty secondary side PCI bus may cause: * * - tx-sec-ape: the transfer of bad address/parity when the secondary * bus is the originator. * - tx-sec-pwdpe: the transfer of bad data/parity during a posted write. * - tx-sec-dwdpe: the transfer of bad data/parity during a delayed write. * - tx-sec-rdpe: the transfer of bad data/parity during a read. * - bdg-tx-sec-ape: the transfer of bad address/parity when the secondary * bus is the destination. * - bdg-tx-sec-rdpe: the transfer from the bridge of bad data/parity during a * read. * - bdg-tx-sec-pwdpe: the transfer from the bridge of bad data/parity during a * posted write. * - bdg-tx-sec-dwdpe: the transfer from the bridge of bad data/parity during a * delayed write. */ event fault.io.pci.bus@pcibus/pcidev/pcifn/pcibus, FITrate=PCI_BUS_FIT, FRU=pcibus/pcidev/pcifn/pcibus, ASRU=pcibus/pcidev; prop fault.io.pci.bus@pcibus/pcidev/pcifn/pcibus (0)-> error.io.pci.tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-sec-ape@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-sec-rdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-sec-pwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.bdg-tx-sec-dwdpe@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; /* * A defective device driver of a device that is off of a pci-pci bridge may * cause: * * - tx-sec-pma: the device to not respond to a posted transaction. * - tx-sec-dma: the device to not respond to a delayed transaction. * - rx-sec-pta: the device to receive a target abort during a posted * transaction. * - rx-sec-dta: the device to receive a target abort during a delayed * transaction. * - rx-pma: the device to send a bad address to the primary side bus * during a posted transaction. * - rx-dma: the device to send a bad address to the primary side bus * during a delayed transaction. */ event defect.io.pci.driver@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn; prop defect.io.pci.driver@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn (0)-> error.io.pci.tx-sec-pma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.tx-sec-dma@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.rx-sec-pta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.rx-sec-dta@pcibus/pcidev/pcifn/pcibus/pcidev/pcifn, error.io.pci.rx-pma@pcibus/pcidev/pcifn, error.io.pci.rx-dma@pcibus/pcidev/pcifn;