diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-16 18:48:00 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-16 18:48:00 -0500 |
commit | 796e1c55717e9a6ff5c81b12289ffa1ffd919b6f (patch) | |
tree | 27ce45cb1227156b72c641dbcbf2b399d23ba63d /Documentation/DocBook | |
parent | 8c334ce8f0fec7122fc3059c52a697b669a01b41 (diff) | |
parent | 45ee2dbc65cbf6910892c480e6f428be342fa733 (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.tmpl | 126 |
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> |