1*88f8b78aSgm89044/*
2*88f8b78aSgm89044 * CDDL HEADER START
3*88f8b78aSgm89044 *
4*88f8b78aSgm89044 * The contents of this file are subject to the terms of the
5*88f8b78aSgm89044 * Common Development and Distribution License (the "License").
6*88f8b78aSgm89044 * You may not use this file except in compliance with the License.
7*88f8b78aSgm89044 *
8*88f8b78aSgm89044 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*88f8b78aSgm89044 * or http://www.opensolaris.org/os/licensing.
10*88f8b78aSgm89044 * See the License for the specific language governing permissions
11*88f8b78aSgm89044 * and limitations under the License.
12*88f8b78aSgm89044 *
13*88f8b78aSgm89044 * When distributing Covered Code, include this CDDL HEADER in each
14*88f8b78aSgm89044 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*88f8b78aSgm89044 * If applicable, add the following below this CDDL HEADER, with the
16*88f8b78aSgm89044 * fields enclosed by brackets "[]" replaced with your own identifying
17*88f8b78aSgm89044 * information: Portions Copyright [yyyy] [name of copyright owner]
18*88f8b78aSgm89044 *
19*88f8b78aSgm89044 * CDDL HEADER END
20*88f8b78aSgm89044 */
21*88f8b78aSgm89044
22*88f8b78aSgm89044/*
23*88f8b78aSgm89044 * Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
24*88f8b78aSgm89044 * Use is subject to license terms.
25*88f8b78aSgm89044 */
26*88f8b78aSgm89044
27*88f8b78aSgm89044/*
28*88f8b78aSgm89044 * sca500.esc: Deimos eversholt source code
29*88f8b78aSgm89044 */
30*88f8b78aSgm89044
31*88f8b78aSgm89044#pragma dictionary "SCA500"
32*88f8b78aSgm89044
33*88f8b78aSgm89044/*
34*88f8b78aSgm89044 * For Deimos, there is one ASRU that includes both the driver and the card,
35*88f8b78aSgm89044 * and there are two FRUs, the driver and the card.
36*88f8b78aSgm89044 */
37*88f8b78aSgm89044
38*88f8b78aSgm89044#define P pcibus/pcidev/pcifn
39*88f8b78aSgm89044
40*88f8b78aSgm89044asru P;
41*88f8b78aSgm89044fru P;
42*88f8b78aSgm89044
43*88f8b78aSgm89044/*
44*88f8b78aSgm89044 * The hardware card may generate faults.
45*88f8b78aSgm89044 * The driver passes the user data to the hardware and returns the hardware
46*88f8b78aSgm89044 * generated results to the user. It does check input and output data errors.
47*88f8b78aSgm89044 * However, it returns these errors to the calling application. Since the
48*88f8b78aSgm89044 * driver itself does not do any data manipulation or generation, it does not
49*88f8b78aSgm89044 * have upsets.
50*88f8b78aSgm89044 */
51*88f8b78aSgm89044
52*88f8b78aSgm89044/*
53*88f8b78aSgm89044 * Declare faults
54*88f8b78aSgm89044 */
55*88f8b78aSgm89044event fault.io.sca500.hw@P, FITrate=50, ASRU=P, FRU=P;
56*88f8b78aSgm89044
57*88f8b78aSgm89044/*
58*88f8b78aSgm89044 * Hardware faults lead to the following error
59*88f8b78aSgm89044 */
60*88f8b78aSgm89044event error.io.sca500.hw.device@P;		/* DMA device errors */
61*88f8b78aSgm89044event error.io.sca500.hw.timeout@P;		/* Device hang */
62*88f8b78aSgm89044
63*88f8b78aSgm89044/*
64*88f8b78aSgm89044 * Declare ereports
65*88f8b78aSgm89044 */
66*88f8b78aSgm89044event ereport.io.sca500.hw.device@P;
67*88f8b78aSgm89044event ereport.io.sca500.hw.timeout@P;
68*88f8b78aSgm89044
69*88f8b78aSgm89044/*
70*88f8b78aSgm89044 * Declear event propagations for faults
71*88f8b78aSgm89044 */
72*88f8b78aSgm89044prop fault.io.sca500.hw@P(0)
73*88f8b78aSgm89044		-> error.io.sca500.hw.device@P,
74*88f8b78aSgm89044		    error.io.sca500.hw.timeout@P;
75*88f8b78aSgm89044
76*88f8b78aSgm89044prop error.io.sca500.hw.device@P
77*88f8b78aSgm89044		-> ereport.io.sca500.hw.device@P;
78*88f8b78aSgm89044prop error.io.sca500.hw.timeout@P
79*88f8b78aSgm89044		-> ereport.io.sca500.hw.timeout@P;
80