1: /* @(#)tmscpreg.h 7.1 (Berkeley) 6/5/86 */
2:
3: /* @(#)tmscpreg.h 1.1 11/2/84 84/09/25 */
4:
5: /****************************************************************
6: * *
7: * Licensed from Digital Equipment Corporation *
8: * Copyright (c) *
9: * Digital Equipment Corporation *
10: * Maynard, Massachusetts *
11: * 1985, 1986 *
12: * All rights reserved. *
13: * *
14: * The Information in this software is subject to change *
15: * without notice and should not be construed as a commitment *
16: * by Digital Equipment Corporation. Digital makes no *
17: * representations about the suitability of this software for *
18: * any purpose. It is supplied "As Is" without expressed or *
19: * implied warranty. *
20: * *
21: * If the Regents of the University of California or its *
22: * licensees modify the software in a manner creating *
23: * diriviative copyright rights, appropriate copyright *
24: * legends may be placed on the drivative work in addition *
25: * to that set forth above. *
26: * *
27: ****************************************************************/
28: /*
29: * TMSCP registers and structures
30: */
31:
32: struct tmscpdevice {
33: short tmscpip; /* initialization and polling */
34: short tmscpsa; /* status and address */
35: };
36:
37: #define TMSCP_ERR 0100000 /* error bit */
38: #define TMSCP_STEP4 0040000 /* step 4 has started */
39: #define TMSCP_STEP3 0020000 /* step 3 has started */
40: #define TMSCP_STEP2 0010000 /* step 2 has started */
41: #define TMSCP_STEP1 0004000 /* step 1 has started */
42: #define TMSCP_NV 0002000 /* no host settable interrupt vector */
43: #define TMSCP_QB 0001000 /* controller supports Q22 bus */
44: #define TMSCP_DI 0000400 /* controller implements diagnostics */
45: #define TMSCP_OD 0000200 /* port allows odd host addr's in the buffer descriptor */
46: #define TMSCP_IE 0000200 /* interrupt enable */
47: #define TMSCP_MP 0000100 /* port supports address mapping */
48: #define TMSCP_LF 0000002 /* host requests last fail response packet */
49: #define TMSCP_PI 0000001 /* host requests adapter purge interrupts */
50: #define TMSCP_GO 0000001 /* start operation, after init */
51:
52:
53: /*
54: * TMSCP Communications Area
55: */
56:
57: struct tmscpca {
58: short ca_xxx1; /* unused */
59: char ca_xxx2; /* unused */
60: char ca_bdp; /* BDP to purge */
61: short ca_cmdint; /* command queue transition interrupt flag */
62: short ca_rspint; /* response queue transition interrupt flag */
63: long ca_rspdsc[NRSP];/* response descriptors */
64: long ca_cmddsc[NCMD];/* command descriptors */
65: };
66:
67: #define ca_ringbase ca_rspdsc[0]
68:
69: #define TMSCP_OWN 0x80000000 /* port owns this descriptor (else host
70: owns it) */
71: #define TMSCP_INT 0x40000000 /* allow interrupt on ring transition */
72:
73: #define TMSCP_MAP 0x80000000 /* modifier for mapped buffer descriptors */
74:
75: /*
76: * TMSCP packet info (same as MSCP)
77: */
78: struct {
79: short tmscp_msglen; /* length of MSCP packet */
80: char tmscp_credits; /* low 4 bits: credits, high 4 bits: msgtype */
81: char tmscp_vcid; /* virtual circuit id (connection id) */
82: };
Defined struct's
defined in line
78;
never used
tmscpdevice
defined in line
32; used 36 times
- in /usr/src/sys/stand/tmscp.c line
73(2),
105(2)
- in /usr/src/sys/vaxuba/tmscp.c line
286(2),
294(2),
328(2),
342(2),
350(2),
445(4),
682(2),
725(2),
941(2),
948(2),
1003(2),
1033(2),
1757(2),
1776(2),
1846(2)
Defined macros
TMSCP_ERR
defined in line
37; used 17 times
- in /usr/src/sys/stand/tmscp.c line
120,
221
- in /usr/src/sys/vaxuba/tmscp.c line
315,
373,
617,
977-980(2),
1036,
1061,
1103,
1285,
1788-1797(5),
1856
TMSCP_OWN
defined in line
69; used 17 times
- in /usr/src/sys/stand/tmscp.c line
214-216(2),
239
- in /usr/src/sys/vaxuba/tmscp.c line
397,
565,
596,
642-645(2),
744,
913,
1060,
1102,
1259,
1299-1302(2),
1854-1855(2)
Usage of this include