Root/
Source at commit 1164 created 13 years 12 days ago. By azimutz, Add some pauses to nvidia.c and ati.c to help user feedback collection. | |
---|---|
1 | /*␊ |
2 | * IOFWNuDCLPool.h␊ |
3 | * IOFireWireFamily␊ |
4 | *␊ |
5 | * Created by Niels on Fri Mar 07 2003.␊ |
6 | * Copyright (c) 2003 Apple Computer, Inc. All rights reserved.␊ |
7 | *␊ |
8 | *␉$Log: IOFWDCLPool.h,v $␊ |
9 | *␉Revision 1.15 2008/11/14 00:17:12 arulchan␊ |
10 | *␉fix for rdar://5939334␊ |
11 | *␉␊ |
12 | *␉Revision 1.14 2008/03/03 23:31:42 ayanowit␊ |
13 | *␉another gcc-42 fix.␊ |
14 | *␉␊ |
15 | *␉Revision 1.13 2007/01/26 20:52:31 ayanowit␊ |
16 | *␉changes to user-space isoch stuff to support 64-bit apps.␊ |
17 | *␉␊ |
18 | *␉Revision 1.12 2006/02/09 00:21:50 niels␊ |
19 | *␉merge chardonnay branch to tot␊ |
20 | *␉␊ |
21 | *␉Revision 1.11 2005/04/12 20:09:13 niels␊ |
22 | *␉fix memory leak importing NuDCL programs from user space␊ |
23 | *␉␊ |
24 | *␉Revision 1.10.20.2 2006/01/31 04:49:50 collin␊ |
25 | *␉*** empty log message ***␊ |
26 | *␉␊ |
27 | *␉Revision 1.10 2003/11/07 21:24:28 niels␊ |
28 | *␉*** empty log message ***␊ |
29 | *␉␊ |
30 | *␉Revision 1.9 2003/11/07 21:01:18 niels␊ |
31 | *␉*** empty log message ***␊ |
32 | *␉␊ |
33 | *␉Revision 1.8 2003/08/25 08:39:15 niels␊ |
34 | *␉*** empty log message ***␊ |
35 | *␉␊ |
36 | *␉Revision 1.7 2003/08/22 18:15:16 niels␊ |
37 | *␉*** empty log message ***␊ |
38 | *␉␊ |
39 | *␉Revision 1.6 2003/08/15 04:36:55 niels␊ |
40 | *␉*** empty log message ***␊ |
41 | *␉␊ |
42 | *␉Revision 1.5 2003/07/30 05:22:14 niels␊ |
43 | *␉*** empty log message ***␊ |
44 | *␉␊ |
45 | *␉Revision 1.4 2003/07/21 08:48:20 niels␊ |
46 | *␉*** empty log message ***␊ |
47 | *␉␊ |
48 | *␉Revision 1.3 2003/07/21 07:52:13 niels␊ |
49 | *␉*** empty log message ***␊ |
50 | *␉␊ |
51 | *␉Revision 1.2 2003/07/21 06:52:58 niels␊ |
52 | *␉merge isoch to TOT␊ |
53 | *␉␊ |
54 | *␉Revision 1.1.2.3 2003/07/11 18:15:34 niels␊ |
55 | *␉*** empty log message ***␊ |
56 | *␉␊ |
57 | *␉Revision 1.1.2.2 2003/07/09 21:24:00 niels␊ |
58 | *␉*** empty log message ***␊ |
59 | *␉␊ |
60 | *␉Revision 1.1.2.1 2003/07/01 20:54:06 niels␊ |
61 | *␉isoch merge␊ |
62 | *␉␊ |
63 | */␊ |
64 | ␊ |
65 | #import <libkern/c++/OSObject.h>␊ |
66 | #import <libkern/c++/OSArray.h>␊ |
67 | #import <IOKit/IOTypes.h>␊ |
68 | ␊ |
69 | class IOFireWireLink ;␊ |
70 | class IOFWDCL ;␊ |
71 | class IOFWReceiveDCL ;␊ |
72 | class IOFWSendDCL ;␊ |
73 | class IOFWSkipCycleDCL ;␊ |
74 | class IOFireWireUserClient ;␊ |
75 | class IOMemoryDescriptor ;␊ |
76 | class IOMemoryMap ;␊ |
77 | class OSSet;␊ |
78 | ␊ |
79 | /*! @class IOFWDCLPool␊ |
80 | ␉@discussion You should never subclass IOFWDCLPool ␊ |
81 | */␊ |
82 | ␊ |
83 | class IOFWDCLPool : public OSObject␊ |
84 | {␊ |
85 | ␉OSDeclareAbstractStructors( IOFWDCLPool )␊ |
86 | ␊ |
87 | ␉friend class IOFireWireUserClient ;␊ |
88 | ␉friend class IOFWUserLocalIsochPort ;␊ |
89 | ␉␊ |
90 | ␉protected:␊ |
91 | ␉␊ |
92 | ␉␉class Expansion*␉␉fReserved ;␉␉// for class expansion␊ |
93 | ␊ |
94 | ␉␉IOFireWireLink *␉␉fLink ;␊ |
95 | ␉␉UInt8␉␉␉␉␉fCurrentTag ;␊ |
96 | ␉␉UInt8␉␉␉␉␉fCurrentSync ;␊ |
97 | ␉␉OSArray*␉␉␉␉fProgram ;␊ |
98 | ␉␉DCLNuDCLLeader␉␉␉fLeader ;␊ |
99 | ␉␊ |
100 | ␉public:␊ |
101 | ␉␉␊ |
102 | ␉␉// OSObject␊ |
103 | ␉␉␊ |
104 | ␉␉virtual void␉␉␉␉␉␉free() ;␊ |
105 | ␉␉␊ |
106 | ␉␉// me␊ |
107 | ␉␉␊ |
108 | ␉␉virtual bool␉ ␉␉␉␉␉initWithLink ( IOFireWireLink& link, UInt32 capacity ) ;␊ |
109 | ␉␉␊ |
110 | ␉␉virtual void␉␉␉␉␉␉setCurrentTagAndSync ( UInt8 tag, UInt8 sync ) ;␊ |
111 | ␉␉␊ |
112 | ␉␉virtual IOFWReceiveDCL*␉␉␉␉appendReceiveDCL ( ␊ |
113 | ␉␉␉␉␉␉␉␉␉␉␉␉␉OSSet * ␉␉␉␉updateSet, ␊ |
114 | ␉␉␉␉␉␉␉␉␉␉␉␉␉UInt8 ␉␉␉␉␉headerBytes,␊ |
115 | ␉␉␉␉␉␉␉␉␉␉␉␉␉UInt32␉␉␉␉␉rangesCount,␊ |
116 | ␉␉␉␉␉␉␉␉␉␉␉␉␉IOVirtualRange␉␉␉ranges[] ) ;␊ |
117 | ␉␉virtual IOFWSendDCL*␉␉␉␉appendSendDCL ( ␊ |
118 | ␉␉␉␉␉␉␉␉␉␉␉␉␉OSSet * ␉␉␉␉updateSet, ␊ |
119 | ␉␉␉␉␉␉␉␉␉␉␉␉␉UInt32␉␉␉␉␉rangesCount,␊ |
120 | ␉␉␉␉␉␉␉␉␉␉␉␉␉IOVirtualRange␉␉␉ranges[] ) ;␊ |
121 | ␉␉virtual IOFWSkipCycleDCL*␉␉␉appendSkipCycleDCL () ;␊ |
122 | ␉␉virtual const OSArray *␉␉␉␉getProgramRef () const ;␊ |
123 | ␉␉␊ |
124 | ␉protected :␊ |
125 | ␉␊ |
126 | ␉␉IOReturn␉␉␉␉␉␉␉importUserProgram (␊ |
127 | ␉␉␉␉␉␉␉␉␉␉␉␉␉IOMemoryDescriptor *␉userExportDesc,␊ |
128 | ␉␉␉␉␉␉␉␉␉␉␉␉␉unsigned␉␉␉␉bufferRangeCount,␊ |
129 | ␉␉␉␉␉␉␉␉␉␉␉␉␉IOAddressRange␉␉␉bufferRanges[],␊ |
130 | ␉␉␉␉␉␉␉␉␉␉␉␉␉IOMemoryMap *␉␉␉bufferMap ) ;␊ |
131 | ␉␉IOReturn␉␉␉␉␉␉␉importUserDCL(␊ |
132 | ␉␉␉␉␉␉␉␉␉␉␉␉␉IOFWDCL *␉␉␉␉dcl,␊ |
133 | ␉␉␉␉␉␉␉␉␉␉␉␉␉void * ␉␉␉␉␉importData,␊ |
134 | ␉␉␉␉␉␉␉␉␉␉␉␉␉IOByteCount &␉␉␉dataSize,␊ |
135 | ␉␉␉␉␉␉␉␉␉␉␉␉␉IOMemoryMap *␉␉␉bufferMap ) ;␊ |
136 | ␉␉␉␉␉␉␉␉␉␉␉␉␉␊ |
137 | ␊ |
138 | ␉protected :␊ |
139 | ␉␊ |
140 | ␉␉virtual IOFWReceiveDCL *␉␉␉allocReceiveDCL () = 0 ;␊ |
141 | ␉␉virtual IOFWSendDCL *␉␉␉␉allocSendDCL () = 0 ;␊ |
142 | ␉␉virtual IOFWSkipCycleDCL *␉␉␉allocSkipCycleDCL () = 0 ;␊ |
143 | ␊ |
144 | ␉private :␊ |
145 | ␉␊ |
146 | ␉␉void␉␉␉␉␉␉␉␉appendDCL( IOFWDCL * dcl ) ;␊ |
147 | ␊ |
148 | ␉public :␊ |
149 | ␉␊ |
150 | ␉␉DCLCommand *␉␉␉␉␉␉getProgram() ;␊ |
151 | ␉␉␉␉␉␉␉␉␉␉␉␉␉␊ |
152 | OSMetaClassDeclareReservedUnused ( IOFWDCLPool, 0);␊ |
153 | OSMetaClassDeclareReservedUnused ( IOFWDCLPool, 1);␊ |
154 | OSMetaClassDeclareReservedUnused ( IOFWDCLPool, 2);␊ |
155 | OSMetaClassDeclareReservedUnused ( IOFWDCLPool, 3);␊ |
156 | OSMetaClassDeclareReservedUnused ( IOFWDCLPool, 4);␊ |
157 | OSMetaClassDeclareReservedUnused ( IOFWDCLPool, 5);␊ |
158 | OSMetaClassDeclareReservedUnused ( IOFWDCLPool, 6);␊ |
159 | OSMetaClassDeclareReservedUnused ( IOFWDCLPool, 7);␉␉␊ |
160 | } ;␊ |
161 |