summaryrefslogtreecommitdiffstats
path: root/src/gallium/docs
diff options
context:
space:
mode:
authorMichal Krol <[email protected]>2010-01-25 14:55:24 +0100
committerMichal Krol <[email protected]>2010-01-28 14:08:16 +0100
commit6522804cb3f38bd844a249030c9ee014b329124f (patch)
treec0e55804f137d4af2f1d145bbc57320941fc12e7 /src/gallium/docs
parent3320acb67dfa9330a80ab38e0c164f5d9c0a074a (diff)
docs: Implement constant buffer CAPs.
Diffstat (limited to 'src/gallium/docs')
-rw-r--r--src/gallium/docs/source/screen.rst24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/gallium/docs/source/screen.rst b/src/gallium/docs/source/screen.rst
index 1fff20f5398..905ff24db99 100644
--- a/src/gallium/docs/source/screen.rst
+++ b/src/gallium/docs/source/screen.rst
@@ -78,7 +78,29 @@ Returns the screen vendor.
get_param
^^^^^^^^^
-Get an integer/boolean screen parameter.
+Get an integer/boolean screen parameter. Valid parameter names include.
+
+* ``PIPE_CAP_MAX_CONST_BUFFERS``: Maximum number of constant buffers that
+ can be bound to any shader stage using ``set_constant_buffer``.
+
+ If 0 is returned, the driver is not aware of multiple constant buffers,
+ supports binding of only one constant buffer, and does not support
+ two-dimensional CONST register file access in TGSI shaders.
+
+ If a value greater than 0 is returned, the driver can have multiple
+ constant buffers bound to shader stages. The CONST register file can
+ be accessed with two-dimensional indices, like in the example below.
+
+ DCL CONST[0][0..7] # declare first 8 vectors of constbuf 0
+ DCL CONST[3][0] # declare first vector of constbuf 3
+ MOV OUT[0], CONST[0][3] # copy vector 3 of constbuf 0
+
+ For backwards compatibility, one-dimensional access to CONST register
+ file is still supported. In that case, the constbuf index is assumed
+ to be 0.
+
+* ``PIPE_CAP_MAX_CONST_BUFFER_SIZE``: Maximum byte size of a single constant
+ buffer.
get_paramf
^^^^^^^^^^