<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <title>Platforms and Drivers</title>
  <link rel="stylesheet" type="text/css" href="mesa.css">
</head>
<body>

<div class="header">
  The Mesa 3D Graphics Library
</div>

<iframe src="contents.html"></iframe>
<div class="content">

<h1>Platforms and Drivers</h1>

<p>
Mesa is primarily developed and used on Linux systems.
But there's also support for Windows, other flavors of Unix and other
systems such as Haiku.
We're actively developing and maintaining several hardware and
software drivers.
</p>

<p>
The primary API is OpenGL but there's also support for OpenGL ES 1, ES2
and ES 3, OpenVG, OpenCL, VDPAU, XvMC and the EGL interface.
</p>

<p>
Hardware drivers include:
</p>
<ul>
  <li>Intel GMA, HD Graphics, Iris.
    See <a href="https://01.org/linuxgraphics">Intel's Website</a></li>
  <li>AMD Radeon series.
    See <a href="https://www.x.org/wiki/RadeonFeature">RadeonFeature</a></li>
  <li>NVIDIA GPUs (Riva TNT and later).
    See <a href="https://nouveau.freedesktop.org">Nouveau Wiki</a></li>
  <li>Qualcomm Adreno A2xx-A6xx.
    See <a href="https://github.com/freedreno/freedreno/wiki">Freedreno Wiki</a></li>
  <li>Broadcom VideoCore 4, 5.
    See <a href="https://anholt.github.io/twivc4/">This Week in V3D</a></li>
  <li>ARM Mali Utgard.
    See <a href="https://gitlab.freedesktop.org/lima/web/wikis/home">Lima Wiki</a></li>
  <li>ARM Mali Midgard, Bifrost.
    See <a href="https://panfrost.freedesktop.org/">Panfrost Site</a></li>
  <li>Vivante GCxxx.
    See <a href="https://github.com/laanwj/etna_viv/wiki">Etnaviv Wiki</a></li>
  <li>NVIDIA Tegra (K1 and later).</li>
</ul>

<p>
Software drivers include:
</p>
<ul>
<li><a href="llvmpipe.html">llvmpipe</a> - uses LLVM for x86 JIT code
    generation and is multi-threaded
<li>softpipe - a reference Gallium driver
<li><a href="vmware-guest.html">svga</a> - driver for vmware virtual gpu
<li><a href="https://www.openswr.org/">swr</a> - x86-optimized
    software renderer for visualization workloads
<li><a href="https://virgil3d.github.io/">virgl</a> - research
    project for accelerated graphics for qemu guests
<li>swrast - the legacy/original Mesa software rasterizer
</ul>

<p>
Additional driver information:
</p>

<ul>
<li><a href="https://dri.freedesktop.org/"> DRI hardware
drivers</a> for the X Window System
<li><a href="xlibdriver.html">Xlib / swrast driver</a> for the X Window System
and Unix-like operating systems
<li><a href="README.WIN32">Microsoft Windows</a>
</ul>


<h2>
Deprecated Systems and Drivers
</h2>

<p>
In the past there were other drivers for older GPUs and operating
systems.
These have been removed from the Mesa source tree and distribution.
If anyone's interested though, the code can be found in the git repo.
The list includes:
</p>

<ul>
<li>3dfx/glide
<li>Matrox
<li>ATI R128
<li>Savage
<li>VIA Unichrome
<li>SIS
<li>3Dlabs gamma
<li>DOS
<li>fbdev
<li>DEC/VMS
<li>Mach64
<li>Intel i810
</ul>

</div>
</body>
</html>
