File: psycho.h

package info (click to toggle)
kernel-source-sparc-2.2.1 2.2.1
  • links: PTS
  • area: main
  • in suites: slink
  • size: 62,800 kB
  • ctags: 188,320
  • sloc: ansic: 1,114,164; asm: 49,922; makefile: 8,272; sh: 1,831; perl: 1,584; tcl: 409; lisp: 218; cpp: 186; awk: 133; sed: 72
file content (352 lines) | stat: -rw-r--r-- 16,686 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
/* $Id: psycho.h,v 1.3 1998/03/15 13:24:28 ecd Exp $
 * psycho.h: UltraSparc AX specific PCI definitions.
 *
 * Copyright (C) 1997 Eddie C. Dost (ecd@skynet.be)
 */

#ifndef __SPARC64_PSYCHO_H
#define __SPARC64_PSYCHO_H

#include <linux/types.h>

/* Ultra AX PSYCHO Register Set, one per controller probed. */
struct psycho_regs {
/*0x0000*/	u64	upa_id;		/* PSYCHO UPA Port ID Register	*/
/*0x0008*/	u64	upa_cfg;	/* PSYCHO UPA Config Register	*/
/*0x0010*/	u64	control;	/* PSYCHO Control Register	*/
/*0x0018*/	u64	__pad0;
/*0x0020*/	u64	ecc_control;	/* ECC Control Register		*/
/*0x0028*/	u64	__pad1;

		/* Uncorrectable Error Fault Registers */
/*0x0030*/	u64	ue_afsr;	/* UE Async Fault Status	*/
/*0x0038*/	u64	ue_afar;	/* UE Async Fault Address	*/

		/* Correctable Error Fault Registers */
/*0x0040*/	u64	ce_afsr;	/* CE Async Fault Status	*/
/*0x0048*/	u64	ce_afar;	/* CE Async Fault Address	*/

		u64	__pad2[0x16];

		/* Performance Monitoring Registers */
/*0x0100*/	u64	pmon_control;
/*0x0108*/	u64	pmon_counter;

		u64	__pad3[0x1e];

		/* PCI Bus IOMMU lives here */
/*0x0200*/	u64	iommu_control;	/* IOMMU Control		*/
/*0x0208*/	u64	iommu_tsbbase;	/* IOMMU TSB Base		*/
/*0x0210*/	u64	iommu_flush;	/* IOMMU Flush Register		*/

		u64	__pad4[0x13d];

		/* Interrupt mapping/control registers */
/*0x0c00*/	u64	imap_a_slot0;	/* PCI A Slot 0 Int Mapping	*/
/*0x0c08*/	u64	imap_a_slot1;	/* PCI A Slot 1 Int Mapping	*/
/*0x0c10*/	u64	imap_a_slot2;	/* PCI A Slot 2 Int Mapping (IIi only)*/
/*0x0c18*/	u64	imap_a_slot3;	/* PCI A Slot 3 Int Mapping (IIi only)*/

/*0x0c20*/	u64	imap_b_slot0;	/* PCI B Slot 0 Int Mapping	*/
/*0x0c28*/	u64	imap_b_slot1;	/* PCI B Slot 1 Int Mapping	*/
/*0x0c30*/	u64	imap_b_slot2;	/* PCI B Slot 2 Int Mapping	*/
/*0x0c38*/	u64	imap_b_slot3;	/* PCI B Slot 3 Int Mapping	*/

		u64	__pad6[0x78];

/*0x1000*/	u64	imap_scsi;	/* SCSI Int Mapping		*/
/*0x1008*/	u64	imap_eth;	/* Ethernet Int Mapping		*/
/*0x1010*/	u64	imap_bpp;	/* Parallel Port Int Mapping	*/
/*0x1018*/	u64	imap_au_rec;	/* Audio Record Int Mapping	*/
/*0x1020*/	u64	imap_au_play;	/* Audio Playback Int Mapping	*/
/*0x1028*/	u64	imap_pfail;	/* Power Fail Int Mapping	*/
/*0x1030*/	u64	imap_kms;	/* Kbd/Mouse/Ser Int Mapping	*/
/*0x1038*/	u64	imap_flpy;	/* Floppy Int Mapping		*/
/*0x1040*/	u64	imap_shw;	/* Spare HW Int Mapping		*/
/*0x1048*/	u64	imap_kbd;	/* Kbd Only Int Mapping		*/
/*0x1050*/	u64	imap_ms;	/* Mouse Only Int Mapping	*/
/*0x1058*/	u64	imap_ser;	/* Serial Only Int Mapping	*/
/*0x1060*/	u64	imap_tim0;	/* Timer 0 Int Mapping		*/
/*0x1068*/	u64	imap_tim1;	/* Timer 1 Int Mapping		*/
/*0x1070*/	u64	imap_ue;	/* UE Int Mapping		*/
/*0x1078*/	u64	imap_ce;	/* CE Int Mapping		*/
/*0x1080*/	u64	imap_a_err;	/* PCI A Err Int Mapping	*/
/*0x1088*/	u64	imap_b_err;	/* PCI B Err Int Mapping	*/
/*0x1090*/	u64	imap_pmgmt;	/* Power Mgmt Int Mapping	*/
/*0x1098*/	u64	imap_gfx;	/* OB Graphics Int Mapping	*/
/*0x10a0*/	u64	imap_eupa;	/* UPA Expansion Int Mapping	*/

		u64	__pad7[0x6b];

		/* Interrupt Clear Registers */
/*0x1400*/	u64	iclr_a_slot0[4];	/* PCI A Slot 0 Clear Int Reg */
/*0x1420*/	u64	iclr_a_slot1[4];	/* PCI A Slot 1 Clear Int Reg */
/*0x1440*/	u64	iclr_a_slot2[4];	/* PCI A Slot 2 Clear Int Reg */
/*0x1460*/	u64	iclr_a_slot3[4];	/* PCI A Slot 3 Clear Int Reg */

/*0x1480*/	u64	iclr_b_slot0[4];	/* PCI B Slot 0 Clear Int Reg */
/*0x14a0*/	u64	iclr_b_slot1[4];	/* PCI B Slot 1 Clear Int Reg */
/*0x14c0*/	u64	iclr_b_slot2[4];	/* PCI B Slot 2 Clear Int Reg */
/*0x14e0*/	u64	iclr_b_slot3[4];	/* PCI B Slot 3 Clear Int Reg */

		u64	__pad9[0x60];

/*0x1800*/	u64	iclr_scsi;
/*0x1808*/	u64	iclr_eth;
/*0x1810*/	u64	iclr_bpp;
/*0x1818*/	u64	iclr_au_rec;
/*0x1820*/	u64	iclr_au_play;
/*0x1828*/	u64	iclr_pfail;
/*0x1830*/	u64	iclr_kms;
/*0x1838*/	u64	iclr_flpy;
/*0x1840*/	u64	iclr_shw;
/*0x1848*/	u64	iclr_kbd;
/*0x1850*/	u64	iclr_ms;
/*0x1858*/	u64	iclr_ser;
/*0x1860*/	u64	iclr_tim0;
/*0x1868*/	u64	iclr_tim1;
/*0x1870*/	u64	iclr_ue;
/*0x1878*/	u64	iclr_ce;
/*0x1880*/	u64	iclr_a_err;
/*0x1888*/	u64	iclr_b_err;
/*0x1890*/	u64	iclr_pmgmt;

		u64	__pad10[0x2d];

		/* Interrupt Retry Timer. */
/*0x1a00*/	u64	irq_retry;

		u64	__pad11[0x3f];

		/* Counters/Timers */
/*0x1c00*/	u64	tim0_cnt;
/*0x1c08*/	u64	tim0_lim;
/*0x1c10*/	u64	tim1_cnt;
/*0x1c18*/	u64	tim1_lim;
/*0x1c20*/	u64	pci_dma_wsync;	/* PCI DMA Write Sync Register (IIi) */

		u64	__pad12[0x7b];

		/* PCI Bus A Registers */
/*0x2000*/	u64	pci_a_control;	/* PCI Bus A Control Register	*/
/*0x2008*/	u64	__pad13;
/*0x2010*/	u64	pci_a_afsr;	/* PCI Bus A Async Fault Status	*/
/*0x2018*/	u64	pci_a_afar;	/* PCI Bus A Async Fault Address*/
/*0x2020*/	u64	pci_a_diag;	/* PCI Bus A Diag Register	*/
/*0x2028*/	u64	pci_tasr;	/* PCI Target Address Space Reg (IIi) */

		u64	__pad14[0xfa];

		/* PCI Bus A/IOMMU Streaming Buffer Registers */
/*0x2800*/	u64	sbuf_a_control;	/* StrBuffer Control		*/
/*0x2808*/	u64	sbuf_a_pflush;	/* StrBuffer Page Flush		*/
/*0x2810*/	u64	sbuf_a_fsync;	/* StrBuffer Flush Sync Reg	*/

		u64	__pad15[0x2fd];

		/* PCI Bus B Registers */
/*0x4000*/	u64	pci_b_control;	/* PCI Bus B Control Register	*/
/*0x4008*/	u64	__pad16;
/*0x4010*/	u64	pci_b_afsr;	/* PCI Bus B Async Fault Status	*/
/*0x4018*/	u64	pci_b_afar;	/* PCI Bus B Async Fault Address*/
/*0x4020*/	u64	pci_b_diag;	/* PCI Bus B Diag Register	*/

		u64	__pad17[0x7b];

		/* IOMMU diagnostic things */
/*0x4400*/	u64	iommu_vdiag;	/* VADDR Diagnostic Register	*/
/*0x4408*/	u64	iommu_tcompare;	/* IOMMU TLB Tag Compare	*/

		u64	__pad18[0x7e];

		/* PCI Bus B/IOMMU Streaming Buffer Registers */
/*0x4800*/	u64	sbuf_b_control;	/* StrBuffer Control		*/
/*0x4808*/	u64	sbuf_b_pflush;	/* StrBuffer Page Flush		*/
/*0x4810*/	u64	sbuf_b_fsync;	/* StrBuffer Flush Sync Reg	*/

		u64	__pad19[0xafd];

		/* DMA Scoreboard Diagnostic Registers */
/*0xa000*/	u64	dscore_reg0;	/* DMA Scoreboard Diag Reg 0	*/
/*0xa008*/	u64	dscore_reg1;	/* DMA Scoreboard Diag Reg 1	*/

		u64	__pad20[0x9e];

		/* More IOMMU diagnostic things */
/*0xa500*/	u64	iommu_lru[16];	/* IOMMU LRU Queue Diag		*/
/*0xa580*/	u64	iommu_tag[16];	/* IOMMU TLB Tag Diag		*/
/*0xa600*/	u64	iommu_data[16];	/* IOMMU TLB Data RAM Diag	*/

		u64	__pad21[0x30];

		/* Interrupt State Diagnostics */
/*0xa800*/	u64	pci_istate;
/*0xa808*/	u64	obio_istate;

		u64	__pad22[0xfe];

		/* Streaming Buffer A Diagnostic Area */
/*0xb000*/	u64	sbuf_a_data[128]; /* StrBuffer Data Ram Diag	*/
/*0xb400*/	u64	sbuf_a_errs[128]; /* StrBuffer Error Status Diag*/
/*0xb800*/	u64	sbuf_a_ptag[16]; /* StrBuffer Page Tag Diag	*/
/*0xb880*/	u64	__pad23[16];
/*0xb900*/	u64	sbuf_a_ltag[16]; /* StrBuffer Line Tag Diag	*/

		u64	__pad24[0xd0];

		/* Streaming Buffer B Diagnostic Area */
/*0xc000*/	u64	sbuf_b_data[128]; /* StrBuffer Data Ram Diag	*/
/*0xc400*/	u64	sbuf_b_errs[128]; /* StrBuffer Error Status Diag*/
/*0xc800*/	u64	sbuf_b_ptag[16]; /* StrBuffer Page Tag Diag	*/
/*0xc880*/	u64	__pad25[16];
/*0xc900*/	u64	sbuf_b_ltag[16]; /* StrBuffer Line Tag Diag	*/
};

/* PSYCHO UPA Port ID */
#define PSYCHO_UPPID_FESC	0xff00000000000000 /* FCode escape, 0xfc           */
#define PSYCHO_UPPID_RESV1	0x00fffff800000000 /* Reserved                     */
#define PSYCHO_UPPID_ENV	0x0000000400000000 /* Cannot generate ECC          */
#define PSYCHO_UPPID_ORD	0x0000000200000000 /* One Outstanding Read         */
#define PSYCHO_UPPID_RESV2	0x0000000180000000 /* Reserved                     */
#define PSYCHO_UPPID_PDQ	0x000000007e000000 /* Data Queue size              */
#define PSYCHO_UPPID_PRQ	0x0000000001e00000 /* Request Queue size           */
#define PSYCHO_UPPID_UCAP	0x00000000001f0000 /* UPA Capabilities             */
#define PSYCHO_UPPID_JEDEC	0x000000000000ffff /* JEDEC ID for PSYCHO          */

/* PSYCHO UPA Configuration Register */
#define PSYCHO_UPCFG_RESV	0xffffffffffffff00 /* Reserved                     */
#define PSYCHO_UPCFG_SCIQ1	0x00000000000000f0 /* Unused, always zero          */
#define PSYCHO_UPCFG_SCIQ2	0x000000000000000f /* Requests Queue size 0x2 	   */

/* PSYCHO Control Register */
#define PSYCHO_CONTROL_IMPL	0xf000000000000000 /* Implementation of this PSYCHO*/
#define PSYCHO_CONTROL_VER	0x0f00000000000000 /* Version of this PSYCHO       */
#define PSYCHO_CONTROL_MID	0x00f8000000000000 /* UPA Module ID of PSYCHO      */
#define PSYCHO_CONTROL_IGN	0x0007c00000000000 /* Interrupt Group Number       */
#define PSYCHO_CONTROL_RESV     0x00003ffffffffff0 /* Reserved                     */
#define PSYCHO_CONTROL_APCKEN	0x0000000000000008 /* Address Parity Check Enable  */
#define PSYCHO_CONTROL_APERR	0x0000000000000004 /* Incoming System Addr Parerr  */
#define PSYCHO_CONTROL_IAP	0x0000000000000002 /* Invert UPA Parity            */
#define PSYCHO_CONTROL_MODE	0x0000000000000001 /* PSYCHO clock mode            */

/* PSYCHO ECC Control Register */
#define PSYCHO_ECNTRL_ECCEN	0x8000000000000000 /* Enable ECC Checking	   */
#define PSYCHO_ECNTRL_UEEN	0x4000000000000000 /* Enable UE Interrupts         */
#define PSYCHO_ECNTRL_CEEN	0x2000000000000000 /* Enable CE Interrupts         */

/* Uncorrectable Error AFSR, AFAR holds low 40bits of faulting physical address. */
#define PSYCHO_UEAFSR_PPIO	0x8000000000000000 /* Primary PIO is cause         */
#define PSYCHO_UEAFSR_PDRD	0x4000000000000000 /* Primary DVMA read is cause   */
#define PSYCHO_UEAFSR_PDWR	0x2000000000000000 /* Primary DVMA write is cause  */
#define PSYCHO_UEAFSR_SPIO	0x1000000000000000 /* Secondary PIO is cause       */
#define PSYCHO_UEAFSR_SDRD	0x0800000000000000 /* Secondary DVMA read is cause */
#define PSYCHO_UEAFSR_SDWR	0x0400000000000000 /* Secondary DVMA write is cause*/
#define PSYCHO_UEAFSR_RESV1	0x03ff000000000000 /* Reserved                     */
#define PSYCHO_UEAFSR_BMSK	0x0000ffff00000000 /* Bytemask of failed transfer  */
#define PSYCHO_UEAFSR_DOFF	0x00000000e0000000 /* Doubleword Offset            */
#define PSYCHO_UEAFSR_MID	0x000000001f000000 /* UPA MID causing the fault    */
#define PSYCHO_UEAFSR_BLK	0x0000000000800000 /* Trans was block operation    */
#define PSYCHO_UEAFSR_RESV2	0x00000000007fffff /* Reserved                     */

/* Correctable Error AFSR, AFAR holds low 40bits of faulting physical address. */
#define PSYCHO_CEAFSR_PPIO	0x8000000000000000 /* Primary PIO is cause         */
#define PSYCHO_CEAFSR_PDRD	0x4000000000000000 /* Primary DVMA read is cause   */
#define PSYCHO_CEAFSR_PDWR	0x2000000000000000 /* Primary DVMA write is cause  */
#define PSYCHO_CEAFSR_SPIO	0x1000000000000000 /* Secondary PIO is cause       */
#define PSYCHO_CEAFSR_SDRD	0x0800000000000000 /* Secondary DVMA read is cause */
#define PSYCHO_CEAFSR_SDWR	0x0400000000000000 /* Secondary DVMA write is cause*/
#define PSYCHO_CEAFSR_RESV1	0x0300000000000000 /* Reserved                     */
#define PSYCHO_CEAFSR_ESYND	0x00ff000000000000 /* Syndrome Bits                */
#define PSYCHO_UEAFSR_SIZE	0x0000ffff00000000 /* Bytemask of failed transfer  */
#define PSYCHO_CEAFSR_DOFF	0x00000000e0000000 /* Double Offset                */
#define PSYCHO_CEAFSR_MID	0x000000001f000000 /* UPA MID causing the fault    */
#define PSYCHO_CEAFSR_BLK	0x0000000000800000 /* Trans was block operation    */
#define PSYCHO_CEAFSR_RESV2	0x00000000007fffff /* Reserved                     */

/* DMA Scoreboard Diagnostic Register(s) */
#define PSYCHO_DSCORE_VALID	0x8000000000000000 /* Entry is valid               */
#define PSYCHO_DSCORE_C		0x4000000000000000 /* Transaction cacheable        */
#define PSYCHO_DSCORE_READ	0x2000000000000000 /* Transaction was a read       */
#define PSYCHO_DSCORE_TAG	0x1f00000000000000 /* Transaction ID               */
#define PSYCHO_DSCORE_ADDR	0x00fffffffff80000 /* Transaction PADDR            */
#define PSYCHO_DSCORE_BMSK	0x000000000007fff8 /* Bytemask of pending transfer */
#define PSYCHO_DSCORE_SRC	0x0000000000000007 /* Transaction source           */

/* PSYCHO PCI Control Register */
#define PSYCHO_PCICTRL_RESV1	0xfffffff000000000 /* Reserved                     */
#define PSYCHO_PCICTRL_SBH_ERR	0x0000000800000000 /* Streaming byte hole error    */
#define PSYCHO_PCICTRL_SERR	0x0000000400000000 /* SERR signal asserted         */
#define PSYCHO_PCICTRL_SPEED	0x0000000200000000 /* PCI speed (1 is U2P clock)   */
#define PSYCHO_PCICTRL_RESV2	0x00000001ffc00000 /* Reserved                     */
#define PSYCHO_PCICTRL_ARB_PARK	0x0000000000200000 /* PCI arbitration parking      */
#define PSYCHO_PCICTRL_RESV3	0x00000000001ff800 /* Reserved                     */
#define PSYCHO_PCICTRL_SBH_INT	0x0000000000000400 /* Streaming byte hole int enab */
#define PSYCHO_PCICTRL_WEN	0x0000000000000200 /* Power Mgmt Wake Enable       */
#define PSYCHO_PCICTRL_EEN	0x0000000000000100 /* PCI Error Interrupt Enable   */
#define PSYCHO_PCICTRL_RESV4	0x00000000000000c0 /* Reserved                     */
#define PSYCHO_PCICTRL_AEN	0x000000000000003f /* PCI DVMA Arbitration Enable  */

/* PSYCHO PCI AFSR, AFAR holds low 40 bits of physical address causing the fault. */
#define PSYCHO_PCIAFSR_PMA	0x8000000000000000 /* Primary Master Abort Error   */
#define PSYCHO_PCIAFSR_PTA	0x4000000000000000 /* Primary Target Abort Error   */
#define PSYCHO_PCIAFSR_PRTRY	0x2000000000000000 /* Primary Excessive Retries    */
#define PSYCHO_PCIAFSR_PPERR	0x1000000000000000 /* Primary Parity Error         */
#define PSYCHO_PCIAFSR_SMA	0x0800000000000000 /* Secondary Master Abort Error */
#define PSYCHO_PCIAFSR_STA	0x0400000000000000 /* Secondary Target Abort Error */
#define PSYCHO_PCIAFSR_SRTRY	0x0200000000000000 /* Secondary Excessive Retries  */
#define PSYCHO_PCIAFSR_SPERR	0x0100000000000000 /* Secondary Parity Error       */
#define PSYCHO_PCIAFSR_RESV1	0x00ff000000000000 /* Reserved                     */
#define PSYCHO_PCIAFSR_SIZE	0x0000ffff00000000 /* Bytemask of failed transfer  */
#define PSYCHO_PCIAFSR_BLK	0x0000000080000000 /* Trans was block operation    */
#define PSYCHO_PCIAFSR_RESV2	0x0000000040000000 /* Reserved                     */
#define PSYCHO_PCIAFSR_MID	0x000000003e000000 /* MID causing the error        */
#define PSYCHO_PCIAFSR_RESV3	0x0000000001ffffff /* Reserved                     */

/* IOMMU things defined fully in asm-sparc64/iommu.h */

/* Streaming Buffer Control Register */
#define PSYCHO_SBUFCTRL_RESV	0xffffffffffffff80 /* Reserved                     */
#define PSYCHO_SBUFCTRL_LRU_LP	0x0000000000000070 /* LRU Lock Pointer             */
#define PSYCHO_SBUFCTRL_LRU_LE	0x0000000000000008 /* LRU Lock Enable              */
#define PSYCHO_SBUFCTRL_RR_DIS	0x0000000000000004 /* Rerun Disable                */
#define PSYCHO_SBUFCTRL_DE	0x0000000000000002 /* Diag Mode Enable             */
#define PSYCHO_SBUFCTRL_SB_EN	0x0000000000000001 /* Streaming Buffer Enable      */

/* Streaming Buffer Page Invalidate/Flush Register */
#define PSYCHO_SBUFFLUSH_ADDR	0x00000000ffffe000 /* DVMA Page to be flushed      */
#define PSYCHO_SBUFFLUSH_RESV	0x0000000000001fff /* Ignored bits                 */

/* Streaming Buffer Flush Synchronization Register */
#define PSYCHO_SBUFSYNC_ADDR	0x000001ffffffffc0 /* Physical address to update   */
#define PSYCHO_SBUFSYNC_RESV	0x000000000000003f /* Ignored bits                 */

/* PSYCHO Interrupt mapping register(s). */
#define PSYCHO_IMAP_RESV1	0xffffffff00000000 /* Reserved                     */
#define PSYCHO_IMAP_VALID	0x0000000080000000 /* This enables delivery.	   */
#define PSYCHO_IMAP_TID		0x000000007c000000 /* Target ID (MID to send it to)*/
#define PSYCHO_IMAP_RESV2	0x0000000003fff800 /* Reserved 			   */
#define PSYCHO_IMAP_IGN		0x00000000000007c0 /* Interrupt Group Number.	   */
#define PSYCHO_IMAP_INO		0x000000000000003f /* Interrupt Number Offset.	   */
#define PSYCHO_IMAP_INR		0x00000000000007ff /* Interrupt # (Gfx/UPA_slave)  */

/* PSYCHO Interrupt clear pseudo register(s). */
#define PSYCHO_ICLR_RESV1 	0xfffffffffffffff0 /* Reserved			   */
#define PSYCHO_ICLR_IDLE	0x0000000000000000 /* Transition to idle state.	   */
#define PSYCHO_ICLR_TRANSMIT	0x0000000000000001 /* Transition to transmit state */
#define PSYCHO_ICLR_RESV2	0x0000000000000002 /* Reserved.			   */
#define PSYCHO_ICLR_PENDING	0x0000000000000003 /* Transition to pending state. */

/* PSYCHO Interrupt Retry Timer register. */
#define PSYCHO_IRETRY_LIMIT	0x00000000000fffff /* The retry interval.	   */

/* PSYCHO Interrupt State registers. XXX fields to be documented later */

/* PSYCHO Counter register. XXX fields to be documented later */

/* PSYCHO Limit register. XXX fields to be documented later */

/* PSYCHO Performance Monitor Control register. XXX fields to be documented later */

/* PSYCHO Performance Monitor Counter register. XXX fields to be documented later */

#endif /* !(__SPARC64_PSYCHO_H) */