A series of patches to make drm.tmpl build under 'make pdfdocs'. The biggest change is patch4 which converts a large HTML table into a CALS one. It should be noted, that table renders less than ideal in the PDF - something I have not figured out how to fix. Patch1 required some <sect> changes that then required some <title> additions. It would be good if they could be verified as suitable.
This set applies against drm-intel-nightly 5606e1a after having my in-flight i915_guc_submission typo fix applied and Danilos 'Improve Markdown results' applied (which should not be needed to apply the patches, just to build the resulting pdf).
Graham Whaley (5): Documentation: drm: Fix pdfdocs sect/title tags Documentation: drm: Fix pdfdocs listitem and abstract <para>s Documentation: drm: Change <code> to <literal> Documentation: drm: Convert KMS Properties HTML table to CALS Documentation: drm: Unify quoting methods
Documentation/DocBook/drm.tmpl | 1993 ++++++++++++++++++++-------------------- 1 file changed, 1011 insertions(+), 982 deletions(-)
Building pdfdocs shows errors with !includes and <sect>s such as: jade:/Documentation/DocBook/drm.xml:666:11:E: document type does not allow element "para" here; missing one of "glossary", "bibliography", "index" start-tag Fix by adding <title> items and add/shuffle <sect>, <title> and !include items.
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com --- Documentation/DocBook/drm.tmpl | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index 66bc646..586f1b8 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -303,6 +303,9 @@ char *date;</synopsis> </para> !Edrivers/gpu/drm/drm_pci.c !Edrivers/gpu/drm/drm_platform.c + </sect2> + <sect2> + <title>Calling Registration Directly</title> <para> New drivers that no longer rely on the services provided by the <structname>drm_bus</structname> structure can call the low-level @@ -2352,7 +2355,7 @@ void intel_crt_init(struct drm_device *dev) </itemizedlist> </sect2> <sect2> - <title>Atomic Modeset Helper Functions Reference</title> + <title>Atomic Modeset Helper Functions Introduction</title> <sect3> <title>Overview</title> !Pdrivers/gpu/drm/drm_atomic_helper.c overview @@ -2365,14 +2368,20 @@ void intel_crt_init(struct drm_device *dev) <title>Atomic State Reset and Initialization</title> !Pdrivers/gpu/drm/drm_atomic_helper.c atomic state reset and initialization </sect3> + </sect2> + <sect2> + <title>Atomic Modeset Helper Functions Reference</title> !Iinclude/drm/drm_atomic_helper.h !Edrivers/gpu/drm/drm_atomic_helper.c </sect2> <sect2> + <title>Modeset Helper Functions Introduction</title> +!Pdrivers/gpu/drm/drm_crtc_helper.c overview + </sect2> + <sect2> <title>Modeset Helper Functions Reference</title> !Iinclude/drm/drm_crtc_helper.h !Edrivers/gpu/drm/drm_crtc_helper.c -!Pdrivers/gpu/drm/drm_crtc_helper.c overview </sect2> <sect2> <title>Output Probing Helper Functions Reference</title> @@ -2432,8 +2441,8 @@ void intel_crt_init(struct drm_device *dev) </sect2> <sect2> <title id="drm-kms-planehelpers">Plane Helper Reference</title> -!Edrivers/gpu/drm/drm_plane_helper.c !Pdrivers/gpu/drm/drm_plane_helper.c overview +!Edrivers/gpu/drm/drm_plane_helper.c </sect2> <sect2> <title>Tile group</title> @@ -2449,6 +2458,9 @@ void intel_crt_init(struct drm_device *dev) <title>Default bridge callback sequence</title> !Pdrivers/gpu/drm/drm_bridge.c bridge callbacks </sect3> + </sect2> + <sect2> + <title>Bridges Function Reference</title> !Edrivers/gpu/drm/drm_bridge.c </sect2> </sect1> @@ -4114,19 +4126,19 @@ int num_ioctls;</synopsis> <sect2> <title>GTT Fences and Swizzling</title> !Idrivers/gpu/drm/i915/i915_gem_fence.c - <sect3> - <title>Global GTT Fence Handling</title> + </sect2> + <sect2> + <title>Global GTT Fence Handling</title> !Pdrivers/gpu/drm/i915/i915_gem_fence.c fence register handling - </sect3> - <sect3> - <title>Hardware Tiling and Swizzling Details</title> + </sect2> + <sect2> + <title>Hardware Tiling and Swizzling Details</title> !Pdrivers/gpu/drm/i915/i915_gem_fence.c tiling swizzling details - </sect3> </sect2> <sect2> <title>Object Tiling IOCTLs</title> -!Idrivers/gpu/drm/i915/i915_gem_tiling.c !Pdrivers/gpu/drm/i915/i915_gem_tiling.c buffer object tiling +!Idrivers/gpu/drm/i915/i915_gem_tiling.c </sect2> <sect2> <title>Buffer Object Eviction</title>
On Tue, Aug 25, 2015 at 10:26:41AM +0100, Graham Whaley wrote:
Building pdfdocs shows errors with !includes and <sect>s such as: jade:/Documentation/DocBook/drm.xml:666:11:E: document type does not allow element "para" here; missing one of "glossary", "bibliography", "index" start-tag Fix by adding <title> items and add/shuffle <sect>, <title> and !include items.
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com
The idea behind having both the overview sections and the detailed function references in the same section is to have them in the same section. Is there nothing we can do to salvage that? At least you seem to add a lot more sections here, but it doesn't look entirely consistent. -Daniel
Documentation/DocBook/drm.tmpl | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index 66bc646..586f1b8 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -303,6 +303,9 @@ char *date;</synopsis> </para> !Edrivers/gpu/drm/drm_pci.c !Edrivers/gpu/drm/drm_platform.c
</sect2>
<sect2>
<title>Calling Registration Directly</title> <para> New drivers that no longer rely on the services provided by the <structname>drm_bus</structname> structure can call the low-level
@@ -2352,7 +2355,7 @@ void intel_crt_init(struct drm_device *dev) </itemizedlist> </sect2> <sect2>
<title>Atomic Modeset Helper Functions Reference</title>
<title>Atomic Modeset Helper Functions Introduction</title> <sect3>
<title>Overview</title>
!Pdrivers/gpu/drm/drm_atomic_helper.c overview @@ -2365,14 +2368,20 @@ void intel_crt_init(struct drm_device *dev)
<title>Atomic State Reset and Initialization</title> !Pdrivers/gpu/drm/drm_atomic_helper.c atomic state reset and initialization </sect3> + </sect2> + <sect2> + <title>Atomic Modeset Helper Functions Reference</title> !Iinclude/drm/drm_atomic_helper.h !Edrivers/gpu/drm/drm_atomic_helper.c </sect2> <sect2> + <title>Modeset Helper Functions Introduction</title> +!Pdrivers/gpu/drm/drm_crtc_helper.c overview + </sect2> + <sect2> <title>Modeset Helper Functions Reference</title> !Iinclude/drm/drm_crtc_helper.h !Edrivers/gpu/drm/drm_crtc_helper.c -!Pdrivers/gpu/drm/drm_crtc_helper.c overview </sect2> <sect2> <title>Output Probing Helper Functions Reference</title> @@ -2432,8 +2441,8 @@ void intel_crt_init(struct drm_device *dev) </sect2> <sect2> <title id="drm-kms-planehelpers">Plane Helper Reference</title> -!Edrivers/gpu/drm/drm_plane_helper.c !Pdrivers/gpu/drm/drm_plane_helper.c overview +!Edrivers/gpu/drm/drm_plane_helper.c </sect2> <sect2> <title>Tile group</title> @@ -2449,6 +2458,9 @@ void intel_crt_init(struct drm_device *dev) <title>Default bridge callback sequence</title> !Pdrivers/gpu/drm/drm_bridge.c bridge callbacks </sect3> + </sect2> + <sect2> + <title>Bridges Function Reference</title> !Edrivers/gpu/drm/drm_bridge.c </sect2> </sect1> @@ -4114,19 +4126,19 @@ int num_ioctls;</synopsis> <sect2> <title>GTT Fences and Swizzling</title> !Idrivers/gpu/drm/i915/i915_gem_fence.c - <sect3> - <title>Global GTT Fence Handling</title> + </sect2> + <sect2> + <title>Global GTT Fence Handling</title> !Pdrivers/gpu/drm/i915/i915_gem_fence.c fence register handling - </sect3> - <sect3> - <title>Hardware Tiling and Swizzling Details</title> + </sect2> + <sect2> + <title>Hardware Tiling and Swizzling Details</title> !Pdrivers/gpu/drm/i915/i915_gem_fence.c tiling swizzling details - </sect3> </sect2> <sect2> <title>Object Tiling IOCTLs</title> -!Idrivers/gpu/drm/i915/i915_gem_tiling.c !Pdrivers/gpu/drm/i915/i915_gem_tiling.c buffer object tiling +!Idrivers/gpu/drm/i915/i915_gem_tiling.c </sect2> <sect2> <title>Buffer Object Eviction</title> -- 2.4.3
Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
On Tue, 2015-08-25 at 13:34 +0200, Daniel Vetter wrote:
On Tue, Aug 25, 2015 at 10:26:41AM +0100, Graham Whaley wrote:
Building pdfdocs shows errors with !includes and <sect>s such as: jade:/Documentation/DocBook/drm.xml:666:11:E: document type does not allow element "para" here; missing one of "glossary", "bibliography", "index" start-tag Fix by adding <title> items and add/shuffle <sect>, <title> and !include items.
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com
The idea behind having both the overview sections and the detailed function references in the same section is to have them in the same section. Is there nothing we can do to salvage that? At least you seem to add a lot more sections here, but it doesn't look entirely consistent. -Daniel
Let me go re-visit and have a look. I suspect there is an underlying rule or feature of the processing that either has restrictions on include ordering or section depth when including or both. I'll search to see if there are any examples that currently work as we'd like these to. Thanks for the feedback.
Graham
Documentation/DocBook/drm.tmpl | 32 ++++++++++++++++++++++--------
1 file changed, 22 insertions(+), 10 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index 66bc646..586f1b8 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -303,6 +303,9 @@ char *date;</synopsis> </para> !Edrivers/gpu/drm/drm_pci.c !Edrivers/gpu/drm/drm_platform.c
</sect2>
<sect2>
<title>Calling Registration Directly</title> <para> New drivers that no longer rely on the services provided
by the <structname>drm_bus</structname> structure can call the low-level @@ -2352,7 +2355,7 @@ void intel_crt_init(struct drm_device *dev) </itemizedlist> </sect2> <sect2>
<title>Atomic Modeset Helper Functions Reference</title>
<title>Atomic Modeset Helper Functions Introduction</title> <sect3>
<title>Overview</title>
!Pdrivers/gpu/drm/drm_atomic_helper.c overview @@ -2365,14 +2368,20 @@ void intel_crt_init(struct drm_device *dev)
<title>Atomic State Reset and Initialization</title> !Pdrivers/gpu/drm/drm_atomic_helper.c atomic state reset and initialization </sect3> + </sect2> + <sect2> + <title>Atomic Modeset Helper Functions Reference</title> !Iinclude/drm/drm_atomic_helper.h !Edrivers/gpu/drm/drm_atomic_helper.c </sect2> <sect2> + <title>Modeset Helper Functions Introduction</title> +!Pdrivers/gpu/drm/drm_crtc_helper.c overview + </sect2> + <sect2> <title>Modeset Helper Functions Reference</title> !Iinclude/drm/drm_crtc_helper.h !Edrivers/gpu/drm/drm_crtc_helper.c -!Pdrivers/gpu/drm/drm_crtc_helper.c overview </sect2> <sect2> <title>Output Probing Helper Functions Reference</title> @@ -2432,8 +2441,8 @@ void intel_crt_init(struct drm_device *dev) </sect2> <sect2> <title id="drm-kms-planehelpers">Plane Helper Reference</title> -!Edrivers/gpu/drm/drm_plane_helper.c !Pdrivers/gpu/drm/drm_plane_helper.c overview +!Edrivers/gpu/drm/drm_plane_helper.c </sect2> <sect2> <title>Tile group</title> @@ -2449,6 +2458,9 @@ void intel_crt_init(struct drm_device *dev) <title>Default bridge callback sequence</title> !Pdrivers/gpu/drm/drm_bridge.c bridge callbacks </sect3> + </sect2> + <sect2> + <title>Bridges Function Reference</title> !Edrivers/gpu/drm/drm_bridge.c </sect2> </sect1> @@ -4114,19 +4126,19 @@ int num_ioctls;</synopsis> <sect2> <title>GTT Fences and Swizzling</title> !Idrivers/gpu/drm/i915/i915_gem_fence.c - <sect3> - <title>Global GTT Fence Handling</title> + </sect2> + <sect2> + <title>Global GTT Fence Handling</title> !Pdrivers/gpu/drm/i915/i915_gem_fence.c fence register handling - </sect3> - <sect3> - <title>Hardware Tiling and Swizzling Details</title> + </sect2> + <sect2> + <title>Hardware Tiling and Swizzling Details</title> !Pdrivers/gpu/drm/i915/i915_gem_fence.c tiling swizzling details - </sect3> </sect2> <sect2> <title>Object Tiling IOCTLs</title> -!Idrivers/gpu/drm/i915/i915_gem_tiling.c !Pdrivers/gpu/drm/i915/i915_gem_tiling.c buffer object tiling +!Idrivers/gpu/drm/i915/i915_gem_tiling.c </sect2> <sect2> <title>Buffer Object Eviction</title> -- 2.4.3
Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Fix pdfdocs errors such as: jade:/Documentation/DocBook/drm.xml:1348:20:E: character data is not allowed here by adding <para> tags to listitems and abstracts
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com --- Documentation/DocBook/drm.tmpl | 87 +++++++++++++++++++++++------------------- 1 file changed, 48 insertions(+), 39 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index 586f1b8..952eb78 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -579,9 +579,9 @@ char *date;</synopsis> <para> On a fundamental level, GEM involves several operations: <itemizedlist> - <listitem>Memory allocation and freeing</listitem> - <listitem>Command execution</listitem> - <listitem>Aperture management at command execution time</listitem> + <listitem><para>Memory allocation and freeing</para></listitem> + <listitem><para>Command execution</para></listitem> + <listitem><para>Aperture management at command execution time</para></listitem> </itemizedlist> Buffer object allocation is relatively straightforward and largely provided by Linux's shmem layer, which provides memory to back each @@ -1386,20 +1386,20 @@ int max_width, max_height;</synopsis> <para> The DRM core recognizes three types of planes: <itemizedlist> - <listitem> + <listitem><para> DRM_PLANE_TYPE_PRIMARY represents a "main" plane for a CRTC. Primary planes are the planes operated upon by CRTC modesetting and flipping operations described in <xref linkend="drm-kms-crtcops"/>. - </listitem> - <listitem> + </para></listitem> + <listitem><para> DRM_PLANE_TYPE_CURSOR represents a "cursor" plane for a CRTC. Cursor planes are the planes operated upon by the DRM_IOCTL_MODE_CURSOR and DRM_IOCTL_MODE_CURSOR2 ioctls. - </listitem> - <listitem> + </para></listitem> + <listitem><para> DRM_PLANE_TYPE_OVERLAY represents all non-primary, non-cursor planes. Some drivers refer to these types of planes as "sprites" internally. - </listitem> + </para></listitem> </itemizedlist> For compatibility with legacy userspace, only overlay planes are made available to userspace by default. Userspace clients may set the @@ -1503,22 +1503,22 @@ int max_width, max_height;</synopsis> <function>drm_encoder_init</function>. The function takes a pointer to the encoder functions and an encoder type. Supported types are <itemizedlist> - <listitem> + <listitem><para> DRM_MODE_ENCODER_DAC for VGA and analog on DVI-I/DVI-A - </listitem> - <listitem> + </para></listitem> + <listitem><para> DRM_MODE_ENCODER_TMDS for DVI, HDMI and (embedded) DisplayPort - </listitem> - <listitem> + </para></listitem> + <listitem><para> DRM_MODE_ENCODER_LVDS for display panels - </listitem> - <listitem> + </para></listitem> + <listitem><para> DRM_MODE_ENCODER_TVDAC for TV output (Composite, S-Video, Component, SCART) - </listitem> - <listitem> + </para></listitem> + <listitem><para> DRM_MODE_ENCODER_VIRTUAL for virtual machine displays - </listitem> + </para></listitem> </itemizedlist> </para> <para> @@ -1635,21 +1635,21 @@ int max_width, max_height;</synopsis> <para> Supported connector types are <itemizedlist> - <listitem>DRM_MODE_CONNECTOR_VGA</listitem> - <listitem>DRM_MODE_CONNECTOR_DVII</listitem> - <listitem>DRM_MODE_CONNECTOR_DVID</listitem> - <listitem>DRM_MODE_CONNECTOR_DVIA</listitem> - <listitem>DRM_MODE_CONNECTOR_Composite</listitem> - <listitem>DRM_MODE_CONNECTOR_SVIDEO</listitem> - <listitem>DRM_MODE_CONNECTOR_LVDS</listitem> - <listitem>DRM_MODE_CONNECTOR_Component</listitem> - <listitem>DRM_MODE_CONNECTOR_9PinDIN</listitem> - <listitem>DRM_MODE_CONNECTOR_DisplayPort</listitem> - <listitem>DRM_MODE_CONNECTOR_HDMIA</listitem> - <listitem>DRM_MODE_CONNECTOR_HDMIB</listitem> - <listitem>DRM_MODE_CONNECTOR_TV</listitem> - <listitem>DRM_MODE_CONNECTOR_eDP</listitem> - <listitem>DRM_MODE_CONNECTOR_VIRTUAL</listitem> + <listitem><para>DRM_MODE_CONNECTOR_VGA</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_DVII</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_DVID</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_DVIA</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_Composite</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_SVIDEO</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_LVDS</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_Component</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_9PinDIN</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_DisplayPort</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_HDMIA</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_HDMIB</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_TV</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_eDP</para></listitem> + <listitem><para>DRM_MODE_CONNECTOR_VIRTUAL</para></listitem> </itemizedlist> </para> <para> @@ -3612,7 +3612,10 @@ void (*lastclose) (struct drm_device *); int (*open) (struct drm_device *, struct drm_file *); void (*preclose) (struct drm_device *, struct drm_file *); void (*postclose) (struct drm_device *, struct drm_file *);</synopsis> - <abstract>Open and close handlers. None of those methods are mandatory. + <abstract> + <para> + Open and close handlers. None of those methods are mandatory. + </para> </abstract> <para> The <methodname>firstopen</methodname> method is called by the DRM core @@ -3667,7 +3670,11 @@ void (*postclose) (struct drm_device *, struct drm_file *);</synopsis> <sect2> <title>File Operations</title> <synopsis>const struct file_operations *fops</synopsis> - <abstract>File operations for the DRM device node.</abstract> + <abstract> + <para> + File operations for the DRM device node. + </para> + </abstract> <para> Drivers must define the file operations structure that forms the DRM userspace API entry point, even though most of those operations are @@ -3717,14 +3724,17 @@ void (*postclose) (struct drm_device *, struct drm_file *);</synopsis> <title>IOCTLs</title> <synopsis>struct drm_ioctl_desc *ioctls; int num_ioctls;</synopsis> - <abstract>Driver-specific ioctls descriptors table.</abstract> + <abstract> + <para> + Driver-specific ioctls descriptors table. + </para> + </abstract> <para> Driver-specific ioctls numbers start at DRM_COMMAND_BASE. The ioctls descriptors table is indexed by the ioctl number offset from the base value. Drivers can use the DRM_IOCTL_DEF_DRV() macro to initialize the table entries. </para> - <para> <programlisting>DRM_IOCTL_DEF_DRV(ioctl, func, flags)</programlisting> <para> <parameter>ioctl</parameter> is the ioctl name. Drivers must define @@ -3763,7 +3773,6 @@ int num_ioctls;</synopsis> </para></listitem> </itemizedlist> </para> - </para> </sect2> </sect1> <sect1>
Fix pdfdocs errors such as: jade:/Documentation/DocBook/drm.xml:10084:13:E: element "code" undefined
by changing <code> tags to <literal> tags. It looks like <code> tags were introduced in DocBook v4.3, and kernel DocBook is v4.1.2. I would have used <codelisting>, but that introduces undesirable breaks into the paragraph flow.
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com --- Documentation/DocBook/drm.tmpl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index 952eb78..2e05a79 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -1198,14 +1198,14 @@ int max_width, max_height;</synopsis> <para> Beside some lookup structures with their own locking (which is hidden behind the interface functions) most of the modeset state is protected - by the <code>dev-<mode_config.lock</code> mutex and additionally + by the <literal>dev-<mode_config.lock</literal> mutex and additionally per-crtc locks to allow cursor updates, pageflips and similar operations to occur concurrently with background tasks like output detection. Operations which cross domains like a full modeset always grab all locks. Drivers there need to protect resources shared between crtcs with additional locking. They also need to be careful to always grab the relevant crtc locks if a modset functions touches crtc state, e.g. for - load detection (which does only grab the <code>mode_config.lock</code> + load detection (which does only grab the <literal>mode_config.lock</literal> to allow concurrent screen updates on live crtcs). </para> </sect2> @@ -1296,8 +1296,8 @@ int max_width, max_height;</synopsis> </para> <para> If a page flip can be successfully scheduled the driver must set the - <code>drm_crtc->fb</code> field to the new framebuffer pointed to - by <code>fb</code>. This is important so that the reference counting + <literal>drm_crtc->fb</literal> field to the new framebuffer pointed to + by <literal>fb</literal>. This is important so that the reference counting on framebuffers stays balanced. </para> <para>
The KMS Properties table is in HTML format, which is not supported for building pdfdocs, resulting in the following types of errors:
jade:/Documentation/DocBook/drm.xml:34413:15:E: there is no attribute "border" jade:/Documentation/DocBook/drm.xml:34413:31:E: there is no attribute "cellpadding" jade:/Documentation/DocBook/drm.xml:34413:47:E: there is no attribute "cellspacing" jade:/Documentation/DocBook/drm.xml:34414:7:E: document type does not allow element "tbody" here
Convert the table over to a CALS format table
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com --- Documentation/DocBook/drm.tmpl | 1866 ++++++++++++++++++++-------------------- 1 file changed, 937 insertions(+), 929 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index 2e05a79..e5bfdd8 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -2580,935 +2580,943 @@ void intel_crt_init(struct drm_device *dev) and an initial instance value. </para> <sect2> - <title>Existing KMS Properties</title> - <para> - 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> +<!-- Graham --> + <title>Existing KMS Properties</title> + <para> + The following table gives description of drm properties exposed by various + modules/drivers. + </para> + <table> + <title>Existing KMS Properties</title> + <tgroup cols="7"> + <thead> + <row> + <entry>Owner Module/Drivers</entry> + <entry>Group</entry> + <entry>Property Name</entry> + <entry>Type</entry> + <entry>Property Values</entry> + <entry>Object attached</entry> + <entry>Description/Restrictions</entry> + </row> + </thead> + <tbody valign="top"> + <row> + <entry morerows="36">DRM</entry> + <entry>Generic</entry> + <entry>“rotation”</entry> + <entry>BITMASK</entry> + <entry>{ 0, "rotate-0" }, + { 1, "rotate-90" }, + { 2, "rotate-180" }, + { 3, "rotate-270" }, + { 4, "reflect-x" }, + { 5, "reflect-y" }</entry> + <entry>CRTC, Plane</entry> + <entry>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</entry> + </row> + <row> + <entry morerows="4" >Connector</entry> + <entry>“EDID”</entry> + <entry>BLOB | IMMUTABLE</entry> + <entry>0</entry> + <entry>Connector</entry> + <entry>Contains id of edid blob ptr object.</entry> + </row> + <row> + <entry>“DPMS”</entry> + <entry>ENUM</entry> + <entry>{ “On”, “Standby”, “Suspend”, “Off” }</entry> + <entry>Connector</entry> + <entry>Contains DPMS operation mode value.</entry> + </row> + <row> + <entry>“PATH”</entry> + <entry>BLOB | IMMUTABLE</entry> + <entry>0</entry> + <entry>Connector</entry> + <entry>Contains topology path to a connector.</entry> + </row> + <row> + <entry>“TILE”</entry> + <entry>BLOB | IMMUTABLE</entry> + <entry>0</entry> + <entry>Connector</entry> + <entry>Contains tiling information for a connector.</entry> + </row> + <row> + <entry>“CRTC_ID”</entry> + <entry>OBJECT</entry> + <entry>DRM_MODE_OBJECT_CRTC</entry> + <entry>Connector</entry> + <entry>CRTC that connector is attached to (atomic)</entry> + </row> + <row> + <entry morerows="10">Plane</entry> + <entry>“type”</entry> + <entry>ENUM | IMMUTABLE</entry> + <entry>{ "Overlay", "Primary", "Cursor" }</entry> + <entry>Plane</entry> + <entry>Plane type</entry> + </row> + <row> + <entry>“SRC_X”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=UINT_MAX</entry> + <entry>Plane</entry> + <entry>Scanout source x coordinate in 16.16 fixed point (atomic)</entry> + </row> + <row> + <entry>“SRC_Y”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=UINT_MAX</entry> + <entry>Plane</entry> + <entry>Scanout source y coordinate in 16.16 fixed point (atomic)</entry> + </row> + <row> + <entry>“SRC_W”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=UINT_MAX</entry> + <entry>Plane</entry> + <entry>Scanout source width in 16.16 fixed point (atomic)</entry> + </row> + <row> + <entry>“SRC_H”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=UINT_MAX</entry> + <entry>Plane</entry> + <entry>Scanout source height in 16.16 fixed point (atomic)</entry> + </row> + <row> + <entry>“CRTC_X”</entry> + <entry>SIGNED_RANGE</entry> + <entry>Min=INT_MIN, Max=INT_MAX</entry> + <entry>Plane</entry> + <entry>Scanout CRTC (destination) x coordinate (atomic)</entry> + </row> + <row> + <entry>“CRTC_Y”</entry> + <entry>SIGNED_RANGE</entry> + <entry>Min=INT_MIN, Max=INT_MAX</entry> + <entry>Plane</entry> + <entry>Scanout CRTC (destination) y coordinate (atomic)</entry> + </row> + <row> + <entry>“CRTC_W”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=UINT_MAX</entry> + <entry>Plane</entry> + <entry>Scanout CRTC (destination) width (atomic)</entry> + </row> + <row> + <entry>“CRTC_H”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=UINT_MAX</entry> + <entry>Plane</entry> + <entry>Scanout CRTC (destination) height (atomic)</entry> + </row> + <row> + <entry>“FB_ID”</entry> + <entry>OBJECT</entry> + <entry>DRM_MODE_OBJECT_FB</entry> + <entry>Plane</entry> + <entry>Scanout framebuffer (atomic)</entry> + </row> + <row> + <entry>“CRTC_ID”</entry> + <entry>OBJECT</entry> + <entry>DRM_MODE_OBJECT_CRTC</entry> + <entry>Plane</entry> + <entry>CRTC that plane is attached to (atomic)</entry> + </row> + <row> + <entry morerows="1">DVI-I</entry> + <entry>“subconnector”</entry> + <entry>ENUM</entry> + <entry>{ “Unknown”, “DVI-D”, “DVI-A” }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“select subconnector”</entry> + <entry>ENUM</entry> + <entry>{ “Automatic”, “DVI-D”, “DVI-A” }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="12">TV</entry> + <entry>“subconnector”</entry> + <entry>ENUM</entry> + <entry>{ "Unknown", "Composite", "SVIDEO", "Component", "SCART" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“select subconnector”</entry> + <entry>ENUM</entry> + <entry>{ "Automatic", "Composite", "SVIDEO", "Component", "SCART" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“mode”</entry> + <entry>ENUM</entry> + <entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“left margin”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“right margin”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“top margin”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“bottom margin”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“brightness”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“contrast”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“flicker reduction”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“overscan”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“saturation”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“hue”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="1">Virtual GPU</entry> + <entry>“suggested X”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0xffffffff</entry> + <entry>Connector</entry> + <entry>property to suggest an X offset for a connector</entry> + </row> + <row> + <entry>“suggested Y”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0xffffffff</entry> + <entry>Connector</entry> + <entry>property to suggest an Y offset for a connector</entry> + </row> + <row> + <entry morerows="2">Optional</entry> + <entry>“scaling mode”</entry> + <entry>ENUM</entry> + <entry>{ "None", "Full", "Center", "Full aspect" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"aspect ratio"</entry> + <entry>ENUM</entry> + <entry>{ "None", "4:3", "16:9" }</entry> + <entry>Connector</entry> + <entry>DRM property to set aspect ratio from user space app. + This enum is made generic to allow addition of custom aspect + ratios.</entry> + </row> + <row> + <entry>“dirty”</entry> + <entry>ENUM | IMMUTABLE</entry> + <entry>{ "Off", "On", "Annotate" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="19">i915</entry> + <entry morerows="1">Generic</entry> + <entry>"Broadcast RGB"</entry> + <entry>ENUM</entry> + <entry>{ "Automatic", "Full", "Limited 16:235" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“audio”</entry> + <entry>ENUM</entry> + <entry>{ "force-dvi", "off", "auto", "on" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="16">SDVO-TV</entry> + <entry>“mode”</entry> + <entry>ENUM</entry> + <entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"left_margin"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"right_margin"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"top_margin"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"bottom_margin"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“hpos”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“vpos”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“contrast”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“saturation”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“hue”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“sharpness”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“flicker_filter”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“flicker_filter_adaptive”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“flicker_filter_2d”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“tv_chroma_filter”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“tv_luma_filter”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“dot_crawl”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=1</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>SDVO-TV/LVDS</entry> + <entry>“brightness”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="1">CDV gma-500</entry> + <entry morerows="1">Generic</entry> + <entry>"Broadcast RGB"</entry> + <entry>ENUM</entry> + <entry>{ “Full”, “Limited 16:235” }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"Broadcast RGB"</entry> + <entry>ENUM</entry> + <entry>{ “off”, “auto”, “on” }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="18">Poulsbo</entry> + <entry>Generic</entry> + <entry>“backlight”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=100</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="16">SDVO-TV</entry> + <entry>“mode”</entry> + <entry>ENUM</entry> + <entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"left_margin"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"right_margin"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"top_margin"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"bottom_margin"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“hpos”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“vpos”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“contrast”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“saturation”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“hue”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“sharpness”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“flicker_filter”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“flicker_filter_adaptive”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“flicker_filter_2d”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“tv_chroma_filter”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“tv_luma_filter”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“dot_crawl”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=1</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>SDVO-TV/LVDS</entry> + <entry>“brightness”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max= SDVO dependent</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="10">armada</entry> + <entry morerows="1">CRTC</entry> + <entry>"CSC_YUV"</entry> + <entry>ENUM</entry> + <entry>{ "Auto" , "CCIR601", "CCIR709" }</entry> + <entry>CRTC</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"CSC_RGB"</entry> + <entry>ENUM</entry> + <entry>{ "Auto", "Computer system", "Studio" }</entry> + <entry>CRTC</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="8">Overlay</entry> + <entry>"colorkey"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0xffffff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"colorkey_min"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0xffffff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"colorkey_max"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0xffffff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"colorkey_val"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0xffffff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"colorkey_alpha"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0xffffff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"colorkey_mode"</entry> + <entry>ENUM</entry> + <entry>{ "disabled", "Y component", "U component" + , "V component", "RGB", “R component", "G component", "B component" }</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"brightness"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=256 + 255</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"contrast"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0x7fff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"saturation"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0x7fff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="1">exynos</entry> + <entry>CRTC</entry> + <entry>“mode”</entry> + <entry>ENUM</entry> + <entry>{ "normal", "blank" }</entry> + <entry>CRTC</entry> + <entry>TBD</entry> + </row> + <row> + <entry>Overlay</entry> + <entry>“zpos”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=MAX_PLANE-1</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="1">i2c/ch7006_drv</entry> + <entry>Generic</entry> + <entry>“scale”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=2</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>TV</entry> + <entry>“mode”</entry> + <entry>ENUM</entry> + <entry>{ "PAL", "PAL-M","PAL-N"}, ”PAL-Nc" + , "PAL-60", "NTSC-M", "NTSC-J" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="14">nouveau</entry> + <entry morerows="5">NV10 Overlay</entry> + <entry>"colorkey"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0x01ffffff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“contrast”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=8192-1</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“brightness”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=1024</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“hue”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=359</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“saturation”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=8192-1</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“iturbt_709”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=1</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="1">Nv04 Overlay</entry> + <entry>“colorkey”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0x01ffffff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“brightness”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=1024</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="6">Display</entry> + <entry>“dithering mode”</entry> + <entry>ENUM</entry> + <entry>{ "auto", "off", "on" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“dithering depth”</entry> + <entry>ENUM</entry> + <entry>{ "auto", "off", "on", "static 2x2", "dynamic 2x2", "temporal" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“underscan”</entry> + <entry>ENUM</entry> + <entry>{ "auto", "6 bpc", "8 bpc" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“underscan hborder”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=128</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“underscan vborder”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=128</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“vibrant hue”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=180</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>“color vibrance”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=200</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>omap</entry> + <entry>Generic</entry> + <entry>“zorder”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=3</entry> + <entry>CRTC, Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>qxl</entry> + <entry>Generic</entry> + <entry>“hotplug_mode_update"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=1</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="8">radeon</entry> + <entry>DVI-I</entry> + <entry>“coherent”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=1</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>DAC enable load detect</entry> + <entry>“load detection”</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=1</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>TV Standard</entry> + <entry>"tv standard"</entry> + <entry>ENUM</entry> + <entry>{ "ntsc", "pal", "pal-m", "pal-60", "ntsc-j" + , "scart-pal", "pal-cn", "secam" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>legacy TMDS PLL detect</entry> + <entry>"tmds_pll"</entry> + <entry>ENUM</entry> + <entry>{ "driver", "bios" }</entry> + <entry>-</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="2">Underscan</entry> + <entry>"underscan"</entry> + <entry>ENUM</entry> + <entry>{ "off", "on", "auto" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"underscan hborder"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=128</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"underscan vborder"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=128</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>Audio</entry> + <entry>“audio”</entry> + <entry>ENUM</entry> + <entry>{ "off", "on", "auto" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry>FMT Dithering</entry> + <entry>“dither”</entry> + <entry>ENUM</entry> + <entry>{ "off", "on" }</entry> + <entry>Connector</entry> + <entry>TBD</entry> + </row> + <row> + <entry morerows="2">rcar-du</entry> + <entry morerows="2">Generic</entry> + <entry>"alpha"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=255</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"colorkey"</entry> + <entry>RANGE</entry> + <entry>Min=0, Max=0x01ffffff</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + <row> + <entry>"zpos"</entry> + <entry>RANGE</entry> + <entry>Min=1, Max=7</entry> + <entry>Plane</entry> + <entry>TBD</entry> + </row> + </tbody> + </tgroup> + </table> +<!-- Graham --> </sect2> </sect1>
On Tue, Aug 25, 2015 at 10:26:44AM +0100, Graham Whaley wrote:
The KMS Properties table is in HTML format, which is not supported for building pdfdocs, resulting in the following types of errors:
jade:/Documentation/DocBook/drm.xml:34413:15:E: there is no attribute "border" jade:/Documentation/DocBook/drm.xml:34413:31:E: there is no attribute "cellpadding" jade:/Documentation/DocBook/drm.xml:34413:47:E: there is no attribute "cellspacing" jade:/Documentation/DocBook/drm.xml:34414:7:E: document type does not allow element "tbody" here
Convert the table over to a CALS format table
Hm, long-term plan was to move this table into DOC: comments in the source-code using markdown, which we now have (at least in drm-intel-nightly and also planned to be merged into 4.4). Since this is both a lot of churn I'd like to get there in just 1 step ... -Daniel
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com
Documentation/DocBook/drm.tmpl | 1866 ++++++++++++++++++++-------------------- 1 file changed, 937 insertions(+), 929 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index 2e05a79..e5bfdd8 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -2580,935 +2580,943 @@ void intel_crt_init(struct drm_device *dev) and an initial instance value. </para> <sect2>
<title>Existing KMS Properties</title>
<para>
- 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>
+<!-- Graham -->
<title>Existing KMS Properties</title>
<para>
The following table gives description of drm properties exposed by various
modules/drivers.
</para>
<table>
<title>Existing KMS Properties</title>
<tgroup cols="7">
<thead>
<row>
<entry>Owner Module/Drivers</entry>
<entry>Group</entry>
<entry>Property Name</entry>
<entry>Type</entry>
<entry>Property Values</entry>
<entry>Object attached</entry>
<entry>Description/Restrictions</entry>
</row>
</thead>
<tbody valign="top">
<row>
<entry morerows="36">DRM</entry>
<entry>Generic</entry>
<entry>“rotation”</entry>
<entry>BITMASK</entry>
<entry>{ 0, "rotate-0" },
{ 1, "rotate-90" },
{ 2, "rotate-180" },
{ 3, "rotate-270" },
{ 4, "reflect-x" },
{ 5, "reflect-y" }</entry>
<entry>CRTC, Plane</entry>
<entry>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</entry>
</row>
<row>
<entry morerows="4" >Connector</entry>
<entry>“EDID”</entry>
<entry>BLOB | IMMUTABLE</entry>
<entry>0</entry>
<entry>Connector</entry>
<entry>Contains id of edid blob ptr object.</entry>
</row>
<row>
<entry>“DPMS”</entry>
<entry>ENUM</entry>
<entry>{ “On”, “Standby”, “Suspend”, “Off” }</entry>
<entry>Connector</entry>
<entry>Contains DPMS operation mode value.</entry>
</row>
<row>
<entry>“PATH”</entry>
<entry>BLOB | IMMUTABLE</entry>
<entry>0</entry>
<entry>Connector</entry>
<entry>Contains topology path to a connector.</entry>
</row>
<row>
<entry>“TILE”</entry>
<entry>BLOB | IMMUTABLE</entry>
<entry>0</entry>
<entry>Connector</entry>
<entry>Contains tiling information for a connector.</entry>
</row>
<row>
<entry>“CRTC_ID”</entry>
<entry>OBJECT</entry>
<entry>DRM_MODE_OBJECT_CRTC</entry>
<entry>Connector</entry>
<entry>CRTC that connector is attached to (atomic)</entry>
</row>
<row>
<entry morerows="10">Plane</entry>
<entry>“type”</entry>
<entry>ENUM | IMMUTABLE</entry>
<entry>{ "Overlay", "Primary", "Cursor" }</entry>
<entry>Plane</entry>
<entry>Plane type</entry>
</row>
<row>
<entry>“SRC_X”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source x coordinate in 16.16 fixed point (atomic)</entry>
</row>
<row>
<entry>“SRC_Y”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source y coordinate in 16.16 fixed point (atomic)</entry>
</row>
<row>
<entry>“SRC_W”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source width in 16.16 fixed point (atomic)</entry>
</row>
<row>
<entry>“SRC_H”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source height in 16.16 fixed point (atomic)</entry>
</row>
<row>
<entry>“CRTC_X”</entry>
<entry>SIGNED_RANGE</entry>
<entry>Min=INT_MIN, Max=INT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) x coordinate (atomic)</entry>
</row>
<row>
<entry>“CRTC_Y”</entry>
<entry>SIGNED_RANGE</entry>
<entry>Min=INT_MIN, Max=INT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) y coordinate (atomic)</entry>
</row>
<row>
<entry>“CRTC_W”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) width (atomic)</entry>
</row>
<row>
<entry>“CRTC_H”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) height (atomic)</entry>
</row>
<row>
<entry>“FB_ID”</entry>
<entry>OBJECT</entry>
<entry>DRM_MODE_OBJECT_FB</entry>
<entry>Plane</entry>
<entry>Scanout framebuffer (atomic)</entry>
</row>
<row>
<entry>“CRTC_ID”</entry>
<entry>OBJECT</entry>
<entry>DRM_MODE_OBJECT_CRTC</entry>
<entry>Plane</entry>
<entry>CRTC that plane is attached to (atomic)</entry>
</row>
<row>
<entry morerows="1">DVI-I</entry>
<entry>“subconnector”</entry>
<entry>ENUM</entry>
<entry>{ “Unknown”, “DVI-D”, “DVI-A” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“select subconnector”</entry>
<entry>ENUM</entry>
<entry>{ “Automatic”, “DVI-D”, “DVI-A” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="12">TV</entry>
<entry>“subconnector”</entry>
<entry>ENUM</entry>
<entry>{ "Unknown", "Composite", "SVIDEO", "Component", "SCART" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“select subconnector”</entry>
<entry>ENUM</entry>
<entry>{ "Automatic", "Composite", "SVIDEO", "Component", "SCART" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“left margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“right margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“top margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“bottom margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker reduction”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“overscan”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">Virtual GPU</entry>
<entry>“suggested X”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffffff</entry>
<entry>Connector</entry>
<entry>property to suggest an X offset for a connector</entry>
</row>
<row>
<entry>“suggested Y”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffffff</entry>
<entry>Connector</entry>
<entry>property to suggest an Y offset for a connector</entry>
</row>
<row>
<entry morerows="2">Optional</entry>
<entry>“scaling mode”</entry>
<entry>ENUM</entry>
<entry>{ "None", "Full", "Center", "Full aspect" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"aspect ratio"</entry>
<entry>ENUM</entry>
<entry>{ "None", "4:3", "16:9" }</entry>
<entry>Connector</entry>
<entry>DRM property to set aspect ratio from user space app.
This enum is made generic to allow addition of custom aspect
ratios.</entry>
</row>
<row>
<entry>“dirty”</entry>
<entry>ENUM | IMMUTABLE</entry>
<entry>{ "Off", "On", "Annotate" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="19">i915</entry>
<entry morerows="1">Generic</entry>
<entry>"Broadcast RGB"</entry>
<entry>ENUM</entry>
<entry>{ "Automatic", "Full", "Limited 16:235" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“audio”</entry>
<entry>ENUM</entry>
<entry>{ "force-dvi", "off", "auto", "on" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="16">SDVO-TV</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"left_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"right_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"top_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"bottom_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“vpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“sharpness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_adaptive”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_2d”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_chroma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_luma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“dot_crawl”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>SDVO-TV/LVDS</entry>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">CDV gma-500</entry>
<entry morerows="1">Generic</entry>
<entry>"Broadcast RGB"</entry>
<entry>ENUM</entry>
<entry>{ “Full”, “Limited 16:235” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"Broadcast RGB"</entry>
<entry>ENUM</entry>
<entry>{ “off”, “auto”, “on” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="18">Poulsbo</entry>
<entry>Generic</entry>
<entry>“backlight”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="16">SDVO-TV</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"left_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"right_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"top_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"bottom_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“vpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“sharpness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_adaptive”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_2d”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_chroma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_luma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“dot_crawl”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>SDVO-TV/LVDS</entry>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="10">armada</entry>
<entry morerows="1">CRTC</entry>
<entry>"CSC_YUV"</entry>
<entry>ENUM</entry>
<entry>{ "Auto" , "CCIR601", "CCIR709" }</entry>
<entry>CRTC</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"CSC_RGB"</entry>
<entry>ENUM</entry>
<entry>{ "Auto", "Computer system", "Studio" }</entry>
<entry>CRTC</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="8">Overlay</entry>
<entry>"colorkey"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_min"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_max"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_val"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_alpha"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_mode"</entry>
<entry>ENUM</entry>
<entry>{ "disabled", "Y component", "U component"
, "V component", "RGB", “R component", "G component", "B component" }</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"brightness"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=256 + 255</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"contrast"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x7fff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"saturation"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x7fff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">exynos</entry>
<entry>CRTC</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "normal", "blank" }</entry>
<entry>CRTC</entry>
<entry>TBD</entry>
</row>
<row>
<entry>Overlay</entry>
<entry>“zpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=MAX_PLANE-1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">i2c/ch7006_drv</entry>
<entry>Generic</entry>
<entry>“scale”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=2</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>TV</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "PAL", "PAL-M","PAL-N"}, ”PAL-Nc"
, "PAL-60", "NTSC-M", "NTSC-J" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="14">nouveau</entry>
<entry morerows="5">NV10 Overlay</entry>
<entry>"colorkey"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x01ffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=8192-1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1024</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=359</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=8192-1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“iturbt_709”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">Nv04 Overlay</entry>
<entry>“colorkey”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x01ffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1024</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="6">Display</entry>
<entry>“dithering mode”</entry>
<entry>ENUM</entry>
<entry>{ "auto", "off", "on" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“dithering depth”</entry>
<entry>ENUM</entry>
<entry>{ "auto", "off", "on", "static 2x2", "dynamic 2x2", "temporal" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“underscan”</entry>
<entry>ENUM</entry>
<entry>{ "auto", "6 bpc", "8 bpc" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“underscan hborder”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“underscan vborder”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“vibrant hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=180</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“color vibrance”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=200</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>omap</entry>
<entry>Generic</entry>
<entry>“zorder”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=3</entry>
<entry>CRTC, Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>qxl</entry>
<entry>Generic</entry>
<entry>“hotplug_mode_update"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="8">radeon</entry>
<entry>DVI-I</entry>
<entry>“coherent”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>DAC enable load detect</entry>
<entry>“load detection”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>TV Standard</entry>
<entry>"tv standard"</entry>
<entry>ENUM</entry>
<entry>{ "ntsc", "pal", "pal-m", "pal-60", "ntsc-j"
, "scart-pal", "pal-cn", "secam" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>legacy TMDS PLL detect</entry>
<entry>"tmds_pll"</entry>
<entry>ENUM</entry>
<entry>{ "driver", "bios" }</entry>
<entry>-</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="2">Underscan</entry>
<entry>"underscan"</entry>
<entry>ENUM</entry>
<entry>{ "off", "on", "auto" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"underscan hborder"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"underscan vborder"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>Audio</entry>
<entry>“audio”</entry>
<entry>ENUM</entry>
<entry>{ "off", "on", "auto" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>FMT Dithering</entry>
<entry>“dither”</entry>
<entry>ENUM</entry>
<entry>{ "off", "on" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="2">rcar-du</entry>
<entry morerows="2">Generic</entry>
<entry>"alpha"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=255</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x01ffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"zpos"</entry>
<entry>RANGE</entry>
<entry>Min=1, Max=7</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
</tbody>
</tgroup>
</table>
+<!-- Graham --> </sect2>
</sect1>
-- 2.4.3
Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
On Tue, 2015-08-25 at 16:29 +0200, Daniel Vetter wrote:
On Tue, Aug 25, 2015 at 10:26:44AM +0100, Graham Whaley wrote:
The KMS Properties table is in HTML format, which is not supported for building pdfdocs, resulting in the following types of errors:
jade:/Documentation/DocBook/drm.xml:34413:15:E: there is no attribute "border" jade:/Documentation/DocBook/drm.xml:34413:31:E: there is no attribute "cellpadding" jade:/Documentation/DocBook/drm.xml:34413:47:E: there is no attribute "cellspacing" jade:/Documentation/DocBook/drm.xml:34414:7:E: document type does not allow element "tbody" here
Convert the table over to a CALS format table
Hm, long-term plan was to move this table into DOC: comments in the source-code using markdown, which we now have (at least in drm-intel-nightly and also planned to be merged into 4.4). Since this is both a lot of churn I'd like to get there in just 1 step ... -Daniel
First - I've just noted an erroneous debug comment (or two) left in this patch as well, so looks like I will have to re-issue the series anyway.
OK. I guess this comes down to a matter of timing...
From Danilos patch of: f6d6913 (drm/doc: Convert to markdown)
we can see markdown does not natively support tables, and we'd have to make this a fixed width layout like the one in that patch I suspect. Danilo - any advice on how you did that other table conversion? I just did a pandoc docbook->markdown_github and it looks some way there - but of course seems to have not honored the multi-column items, of which there are a few. It's probably not too bad to fix up by hand - I'll see if I can get that to work... Any clue to where in the source file DOC: sections it would want to live if I get it formatted - I don't see an obvious !include near the table in the .tmpl file to piggyback.
Graham
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com
Documentation/DocBook/drm.tmpl | 1866 ++++++++++++++++++++--------
1 file changed, 937 insertions(+), 929 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index 2e05a79..e5bfdd8 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -2580,935 +2580,943 @@ void intel_crt_init(struct drm_device *dev) and an initial instance value. </para> <sect2>
<title>Existing KMS Properties</title>
<para>
- 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>
+<!-- Graham -->
<title>Existing KMS Properties</title>
<para>
The following table gives description of drm properties
exposed by various
modules/drivers.
</para>
<table>
<title>Existing KMS Properties</title>
<tgroup cols="7">
<thead>
<row>
<entry>Owner Module/Drivers</entry>
<entry>Group</entry>
<entry>Property Name</entry>
<entry>Type</entry>
<entry>Property Values</entry>
<entry>Object attached</entry>
<entry>Description/Restrictions</entry>
</row>
</thead>
<tbody valign="top">
<row>
<entry morerows="36">DRM</entry>
<entry>Generic</entry>
<entry>“rotation”</entry>
<entry>BITMASK</entry>
<entry>{ 0, "rotate-0" },
{ 1, "rotate-90" },
{ 2, "rotate-180" },
{ 3, "rotate-270" },
{ 4, "reflect-x" },
{ 5, "reflect-y" }</entry>
<entry>CRTC, Plane</entry>
<entry>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</entry>
</row>
<row>
<entry morerows="4" >Connector</entry>
<entry>“EDID”</entry>
<entry>BLOB | IMMUTABLE</entry>
<entry>0</entry>
<entry>Connector</entry>
<entry>Contains id of edid blob ptr object.</entry>
</row>
<row>
<entry>“DPMS”</entry>
<entry>ENUM</entry>
<entry>{ “On”, “Standby”, “Suspend”, “Off” }</entry>
<entry>Connector</entry>
<entry>Contains DPMS operation mode value.</entry>
</row>
<row>
<entry>“PATH”</entry>
<entry>BLOB | IMMUTABLE</entry>
<entry>0</entry>
<entry>Connector</entry>
<entry>Contains topology path to a connector.</entry>
</row>
<row>
<entry>“TILE”</entry>
<entry>BLOB | IMMUTABLE</entry>
<entry>0</entry>
<entry>Connector</entry>
<entry>Contains tiling information for a
connector.</entry>
</row>
<row>
<entry>“CRTC_ID”</entry>
<entry>OBJECT</entry>
<entry>DRM_MODE_OBJECT_CRTC</entry>
<entry>Connector</entry>
<entry>CRTC that connector is attached to
(atomic)</entry>
</row>
<row>
<entry morerows="10">Plane</entry>
<entry>“type”</entry>
<entry>ENUM | IMMUTABLE</entry>
<entry>{ "Overlay", "Primary",
"Cursor" }</entry>
<entry>Plane</entry>
<entry>Plane type</entry>
</row>
<row>
<entry>“SRC_X”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source x coordinate in 16.16 fixed
point (atomic)</entry>
</row>
<row>
<entry>“SRC_Y”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source y coordinate in 16.16 fixed
point (atomic)</entry>
</row>
<row>
<entry>“SRC_W”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source width in 16.16 fixed point
(atomic)</entry>
</row>
<row>
<entry>“SRC_H”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source height in 16.16 fixed point
(atomic)</entry>
</row>
<row>
<entry>“CRTC_X”</entry>
<entry>SIGNED_RANGE</entry>
<entry>Min=INT_MIN, Max=INT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) x coordinate
(atomic)</entry>
</row>
<row>
<entry>“CRTC_Y”</entry>
<entry>SIGNED_RANGE</entry>
<entry>Min=INT_MIN, Max=INT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) y coordinate
(atomic)</entry>
</row>
<row>
<entry>“CRTC_W”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) width
(atomic)</entry>
</row>
<row>
<entry>“CRTC_H”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) height
(atomic)</entry>
</row>
<row>
<entry>“FB_ID”</entry>
<entry>OBJECT</entry>
<entry>DRM_MODE_OBJECT_FB</entry>
<entry>Plane</entry>
<entry>Scanout framebuffer (atomic)</entry>
</row>
<row>
<entry>“CRTC_ID”</entry>
<entry>OBJECT</entry>
<entry>DRM_MODE_OBJECT_CRTC</entry>
<entry>Plane</entry>
<entry>CRTC that plane is attached to (atomic)</entry>
</row>
<row>
<entry morerows="1">DVI-I</entry>
<entry>“subconnector”</entry>
<entry>ENUM</entry>
<entry>{ “Unknown”, “DVI-D”, “DVI-A” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“select subconnector”</entry>
<entry>ENUM</entry>
<entry>{ “Automatic”, “DVI-D”, “DVI-A” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="12">TV</entry>
<entry>“subconnector”</entry>
<entry>ENUM</entry>
<entry>{ "Unknown", "Composite",
"SVIDEO", "Component", "SCART" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“select subconnector”</entry>
<entry>ENUM</entry>
<entry>{ "Automatic", "Composite",
"SVIDEO", "Component", "SCART" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "NTSC_M", "NTSC_J",
"NTSC_443", "PAL_B" } etc.</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“left margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“right margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“top margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“bottom margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker reduction”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“overscan”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">Virtual GPU</entry>
<entry>“suggested X”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffffff</entry>
<entry>Connector</entry>
<entry>property to suggest an X offset for a
connector</entry>
</row>
<row>
<entry>“suggested Y”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffffff</entry>
<entry>Connector</entry>
<entry>property to suggest an Y offset for a
connector</entry>
</row>
<row>
<entry morerows="2">Optional</entry>
<entry>“scaling mode”</entry>
<entry>ENUM</entry>
<entry>{ "None", "Full",
"Center", "Full aspect" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"aspect ratio"</entry>
<entry>ENUM</entry>
<entry>{ "None", "4:3",
"16:9" }</entry>
<entry>Connector</entry>
<entry>DRM property to set aspect ratio from user
space app.
This enum is made generic to allow addition of
custom aspect
ratios.</entry>
</row>
<row>
<entry>“dirty”</entry>
<entry>ENUM | IMMUTABLE</entry>
<entry>{ "Off", "On",
"Annotate" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="19">i915</entry>
<entry morerows="1">Generic</entry>
<entry>"Broadcast RGB"</entry>
<entry>ENUM</entry>
<entry>{ "Automatic", "Full",
"Limited 16:235" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“audio”</entry>
<entry>ENUM</entry>
<entry>{ "force-dvi", "off",
"auto", "on" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="16">SDVO-TV</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "NTSC_M", "NTSC_J",
"NTSC_443", "PAL_B" } etc.</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"left_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"right_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"top_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"bottom_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“vpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“sharpness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_adaptive”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_2d”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_chroma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_luma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“dot_crawl”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>SDVO-TV/LVDS</entry>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">CDV gma-500</entry>
<entry morerows="1">Generic</entry>
<entry>"Broadcast RGB"</entry>
<entry>ENUM</entry>
<entry>{ “Full”, “Limited 16:235” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"Broadcast RGB"</entry>
<entry>ENUM</entry>
<entry>{ “off”, “auto”, “on” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="18">Poulsbo</entry>
<entry>Generic</entry>
<entry>“backlight”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="16">SDVO-TV</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "NTSC_M", "NTSC_J",
"NTSC_443", "PAL_B" } etc.</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"left_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"right_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"top_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"bottom_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“vpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“sharpness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_adaptive”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_2d”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_chroma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_luma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“dot_crawl”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>SDVO-TV/LVDS</entry>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="10">armada</entry>
<entry morerows="1">CRTC</entry>
<entry>"CSC_YUV"</entry>
<entry>ENUM</entry>
<entry>{ "Auto" , "CCIR601",
"CCIR709" }</entry>
<entry>CRTC</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"CSC_RGB"</entry>
<entry>ENUM</entry>
<entry>{ "Auto", "Computer
system", "Studio" }</entry>
<entry>CRTC</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="8">Overlay</entry>
<entry>"colorkey"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_min"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_max"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_val"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_alpha"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_mode"</entry>
<entry>ENUM</entry>
<entry>{ "disabled", "Y
component", "U component"
, "V component", "RGB", “R
component", "G component", "B component" }</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"brightness"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=256 + 255</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"contrast"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x7fff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"saturation"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x7fff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">exynos</entry>
<entry>CRTC</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "normal", "blank"
}</entry>
<entry>CRTC</entry>
<entry>TBD</entry>
</row>
<row>
<entry>Overlay</entry>
<entry>“zpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=MAX_PLANE-1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">i2c/ch7006_drv</entry>
<entry>Generic</entry>
<entry>“scale”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=2</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>TV</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "PAL", "PAL-M","PAL
-N"}, ”PAL-Nc"
, "PAL-60", "NTSC-M", "NTSC
-J" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="14">nouveau</entry>
<entry morerows="5">NV10 Overlay</entry>
<entry>"colorkey"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x01ffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=8192-1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1024</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=359</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=8192-1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“iturbt_709”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">Nv04 Overlay</entry>
<entry>“colorkey”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x01ffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1024</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="6">Display</entry>
<entry>“dithering mode”</entry>
<entry>ENUM</entry>
<entry>{ "auto", "off",
"on" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“dithering depth”</entry>
<entry>ENUM</entry>
<entry>{ "auto", "off",
"on", "static 2x2", "dynamic 2x2", "temporal" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“underscan”</entry>
<entry>ENUM</entry>
<entry>{ "auto", "6 bpc", "8
bpc" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“underscan hborder”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“underscan vborder”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“vibrant hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=180</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“color vibrance”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=200</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>omap</entry>
<entry>Generic</entry>
<entry>“zorder”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=3</entry>
<entry>CRTC, Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>qxl</entry>
<entry>Generic</entry>
<entry>“hotplug_mode_update"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="8">radeon</entry>
<entry>DVI-I</entry>
<entry>“coherent”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>DAC enable load detect</entry>
<entry>“load detection”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>TV Standard</entry>
<entry>"tv standard"</entry>
<entry>ENUM</entry>
<entry>{ "ntsc", "pal", "pal
-m", "pal-60", "ntsc-j"
, "scart-pal", "pal-cn",
"secam" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>legacy TMDS PLL detect</entry>
<entry>"tmds_pll"</entry>
<entry>ENUM</entry>
<entry>{ "driver", "bios"
}</entry>
<entry>-</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="2">Underscan</entry>
<entry>"underscan"</entry>
<entry>ENUM</entry>
<entry>{ "off", "on",
"auto" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"underscan hborder"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"underscan vborder"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>Audio</entry>
<entry>“audio”</entry>
<entry>ENUM</entry>
<entry>{ "off", "on",
"auto" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>FMT Dithering</entry>
<entry>“dither”</entry>
<entry>ENUM</entry>
<entry>{ "off", "on" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="2">rcar-du</entry>
<entry morerows="2">Generic</entry>
<entry>"alpha"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=255</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x01ffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"zpos"</entry>
<entry>RANGE</entry>
<entry>Min=1, Max=7</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
</tbody>
</tgroup>
</table>
+<!-- Graham --> </sect2>
</sect1>
-- 2.4.3
Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
On Tue, Aug 25, 2015 at 05:10:54PM +0100, Graham Whaley wrote:
On Tue, 2015-08-25 at 16:29 +0200, Daniel Vetter wrote:
On Tue, Aug 25, 2015 at 10:26:44AM +0100, Graham Whaley wrote:
The KMS Properties table is in HTML format, which is not supported for building pdfdocs, resulting in the following types of errors:
jade:/Documentation/DocBook/drm.xml:34413:15:E: there is no attribute "border" jade:/Documentation/DocBook/drm.xml:34413:31:E: there is no attribute "cellpadding" jade:/Documentation/DocBook/drm.xml:34413:47:E: there is no attribute "cellspacing" jade:/Documentation/DocBook/drm.xml:34414:7:E: document type does not allow element "tbody" here
Convert the table over to a CALS format table
Hm, long-term plan was to move this table into DOC: comments in the source-code using markdown, which we now have (at least in drm-intel-nightly and also planned to be merged into 4.4). Since this is both a lot of churn I'd like to get there in just 1 step ... -Daniel
First - I've just noted an erroneous debug comment (or two) left in this patch as well, so looks like I will have to re-issue the series anyway.
OK. I guess this comes down to a matter of timing... From Danilos patch of: f6d6913 (drm/doc: Convert to markdown) we can see markdown does not natively support tables, and we'd have to make this a fixed width layout like the one in that patch I suspect. Danilo - any advice on how you did that other table conversion? I just did a pandoc docbook->markdown_github and it looks some way there - but of course seems to have not honored the multi-column items, of which there are a few. It's probably not too bad to fix up by hand - I'll see if I can get that to work... Any clue to where in the source file DOC: sections it would want to live if I get it formatted - I don't see an obvious !include near the table in the .tmpl file to piggyback.
Yeah it's a bit more involved and probably a bigger series. We might even want to split up this table into per-feature stuff since the current one doesn't really scale. Otoh that can be done later on.
What I'd do is split it into sections (generic, i915, ...) so that we can avoid the row-spanning as much as possible, and then just place it somewhere into drm_crtc.c - that's the grab-bag for all things modeset (which properties are a part of). Maybe longer-term we want to split out a drm_properties.c or something like that with the pile of support code we have already, plus this kerneldoc. -Daniel
Graham
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com
Documentation/DocBook/drm.tmpl | 1866 ++++++++++++++++++++--------
1 file changed, 937 insertions(+), 929 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index 2e05a79..e5bfdd8 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -2580,935 +2580,943 @@ void intel_crt_init(struct drm_device *dev) and an initial instance value. </para> <sect2>
<title>Existing KMS Properties</title>
<para>
- 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>
+<!-- Graham -->
<title>Existing KMS Properties</title>
<para>
The following table gives description of drm properties
exposed by various
modules/drivers.
</para>
<table>
<title>Existing KMS Properties</title>
<tgroup cols="7">
<thead>
<row>
<entry>Owner Module/Drivers</entry>
<entry>Group</entry>
<entry>Property Name</entry>
<entry>Type</entry>
<entry>Property Values</entry>
<entry>Object attached</entry>
<entry>Description/Restrictions</entry>
</row>
</thead>
<tbody valign="top">
<row>
<entry morerows="36">DRM</entry>
<entry>Generic</entry>
<entry>“rotation”</entry>
<entry>BITMASK</entry>
<entry>{ 0, "rotate-0" },
{ 1, "rotate-90" },
{ 2, "rotate-180" },
{ 3, "rotate-270" },
{ 4, "reflect-x" },
{ 5, "reflect-y" }</entry>
<entry>CRTC, Plane</entry>
<entry>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</entry>
</row>
<row>
<entry morerows="4" >Connector</entry>
<entry>“EDID”</entry>
<entry>BLOB | IMMUTABLE</entry>
<entry>0</entry>
<entry>Connector</entry>
<entry>Contains id of edid blob ptr object.</entry>
</row>
<row>
<entry>“DPMS”</entry>
<entry>ENUM</entry>
<entry>{ “On”, “Standby”, “Suspend”, “Off” }</entry>
<entry>Connector</entry>
<entry>Contains DPMS operation mode value.</entry>
</row>
<row>
<entry>“PATH”</entry>
<entry>BLOB | IMMUTABLE</entry>
<entry>0</entry>
<entry>Connector</entry>
<entry>Contains topology path to a connector.</entry>
</row>
<row>
<entry>“TILE”</entry>
<entry>BLOB | IMMUTABLE</entry>
<entry>0</entry>
<entry>Connector</entry>
<entry>Contains tiling information for a
connector.</entry>
</row>
<row>
<entry>“CRTC_ID”</entry>
<entry>OBJECT</entry>
<entry>DRM_MODE_OBJECT_CRTC</entry>
<entry>Connector</entry>
<entry>CRTC that connector is attached to
(atomic)</entry>
</row>
<row>
<entry morerows="10">Plane</entry>
<entry>“type”</entry>
<entry>ENUM | IMMUTABLE</entry>
<entry>{ "Overlay", "Primary",
"Cursor" }</entry>
<entry>Plane</entry>
<entry>Plane type</entry>
</row>
<row>
<entry>“SRC_X”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source x coordinate in 16.16 fixed
point (atomic)</entry>
</row>
<row>
<entry>“SRC_Y”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source y coordinate in 16.16 fixed
point (atomic)</entry>
</row>
<row>
<entry>“SRC_W”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source width in 16.16 fixed point
(atomic)</entry>
</row>
<row>
<entry>“SRC_H”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout source height in 16.16 fixed point
(atomic)</entry>
</row>
<row>
<entry>“CRTC_X”</entry>
<entry>SIGNED_RANGE</entry>
<entry>Min=INT_MIN, Max=INT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) x coordinate
(atomic)</entry>
</row>
<row>
<entry>“CRTC_Y”</entry>
<entry>SIGNED_RANGE</entry>
<entry>Min=INT_MIN, Max=INT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) y coordinate
(atomic)</entry>
</row>
<row>
<entry>“CRTC_W”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) width
(atomic)</entry>
</row>
<row>
<entry>“CRTC_H”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=UINT_MAX</entry>
<entry>Plane</entry>
<entry>Scanout CRTC (destination) height
(atomic)</entry>
</row>
<row>
<entry>“FB_ID”</entry>
<entry>OBJECT</entry>
<entry>DRM_MODE_OBJECT_FB</entry>
<entry>Plane</entry>
<entry>Scanout framebuffer (atomic)</entry>
</row>
<row>
<entry>“CRTC_ID”</entry>
<entry>OBJECT</entry>
<entry>DRM_MODE_OBJECT_CRTC</entry>
<entry>Plane</entry>
<entry>CRTC that plane is attached to (atomic)</entry>
</row>
<row>
<entry morerows="1">DVI-I</entry>
<entry>“subconnector”</entry>
<entry>ENUM</entry>
<entry>{ “Unknown”, “DVI-D”, “DVI-A” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“select subconnector”</entry>
<entry>ENUM</entry>
<entry>{ “Automatic”, “DVI-D”, “DVI-A” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="12">TV</entry>
<entry>“subconnector”</entry>
<entry>ENUM</entry>
<entry>{ "Unknown", "Composite",
"SVIDEO", "Component", "SCART" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“select subconnector”</entry>
<entry>ENUM</entry>
<entry>{ "Automatic", "Composite",
"SVIDEO", "Component", "SCART" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "NTSC_M", "NTSC_J",
"NTSC_443", "PAL_B" } etc.</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“left margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“right margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“top margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“bottom margin”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker reduction”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“overscan”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">Virtual GPU</entry>
<entry>“suggested X”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffffff</entry>
<entry>Connector</entry>
<entry>property to suggest an X offset for a
connector</entry>
</row>
<row>
<entry>“suggested Y”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffffff</entry>
<entry>Connector</entry>
<entry>property to suggest an Y offset for a
connector</entry>
</row>
<row>
<entry morerows="2">Optional</entry>
<entry>“scaling mode”</entry>
<entry>ENUM</entry>
<entry>{ "None", "Full",
"Center", "Full aspect" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"aspect ratio"</entry>
<entry>ENUM</entry>
<entry>{ "None", "4:3",
"16:9" }</entry>
<entry>Connector</entry>
<entry>DRM property to set aspect ratio from user
space app.
This enum is made generic to allow addition of
custom aspect
ratios.</entry>
</row>
<row>
<entry>“dirty”</entry>
<entry>ENUM | IMMUTABLE</entry>
<entry>{ "Off", "On",
"Annotate" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="19">i915</entry>
<entry morerows="1">Generic</entry>
<entry>"Broadcast RGB"</entry>
<entry>ENUM</entry>
<entry>{ "Automatic", "Full",
"Limited 16:235" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“audio”</entry>
<entry>ENUM</entry>
<entry>{ "force-dvi", "off",
"auto", "on" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="16">SDVO-TV</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "NTSC_M", "NTSC_J",
"NTSC_443", "PAL_B" } etc.</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"left_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"right_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"top_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"bottom_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“vpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“sharpness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_adaptive”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_2d”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_chroma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_luma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“dot_crawl”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>SDVO-TV/LVDS</entry>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">CDV gma-500</entry>
<entry morerows="1">Generic</entry>
<entry>"Broadcast RGB"</entry>
<entry>ENUM</entry>
<entry>{ “Full”, “Limited 16:235” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"Broadcast RGB"</entry>
<entry>ENUM</entry>
<entry>{ “off”, “auto”, “on” }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="18">Poulsbo</entry>
<entry>Generic</entry>
<entry>“backlight”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=100</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="16">SDVO-TV</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "NTSC_M", "NTSC_J",
"NTSC_443", "PAL_B" } etc.</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"left_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"right_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"top_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"bottom_margin"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“vpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“sharpness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_adaptive”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“flicker_filter_2d”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_chroma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“tv_luma_filter”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“dot_crawl”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>SDVO-TV/LVDS</entry>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max= SDVO dependent</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="10">armada</entry>
<entry morerows="1">CRTC</entry>
<entry>"CSC_YUV"</entry>
<entry>ENUM</entry>
<entry>{ "Auto" , "CCIR601",
"CCIR709" }</entry>
<entry>CRTC</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"CSC_RGB"</entry>
<entry>ENUM</entry>
<entry>{ "Auto", "Computer
system", "Studio" }</entry>
<entry>CRTC</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="8">Overlay</entry>
<entry>"colorkey"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_min"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_max"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_val"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_alpha"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0xffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey_mode"</entry>
<entry>ENUM</entry>
<entry>{ "disabled", "Y
component", "U component"
, "V component", "RGB", “R
component", "G component", "B component" }</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"brightness"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=256 + 255</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"contrast"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x7fff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"saturation"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x7fff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">exynos</entry>
<entry>CRTC</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "normal", "blank"
}</entry>
<entry>CRTC</entry>
<entry>TBD</entry>
</row>
<row>
<entry>Overlay</entry>
<entry>“zpos”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=MAX_PLANE-1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">i2c/ch7006_drv</entry>
<entry>Generic</entry>
<entry>“scale”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=2</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>TV</entry>
<entry>“mode”</entry>
<entry>ENUM</entry>
<entry>{ "PAL", "PAL-M","PAL
-N"}, ”PAL-Nc"
, "PAL-60", "NTSC-M", "NTSC
-J" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="14">nouveau</entry>
<entry morerows="5">NV10 Overlay</entry>
<entry>"colorkey"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x01ffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“contrast”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=8192-1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1024</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=359</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“saturation”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=8192-1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“iturbt_709”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="1">Nv04 Overlay</entry>
<entry>“colorkey”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x01ffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“brightness”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1024</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="6">Display</entry>
<entry>“dithering mode”</entry>
<entry>ENUM</entry>
<entry>{ "auto", "off",
"on" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“dithering depth”</entry>
<entry>ENUM</entry>
<entry>{ "auto", "off",
"on", "static 2x2", "dynamic 2x2", "temporal" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“underscan”</entry>
<entry>ENUM</entry>
<entry>{ "auto", "6 bpc", "8
bpc" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“underscan hborder”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“underscan vborder”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“vibrant hue”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=180</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>“color vibrance”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=200</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>omap</entry>
<entry>Generic</entry>
<entry>“zorder”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=3</entry>
<entry>CRTC, Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>qxl</entry>
<entry>Generic</entry>
<entry>“hotplug_mode_update"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="8">radeon</entry>
<entry>DVI-I</entry>
<entry>“coherent”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>DAC enable load detect</entry>
<entry>“load detection”</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=1</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>TV Standard</entry>
<entry>"tv standard"</entry>
<entry>ENUM</entry>
<entry>{ "ntsc", "pal", "pal
-m", "pal-60", "ntsc-j"
, "scart-pal", "pal-cn",
"secam" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>legacy TMDS PLL detect</entry>
<entry>"tmds_pll"</entry>
<entry>ENUM</entry>
<entry>{ "driver", "bios"
}</entry>
<entry>-</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="2">Underscan</entry>
<entry>"underscan"</entry>
<entry>ENUM</entry>
<entry>{ "off", "on",
"auto" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"underscan hborder"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"underscan vborder"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=128</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>Audio</entry>
<entry>“audio”</entry>
<entry>ENUM</entry>
<entry>{ "off", "on",
"auto" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry>FMT Dithering</entry>
<entry>“dither”</entry>
<entry>ENUM</entry>
<entry>{ "off", "on" }</entry>
<entry>Connector</entry>
<entry>TBD</entry>
</row>
<row>
<entry morerows="2">rcar-du</entry>
<entry morerows="2">Generic</entry>
<entry>"alpha"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=255</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"colorkey"</entry>
<entry>RANGE</entry>
<entry>Min=0, Max=0x01ffffff</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
<row>
<entry>"zpos"</entry>
<entry>RANGE</entry>
<entry>Min=1, Max=7</entry>
<entry>Plane</entry>
<entry>TBD</entry>
</row>
</tbody>
</tgroup>
</table>
+<!-- Graham --> </sect2>
</sect1>
-- 2.4.3
Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
On 08/25/2015 01:10 PM, Graham Whaley wrote:
On Tue, 2015-08-25 at 16:29 +0200, Daniel Vetter wrote:
On Tue, Aug 25, 2015 at 10:26:44AM +0100, Graham Whaley wrote:
The KMS Properties table is in HTML format, which is not supported for building pdfdocs, resulting in the following types of errors:
jade:/Documentation/DocBook/drm.xml:34413:15:E: there is no attribute "border" jade:/Documentation/DocBook/drm.xml:34413:31:E: there is no attribute "cellpadding" jade:/Documentation/DocBook/drm.xml:34413:47:E: there is no attribute "cellspacing" jade:/Documentation/DocBook/drm.xml:34414:7:E: document type does not allow element "tbody" here
Convert the table over to a CALS format table
Hm, long-term plan was to move this table into DOC: comments in the source-code using markdown, which we now have (at least in drm-intel-nightly and also planned to be merged into 4.4). Since this is both a lot of churn I'd like to get there in just 1 step ... -Daniel
First - I've just noted an erroneous debug comment (or two) left in this patch as well, so looks like I will have to re-issue the series anyway.
OK. I guess this comes down to a matter of timing... From Danilos patch of: f6d6913 (drm/doc: Convert to markdown) we can see markdown does not natively support tables, and we'd have to make this a fixed width layout like the one in that patch I suspect. Danilo - any advice on how you did that other table conversion? I just did a pandoc docbook->markdown_github and it looks some way there - but of course seems to have not honored the multi-column items, of which there are a few. It's probably not too bad to fix up by hand - I'll see if I can get that to work...
Hi Graham,
To be honest I didn't have to do any conversion as that table was already in the header file. I just added 4 spaces so it would be transformed into fixed width.
However, there's tool you can use to help you: http://pandoc.org/try/ I did a lot of translation there. If your table doesn't have any spancells, you can put the HTML code there and get the Markdown for free.
Danilo
On Tue, 2015-09-01 at 14:56 -0300, Danilo Cesar Lemes de Paula wrote:
On 08/25/2015 01:10 PM, Graham Whaley wrote:
On Tue, 2015-08-25 at 16:29 +0200, Daniel Vetter wrote:
On Tue, Aug 25, 2015 at 10:26:44AM +0100, Graham Whaley wrote:
The KMS Properties table is in HTML format, which is not supported for building pdfdocs, resulting in the following types of errors:
jade:/Documentation/DocBook/drm.xml:34413:15:E: there is no attribute "border" jade:/Documentation/DocBook/drm.xml:34413:31:E: there is no attribute "cellpadding" jade:/Documentation/DocBook/drm.xml:34413:47:E: there is no attribute "cellspacing" jade:/Documentation/DocBook/drm.xml:34414:7:E: document type does not allow element "tbody" here
Convert the table over to a CALS format table
Hm, long-term plan was to move this table into DOC: comments in the source-code using markdown, which we now have (at least in drm-intel-nightly and also planned to be merged into 4.4). Since this is both a lot of churn I'd like to get there in just 1 step ... -Daniel
First - I've just noted an erroneous debug comment (or two) left in this patch as well, so looks like I will have to re-issue the series anyway.
OK. I guess this comes down to a matter of timing... From Danilos patch of: f6d6913 (drm/doc: Convert to markdown) we can see markdown does not natively support tables, and we'd have to make this a fixed width layout like the one in that patch I suspect. Danilo - any advice on how you did that other table conversion? I just did a pandoc docbook->markdown_github and it looks some way there - but of course seems to have not honored the multi-column items, of which there are a few. It's probably not too bad to fix up by hand - I'll see if I can get that to work...
Hi Graham,
To be honest I didn't have to do any conversion as that table was already in the header file. I just added 4 spaces so it would be transformed into fixed width.
However, there's tool you can use to help you: http://pandoc.org/try/ I did a lot of translation there. If your table doesn't have any spancells, you can put the HTML code there and get the Markdown for free.
Danilo
Thanks, I got to have a look at this yesterday. I did a text render from the html using 'links' that worked surprisingly well, but the table has many spancells (both vertical and horizontal), and some other issues arose. I'll do an email later with some details of what I've found, but right now I'm not hopeful that it will be practical to move that large KMS Properties table to markdown. More later.
Graham
On Tue, 2015-09-01 at 14:56 -0300, Danilo Cesar Lemes de Paula wrote:
On 08/25/2015 01:10 PM, Graham Whaley wrote:
On Tue, 2015-08-25 at 16:29 +0200, Daniel Vetter wrote:
On Tue, Aug 25, 2015 at 10:26:44AM +0100, Graham Whaley wrote:
The KMS Properties table is in HTML format, which is not supported for building pdfdocs, resulting in the following types of errors:
jade:/Documentation/DocBook/drm.xml:34413:15:E: there is no attribute "border" jade:/Documentation/DocBook/drm.xml:34413:31:E: there is no attribute "cellpadding" jade:/Documentation/DocBook/drm.xml:34413:47:E: there is no attribute "cellspacing" jade:/Documentation/DocBook/drm.xml:34414:7:E: document type does not allow element "tbody" here
Convert the table over to a CALS format table
Hm, long-term plan was to move this table into DOC: comments in the source-code using markdown, which we now have (at least in drm-intel-nightly and also planned to be merged into 4.4). Since this is both a lot of churn I'd like to get there in just 1 step ... -Daniel
First - I've just noted an erroneous debug comment (or two) left in this patch as well, so looks like I will have to re-issue the series anyway.
OK. I guess this comes down to a matter of timing... From Danilos patch of: f6d6913 (drm/doc: Convert to markdown) we can see markdown does not natively support tables, and we'd have to make this a fixed width layout like the one in that patch I suspect. Danilo - any advice on how you did that other table conversion? I just did a pandoc docbook->markdown_github and it looks some way there - but of course seems to have not honored the multi-column items, of which there are a few. It's probably not too bad to fix up by hand - I'll see if I can get that to work...
Hi Graham,
To be honest I didn't have to do any conversion as that table was already in the header file. I just added 4 spaces so it would be transformed into fixed width.
However, there's tool you can use to help you: http://pandoc.org/try/ I did a lot of translation there. If your table doesn't have any spancells, you can put the HTML code there and get the Markdown for free.
Danilo
Hi, following this email should be an [RFC] patch with the subject: [RFC] Docs: drm: Move KMS properties table out to source files
This is not a fix - it is an example to show that maybe this table does not migrate well to markdown. Danilo, if you have any thoughts about the 'quote expansion' detailed in the patch I'd be interested. Daniel, we should probably consider if moving this table to markdown will work out given the width of the table and the restrictions of having to use fixed width for multi-row markdown table representation.
Graham
There is a mixture of ", " and extended character quotes through the document - unify on ".
Note, the extended character quotes caused pdfdoc build errors such as: jade:/Documentation/DocBook/drm.xml:34432:20:E: non SGML character number 128 jade:/Documentation/DocBook/drm.xml:34432:21:E: non SGML character number 156
Signed-off-by: Graham Whaley graham.whaley@linux.intel.com --- Documentation/DocBook/drm.tmpl | 320 ++++++++++++++++++++--------------------- 1 file changed, 160 insertions(+), 160 deletions(-)
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index e5bfdd8..3bd5936 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl @@ -2604,14 +2604,14 @@ void intel_crt_init(struct drm_device *dev) <row> <entry morerows="36">DRM</entry> <entry>Generic</entry> - <entry>“rotation”</entry> + <entry>"rotation"</entry> <entry>BITMASK</entry> - <entry>{ 0, "rotate-0" }, - { 1, "rotate-90" }, - { 2, "rotate-180" }, - { 3, "rotate-270" }, - { 4, "reflect-x" }, - { 5, "reflect-y" }</entry> + <entry>{ 0, "rotate-0" }, + { 1, "rotate-90" }, + { 2, "rotate-180" }, + { 3, "rotate-270" }, + { 4, "reflect-x" }, + { 5, "reflect-y" }</entry> <entry>CRTC, Plane</entry> <entry>rotate-(degrees) rotates the image by the specified amount in degrees in counter clockwise direction. reflect-x and reflect-y @@ -2620,35 +2620,35 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry morerows="4" >Connector</entry> - <entry>“EDID”</entry> + <entry>"EDID"</entry> <entry>BLOB | IMMUTABLE</entry> <entry>0</entry> <entry>Connector</entry> <entry>Contains id of edid blob ptr object.</entry> </row> <row> - <entry>“DPMS”</entry> + <entry>"DPMS"</entry> <entry>ENUM</entry> - <entry>{ “On”, “Standby”, “Suspend”, “Off” }</entry> + <entry>{ "On", "Standby", "Suspend", "Off" }</entry> <entry>Connector</entry> <entry>Contains DPMS operation mode value.</entry> </row> <row> - <entry>“PATH”</entry> + <entry>"PATH"</entry> <entry>BLOB | IMMUTABLE</entry> <entry>0</entry> <entry>Connector</entry> <entry>Contains topology path to a connector.</entry> </row> <row> - <entry>“TILE”</entry> + <entry>"TILE"</entry> <entry>BLOB | IMMUTABLE</entry> <entry>0</entry> <entry>Connector</entry> <entry>Contains tiling information for a connector.</entry> </row> <row> - <entry>“CRTC_ID”</entry> + <entry>"CRTC_ID"</entry> <entry>OBJECT</entry> <entry>DRM_MODE_OBJECT_CRTC</entry> <entry>Connector</entry> @@ -2656,77 +2656,77 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry morerows="10">Plane</entry> - <entry>“type”</entry> + <entry>"type"</entry> <entry>ENUM | IMMUTABLE</entry> - <entry>{ "Overlay", "Primary", "Cursor" }</entry> + <entry>{ "Overlay", "Primary", "Cursor" }</entry> <entry>Plane</entry> <entry>Plane type</entry> </row> <row> - <entry>“SRC_X”</entry> + <entry>"SRC_X"</entry> <entry>RANGE</entry> <entry>Min=0, Max=UINT_MAX</entry> <entry>Plane</entry> <entry>Scanout source x coordinate in 16.16 fixed point (atomic)</entry> </row> <row> - <entry>“SRC_Y”</entry> + <entry>"SRC_Y"</entry> <entry>RANGE</entry> <entry>Min=0, Max=UINT_MAX</entry> <entry>Plane</entry> <entry>Scanout source y coordinate in 16.16 fixed point (atomic)</entry> </row> <row> - <entry>“SRC_W”</entry> + <entry>"SRC_W"</entry> <entry>RANGE</entry> <entry>Min=0, Max=UINT_MAX</entry> <entry>Plane</entry> <entry>Scanout source width in 16.16 fixed point (atomic)</entry> </row> <row> - <entry>“SRC_H”</entry> + <entry>"SRC_H"</entry> <entry>RANGE</entry> <entry>Min=0, Max=UINT_MAX</entry> <entry>Plane</entry> <entry>Scanout source height in 16.16 fixed point (atomic)</entry> </row> <row> - <entry>“CRTC_X”</entry> + <entry>"CRTC_X"</entry> <entry>SIGNED_RANGE</entry> <entry>Min=INT_MIN, Max=INT_MAX</entry> <entry>Plane</entry> <entry>Scanout CRTC (destination) x coordinate (atomic)</entry> </row> <row> - <entry>“CRTC_Y”</entry> + <entry>"CRTC_Y"</entry> <entry>SIGNED_RANGE</entry> <entry>Min=INT_MIN, Max=INT_MAX</entry> <entry>Plane</entry> <entry>Scanout CRTC (destination) y coordinate (atomic)</entry> </row> <row> - <entry>“CRTC_W”</entry> + <entry>"CRTC_W"</entry> <entry>RANGE</entry> <entry>Min=0, Max=UINT_MAX</entry> <entry>Plane</entry> <entry>Scanout CRTC (destination) width (atomic)</entry> </row> <row> - <entry>“CRTC_H”</entry> + <entry>"CRTC_H"</entry> <entry>RANGE</entry> <entry>Min=0, Max=UINT_MAX</entry> <entry>Plane</entry> <entry>Scanout CRTC (destination) height (atomic)</entry> </row> <row> - <entry>“FB_ID”</entry> + <entry>"FB_ID"</entry> <entry>OBJECT</entry> <entry>DRM_MODE_OBJECT_FB</entry> <entry>Plane</entry> <entry>Scanout framebuffer (atomic)</entry> </row> <row> - <entry>“CRTC_ID”</entry> + <entry>"CRTC_ID"</entry> <entry>OBJECT</entry> <entry>DRM_MODE_OBJECT_CRTC</entry> <entry>Plane</entry> @@ -2734,106 +2734,106 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry morerows="1">DVI-I</entry> - <entry>“subconnector”</entry> + <entry>"subconnector"</entry> <entry>ENUM</entry> - <entry>{ “Unknown”, “DVI-D”, “DVI-A” }</entry> + <entry>{ "Unknown", "DVI-D", "DVI-A" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“select subconnector”</entry> + <entry>"select subconnector"</entry> <entry>ENUM</entry> - <entry>{ “Automatic”, “DVI-D”, “DVI-A” }</entry> + <entry>{ "Automatic", "DVI-D", "DVI-A" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> <entry morerows="12">TV</entry> - <entry>“subconnector”</entry> + <entry>"subconnector"</entry> <entry>ENUM</entry> - <entry>{ "Unknown", "Composite", "SVIDEO", "Component", "SCART" }</entry> + <entry>{ "Unknown", "Composite", "SVIDEO", "Component", "SCART" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“select subconnector”</entry> + <entry>"select subconnector"</entry> <entry>ENUM</entry> - <entry>{ "Automatic", "Composite", "SVIDEO", "Component", "SCART" }</entry> + <entry>{ "Automatic", "Composite", "SVIDEO", "Component", "SCART" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“mode”</entry> + <entry>"mode"</entry> <entry>ENUM</entry> - <entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry> + <entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“left margin”</entry> + <entry>"left margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“right margin”</entry> + <entry>"right margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“top margin”</entry> + <entry>"top margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“bottom margin”</entry> + <entry>"bottom margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“brightness”</entry> + <entry>"brightness"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“contrast”</entry> + <entry>"contrast"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“flicker reduction”</entry> + <entry>"flicker reduction"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“overscan”</entry> + <entry>"overscan"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“saturation”</entry> + <entry>"saturation"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“hue”</entry> + <entry>"hue"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> @@ -2841,14 +2841,14 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry morerows="1">Virtual GPU</entry> - <entry>“suggested X”</entry> + <entry>"suggested X"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0xffffffff</entry> <entry>Connector</entry> <entry>property to suggest an X offset for a connector</entry> </row> <row> - <entry>“suggested Y”</entry> + <entry>"suggested Y"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0xffffffff</entry> <entry>Connector</entry> @@ -2856,159 +2856,159 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry morerows="2">Optional</entry> - <entry>“scaling mode”</entry> + <entry>"scaling mode"</entry> <entry>ENUM</entry> - <entry>{ "None", "Full", "Center", "Full aspect" }</entry> + <entry>{ "None", "Full", "Center", "Full aspect" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"aspect ratio"</entry> + <entry>"aspect ratio"</entry> <entry>ENUM</entry> - <entry>{ "None", "4:3", "16:9" }</entry> + <entry>{ "None", "4:3", "16:9" }</entry> <entry>Connector</entry> <entry>DRM property to set aspect ratio from user space app. This enum is made generic to allow addition of custom aspect ratios.</entry> </row> <row> - <entry>“dirty”</entry> + <entry>"dirty"</entry> <entry>ENUM | IMMUTABLE</entry> - <entry>{ "Off", "On", "Annotate" }</entry> + <entry>{ "Off", "On", "Annotate" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> <entry morerows="19">i915</entry> <entry morerows="1">Generic</entry> - <entry>"Broadcast RGB"</entry> + <entry>"Broadcast RGB"</entry> <entry>ENUM</entry> - <entry>{ "Automatic", "Full", "Limited 16:235" }</entry> + <entry>{ "Automatic", "Full", "Limited 16:235" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“audio”</entry> + <entry>"audio"</entry> <entry>ENUM</entry> - <entry>{ "force-dvi", "off", "auto", "on" }</entry> + <entry>{ "force-dvi", "off", "auto", "on" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> <entry morerows="16">SDVO-TV</entry> - <entry>“mode”</entry> + <entry>"mode"</entry> <entry>ENUM</entry> - <entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry> + <entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"left_margin"</entry> + <entry>"left_margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"right_margin"</entry> + <entry>"right_margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"top_margin"</entry> + <entry>"top_margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"bottom_margin"</entry> + <entry>"bottom_margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“hpos”</entry> + <entry>"hpos"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“vpos”</entry> + <entry>"vpos"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“contrast”</entry> + <entry>"contrast"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“saturation”</entry> + <entry>"saturation"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“hue”</entry> + <entry>"hue"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“sharpness”</entry> + <entry>"sharpness"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“flicker_filter”</entry> + <entry>"flicker_filter"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“flicker_filter_adaptive”</entry> + <entry>"flicker_filter_adaptive"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“flicker_filter_2d”</entry> + <entry>"flicker_filter_2d"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“tv_chroma_filter”</entry> + <entry>"tv_chroma_filter"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“tv_luma_filter”</entry> + <entry>"tv_luma_filter"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“dot_crawl”</entry> + <entry>"dot_crawl"</entry> <entry>RANGE</entry> <entry>Min=0, Max=1</entry> <entry>Connector</entry> @@ -3016,7 +3016,7 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry>SDVO-TV/LVDS</entry> - <entry>“brightness”</entry> + <entry>"brightness"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> @@ -3025,23 +3025,23 @@ void intel_crt_init(struct drm_device *dev) <row> <entry morerows="1">CDV gma-500</entry> <entry morerows="1">Generic</entry> - <entry>"Broadcast RGB"</entry> + <entry>"Broadcast RGB"</entry> <entry>ENUM</entry> - <entry>{ “Full”, “Limited 16:235” }</entry> + <entry>{ "Full", "Limited 16:235" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"Broadcast RGB"</entry> + <entry>"Broadcast RGB"</entry> <entry>ENUM</entry> - <entry>{ “off”, “auto”, “on” }</entry> + <entry>{ "off", "auto", "on" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> <entry morerows="18">Poulsbo</entry> <entry>Generic</entry> - <entry>“backlight”</entry> + <entry>"backlight"</entry> <entry>RANGE</entry> <entry>Min=0, Max=100</entry> <entry>Connector</entry> @@ -3049,119 +3049,119 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry morerows="16">SDVO-TV</entry> - <entry>“mode”</entry> + <entry>"mode"</entry> <entry>ENUM</entry> - <entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry> + <entry>{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"left_margin"</entry> + <entry>"left_margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"right_margin"</entry> + <entry>"right_margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"top_margin"</entry> + <entry>"top_margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"bottom_margin"</entry> + <entry>"bottom_margin"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“hpos”</entry> + <entry>"hpos"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“vpos”</entry> + <entry>"vpos"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“contrast”</entry> + <entry>"contrast"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“saturation”</entry> + <entry>"saturation"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“hue”</entry> + <entry>"hue"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“sharpness”</entry> + <entry>"sharpness"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“flicker_filter”</entry> + <entry>"flicker_filter"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“flicker_filter_adaptive”</entry> + <entry>"flicker_filter_adaptive"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“flicker_filter_2d”</entry> + <entry>"flicker_filter_2d"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“tv_chroma_filter”</entry> + <entry>"tv_chroma_filter"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“tv_luma_filter”</entry> + <entry>"tv_luma_filter"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“dot_crawl”</entry> + <entry>"dot_crawl"</entry> <entry>RANGE</entry> <entry>Min=0, Max=1</entry> <entry>Connector</entry> @@ -3169,7 +3169,7 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry>SDVO-TV/LVDS</entry> - <entry>“brightness”</entry> + <entry>"brightness"</entry> <entry>RANGE</entry> <entry>Min=0, Max= SDVO dependent</entry> <entry>Connector</entry> @@ -3178,79 +3178,79 @@ void intel_crt_init(struct drm_device *dev) <row> <entry morerows="10">armada</entry> <entry morerows="1">CRTC</entry> - <entry>"CSC_YUV"</entry> + <entry>"CSC_YUV"</entry> <entry>ENUM</entry> - <entry>{ "Auto" , "CCIR601", "CCIR709" }</entry> + <entry>{ "Auto" , "CCIR601", "CCIR709" }</entry> <entry>CRTC</entry> <entry>TBD</entry> </row> <row> - <entry>"CSC_RGB"</entry> + <entry>"CSC_RGB"</entry> <entry>ENUM</entry> - <entry>{ "Auto", "Computer system", "Studio" }</entry> + <entry>{ "Auto", "Computer system", "Studio" }</entry> <entry>CRTC</entry> <entry>TBD</entry> </row> <row> <entry morerows="8">Overlay</entry> - <entry>"colorkey"</entry> + <entry>"colorkey"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0xffffff</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"colorkey_min"</entry> + <entry>"colorkey_min"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0xffffff</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"colorkey_max"</entry> + <entry>"colorkey_max"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0xffffff</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"colorkey_val"</entry> + <entry>"colorkey_val"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0xffffff</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"colorkey_alpha"</entry> + <entry>"colorkey_alpha"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0xffffff</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"colorkey_mode"</entry> + <entry>"colorkey_mode"</entry> <entry>ENUM</entry> - <entry>{ "disabled", "Y component", "U component" - , "V component", "RGB", “R component", "G component", "B component" }</entry> + <entry>{ "disabled", "Y component", "U component" + , "V component", "RGB", "R component", "G component", "B component" }</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"brightness"</entry> + <entry>"brightness"</entry> <entry>RANGE</entry> <entry>Min=0, Max=256 + 255</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"contrast"</entry> + <entry>"contrast"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0x7fff</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"saturation"</entry> + <entry>"saturation"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0x7fff</entry> <entry>Plane</entry> @@ -3259,15 +3259,15 @@ void intel_crt_init(struct drm_device *dev) <row> <entry morerows="1">exynos</entry> <entry>CRTC</entry> - <entry>“mode”</entry> + <entry>"mode"</entry> <entry>ENUM</entry> - <entry>{ "normal", "blank" }</entry> + <entry>{ "normal", "blank" }</entry> <entry>CRTC</entry> <entry>TBD</entry> </row> <row> <entry>Overlay</entry> - <entry>“zpos”</entry> + <entry>"zpos"</entry> <entry>RANGE</entry> <entry>Min=0, Max=MAX_PLANE-1</entry> <entry>Plane</entry> @@ -3276,7 +3276,7 @@ void intel_crt_init(struct drm_device *dev) <row> <entry morerows="1">i2c/ch7006_drv</entry> <entry>Generic</entry> - <entry>“scale”</entry> + <entry>"scale"</entry> <entry>RANGE</entry> <entry>Min=0, Max=2</entry> <entry>Connector</entry> @@ -3284,52 +3284,52 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry>TV</entry> - <entry>“mode”</entry> + <entry>"mode"</entry> <entry>ENUM</entry> - <entry>{ "PAL", "PAL-M","PAL-N"}, ”PAL-Nc" - , "PAL-60", "NTSC-M", "NTSC-J" }</entry> + <entry>{ "PAL", "PAL-M","PAL-N"}, "PAL-Nc" + , "PAL-60", "NTSC-M", "NTSC-J" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> <entry morerows="14">nouveau</entry> <entry morerows="5">NV10 Overlay</entry> - <entry>"colorkey"</entry> + <entry>"colorkey"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0x01ffffff</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>“contrast”</entry> + <entry>"contrast"</entry> <entry>RANGE</entry> <entry>Min=0, Max=8192-1</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>“brightness”</entry> + <entry>"brightness"</entry> <entry>RANGE</entry> <entry>Min=0, Max=1024</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>“hue”</entry> + <entry>"hue"</entry> <entry>RANGE</entry> <entry>Min=0, Max=359</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>“saturation”</entry> + <entry>"saturation"</entry> <entry>RANGE</entry> <entry>Min=0, Max=8192-1</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>“iturbt_709”</entry> + <entry>"iturbt_709"</entry> <entry>RANGE</entry> <entry>Min=0, Max=1</entry> <entry>Plane</entry> @@ -3337,14 +3337,14 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry morerows="1">Nv04 Overlay</entry> - <entry>“colorkey”</entry> + <entry>"colorkey"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0x01ffffff</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>“brightness”</entry> + <entry>"brightness"</entry> <entry>RANGE</entry> <entry>Min=0, Max=1024</entry> <entry>Plane</entry> @@ -3352,49 +3352,49 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry morerows="6">Display</entry> - <entry>“dithering mode”</entry> + <entry>"dithering mode"</entry> <entry>ENUM</entry> - <entry>{ "auto", "off", "on" }</entry> + <entry>{ "auto", "off", "on" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“dithering depth”</entry> + <entry>"dithering depth"</entry> <entry>ENUM</entry> - <entry>{ "auto", "off", "on", "static 2x2", "dynamic 2x2", "temporal" }</entry> + <entry>{ "auto", "off", "on", "static 2x2", "dynamic 2x2", "temporal" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“underscan”</entry> + <entry>"underscan"</entry> <entry>ENUM</entry> - <entry>{ "auto", "6 bpc", "8 bpc" }</entry> + <entry>{ "auto", "6 bpc", "8 bpc" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“underscan hborder”</entry> + <entry>"underscan hborder"</entry> <entry>RANGE</entry> <entry>Min=0, Max=128</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“underscan vborder”</entry> + <entry>"underscan vborder"</entry> <entry>RANGE</entry> <entry>Min=0, Max=128</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“vibrant hue”</entry> + <entry>"vibrant hue"</entry> <entry>RANGE</entry> <entry>Min=0, Max=180</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>“color vibrance”</entry> + <entry>"color vibrance"</entry> <entry>RANGE</entry> <entry>Min=0, Max=200</entry> <entry>Connector</entry> @@ -3403,7 +3403,7 @@ void intel_crt_init(struct drm_device *dev) <row> <entry>omap</entry> <entry>Generic</entry> - <entry>“zorder”</entry> + <entry>"zorder"</entry> <entry>RANGE</entry> <entry>Min=0, Max=3</entry> <entry>CRTC, Plane</entry> @@ -3412,7 +3412,7 @@ void intel_crt_init(struct drm_device *dev) <row> <entry>qxl</entry> <entry>Generic</entry> - <entry>“hotplug_mode_update"</entry> + <entry>"hotplug_mode_update"</entry> <entry>RANGE</entry> <entry>Min=0, Max=1</entry> <entry>Connector</entry> @@ -3421,7 +3421,7 @@ void intel_crt_init(struct drm_device *dev) <row> <entry morerows="8">radeon</entry> <entry>DVI-I</entry> - <entry>“coherent”</entry> + <entry>"coherent"</entry> <entry>RANGE</entry> <entry>Min=0, Max=1</entry> <entry>Connector</entry> @@ -3429,7 +3429,7 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry>DAC enable load detect</entry> - <entry>“load detection”</entry> + <entry>"load detection"</entry> <entry>RANGE</entry> <entry>Min=0, Max=1</entry> <entry>Connector</entry> @@ -3437,38 +3437,38 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry>TV Standard</entry> - <entry>"tv standard"</entry> + <entry>"tv standard"</entry> <entry>ENUM</entry> - <entry>{ "ntsc", "pal", "pal-m", "pal-60", "ntsc-j" - , "scart-pal", "pal-cn", "secam" }</entry> + <entry>{ "ntsc", "pal", "pal-m", "pal-60", "ntsc-j" + , "scart-pal", "pal-cn", "secam" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> <entry>legacy TMDS PLL detect</entry> - <entry>"tmds_pll"</entry> + <entry>"tmds_pll"</entry> <entry>ENUM</entry> - <entry>{ "driver", "bios" }</entry> + <entry>{ "driver", "bios" }</entry> <entry>-</entry> <entry>TBD</entry> </row> <row> <entry morerows="2">Underscan</entry> - <entry>"underscan"</entry> + <entry>"underscan"</entry> <entry>ENUM</entry> - <entry>{ "off", "on", "auto" }</entry> + <entry>{ "off", "on", "auto" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"underscan hborder"</entry> + <entry>"underscan hborder"</entry> <entry>RANGE</entry> <entry>Min=0, Max=128</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> - <entry>"underscan vborder"</entry> + <entry>"underscan vborder"</entry> <entry>RANGE</entry> <entry>Min=0, Max=128</entry> <entry>Connector</entry> @@ -3476,38 +3476,38 @@ void intel_crt_init(struct drm_device *dev) </row> <row> <entry>Audio</entry> - <entry>“audio”</entry> + <entry>"audio"</entry> <entry>ENUM</entry> - <entry>{ "off", "on", "auto" }</entry> + <entry>{ "off", "on", "auto" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> <entry>FMT Dithering</entry> - <entry>“dither”</entry> + <entry>"dither"</entry> <entry>ENUM</entry> - <entry>{ "off", "on" }</entry> + <entry>{ "off", "on" }</entry> <entry>Connector</entry> <entry>TBD</entry> </row> <row> <entry morerows="2">rcar-du</entry> <entry morerows="2">Generic</entry> - <entry>"alpha"</entry> + <entry>"alpha"</entry> <entry>RANGE</entry> <entry>Min=0, Max=255</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"colorkey"</entry> + <entry>"colorkey"</entry> <entry>RANGE</entry> <entry>Min=0, Max=0x01ffffff</entry> <entry>Plane</entry> <entry>TBD</entry> </row> <row> - <entry>"zpos"</entry> + <entry>"zpos"</entry> <entry>RANGE</entry> <entry>Min=1, Max=7</entry> <entry>Plane</entry>
dri-devel@lists.freedesktop.org