aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/DocBook
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-02-16 18:48:00 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2015-02-16 18:48:00 -0500
commit796e1c55717e9a6ff5c81b12289ffa1ffd919b6f (patch)
tree27ce45cb1227156b72c641dbcbf2b399d23ba63d /Documentation/DocBook
parent8c334ce8f0fec7122fc3059c52a697b669a01b41 (diff)
parent45ee2dbc65cbf6910892c480e6f428be342fa733 (diff)
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
Pull drm updates from Dave Airlie: "This is the main drm pull, it has a shared branch with some alsa crossover but everything should be acked by relevant people. New drivers: - ATMEL HLCDC driver - designware HDMI core support (used in multiple SoCs). core: - lots more atomic modesetting work, properties and atomic ioctl (hidden under option) - bridge rework allows support for Samsung exynos chromebooks to work finally. - some more panels supported i915: - atomic plane update support - DSI uses shared DSI infrastructure - Skylake basic support is all merged now - component framework used for i915/snd-hda interactions - write-combine cpu memory mappings - engine init code refactored - full ppgtt enabled where execlists are enabled. - cherryview rps/gpu turbo and pipe CRC support. radeon: - indirect draw support for evergreen/cayman - SMC and manual fan control for SI/CI - Displayport audio support amdkfd: - SDMA usermode queue support - replace suballocator usage with more suitable one - rework for allowing interfacing to more than radeon nouveau: - major renaming in prep for later splitting work - merge arm platform driver into nouveau - GK20A reclocking support msm: - conversion to atomic modesetting - YUV support for mdp4/5 - eDP support - hw cursor for mdp5 tegra: - conversion to atomic modesetting - better suspend/resume support for child devices rcar-du: - interlaced support imx: - move to using dw_hdmi shared support - mode_fixup support sti: - DVO support - HDMI infoframe support exynos: - refactoring and cleanup, removed lots of internal unnecessary abstraction - exynos7 DECON display controller support Along with the usual bunch of fixes, cleanups etc" * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (724 commits) drm/radeon: fix voltage setup on hawaii drm/radeon/dp: Set EDP_CONFIGURATION_SET for bridge chips if necessary drm/radeon: only enable kv/kb dpm interrupts once v3 drm/radeon: workaround for CP HW bug on CIK drm/radeon: Don't try to enable write-combining without PAT drm/radeon: use 0-255 rather than 0-100 for pwm fan range drm/i915: Clamp efficient frequency to valid range drm/i915: Really ignore long HPD pulses on eDP drm/exynos: Add DECON driver drm/i915: Correct the base value while updating LP_OUTPUT_HOLD in MIPI_PORT_CTRL drm/i915: Insert a command barrier on BLT/BSD cache flushes drm/i915: Drop vblank wait from intel_dp_link_down drm/exynos: fix NULL pointer reference drm/exynos: remove exynos_plane_dpms drm/exynos: remove mode property of exynos crtc drm/exynos: Remove exynos_plane_dpms() call with no effect drm/i915: Squelch overzealous uncore reset WARN_ON drm/i915: Take runtime pm reference on hangcheck_info drm/i915: Correct the IOSF Dev_FN field for IOSF transfers drm/exynos: fix DMA_ATTR_NO_KERNEL_MAPPING usage ...
Diffstat (limited to 'Documentation/DocBook')
-rw-r--r--Documentation/DocBook/drm.tmpl126
1 files changed, 122 insertions, 4 deletions
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl
index 4b592ffbafee..03f1985a4bd1 100644
--- a/Documentation/DocBook/drm.tmpl
+++ b/Documentation/DocBook/drm.tmpl
@@ -239,6 +239,14 @@
239 Driver supports dedicated render nodes. 239 Driver supports dedicated render nodes.
240 </para></listitem> 240 </para></listitem>
241 </varlistentry> 241 </varlistentry>
242 <varlistentry>
243 <term>DRIVER_ATOMIC</term>
244 <listitem><para>
245 Driver supports atomic properties. In this case the driver
246 must implement appropriate obj->atomic_get_property() vfuncs
247 for any modeset objects with driver specific properties.
248 </para></listitem>
249 </varlistentry>
242 </variablelist> 250 </variablelist>
243 </sect3> 251 </sect3>
244 <sect3> 252 <sect3>
@@ -1377,7 +1385,7 @@ int max_width, max_height;</synopsis>
1377 <itemizedlist> 1385 <itemizedlist>
1378 <listitem> 1386 <listitem>
1379 DRM_PLANE_TYPE_PRIMARY represents a "main" plane for a CRTC. Primary 1387 DRM_PLANE_TYPE_PRIMARY represents a "main" plane for a CRTC. Primary
1380 planes are the planes operated upon by by CRTC modesetting and flipping 1388 planes are the planes operated upon by CRTC modesetting and flipping
1381 operations described in <xref linkend="drm-kms-crtcops"/>. 1389 operations described in <xref linkend="drm-kms-crtcops"/>.
1382 </listitem> 1390 </listitem>
1383 <listitem> 1391 <listitem>
@@ -2362,6 +2370,7 @@ void intel_crt_init(struct drm_device *dev)
2362 </sect2> 2370 </sect2>
2363 <sect2> 2371 <sect2>
2364 <title>Modeset Helper Functions Reference</title> 2372 <title>Modeset Helper Functions Reference</title>
2373!Iinclude/drm/drm_crtc_helper.h
2365!Edrivers/gpu/drm/drm_crtc_helper.c 2374!Edrivers/gpu/drm/drm_crtc_helper.c
2366!Pdrivers/gpu/drm/drm_crtc_helper.c overview 2375!Pdrivers/gpu/drm/drm_crtc_helper.c overview
2367 </sect2> 2376 </sect2>
@@ -2564,8 +2573,8 @@ void intel_crt_init(struct drm_device *dev)
2564 <td valign="top" >Description/Restrictions</td> 2573 <td valign="top" >Description/Restrictions</td>
2565 </tr> 2574 </tr>
2566 <tr> 2575 <tr>
2567 <td rowspan="25" valign="top" >DRM</td> 2576 <td rowspan="36" valign="top" >DRM</td>
2568 <td rowspan="4" valign="top" >Generic</td> 2577 <td rowspan="5" valign="top" >Connector</td>
2569 <td valign="top" >“EDID”</td> 2578 <td valign="top" >“EDID”</td>
2570 <td valign="top" >BLOB | IMMUTABLE</td> 2579 <td valign="top" >BLOB | IMMUTABLE</td>
2571 <td valign="top" >0</td> 2580 <td valign="top" >0</td>
@@ -2594,7 +2603,14 @@ void intel_crt_init(struct drm_device *dev)
2594 <td valign="top" >Contains tiling information for a connector.</td> 2603 <td valign="top" >Contains tiling information for a connector.</td>
2595 </tr> 2604 </tr>
2596 <tr> 2605 <tr>
2597 <td rowspan="1" valign="top" >Plane</td> 2606 <td valign="top" >“CRTC_ID”</td>
2607 <td valign="top" >OBJECT</td>
2608 <td valign="top" >DRM_MODE_OBJECT_CRTC</td>
2609 <td valign="top" >Connector</td>
2610 <td valign="top" >CRTC that connector is attached to (atomic)</td>
2611 </tr>
2612 <tr>
2613 <td rowspan="11" valign="top" >Plane</td>
2598 <td valign="top" >“type”</td> 2614 <td valign="top" >“type”</td>
2599 <td valign="top" >ENUM | IMMUTABLE</td> 2615 <td valign="top" >ENUM | IMMUTABLE</td>
2600 <td valign="top" >{ "Overlay", "Primary", "Cursor" }</td> 2616 <td valign="top" >{ "Overlay", "Primary", "Cursor" }</td>
@@ -2602,6 +2618,76 @@ void intel_crt_init(struct drm_device *dev)
2602 <td valign="top" >Plane type</td> 2618 <td valign="top" >Plane type</td>
2603 </tr> 2619 </tr>
2604 <tr> 2620 <tr>
2621 <td valign="top" >“SRC_X”</td>
2622 <td valign="top" >RANGE</td>
2623 <td valign="top" >Min=0, Max=UINT_MAX</td>
2624 <td valign="top" >Plane</td>
2625 <td valign="top" >Scanout source x coordinate in 16.16 fixed point (atomic)</td>
2626 </tr>
2627 <tr>
2628 <td valign="top" >“SRC_Y”</td>
2629 <td valign="top" >RANGE</td>
2630 <td valign="top" >Min=0, Max=UINT_MAX</td>
2631 <td valign="top" >Plane</td>
2632 <td valign="top" >Scanout source y coordinate in 16.16 fixed point (atomic)</td>
2633 </tr>
2634 <tr>
2635 <td valign="top" >“SRC_W”</td>
2636 <td valign="top" >RANGE</td>
2637 <td valign="top" >Min=0, Max=UINT_MAX</td>
2638 <td valign="top" >Plane</td>
2639 <td valign="top" >Scanout source width in 16.16 fixed point (atomic)</td>
2640 </tr>
2641 <tr>
2642 <td valign="top" >“SRC_H”</td>
2643 <td valign="top" >RANGE</td>
2644 <td valign="top" >Min=0, Max=UINT_MAX</td>
2645 <td valign="top" >Plane</td>
2646 <td valign="top" >Scanout source height in 16.16 fixed point (atomic)</td>
2647 </tr>
2648 <tr>
2649 <td valign="top" >“CRTC_X”</td>
2650 <td valign="top" >SIGNED_RANGE</td>
2651 <td valign="top" >Min=INT_MIN, Max=INT_MAX</td>
2652 <td valign="top" >Plane</td>
2653 <td valign="top" >Scanout CRTC (destination) x coordinate (atomic)</td>
2654 </tr>
2655 <tr>
2656 <td valign="top" >“CRTC_Y”</td>
2657 <td valign="top" >SIGNED_RANGE</td>
2658 <td valign="top" >Min=INT_MIN, Max=INT_MAX</td>
2659 <td valign="top" >Plane</td>
2660 <td valign="top" >Scanout CRTC (destination) y coordinate (atomic)</td>
2661 </tr>
2662 <tr>
2663 <td valign="top" >“CRTC_W”</td>
2664 <td valign="top" >RANGE</td>
2665 <td valign="top" >Min=0, Max=UINT_MAX</td>
2666 <td valign="top" >Plane</td>
2667 <td valign="top" >Scanout CRTC (destination) width (atomic)</td>
2668 </tr>
2669 <tr>
2670 <td valign="top" >“CRTC_H”</td>
2671 <td valign="top" >RANGE</td>
2672 <td valign="top" >Min=0, Max=UINT_MAX</td>
2673 <td valign="top" >Plane</td>
2674 <td valign="top" >Scanout CRTC (destination) height (atomic)</td>
2675 </tr>
2676 <tr>
2677 <td valign="top" >“FB_ID”</td>
2678 <td valign="top" >OBJECT</td>
2679 <td valign="top" >DRM_MODE_OBJECT_FB</td>
2680 <td valign="top" >Plane</td>
2681 <td valign="top" >Scanout framebuffer (atomic)</td>
2682 </tr>
2683 <tr>
2684 <td valign="top" >“CRTC_ID”</td>
2685 <td valign="top" >OBJECT</td>
2686 <td valign="top" >DRM_MODE_OBJECT_CRTC</td>
2687 <td valign="top" >Plane</td>
2688 <td valign="top" >CRTC that plane is attached to (atomic)</td>
2689 </tr>
2690 <tr>
2605 <td rowspan="2" valign="top" >DVI-I</td> 2691 <td rowspan="2" valign="top" >DVI-I</td>
2606 <td valign="top" >“subconnector”</td> 2692 <td valign="top" >“subconnector”</td>
2607 <td valign="top" >ENUM</td> 2693 <td valign="top" >ENUM</td>
@@ -3883,6 +3969,7 @@ int num_ioctls;</synopsis>
3883 <title>Runtime Power Management</title> 3969 <title>Runtime Power Management</title>
3884!Pdrivers/gpu/drm/i915/intel_runtime_pm.c runtime pm 3970!Pdrivers/gpu/drm/i915/intel_runtime_pm.c runtime pm
3885!Idrivers/gpu/drm/i915/intel_runtime_pm.c 3971!Idrivers/gpu/drm/i915/intel_runtime_pm.c
3972!Idrivers/gpu/drm/i915/intel_uncore.c
3886 </sect2> 3973 </sect2>
3887 <sect2> 3974 <sect2>
3888 <title>Interrupt Handling</title> 3975 <title>Interrupt Handling</title>
@@ -3932,6 +4019,11 @@ int num_ioctls;</synopsis>
3932 </para> 4019 </para>
3933 </sect2> 4020 </sect2>
3934 <sect2> 4021 <sect2>
4022 <title>Atomic Plane Helpers</title>
4023!Pdrivers/gpu/drm/i915/intel_atomic_plane.c atomic plane helpers
4024!Idrivers/gpu/drm/i915/intel_atomic_plane.c
4025 </sect2>
4026 <sect2>
3935 <title>Output Probing</title> 4027 <title>Output Probing</title>
3936 <para> 4028 <para>
3937 This section covers output probing and related infrastructure like the 4029 This section covers output probing and related infrastructure like the
@@ -3951,6 +4043,11 @@ int num_ioctls;</synopsis>
3951!Idrivers/gpu/drm/i915/intel_psr.c 4043!Idrivers/gpu/drm/i915/intel_psr.c
3952 </sect2> 4044 </sect2>
3953 <sect2> 4045 <sect2>
4046 <title>Frame Buffer Compression (FBC)</title>
4047!Pdrivers/gpu/drm/i915/intel_fbc.c Frame Buffer Compression (FBC)
4048!Idrivers/gpu/drm/i915/intel_fbc.c
4049 </sect2>
4050 <sect2>
3954 <title>DPIO</title> 4051 <title>DPIO</title>
3955!Pdrivers/gpu/drm/i915/i915_reg.h DPIO 4052!Pdrivers/gpu/drm/i915/i915_reg.h DPIO
3956 <table id="dpiox2"> 4053 <table id="dpiox2">
@@ -4054,10 +4151,31 @@ int num_ioctls;</synopsis>
4054!Idrivers/gpu/drm/i915/i915_cmd_parser.c 4151!Idrivers/gpu/drm/i915/i915_cmd_parser.c
4055 </sect2> 4152 </sect2>
4056 <sect2> 4153 <sect2>
4154 <title>Batchbuffer Pools</title>
4155!Pdrivers/gpu/drm/i915/i915_gem_batch_pool.c batch pool
4156!Idrivers/gpu/drm/i915/i915_gem_batch_pool.c
4157 </sect2>
4158 <sect2>
4057 <title>Logical Rings, Logical Ring Contexts and Execlists</title> 4159 <title>Logical Rings, Logical Ring Contexts and Execlists</title>
4058!Pdrivers/gpu/drm/i915/intel_lrc.c Logical Rings, Logical Ring Contexts and Execlists 4160!Pdrivers/gpu/drm/i915/intel_lrc.c Logical Rings, Logical Ring Contexts and Execlists
4059!Idrivers/gpu/drm/i915/intel_lrc.c 4161!Idrivers/gpu/drm/i915/intel_lrc.c
4060 </sect2> 4162 </sect2>
4163 <sect2>
4164 <title>Global GTT views</title>
4165!Pdrivers/gpu/drm/i915/i915_gem_gtt.c Global GTT views
4166!Idrivers/gpu/drm/i915/i915_gem_gtt.c
4167 </sect2>
4168 <sect2>
4169 <title>Buffer Object Eviction</title>
4170 <para>
4171 This section documents the interface function for evicting buffer
4172 objects to make space available in the virtual gpu address spaces.
4173 Note that this is mostly orthogonal to shrinking buffer objects
4174 caches, which has the goal to make main memory (shared with the gpu
4175 through the unified memory architecture) available.
4176 </para>
4177!Idrivers/gpu/drm/i915/i915_gem_evict.c
4178 </sect2>
4061 </sect1> 4179 </sect1>
4062 4180
4063 <sect1> 4181 <sect1>