Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

312 lines
12 KiB

  1. <html xmlns:o="urn:schemas-microsoft-com:office:office"
  2. xmlns:w="urn:schemas-microsoft-com:office:word"
  3. xmlns="http://www.w3.org/TR/REC-html40">
  4. <head>
  5. <meta http-equiv=Content-Type content="text/html; charset=us-ascii">
  6. <meta name=ProgId content=Word.Document>
  7. <meta name=Generator content="Microsoft Word 10">
  8. <meta name=Originator content="Microsoft Word 10">
  9. <link rel=File-List href="uagp35_files/filelist.xml">
  10. <title>AGP440</title>
  11. <!--[if gte mso 9]><xml>
  12. <w:WordDocument>
  13. <w:SpellingState>Clean</w:SpellingState>
  14. <w:GrammarState>Clean</w:GrammarState>
  15. <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
  16. </w:WordDocument>
  17. </xml><![endif]-->
  18. <style>
  19. <!--
  20. /* Font Definitions */
  21. @font-face
  22. {font-family:Verdana;
  23. panose-1:2 11 6 4 3 5 4 4 2 4;
  24. mso-font-charset:0;
  25. mso-generic-font-family:swiss;
  26. mso-font-pitch:variable;
  27. mso-font-signature:536871559 0 0 0 415 0;}
  28. @font-face
  29. {font-family:"MS Sans Serif";
  30. panose-1:0 0 0 0 0 0 0 0 0 0;
  31. mso-font-alt:"Times New Roman";
  32. mso-font-charset:0;
  33. mso-generic-font-family:roman;
  34. mso-font-format:other;
  35. mso-font-pitch:auto;
  36. mso-font-signature:0 0 0 0 0 0;}
  37. /* Style Definitions */
  38. p.MsoNormal, li.MsoNormal, div.MsoNormal
  39. {mso-style-parent:"";
  40. margin:0in;
  41. margin-bottom:.0001pt;
  42. mso-pagination:widow-orphan;
  43. font-size:12.0pt;
  44. font-family:"Times New Roman";
  45. mso-fareast-font-family:"Times New Roman";}
  46. h2
  47. {mso-margin-top-alt:auto;
  48. margin-right:0in;
  49. mso-margin-bottom-alt:auto;
  50. margin-left:0in;
  51. mso-pagination:widow-orphan;
  52. mso-outline-level:2;
  53. font-size:18.0pt;
  54. font-family:"Times New Roman";
  55. font-weight:bold;}
  56. h3
  57. {mso-margin-top-alt:auto;
  58. margin-right:0in;
  59. mso-margin-bottom-alt:auto;
  60. margin-left:0in;
  61. mso-pagination:widow-orphan;
  62. mso-outline-level:3;
  63. font-size:13.5pt;
  64. font-family:"Times New Roman";
  65. font-weight:bold;}
  66. h4
  67. {mso-margin-top-alt:auto;
  68. margin-right:0in;
  69. mso-margin-bottom-alt:auto;
  70. margin-left:0in;
  71. mso-pagination:widow-orphan;
  72. mso-outline-level:4;
  73. font-size:12.0pt;
  74. font-family:"Times New Roman";
  75. font-weight:bold;}
  76. a:link, span.MsoHyperlink
  77. {color:blue;
  78. text-decoration:underline;
  79. text-underline:single;}
  80. a:visited, span.MsoHyperlinkFollowed
  81. {color:blue;
  82. text-decoration:underline;
  83. text-underline:single;}
  84. p
  85. {mso-margin-top-alt:auto;
  86. margin-right:0in;
  87. mso-margin-bottom-alt:auto;
  88. margin-left:0in;
  89. mso-pagination:widow-orphan;
  90. font-size:12.0pt;
  91. font-family:"Times New Roman";
  92. mso-fareast-font-family:"Times New Roman";}
  93. pre
  94. {margin:0in;
  95. margin-bottom:.0001pt;
  96. mso-pagination:widow-orphan;
  97. tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;
  98. font-size:10.0pt;
  99. font-family:"Courier New";
  100. mso-fareast-font-family:"Times New Roman";}
  101. span.SpellE
  102. {mso-style-name:"";
  103. mso-spl-e:yes;}
  104. span.GramE
  105. {mso-style-name:"";
  106. mso-gram-e:yes;}
  107. @page Section1
  108. {size:8.5in 11.0in;
  109. margin:1.0in 1.25in 1.0in 1.25in;
  110. mso-header-margin:.5in;
  111. mso-footer-margin:.5in;
  112. mso-paper-source:0;}
  113. div.Section1
  114. {page:Section1;}
  115. /* List Definitions */
  116. @list l0
  117. {mso-list-id:824517534;
  118. mso-list-type:hybrid;
  119. mso-list-template-ids:1007817362 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
  120. @list l0:level1
  121. {mso-level-number-format:bullet;
  122. mso-level-text:\F0B7;
  123. mso-level-tab-stop:.5in;
  124. mso-level-number-position:left;
  125. text-indent:-.25in;
  126. font-family:Symbol;}
  127. @list l0:level2
  128. {mso-level-tab-stop:1.0in;
  129. mso-level-number-position:left;
  130. text-indent:-.25in;}
  131. @list l0:level3
  132. {mso-level-tab-stop:1.5in;
  133. mso-level-number-position:left;
  134. text-indent:-.25in;}
  135. @list l0:level4
  136. {mso-level-tab-stop:2.0in;
  137. mso-level-number-position:left;
  138. text-indent:-.25in;}
  139. @list l0:level5
  140. {mso-level-tab-stop:2.5in;
  141. mso-level-number-position:left;
  142. text-indent:-.25in;}
  143. @list l0:level6
  144. {mso-level-tab-stop:3.0in;
  145. mso-level-number-position:left;
  146. text-indent:-.25in;}
  147. @list l0:level7
  148. {mso-level-tab-stop:3.5in;
  149. mso-level-number-position:left;
  150. text-indent:-.25in;}
  151. @list l0:level8
  152. {mso-level-tab-stop:4.0in;
  153. mso-level-number-position:left;
  154. text-indent:-.25in;}
  155. @list l0:level9
  156. {mso-level-tab-stop:4.5in;
  157. mso-level-number-position:left;
  158. text-indent:-.25in;}
  159. ol
  160. {margin-bottom:0in;}
  161. ul
  162. {margin-bottom:0in;}
  163. -->
  164. </style>
  165. <!--[if gte mso 10]>
  166. <style>
  167. /* Style Definitions */
  168. table.MsoNormalTable
  169. {mso-style-name:"Table Normal";
  170. mso-tstyle-rowband-size:0;
  171. mso-tstyle-colband-size:0;
  172. mso-style-noshow:yes;
  173. mso-style-parent:"";
  174. mso-padding-alt:0in 5.4pt 0in 5.4pt;
  175. mso-para-margin:0in;
  176. mso-para-margin-bottom:.0001pt;
  177. mso-pagination:widow-orphan;
  178. font-size:10.0pt;
  179. font-family:"Times New Roman";}
  180. </style>
  181. <![endif]-->
  182. </head>
  183. <body lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
  184. <div class=Section1>
  185. <h2><span style='font-family:Verdana'>UAGP35<o:p></o:p></span></h2>
  186. <p><span style='font-size:10.0pt;font-family:Arial;color:red'>[This is
  187. preliminary documentation and subject to change.]</span><span style='font-size:
  188. 10.0pt;font-family:Verdana'><o:p></o:p></span></p>
  189. <h3><span style='font-family:Verdana'>SUMMARY<o:p></o:p></span></h3>
  190. <p><span style='font-size:10.0pt;font-family:Verdana'>This is the Universal
  191. AGPv3.5 chipset driver. This driver works on any (v3.5) chipset that is
  192. compatible with the AGP3 Specification from Intel&reg;. Currently there is no
  193. corresponding hardware for any 64-bit platform.<o:p></o:p></span></p>
  194. <h3><span style='font-family:Verdana'>REQUIREMENTS<o:p></o:p></span></h3>
  195. <p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
  196. tab-stops:list .5in'><![if !supportLists]><span style='font-size:10.0pt;
  197. mso-bidi-font-size:12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
  198. mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>&middot;<span
  199. style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  200. </span></span></span><![endif]><span style='font-size:10.0pt;mso-bidi-font-size:
  201. 12.0pt;font-family:Verdana'>The AGP target capability version must not change,
  202. i.e., when an AGP2 master device is present, the target capability must remain
  203. v3.5.<o:p></o:p></span></p>
  204. <p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
  205. tab-stops:list .5in'><![if !supportLists]><span style='font-size:10.0pt;
  206. mso-bidi-font-size:12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
  207. mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>&middot;<span
  208. style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  209. </span></span></span><![endif]><span style='font-size:10.0pt;mso-bidi-font-size:
  210. 12.0pt;font-family:Verdana'>The AGPv3.5 capability block, and Aperture Base
  211. register must reside in a single PCI device/function, i.e., for PCI_CAPABILITY_ID_AGP
  212. systems this is typically PCI bus 0, device 0, function 0, whereas with the new
  213. PCI_CAPABILITY_ID_AGP_TRAGET, these registers simply reside in the PCI-to-PCI
  214. bridge device/function on which the driver is loaded.<o:p></o:p></span></p>
  215. <h3><span style='font-family:Verdana'>BUILDING THE SAMPLE<o:p></o:p></span></h3>
  216. <p><span style='font-size:10.0pt;font-family:Verdana'>The sample is built with
  217. the standard DDK BUILD utility in the standard checked or free DDK build
  218. environment. Simply <span class=GramE>type <b>build</b></span> from the
  219. \\Ntddk\Src\Kernel\Agp\Ugp35 directory. A successful build produces Ugp35.sys. <o:p></o:p></span></p>
  220. <p><span style='font-size:10.0pt;font-family:Verdana'>An installation file,
  221. Uagp35.inf, is provided. Install Uagp35.sys by creating an installation
  222. directory containing the Uagp35.sys binary and Uagp35.inf.<o:p></o:p></span></p>
  223. <p><span style='font-size:10.0pt;font-family:Verdana'>In the .<span
  224. class=SpellE>inf</span> file, change the names and PCI IDs as necessary for
  225. your setup. Then, go into <b>Device Manager</b> and right-click on the PCI-PCI
  226. bridge that represents your AGPv3.5 <span class=GramE>bridge</span>. Select <b>Properties</b>.
  227. Then select the <b>Driver</b> tab and click the <b>Update Driver</b> button.
  228. Follow the prompts in the Update Driver wizard. On the <b>Locate Driver Files</b>
  229. page, select <b>Specify a Location</b>, and enter the location of your .<span
  230. class=SpellE>inf</span> and driver.<o:p></o:p></span></p>
  231. <h3><span style='font-family:Verdana'>COMPATIBILITY<o:p></o:p></span></h3>
  232. <p><span style='font-size:10.0pt;font-family:Verdana'>Although the Uagp35.sys
  233. driver, when built in the XP build environment (in conjunction with AGPLIB),
  234. will also run on Win2K, and <span style='color:#333333'>Microsoft<sup>&reg;</sup>
  235. Windows<sup>&reg;</sup> Server 2003</span>, this has not been extensively
  236. tested. Conversely, when the Uagp35.sys driver (and AGPLIB) are built in the <span
  237. style='color:#333333'>Windows Server 2003</span> build environment, it will not
  238. use the obsolete HAL APIs <span class=SpellE>HalGet/SetBusDataByOffset</span>,
  239. but this type of driver is only compatible on OS versions that support the new
  240. AGP_TARGET_BUS_INTERFACE_STANDARD, i.e., XPSP2, <span style='color:#333333'>Windows
  241. Server 2003</span>, and higher.<span style='mso-spacerun:yes'>&nbsp;
  242. </span>Therefore, if your goal is building a driver for test and inclusion in a
  243. future OS release, you should build in the <span style='color:#333333'>Windows
  244. Server 2003</span> build environment, whereas if your goal is to produce a
  245. binary that is compatible across the broadest range of OS releases, you should
  246. build in the XP build environment.<span style='mso-spacerun:yes'>&nbsp;
  247. </span>(See Agplib.htm for additional compatibility details.)<o:p></o:p></span></p>
  248. <h3><span style='font-family:Verdana'>RESOURCES<o:p></o:p></span></h3>
  249. <p><span style='font-size:10.0pt;font-family:Verdana'>See <a
  250. href="http://developer.intel.com/technology/agp/agp_3_spec.htm">http://developer.intel.com/technology/agp/agp_3_spec.htm</a>
  251. for more information on AGP3 HW design. <o:p></o:p></span></p>
  252. <h3><span style='font-family:Verdana'>CODE TOUR<o:p></o:p></span></h3>
  253. <h4><span style='font-family:Verdana'>File Manifest<o:p></o:p></span></h4>
  254. <pre><u>File<span style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Description<o:p></o:p></u></pre><pre><o:p>&nbsp;</o:p></pre><pre><span
  255. class=SpellE>Gart.c</span> <span style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Routines for querying and setting the AGPv3.5 GART aperture</pre><pre>Uagp35.h <span
  256. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Additional GART aperture control routines</pre><pre>Uagp35.inf<span
  257. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>Install file for AGP sample</pre><pre>Uagp35.rc<span
  258. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Resource template</pre><pre><span
  259. class=SpellE>Makefile</span><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Standard Windows NT <span
  260. class=SpellE>makefile</span></pre><pre>Uagp35.htm<span style='mso-tab-count:
  261. 1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>The documentation for these samples (this file). </pre><pre><o:p>&nbsp;</o:p></pre>
  262. <p align=center style='text-align:center;tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  263. style='font-size:10.0pt;font-family:"Courier New"'><a href="#top"><span
  264. style='font-family:Verdana'>Top of page</span></a></span><span
  265. style='font-size:10.0pt;font-family:Verdana;mso-bidi-font-family:"Courier New"'>
  266. <o:p></o:p></span></p>
  267. <pre><o:p>&nbsp;</o:p></pre>
  268. <table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0 width=624
  269. style='width:6.5in;mso-cellspacing:0in;mso-padding-alt:0in 5.4pt 0in 5.4pt'>
  270. <tr style='mso-yfti-irow:0;mso-yfti-lastrow:yes;height:1.5pt'>
  271. <td style='background:aqua;padding:.75pt .75pt .75pt .75pt;height:1.5pt'>
  272. <p class=MsoNormal><o:p>&nbsp;</o:p></p>
  273. </td>
  274. </tr>
  275. </table>
  276. <pre><o:p>&nbsp;</o:p></pre><pre><o:p>&nbsp;</o:p></pre>
  277. <p style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  278. style='font-size:7.5pt;font-family:"MS Sans Serif";mso-bidi-font-family:"Courier New"'>&copy;
  279. 1999 Microsoft Corporation</span><span style='font-size:10.0pt;font-family:
  280. Verdana;mso-bidi-font-family:"Courier New"'> <o:p></o:p></span></p>
  281. </div>
  282. </body>
  283. </html>