summaryrefslogtreecommitdiff
path: root/static/netbsd/man4/agp.4 4.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/netbsd/man4/agp.4 4.html')
-rw-r--r--static/netbsd/man4/agp.4 4.html230
1 files changed, 0 insertions, 230 deletions
diff --git a/static/netbsd/man4/agp.4 4.html b/static/netbsd/man4/agp.4 4.html
deleted file mode 100644
index 6d8dbc52..00000000
--- a/static/netbsd/man4/agp.4 4.html
+++ /dev/null
@@ -1,230 +0,0 @@
-<table class="head">
- <tr>
- <td class="head-ltitle">AGP(4)</td>
- <td class="head-vol">Device Drivers Manual</td>
- <td class="head-rtitle">AGP(4)</td>
- </tr>
-</table>
-<div class="manual-text">
-<section class="Sh">
-<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
-<p class="Pp"><code class="Nm">agp</code> &#x2014; <span class="Nd">accelerated
- graphics port driver</span></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
-<p class="Pp"><code class="Cd">agp* at pchb?</code></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
-<p class="Pp">The <code class="Nm">agp</code> driver provides
- machine-independent support for the accelerated graphics port (AGP) found on
- many PC-based and PCI systems. The AGP specification was designed by
- Intel.</p>
-<p class="Pp">The AGP chipset is positioned between the PCI-Host bridge and the
- graphics accelerator to provide a high-performance dedicated graphics bus
- for moving large amounts of data directly from host memory to the graphics
- accelerator. The specification currently supports a peak bandwidth of 528
- MB/s. AGP uses a Graphics Address Remapping Table (GART) to provide a
- physically-contiguous view of scattered pages in host memory for DMA
- transfers.</p>
-<p class="Pp">The <code class="Nm">agp</code> driver supports the following
- chipsets:</p>
-<p class="Pp"></p>
-<ul class="Bl-dash Bd-indent Bl-compact">
- <li>ALI M1541 host-to-AGP bridge</li>
- <li>AMD 751 and 761 host-to-AGP bridges</li>
- <li>Intel 82810, 82810-DC100, 82810E, and 82815 SVGA controllers</li>
- <li>SiS 5591 host-to-AGP bridge</li>
- <li>VIA</li>
-</ul>
-<p class="Pp">The <code class="Nm">agp</code> driver also provides an interface
- to user processes for use by X servers. A user process communicates to the
- device initially by means of <a class="Xr">ioctl(2)</a> calls. The calls
- supported are:</p>
-<dl class="Bl-tag">
- <dt id="AGPIOC_INFO"><a class="permalink" href="#AGPIOC_INFO"><code class="Dv">AGPIOC_INFO</code></a></dt>
- <dd>Get AGP information, setting the members in the
- <a class="permalink" href="#agp_info"><i class="Em" id="agp_info">agp_info</i></a>
- structure as defined in &lt;sys/agpio.h&gt;:
- <div class="Bd Pp Li">
- <pre>typedef struct _agp_info {
- agp_version version; /* version of the driver */
- uint32_t bridge_id; /* bridge vendor/device */
- uint32_t agp_mode; /* mode info of bridge */
- off_t aper_base; /* base of aperture */
- size_t aper_size; /* size of aperture */
- size_t pg_total; /* max pages (swap + system) */
- size_t pg_system; /* max pages (system) */
- size_t pg_used; /* current pages used */
-} agp_info;</pre>
- </div>
- </dd>
- <dt id="AGPIOC_ACQUIRE"><a class="permalink" href="#AGPIOC_ACQUIRE"><code class="Dv">AGPIOC_ACQUIRE</code></a></dt>
- <dd>Acquire AGP.</dd>
- <dt id="AGPIOC_RELEASE"><a class="permalink" href="#AGPIOC_RELEASE"><code class="Dv">AGPIOC_RELEASE</code></a></dt>
- <dd>Release AGP.</dd>
- <dt id="AGPIOC_SETUP"><a class="permalink" href="#AGPIOC_SETUP"><code class="Dv">AGPIOC_SETUP</code></a></dt>
- <dd>Set up AGP, using the members in the
- <a class="permalink" href="#agp_setup"><i class="Em" id="agp_setup">agp_setup</i></a>
- structure as defined in &lt;sys/agpio.h&gt;:
- <div class="Bd Pp Li">
- <pre>typedef struct _agp_setup {
- uint32_t agp_mode; /* mode info of bridge */
-} agp_setup;</pre>
- </div>
- </dd>
- <dt id="AGPIOC_ALLOCATE"><a class="permalink" href="#AGPIOC_ALLOCATE"><code class="Dv">AGPIOC_ALLOCATE</code></a></dt>
- <dd>Allocate AGP space, using and setting the members in the
- <a class="permalink" href="#agp_allocate"><i class="Em" id="agp_allocate">agp_allocate</i></a>
- structure as defined in &lt;sys/agpio.h&gt;:
- <div class="Bd Pp Li">
- <pre>typedef struct _agp_allocate {
- int key; /* tag of allocation */
- size_t pg_count; /* number of pages */
- uint32_t type; /* 0 == normal, other devspec */
- uint32_t physical; /* device specific (some devices
- * need a phys address of the
- * actual page behind the gatt
- * table) */
-} agp_allocate;</pre>
- </div>
- </dd>
- <dt id="AGPIOC_DEALLOCATE"><a class="permalink" href="#AGPIOC_DEALLOCATE"><code class="Dv">AGPIOC_DEALLOCATE</code></a></dt>
- <dd>Deallocate AGP space.</dd>
- <dt id="AGPIOC_BIND"><a class="permalink" href="#AGPIOC_BIND"><code class="Dv">AGPIOC_BIND</code></a></dt>
- <dd>Bind AGP space, using the members in the
- <a class="permalink" href="#agp_bind"><i class="Em" id="agp_bind">agp_bind</i></a>
- structure as defined in &lt;sys/agpio.h&gt;:
- <div class="Bd Pp Li">
- <pre>typedef struct _agp_bind {
- int key; /* tag of allocation */
- off_t pg_start; /* starting page to populate */
-} agp_bind;</pre>
- </div>
- </dd>
- <dt id="AGPIOC_UNBIND"><a class="permalink" href="#AGPIOC_UNBIND"><code class="Dv">AGPIOC_UNBIND</code></a></dt>
- <dd>Unbind AGP space, using the members in the
- <a class="permalink" href="#agp_unbind"><i class="Em" id="agp_unbind">agp_unbind</i></a>
- structure as defined in &lt;sys/agpio.h&gt;:
- <div class="Bd Pp Li">
- <pre>typedef struct _agp_unbind {
- int key; /* tag of allocation */
- uint32_t priority; /* priority for paging out */
-} agp_unbind;</pre>
- </div>
- </dd>
-</dl>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="FILES"><a class="permalink" href="#FILES">FILES</a></h1>
-<dl class="Bl-tag Bl-compact">
- <dt><span class="Pa">/dev/agp?</span></dt>
- <dd>AGP GART device special files</dd>
- <dt><span class="Pa">/dev/agpgart</span></dt>
- <dd>AGP GART device special file</dd>
-</dl>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="EXAMPLES"><a class="permalink" href="#EXAMPLES">EXAMPLES</a></h1>
-<p class="Pp">This short code fragment is an example of opening the AGP device
- and performing some basic operations:</p>
-<div class="Bd Pp Li">
-<pre>#include &lt;sys/types.h&gt;
-#include &lt;sys/ioctl.h&gt;
-#include &lt;sys/agpio.h&gt;
-#include &lt;fcntl.h&gt;
-#include &lt;err.h&gt;
-
-int
-main(int argc, char **argv)
-{
- int fd;
- agp_info info;
- agp_allocate alloc;
- agp_setup setup;
- agp_bind bind;
- agp_unbind unbind;
-
- fd = open(&quot;/dev/agp0&quot;, O_RDWR);
- if (fd &lt; 0)
- err(1, &quot;open&quot;);
-
- if (ioctl(fd, AGPIOC_INFO, &amp;info) &lt; 0)
- err(2, &quot;ioctl AGPIOC_INFO&quot;);
-
- printf(&quot;version: %u.%u\n&quot;, info.version.major,
- info.version.minor);
-
- printf(&quot;id: %x\n&quot;, info.bridge_id);
- printf(&quot;mode: %x\n&quot;, info.agp_mode);
- printf(&quot;base: %x\n&quot;, info.aper_base);
- printf(&quot;size: %uM\n&quot;, info.aper_size);
- printf(&quot;total mem: %u\n&quot;, info.pg_total);
- printf(&quot;system mem: %u\n&quot;, info.pg_system);
- printf(&quot;used mem: %u\n\n&quot;, info.pg_used);
-
- setup.agp_mode = info.agp_mode;
-
- if (ioctl(fd, AGPIOC_SETUP, &amp;setup) &lt; 0)
- err(3, &quot;ioctl AGPIOC_SETUP&quot;);
-
- if (ioctl(fd, AGPIOC_ACQUIRE, 0) &lt; 0)
- err(3, &quot;ioctl AGPIOC_ACQUIRE&quot;);
-
- alloc.type = 0;
- alloc.pg_count = 64;
-
- if (ioctl(fd, AGPIOC_ALLOCATE, &amp;alloc) &lt; 0)
- err(4, &quot;ioctl AGPIOC_ALLOCATE&quot;);
-
- printf(&quot;alloc key %d, paddr %x\n&quot;, alloc.key, alloc.physical);
- if (ioctl(fd, AGPIOC_INFO, &amp;info) &lt; 0)
- err(5, &quot;ioctl AGPIOC_INFO&quot;);
-
- bind.key = alloc.key;
- bind.pg_start = 0x1000;
-
- if (ioctl(fd, AGPIOC_BIND, &amp;bind) &lt; 0)
- err(6, &quot;ioctl AGPIOC_BIND&quot;);
-
- printf(&quot;used mem now: %u\n\n&quot;, info.pg_used);
-
- unbind.key = alloc.key;
- unbind.priority = 0;
-
- if (ioctl(fd, AGPIOC_UNBIND, &amp;unbind) &lt; 0)
- err(6, &quot;ioctl AGPIOC_BIND&quot;);
-
- if (ioctl(fd, AGPIOC_DEALLOCATE, &amp;alloc.key) &lt; 0)
- err(6, &quot;ioctl AGPIOC_DEALLOCATE&quot;);
-
- if (ioctl(fd, AGPIOC_RELEASE, 0) &lt; 0)
- err(7, &quot;ioctl AGPIOC_RELEASE&quot;);
-
- close(fd);
-
- printf(&quot;agp test successful\n&quot;);
-
- return 0;
-}</pre>
-</div>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
- ALSO</a></h1>
-<p class="Pp"><a class="Xr">ioctl(2)</a>, <a class="Xr">pci(4)</a></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
-<p class="Pp">The <code class="Nm">agp</code> driver first appeared in
- <span class="Ux">FreeBSD 4.1</span>. It was adopted in
- <span class="Ux">NetBSD 1.6</span>.</p>
-</section>
-</div>
-<table class="foot">
- <tr>
- <td class="foot-date">October 3, 2010</td>
- <td class="foot-os">NetBSD 10.1</td>
- </tr>
-</table>