Update make output for autoconf help
[mesa.git] / docs / cell.html
index 4fd12e2b23cacd46a4bda44e8c7d44d3c188667a..f9915d67e541cfcdd16bf2ddb0f84709b8907fe5 100644 (file)
@@ -31,11 +31,22 @@ Second, to implement a full-featured OpenGL driver with support for GLSL, etc.
 <p>
 The Cell driver source code is on the <code>gallium-0.1</code> branch of the
 git repository.
+After you've cloned the repository, check out the branch with:
+</p>
+<pre>
+   git-checkout -b gallium-0.1 origin/gallium-0.1
+</pre>
+<p>
 To build the driver you'll need the IBM Cell SDK (version 2.1 or 3.0).
 To use the driver you'll need a Cell system, such as a PS3 running Linux,
 or the Cell Simulator (untested, though).
 </p>
 
+<p>
+If using Cell SDK 3.0, first edit configs/linux-cell and add
+<code>-DSPU_MAIN_PARAM_LONG_LONG</code> to the SPU_CFLAGS.
+</p>
+
 <p>
 To compile the code, run <code>make linux-cell</code>.
 </p>
@@ -53,14 +64,33 @@ and looking for:
 </pre>
 
 
+<H2>Driver Implementation Summary</H2>
+
+<p>
+Rasterization is parallelized across the SPUs in a tiled-based manner.
+Batches of transformed triangles are sent to the SPUs (actually, pulled by from
+main memory by the SPUs).
+Each SPU loops over a set of 32x32-pixel screen tiles, rendering the triangles
+into each tile.
+Because of the limited SPU memory, framebuffer tiles are paged in/out of
+SPU local store as needed.
+Similarly, textures are tiled and brought into local store as needed.
+</p>
+
+<p>
+More recently, vertex transformation has been parallelized across the SPUs
+as well.
+</p>
+
+
 <H2>Status</H2>
 
 <p>
-As of January 2008 the driver supports smooth/flat shaded triangle rendering
-with Z testing.
+As of February 2008 the driver supports smooth/flat shaded triangle rendering
+with Z testing and simple texture mapping.
 Simple demos like gears run successfully.
-Basic texture mapping should be working within a month.
-There's still unfinished work in the PPU-to-SPU communication facilities.
+To test texture mapping, try progs/demos/texcyl (press right mouse button for
+rendering options).
 </p>