[RFC] Docs: drm: Move KMS properties table out to source files
Daniel Vetter
daniel at ffwll.ch
Wed Sep 2 08:30:18 PDT 2015
On Wed, Sep 02, 2015 at 02:50:52PM +0100, Graham Whaley wrote:
> (RFC/test - not for merging)
> The below is a test of moving the large HTML KMS properties table out
> to markdown style in the appropriate files.
> In the test we only use the first few rows of the existing KMS table
> an example.
> We use a fixed width table as the other styles of table supported by
> pandoc markdown do not support multi-column cells.
>
> The test shows a couple of issues:
> 1) double quote characters are being expanded in the fixed width table
> which then breaks the table alignment and leaves html style <quote> tags
> in the text
>
> 2) Cramming the seven columns into the apprx 80ish column width makes
> some entries fairly impractical - one word per row. For reference,
> pdfdocs rendering clips the fixed text tables at around 80 characters.
>
> If we can:
> a) Resolve (1) above
> and
> b) Agree that we are OK with comment fields extending beyond the 80th
> column significantly
>
> then maybe we can continue looking at moving the KMS properties table out
> of drm.tmpl and into markdown format fragments in the source files.
> If not, then maybe we go back to considering the conversion of the KMS
> table to docbook CALS format.
Another option would be to split up the table into sub-tables - the first
1-2 rows are really just headings for sub-tables imo. If we split them up
we have tables without spans and that could use the markdown table layout
instead of fixed-width text.
But then we'd need to do that part-by-part ...
-Daniel
> ---
> Documentation/DocBook/drm.tmpl | 925 +----------------------------------------
> drivers/gpu/drm/drm_crtc.c | 16 +
> 2 files changed, 17 insertions(+), 924 deletions(-)
>
> diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl
> index 66bc646..ecfd084 100644
> --- a/Documentation/DocBook/drm.tmpl
> +++ b/Documentation/DocBook/drm.tmpl
> @@ -2573,930 +2573,7 @@ void intel_crt_init(struct drm_device *dev)
> The following table gives description of drm properties exposed by various
> modules/drivers.
> </para>
> - <table border="1" cellpadding="0" cellspacing="0">
> - <tbody>
> - <tr style="font-weight: bold;">
> - <td valign="top" >Owner Module/Drivers</td>
> - <td valign="top" >Group</td>
> - <td valign="top" >Property Name</td>
> - <td valign="top" >Type</td>
> - <td valign="top" >Property Values</td>
> - <td valign="top" >Object attached</td>
> - <td valign="top" >Description/Restrictions</td>
> - </tr>
> - <tr>
> - <td rowspan="37" valign="top" >DRM</td>
> - <td valign="top" >Generic</td>
> - <td valign="top" >“rotation”</td>
> - <td valign="top" >BITMASK</td>
> - <td valign="top" >{ 0, "rotate-0" },
> - { 1, "rotate-90" },
> - { 2, "rotate-180" },
> - { 3, "rotate-270" },
> - { 4, "reflect-x" },
> - { 5, "reflect-y" }</td>
> - <td valign="top" >CRTC, Plane</td>
> - <td valign="top" >rotate-(degrees) rotates the image by the specified amount in degrees
> - in counter clockwise direction. reflect-x and reflect-y reflects the
> - image along the specified axis prior to rotation</td>
> - </tr>
> - <tr>
> - <td rowspan="5" valign="top" >Connector</td>
> - <td valign="top" >“EDID”</td>
> - <td valign="top" >BLOB | IMMUTABLE</td>
> - <td valign="top" >0</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >Contains id of edid blob ptr object.</td>
> - </tr>
> - <tr>
> - <td valign="top" >“DPMS”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ “On”, “Standby”, “Suspend”, “Off” }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >Contains DPMS operation mode value.</td>
> - </tr>
> - <tr>
> - <td valign="top" >“PATH”</td>
> - <td valign="top" >BLOB | IMMUTABLE</td>
> - <td valign="top" >0</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >Contains topology path to a connector.</td>
> - </tr>
> - <tr>
> - <td valign="top" >“TILE”</td>
> - <td valign="top" >BLOB | IMMUTABLE</td>
> - <td valign="top" >0</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >Contains tiling information for a connector.</td>
> - </tr>
> - <tr>
> - <td valign="top" >“CRTC_ID”</td>
> - <td valign="top" >OBJECT</td>
> - <td valign="top" >DRM_MODE_OBJECT_CRTC</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >CRTC that connector is attached to (atomic)</td>
> - </tr>
> - <tr>
> - <td rowspan="11" valign="top" >Plane</td>
> - <td valign="top" >“type”</td>
> - <td valign="top" >ENUM | IMMUTABLE</td>
> - <td valign="top" >{ "Overlay", "Primary", "Cursor" }</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Plane type</td>
> - </tr>
> - <tr>
> - <td valign="top" >“SRC_X”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=UINT_MAX</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Scanout source x coordinate in 16.16 fixed point (atomic)</td>
> - </tr>
> - <tr>
> - <td valign="top" >“SRC_Y”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=UINT_MAX</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Scanout source y coordinate in 16.16 fixed point (atomic)</td>
> - </tr>
> - <tr>
> - <td valign="top" >“SRC_W”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=UINT_MAX</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Scanout source width in 16.16 fixed point (atomic)</td>
> - </tr>
> - <tr>
> - <td valign="top" >“SRC_H”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=UINT_MAX</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Scanout source height in 16.16 fixed point (atomic)</td>
> - </tr>
> - <tr>
> - <td valign="top" >“CRTC_X”</td>
> - <td valign="top" >SIGNED_RANGE</td>
> - <td valign="top" >Min=INT_MIN, Max=INT_MAX</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Scanout CRTC (destination) x coordinate (atomic)</td>
> - </tr>
> - <tr>
> - <td valign="top" >“CRTC_Y”</td>
> - <td valign="top" >SIGNED_RANGE</td>
> - <td valign="top" >Min=INT_MIN, Max=INT_MAX</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Scanout CRTC (destination) y coordinate (atomic)</td>
> - </tr>
> - <tr>
> - <td valign="top" >“CRTC_W”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=UINT_MAX</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Scanout CRTC (destination) width (atomic)</td>
> - </tr>
> - <tr>
> - <td valign="top" >“CRTC_H”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=UINT_MAX</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Scanout CRTC (destination) height (atomic)</td>
> - </tr>
> - <tr>
> - <td valign="top" >“FB_ID”</td>
> - <td valign="top" >OBJECT</td>
> - <td valign="top" >DRM_MODE_OBJECT_FB</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >Scanout framebuffer (atomic)</td>
> - </tr>
> - <tr>
> - <td valign="top" >“CRTC_ID”</td>
> - <td valign="top" >OBJECT</td>
> - <td valign="top" >DRM_MODE_OBJECT_CRTC</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >CRTC that plane is attached to (atomic)</td>
> - </tr>
> - <tr>
> - <td rowspan="2" valign="top" >DVI-I</td>
> - <td valign="top" >“subconnector”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ “Unknown”, “DVI-D”, “DVI-A” }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“select subconnector”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ “Automatic”, “DVI-D”, “DVI-A” }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="13" valign="top" >TV</td>
> - <td valign="top" >“subconnector”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "Unknown", "Composite", "SVIDEO", "Component", "SCART" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“select subconnector”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "Automatic", "Composite", "SVIDEO", "Component", "SCART" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“mode”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“left margin”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“right margin”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“top margin”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“bottom margin”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“brightness”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“contrast”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“flicker reduction”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“overscan”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“saturation”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“hue”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="2" valign="top" >Virtual GPU</td>
> - <td valign="top" >“suggested X”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0xffffffff</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >property to suggest an X offset for a connector</td>
> - </tr>
> - <tr>
> - <td valign="top" >“suggested Y”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0xffffffff</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >property to suggest an Y offset for a connector</td>
> - </tr>
> - <tr>
> - <td rowspan="3" valign="top" >Optional</td>
> - <td valign="top" >“scaling mode”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "None", "Full", "Center", "Full aspect" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"aspect ratio"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "None", "4:3", "16:9" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >DRM property to set aspect ratio from user space app.
> - This enum is made generic to allow addition of custom aspect
> - ratios.</td>
> - </tr>
> - <tr>
> - <td valign="top" >“dirty”</td>
> - <td valign="top" >ENUM | IMMUTABLE</td>
> - <td valign="top" >{ "Off", "On", "Annotate" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="20" valign="top" >i915</td>
> - <td rowspan="2" valign="top" >Generic</td>
> - <td valign="top" >"Broadcast RGB"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "Automatic", "Full", "Limited 16:235" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“audio”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "force-dvi", "off", "auto", "on" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="17" valign="top" >SDVO-TV</td>
> - <td valign="top" >“mode”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"left_margin"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"right_margin"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"top_margin"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"bottom_margin"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“hpos”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“vpos”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“contrast”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“saturation”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“hue”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“sharpness”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“flicker_filter”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“flicker_filter_adaptive”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“flicker_filter_2d”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“tv_chroma_filter”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“tv_luma_filter”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“dot_crawl”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=1</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >SDVO-TV/LVDS</td>
> - <td valign="top" >“brightness”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="2" valign="top" >CDV gma-500</td>
> - <td rowspan="2" valign="top" >Generic</td>
> - <td valign="top" >"Broadcast RGB"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ “Full”, “Limited 16:235” }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"Broadcast RGB"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ “off”, “auto”, “on” }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="19" valign="top" >Poulsbo</td>
> - <td rowspan="1" valign="top" >Generic</td>
> - <td valign="top" >“backlight”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=100</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="17" valign="top" >SDVO-TV</td>
> - <td valign="top" >“mode”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"left_margin"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"right_margin"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"top_margin"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"bottom_margin"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“hpos”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“vpos”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“contrast”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“saturation”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“hue”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“sharpness”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“flicker_filter”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“flicker_filter_adaptive”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“flicker_filter_2d”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“tv_chroma_filter”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“tv_luma_filter”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“dot_crawl”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=1</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >SDVO-TV/LVDS</td>
> - <td valign="top" >“brightness”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max= SDVO dependent</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="11" valign="top" >armada</td>
> - <td rowspan="2" valign="top" >CRTC</td>
> - <td valign="top" >"CSC_YUV"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "Auto" , "CCIR601", "CCIR709" }</td>
> - <td valign="top" >CRTC</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"CSC_RGB"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "Auto", "Computer system", "Studio" }</td>
> - <td valign="top" >CRTC</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="9" valign="top" >Overlay</td>
> - <td valign="top" >"colorkey"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0xffffff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"colorkey_min"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0xffffff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"colorkey_max"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0xffffff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"colorkey_val"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0xffffff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"colorkey_alpha"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0xffffff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"colorkey_mode"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "disabled", "Y component", "U component"
> - , "V component", "RGB", “R component", "G component", "B component" }</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"brightness"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=256 + 255</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"contrast"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0x7fff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"saturation"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0x7fff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="2" valign="top" >exynos</td>
> - <td valign="top" >CRTC</td>
> - <td valign="top" >“mode”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "normal", "blank" }</td>
> - <td valign="top" >CRTC</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >Overlay</td>
> - <td valign="top" >“zpos”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=MAX_PLANE-1</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="2" valign="top" >i2c/ch7006_drv</td>
> - <td valign="top" >Generic</td>
> - <td valign="top" >“scale”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=2</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="1" valign="top" >TV</td>
> - <td valign="top" >“mode”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "PAL", "PAL-M","PAL-N"}, ”PAL-Nc"
> - , "PAL-60", "NTSC-M", "NTSC-J" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="15" valign="top" >nouveau</td>
> - <td rowspan="6" valign="top" >NV10 Overlay</td>
> - <td valign="top" >"colorkey"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0x01ffffff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“contrast”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=8192-1</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“brightness”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=1024</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“hue”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=359</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“saturation”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=8192-1</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“iturbt_709”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=1</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="2" valign="top" >Nv04 Overlay</td>
> - <td valign="top" >“colorkey”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0x01ffffff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“brightness”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=1024</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="7" valign="top" >Display</td>
> - <td valign="top" >“dithering mode”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "auto", "off", "on" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“dithering depth”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "auto", "off", "on", "static 2x2", "dynamic 2x2", "temporal" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“underscan”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "auto", "6 bpc", "8 bpc" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“underscan hborder”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=128</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“underscan vborder”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=128</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“vibrant hue”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=180</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >“color vibrance”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=200</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >omap</td>
> - <td valign="top" >Generic</td>
> - <td valign="top" >“zorder”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=3</td>
> - <td valign="top" >CRTC, Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >qxl</td>
> - <td valign="top" >Generic</td>
> - <td valign="top" >“hotplug_mode_update"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=1</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="9" valign="top" >radeon</td>
> - <td valign="top" >DVI-I</td>
> - <td valign="top" >“coherent”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=1</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >DAC enable load detect</td>
> - <td valign="top" >“load detection”</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=1</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >TV Standard</td>
> - <td valign="top" >"tv standard"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "ntsc", "pal", "pal-m", "pal-60", "ntsc-j"
> - , "scart-pal", "pal-cn", "secam" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >legacy TMDS PLL detect</td>
> - <td valign="top" >"tmds_pll"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "driver", "bios" }</td>
> - <td valign="top" >-</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="3" valign="top" >Underscan</td>
> - <td valign="top" >"underscan"</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "off", "on", "auto" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"underscan hborder"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=128</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"underscan vborder"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=128</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >Audio</td>
> - <td valign="top" >“audio”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "off", "on", "auto" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >FMT Dithering</td>
> - <td valign="top" >“dither”</td>
> - <td valign="top" >ENUM</td>
> - <td valign="top" >{ "off", "on" }</td>
> - <td valign="top" >Connector</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td rowspan="3" valign="top" >rcar-du</td>
> - <td rowspan="3" valign="top" >Generic</td>
> - <td valign="top" >"alpha"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=255</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"colorkey"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=0, Max=0x01ffffff</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - <tr>
> - <td valign="top" >"zpos"</td>
> - <td valign="top" >RANGE</td>
> - <td valign="top" >Min=1, Max=7</td>
> - <td valign="top" >Plane</td>
> - <td valign="top" >TBD</td>
> - </tr>
> - </tbody>
> - </table>
> +!Pdrivers/gpu/drm/drm_crtc.c rotation properties
> </sect2>
> </sect1>
>
> diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
> index 474f328..d48cc02 100644
> --- a/drivers/gpu/drm/drm_crtc.c
> +++ b/drivers/gpu/drm/drm_crtc.c
> @@ -5760,6 +5760,22 @@ void drm_mode_config_cleanup(struct drm_device *dev)
> }
> EXPORT_SYMBOL(drm_mode_config_cleanup);
>
> +/**
> + * DOC: rotation properties
> + *
> + * DRM rotation properties
> + * ----------------------------------------------------------------------------
> + * |Owner |Group |Property |Type |Property |Object |Description/|
> + * |Module/| |Name | |Values |attached|Restrictions|
> + * |Drivers| | | | | | |
> + * --------|-------|----------|-------|-----------------|--------|-------------
> + * |DRM |Generic|"rotation"|BITMASK|{0, "rotate-0"}, |CRTC, |rotate |
> + * | | | | |{1, "rotate-90"},|Plane |{degrees} |
> + * | | | | | | |rotates |
> + * | | | | |{ blah | |the image |
> + * | | | | |... | |... |
> + * ----------------------------------------------------------------------------
> + */
> struct drm_property *drm_mode_create_rotation_property(struct drm_device *dev,
> unsigned int supported_rotations)
> {
> --
> 2.4.3
>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the dri-devel
mailing list