diff options
author | Chad Versace <chad.versace@linux.intel.com> | 2012-05-02 12:03:31 -0700 |
---|---|---|
committer | Chad Versace <chad.versace@linux.intel.com> | 2012-05-21 14:39:41 -0700 |
commit | 652fe8d9dd2393127b11741ba63cb95a83ad454f (patch) | |
tree | e3e6b87fee1d0bb04fe5575b2d57c248472fd933 /dri2proto.txt | |
parent | 428688d1eaa3d0faa13a61613cdaeaabcb351f0e (diff) |
dri2proto: Add DRI2GetParam request
Bump protocol version to 1.4.
Bump package version to 2.7.
This new protocol request effectively allows clients to perform feature
detection on the DDX.
If I had DRI2GetParam in June 2011, when I was implementing support in the
Intel DDX and Mesa for new hardware that required a new DRI2 attachment
format, then I could have avoided a week of pain caused by the necessity
to write a horrid feature detection hack [1] in Mesa. In the future, when
the work begins to add MSAA support to the Intel DDX, having a clean way
to do feature detection will allow us to avoid revisiting and expanding
that hack.
[1] mesa, commit aea2236a, function intel_verify_dri2_has_hi
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Ian Romanick <idr@freedesktop.org>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
Diffstat (limited to 'dri2proto.txt')
-rw-r--r-- | dri2proto.txt | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/dri2proto.txt b/dri2proto.txt index 7bde067..9921301 100644 --- a/dri2proto.txt +++ b/dri2proto.txt @@ -440,6 +440,36 @@ The name of this extension is "DRI2". DRI2SwapBuffers requests to swap at most once per interval frames, which is useful useful for limiting the frame rate. +┌─── + DRI2GetParam + drawable: DRAWABLE + param: CARD32 + ▶ + is_param_recognized: BOOL + value: CARD64 +└─── + Errors: Drawable + + Get the value of a parameter. The parameter's value is looked up on + the screen associated with 'drawable'. + + Parameter names in which the value of the most significant byte is + 0 are reserved for the X server. Currently, no such parameter names + are defined. (When any such names are defined, they will be defined in + this extension specification and its associated headers). + + Parameter names in which the byte's value is 1 are reserved for the + DDX. Such names are private to each driver and shall be defined in the + respective driver's headers. + + Parameter names in which the byte's value is neither 0 nor 1 are + reserved for future use. + + Possible values of 'is_param_recognized' are true (1) and false (0). + If false, then 'value' is undefined. + + This request is only available with protocol version 1.4 or later. + ⚙ ⚙ ⚙ ⚙ ⚙ ⚙ 9. Extension Events @@ -512,6 +542,8 @@ The DRI2 extension has undergone a number of revisions before 2.6: Enlightenment attained. Added the DRI2BufferHiz attachment. + 2.7: Added the DRI2GetParam request. + Compatibility up to 2.0 is not preserved, but was also never released. @@ -830,6 +862,23 @@ A.2 Protocol Requests ▶ └─── +┌─── + DRI2GetParam + 1 CARD8 major opcode + 1 13 DRI2 opcode + 2 8 length + 4 DRAWABLE drawable + 4 CARD32 param + ▶ + 1 1 Reply + 1 BOOL is_param_recognized + 2 CARD16 sequence number + 4 0 reply length + 4 CARD32 value_hi + 4 CARD32 value_lo + 16 unused +└─── + A.3 Protocol Events The DRI2 extension specifies DRI2_BufferSwapComplete and |