usr/src/uts/common/sys/fibre-channel/fca/qlge/qlge_hw.h
author Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
Mon, 05 Apr 2010 05:20:48 -0600
changeset 12073 05ba1c0d6140
parent 10997 2ff33cc68aa6
permissions -rw-r--r--
6923815 Implement FMA functionality in qlge driver 6936309 qlge 1.03 performance is only at about 2G in Sparc M series systems
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10997
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
     1
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
     2
 * CDDL HEADER START
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
     3
 *
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
     4
 * The contents of this file are subject to the terms of the
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
     5
 * Common Development and Distribution License (the "License").
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
     6
 * You may not use this file except in compliance with the License.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
     7
 *
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
     8
 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
     9
 * or http://www.opensolaris.org/os/licensing.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    10
 * See the License for the specific language governing permissions
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    11
 * and limitations under the License.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    12
 *
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    13
 * When distributing Covered Code, include this CDDL HEADER in each
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    14
 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    15
 * If applicable, add the following below this CDDL HEADER, with the
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    16
 * fields enclosed by brackets "[]" replaced with your own identifying
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    17
 * information: Portions Copyright [yyyy] [name of copyright owner]
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    18
 *
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    19
 * CDDL HEADER END
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    20
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    21
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    22
/*
12073
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
    23
 * Copyright 2010 QLogic Corporation. All rights reserved.
10997
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    24
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    25
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    26
#ifndef _QLGE_HW_H
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    27
#define	_QLGE_HW_H
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    28
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    29
#ifdef __cplusplus
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    30
extern "C" {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    31
#endif
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    32
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    33
#define	ISP_SCHULTZ 0x8000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    34
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    35
#define	MB_REG_COUNT		8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    36
#define	MB_DATA_REG_COUNT	(MB_REG_COUNT-1)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    37
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    38
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    39
#define	QLA_SCHULTZ(qlge) ((qlge)->device_id == ISP_SCHULTZ)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    41
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    42
 * Data bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    43
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    44
#define	BIT_0	0x1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    45
#define	BIT_1	0x2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    46
#define	BIT_2	0x4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    47
#define	BIT_3	0x8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    48
#define	BIT_4	0x10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    49
#define	BIT_5	0x20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    50
#define	BIT_6	0x40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    51
#define	BIT_7	0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    52
#define	BIT_8	0x100
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    53
#define	BIT_9	0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    54
#define	BIT_10	0x400
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    55
#define	BIT_11	0x800
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    56
#define	BIT_12	0x1000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    57
#define	BIT_13	0x2000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    58
#define	BIT_14	0x4000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    59
#define	BIT_15	0x8000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    60
#define	BIT_16	0x10000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    61
#define	BIT_17	0x20000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    62
#define	BIT_18	0x40000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    63
#define	BIT_19	0x80000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    64
#define	BIT_20	0x100000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    65
#define	BIT_21	0x200000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    66
#define	BIT_22	0x400000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    67
#define	BIT_23	0x800000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    68
#define	BIT_24	0x1000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    69
#define	BIT_25	0x2000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    70
#define	BIT_26	0x4000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    71
#define	BIT_27	0x8000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    72
#define	BIT_28	0x10000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    73
#define	BIT_29	0x20000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    74
#define	BIT_30	0x40000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    75
#define	BIT_31	0x80000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    76
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    77
typedef struct ql_stats
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    78
{
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    79
	uint32_t	intr_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    80
	/* software statics */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    81
	uint32_t	intr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    82
	uint64_t	speed;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    83
	uint32_t	duplex;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    84
	uint32_t	media;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    85
	/* TX */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    86
	uint64_t	obytes;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    87
	uint64_t	opackets;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    88
	uint32_t	nocarrier;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    89
	uint32_t	defer;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    90
	/* RX */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    91
	uint64_t	rbytes;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    92
	uint64_t	rpackets;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    93
	uint32_t	norcvbuf;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    94
	uint32_t	frame_too_long;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    95
	uint32_t	crc;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    96
	ulong_t		multircv;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    97
	ulong_t		brdcstrcv;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    98
	uint32_t	errrcv;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
    99
	uint32_t	frame_too_short;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   100
	/* statics by hw */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   101
	uint32_t	errxmt;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   102
	uint32_t	frame_err;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   103
	ulong_t		multixmt;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   104
	ulong_t		brdcstxmt;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   105
	uint32_t	phy_addr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   106
	uint32_t	jabber_err;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   107
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   108
}ql_stats_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   109
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   110
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   111
#define	ETHERNET_CRC_SIZE	4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   112
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   113
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   114
 * Register Definitions...
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   115
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   116
#define	MAILBOX_COUNT	16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   117
/* System Register 0x00 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   118
#define	PROC_ADDR_RDY	BIT_31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   119
#define	PROC_ADDR_R	BIT_30
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   120
#define	PROC_ADDR_ERR	BIT_29
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   121
#define	PROC_ADDR_DA	BIT_28
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   122
#define	PROC_ADDR_FUNC0_MBI	0x00001180
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   123
#define	PROC_ADDR_FUNC0_MBO	(PROC_ADDR_FUNC0_MBI + MAILBOX_COUNT)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   124
#define	PROC_ADDR_FUNC0_CTL	0x000011a1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   125
#define	PROC_ADDR_FUNC2_MBI	0x00001280
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   126
#define	PROC_ADDR_FUNC2_MBO	(PROC_ADDR_FUNC2_MBI + MAILBOX_COUNT)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   127
#define	PROC_ADDR_FUNC2_CTL	0x000012a1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   128
#define	PROC_ADDR_MPI_RISC	0x00000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   129
#define	PROC_ADDR_MDE		0x00010000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   130
#define	PROC_ADDR_REGBLOCK	0x00020000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   131
#define	PROC_ADDR_RISC_REG	0x00030000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   132
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   133
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   134
/* System Register 0x08 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   135
#define	SYSTEM_EFE_FAE		0x3u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   136
#define	SYSTEM_EFE_FAE_MASK	(SYSTEM_EFE_FAE<<16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   137
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   138
	SYS_EFE = (1 << 0),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   139
	SYS_FAE = (1 << 1),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   140
	SYS_MDC = (1 << 2),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   141
	SYS_DST = (1 << 3),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   142
	SYS_DWC = (1 << 4),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   143
	SYS_EVW = (1 << 5),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   144
	SYS_OMP_DLY_MASK = 0x3f000000,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   145
	/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   146
	 * There are no values defined as of edit #15.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   147
	 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   148
	SYS_ODI = (1 << 14)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   149
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   150
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   151
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   152
 * Reset/Failover Register (RST_FO) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   153
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   154
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   155
#define	RST_FO_TFO		(1 << 0)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   156
#define	RST_FO_RR_MASK		0x00060000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   157
#define	RST_FO_RR_CQ_CAM	0x00000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   158
#define	RST_FO_RR_DROP		0x00000001
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   159
#define	RST_FO_RR_DQ		0x00000002
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   160
#define	RST_FO_RR_RCV_FUNC_CQ	0x00000003
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   161
#define	RST_FO_FRB		BIT_12
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   162
#define	RST_FO_MOP		BIT_13
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   163
#define	RST_FO_REG		BIT_14
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   164
#define	RST_FO_FR		0x8000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   165
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   166
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   167
 * Function Specific Control Register (FSC) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   168
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   169
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   170
	FSC_DBRST_MASK = 0x00070000,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   171
	FSC_DBRST_256 = 0x00000000,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   172
	FSC_DBRST_512 = 0x00000001,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   173
	FSC_DBRST_768 = 0x00000002,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   174
	FSC_DBRST_1024 = 0x00000003,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   175
	FSC_DBL_MASK = 0x00180000,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   176
	FSC_DBL_DBRST = 0x00000000,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   177
	FSC_DBL_MAX_PLD = 0x00000008,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   178
	FSC_DBL_MAX_BRST = 0x00000010,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   179
	FSC_DBL_128_BYTES = 0x00000018,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   180
	FSC_EC = (1 << 5),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   181
	FSC_EPC_MASK = 0x00c00000,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   182
	FSC_EPC_INBOUND = (1 << 6),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   183
	FSC_EPC_OUTBOUND = (1 << 7),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   184
	FSC_VM_PAGESIZE_MASK = 0x07000000,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   185
	FSC_VM_PAGE_2K = 0x00000100,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   186
	FSC_VM_PAGE_4K = 0x00000200,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   187
	FSC_VM_PAGE_8K = 0x00000300,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   188
	FSC_VM_PAGE_64K = 0x00000600,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   189
	FSC_SH = (1 << 11),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   190
	FSC_DSB = (1 << 12),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   191
	FSC_STE = (1 << 13),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   192
	FSC_FE = (1 << 15)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   193
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   194
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   195
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   196
 * Host Command Status Register (CSR) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   197
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   198
#define	CSR_ERR_STS_MASK	0x0000003f
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   199
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   200
 * There are no valued defined as of edit #15.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   201
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   202
#define	CSR_RR			BIT_8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   203
#define	CSR_HRI			BIT_9
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   204
#define	CSR_RP			BIT_10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   205
#define	CSR_CMD_PARM_SHIFT	22
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   206
#define	CSR_CMD_NOP		0x00000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   207
#define	CSR_CMD_SET_RST		0x1000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   208
#define	CSR_CMD_CLR_RST		0x20000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   209
#define	CSR_CMD_SET_PAUSE	0x30000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   210
#define	CSR_CMD_CLR_PAUSE	0x40000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   211
#define	CSR_CMD_SET_H2R_INT	0x50000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   212
#define	CSR_CMD_CLR_H2R_INT	0x60000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   213
#define	CSR_CMD_PAR_EN		0x70000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   214
#define	CSR_CMD_SET_BAD_PAR	0x80000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   215
#define	CSR_CMD_CLR_BAD_PAR	0x90000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   216
#define	CSR_CMD_CLR_R2PCI_INT	0xa0000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   217
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   218
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   219
 * Configuration Register (CFG) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   220
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   221
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   222
	CFG_LRQ = (1 << 0),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   223
	CFG_DRQ = (1 << 1),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   224
	CFG_LR = (1 << 2),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   225
	CFG_DR = (1 << 3),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   226
	CFG_LE = (1 << 5),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   227
	CFG_LCQ = (1 << 6),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   228
	CFG_DCQ = (1 << 7),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   229
	CFG_Q_SHIFT = 8,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   230
	CFG_Q_MASK = 0x7f000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   231
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   232
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   233
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   234
 *  Status Register (STS) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   235
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   236
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   237
	STS_FE = (1 << 0),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   238
	STS_PI = (1 << 1),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   239
	STS_PL0 = (1 << 2),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   240
	STS_PL1 = (1 << 3),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   241
	STS_PI0 = (1 << 4),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   242
	STS_PI1 = (1 << 5),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   243
	STS_FUNC_ID_MASK = 0x000000c0,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   244
	STS_FUNC_ID_SHIFT = 6,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   245
	STS_F0E = (1 << 8),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   246
	STS_F1E = (1 << 9),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   247
	STS_F2E = (1 << 10),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   248
	STS_F3E = (1 << 11),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   249
	STS_NFE = (1 << 12)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   250
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   251
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   252
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   253
 * Register (REV_ID) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   254
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   255
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   256
	REV_ID_MASK = 0x0000000f,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   257
	REV_ID_NICROLL_SHIFT = 0,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   258
	REV_ID_NICREV_SHIFT = 4,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   259
	REV_ID_XGROLL_SHIFT = 8,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   260
	REV_ID_XGREV_SHIFT = 12,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   261
	REV_ID_CHIPREV_SHIFT = 28
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   262
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   263
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   264
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   265
 *  Force ECC Error Register (FRC_ECC_ERR) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   266
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   267
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   268
	FRC_ECC_ERR_VW = (1 << 12),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   269
	FRC_ECC_ERR_VB = (1 << 13),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   270
	FRC_ECC_ERR_NI = (1 << 14),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   271
	FRC_ECC_ERR_NO = (1 << 15),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   272
	FRC_ECC_PFE_SHIFT = 16,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   273
	FRC_ECC_ERR_DO = (1 << 18),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   274
	FRC_ECC_P14 = (1 << 19)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   275
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   276
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   277
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   278
 * Error Status Register (ERR_STS) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   279
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   280
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   281
	ERR_STS_NOF = (1 << 0),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   282
	ERR_STS_NIF = (1 << 1),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   283
	ERR_STS_DRP = (1 << 2),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   284
	ERR_STS_XGP = (1 << 3),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   285
	ERR_STS_FOU = (1 << 4),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   286
	ERR_STS_FOC = (1 << 5),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   287
	ERR_STS_FOF = (1 << 6),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   288
	ERR_STS_FIU = (1 << 7),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   289
	ERR_STS_FIC = (1 << 8),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   290
	ERR_STS_FIF = (1 << 9),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   291
	ERR_STS_MOF = (1 << 10),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   292
	ERR_STS_TA = (1 << 11),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   293
	ERR_STS_MA = (1 << 12),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   294
	ERR_STS_MPE = (1 << 13),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   295
	ERR_STS_SCE = (1 << 14),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   296
	ERR_STS_STE = (1 << 15),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   297
	ERR_STS_FOW = (1 << 16),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   298
	ERR_STS_UE = (1 << 17),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   299
	ERR_STS_MCH = (1 << 26),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   300
	ERR_STS_LOC_SHIFT = 27
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   301
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   302
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   303
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   304
 * Semaphore Register (SEM) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   305
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   306
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   307
 * Example:
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   308
 * reg = SEM_XGMAC0_MASK | (SEM_SET << SEM_XGMAC0_SHIFT)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   309
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   310
#define	SEM_CLEAR		0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   311
#define	SEM_SET			1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   312
#define	SEM_FORCE		3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   313
#define	SEM_XGMAC0_SHIFT	0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   314
#define	SEM_XGMAC1_SHIFT	2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   315
#define	SEM_ICB_SHIFT		4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   316
#define	SEM_MAC_ADDR_SHIFT	6
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   317
#define	SEM_FLASH_SHIFT		8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   318
#define	SEM_PROBE_SHIFT		10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   319
#define	SEM_RT_IDX_SHIFT	12
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   320
#define	SEM_PROC_REG_SHIFT	14
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   321
#define	SEM_XGMAC0_MASK		0x00030000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   322
#define	SEM_XGMAC1_MASK		0x000c0000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   323
#define	SEM_ICB_MASK		0x00300000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   324
#define	SEM_MAC_ADDR_MASK	0x00c00000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   325
#define	SEM_FLASH_MASK		0x03000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   326
#define	SEM_PROBE_MASK		0x0c000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   327
#define	SEM_RT_IDX_MASK		0x30000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   328
#define	SEM_PROC_REG_MASK	0xc0000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   329
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   330
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   331
 * Stop CQ Processing Register (CQ_STOP) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   332
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   333
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   334
	CQ_STOP_QUEUE_MASK = (0x007f0000),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   335
	CQ_STOP_TYPE_MASK = (0x03000000),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   336
	CQ_STOP_TYPE_START = 0x00000100,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   337
	CQ_STOP_TYPE_STOP = 0x00000200,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   338
	CQ_STOP_TYPE_READ = 0x00000300,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   339
	CQ_STOP_EN = (1 << 15)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   340
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   341
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   342
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   343
 * MAC Protocol Address Index Register (MAC_ADDR_IDX) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   344
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   345
#define	MAC_ADDR_IDX_SHIFT		4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   346
#define	MAC_ADDR_TYPE_SHIFT		16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   347
#define	MAC_ADDR_TYPE_MASK 		0x000f0000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   348
#define	MAC_ADDR_TYPE_CAM_MAC		0x00000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   349
#define	MAC_ADDR_TYPE_MULTI_MAC		0x00010000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   350
#define	MAC_ADDR_TYPE_VLAN		0x00020000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   351
#define	MAC_ADDR_TYPE_MULTI_FLTR	0x00030000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   352
#define	MAC_ADDR_TYPE_FC_MAC		0x00040000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   353
#define	MAC_ADDR_TYPE_MGMT_MAC		0x00050000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   354
#define	MAC_ADDR_TYPE_MGMT_VLAN		0x00060000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   355
#define	MAC_ADDR_TYPE_MGMT_V4		0x00070000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   356
#define	MAC_ADDR_TYPE_MGMT_V6		0x00080000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   357
#define	MAC_ADDR_TYPE_MGMT_TU_DP	0x00090000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   358
#define	MAC_ADDR_ADR			BIT_25
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   359
#define	MAC_ADDR_RS			BIT_26
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   360
#define	MAC_ADDR_E  			BIT_27
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   361
#define	MAC_ADDR_MR  			BIT_30
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   362
#define	MAC_ADDR_MW  			BIT_31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   363
#define	MAX_MULTICAST_HW_SIZE		32
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   364
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   365
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   366
 *  MAC Protocol Address Index Register (SPLT_HDR, 0xC0) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   367
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   368
#define	SPLT_HDR_EP	BIT_31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   369
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   370
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   371
 * NIC Receive Configuration Register (NIC_RCV_CFG) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   372
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   373
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   374
	NIC_RCV_CFG_PPE = (1 << 0),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   375
	NIC_RCV_CFG_VLAN_MASK = 0x00060000,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   376
	NIC_RCV_CFG_VLAN_ALL = 0x00000000,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   377
	NIC_RCV_CFG_VLAN_MATCH_ONLY = 0x00000002,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   378
	NIC_RCV_CFG_VLAN_MATCH_AND_NON = 0x00000004,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   379
	NIC_RCV_CFG_VLAN_NONE_AND_NON = 0x00000006,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   380
	NIC_RCV_CFG_RV = (1 << 3),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   381
	NIC_RCV_CFG_DFQ_MASK = (0x7f000000),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   382
	NIC_RCV_CFG_DFQ_SHIFT = 8,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   383
	NIC_RCV_CFG_DFQ = 0	/* HARDCODE default queue to 0. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   384
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   385
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   386
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   387
 * Routing Index Register (RT_IDX) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   388
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   389
#define	RT_IDX_IDX_SHIFT	8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   390
#define	RT_IDX_TYPE_MASK	0x000f0000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   391
#define	RT_IDX_TYPE_RT		0x00000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   392
#define	RT_IDX_TYPE_RT_INV	0x00010000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   393
#define	RT_IDX_TYPE_NICQ	0x00020000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   394
#define	RT_IDX_TYPE_NICQ_INV	0x00030000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   395
#define	RT_IDX_DST_MASK		0x00700000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   396
#define	RT_IDX_DST_RSS		0x00000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   397
#define	RT_IDX_DST_CAM_Q	0x00100000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   398
#define	RT_IDX_DST_COS_Q	0x00200000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   399
#define	RT_IDX_DST_DFLT_Q	0x00300000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   400
#define	RT_IDX_DST_DEST_Q	0x00400000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   401
#define	RT_IDX_RS		BIT_26
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   402
#define	RT_IDX_E		BIT_27
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   403
#define	RT_IDX_MR		BIT_30
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   404
#define	RT_IDX_MW		BIT_31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   405
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   406
/* Nic Queue format - type 2 bits */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   407
#define	RT_IDX_BCAST		1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   408
#define	RT_IDX_MCAST		BIT_1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   409
#define	RT_IDX_MCAST_MATCH	BIT_2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   410
#define	RT_IDX_MCAST_REG_MATCH	BIT_3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   411
#define	RT_IDX_MCAST_HASH_MATCH	BIT_4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   412
#define	RT_IDX_FC_MACH		BIT_5
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   413
#define	RT_IDX_ETH_FCOE		BIT_6
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   414
#define	RT_IDX_CAM_HIT		BIT_7
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   415
#define	RT_IDX_CAM_BIT0		BIT_8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   416
#define	RT_IDX_CAM_BIT1		BIT_9
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   417
#define	RT_IDX_VLAN_TAG		BIT_10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   418
#define	RT_IDX_VLAN_MATCH	BIT_11
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   419
#define	RT_IDX_VLAN_FILTER	BIT_12
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   420
#define	RT_IDX_ETH_SKIP1	BIT_13
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   421
#define	RT_IDX_ETH_SKIP2	BIT_14
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   422
#define	RT_IDX_BCAST_MCAST_MATCH	BIT_15
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   423
#define	RT_IDX_802_3		BIT_16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   424
#define	RT_IDX_LLDP		BIT_17
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   425
#define	RT_IDX_UNUSED018	BIT_18
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   426
#define	RT_IDX_UNUSED019	BIT_19
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   427
#define	RT_IDX_UNUSED20		BIT_20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   428
#define	RT_IDX_UNUSED21		BIT_21
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   429
#define	RT_IDX_ERR		BIT_22
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   430
#define	RT_IDX_VALID		BIT_23
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   431
#define	RT_IDX_TU_CSUM_ERR	BIT_24
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   432
#define	RT_IDX_IP_CSUM_ERR	BIT_25
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   433
#define	RT_IDX_MAC_ERR		BIT_26
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   434
#define	RT_IDX_RSS_TCP6		BIT_27
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   435
#define	RT_IDX_RSS_TCP4		BIT_28
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   436
#define	RT_IDX_RSS_IPV6		BIT_29
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   437
#define	RT_IDX_RSS_IPV4		BIT_30
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   438
#define	RT_IDX_RSS_MATCH	BIT_31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   439
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   440
/* Hierarchy for the NIC Queue Mask */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   441
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   442
	RT_IDX_ALL_ERR_SLOT = 0,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   443
	RT_IDX_MAC_ERR_SLOT = 0,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   444
	RT_IDX_IP_CSUM_ERR_SLOT = 1,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   445
	RT_IDX_TCP_UDP_CSUM_ERR_SLOT = 2,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   446
	RT_IDX_BCAST_SLOT = 3,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   447
	RT_IDX_MCAST_MATCH_SLOT = 4,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   448
	RT_IDX_ALLMULTI_SLOT = 5,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   449
	RT_IDX_UNUSED6_SLOT = 6,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   450
	RT_IDX_UNUSED7_SLOT = 7,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   451
	RT_IDX_RSS_MATCH_SLOT = 8,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   452
	RT_IDX_RSS_IPV4_SLOT = 8,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   453
	RT_IDX_RSS_IPV6_SLOT = 9,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   454
	RT_IDX_RSS_TCP4_SLOT = 10,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   455
	RT_IDX_RSS_TCP6_SLOT = 11,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   456
	RT_IDX_CAM_HIT_SLOT = 12,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   457
	RT_IDX_UNUSED013 = 13,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   458
	RT_IDX_UNUSED014 = 14,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   459
	RT_IDX_PROMISCUOUS_SLOT = 15,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   460
	RT_IDX_MAX_SLOTS = 16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   461
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   462
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   463
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   464
	CAM_OUT_ROUTE_FC = 0,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   465
	CAM_OUT_ROUTE_NIC = 1,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   466
	CAM_OUT_FUNC_SHIFT = 2,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   467
	CAM_OUT_RV = (1 << 4),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   468
	CAM_OUT_SH = (1 << 15),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   469
	CAM_OUT_CQ_ID_SHIFT = 5
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   470
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   471
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   472
/* Reset/Failover Register 0C */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   473
#define	FUNCTION_RESET		0x8000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   474
#define	FUNCTION_RESET_MASK	(FUNCTION_RESET<<16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   475
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   476
/* Function Specific Control Register 0x10 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   477
#define	FSC_MASK	(0x97ffu << 16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   478
#define	FSC_FE		0x8000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   479
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   480
/* Configuration Register 0x28 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   481
#define	LOAD_LCQ	0x40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   482
#define	LOAD_LCQ_MASK	(0x7F40u << 16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   483
#define	LOAD_ICB_ERR	0x20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   484
#define	LOAD_LRQ	0x01
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   485
#define	LOAD_LRQ_MASK	(0x7F01u << 16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   486
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   487
#define	FN0_NET	0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   488
#define	FN1_NET	1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   489
#define	FN0_FC	2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   490
#define	FN1_FC	3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   491
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   492
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   493
 * Semaphore Register (SEM) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   494
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   495
#define	SEM_CLEAR		0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   496
#define	SEM_SET			1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   497
#define	SEM_FORCE		3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   498
#define	SEM_XGMAC0_SHIFT	0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   499
#define	SEM_XGMAC1_SHIFT	2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   500
#define	SEM_ICB_SHIFT		4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   501
#define	SEM_MAC_ADDR_SHIFT	6
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   502
#define	SEM_FLASH_SHIFT		8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   503
#define	SEM_PROBE_SHIFT		10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   504
#define	SEM_RT_IDX_SHIFT	12
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   505
#define	SEM_PROC_REG_SHIFT	14
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   506
#define	SEM_XGMAC0_MASK		0x00030000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   507
#define	SEM_XGMAC1_MASK		0x000c0000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   508
#define	SEM_ICB_MASK		0x00300000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   509
#define	SEM_MAC_ADDR_MASK	0x00c00000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   510
#define	SEM_FLASH_MASK		0x03000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   511
#define	SEM_PROBE_MASK		0x0c000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   512
#define	SEM_RT_IDX_MASK		0x30000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   513
#define	SEM_PROC_REG_MASK	0xc0000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   514
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   515
/* System Register 0x08 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   516
#define	SYSTEM_EFE_FAE	0x3u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   517
#define	SYSTEM_EFE_FAE_MASK	(SYSTEM_EFE_FAE<<16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   518
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   519
/* Interrupt Status Register-1		0x3C */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   520
#define	CQ_0_NOT_EMPTY			BIT_0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   521
#define	CQ_1_NOT_EMPTY			BIT_1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   522
#define	CQ_2_NOT_EMPTY			BIT_2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   523
#define	CQ_3_NOT_EMPTY			BIT_3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   524
#define	CQ_4_NOT_EMPTY			BIT_4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   525
#define	CQ_5_NOT_EMPTY			BIT_5
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   526
#define	CQ_6_NOT_EMPTY			BIT_6
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   527
#define	CQ_7_NOT_EMPTY			BIT_7
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   528
#define	CQ_8_NOT_EMPTY			BIT_8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   529
#define	CQ_9_NOT_EMPTY			BIT_9
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   530
#define	CQ_10_NOT_EMPTY			BIT_10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   531
#define	CQ_11_NOT_EMPTY			BIT_11
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   532
#define	CQ_12_NOT_EMPTY			BIT_12
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   533
#define	CQ_13_NOT_EMPTY			BIT_13
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   534
#define	CQ_14_NOT_EMPTY			BIT_14
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   535
#define	CQ_15_NOT_EMPTY			BIT_15
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   536
#define	CQ_16_NOT_EMPTY			BIT_16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   537
/* Processor Address Register 0x00 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   538
#define	PROCESSOR_ADDRESS_RDY	(0x8000u<<16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   539
#define	PROCESSOR_ADDRESS_READ	(0x4000u<<16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   540
/* Host Command/Status Register 0x14 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   541
#define	HOST_CMD_SET_RISC_RESET			0x10000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   542
#define	HOST_CMD_CLEAR_RISC_RESET		0x20000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   543
#define	HOST_CMD_SET_RISC_PAUSE			0x30000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   544
#define	HOST_CMD_RELEASE_RISC_PAUSE		0x40000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   545
#define	HOST_CMD_SET_RISC_INTR			0x50000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   546
#define	HOST_CMD_CLEAR_RISC_INTR		0x60000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   547
#define	HOST_CMD_SET_PARITY_ENABLE		0x70000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   548
#define	HOST_CMD_FORCE_BAD_PARITY		0x80000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   549
#define	HOST_CMD_RELEASE_BAD_PARITY		0x90000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   550
#define	HOST_CMD_CLEAR_RISC_TO_HOST_INTR	0xA0000000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   551
#define	HOST_TO_MPI_INTR_NOT_DONE		0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   552
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   553
#define	RISC_RESET			BIT_8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   554
#define	RISC_PAUSED			BIT_10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   555
/* Semaphor Register 0x64 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   556
#define	QL_SEM_BITS_BASE_CODE		0x1u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   557
#define	QL_PORT0_XGMAC_SEM_BITS		(QL_SEM_BITS_BASE_CODE)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   558
#define	QL_PORT1_XGMAC_SEM_BITS		(QL_SEM_BITS_BASE_CODE << 2)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   559
#define	QL_ICB_ACCESS_ADDRESS_SEM_BITS	(QL_SEM_BITS_BASE_CODE << 4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   560
#define	QL_MAC_PROTOCOL_SEM_BITS	(QL_SEM_BITS_BASE_CODE << 6)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   561
#define	QL_FLASH_SEM_BITS		(QL_SEM_BITS_BASE_CODE << 8)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   562
#define	QL_PROBE_MUX_SEM_BITS		(QL_SEM_BITS_BASE_CODE << 10)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   563
#define	QL_ROUTING_INDEX_SEM_BITS	(QL_SEM_BITS_BASE_CODE << 12)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   564
#define	QL_PROCESSOR_SEM_BITS		(QL_SEM_BITS_BASE_CODE << 14)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   565
#define	QL_NIC_RECV_CONFIG_SEM_BITS	(QL_SEM_BITS_BASE_CODE << 14)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   566
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   567
#define	QL_SEM_MASK_BASE_CODE		0x30000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   568
#define	QL_PORT0_XGMAC_SEM_MASK		(QL_SEM_MASK_BASE_CODE)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   569
#define	QL_PORT1_XGMAC_SEM_MASK		(QL_SEM_MASK_BASE_CODE << 2)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   570
#define	QL_ICB_ACCESS_ADDRESS_SEM_MASK	(QL_SEM_MASK_BASE_CODE << 4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   571
#define	QL_MAC_PROTOCOL_SEM_MASK	(QL_SEM_MASK_BASE_CODE << 6)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   572
#define	QL_FLASH_SEM_MASK		(QL_SEM_MASK_BASE_CODE << 8)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   573
#define	QL_PROBE_MUX_SEM_MASK		(QL_SEM_MASK_BASE_CODE << 10)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   574
#define	QL_ROUTING_INDEX_SEM_MASK	(QL_SEM_MASK_BASE_CODE << 12)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   575
#define	QL_PROCESSOR_SEM_MASK		(QL_SEM_MASK_BASE_CODE << 14)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   576
#define	QL_NIC_RECV_CONFIG_SEM_MASK	(QL_SEM_MASK_BASE_CODE << 14)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   577
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   578
/* XGMAC Address Register 0x78 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   579
#define	XGMAC_ADDRESS_RDY		(0x8000u<<16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   580
#define	XGMAC_ADDRESS_READ_TRANSACT	(0x4000u<<16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   581
#define	XGMAC_ADDRESS_ACCESS_ERROR	(0x2000u<<16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   582
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   583
/* XGMAC Register Set */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   584
#define	REG_XGMAC_GLOBAL_CONFIGURATION	0x108
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   585
#define	GLOBAL_CONFIG_JUMBO_MODE	0x40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   586
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   587
#define	REG_XGMAC_MAC_TX_CONFIGURATION	0x10C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   588
#define	XGMAC_MAC_TX_ENABLE		0x02
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   589
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   590
#define	REG_XGMAC_MAC_RX_CONFIGURATION	0x110
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   591
#define	XGMAC_MAC_RX_ENABLE		0x02
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   592
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   593
#define	REG_XGMAC_FLOW_CONTROL		0x11C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   594
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   595
#define	REG_XGMAC_MAC_TX_PARAM		0x134
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   596
#define	REG_XGMAC_MAC_RX_PARAM		0x138
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   597
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   598
#define	REG_XGMAC_MAC_TX_PKTS		0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   599
#define	REG_XGMAC_MAC_TX_OCTETS		0x208
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   600
#define	REG_XGMAC_MAC_TX_MULTCAST_PKTS	0x210
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   601
#define	REG_XGMAC_MAC_TX_BROADCAST_PKTS	0x218
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   602
#define	REG_XGMAC_MAC_TX_PAUSE_PKTS	0x230
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   603
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   604
#define	REG_XGMAC_MAC_RX_OCTETS		0x300
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   605
#define	REG_XGMAC_MAC_RX_OCTETS_OK	0x308
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   606
#define	REG_XGMAC_MAC_RX_PKTS		0x310
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   607
#define	REG_XGMAC_MAC_RX_PKTS_OK	0x318
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   608
#define	REG_XGMAC_MAC_RX_BROADCAST_PKTS	0x320
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   609
#define	REG_XGMAC_MAC_RX_MULTCAST_PKTS	0x328
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   610
#define	REG_XGMAC_MAC_RX_JABBER_PKTS	0x348
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   611
#define	REG_XGMAC_MAC_FCS_ERR		0x360
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   612
#define	REG_XGMAC_MAC_ALIGN_ERR		0x368
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   613
#define	REG_XGMAC_MAC_RX_SYM_ERR	0x370
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   614
#define	REG_XGMAC_MAC_RX_INT_ERR	0x378
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   615
#define	REG_XGMAC_MAC_RX_PAUSE_PKTS	0x388
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   616
#define	REG_XGMAC_MAC_PHY_ADDR		0x430
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   617
#define	REG_XGMAC_MAC_RX_FIFO_DROPS	0x5B8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   618
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   619
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   620
/* MAC Protocol Address Index Register Set 0xA8 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   621
#define	MAC_PROTOCOL_ADDRESS_INDEX_MW	(0x8000u<<16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   622
#define	MAC_PROTOCOL_ADDRESS_ENABLE	(1 << 27)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   623
#define	MAC_PROTOCOL_TYPE_CAM_MAC	(0x0)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   624
#define	MAC_PROTOCOL_TYPE_MULTICAST	(0x10000u)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   625
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   626
/* NIC Receive Configuration Register 0xD4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   627
#define	RECV_CONFIG_DEFAULT_Q_MASK	(0x7F000000u)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   628
#define	RECV_CONFIG_VTAG_REMOVAL_MASK	(0x80000u)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   629
#define	RECV_CONFIG_VTAG_RV		0x08
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   630
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   631
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   632
 *  10G MAC Address  Register (XGMAC_ADDR) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   633
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   634
#define	XGMAC_ADDR_RDY	(1 << 31)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   635
#define	XGMAC_ADDR_R	(1 << 30)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   636
#define	XGMAC_ADDR_XME	(1 << 29)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   637
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   638
#define	PAUSE_SRC_LO			0x00000100
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   639
#define	PAUSE_SRC_HI			0x00000104
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   640
#define	GLOBAL_CFG			0x00000108
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   641
#define	GLOBAL_CFG_RESET		(1 << 0)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   642
#define	GLOBAL_CFG_JUMBO		(1 << 6)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   643
#define	GLOBAL_CFG_TX_STAT_EN		(1 << 10)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   644
#define	GLOBAL_CFG_RX_STAT_EN		(1 << 11)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   645
#define	TX_CFG				0x0000010c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   646
#define	TX_CFG_RESET			(1 << 0)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   647
#define	TX_CFG_EN			(1 << 1)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   648
#define	TX_CFG_PREAM			(1 << 2)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   649
#define	RX_CFG				0x00000110
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   650
#define	RX_CFG_RESET			(1 << 0)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   651
#define	RX_CFG_EN			(1 << 1)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   652
#define	RX_CFG_PREAM			(1 << 2)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   653
#define	FLOW_CTL			0x0000011c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   654
#define	PAUSE_OPCODE			0x00000120
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   655
#define	PAUSE_TIMER			0x00000124
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   656
#define	PAUSE_FRM_DEST_LO		0x00000128
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   657
#define	PAUSE_FRM_DEST_HI		0x0000012c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   658
#define	MAC_TX_PARAMS			0x00000134
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   659
#define	MAC_TX_PARAMS_JUMBO		(1 << 31)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   660
#define	MAC_TX_PARAMS_SIZE_SHIFT	16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   661
#define	MAC_RX_PARAMS			0x00000138
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   662
#define	MAC_SYS_INT			0x00000144
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   663
#define	MAC_SYS_INT_MASK		0x00000148
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   664
#define	MAC_MGMT_INT			0x0000014c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   665
#define	MAC_MGMT_IN_MASK		0x00000150
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   666
#define	EXT_ARB_MODE			0x000001fc
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   667
#define	TX_PKTS				0x00000200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   668
#define	TX_PKTS_LO			0x00000204
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   669
#define	TX_BYTES			0x00000208
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   670
#define	TX_BYTES_LO			0x0000020C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   671
#define	TX_MCAST_PKTS			0x00000210
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   672
#define	TX_MCAST_PKTS_LO		0x00000214
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   673
#define	TX_BCAST_PKTS			0x00000218
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   674
#define	TX_BCAST_PKTS_LO		0x0000021C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   675
#define	TX_UCAST_PKTS			0x00000220
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   676
#define	TX_UCAST_PKTS_LO		0x00000224
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   677
#define	TX_CTL_PKTS			0x00000228
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   678
#define	TX_CTL_PKTS_LO			0x0000022c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   679
#define	TX_PAUSE_PKTS			0x00000230
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   680
#define	TX_PAUSE_PKTS_LO		0x00000234
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   681
#define	TX_64_PKT			0x00000238
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   682
#define	TX_64_PKT_LO			0x0000023c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   683
#define	TX_65_TO_127_PKT		0x00000240
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   684
#define	TX_65_TO_127_PKT_LO		0x00000244
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   685
#define	TX_128_TO_255_PKT		0x00000248
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   686
#define	TX_128_TO_255_PKT_LO		0x0000024c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   687
#define	TX_256_511_PKT			0x00000250
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   688
#define	TX_256_511_PKT_LO		0x00000254
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   689
#define	TX_512_TO_1023_PKT		0x00000258
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   690
#define	TX_512_TO_1023_PKT_LO		0x0000025c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   691
#define	TX_1024_TO_1518_PKT		0x00000260
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   692
#define	TX_1024_TO_1518_PKT_LO		0x00000264
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   693
#define	TX_1519_TO_MAX_PKT		0x00000268
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   694
#define	TX_1519_TO_MAX_PKT_LO		0x0000026c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   695
#define	TX_UNDERSIZE_PKT		0x00000270
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   696
#define	TX_UNDERSIZE_PKT_LO		0x00000274
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   697
#define	TX_OVERSIZE_PKT			0x00000278
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   698
#define	TX_OVERSIZE_PKT_LO		0x0000027c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   699
#define	RX_HALF_FULL_DET		0x000002a0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   700
#define	TX_HALF_FULL_DET_LO		0x000002a4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   701
#define	RX_OVERFLOW_DET			0x000002a8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   702
#define	TX_OVERFLOW_DET_LO		0x000002ac
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   703
#define	RX_HALF_FULL_MASK		0x000002b0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   704
#define	TX_HALF_FULL_MASK_LO		0x000002b4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   705
#define	RX_OVERFLOW_MASK		0x000002b8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   706
#define	TX_OVERFLOW_MASK_LO		0x000002bc
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   707
#define	STAT_CNT_CTL			0x000002c0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   708
#define	STAT_CNT_CTL_CLEAR_TX		(1 << 0)	/* Control */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   709
#define	STAT_CNT_CTL_CLEAR_RX		(1 << 1)	/* Control */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   710
#define	AUX_RX_HALF_FULL_DET		0x000002d0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   711
#define	AUX_TX_HALF_FULL_DET		0x000002d4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   712
#define	AUX_RX_OVERFLOW_DET		0x000002d8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   713
#define	AUX_TX_OVERFLOW_DET		0x000002dc
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   714
#define	AUX_RX_HALF_FULL_MASK		0x000002f0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   715
#define	AUX_TX_HALF_FULL_MASK		0x000002f4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   716
#define	AUX_RX_OVERFLOW_MASK		0x000002f8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   717
#define	AUX_TX_OVERFLOW_MASK		0x000002fc
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   718
#define	RX_BYTES			0x00000300
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   719
#define	RX_BYTES_LO			0x00000304
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   720
#define	RX_BYTES_OK			0x00000308
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   721
#define	RX_BYTES_OK_LO			0x0000030c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   722
#define	RX_PKTS				0x00000310
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   723
#define	RX_PKTS_LO			0x00000314
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   724
#define	RX_PKTS_OK			0x00000318
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   725
#define	RX_PKTS_OK_LO			0x0000031c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   726
#define	RX_BCAST_PKTS			0x00000320
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   727
#define	RX_BCAST_PKTS_LO		0x00000324
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   728
#define	RX_MCAST_PKTS			0x00000328
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   729
#define	RX_MCAST_PKTS_LO		0x0000032c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   730
#define	RX_UCAST_PKTS			0x00000330
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   731
#define	RX_UCAST_PKTS_LO		0x00000334
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   732
#define	RX_UNDERSIZE_PKTS		0x00000338
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   733
#define	RX_UNDERSIZE_PKTS_LO		0x0000033c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   734
#define	RX_OVERSIZE_PKTS		0x00000340
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   735
#define	RX_OVERSIZE_PKTS_LO		0x00000344
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   736
#define	RX_JABBER_PKTS			0x00000348
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   737
#define	RX_JABBER_PKTS_LO		0x0000034c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   738
#define	RX_UNDERSIZE_FCERR_PKTS		0x00000350
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   739
#define	RX_UNDERSIZE_FCERR_PKTS_LO	0x00000354
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   740
#define	RX_DROP_EVENTS			0x00000358
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   741
#define	RX_DROP_EVENTS_LO		0x0000035c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   742
#define	RX_FCERR_PKTS			0x00000360
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   743
#define	RX_FCERR_PKTS_LO		0x00000364
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   744
#define	RX_ALIGN_ERR			0x00000368
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   745
#define	RX_ALIGN_ERR_LO			0x0000036c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   746
#define	RX_SYMBOL_ERR			0x00000370
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   747
#define	RX_SYMBOL_ERR_LO		0x00000374
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   748
#define	RX_MAC_ERR			0x00000378
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   749
#define	RX_MAC_ERR_LO			0x0000037c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   750
#define	RX_CTL_PKTS			0x00000380
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   751
#define	RX_CTL_PKTS_LO			0x00000384
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   752
#define	RX_PAUSE_PKTS			0x00000388
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   753
#define	RX_PAUSE_PKTS_LO		0x0000038c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   754
#define	RX_64_PKTS			0x00000390
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   755
#define	RX_64_PKTS_LO			0x00000394
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   756
#define	RX_65_TO_127_PKTS		0x00000398
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   757
#define	RX_65_TO_127_PKTS_LO		0x0000039c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   758
#define	RX_128_255_PKTS			0x000003a0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   759
#define	RX_128_255_PKTS_LO		0x000003a4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   760
#define	RX_256_511_PKTS			0x000003a8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   761
#define	RX_256_511_PKTS_LO		0x000003ac
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   762
#define	RX_512_TO_1023_PKTS		0x000003b0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   763
#define	RX_512_TO_1023_PKTS_LO		0x000003b4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   764
#define	RX_1024_TO_1518_PKTS		0x000003b8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   765
#define	RX_1024_TO_1518_PKTS_LO		0x000003bc
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   766
#define	RX_1519_TO_MAX_PKTS		0x000003c0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   767
#define	RX_1519_TO_MAX_PKTS_LO		0x000003c4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   768
#define	RX_LEN_ERR_PKTS			0x000003c8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   769
#define	RX_LEN_ERR_PKTS_LO		0x000003cc
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   770
#define	MDIO_TX_DATA			0x00000400
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   771
#define	MDIO_RX_DATA			0x00000410
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   772
#define	MDIO_CMD			0x00000420
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   773
#define	MDIO_PHY_ADDR			0x00000430
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   774
#define	MDIO_PORT			0x00000440
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   775
#define	MDIO_STATUS			0x00000450
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   776
#define	TX_CBFC_PAUSE_FRAMES0		0x00000500
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   777
#define	TX_CBFC_PAUSE_FRAMES0_LO	0x00000504
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   778
#define	TX_CBFC_PAUSE_FRAMES1		0x00000508
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   779
#define	TX_CBFC_PAUSE_FRAMES1_LO	0x0000050C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   780
#define	TX_CBFC_PAUSE_FRAMES2		0x00000510
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   781
#define	TX_CBFC_PAUSE_FRAMES2_LO	0x00000514
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   782
#define	TX_CBFC_PAUSE_FRAMES3		0x00000518
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   783
#define	TX_CBFC_PAUSE_FRAMES3_LO	0x0000051C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   784
#define	TX_CBFC_PAUSE_FRAMES4		0x00000520
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   785
#define	TX_CBFC_PAUSE_FRAMES4_LO	0x00000524
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   786
#define	TX_CBFC_PAUSE_FRAMES5		0x00000528
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   787
#define	TX_CBFC_PAUSE_FRAMES5_LO	0x0000052C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   788
#define	TX_CBFC_PAUSE_FRAMES6		0x00000530
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   789
#define	TX_CBFC_PAUSE_FRAMES6_LO	0x00000534
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   790
#define	TX_CBFC_PAUSE_FRAMES7		0x00000538
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   791
#define	TX_CBFC_PAUSE_FRAMES7_LO	0x0000053C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   792
#define	TX_FCOE_PKTS			0x00000540
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   793
#define	TX_FCOE_PKTS_LO			0x00000544
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   794
#define	TX_MGMT_PKTS			0x00000548
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   795
#define	TX_MGMT_PKTS_LO			0x0000054C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   796
#define	RX_CBFC_PAUSE_FRAMES0		0x00000568
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   797
#define	RX_CBFC_PAUSE_FRAMES0_LO	0x0000056C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   798
#define	RX_CBFC_PAUSE_FRAMES1		0x00000570
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   799
#define	RX_CBFC_PAUSE_FRAMES1_LO	0x00000574
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   800
#define	RX_CBFC_PAUSE_FRAMES2		0x00000578
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   801
#define	RX_CBFC_PAUSE_FRAMES2_LO	0x0000057C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   802
#define	RX_CBFC_PAUSE_FRAMES3		0x00000580
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   803
#define	RX_CBFC_PAUSE_FRAMES3_LO	0x00000584
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   804
#define	RX_CBFC_PAUSE_FRAMES4		0x00000588
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   805
#define	RX_CBFC_PAUSE_FRAMES4_LO	0x0000058C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   806
#define	RX_CBFC_PAUSE_FRAMES5		0x00000590
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   807
#define	RX_CBFC_PAUSE_FRAMES5_LO	0x00000594
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   808
#define	RX_CBFC_PAUSE_FRAMES6		0x00000598
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   809
#define	RX_CBFC_PAUSE_FRAMES6_LO	0x0000059C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   810
#define	RX_CBFC_PAUSE_FRAMES7		0x000005A0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   811
#define	RX_CBFC_PAUSE_FRAMES7_LO	0x000005A4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   812
#define	RX_FCOE_PKTS			0x000005A8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   813
#define	RX_FCOE_PKTS_LO			0x000005AC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   814
#define	RX_MGMT_PKTS			0x000005B0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   815
#define	RX_MGMT_PKTS_LO			0x000005B4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   816
#define	RX_NIC_FIFO_DROP		0x000005B8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   817
#define	RX_NIC_FIFO_DROP_LO		0x000005BC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   818
#define	RX_FCOE_FIFO_DROP		0x000005C0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   819
#define	RX_FCOE_FIFO_DROP_LO		0x000005C4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   820
#define	RX_MGMT_FIFO_DROP		0x000005C8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   821
#define	RX_MGMT_FIFO_DROP_LO		0x000005CC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   822
#define	RX_PKTS_PRIORITY0		0x00000600
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   823
#define	RX_PKTS_PRIORITY0_LO		0x00000604
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   824
#define	RX_PKTS_PRIORITY1		0x00000608
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   825
#define	RX_PKTS_PRIORITY1_LO		0x0000060C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   826
#define	RX_PKTS_PRIORITY2		0x00000610
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   827
#define	RX_PKTS_PRIORITY2_LO		0x00000614
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   828
#define	RX_PKTS_PRIORITY3		0x00000618
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   829
#define	RX_PKTS_PRIORITY3_LO		0x0000061C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   830
#define	RX_PKTS_PRIORITY4		0x00000620
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   831
#define	RX_PKTS_PRIORITY4_LO		0x00000624
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   832
#define	RX_PKTS_PRIORITY5		0x00000628
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   833
#define	RX_PKTS_PRIORITY5_LO		0x0000062C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   834
#define	RX_PKTS_PRIORITY6		0x00000630
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   835
#define	RX_PKTS_PRIORITY6_LO		0x00000634
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   836
#define	RX_PKTS_PRIORITY7		0x00000638
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   837
#define	RX_PKTS_PRIORITY7_LO		0x0000063C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   838
#define	RX_OCTETS_PRIORITY0		0x00000640
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   839
#define	RX_OCTETS_PRIORITY0_LO		0x00000644
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   840
#define	RX_OCTETS_PRIORITY1		0x00000648
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   841
#define	RX_OCTETS_PRIORITY1_LO		0x0000064C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   842
#define	RX_OCTETS_PRIORITY2		0x00000650
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   843
#define	RX_OCTETS_PRIORITY2_LO		0x00000654
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   844
#define	RX_OCTETS_PRIORITY3		0x00000658
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   845
#define	RX_OCTETS_PRIORITY3_LO		0x0000065C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   846
#define	RX_OCTETS_PRIORITY4		0x00000660
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   847
#define	RX_OCTETS_PRIORITY4_LO		0x00000664
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   848
#define	RX_OCTETS_PRIORITY5		0x00000668
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   849
#define	RX_OCTETS_PRIORITY5_LO		0x0000066C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   850
#define	RX_OCTETS_PRIORITY6		0x00000670
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   851
#define	RX_OCTETS_PRIORITY6_LO		0x00000674
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   852
#define	RX_OCTETS_PRIORITY7		0x00000678
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   853
#define	RX_OCTETS_PRIORITY7_LO		0x0000067C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   854
#define	TX_PKTS_PRIORITY0		0x00000680
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   855
#define	TX_PKTS_PRIORITY0_LO		0x00000684
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   856
#define	TX_PKTS_PRIORITY1		0x00000688
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   857
#define	TX_PKTS_PRIORITY1_LO		0x0000068C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   858
#define	TX_PKTS_PRIORITY2		0x00000690
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   859
#define	TX_PKTS_PRIORITY2_LO		0x00000694
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   860
#define	TX_PKTS_PRIORITY3		0x00000698
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   861
#define	TX_PKTS_PRIORITY3_LO		0x0000069C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   862
#define	TX_PKTS_PRIORITY4		0x000006A0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   863
#define	TX_PKTS_PRIORITY4_LO		0x000006A4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   864
#define	TX_PKTS_PRIORITY5		0x000006A8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   865
#define	TX_PKTS_PRIORITY5_LO		0x000006AC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   866
#define	TX_PKTS_PRIORITY6		0x000006B0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   867
#define	TX_PKTS_PRIORITY6_LO		0x000006B4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   868
#define	TX_PKTS_PRIORITY7		0x000006B8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   869
#define	TX_PKTS_PRIORITY7_LO		0x000006BC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   870
#define	TX_OCTETS_PRIORITY0		0x000006C0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   871
#define	TX_OCTETS_PRIORITY0_LO		0x000006C4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   872
#define	TX_OCTETS_PRIORITY1		0x000006C8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   873
#define	TX_OCTETS_PRIORITY1_LO		0x000006CC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   874
#define	TX_OCTETS_PRIORITY2		0x000006D0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   875
#define	TX_OCTETS_PRIORITY2_LO		0x000006D4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   876
#define	TX_OCTETS_PRIORITY3		0x000006D8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   877
#define	TX_OCTETS_PRIORITY3_LO		0x000006DC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   878
#define	TX_OCTETS_PRIORITY4		0x000006E0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   879
#define	TX_OCTETS_PRIORITY4_LO		0x000006E4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   880
#define	TX_OCTETS_PRIORITY5		0x000006E8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   881
#define	TX_OCTETS_PRIORITY5_LO		0x000006EC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   882
#define	TX_OCTETS_PRIORITY6		0x000006F0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   883
#define	TX_OCTETS_PRIORITY6_LO		0x000006F4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   884
#define	TX_OCTETS_PRIORITY7		0x000006F8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   885
#define	TX_OCTETS_PRIORITY7_LO		0x000006FC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   886
#define	RX_DISCARD_PRIORITY0		0x00000700
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   887
#define	RX_DISCARD_PRIORITY0_LO		0x00000704
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   888
#define	RX_DISCARD_PRIORITY1		0x00000708
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   889
#define	RX_DISCARD_PRIORITY1_LO		0x0000070C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   890
#define	RX_DISCARD_PRIORITY2		0x00000710
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   891
#define	RX_DISCARD_PRIORITY2_LO		0x00000714
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   892
#define	RX_DISCARD_PRIORITY3		0x00000718
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   893
#define	RX_DISCARD_PRIORITY3_LO		0x0000071C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   894
#define	RX_DISCARD_PRIORITY4		0x00000720
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   895
#define	RX_DISCARD_PRIORITY4_LO		0x00000724
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   896
#define	RX_DISCARD_PRIORITY5		0x00000728
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   897
#define	RX_DISCARD_PRIORITY5_LO		0x0000072C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   898
#define	RX_DISCARD_PRIORITY6		0x00000730
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   899
#define	RX_DISCARD_PRIORITY6_LO		0x00000734
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   900
#define	RX_DISCARD_PRIORITY7		0x00000738
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   901
#define	RX_DISCARD_PRIORITY7_LO		0x0000073C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   902
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   903
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   904
#define	CQ0_ID				0x0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   905
#define	NIC_CORE			0x1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   906
/* Routing Index Register 0xE4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   907
#define	ROUTING_INDEX_MW			BIT_31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   908
#define	ROUTING_INDEX_DEFAULT_ENABLE_MASK	(0x8320000u)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   909
#define	ROUTING_INDEX_DEFAULT_DISABLE_MASK	(0x0320000u)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   910
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   911
/* Routing Data Register 0xE8 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   912
#define	ROUTE_AS_CAM_HIT		0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   913
#define	ROUTE_AS_BCAST_MCAST_MATCH	0x8000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   914
#define	ROUTE_AS_VALID_PKT		0x800000u	/* promiscuous mode? */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   915
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   916
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   917
	ROUTING_MASK_INDEX_CAM_HIT,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   918
	ROUTING_MASK_INDEX_BCAST_MCAST_MATCH,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   919
	ROUTING_MASK_INDEX_VALID_PKT,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   920
	ROUTING_MASK_INDEX_TOTAL
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   921
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   922
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   923
#define	ROUTING_MASK_INDEX_MAX	16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   924
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   925
 * General definitions...
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   926
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   927
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   928
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   929
 * Below are a number compiler switches for controlling driver behavior.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   930
 * Some are not supported under certain conditions and are notated as such.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   931
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   932
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   933
/* MTU & Frame Size stuff */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   934
#define	JUMBO_MTU		9000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   935
#define	NORMAL_FRAME_SIZE	2500	/* ETHERMTU,1500 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   936
#define	JUMBO_FRAME_SIZE	9600
12073
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   937
#define	LRG_BUF_NORMAL_SIZE	NORMAL_FRAME_SIZE
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   938
#define	LRG_BUF_JUMBO_SIZE	JUMBO_FRAME_SIZE
10997
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   939
#define	VLAN_ID_LEN		2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   940
#define	VLAN_HEADER_LEN		sizeof (struct ether_vlan_header) /* 18 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   941
#define	ETHER_HEADER_LEN	sizeof (struct ether_header)	/* 14 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   942
12073
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   943
#define	NUM_TX_RING_ENTRIES	(1024)
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   944
#define	NUM_RX_RING_ENTRIES	(1024)
10997
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   945
12073
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   946
#define	NUM_SMALL_BUFFERS	(1024)
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   947
#define	NUM_LARGE_BUFFERS	(1024)
10997
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   948
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   949
#define	RX_TX_RING_SHADOW_SPACE	2	/* 1st one is wqicb and 2nd for cqicb */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   950
#define	BUF_Q_PTR_SPACE		((((NUM_SMALL_BUFFERS * sizeof (uint64_t))  \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   951
				    / VM_PAGE_SIZE) + 1) + \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   952
				    (((NUM_LARGE_BUFFERS * sizeof (uint64_t))  \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   953
				    / VM_PAGE_SIZE) + 1))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   954
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   955
#define	MAX_CQ				128
12073
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   956
#define	DFLT_RX_COALESCE_WAIT		90	/* usec wait for coalescing */
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   957
#define	DFLT_RX_INTER_FRAME_WAIT	30  	/* max interframe-wait for */
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   958
						/* coalescing */
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   959
#define	DFLT_TX_COALESCE_WAIT		90	/* usec wait for coalescing */
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   960
#define	DFLT_TX_INTER_FRAME_WAIT	30	/* max interframe-wait for */
10997
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   961
						/* coalescing */
12073
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   962
#define	DFLT_RX_COALESCE_WAIT_JUMBO	40	/* usec wait for coalescing */
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   963
#define	DFLT_RX_INTER_FRAME_WAIT_JUMBO	10  	/* max interframe-wait for */
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   964
						/* coalescing */
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   965
#define	DFLT_TX_COALESCE_WAIT_JUMBO	40	/* usec wait for coalescing */
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
   966
#define	DFLT_TX_INTER_FRAME_WAIT_JUMBO	10	/* max interframe-wait for */
10997
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   967
						/* coalescing */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   968
#define	DFLT_PAYLOAD_COPY_THRESH	6	/* must be at least 6 usec */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   969
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   970
#define	UDELAY_COUNT			3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   971
#define	UDELAY_DELAY			10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   972
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   973
#define	MAX_RX_RINGS			128
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   974
#define	MAX_TX_RINGS			16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   975
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   976
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   977
 * Large & Small Buffers for Receives
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   978
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   979
struct lrg_buf_q_entry {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   980
	uint32_t	addr0_lower;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   981
#define	IAL_LAST_ENTRY	0x00000001
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   982
#define	IAL_CONT_ENTRY	0x00000002
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   983
#define	IAL_FLAG_MASK	0x00000003
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   984
	uint32_t	addr0_upper;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   985
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   986
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   987
struct bufq_addr_element {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   988
	uint32_t	addr_low;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   989
	uint32_t	addr_high;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   990
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   991
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   992
#define	QL_NO_RESET	0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   993
#define	QL_DO_RESET	1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   994
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   995
/* Link must be in one of these states */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   996
enum link_state_t {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   997
	LS_DOWN,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   998
	LS_UP
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
   999
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1001
/* qlge->flags definitions. */
12073
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
  1002
#define	INTERRUPTS_ENABLED	BIT_0
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
  1003
#define	ADAPTER_ERROR		BIT_1
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
  1004
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
  1005
#define	ADAPTER_SUSPENDED	BIT_8
10997
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1006
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1007
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1008
 * ISP PCI Configuration Register Set structure definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1009
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1010
typedef volatile struct
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1011
{
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1012
volatile uint16_t	vendor_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1013
volatile uint16_t	device_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1014
volatile uint16_t	command;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1015
volatile uint16_t	status;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1016
volatile uint8_t	revision;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1017
volatile uint8_t	prog_class;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1018
volatile uint8_t	sub_class;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1019
volatile uint8_t	base_class;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1020
volatile uint8_t	cache_line_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1021
volatile uint8_t	latency_timer;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1022
volatile uint8_t	header_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1023
volatile uint32_t	io_base_address;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1024
volatile uint32_t	pci_cntl_reg_set_mem_base_address_lower;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1025
volatile uint32_t	pci_cntl_reg_set_mem_base_address_upper;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1026
volatile uint32_t	pci_doorbell_mem_base_address_lower;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1027
volatile uint32_t	pci_doorbell_mem_base_address_upper;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1028
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1029
volatile uint16_t	sub_vendor_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1030
volatile uint16_t	sub_device_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1031
volatile uint32_t	expansion_rom;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1032
volatile uint8_t	intr_line;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1033
volatile uint8_t	intr_pin;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1034
volatile uint8_t	min_grant;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1035
volatile uint8_t	max_latency;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1036
volatile uint16_t	pcie_device_control;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1037
volatile uint16_t	link_status;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1038
volatile uint16_t	msi_msg_control;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1039
volatile uint16_t	msi_x_msg_control;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1040
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1041
} pci_cfg_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1042
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1043
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1044
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1045
 *
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1046
 *      Schultz Control Registers Index
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1047
 *
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1048
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1049
#define	REG_PROCESSOR_ADDR		0x00
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1050
#define	REG_PROCESSOR_DATA		0x04
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1051
#define	REG_SYSTEM			0x08
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1052
#define	REG_RESET_FAILOVER		0x0C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1053
#define	REG_FUNCTION_SPECIFIC_CONTROL	0x10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1054
#define	REG_HOST_CMD_STATUS		0x14
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1055
#define	REG_ICB_RID			0x1C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1056
#define	REG_ICB_ACCESS_ADDRESS_LOWER	0x20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1057
#define	REG_ICB_ACCESS_ADDRESS_UPPER	0x24
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1058
#define	REG_CONFIGURATION		0x28
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1059
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1060
#define	INTR_EN_INTR_MASK	0x007f0000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1061
#define	INTR_EN_TYPE_MASK	0x03000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1062
#define	INTR_EN_TYPE_ENABLE	0x00000100
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1063
#define	INTR_EN_TYPE_DISABLE	0x00000200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1064
#define	INTR_EN_TYPE_READ	0x00000300
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1065
#define	INTR_EN_IHD		0x00002000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1066
#define	INTR_EN_IHD_MASK	(INTR_EN_IHD << 16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1067
#define	INTR_EN_EI		0x00004000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1068
#define	INTR_EN_EN		0x00008000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1069
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1070
#define	REG_STATUS				0x30
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1071
#define	REG_INTERRUPT_ENABLE			0x34
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1072
#define	REG_INTERRUPT_MASK			0x38
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1073
#define	REG_INTERRUPT_STATUS_1			0x3C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1074
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1075
#define	REG_ERROR_STATUS			0x54
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1076
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1077
#define	REG_SEMAPHORE				0x64
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1078
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1079
#define	REG_XGMAC_ADDRESS			0x78
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1080
#define	REG_XGMAC_DATA				0x7C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1081
#define	REG_NIC_ENHANCED_TX_SCHEDULE		0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1082
#define	REG_CNA_ENHANCED_TX_SCHEDULE		0x84
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1083
#define	REG_FLASH_ADDRESS			0x88
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1084
#define	REG_FLASH_DATA				0x8C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1085
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1086
#define	REG_STOP_CQ_PROCESSING			0x90
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1087
#define	REG_PAGE_TABLE_RID			0x94
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1088
#define	REG_WQ_PAGE_TABLE_BASE_ADDR_LOWER	0x98
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1089
#define	REG_WQ_PAGE_TABLE_BASE_ADDR_UPPER	0x9C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1090
#define	REG_CQ_PAGE_TABLE_BASE_ADDR_LOWER	0xA0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1091
#define	REG_CQ_PAGE_TABLE_BASE_ADDR_UPPER	0xA4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1092
#define	REG_MAC_PROTOCOL_ADDRESS_INDEX		0xA8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1093
#define	REG_MAC_PROTOCOL_DATA			0xAC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1094
#define	REG_SPLIT_HEADER			0xC0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1095
#define	REG_NIC_RECEIVE_CONFIGURATION		0xD4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1096
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1097
#define	REG_MGMT_RCV_CFG			0xE0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1098
#define	REG_ROUTING_INDEX			0xE4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1099
#define	REG_ROUTING_DATA			0xE8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1100
#define	REG_RSVD7				0xEC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1101
#define	REG_XG_SERDES_ADDR			0xF0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1102
#define	REG_XG_SERDES_DATA			0xF4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1103
#define	REG_PRB_MX_ADDR				0xF8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1104
#define	REG_PRB_MX_DATA				0xFC
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1105
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1106
#define	INTR_MASK_PI				0x00000001
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1107
#define	INTR_MASK_HL0				0x00000002
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1108
#define	INTR_MASK_LH0				0x00000004
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1109
#define	INTR_MASK_HL1				0x00000008
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1110
#define	INTR_MASK_LH1				0x00000010
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1111
#define	INTR_MASK_SE				0x00000020
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1112
#define	INTR_MASK_LSC				0x00000040
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1113
#define	INTR_MASK_MC				0x00000080
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1114
#define	INTR_MASK_LINK_IRQS = (INTR_MASK_LSC | INTR_MASK_SE | INTR_MASK_MC)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1115
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1116
/* Interrupt Enable Register 0x34 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1117
#define	INTR_ENABLED		0x8000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1118
#define	GLOBAL_ENABLE_INTR	0x4000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1119
#define	ENABLE_MSI_MULTI_INTR	0x2000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1120
#define	ONE_INTR_MASK		0x3FF0000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1121
#define	ENABLE_INTR		0x0100
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1122
#define	DISABLE_INTR		0x0200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1123
#define	VERIFY_INTR_ENABLED	0x0300
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1124
#define	ISP_ENABLE_INTR(qlge)	ql_put32(qlge, \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1125
				    REG_INTERRUPT_ENABLE,\
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1126
				    (ONE_INTR_MASK | ENABLE_INTR))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1127
#define	ISP_DISABLE_INTR(qlge)	ql_put32(qlge, \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1128
				    REG_INTERRUPT_ENABLE, \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1129
				    (ONE_INTR_MASK | DISABLE_INTR))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1130
#define	ISP_ENABLE_PI_INTR(qlge)	ql_put32(qlge, \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1131
					    REG_INTERRUPT_MASK, (BIT_16|1))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1132
#define	ISP_DISABLE_PI_INTR(qlge)	ql_put32(qlge, \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1133
					    REG_INTERRUPT_MASK, BIT_16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1134
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1135
#define	ISP_ENABLE_GLOBAL_INTRS(qlge) { \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1136
				ql_put32(qlge, REG_INTERRUPT_ENABLE, \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1137
				    (0x40000000u | GLOBAL_ENABLE_INTR)); \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1138
				qlge->flags |= INTERRUPTS_ENABLED; \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1139
				}
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1140
#define	ISP_DISABLE_GLOBAL_INTRS(qlge) { \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1141
				ql_put32(qlge, \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1142
				    REG_INTERRUPT_ENABLE, (0x40000000u)); \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1143
				qlge->flags &= ~INTERRUPTS_ENABLED; \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1144
				}
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1145
#define	REQ_Q_VALID		0x10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1146
#define	RSP_Q_VALID		0x10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1147
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1148
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1149
 * Mailbox Registers
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1150
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1151
#define	MPI_REG				0x1002
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1152
#define	NUM_MAILBOX_REGS		16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1153
#define	FUNC_0_IN_MAILBOX_0_REG_OFFSET	0x1180
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1154
#define	FUNC_0_OUT_MAILBOX_0_REG_OFFSET	0x1190
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1155
#define	FUNC_1_IN_MAILBOX_0_REG_OFFSET	0x1280
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1156
#define	FUNC_1_OUT_MAILBOX_0_REG_OFFSET	0x1290
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1157
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1158
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1159
 * Control Register Set definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1160
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1161
typedef volatile struct
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1162
{
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1163
volatile uint32_t	processor_address;	/* 0x00 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1164
volatile uint32_t	processor_data;		/* 0x04 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1165
volatile uint32_t	system_data;		/* 0x08 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1166
volatile uint32_t	reset_failover;		/* 0x0C */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1167
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1168
volatile uint32_t	function_specific_control;	/* 0x10 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1169
volatile uint32_t	host_command_status;	/* 0x14 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1170
volatile uint32_t	led;			/* 0x18 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1171
volatile uint32_t	icb_rid;		/* 0x1c */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1172
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1173
volatile uint32_t	idb_access_address_low;	/* 0x20 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1174
volatile uint32_t	idb_access_address_high; /* 0x24 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1175
volatile uint32_t	configuration;		/* 0x28 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1176
volatile uint32_t	bios_base;		/* 0x2C */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1177
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1178
volatile uint32_t	status;			/* 0x30 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1179
volatile uint32_t	interrupt_enable;	/* 0x34 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1180
volatile uint32_t	interrupt_mask;		/* 0x38 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1181
volatile uint32_t	interrupt_status_1;	/* 0x3c */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1182
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1183
volatile uint32_t	interrupt_status_2;	/* 0x40 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1184
volatile uint32_t	interrupt_status_3;	/* 0x44 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1185
volatile uint32_t	interrupt_status_4;	/* 0x48 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1186
volatile uint32_t	rev_id;			/* 0x4c */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1187
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1188
volatile uint32_t	force_ecc_error;	/* 0x50 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1189
volatile uint32_t	error_status;		/* 0x54 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1190
volatile uint32_t	internal_ram_debug_address;	/* 0x58 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1191
volatile uint32_t	internal_ram_data;	/* 0x5c */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1192
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1193
volatile uint32_t	correctable_ecc_error;	/* 0x60 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1194
volatile uint32_t	semaphore;		/* 0x64 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1195
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1196
volatile uint32_t	gpio1;			/* 0x68 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1197
volatile uint32_t	gpio2;			/* 0x6c */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1198
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1199
volatile uint32_t	gpio3;			/* 0x70 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1200
volatile uint32_t	reserved1;		/* 0x74 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1201
volatile uint32_t	xgmac_address;		/* 0x78 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1202
volatile uint32_t	xgmac_data;		/* 0x7c */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1203
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1204
volatile uint32_t	nic_enhanced_tx_schedule;	/* 0x80 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1205
volatile uint32_t	cna_enhanced_tx_schedule;	/* 0x84 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1206
volatile uint32_t	flash_address;			/* 0x88 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1207
volatile uint32_t	flash_data;			/* 0x8c */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1208
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1209
volatile uint32_t	stop_cq;			/* 0x90 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1210
volatile uint32_t	page_table_rid;			/* 0x94 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1211
volatile uint32_t	wq_page_table_base_address_lower; /* 0x98 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1212
volatile uint32_t	wq_page_table_base_address_upper; /* 0x9c */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1213
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1214
volatile uint32_t	cq_page_table_base_address_lower; /* 0xA0 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1215
volatile uint32_t	cq_page_table_base_address_upper; /* 0xA4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1216
volatile uint32_t	mac_protocol_address_index;	/* 0xA8 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1217
volatile uint32_t	mac_protocol_data;		/* 0xAc */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1218
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1219
volatile uint32_t	cos_default_cq_reg1;		/* 0xB0 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1220
volatile uint32_t	cos_default_cq_reg2;		/* 0xB4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1221
volatile uint32_t	ethertype_skip_reg1;		/* 0xB8 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1222
volatile uint32_t	ethertype_skip_reg2;		/* 0xBC */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1223
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1224
volatile uint32_t	split_header;			/* 0xC0 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1225
volatile uint32_t	fcoe_pause_threshold;		/* 0xC4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1226
volatile uint32_t	nic_pause_threshold;		/* 0xC8 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1227
volatile uint32_t	fc_ethertype;			/* 0xCC */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1228
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1229
volatile uint32_t	fcoe_recv_configuration;	/* 0xD0 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1230
volatile uint32_t	nic_recv_configuration;		/* 0xD4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1231
volatile uint32_t	cos_tags_in_fcoe_fifo;		/* 0xD8 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1232
volatile uint32_t	cos_tags_in_nic_fifo;		/* 0xDc */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1233
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1234
volatile uint32_t	mgmt_recv_configuration;	/* 0xE0 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1235
volatile uint32_t	routing_index;			/* 0xE4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1236
volatile uint32_t	routing_data;			/* 0xE8 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1237
volatile uint32_t	reserved2;			/* 0xEc */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1238
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1239
volatile uint32_t	xg_serdes_address;		/* 0xF0 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1240
volatile uint32_t	xg_serdes_data;			/* 0xF4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1241
volatile uint32_t	probe_mux_address;		/* 0xF8 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1242
volatile uint32_t	probe_mux_read_data;		/* 0xFc */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1243
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1244
#define	INTR_PENDING	(uint32_t)(CSR_COMPLETION_INTR)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1245
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1246
} dev_reg_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1247
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1248
typedef volatile struct
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1249
{
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1250
	volatile uint32_t	doorbell_reg_address[256];	/* 0x00 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1251
} dev_doorbell_reg_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1252
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1253
#define	SET_RMASK(val)  ((val & 0xffff) | (val << 16))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1254
#define	CLR_RMASK(val)  (0 | (val << 16))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1255
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1256
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1257
 * DMA registers read only
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1258
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1259
typedef volatile struct
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1260
{
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1261
    volatile uint32_t req_q_out;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1262
    volatile uint32_t rsp_q_in;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1263
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1264
} iop_dmaregs_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1265
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1266
#define	DMAREGS_SIZE	(sizeof (iop_dmaregs_t))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1267
#define	DUMMY_SIZE	(32*1024)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1268
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1269
#ifdef QL_DEBUG
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1270
typedef struct crash_record {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1271
uint16_t	fw_major_version;	/* 00 - 01 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1272
uint16_t	fw_minor_version;	/* 02 - 03 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1273
uint16_t	fw_patch_version;	/* 04 - 05 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1274
uint16_t	fw_build_version;	/* 06 - 07 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1275
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1276
uint8_t		build_date[16];		/* 08 - 17 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1277
uint8_t		build_time[16];		/* 18 - 27 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1278
uint8_t		build_user[16];		/* 28 - 37 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1279
uint8_t		card_serial_num[16];	/* 38 - 47 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1280
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1281
uint32_t	time_of_crash_in_secs;	/* 48 - 4B */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1282
uint32_t	time_of_crash_in_ms;	/* 4C - 4F */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1283
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1284
uint16_t	outb_risc_sd_num_frames; /* 50 - 51 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1285
uint16_t	oap_sd_length;		/* 52 - 53 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1286
uint16_t	iap_sd_num_frames;	/* 54 - 55 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1287
uint16_t	inb_risc_sd_length;	/* 56 - 57 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1288
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1289
uint8_t		reserved[28];		/* 58 - 7F */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1290
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1291
uint8_t		outb_risc_reg_dump[256]; /* 80 -17F */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1292
uint8_t		inb_risc_reg_dump[256];	/* 180 -27F */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1293
uint8_t		inb_outb_risc_stack_dump[1]; /* 280 - ??? */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1294
} crash_record_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1295
#endif
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1296
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1297
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1298
 * I/O register access macros
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1299
 * #if QL_DEBUG & 1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1300
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1301
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1302
#define	RD_REG_BYTE(qlge, addr) \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1303
    ddi_get8(qlge->dev_handle, (uint8_t *)addr)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1304
#define	RD_REG_DWORD(qlge, addr) \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1305
    ddi_get32(qlge->dev_handle, (uint32_t *)addr)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1306
#define	WRT_REG_BYTE(qlge, addr, data) \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1307
    ddi_put8(qlge->dev_handle, (uint8_t *)addr, data)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1308
#define	WRT_REG_WORD(qlge, addr, data) \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1309
    ddi_put16(qlge->dev_handle, (uint16_t *)addr, data)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1310
#define	WRT_REG_DWORD(qlge, addr, data) \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1311
    ddi_put32(qlge->dev_handle, (uint32_t *)addr, data)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1312
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1313
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1314
 * QLGE-specific ioctls ...
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1315
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1316
#define	QLA_IOC			((((('Q' << 8) + 'L') << 8) + 'A') << 8)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1317
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1318
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1319
 * Definition of ioctls commands
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1320
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1321
#define	QLA_PCI_STATUS			(QLA_IOC|1) /* Read all PCI registers */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1322
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1323
#define	QLA_WRITE_REG			(QLA_IOC|3)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1324
#define	QLA_READ_PCI_REG		(QLA_IOC|4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1325
#define	QLA_WRITE_PCI_REG		(QLA_IOC|5)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1326
#define	QLA_GET_DBGLEAVEL		(QLA_IOC|6)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1327
#define	QLA_SET_DBGLEAVEL		(QLA_IOC|7)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1328
#define	QLA_READ_CONTRL_REGISTERS	(QLA_IOC|8)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1329
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1330
#define	QLA_MANUAL_READ_FLASH		(QLA_IOC|9)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1331
#define	QLA_MANUAL_WRITE_FLASH		(QLA_IOC|10)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1332
#define	QLA_SUPPORTED_DUMP_TYPES	(QLA_IOC|11)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1333
#define	QLA_GET_BINARY_CORE_DUMP	(QLA_IOC|12)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1334
#define	QLA_TRIGGER_SYS_ERROR_EVENT	(QLA_IOC|13)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1335
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1336
#define	QLA_READ_FLASH			(QLA_IOC|15)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1337
#define	QLA_WRITE_FLASH			(QLA_IOC|16)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1338
#define	QLA_READ_VPD			(QLA_IOC|17)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1339
#define	QLA_GET_PROP			(QLA_IOC|18)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1340
#define	QLA_SHOW_REGION			(QLA_IOC|19)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1341
#define	QLA_LIST_ADAPTER_INFO		(QLA_IOC|20)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1342
#define	QLA_READ_FW_IMAGE		(QLA_IOC|21)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1343
#define	QLA_WRITE_FW_IMAGE_HEADERS	(QLA_IOC|22)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1344
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1345
#define	QLA_CONTINUE_COPY_IN		(QLA_IOC|29)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1346
#define	QLA_CONTINUE_COPY_OUT		(QLA_IOC|30)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1347
#define	QLA_SOFT_RESET			(QLA_IOC|31)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1348
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1349
#define	QLA_IOCTL_CMD_FIRST		QLA_PCI_STATUS
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1350
#define	QLA_IOCTL_CMD_LAST		QLA_SOFT_RESET
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1351
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1352
/* Solaris IOCTL can copy in&out up to 1024 bytes each time */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1353
#define	IOCTL_BUFFER_SIZE		1024
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1354
#define	IOCTL_MAX_BUF_SIZE		(IOCTL_BUFFER_SIZE*512) /* 512k */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1355
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1356
typedef struct ioctl_header_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1357
uint8_t		version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1358
uint8_t		reserved;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1359
uint8_t		option[2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1360
uint16_t	expected_trans_times;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1361
uint16_t	payload_length;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1362
uint32_t	total_length;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1363
} ioctl_header_info_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1364
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1365
#define	IOCTL_HEADER_LEN	sizeof (ioctl_header_info_t)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1366
#define	IOCTL_MAX_DATA_LEN	(IOCTL_BUFFER_SIZE - IOCTL_HEADER_LEN)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1367
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1368
struct ql_pci_reg {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1369
uint16_t	addr;	/* register number [0..ff] */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1370
uint16_t	value;	/* data to write/data read */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1371
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1372
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1373
struct ql_device_reg {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1374
uint32_t	addr;	/* address to write/data read	*/
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1375
uint32_t	value;	/* data to write/data read	*/
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1376
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1377
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1378
struct ql_flash_io_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1379
uint32_t	addr;	/* register number [0..ff] */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1380
uint32_t	size;	/* number of data to write/data read */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1381
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1382
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1383
struct qlnic_mpi_version_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1384
uint32_t fw_version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1385
uint32_t phy_version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1386
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1387
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1388
struct qlnic_link_status_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1389
uint32_t link_status_info;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1390
uint32_t additional_info;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1391
uint32_t network_hw_info;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1392
uint32_t dcbx_frame_counters_info;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1393
uint32_t change_counters_info;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1394
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1395
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1396
struct qlnic_prop_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1397
struct qlnic_mpi_version_info	mpi_version;	/* MPI Version */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1398
uint32_t			fw_state;	/* MPI state */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1399
struct qlnic_link_status_info	link_status;	/* Link Status */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1400
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1401
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1402
typedef struct ql_adapter_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1403
uint32_t	pci_binding;	/* /bus/dev/func number per IEEE 1277 format */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1404
uint16_t	vendor_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1405
uint16_t	device_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1406
uint16_t	sub_vendor_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1407
uint16_t	sub_device_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1408
struct ether_addr	cur_addr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1409
} ql_adapter_info_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1410
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1411
#define	DUMP_DESCRIPTION_HEADER_SIGNATURE	0x42535451	/* "QTSB" */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1412
typedef struct ql_dump_header {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1413
uint32_t	signature;	/* QTSB */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1414
uint8_t		version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1415
uint8_t		length;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1416
uint8_t		num_dumps;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1417
uint8_t		reserved;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1418
uint32_t	time_stamp_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1419
uint32_t	time_stamp_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1420
} ql_dump_header_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1421
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1422
#define	DUMP_IMAGE_HEADER_SIGNATURE	0x504D4451	/* "QDMP" */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1423
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1424
typedef struct ql_dump_image_header {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1425
uint32_t	signature;	/* QDMP */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1426
uint8_t		version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1427
uint8_t		header_length;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1428
uint16_t	checksum;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1429
uint32_t	data_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1430
#define	DUMP_TYPE_CORE_DUMP	1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1431
#define	DUMP_TYPE_REGISTER_DUMP	2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1432
#define	DUMP_TYPE_DRIVER_DUMP 	3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1433
uint32_t	data_length;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1434
} ql_dump_image_header_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1435
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1436
/* utility request */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1437
#define	DUMP_REQUEST_CORE 	BIT_1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1438
#define	DUMP_REQUEST_REGISTER	BIT_2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1439
#define	DUMP_REQUEST_DRIVER	BIT_3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1440
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1441
#define	DUMP_REQUEST_ALL	BIT_7
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1442
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1443
#define	DUMP_DESCRIPTION_FOOTER_SIGNATURE	0x45535451	/* "QTSE" */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1444
typedef struct ql_dump_footer {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1445
uint32_t	signature;	/* QTSE */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1446
uint8_t		version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1447
uint8_t		length;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1448
uint16_t	reserved;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1449
uint32_t	time_stamp_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1450
uint32_t	time_stamp_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1451
} ql_dump_footer_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1452
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1453
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1454
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1455
 * Solaris qlnic exit status.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1456
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1457
#define	QN_ERR_BASE		0x30000000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1458
#define	QN_ERR_OK		QN_ERR_BASE | 0 /* Success		*/
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1459
#define	QN_ERR_NOT_SUPPORTED	QN_ERR_BASE | 1 /* Command not supported */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1460
#define	QN_ERR_INVALID_PARAM	QN_ERR_BASE | 2 /* Invalid parameter	*/
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1461
#define	QN_ERR_WRONG_NO_PARAM	QN_ERR_BASE | 3 /* Wrong number of parameters */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1462
#define	QN_ERR_FILE_NOT_FOUND	QN_ERR_BASE | 4 /* File not found	*/
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1463
#define	QN_ERR_FILE_READ_ERR	QN_ERR_BASE | 5 /* File read err	*/
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1464
#define	QN_ERR_FILE_WRITE_ERR	QN_ERR_BASE | 6 /* File write err	*/
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1465
#define	QN_ERR_NO_MEMORY	QN_ERR_BASE | 7 /* No Memory		*/
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1466
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1467
#define	FLT_REGION_FDT			0x1A
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1468
#define	ISP_8100_FDT_ADDR		0x360000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1469
#define	ISP_8100_FDT_SIZE		0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1470
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1471
#define	FLT_REGION_FLT			0x1C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1472
#define	ISP_8100_FLT_ADDR		0x361000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1473
#define	ISP_8100_FLT_SIZE		0x1000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1474
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1475
#define	FLT_REGION_NIC_BOOT_CODE	0x2E
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1476
#define	ISP_8100_NIC_BOOT_CODE_ADDR	0x0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1477
#define	ISP_8100_NIC_BOOT_CODE_SIZE	0x80000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1478
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1479
#define	FLT_REGION_MPI_FW_USE		0x42
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1480
#define	ISP_8100_MPI_FW_USE_ADDR 	0xF0000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1481
#define	ISP_8100_MPI_FW_USE_SIZE 	0x10000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1482
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1483
#define	FLT_REGION_MPI_RISC_FW		0x40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1484
#define	ISP_8100_MPI_RISC_FW_ADDR 	0x100000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1485
#define	ISP_8100_MPI_RISC_FW_SIZE 	0x10000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1486
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1487
#define	FLT_REGION_VPD0			0x2C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1488
#define	ISP_8100_VPD0_ADDR		0x140000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1489
#define	ISP_8100_VPD0_SIZE		0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1490
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1491
#define	FLT_REGION_NIC_PARAM0		0x46
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1492
#define	ISP_8100_NIC_PARAM0_ADDR	0x140200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1493
#define	ISP_8100_NIC_PARAM0_SIZE	0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1494
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1495
#define	FLT_REGION_VPD1			0x2D
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1496
#define	ISP_8100_VPD1_ADDR		0x140400
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1497
#define	ISP_8100_VPD1_SIZE		0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1498
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1499
#define	FLT_REGION_NIC_PARAM1		0x47
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1500
#define	ISP_8100_NIC_PARAM1_ADDR	0x140600
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1501
#define	ISP_8100_NIC_PARAM1_SIZE	0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1502
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1503
#define	FLT_REGION_MPI_CFG		0x41
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1504
#define	ISP_8100_MPI_CFG_ADDR		0x150000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1505
#define	ISP_8100_MPI_CFG_SIZE		0x10000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1506
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1507
#define	FLT_REGION_EDC_PHY_FW		0x45
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1508
#define	ISP_8100_EDC_PHY_FW_ADDR	0x170000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1509
#define	ISP_8100_EDC_PHY_FW_SIZE	0x20000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1510
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1511
#define	FLT_REGION_FC_BOOT_CODE		0x07
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1512
#define	ISP_8100_FC_BOOT_CODE_ADDR	0x200000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1513
#define	ISP_8100_FC_BOOT_CODE_SIZE	0x80000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1514
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1515
#define	FLT_REGION_FC_FW		0x01
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1516
#define	ISP_8100_FC_FW_ADDR		0x280000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1517
#define	ISP_8100_FC_FW_SIZE		0x80000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1518
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1519
#define	FLT_REGION_FC_VPD0		0x14
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1520
#define	ISP_8100_FC_VPD0_ADDR		0x340000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1521
#define	ISP_8100_FC_VPD0_SIZE		0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1522
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1523
#define	FLT_REGION_FC_NVRAM0		0x15
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1524
#define	ISP_8100_FC_NVRAM0_ADDR		0x340200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1525
#define	ISP_8100_FC_NVRAM0_SIZE		0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1526
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1527
#define	FLT_REGION_FC_VPD1		0x16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1528
#define	ISP_8100_FC_VPD1_ADDR		0x340400
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1529
#define	ISP_8100_FC_VPD1_SIZE		0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1530
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1531
#define	FLT_REGION_FC_NVRAM1		0x17
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1532
#define	ISP_8100_FC_NVRAM1_ADDR		0x340600
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1533
#define	ISP_8100_FC_NVRAM1_SIZE		0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1534
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1535
#define	FLT_REGION_FC_BOOT_CODE		0x07
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1536
#define	ISP_8100_FC_BOOT_CODE_ADDR	0x200000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1537
#define	ISP_8100_FC_BOOT_CODE_SIZE	0x80000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1538
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1539
#define	FLT_REGION_FC_FW		0x01
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1540
#define	ISP_8100_FC_FW_ADDR		0x280000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1541
#define	ISP_8100_FC_FW_SIZE		0x80000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1542
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1543
#define	FLT_REGION_TIME_STAMP		0x60
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1544
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1545
/* flash region for testing */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1546
#define	FLT_REGION_WIN_FW_DUMP0		0x48
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1547
#define	ISP_8100_WIN_FW_DUMP0_ADDR	0x190000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1548
#define	ISP_8100_WIN_FW_DUMP0_SIZE	0x30000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1549
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1550
#define	ISP_8100_FLASH_TEST_REGION_ADDR		ISP_8100_WIN_FW_DUMP0_ADDR
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1551
#define	ISP_8100_FLASH_TEST_REGION_SIZE		0x10000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1552
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1553
/* mailbox */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1554
#define	QL_8XXX_SFP_SIZE	256
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1555
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1556
#define	MAILBOX_TOV		30	/* Default Timeout value. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1557
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1558
 * ISP mailbox commands from Host
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1559
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1560
#define	MBC_NO_OPERATION		0	/* No Operation. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1561
#define	MBC_LOAD_RAM			1	/* Load RAM. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1562
#define	MBC_EXECUTE_FIRMWARE		2	/* Execute firmware. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1563
#define	MBC_MAILBOX_REGISTER_TEST	6	/* Mailbox echo test */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1564
#define	MBC_VERIFY_CHECKSUM		7	/* Verify checksum. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1565
#define	MBC_ABOUT_FIRMWARE		8	/* About Firmware. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1566
#define	MBC_RISC_MEMORY_COPY		0xA	/* Copy RISC memory. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1567
#define	MBC_LOAD_RISC_RAM		0xB	/* Load RISC RAM command. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1568
#define	MBC_DUMP_RISC_RAM		0xC	/* Dump RISC RAM command. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1569
#define	MBC_INIT_RISC_RAM		0xE
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1570
#define	MBC_READ_RAM_WORD		0xF	/* Read RAM  */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1571
#define	MBC_STOP_FIRMWARE		0x14	/* Stop firmware */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1572
#define	MBC_GENERATE_SYS_ERROR		0x2A	/* Generate System Error */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1573
#define	MBC_WRITE_SFP			0x30	/* Write SFP. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1574
#define	MBC_READ_SFP			0x31	/* Read SFP. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1575
#define	MBC_INITIALIZE_FIRMWARE		0x60	/* Initialize firmware */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1576
#define	MBC_GET_INIT_CTRL_BLOCK		0x61	/* Get Initialization CBLK */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1577
#define	MBC_GET_FIRMWARE_STATE		0x69	/* Get firmware state. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1578
#define	MBC_IDC_REQUEST			0x100	/* IDC Request. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1579
#define	IDC_REQ_ALL_DEST_FUNC_MASK	BIT_4	/* Mailbox 1 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1580
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1581
#define	IDC_REQ_DEST_FUNC_0_MASK	BIT_0	/* Mailbox 2 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1582
#define	IDC_REQ_DEST_FUNC_1_MASK	BIT_1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1583
#define	IDC_REQ_DEST_FUNC_2_MASK	BIT_2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1584
#define	IDC_REQ_DEST_FUNC_3_MASK	BIT_3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1585
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1586
enum IDC_REQ_DEST_FUNC {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1587
IDC_REQ_DEST_FUNC_0,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1588
IDC_REQ_DEST_FUNC_1,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1589
IDC_REQ_DEST_FUNC_2,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1590
IDC_REQ_DEST_FUNC_3,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1591
IDC_REQ_DEST_FUNC_ALL = 0x0F
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1592
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1593
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1594
#define	IDC_REQ_TIMEOUT_MASK		0x01
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1595
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1596
#define	MBC_IDC_ACK			0x101	/* IDC Acknowledge. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1597
#define	MBC_IDC_TIME_EXTENDED		0x102	/* IDC Time Extended. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1598
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1599
#define	MBC_SET_WAKE_ON_LANE_MODE	0x110
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1600
#define	MBC_SET_WAKE_ON_LANE_FILTER	0x111
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1601
#define	MBC_CLEAR_WAKE_ON_LANE_FILTER	0x112
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1602
#define	MBC_SET_WAKE_ON_LANE_MAGIC_PKT	0x113
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1603
#define	MBC_CLEAR_WAKE_ON_LANE_MAGIC_PKT	0x114
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1604
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1605
#define	MBC_PORT_RESET			0x120
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1606
#define	MBC_SET_PORT_CONFIG		0x122
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1607
#define	MBC_GET_PORT_CONFIG		0x123
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1608
#define	ENABLE_JUMBO_FRAME_SIZE_MASK	BIT_16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1609
#define	MBC_GET_LINK_STATUS		0x124
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1610
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1611
#define	MBC_SET_LED_CONFIG		0x125
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1612
#define	MBC_GET_LED_CONFIG		0x126
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1613
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1614
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1615
 * ISP mailbox command complete status codes
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1616
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1617
#define	MBS_COMMAND_COMPLETE		0x4000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1618
#define	MBS_INVALID_COMMAND		0x4001
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1619
#define	MBS_HOST_INTERFACE_ERROR	0x4002
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1620
#define	MBS_TEST_FAILED			0x4003
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1621
#define	MBS_POST_ERROR			0x4004
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1622
#define	MBS_COMMAND_ERROR		0x4005
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1623
#define	MBS_COMMAND_PARAMETER_ERROR	0x4006
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1624
#define	MBS_PORT_ID_USED		0x4007
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1625
#define	MBS_LOOP_ID_USED		0x4008
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1626
#define	MBS_ALL_IDS_IN_USE		0x4009
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1627
#define	MBS_NOT_LOGGED_IN		0x400A
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1628
#define	MBS_LOOP_DOWN			0x400B
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1629
#define	MBS_LOOP_BACK_ERROR		0x400C
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1630
#define	MBS_CHECKSUM_ERROR		0x4010
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1631
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1632
/* Async Event Status */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1633
#define	MBA_IDC_INTERMEDIATE_COMPLETE	0x1000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1634
#define	MBA_ASYNC_EVENT			0x8000 /* Asynchronous event. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1635
#define	MBA_SYSTEM_ERR			0x8002
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1636
#define	MBA_LINK_UP			0x8011
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1637
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1638
	XFI_NETWORK_INTERFACE = 1,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1639
	XAUI_NETWORK_INTERFACE,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1640
	XFI_BACKPLANE_INTERFACE,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1641
	XAUI_BACKPLANE_INTERFACE,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1642
	EXT_10GBASE_T_PHY,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1643
	EXT_EXT_EDC_PHY
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1644
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1645
#define	MBA_LINK_DOWN			0x8012
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1646
#define	MBA_IDC_COMPLETE		0x8100
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1647
#define	MBA_IDC_REQUEST_NOTIFICATION	0x8101
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1648
#define	MBA_IDC_TIME_EXTENDED		0x8102
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1649
#define	MBA_DCBX_CONFIG_CHANGE		0x8110
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1650
#define	MBA_NOTIFICATION_LOST		0x8120
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1651
#define	MBA_SFT_TRANSCEIVER_INSERTION	0x8130
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1652
#define	MBA_SFT_TRANSCEIVER_REMOVAL	0x8131
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1653
#define	MBA_FIRMWARE_INIT_COMPLETE	0x8400
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1654
#define	MBA_FIRMWARE_INIT_FAILED	0x8401
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1655
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1656
typedef struct firmware_version_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1657
uint8_t	reserved;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1658
uint8_t	major_version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1659
uint8_t	minor_version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1660
uint8_t	sub_minor_version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1661
} firmware_version_info_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1662
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1663
typedef struct phy_firmware_version_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1664
uint8_t	reserved;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1665
uint8_t	major_version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1666
uint8_t	minor_version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1667
uint8_t	sub_minor_version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1668
} phy_firmware_version_info_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1669
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1670
#define	ENABLE_JUMBO BIT_16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1671
#define	STD_PAUSE 0x20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1672
#define	PP_PAUSE 0x40
12073
05ba1c0d6140 6923815 Implement FMA functionality in qlge driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents: 10997
diff changeset
  1673
#define	DCBX_ENABLE 0x10
10997
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1674
#define	LOOP_INTERNAL_PARALLEL	0x02
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1675
#define	LOOP_INTERNAL_SERIAL	0x04
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1676
#define	LOOP_EXTERNAL_PHY	0x06
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1677
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1678
typedef struct port_cfg_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1679
uint32_t link_cfg;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1680
uint32_t max_frame_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1681
} port_cfg_info_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1682
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1683
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1684
	PAUSE_MODE_DISABLED,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1685
	PAUSE_MODE_STANDARD,	/* Standard Ethernet Pause */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1686
	PAUSE_MODE_PER_PRIORITY	/* Class Based Pause */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1687
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1688
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1689
/* Mailbox command parameter structure definition. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1690
typedef struct mbx_cmd {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1691
uint32_t from_mpi;	/* number of Incomming from MPI to driver */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1692
uint32_t mb[NUM_MAILBOX_REGS];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1693
clock_t  timeout;	/* Timeout in seconds. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1694
} mbx_cmd_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1695
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1696
/* Returned Mailbox registers. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1697
typedef struct mbx_data {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1698
uint32_t from_mpi;	/* number of Incomming from MPI to driver */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1699
uint32_t mb[NUM_MAILBOX_REGS];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1700
} mbx_data_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1701
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1702
/* Address/Length pairs for the coredump. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1703
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1704
#define	MPI_CORE_REGS_ADDR	0x00030000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1705
#define	MPI_CORE_REGS_CNT	127
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1706
#define	MPI_CORE_SH_REGS_CNT	16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1707
#define	TEST_REGS_ADDR		0x00001000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1708
#define	TEST_REGS_CNT		23
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1709
#define	RMII_REGS_ADDR		0x00001040
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1710
#define	RMII_REGS_CNT		64
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1711
#define	FCMAC1_REGS_ADDR	0x00001080
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1712
#define	FCMAC2_REGS_ADDR	0x000010c0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1713
#define	FCMAC_REGS_CNT		64
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1714
#define	FC1_MBX_REGS_ADDR	0x00001100
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1715
#define	FC2_MBX_REGS_ADDR	0x00001240
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1716
#define	FC_MBX_REGS_CNT		64
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1717
#define	IDE_REGS_ADDR		0x00001140
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1718
#define	IDE_REGS_CNT		64
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1719
#define	NIC1_MBX_REGS_ADDR	0x00001180
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1720
#define	NIC2_MBX_REGS_ADDR	0x00001280
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1721
#define	NIC_MBX_REGS_CNT	64
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1722
#define	SMBUS_REGS_ADDR		0x00001200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1723
#define	SMBUS_REGS_CNT		64
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1724
#define	I2C_REGS_ADDR		0x00001fc0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1725
#define	I2C_REGS_CNT		64
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1726
#define	MEMC_REGS_ADDR		0x00003000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1727
#define	MEMC_REGS_CNT		256
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1728
#define	PBUS_REGS_ADDR		0x00007c00
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1729
#define	PBUS_REGS_CNT		256
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1730
#define	MDE_REGS_ADDR		0x00010000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1731
#define	MDE_REGS_CNT		6
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1732
#define	CODE_RAM_ADDR		0x00020000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1733
#define	CODE_RAM_CNT		0x2000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1734
#define	MEMC_RAM_ADDR		0x00100000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1735
#define	MEMC_RAM_CNT		0x2000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1736
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1737
/* 64 probes, 8 bytes per probe + 4 bytes to list the probe ID */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1738
#define	PROBE_DATA_LENGTH_WORDS		((64 * 2) + 1)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1739
#define	NUMBER_OF_PROBES		34
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1740
#define	NUMBER_ROUTING_REG_ENTRIES	48
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1741
#define	WORDS_PER_ROUTING_REG_ENTRY	4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1742
#define	MAC_PROTOCOL_REGISTER_WORDS	((512 * 3) + (32 * 2) + (4096 * 1) + \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1743
					    (4096 * 1) + (4 * 2) + (8 * 2) + \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1744
					    (16 * 1) + (4 * 1) + (4 * 4) + \
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1745
					    (4 * 1))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1746
/* Save both the address and data register */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1747
#define	WORDS_PER_MAC_PROT_ENTRY	2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1748
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1749
#define	MPI_COREDUMP_COOKIE 0x5555aaaa
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1750
typedef struct mpi_coredump_global_header {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1751
uint32_t	cookie;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1752
char		id_string[16];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1753
uint32_t	time_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1754
uint32_t	time_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1755
uint32_t	total_image_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1756
uint32_t	global_header_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1757
char		driver_info[0xE0];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1758
}mpi_coredump_global_header_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1759
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1760
typedef struct mpi_coredump_segment_header {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1761
uint32_t	cookie;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1762
uint32_t	seg_number;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1763
uint32_t	seg_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1764
uint32_t	extra;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1765
char		description[16];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1766
}mpi_coredump_segment_header_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1767
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1768
typedef struct	ql_mpi_coredump {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1769
mpi_coredump_global_header_t mpi_global_header;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1770
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1771
mpi_coredump_segment_header_t core_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1772
uint32_t	mpi_core_regs[MPI_CORE_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1773
uint32_t	mpi_core_sh_regs[MPI_CORE_SH_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1774
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1775
mpi_coredump_segment_header_t test_logic_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1776
uint32_t	test_logic_regs[TEST_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1777
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1778
mpi_coredump_segment_header_t rmii_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1779
uint32_t	rmii_regs[RMII_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1780
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1781
mpi_coredump_segment_header_t fcmac1_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1782
uint32_t	fcmac1_regs[FCMAC_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1783
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1784
mpi_coredump_segment_header_t fcmac2_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1785
uint32_t	fcmac2_regs[FCMAC_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1786
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1787
mpi_coredump_segment_header_t fc1_mbx_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1788
uint32_t	fc1_mbx_regs[FC_MBX_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1789
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1790
mpi_coredump_segment_header_t ide_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1791
uint32_t	ide_regs[IDE_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1792
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1793
mpi_coredump_segment_header_t nic1_mbx_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1794
uint32_t	nic1_mbx_regs[NIC_MBX_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1795
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1796
mpi_coredump_segment_header_t smbus_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1797
uint32_t	smbus_regs[SMBUS_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1798
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1799
mpi_coredump_segment_header_t fc2_mbx_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1800
uint32_t	fc2_mbx_regs[FC_MBX_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1801
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1802
mpi_coredump_segment_header_t nic2_mbx_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1803
uint32_t	nic2_mbx_regs[NIC_MBX_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1804
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1805
mpi_coredump_segment_header_t i2c_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1806
uint32_t	i2c_regs[I2C_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1807
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1808
mpi_coredump_segment_header_t memc_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1809
uint32_t	memc_regs[MEMC_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1810
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1811
mpi_coredump_segment_header_t pbus_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1812
uint32_t	pbus_regs[PBUS_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1813
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1814
mpi_coredump_segment_header_t mde_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1815
uint32_t	mde_regs[MDE_REGS_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1816
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1817
mpi_coredump_segment_header_t xaui_an_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1818
uint32_t	serdes_xaui_an[14];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1819
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1820
mpi_coredump_segment_header_t xaui_hss_pcs_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1821
uint32_t	serdes_xaui_hss_pcs[33];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1822
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1823
mpi_coredump_segment_header_t xfi_an_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1824
uint32_t	serdes_xfi_an[14];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1825
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1826
mpi_coredump_segment_header_t xfi_train_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1827
uint32_t	serdes_xfi_train[12];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1828
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1829
mpi_coredump_segment_header_t xfi_hss_pcs_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1830
uint32_t	serdes_xfi_hss_pcs[15];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1831
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1832
mpi_coredump_segment_header_t xfi_hss_tx_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1833
uint32_t	serdes_xfi_hss_tx[32];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1834
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1835
mpi_coredump_segment_header_t xfi_hss_rx_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1836
uint32_t	serdes_xfi_hss_rx[32];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1837
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1838
mpi_coredump_segment_header_t xfi_hss_pll_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1839
uint32_t	serdes_xfi_hss_pll[32];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1840
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1841
mpi_coredump_segment_header_t nic_regs_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1842
uint32_t	nic_regs[64];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1843
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1844
/* one interrupt state for each CQ */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1845
mpi_coredump_segment_header_t intr_states_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1846
uint32_t	intr_states[MAX_RX_RINGS];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1847
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1848
mpi_coredump_segment_header_t xgmac_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1849
#define	XGMAC_REGISTER_END 0x740
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1850
uint32_t xgmac[XGMAC_REGISTER_END];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1851
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1852
mpi_coredump_segment_header_t probe_dump_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1853
uint32_t probe_dump[PROBE_DATA_LENGTH_WORDS * NUMBER_OF_PROBES];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1854
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1855
mpi_coredump_segment_header_t routing_reg_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1856
uint32_t routing_regs[NUMBER_ROUTING_REG_ENTRIES * WORDS_PER_ROUTING_REG_ENTRY];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1857
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1858
mpi_coredump_segment_header_t mac_prot_reg_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1859
uint32_t mac_prot_regs[MAC_PROTOCOL_REGISTER_WORDS * WORDS_PER_MAC_PROT_ENTRY];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1860
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1861
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1862
mpi_coredump_segment_header_t ets_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1863
uint32_t	ets[8+2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1864
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1865
mpi_coredump_segment_header_t code_ram_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1866
uint32_t	code_ram[CODE_RAM_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1867
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1868
mpi_coredump_segment_header_t memc_ram_seg_hdr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1869
uint32_t	memc_ram[MEMC_RAM_CNT];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1870
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1871
} ql_mpi_coredump_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1872
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1873
#define	WCS_MPI_CODE_RAM_LENGTH		(0x2000*4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1874
#define	MEMC_MPI_RAM_LENGTH		(0x2000*4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1875
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1876
#define	XG_SERDES_ADDR_RDY	BIT_31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1877
#define	XG_SERDES_ADDR_R	BIT_30
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1878
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1879
#define	CORE_SEG_NUM		1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1880
#define	TEST_LOGIC_SEG_NUM	2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1881
#define	RMII_SEG_NUM		3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1882
#define	FCMAC1_SEG_NUM		4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1883
#define	FCMAC2_SEG_NUM		5
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1884
#define	FC1_MBOX_SEG_NUM	6
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1885
#define	IDE_SEG_NUM		7
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1886
#define	NIC1_MBOX_SEG_NUM	8
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1887
#define	SMBUS_SEG_NUM		9
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1888
#define	FC2_MBOX_SEG_NUM	10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1889
#define	NIC2_MBOX_SEG_NUM	11
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1890
#define	I2C_SEG_NUM		12
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1891
#define	MEMC_SEG_NUM		13
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1892
#define	PBUS_SEG_NUM		14
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1893
#define	MDE_SEG_NUM		15
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1894
#define	NIC1_CONTROL_SEG_NUM	16
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1895
#define	NIC2_CONTROL_SEG_NUM	17
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1896
#define	NIC1_XGMAC_SEG_NUM	18
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1897
#define	NIC2_XGMAC_SEG_NUM	19
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1898
#define	WCS_RAM_SEG_NUM		20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1899
#define	MEMC_RAM_SEG_NUM	21
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1900
#define	XAUI_AN_SEG_NUM		22
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1901
#define	XAUI_HSS_PCS_SEG_NUM	23
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1902
#define	XFI_AN_SEG_NUM		24
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1903
#define	XFI_TRAIN_SEG_NUM	25
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1904
#define	XFI_HSS_PCS_SEG_NUM	26
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1905
#define	XFI_HSS_TX_SEG_NUM	27
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1906
#define	XFI_HSS_RX_SEG_NUM	28
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1907
#define	XFI_HSS_PLL_SEG_NUM	29
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1908
#define	INTR_STATES_SEG_NUM	31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1909
#define	ETS_SEG_NUM		34
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1910
#define	PROBE_DUMP_SEG_NUM	35
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1911
#define	ROUTING_INDEX_SEG_NUM	36
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1912
#define	MAC_PROTOCOL_SEG_NUM	37
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1913
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1914
/* Force byte packing for the following structures */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1915
#pragma pack(1)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1916
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1917
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1918
 * Work Queue (Request Queue) Initialization Control Block (WQICB)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1919
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1920
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1921
struct wqicb_t {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1922
	uint16_t len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1923
#define	Q_LEN_V		(1 << 4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1924
#define	Q_LEN_CPP_CONT	0x0000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1925
#define	Q_LEN_CPP_16	0x0001
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1926
#define	Q_LEN_CPP_32	0x0002
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1927
#define	Q_LEN_CPP_64	0x0003
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1928
#define	Q_LEN_CPP_512	0x0006
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1929
	uint16_t flags;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1930
#define	Q_PRI_SHIFT	1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1931
#define	Q_FLAGS_LC	0x1000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1932
#define	Q_FLAGS_LB	0x2000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1933
#define	Q_FLAGS_LI	0x4000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1934
#define	Q_FLAGS_LO	0x8000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1935
	uint16_t cq_id_rss;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1936
#define	Q_CQ_ID_RSS_RV 0x8000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1937
	uint16_t rid;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1938
	uint32_t wq_addr_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1939
	uint32_t wq_addr_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1940
	uint32_t cnsmr_idx_addr_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1941
	uint32_t cnsmr_idx_addr_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1942
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1943
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1944
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1945
 * Completion Queue (Response Queue) Initialization Control Block (CQICB)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1946
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1947
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1948
struct cqicb_t {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1949
	uint8_t	msix_vect;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1950
	uint8_t	reserved1;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1951
	uint8_t	reserved2;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1952
	uint8_t	flags;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1953
#define	FLAGS_LV	0x08
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1954
#define	FLAGS_LS	0x10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1955
#define	FLAGS_LL	0x20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1956
#define	FLAGS_LI	0x40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1957
#define	FLAGS_LC	0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1958
	uint16_t	len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1959
#define	LEN_V		(1 << 4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1960
#define	LEN_CPP_CONT	0x0000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1961
#define	LEN_CPP_32	0x0001
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1962
#define	LEN_CPP_64	0x0002
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1963
#define	LEN_CPP_128	0x0003
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1964
	uint16_t	rid;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1965
	uint32_t	cq_base_addr_lo; /* completion queue base address */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1966
	uint32_t	cq_base_addr_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1967
	uint32_t	prod_idx_addr_lo; /* completion queue host copy */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1968
					/* producer index host shadow  */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1969
	uint32_t	prod_idx_addr_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1970
	uint16_t	pkt_delay;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1971
	uint16_t	irq_delay;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1972
	uint32_t	lbq_addr_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1973
	uint32_t	lbq_addr_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1974
	uint16_t	lbq_buf_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1975
	uint16_t	lbq_len;	/* entry count */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1976
	uint32_t	sbq_addr_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1977
	uint32_t	sbq_addr_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1978
	uint16_t	sbq_buf_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1979
	uint16_t	sbq_len;	/* entry count */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1980
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1981
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1982
struct ricb {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1983
	uint8_t		base_cq;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1984
#define	RSS_L4K	0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1985
	uint8_t		flags;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1986
#define	RSS_L6K	0x01
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1987
#define	RSS_LI	0x02
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1988
#define	RSS_LB	0x04
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1989
#define	RSS_LM	0x08
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1990
#define	RSS_RI4	0x10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1991
#define	RSS_RT4	0x20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1992
#define	RSS_RI6	0x40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1993
#define	RSS_RT6	0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1994
	uint16_t	mask;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1995
#define	RSS_HASH_CQ_ID_MAX	1024
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1996
	uint8_t		hash_cq_id[RSS_HASH_CQ_ID_MAX];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1997
	uint32_t	ipv6_hash_key[10];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1998
	uint32_t	ipv4_hash_key[4];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  1999
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2001
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2002
 * Host Command IOCB Formats
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2003
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2004
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2005
#define	OPCODE_OB_MAC_IOCB		0x01
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2006
#define	OPCODE_OB_MAC_OFFLOAD_IOCB 	0x02
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2007
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2008
#define	OPCODE_IB_MAC_IOCB		0x20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2009
#define	OPCODE_IB_SYS_EVENT_IOCB	0x3f
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2010
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2011
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2012
 * The following constants define control bits for buffer
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2013
 * length fields for all IOCB's.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2014
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2015
#define	OAL_LAST_ENTRY	0x80000000	/* Last valid buffer in list. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2016
#define	OAL_CONT_ENTRY	0x40000000	/* points to an OAL. (continuation) */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2017
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2018
struct oal_entry {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2019
uint32_t buf_addr_low;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2020
uint32_t buf_addr_high;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2021
uint32_t buf_len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2022
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2023
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2024
/* 32 words, 128 bytes */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2025
#define	TX_DESC_PER_IOCB	8	/* Number of descs in one TX IOCB */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2026
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2027
struct ob_mac_iocb_req {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2028
	uint8_t opcode;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2029
	uint8_t flag0;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2030
#define	OB_MAC_IOCB_REQ_IPv6	0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2031
#define	OB_MAC_IOCB_REQ_IPv4	0x40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2032
#define	OB_MAC_IOCB_REQ_D	0x08	/* disable generation of comp. msg */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2033
#define	OB_MAC_IOCB_REQ_I	0x02	/* disable generation of intr at comp */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2034
	uint8_t flag1;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2035
#define	OB_MAC_IOCB_REQ_TC	0x80	/* enable TCP checksum offload */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2036
#define	OB_MAC_IOCB_REQ_UC	0x40	/* enable UDP checksum offload */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2037
#define	OB_MAC_IOCB_REQ_LSO	0x20	/* enable LSO offload */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2038
	uint8_t flag2;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2039
#define	OB_MAC_IOCB_REQ_VLAN_OFFSET_MASK	0xF8 /* VLAN TCI insert */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2040
#define	OB_MAC_IOCB_REQ_V	0x04	/* insert VLAN TCI */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2041
#define	OB_MAC_IOCB_REQ_DFP	0x02	/* Drop for Failover port */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2042
#define	OB_MAC_IOCB_REQ_IC	0x01	/* enable IP checksum offload */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2043
	uint32_t unused;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2044
	uint32_t reserved_cq_tag;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2045
	uint32_t frame_len;		/* max 9000,for none LSO, 16M for LSO */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2046
	uint32_t tid;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2047
	uint32_t txq_idx;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2048
	uint16_t protocol_hdr_len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2049
	uint16_t hdr_off;		/* tcp/udp hdr offset */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2050
	uint16_t vlan_tci;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2051
	uint16_t mss;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2052
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2053
	struct oal_entry oal_entry[TX_DESC_PER_IOCB]; /* max FFFFF 1M bytes */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2054
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2055
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2056
/* 16 words, 64 bytes */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2057
struct ob_mac_iocb_rsp {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2058
	uint8_t opcode;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2059
	uint8_t flags1;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2060
#define	OB_MAC_IOCB_RSP_OI	0x01	/* */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2061
#define	OB_MAC_IOCB_RSP_I	0x02	/* */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2062
#define	OB_MAC_IOCB_RSP_E	0x08	/* */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2063
#define	OB_MAC_IOCB_RSP_S	0x10	/* too Short */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2064
#define	OB_MAC_IOCB_RSP_L	0x20	/* too Large */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2065
#define	OB_MAC_IOCB_RSP_P	0x40	/* Padded */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2066
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2067
	uint8_t flags2;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2068
	uint8_t flags3;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2069
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2070
#define	OB_MAC_IOCB_RSP_B	0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2071
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2072
	uint32_t tid;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2073
	uint32_t txq_idx;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2074
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2075
	uint32_t reserved[13];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2076
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2077
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2078
#define	IB_MAC_IOCB_RSP_VLAN_MASK	0x0ffff
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2079
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2080
struct ib_mac_iocb_rsp {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2081
	uint8_t	opcode;		/* 0x20 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2082
	uint8_t	flags1;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2083
#define	IB_MAC_IOCB_RSP_OI	0x01	/* Overide intr delay */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2084
#define	IB_MAC_IOCB_RSP_I	0x02	/* Disble Intr Generation */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2085
#define	IB_MAC_IOCB_RSP_TE	0x04	/* Checksum error */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2086
#define	IB_MAC_IOCB_RSP_NU	0x08	/* No checksum rcvd */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2087
#define	IB_MAC_IOCB_RSP_IE	0x10	/* IPv4 checksum error */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2088
#define	IB_MAC_IOCB_RSP_M_MASK	0x60	/* Multicast info */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2089
#define	IB_MAC_IOCB_RSP_M_NONE	0x00	/* Not mcast frame */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2090
#define	IB_MAC_IOCB_RSP_M_HASH	0x20	/* HASH mcast frame */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2091
#define	IB_MAC_IOCB_RSP_M_REG 	0x40	/* Registered mcast frame */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2092
#define	IB_MAC_IOCB_RSP_M_PROM 	0x60	/* Promiscuous mcast frame */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2093
#define	IB_MAC_IOCB_RSP_B	0x80	/* Broadcast frame */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2094
	uint8_t	flags2;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2095
#define	IB_MAC_IOCB_RSP_P	0x01	/* Promiscuous frame */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2096
#define	IB_MAC_IOCB_RSP_V	0x02	/* Vlan tag present */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2097
#define	IB_MAC_IOCB_RSP_ERR_MASK	0x1c	/*  */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2098
#define	IB_MAC_IOCB_RSP_ERR_CODE_ERR	0x04
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2099
#define	IB_MAC_IOCB_RSP_ERR_OVERSIZE	0x08
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2100
#define	IB_MAC_IOCB_RSP_ERR_UNDERSIZE	0x10
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2101
#define	IB_MAC_IOCB_RSP_ERR_PREAMBLE	0x14
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2102
#define	IB_MAC_IOCB_RSP_ERR_FRAME_LEN	0x18
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2103
#define	IB_MAC_IOCB_RSP_ERR_CRC		0x1c
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2104
#define	IB_MAC_IOCB_RSP_U	0x20	/* UDP packet */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2105
#define	IB_MAC_IOCB_RSP_T	0x40	/* TCP packet */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2106
#define	IB_MAC_IOCB_RSP_FO	0x80	/* Failover port */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2107
	uint8_t	flags3;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2108
#define	IB_MAC_IOCB_RSP_RSS_MASK	0x07	/* RSS mask */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2109
#define	IB_MAC_IOCB_RSP_M_NONE	0x00	/* No RSS match */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2110
#define	IB_MAC_IOCB_RSP_M_IPV4	0x04	/* IPv4 RSS match */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2111
#define	IB_MAC_IOCB_RSP_M_IPV6	0x02	/* IPv6 RSS match */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2112
#define	IB_MAC_IOCB_RSP_M_TCP_V4 	0x05	/* TCP with IPv4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2113
#define	IB_MAC_IOCB_RSP_M_TCP_V6 	0x03	/* TCP with IPv6 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2114
#define	IB_MAC_IOCB_RSP_V4	0x08	/* IPV4 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2115
#define	IB_MAC_IOCB_RSP_V6	0x10	/* IPV6 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2116
#define	IB_MAC_IOCB_RSP_IH	0x20	/* Split after IP header */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2117
#define	IB_MAC_IOCB_RSP_DS	0x40	/* data is in small buffer */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2118
#define	IB_MAC_IOCB_RSP_DL	0x80	/* data is in large buffer */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2119
	uint32_t	data_len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2120
	uint64_t	data_addr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2121
	uint32_t	rss;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2122
	uint16_t	vlan_id;	/* 12 bits */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2123
#define	IB_MAC_IOCB_RSP_VLAN_ID_MASK	0xFFF
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2124
#define	IB_MAC_IOCB_RSP_C		0x1000	/* VLAN CFI bit */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2125
#define	IB_MAC_IOCB_RSP_COS_SHIFT	12	/* class of service value */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2126
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2127
	uint16_t reserved1;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2128
	uint32_t reserved2[6];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2129
	uint8_t reserved3[3];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2130
	uint8_t flags4;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2131
#define	IB_MAC_IOCB_RSP_HV	0x20
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2132
#define	IB_MAC_IOCB_RSP_HS	0x40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2133
#define	IB_MAC_IOCB_RSP_HL	0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2134
	uint32_t hdr_len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2135
	uint64_t hdr_addr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2136
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2137
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2138
/* 16 words, 64 bytes */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2139
struct ib_sys_event_iocb_rsp {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2140
	uint8_t opcode;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2141
	uint8_t flag0;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2142
	uint8_t event_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2143
	uint8_t q_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2144
	uint32_t reserved[15];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2145
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2146
#define	SYS_EVENT_PORT_LINK_UP		0x0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2147
#define	SYS_EVENT_PORT_LINK_DOWN	0x1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2148
#define	SYS_EVENT_MULTIPLE_CAM_HITS	0x6
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2149
#define	SYS_EVENT_SOFT_ECC_ERR		0x7
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2150
#define	SYS_EVENT_MGMT_FATAL_ERR	0x8	/* MPI_PROCESSOR */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2151
#define	SYS_EVENT_MAC_INTERRUPT		0x9
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2152
#define	SYS_EVENT_PCI_ERR_READING_SML_LRG_BUF	0x40
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2153
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2154
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2155
 *  Status Register (#define STATUS) bit definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2156
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2157
#define	STATUS_FE	(1 << 0)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2158
#define	STATUS_PI	(1 << 1)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2159
#define	STATUS_PL0	(1 << 2),
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2160
#define	STATUS_PL1	(1 << 3)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2161
#define	STATUS_PI0	(1 << 4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2162
#define	STATUS_PI1	(1 << 5)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2163
#define	STATUS_FUNC_ID_MASK	0x000000c0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2164
#define	STATUS_FUNC_ID_SHIFT	6
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2165
#define	STATUS_F0E	(1 << 8)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2166
#define	STATUS_F1E	(1 << 9)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2167
#define	STATUS_F2E	(1 << 10)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2168
#define	STATUS_F3E	(1 << 11)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2169
#define	STATUS_NFE	(1 << 12)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2170
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2171
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2172
 * Generic Response Queue IOCB Format which abstracts the difference between
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2173
 * IB_MAC, OB_MAC IOCBs
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2174
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2175
struct net_rsp_iocb {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2176
	uint8_t	opcode;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2177
	uint8_t	flag0;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2178
	uint8_t	flag1;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2179
	uint8_t	flag2;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2180
	uint32_t	reserved[15];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2181
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2182
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2183
/* Restore original packing rules */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2184
#pragma pack()
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2185
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2186
#define	RESPONSE_ENTRY_SIZE	(sizeof (struct net_rsp_iocb))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2187
#define	REQUEST_ENTRY_SIZE	(sizeof (struct ob_mac_iocb_req))
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2188
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2189
/* flash */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2190
/* Little endian machine correction defines. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2191
#ifdef _LITTLE_ENDIAN
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2192
#define	LITTLE_ENDIAN_16(x)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2193
#define	LITTLE_ENDIAN_24(x)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2194
#define	LITTLE_ENDIAN_32(x)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2195
#define	LITTLE_ENDIAN_64(x)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2196
#define	LITTLE_ENDIAN(bp, bytes)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2197
#define	BIG_ENDIAN_16(x)	ql_change_endian((uint8_t *)x, 2)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2198
#define	BIG_ENDIAN_24(x)	ql_change_endian((uint8_t *)x, 3)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2199
#define	BIG_ENDIAN_32(x)	ql_change_endian((uint8_t *)x, 4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2200
#define	BIG_ENDIAN_64(x)	ql_change_endian((uint8_t *)x, 8)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2201
#define	BIG_ENDIAN(bp, bytes)	ql_change_endian((uint8_t *)bp, bytes)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2202
#endif /* _LITTLE_ENDIAN */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2203
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2204
/* Big endian machine correction defines. */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2205
#ifdef	_BIG_ENDIAN
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2206
#define	LITTLE_ENDIAN_16(x)		ql_change_endian((uint8_t *)x, 2)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2207
#define	LITTLE_ENDIAN_24(x)		ql_change_endian((uint8_t *)x, 3)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2208
#define	LITTLE_ENDIAN_32(x)		ql_change_endian((uint8_t *)x, 4)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2209
#define	LITTLE_ENDIAN_64(x)		ql_change_endian((uint8_t *)x, 8)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2210
#define	LITTLE_ENDIAN(bp, bytes)	ql_change_endian((uint8_t *)bp, bytes)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2211
#define	BIG_ENDIAN_16(x)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2212
#define	BIG_ENDIAN_24(x)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2213
#define	BIG_ENDIAN_32(x)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2214
#define	BIG_ENDIAN_64(x)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2215
#define	BIG_ENDIAN(bp, bytes)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2216
#endif	/* _BIG_ENDIAN */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2217
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2218
void ql_change_endian(uint8_t *, size_t);
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2219
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2220
/* Flash Address Register 0x88 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2221
#define	FLASH_RDY_FLAG		BIT_31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2222
#define	FLASH_R_FLAG		BIT_30
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2223
#define	FLASH_ERR_FLAG		BIT_29
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2224
#define	FLASH_CONF_ADDR		0x7D0000u
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2225
#define	FLASH_ADDR_MASK		0x7F0000
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2226
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2227
#define	FLASH_WRSR_CMD		0x01
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2228
#define	FLASH_PP_CMD		0x02
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2229
#define	FLASH_READ_CMD		0x03
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2230
#define	FLASH_WRDI_CMD		0x04
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2231
#define	FLASH_RDSR_CMD		0x05
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2232
#define	FLASH_WREN_CMD		0x06
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2233
#define	FLASH_RDID_CMD		0x9F
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2234
#define	FLASH_RES_CMD		0xAB
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2235
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2236
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2237
 * Flash definitions.
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2238
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2239
typedef struct ql_flash_info {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2240
	uint32_t	type;		/* flash type */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2241
	uint32_t	flash_size;	/* length in bytes of flash */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2242
	uint32_t	sec_mask;	/* sector number mask */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2243
	uint8_t		flash_manuf;	/* flash chip manufacturer id */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2244
	uint8_t		flash_id;	/* flash chip id */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2245
	uint8_t		flash_cap;	/* flash chip capacity */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2246
} ql_flash_info_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2247
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2248
/*
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2249
 * Flash Description Table
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2250
 */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2251
#define	FLASH_DESC_VERSION	1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2252
#define	FLASH_DESC_VAILD	0x44494C51	/* "QLID" */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2253
typedef struct flash_desc {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2254
	uint32_t	flash_valid;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2255
	uint16_t	flash_version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2256
	uint16_t	flash_len; /* flash description table length */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2257
	uint16_t	flash_checksum;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2258
	uint16_t	flash_unused;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2259
	uint8_t		flash_model[16];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2260
	uint16_t	flash_manuf;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2261
	uint16_t	flash_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2262
	uint8_t		flash_flag;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2263
	uint8_t		erase_cmd;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2264
	uint8_t		alt_erase_cmd;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2265
	uint8_t		write_enable_cmd;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2266
	uint8_t		write_enable_bits;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2267
	uint8_t		write_statusreg_cmd;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2268
	uint8_t		unprotect_sector_cmd;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2269
	uint8_t		read_manuf_cmd;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2270
	uint32_t	block_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2271
	uint32_t	alt_block_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2272
	uint32_t	flash_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2273
	uint32_t	write_enable_data;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2274
	uint8_t		readid_address_len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2275
	uint8_t		write_disable_bits;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2276
	uint8_t		read_device_id_len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2277
	uint8_t		chip_erase_cmd;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2278
	uint16_t	read_timeout;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2279
	uint8_t		protect_sector_cmd;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2280
	uint8_t		exp_reserved[65];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2281
} flash_desc_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2282
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2283
/* flash manufacturer id's */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2284
#define	AMD_FLASH		0x01	/* AMD / Spansion */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2285
#define	ST_FLASH		0x20	/* ST Electronics */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2286
#define	SST_FLASH		0xbf	/* SST Electronics */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2287
#define	MXIC_FLASH		0xc2	/* Macronix (MXIC) */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2288
#define	ATMEL_FLASH		0x1f	/* Atmel (AT26DF081A) */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2289
#define	WINBOND_FLASH		0xef	/* Winbond (W25X16,W25X32) */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2290
#define	INTEL_FLASH		0x89	/* Intel (QB25F016S33B8) */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2291
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2292
/* flash id defines */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2293
#define	AMD_FLASHID_128K	0x6e	/* 128k AMD flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2294
#define	AMD_FLASHID_512K	0x4f	/* 512k AMD flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2295
#define	AMD_FLASHID_512Kt	0xb9	/* 512k AMD flash chip - top boot blk */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2296
#define	AMD_FLASHID_512Kb	0xba	/* 512k AMD flash chip - btm boot blk */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2297
#define	AMD_FLASHID_1024K	0x38	/* 1 MB AMD flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2298
#define	ST_FLASHID_128K		0x23	/* 128k ST flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2299
#define	ST_FLASHID_512K		0xe3	/* 512k ST flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2300
#define	ST_FLASHID_M25PXX	0x20	/* M25Pxx ST flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2301
#define	SST_FLASHID_128K	0xd5	/* 128k SST flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2302
#define	SST_FLASHID_1024K	0xd8	/* 1 MB SST flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2303
#define	SST_FLASHID_1024K_A	0x80	/* 1 MB SST 25LF080A flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2304
#define	SST_FLASHID_1024K_B	0x8e	/* 1 MB SST 25VF080B flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2305
#define	SST_FLASHID_2048K	0x25	/* 2 MB SST 25VF016B flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2306
#define	MXIC_FLASHID_512K	0x4f	/* 512k MXIC flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2307
#define	MXIC_FLASHID_1024K	0x38	/* 1 MB MXIC flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2308
#define	MXIC_FLASHID_25LXX	0x20	/* 25Lxx MXIC flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2309
#define	ATMEL_FLASHID_1024K	0x45	/* 1 MB ATMEL flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2310
#define	SPAN_FLASHID_2048K	0x02	/* 2 MB Spansion flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2311
#define	WINBOND_FLASHID		0x30	/* Winbond W25Xxx flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2312
#define	INTEL_FLASHID		0x89	/* Intel QB25F016S33B8 flash chip */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2313
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2314
/* flash type defines */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2315
#define	FLASH128	BIT_0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2316
#define	FLASH512	BIT_1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2317
#define	FLASH512S	BIT_2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2318
#define	FLASH1024	BIT_3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2319
#define	FLASH2048	BIT_4
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2320
#define	FLASH4096	BIT_5
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2321
#define	FLASH8192	BIT_6
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2322
#define	FLASH_PAGE	BIT_31
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2323
#define	FLASH_LEGACY	(FLASH128 | FLASH512S)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2324
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2325
#define	FLASH_FIRMWARE_IMAGE_ADDR	0x100000 /* 1M */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2326
typedef struct {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2327
	uint8_t		signature[2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2328
	uint8_t		reserved[0x16];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2329
	uint8_t		dataoffset[2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2330
	uint8_t		pad[6];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2331
} pci_header_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2332
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2333
typedef struct {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2334
	uint8_t		 signature[4];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2335
	uint8_t		 vid[2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2336
	uint8_t		 did[2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2337
	uint8_t		 reserved0[2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2338
	uint8_t		 pcidatalen[2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2339
	uint8_t		 pcidatarev;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2340
	uint8_t		 classcode[3];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2341
	uint8_t		 imagelength[2];	/* In sectors */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2342
	uint8_t		 revisionlevel[2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2343
	uint8_t		 codetype;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2344
	uint8_t		 indicator;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2345
	uint8_t		 reserved1[2];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2346
	uint8_t		 pad[8];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2347
} pci_data_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2348
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2349
#define	PCI_HEADER0		0x55
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2350
#define	PCI_HEADER1		0xAA
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2351
#define	PCI_DATASIG		"PCIR"
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2352
#define	PCI_SECTOR_SIZE		0x200
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2353
#define	PCI_CODE_X86PC		0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2354
#define	PCI_CODE_FCODE		1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2355
#define	PCI_CODE_HPPA		2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2356
#define	PCI_CODE_EFI		3
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2357
#define	PCI_CODE_FW		0xfe
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2358
#define	PCI_IND_LAST_IMAGE	0x80
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2359
#define	SBUS_CODE_FCODE		0xf1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2360
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2361
#define	FBUFSIZE	100
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2362
/* Flash Layout Table Data Structure(FLTDS) */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2363
#define	FLASH_FLTDS_SIGNATURE	0x544C4651	/* "QFLT" */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2364
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2365
typedef struct ql_fltds {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2366
	uint32_t	signature;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2367
	uint16_t	flt_addr_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2368
	uint16_t	flt_addr_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2369
	uint8_t		version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2370
	uint8_t		reserved;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2371
	uint16_t	checksum;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2372
} ql_fltds_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2373
/* Image Layout Table Data Structure(ILTDS) */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2374
#define	FLASH_ILTDS_SIGNATURE	0x4D494651	/* "QFIM" */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2375
typedef struct ql_iltds_header {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2376
	uint32_t	signature;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2377
	uint16_t	table_version;	/* version of this structure */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2378
	uint16_t	length;		/* length of the table */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2379
	uint16_t	checksum;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2380
	uint16_t	number_entries;	/* Number of type/len/size entries */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2381
	uint16_t	reserved;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2382
	uint16_t	version;	/* version of the image */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2383
} ql_iltds_header_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2384
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2385
#define	IMAGE_TABLE_HEADER_LEN	sizeof (ql_iltds_header_t)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2386
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2387
#define	ILTDS_REGION_VERSION_LEN_NA	0	/* version not applicable */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2388
typedef struct ql_iltds_img_entry {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2389
	uint16_t	region_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2390
	uint8_t		region_version_len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2391
	uint8_t		region_version[3];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2392
	uint16_t	offset_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2393
	uint16_t	offset_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2394
	uint16_t	size_lo;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2395
	uint16_t	size_hi;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2396
	uint8_t		swap_mode;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2397
#define	ILTDS_IMG_SWAP_NONE		0	/* no swap needed */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2398
#define	ILTDS_IMG_SWAP_WORD		1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2399
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2400
	uint8_t		card_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2401
#define	ILTDS_IMG_CARD_TYPE_ALL		0	/* apply to all types */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2402
#define	ILTDS_IMG_CARD_TYPE_SR		1	/* apply to SR/fc cards */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2403
#define	ILTDS_IMG_CARD_TYPE_COPPER	2	/* apply to Copper cards */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2404
#define	ILTDS_IMG_CARD_TYPE_MEZZ	4	/* apply to Mezz   cards */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2405
} ql_iltds_img_entry_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2406
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2407
#define	IMAGE_TABLE_ENTRY_LEN	sizeof (ql_iltds_img_entry_t)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2408
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2409
typedef struct ql_iltds_time_stamp {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2410
	uint16_t	region_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2411
	uint8_t		region_version_len;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2412
	uint8_t		region_version[3];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2413
	uint8_t		year;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2414
	uint8_t		month;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2415
	uint8_t		day;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2416
	uint8_t		hour;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2417
	uint8_t		min;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2418
	uint8_t		sec;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2419
	uint32_t	reserved;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2420
} ql_iltds_time_stamp_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2421
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2422
#define	IMAGE_TABLE_TIME_STAMP_LEN	sizeof (ql_iltds_time_stamp_t)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2423
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2424
#define	IMAGE_TABLE_IMAGE_DEFAULT_ENTRIES	5
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2425
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2426
typedef struct ql_iltds_description_header {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2427
	ql_iltds_header_t 	iltds_table_header;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2428
	ql_iltds_img_entry_t	img_entry[IMAGE_TABLE_IMAGE_DEFAULT_ENTRIES];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2429
	ql_iltds_time_stamp_t	time_stamp;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2430
}ql_iltds_description_header_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2431
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2432
#define	ILTDS_DESCRIPTION_HEADERS_LEN	sizeof (ql_iltds_description_header_t)
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2433
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2434
/* flash layout table definition */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2435
/* header */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2436
typedef struct ql_flt_header {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2437
	uint16_t	version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2438
	uint16_t	length;	/* length of the flt table,no table header */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2439
	uint16_t	checksum;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2440
	uint16_t	reserved;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2441
} ql_flt_header_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2442
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2443
/* table entry */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2444
typedef struct ql_flt_entry {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2445
	uint8_t		region;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2446
	uint8_t		reserved0;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2447
	uint8_t		attr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2448
#define	FLT_ATTR_READ_ONLY		BIT_0
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2449
#define	FLT_ATTR_NEED_FW_RESTART	BIT_1
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2450
#define	FLT_ATTR_NEED_DATA_REALOAD	BIT_2
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2451
	uint8_t		reserved1;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2452
	uint32_t	size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2453
	uint32_t	begin_addr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2454
	uint32_t	end_addr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2455
} ql_flt_entry_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2456
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2457
/* flt table */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2458
typedef struct ql_flt {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2459
	ql_flt_header_t	header;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2460
	uint16_t	num_entries;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2461
	ql_flt_entry_t	*ql_flt_entry_ptr;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2462
} ql_flt_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2463
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2464
/* Nic Configuration Table */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2465
#define	FLASH_NIC_CONFIG_SIGNATURE	0x30303038	/* "8000" */
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2466
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2467
enum {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2468
	DATA_TYPE_NONE,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2469
	DATA_TYPE_FACTORY_MAC_ADDR,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2470
	DATA_TYPE_CLP_MAC_ADDR,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2471
	DATA_TYPE_CLP_VLAN_MAC_ADDR,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2472
	DATA_TYPE_RESERVED,
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2473
	DATA_TYPE_LAST_ENTRY
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2474
};
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2475
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2476
typedef struct ql_nic_config {
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2477
	uint32_t	signature;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2478
	uint16_t	version;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2479
	uint16_t	size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2480
	uint16_t	checksum;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2481
	uint16_t	reserved0;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2482
	uint16_t	total_data_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2483
	uint16_t	num_of_entries;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2484
	uint8_t		factory_data_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2485
	uint8_t		factory_data_type_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2486
	uint8_t		factory_MAC[6];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2487
	uint8_t		clp_data_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2488
	uint8_t		clp_data_type_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2489
	uint8_t		clp_MAC[6];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2490
	uint8_t		clp_vlan_data_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2491
	uint8_t		clp_vlan_data_type_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2492
	uint16_t	vlan_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2493
	uint8_t		last_data_type;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2494
	uint8_t		last_data_type_size;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2495
	uint16_t	last_entry;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2496
	uint8_t		reserved1[464];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2497
	uint16_t	subsys_vendor_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2498
	uint16_t	subsys_device_id;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2499
	uint8_t		reserved2[4];
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2500
} ql_nic_config_t;
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2501
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2502
#ifdef __cplusplus
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2503
}
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2504
#endif
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2505
2ff33cc68aa6 PSARC/2009/525 qlge - QLogic PCIe converged NIC driver
Sukumar Swaminathan <Sukumar.Swaminathan@Sun.COM>
parents:
diff changeset
  2506
#endif /* _QLGE_HW_H */