diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 14:32:30 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 14:32:30 -0400 |
commit | 682b7c1c8ea8885aa681ddf530d6cf2ad4f2dc15 (patch) | |
tree | 882003bb4fc56af816246168f8c85d6dde8c6ed9 /Documentation/DocBook | |
parent | 16b9057804c02e2d351e9c8f606e909b43cbd9e7 (diff) | |
parent | bc1dfff04a5d4064ba0db1fab13f84ab4f333d2b (diff) |
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
Pull drm updates from Dave Airlie:
"This is the main drm merge window pull request, changes all over the
place, mostly normal levels of churn.
Highlights:
Core drm:
More cleanups, fix race on connector/encoder naming, docs updates,
object locking rework in prep for atomic modeset
i915:
mipi DSI support, valleyview power fixes, cursor size fixes,
execlist refactoring, vblank improvements, userptr support, OOM
handling improvements
radeon:
GPUVM tuning and large page size support, gart fixes, deep color
HDMI support, HDMI audio cleanups
nouveau:
- displayport rework should fix lots of issues
- initial gk20a support
- gk110b support
- gk208 fixes
exynos:
probe order fixes, HDMI changes, IPP consolidation
msm:
debugfs updates, misc fixes
ast:
ast2400 support, sync with UMS driver
tegra:
cleanups, hdmi + hw cursor for Tegra 124.
panel:
fixes existing panels add some new ones.
ipuv3:
moved from staging to drivers/gpu"
* 'drm-next' of git://people.freedesktop.org/~airlied/linux: (761 commits)
drm/nouveau/disp/dp: fix tmds passthrough on dp connector
drm/nouveau/dp: probe dpcd to determine connectedness
drm/nv50-: trigger update after all connectors disabled
drm/nv50-: prepare for attaching a SOR to multiple heads
drm/gf119-/disp: fix debug output on update failure
drm/nouveau/disp/dp: make use of postcursor when its available
drm/g94-/disp/dp: take max pullup value across all lanes
drm/nouveau/bios/dp: parse lane postcursor data
drm/nouveau/dp: fix support for dpms
drm/nouveau: register a drm_dp_aux channel for each dp connector
drm/g94-/disp: add method to power-off dp lanes
drm/nouveau/disp/dp: maintain link in response to hpd signal
drm/g94-/disp: bash and wait for something after changing lane power regs
drm/nouveau/disp/dp: split link config/power into two steps
drm/nv50/disp: train PIOR-attached DP from second supervisor
drm/nouveau/disp/dp: make use of existing output data for link training
drm/gf119/disp: start removing direct vbios parsing from supervisor
drm/nv50/disp: start removing direct vbios parsing from supervisor
drm/nouveau/disp/dp: maintain receiver caps in response to hpd signal
drm/nouveau/disp/dp: create subclass for dp outputs
...
Diffstat (limited to 'Documentation/DocBook')
-rw-r--r-- | Documentation/DocBook/drm.tmpl | 1027 |
1 files changed, 1008 insertions, 19 deletions
diff --git a/Documentation/DocBook/drm.tmpl b/Documentation/DocBook/drm.tmpl index ba60d93c1855..7df3134ebc0e 100644 --- a/Documentation/DocBook/drm.tmpl +++ b/Documentation/DocBook/drm.tmpl | |||
@@ -142,6 +142,12 @@ | |||
142 | to register it with the DRM subsystem. | 142 | to register it with the DRM subsystem. |
143 | </para> | 143 | </para> |
144 | <para> | 144 | <para> |
145 | Newer drivers that no longer require a <structname>drm_bus</structname> | ||
146 | structure can alternatively use the low-level device initialization and | ||
147 | registration functions such as <function>drm_dev_alloc()</function> and | ||
148 | <function>drm_dev_register()</function> directly. | ||
149 | </para> | ||
150 | <para> | ||
145 | The <structname>drm_driver</structname> structure contains static | 151 | The <structname>drm_driver</structname> structure contains static |
146 | information that describes the driver and features it supports, and | 152 | information that describes the driver and features it supports, and |
147 | pointers to methods that the DRM core will call to implement the DRM API. | 153 | pointers to methods that the DRM core will call to implement the DRM API. |
@@ -282,6 +288,36 @@ char *date;</synopsis> | |||
282 | </sect3> | 288 | </sect3> |
283 | </sect2> | 289 | </sect2> |
284 | <sect2> | 290 | <sect2> |
291 | <title>Device Registration</title> | ||
292 | <para> | ||
293 | A number of functions are provided to help with device registration. | ||
294 | The functions deal with PCI, USB and platform devices, respectively. | ||
295 | </para> | ||
296 | !Edrivers/gpu/drm/drm_pci.c | ||
297 | !Edrivers/gpu/drm/drm_usb.c | ||
298 | !Edrivers/gpu/drm/drm_platform.c | ||
299 | <para> | ||
300 | New drivers that no longer rely on the services provided by the | ||
301 | <structname>drm_bus</structname> structure can call the low-level | ||
302 | device registration functions directly. The | ||
303 | <function>drm_dev_alloc()</function> function can be used to allocate | ||
304 | and initialize a new <structname>drm_device</structname> structure. | ||
305 | Drivers will typically want to perform some additional setup on this | ||
306 | structure, such as allocating driver-specific data and storing a | ||
307 | pointer to it in the DRM device's <structfield>dev_private</structfield> | ||
308 | field. Drivers should also set the device's unique name using the | ||
309 | <function>drm_dev_set_unique()</function> function. After it has been | ||
310 | set up a device can be registered with the DRM subsystem by calling | ||
311 | <function>drm_dev_register()</function>. This will cause the device to | ||
312 | be exposed to userspace and will call the driver's | ||
313 | <structfield>.load()</structfield> implementation. When a device is | ||
314 | removed, the DRM device can safely be unregistered and freed by calling | ||
315 | <function>drm_dev_unregister()</function> followed by a call to | ||
316 | <function>drm_dev_unref()</function>. | ||
317 | </para> | ||
318 | !Edrivers/gpu/drm/drm_stub.c | ||
319 | </sect2> | ||
320 | <sect2> | ||
285 | <title>Driver Load</title> | 321 | <title>Driver Load</title> |
286 | <para> | 322 | <para> |
287 | The <methodname>load</methodname> method is the driver and device | 323 | The <methodname>load</methodname> method is the driver and device |
@@ -342,21 +378,13 @@ char *date;</synopsis> | |||
342 | <sect4> | 378 | <sect4> |
343 | <title>Managed IRQ Registration</title> | 379 | <title>Managed IRQ Registration</title> |
344 | <para> | 380 | <para> |
345 | Both the <function>drm_irq_install</function> and | ||
346 | <function>drm_irq_uninstall</function> functions get the device IRQ by | ||
347 | calling <function>drm_dev_to_irq</function>. This inline function will | ||
348 | call a bus-specific operation to retrieve the IRQ number. For platform | ||
349 | devices, <function>platform_get_irq</function>(..., 0) is used to | ||
350 | retrieve the IRQ number. | ||
351 | </para> | ||
352 | <para> | ||
353 | <function>drm_irq_install</function> starts by calling the | 381 | <function>drm_irq_install</function> starts by calling the |
354 | <methodname>irq_preinstall</methodname> driver operation. The operation | 382 | <methodname>irq_preinstall</methodname> driver operation. The operation |
355 | is optional and must make sure that the interrupt will not get fired by | 383 | is optional and must make sure that the interrupt will not get fired by |
356 | clearing all pending interrupt flags or disabling the interrupt. | 384 | clearing all pending interrupt flags or disabling the interrupt. |
357 | </para> | 385 | </para> |
358 | <para> | 386 | <para> |
359 | The IRQ will then be requested by a call to | 387 | The passed-in IRQ will then be requested by a call to |
360 | <function>request_irq</function>. If the DRIVER_IRQ_SHARED driver | 388 | <function>request_irq</function>. If the DRIVER_IRQ_SHARED driver |
361 | feature flag is set, a shared (IRQF_SHARED) IRQ handler will be | 389 | feature flag is set, a shared (IRQF_SHARED) IRQ handler will be |
362 | requested. | 390 | requested. |
@@ -1799,6 +1827,12 @@ void intel_crt_init(struct drm_device *dev) | |||
1799 | <title>KMS API Functions</title> | 1827 | <title>KMS API Functions</title> |
1800 | !Edrivers/gpu/drm/drm_crtc.c | 1828 | !Edrivers/gpu/drm/drm_crtc.c |
1801 | </sect2> | 1829 | </sect2> |
1830 | <sect2> | ||
1831 | <title>KMS Locking</title> | ||
1832 | !Pdrivers/gpu/drm/drm_modeset_lock.c kms locking | ||
1833 | !Iinclude/drm/drm_modeset_lock.h | ||
1834 | !Edrivers/gpu/drm/drm_modeset_lock.c | ||
1835 | </sect2> | ||
1802 | </sect1> | 1836 | </sect1> |
1803 | 1837 | ||
1804 | <!-- Internals: kms helper functions --> | 1838 | <!-- Internals: kms helper functions --> |
@@ -1903,8 +1937,8 @@ void intel_crt_init(struct drm_device *dev) | |||
1903 | <para> | 1937 | <para> |
1904 | The function filters out modes larger than | 1938 | The function filters out modes larger than |
1905 | <parameter>max_width</parameter> and <parameter>max_height</parameter> | 1939 | <parameter>max_width</parameter> and <parameter>max_height</parameter> |
1906 | if specified. It then calls the connector | 1940 | if specified. It then calls the optional connector |
1907 | <methodname>mode_valid</methodname> helper operation for each mode in | 1941 | <methodname>mode_valid</methodname> helper operation for each mode in |
1908 | the probed list to check whether the mode is valid for the connector. | 1942 | the probed list to check whether the mode is valid for the connector. |
1909 | </para> | 1943 | </para> |
1910 | </listitem> | 1944 | </listitem> |
@@ -2265,7 +2299,7 @@ void intel_crt_init(struct drm_device *dev) | |||
2265 | <para> | 2299 | <para> |
2266 | Verify whether a mode is valid for the connector. Return MODE_OK for | 2300 | Verify whether a mode is valid for the connector. Return MODE_OK for |
2267 | supported modes and one of the enum drm_mode_status values (MODE_*) | 2301 | supported modes and one of the enum drm_mode_status values (MODE_*) |
2268 | for unsupported modes. This operation is mandatory. | 2302 | for unsupported modes. This operation is optional. |
2269 | </para> | 2303 | </para> |
2270 | <para> | 2304 | <para> |
2271 | As the mode rejection reason is currently not used beside for | 2305 | As the mode rejection reason is currently not used beside for |
@@ -2450,6 +2484,863 @@ void intel_crt_init(struct drm_device *dev) | |||
2450 | pointer to the target object, a pointer to the previously created property | 2484 | pointer to the target object, a pointer to the previously created property |
2451 | and an initial instance value. | 2485 | and an initial instance value. |
2452 | </para> | 2486 | </para> |
2487 | <sect2> | ||
2488 | <title>Existing KMS Properties</title> | ||
2489 | <para> | ||
2490 | The following table gives description of drm properties exposed by various | ||
2491 | modules/drivers. | ||
2492 | </para> | ||
2493 | <table border="1" cellpadding="0" cellspacing="0"> | ||
2494 | <tbody> | ||
2495 | <tr style="font-weight: bold;"> | ||
2496 | <td valign="top" >Owner Module/Drivers</td> | ||
2497 | <td valign="top" >Group</td> | ||
2498 | <td valign="top" >Property Name</td> | ||
2499 | <td valign="top" >Type</td> | ||
2500 | <td valign="top" >Property Values</td> | ||
2501 | <td valign="top" >Object attached</td> | ||
2502 | <td valign="top" >Description/Restrictions</td> | ||
2503 | </tr> | ||
2504 | <tr> | ||
2505 | <td rowspan="20" valign="top" >DRM</td> | ||
2506 | <td rowspan="2" valign="top" >Generic</td> | ||
2507 | <td valign="top" >“EDID”</td> | ||
2508 | <td valign="top" >BLOB | IMMUTABLE</td> | ||
2509 | <td valign="top" >0</td> | ||
2510 | <td valign="top" >Connector</td> | ||
2511 | <td valign="top" >Contains id of edid blob ptr object.</td> | ||
2512 | </tr> | ||
2513 | <tr> | ||
2514 | <td valign="top" >“DPMS”</td> | ||
2515 | <td valign="top" >ENUM</td> | ||
2516 | <td valign="top" >{ “On”, “Standby”, “Suspend”, “Off” }</td> | ||
2517 | <td valign="top" >Connector</td> | ||
2518 | <td valign="top" >Contains DPMS operation mode value.</td> | ||
2519 | </tr> | ||
2520 | <tr> | ||
2521 | <td rowspan="1" valign="top" >Plane</td> | ||
2522 | <td valign="top" >“type”</td> | ||
2523 | <td valign="top" >ENUM | IMMUTABLE</td> | ||
2524 | <td valign="top" >{ "Overlay", "Primary", "Cursor" }</td> | ||
2525 | <td valign="top" >Plane</td> | ||
2526 | <td valign="top" >Plane type</td> | ||
2527 | </tr> | ||
2528 | <tr> | ||
2529 | <td rowspan="2" valign="top" >DVI-I</td> | ||
2530 | <td valign="top" >“subconnector”</td> | ||
2531 | <td valign="top" >ENUM</td> | ||
2532 | <td valign="top" >{ “Unknown”, “DVI-D”, “DVI-A” }</td> | ||
2533 | <td valign="top" >Connector</td> | ||
2534 | <td valign="top" >TBD</td> | ||
2535 | </tr> | ||
2536 | <tr> | ||
2537 | <td valign="top" >“select subconnector”</td> | ||
2538 | <td valign="top" >ENUM</td> | ||
2539 | <td valign="top" >{ “Automatic”, “DVI-D”, “DVI-A” }</td> | ||
2540 | <td valign="top" >Connector</td> | ||
2541 | <td valign="top" >TBD</td> | ||
2542 | </tr> | ||
2543 | <tr> | ||
2544 | <td rowspan="13" valign="top" >TV</td> | ||
2545 | <td valign="top" >“subconnector”</td> | ||
2546 | <td valign="top" >ENUM</td> | ||
2547 | <td valign="top" >{ "Unknown", "Composite", "SVIDEO", "Component", "SCART" }</td> | ||
2548 | <td valign="top" >Connector</td> | ||
2549 | <td valign="top" >TBD</td> | ||
2550 | </tr> | ||
2551 | <tr> | ||
2552 | <td valign="top" >“select subconnector”</td> | ||
2553 | <td valign="top" >ENUM</td> | ||
2554 | <td valign="top" >{ "Automatic", "Composite", "SVIDEO", "Component", "SCART" }</td> | ||
2555 | <td valign="top" >Connector</td> | ||
2556 | <td valign="top" >TBD</td> | ||
2557 | </tr> | ||
2558 | <tr> | ||
2559 | <td valign="top" >“mode”</td> | ||
2560 | <td valign="top" >ENUM</td> | ||
2561 | <td valign="top" >{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</td> | ||
2562 | <td valign="top" >Connector</td> | ||
2563 | <td valign="top" >TBD</td> | ||
2564 | </tr> | ||
2565 | <tr> | ||
2566 | <td valign="top" >“left margin”</td> | ||
2567 | <td valign="top" >RANGE</td> | ||
2568 | <td valign="top" >Min=0, Max=100</td> | ||
2569 | <td valign="top" >Connector</td> | ||
2570 | <td valign="top" >TBD</td> | ||
2571 | </tr> | ||
2572 | <tr> | ||
2573 | <td valign="top" >“right margin”</td> | ||
2574 | <td valign="top" >RANGE</td> | ||
2575 | <td valign="top" >Min=0, Max=100</td> | ||
2576 | <td valign="top" >Connector</td> | ||
2577 | <td valign="top" >TBD</td> | ||
2578 | </tr> | ||
2579 | <tr> | ||
2580 | <td valign="top" >“top margin”</td> | ||
2581 | <td valign="top" >RANGE</td> | ||
2582 | <td valign="top" >Min=0, Max=100</td> | ||
2583 | <td valign="top" >Connector</td> | ||
2584 | <td valign="top" >TBD</td> | ||
2585 | </tr> | ||
2586 | <tr> | ||
2587 | <td valign="top" >“bottom margin”</td> | ||
2588 | <td valign="top" >RANGE</td> | ||
2589 | <td valign="top" >Min=0, Max=100</td> | ||
2590 | <td valign="top" >Connector</td> | ||
2591 | <td valign="top" >TBD</td> | ||
2592 | </tr> | ||
2593 | <tr> | ||
2594 | <td valign="top" >“brightness”</td> | ||
2595 | <td valign="top" >RANGE</td> | ||
2596 | <td valign="top" >Min=0, Max=100</td> | ||
2597 | <td valign="top" >Connector</td> | ||
2598 | <td valign="top" >TBD</td> | ||
2599 | </tr> | ||
2600 | <tr> | ||
2601 | <td valign="top" >“contrast”</td> | ||
2602 | <td valign="top" >RANGE</td> | ||
2603 | <td valign="top" >Min=0, Max=100</td> | ||
2604 | <td valign="top" >Connector</td> | ||
2605 | <td valign="top" >TBD</td> | ||
2606 | </tr> | ||
2607 | <tr> | ||
2608 | <td valign="top" >“flicker reduction”</td> | ||
2609 | <td valign="top" >RANGE</td> | ||
2610 | <td valign="top" >Min=0, Max=100</td> | ||
2611 | <td valign="top" >Connector</td> | ||
2612 | <td valign="top" >TBD</td> | ||
2613 | </tr> | ||
2614 | <tr> | ||
2615 | <td valign="top" >“overscan”</td> | ||
2616 | <td valign="top" >RANGE</td> | ||
2617 | <td valign="top" >Min=0, Max=100</td> | ||
2618 | <td valign="top" >Connector</td> | ||
2619 | <td valign="top" >TBD</td> | ||
2620 | </tr> | ||
2621 | <tr> | ||
2622 | <td valign="top" >“saturation”</td> | ||
2623 | <td valign="top" >RANGE</td> | ||
2624 | <td valign="top" >Min=0, Max=100</td> | ||
2625 | <td valign="top" >Connector</td> | ||
2626 | <td valign="top" >TBD</td> | ||
2627 | </tr> | ||
2628 | <tr> | ||
2629 | <td valign="top" >“hue”</td> | ||
2630 | <td valign="top" >RANGE</td> | ||
2631 | <td valign="top" >Min=0, Max=100</td> | ||
2632 | <td valign="top" >Connector</td> | ||
2633 | <td valign="top" >TBD</td> | ||
2634 | </tr> | ||
2635 | <tr> | ||
2636 | <td rowspan="2" valign="top" >Optional</td> | ||
2637 | <td valign="top" >“scaling mode”</td> | ||
2638 | <td valign="top" >ENUM</td> | ||
2639 | <td valign="top" >{ "None", "Full", "Center", "Full aspect" }</td> | ||
2640 | <td valign="top" >Connector</td> | ||
2641 | <td valign="top" >TBD</td> | ||
2642 | </tr> | ||
2643 | <tr> | ||
2644 | <td valign="top" >“dirty”</td> | ||
2645 | <td valign="top" >ENUM | IMMUTABLE</td> | ||
2646 | <td valign="top" >{ "Off", "On", "Annotate" }</td> | ||
2647 | <td valign="top" >Connector</td> | ||
2648 | <td valign="top" >TBD</td> | ||
2649 | </tr> | ||
2650 | <tr> | ||
2651 | <td rowspan="21" valign="top" >i915</td> | ||
2652 | <td rowspan="3" valign="top" >Generic</td> | ||
2653 | <td valign="top" >"Broadcast RGB"</td> | ||
2654 | <td valign="top" >ENUM</td> | ||
2655 | <td valign="top" >{ "Automatic", "Full", "Limited 16:235" }</td> | ||
2656 | <td valign="top" >Connector</td> | ||
2657 | <td valign="top" >TBD</td> | ||
2658 | </tr> | ||
2659 | <tr> | ||
2660 | <td valign="top" >“audio”</td> | ||
2661 | <td valign="top" >ENUM</td> | ||
2662 | <td valign="top" >{ "force-dvi", "off", "auto", "on" }</td> | ||
2663 | <td valign="top" >Connector</td> | ||
2664 | <td valign="top" >TBD</td> | ||
2665 | </tr> | ||
2666 | <tr> | ||
2667 | <td valign="top" >Standard name as in DRM</td> | ||
2668 | <td valign="top" >Standard type as in DRM</td> | ||
2669 | <td valign="top" >Standard value as in DRM</td> | ||
2670 | <td valign="top" >Standard Object as in DRM</td> | ||
2671 | <td valign="top" >TBD</td> | ||
2672 | </tr> | ||
2673 | <tr> | ||
2674 | <td rowspan="17" valign="top" >SDVO-TV</td> | ||
2675 | <td valign="top" >“mode”</td> | ||
2676 | <td valign="top" >ENUM</td> | ||
2677 | <td valign="top" >{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</td> | ||
2678 | <td valign="top" >Connector</td> | ||
2679 | <td valign="top" >TBD</td> | ||
2680 | </tr> | ||
2681 | <tr> | ||
2682 | <td valign="top" >"left_margin"</td> | ||
2683 | <td valign="top" >RANGE</td> | ||
2684 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2685 | <td valign="top" >Connector</td> | ||
2686 | <td valign="top" >TBD</td> | ||
2687 | </tr> | ||
2688 | <tr> | ||
2689 | <td valign="top" >"right_margin"</td> | ||
2690 | <td valign="top" >RANGE</td> | ||
2691 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2692 | <td valign="top" >Connector</td> | ||
2693 | <td valign="top" >TBD</td> | ||
2694 | </tr> | ||
2695 | <tr> | ||
2696 | <td valign="top" >"top_margin"</td> | ||
2697 | <td valign="top" >RANGE</td> | ||
2698 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2699 | <td valign="top" >Connector</td> | ||
2700 | <td valign="top" >TBD</td> | ||
2701 | </tr> | ||
2702 | <tr> | ||
2703 | <td valign="top" >"bottom_margin"</td> | ||
2704 | <td valign="top" >RANGE</td> | ||
2705 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2706 | <td valign="top" >Connector</td> | ||
2707 | <td valign="top" >TBD</td> | ||
2708 | </tr> | ||
2709 | <tr> | ||
2710 | <td valign="top" >“hpos”</td> | ||
2711 | <td valign="top" >RANGE</td> | ||
2712 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2713 | <td valign="top" >Connector</td> | ||
2714 | <td valign="top" >TBD</td> | ||
2715 | </tr> | ||
2716 | <tr> | ||
2717 | <td valign="top" >“vpos”</td> | ||
2718 | <td valign="top" >RANGE</td> | ||
2719 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2720 | <td valign="top" >Connector</td> | ||
2721 | <td valign="top" >TBD</td> | ||
2722 | </tr> | ||
2723 | <tr> | ||
2724 | <td valign="top" >“contrast”</td> | ||
2725 | <td valign="top" >RANGE</td> | ||
2726 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2727 | <td valign="top" >Connector</td> | ||
2728 | <td valign="top" >TBD</td> | ||
2729 | </tr> | ||
2730 | <tr> | ||
2731 | <td valign="top" >“saturation”</td> | ||
2732 | <td valign="top" >RANGE</td> | ||
2733 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2734 | <td valign="top" >Connector</td> | ||
2735 | <td valign="top" >TBD</td> | ||
2736 | </tr> | ||
2737 | <tr> | ||
2738 | <td valign="top" >“hue”</td> | ||
2739 | <td valign="top" >RANGE</td> | ||
2740 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2741 | <td valign="top" >Connector</td> | ||
2742 | <td valign="top" >TBD</td> | ||
2743 | </tr> | ||
2744 | <tr> | ||
2745 | <td valign="top" >“sharpness”</td> | ||
2746 | <td valign="top" >RANGE</td> | ||
2747 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2748 | <td valign="top" >Connector</td> | ||
2749 | <td valign="top" >TBD</td> | ||
2750 | </tr> | ||
2751 | <tr> | ||
2752 | <td valign="top" >“flicker_filter”</td> | ||
2753 | <td valign="top" >RANGE</td> | ||
2754 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2755 | <td valign="top" >Connector</td> | ||
2756 | <td valign="top" >TBD</td> | ||
2757 | </tr> | ||
2758 | <tr> | ||
2759 | <td valign="top" >“flicker_filter_adaptive”</td> | ||
2760 | <td valign="top" >RANGE</td> | ||
2761 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2762 | <td valign="top" >Connector</td> | ||
2763 | <td valign="top" >TBD</td> | ||
2764 | </tr> | ||
2765 | <tr> | ||
2766 | <td valign="top" >“flicker_filter_2d”</td> | ||
2767 | <td valign="top" >RANGE</td> | ||
2768 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2769 | <td valign="top" >Connector</td> | ||
2770 | <td valign="top" >TBD</td> | ||
2771 | </tr> | ||
2772 | <tr> | ||
2773 | <td valign="top" >“tv_chroma_filter”</td> | ||
2774 | <td valign="top" >RANGE</td> | ||
2775 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2776 | <td valign="top" >Connector</td> | ||
2777 | <td valign="top" >TBD</td> | ||
2778 | </tr> | ||
2779 | <tr> | ||
2780 | <td valign="top" >“tv_luma_filter”</td> | ||
2781 | <td valign="top" >RANGE</td> | ||
2782 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2783 | <td valign="top" >Connector</td> | ||
2784 | <td valign="top" >TBD</td> | ||
2785 | </tr> | ||
2786 | <tr> | ||
2787 | <td valign="top" >“dot_crawl”</td> | ||
2788 | <td valign="top" >RANGE</td> | ||
2789 | <td valign="top" >Min=0, Max=1</td> | ||
2790 | <td valign="top" >Connector</td> | ||
2791 | <td valign="top" >TBD</td> | ||
2792 | </tr> | ||
2793 | <tr> | ||
2794 | <td valign="top" >SDVO-TV/LVDS</td> | ||
2795 | <td valign="top" >“brightness”</td> | ||
2796 | <td valign="top" >RANGE</td> | ||
2797 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2798 | <td valign="top" >Connector</td> | ||
2799 | <td valign="top" >TBD</td> | ||
2800 | </tr> | ||
2801 | <tr> | ||
2802 | <td rowspan="3" valign="top" >CDV gma-500</td> | ||
2803 | <td rowspan="3" valign="top" >Generic</td> | ||
2804 | <td valign="top" >"Broadcast RGB"</td> | ||
2805 | <td valign="top" >ENUM</td> | ||
2806 | <td valign="top" >{ “Full”, “Limited 16:235” }</td> | ||
2807 | <td valign="top" >Connector</td> | ||
2808 | <td valign="top" >TBD</td> | ||
2809 | </tr> | ||
2810 | <tr> | ||
2811 | <td valign="top" >"Broadcast RGB"</td> | ||
2812 | <td valign="top" >ENUM</td> | ||
2813 | <td valign="top" >{ “off”, “auto”, “on” }</td> | ||
2814 | <td valign="top" >Connector</td> | ||
2815 | <td valign="top" >TBD</td> | ||
2816 | </tr> | ||
2817 | <tr> | ||
2818 | <td valign="top" >Standard name as in DRM</td> | ||
2819 | <td valign="top" >Standard type as in DRM</td> | ||
2820 | <td valign="top" >Standard value as in DRM</td> | ||
2821 | <td valign="top" >Standard Object as in DRM</td> | ||
2822 | <td valign="top" >TBD</td> | ||
2823 | </tr> | ||
2824 | <tr> | ||
2825 | <td rowspan="20" valign="top" >Poulsbo</td> | ||
2826 | <td rowspan="2" valign="top" >Generic</td> | ||
2827 | <td valign="top" >“backlight”</td> | ||
2828 | <td valign="top" >RANGE</td> | ||
2829 | <td valign="top" >Min=0, Max=100</td> | ||
2830 | <td valign="top" >Connector</td> | ||
2831 | <td valign="top" >TBD</td> | ||
2832 | </tr> | ||
2833 | <tr> | ||
2834 | <td valign="top" >Standard name as in DRM</td> | ||
2835 | <td valign="top" >Standard type as in DRM</td> | ||
2836 | <td valign="top" >Standard value as in DRM</td> | ||
2837 | <td valign="top" >Standard Object as in DRM</td> | ||
2838 | <td valign="top" >TBD</td> | ||
2839 | </tr> | ||
2840 | <tr> | ||
2841 | <td rowspan="17" valign="top" >SDVO-TV</td> | ||
2842 | <td valign="top" >“mode”</td> | ||
2843 | <td valign="top" >ENUM</td> | ||
2844 | <td valign="top" >{ "NTSC_M", "NTSC_J", "NTSC_443", "PAL_B" } etc.</td> | ||
2845 | <td valign="top" >Connector</td> | ||
2846 | <td valign="top" >TBD</td> | ||
2847 | </tr> | ||
2848 | <tr> | ||
2849 | <td valign="top" >"left_margin"</td> | ||
2850 | <td valign="top" >RANGE</td> | ||
2851 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2852 | <td valign="top" >Connector</td> | ||
2853 | <td valign="top" >TBD</td> | ||
2854 | </tr> | ||
2855 | <tr> | ||
2856 | <td valign="top" >"right_margin"</td> | ||
2857 | <td valign="top" >RANGE</td> | ||
2858 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2859 | <td valign="top" >Connector</td> | ||
2860 | <td valign="top" >TBD</td> | ||
2861 | </tr> | ||
2862 | <tr> | ||
2863 | <td valign="top" >"top_margin"</td> | ||
2864 | <td valign="top" >RANGE</td> | ||
2865 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2866 | <td valign="top" >Connector</td> | ||
2867 | <td valign="top" >TBD</td> | ||
2868 | </tr> | ||
2869 | <tr> | ||
2870 | <td valign="top" >"bottom_margin"</td> | ||
2871 | <td valign="top" >RANGE</td> | ||
2872 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2873 | <td valign="top" >Connector</td> | ||
2874 | <td valign="top" >TBD</td> | ||
2875 | </tr> | ||
2876 | <tr> | ||
2877 | <td valign="top" >“hpos”</td> | ||
2878 | <td valign="top" >RANGE</td> | ||
2879 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2880 | <td valign="top" >Connector</td> | ||
2881 | <td valign="top" >TBD</td> | ||
2882 | </tr> | ||
2883 | <tr> | ||
2884 | <td valign="top" >“vpos”</td> | ||
2885 | <td valign="top" >RANGE</td> | ||
2886 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2887 | <td valign="top" >Connector</td> | ||
2888 | <td valign="top" >TBD</td> | ||
2889 | </tr> | ||
2890 | <tr> | ||
2891 | <td valign="top" >“contrast”</td> | ||
2892 | <td valign="top" >RANGE</td> | ||
2893 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2894 | <td valign="top" >Connector</td> | ||
2895 | <td valign="top" >TBD</td> | ||
2896 | </tr> | ||
2897 | <tr> | ||
2898 | <td valign="top" >“saturation”</td> | ||
2899 | <td valign="top" >RANGE</td> | ||
2900 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2901 | <td valign="top" >Connector</td> | ||
2902 | <td valign="top" >TBD</td> | ||
2903 | </tr> | ||
2904 | <tr> | ||
2905 | <td valign="top" >“hue”</td> | ||
2906 | <td valign="top" >RANGE</td> | ||
2907 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2908 | <td valign="top" >Connector</td> | ||
2909 | <td valign="top" >TBD</td> | ||
2910 | </tr> | ||
2911 | <tr> | ||
2912 | <td valign="top" >“sharpness”</td> | ||
2913 | <td valign="top" >RANGE</td> | ||
2914 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2915 | <td valign="top" >Connector</td> | ||
2916 | <td valign="top" >TBD</td> | ||
2917 | </tr> | ||
2918 | <tr> | ||
2919 | <td valign="top" >“flicker_filter”</td> | ||
2920 | <td valign="top" >RANGE</td> | ||
2921 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2922 | <td valign="top" >Connector</td> | ||
2923 | <td valign="top" >TBD</td> | ||
2924 | </tr> | ||
2925 | <tr> | ||
2926 | <td valign="top" >“flicker_filter_adaptive”</td> | ||
2927 | <td valign="top" >RANGE</td> | ||
2928 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2929 | <td valign="top" >Connector</td> | ||
2930 | <td valign="top" >TBD</td> | ||
2931 | </tr> | ||
2932 | <tr> | ||
2933 | <td valign="top" >“flicker_filter_2d”</td> | ||
2934 | <td valign="top" >RANGE</td> | ||
2935 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2936 | <td valign="top" >Connector</td> | ||
2937 | <td valign="top" >TBD</td> | ||
2938 | </tr> | ||
2939 | <tr> | ||
2940 | <td valign="top" >“tv_chroma_filter”</td> | ||
2941 | <td valign="top" >RANGE</td> | ||
2942 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2943 | <td valign="top" >Connector</td> | ||
2944 | <td valign="top" >TBD</td> | ||
2945 | </tr> | ||
2946 | <tr> | ||
2947 | <td valign="top" >“tv_luma_filter”</td> | ||
2948 | <td valign="top" >RANGE</td> | ||
2949 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2950 | <td valign="top" >Connector</td> | ||
2951 | <td valign="top" >TBD</td> | ||
2952 | </tr> | ||
2953 | <tr> | ||
2954 | <td valign="top" >“dot_crawl”</td> | ||
2955 | <td valign="top" >RANGE</td> | ||
2956 | <td valign="top" >Min=0, Max=1</td> | ||
2957 | <td valign="top" >Connector</td> | ||
2958 | <td valign="top" >TBD</td> | ||
2959 | </tr> | ||
2960 | <tr> | ||
2961 | <td valign="top" >SDVO-TV/LVDS</td> | ||
2962 | <td valign="top" >“brightness”</td> | ||
2963 | <td valign="top" >RANGE</td> | ||
2964 | <td valign="top" >Min=0, Max= SDVO dependent</td> | ||
2965 | <td valign="top" >Connector</td> | ||
2966 | <td valign="top" >TBD</td> | ||
2967 | </tr> | ||
2968 | <tr> | ||
2969 | <td rowspan="11" valign="top" >armada</td> | ||
2970 | <td rowspan="2" valign="top" >CRTC</td> | ||
2971 | <td valign="top" >"CSC_YUV"</td> | ||
2972 | <td valign="top" >ENUM</td> | ||
2973 | <td valign="top" >{ "Auto" , "CCIR601", "CCIR709" }</td> | ||
2974 | <td valign="top" >CRTC</td> | ||
2975 | <td valign="top" >TBD</td> | ||
2976 | </tr> | ||
2977 | <tr> | ||
2978 | <td valign="top" >"CSC_RGB"</td> | ||
2979 | <td valign="top" >ENUM</td> | ||
2980 | <td valign="top" >{ "Auto", "Computer system", "Studio" }</td> | ||
2981 | <td valign="top" >CRTC</td> | ||
2982 | <td valign="top" >TBD</td> | ||
2983 | </tr> | ||
2984 | <tr> | ||
2985 | <td rowspan="9" valign="top" >Overlay</td> | ||
2986 | <td valign="top" >"colorkey"</td> | ||
2987 | <td valign="top" >RANGE</td> | ||
2988 | <td valign="top" >Min=0, Max=0xffffff</td> | ||
2989 | <td valign="top" >Plane</td> | ||
2990 | <td valign="top" >TBD</td> | ||
2991 | </tr> | ||
2992 | <tr> | ||
2993 | <td valign="top" >"colorkey_min"</td> | ||
2994 | <td valign="top" >RANGE</td> | ||
2995 | <td valign="top" >Min=0, Max=0xffffff</td> | ||
2996 | <td valign="top" >Plane</td> | ||
2997 | <td valign="top" >TBD</td> | ||
2998 | </tr> | ||
2999 | <tr> | ||
3000 | <td valign="top" >"colorkey_max"</td> | ||
3001 | <td valign="top" >RANGE</td> | ||
3002 | <td valign="top" >Min=0, Max=0xffffff</td> | ||
3003 | <td valign="top" >Plane</td> | ||
3004 | <td valign="top" >TBD</td> | ||
3005 | </tr> | ||
3006 | <tr> | ||
3007 | <td valign="top" >"colorkey_val"</td> | ||
3008 | <td valign="top" >RANGE</td> | ||
3009 | <td valign="top" >Min=0, Max=0xffffff</td> | ||
3010 | <td valign="top" >Plane</td> | ||
3011 | <td valign="top" >TBD</td> | ||
3012 | </tr> | ||
3013 | <tr> | ||
3014 | <td valign="top" >"colorkey_alpha"</td> | ||
3015 | <td valign="top" >RANGE</td> | ||
3016 | <td valign="top" >Min=0, Max=0xffffff</td> | ||
3017 | <td valign="top" >Plane</td> | ||
3018 | <td valign="top" >TBD</td> | ||
3019 | </tr> | ||
3020 | <tr> | ||
3021 | <td valign="top" >"colorkey_mode"</td> | ||
3022 | <td valign="top" >ENUM</td> | ||
3023 | <td valign="top" >{ "disabled", "Y component", "U component" | ||
3024 | , "V component", "RGB", “R component", "G component", "B component" }</td> | ||
3025 | <td valign="top" >Plane</td> | ||
3026 | <td valign="top" >TBD</td> | ||
3027 | </tr> | ||
3028 | <tr> | ||
3029 | <td valign="top" >"brightness"</td> | ||
3030 | <td valign="top" >RANGE</td> | ||
3031 | <td valign="top" >Min=0, Max=256 + 255</td> | ||
3032 | <td valign="top" >Plane</td> | ||
3033 | <td valign="top" >TBD</td> | ||
3034 | </tr> | ||
3035 | <tr> | ||
3036 | <td valign="top" >"contrast"</td> | ||
3037 | <td valign="top" >RANGE</td> | ||
3038 | <td valign="top" >Min=0, Max=0x7fff</td> | ||
3039 | <td valign="top" >Plane</td> | ||
3040 | <td valign="top" >TBD</td> | ||
3041 | </tr> | ||
3042 | <tr> | ||
3043 | <td valign="top" >"saturation"</td> | ||
3044 | <td valign="top" >RANGE</td> | ||
3045 | <td valign="top" >Min=0, Max=0x7fff</td> | ||
3046 | <td valign="top" >Plane</td> | ||
3047 | <td valign="top" >TBD</td> | ||
3048 | </tr> | ||
3049 | <tr> | ||
3050 | <td rowspan="2" valign="top" >exynos</td> | ||
3051 | <td valign="top" >CRTC</td> | ||
3052 | <td valign="top" >“mode”</td> | ||
3053 | <td valign="top" >ENUM</td> | ||
3054 | <td valign="top" >{ "normal", "blank" }</td> | ||
3055 | <td valign="top" >CRTC</td> | ||
3056 | <td valign="top" >TBD</td> | ||
3057 | </tr> | ||
3058 | <tr> | ||
3059 | <td valign="top" >Overlay</td> | ||
3060 | <td valign="top" >“zpos”</td> | ||
3061 | <td valign="top" >RANGE</td> | ||
3062 | <td valign="top" >Min=0, Max=MAX_PLANE-1</td> | ||
3063 | <td valign="top" >Plane</td> | ||
3064 | <td valign="top" >TBD</td> | ||
3065 | </tr> | ||
3066 | <tr> | ||
3067 | <td rowspan="3" valign="top" >i2c/ch7006_drv</td> | ||
3068 | <td valign="top" >Generic</td> | ||
3069 | <td valign="top" >“scale”</td> | ||
3070 | <td valign="top" >RANGE</td> | ||
3071 | <td valign="top" >Min=0, Max=2</td> | ||
3072 | <td valign="top" >Connector</td> | ||
3073 | <td valign="top" >TBD</td> | ||
3074 | </tr> | ||
3075 | <tr> | ||
3076 | <td rowspan="2" valign="top" >TV</td> | ||
3077 | <td valign="top" >Standard names as in DRM</td> | ||
3078 | <td valign="top" >Standard types as in DRM</td> | ||
3079 | <td valign="top" >Standard Values as in DRM</td> | ||
3080 | <td valign="top" >Standard object as in DRM</td> | ||
3081 | <td valign="top" >TBD</td> | ||
3082 | </tr> | ||
3083 | <tr> | ||
3084 | <td valign="top" >“mode”</td> | ||
3085 | <td valign="top" >ENUM</td> | ||
3086 | <td valign="top" >{ "PAL", "PAL-M","PAL-N"}, ”PAL-Nc" | ||
3087 | , "PAL-60", "NTSC-M", "NTSC-J" }</td> | ||
3088 | <td valign="top" >Connector</td> | ||
3089 | <td valign="top" >TBD</td> | ||
3090 | </tr> | ||
3091 | <tr> | ||
3092 | <td rowspan="16" valign="top" >nouveau</td> | ||
3093 | <td rowspan="6" valign="top" >NV10 Overlay</td> | ||
3094 | <td valign="top" >"colorkey"</td> | ||
3095 | <td valign="top" >RANGE</td> | ||
3096 | <td valign="top" >Min=0, Max=0x01ffffff</td> | ||
3097 | <td valign="top" >Plane</td> | ||
3098 | <td valign="top" >TBD</td> | ||
3099 | </tr> | ||
3100 | <tr> | ||
3101 | <td valign="top" >“contrast”</td> | ||
3102 | <td valign="top" >RANGE</td> | ||
3103 | <td valign="top" >Min=0, Max=8192-1</td> | ||
3104 | <td valign="top" >Plane</td> | ||
3105 | <td valign="top" >TBD</td> | ||
3106 | </tr> | ||
3107 | <tr> | ||
3108 | <td valign="top" >“brightness”</td> | ||
3109 | <td valign="top" >RANGE</td> | ||
3110 | <td valign="top" >Min=0, Max=1024</td> | ||
3111 | <td valign="top" >Plane</td> | ||
3112 | <td valign="top" >TBD</td> | ||
3113 | </tr> | ||
3114 | <tr> | ||
3115 | <td valign="top" >“hue”</td> | ||
3116 | <td valign="top" >RANGE</td> | ||
3117 | <td valign="top" >Min=0, Max=359</td> | ||
3118 | <td valign="top" >Plane</td> | ||
3119 | <td valign="top" >TBD</td> | ||
3120 | </tr> | ||
3121 | <tr> | ||
3122 | <td valign="top" >“saturation”</td> | ||
3123 | <td valign="top" >RANGE</td> | ||
3124 | <td valign="top" >Min=0, Max=8192-1</td> | ||
3125 | <td valign="top" >Plane</td> | ||
3126 | <td valign="top" >TBD</td> | ||
3127 | </tr> | ||
3128 | <tr> | ||
3129 | <td valign="top" >“iturbt_709”</td> | ||
3130 | <td valign="top" >RANGE</td> | ||
3131 | <td valign="top" >Min=0, Max=1</td> | ||
3132 | <td valign="top" >Plane</td> | ||
3133 | <td valign="top" >TBD</td> | ||
3134 | </tr> | ||
3135 | <tr> | ||
3136 | <td rowspan="2" valign="top" >Nv04 Overlay</td> | ||
3137 | <td valign="top" >“colorkey”</td> | ||
3138 | <td valign="top" >RANGE</td> | ||
3139 | <td valign="top" >Min=0, Max=0x01ffffff</td> | ||
3140 | <td valign="top" >Plane</td> | ||
3141 | <td valign="top" >TBD</td> | ||
3142 | </tr> | ||
3143 | <tr> | ||
3144 | <td valign="top" >“brightness”</td> | ||
3145 | <td valign="top" >RANGE</td> | ||
3146 | <td valign="top" >Min=0, Max=1024</td> | ||
3147 | <td valign="top" >Plane</td> | ||
3148 | <td valign="top" >TBD</td> | ||
3149 | </tr> | ||
3150 | <tr> | ||
3151 | <td rowspan="7" valign="top" >Display</td> | ||
3152 | <td valign="top" >“dithering mode”</td> | ||
3153 | <td valign="top" >ENUM</td> | ||
3154 | <td valign="top" >{ "auto", "off", "on" }</td> | ||
3155 | <td valign="top" >Connector</td> | ||
3156 | <td valign="top" >TBD</td> | ||
3157 | </tr> | ||
3158 | <tr> | ||
3159 | <td valign="top" >“dithering depth”</td> | ||
3160 | <td valign="top" >ENUM</td> | ||
3161 | <td valign="top" >{ "auto", "off", "on", "static 2x2", "dynamic 2x2", "temporal" }</td> | ||
3162 | <td valign="top" >Connector</td> | ||
3163 | <td valign="top" >TBD</td> | ||
3164 | </tr> | ||
3165 | <tr> | ||
3166 | <td valign="top" >“underscan”</td> | ||
3167 | <td valign="top" >ENUM</td> | ||
3168 | <td valign="top" >{ "auto", "6 bpc", "8 bpc" }</td> | ||
3169 | <td valign="top" >Connector</td> | ||
3170 | <td valign="top" >TBD</td> | ||
3171 | </tr> | ||
3172 | <tr> | ||
3173 | <td valign="top" >“underscan hborder”</td> | ||
3174 | <td valign="top" >RANGE</td> | ||
3175 | <td valign="top" >Min=0, Max=128</td> | ||
3176 | <td valign="top" >Connector</td> | ||
3177 | <td valign="top" >TBD</td> | ||
3178 | </tr> | ||
3179 | <tr> | ||
3180 | <td valign="top" >“underscan vborder”</td> | ||
3181 | <td valign="top" >RANGE</td> | ||
3182 | <td valign="top" >Min=0, Max=128</td> | ||
3183 | <td valign="top" >Connector</td> | ||
3184 | <td valign="top" >TBD</td> | ||
3185 | </tr> | ||
3186 | <tr> | ||
3187 | <td valign="top" >“vibrant hue”</td> | ||
3188 | <td valign="top" >RANGE</td> | ||
3189 | <td valign="top" >Min=0, Max=180</td> | ||
3190 | <td valign="top" >Connector</td> | ||
3191 | <td valign="top" >TBD</td> | ||
3192 | </tr> | ||
3193 | <tr> | ||
3194 | <td valign="top" >“color vibrance”</td> | ||
3195 | <td valign="top" >RANGE</td> | ||
3196 | <td valign="top" >Min=0, Max=200</td> | ||
3197 | <td valign="top" >Connector</td> | ||
3198 | <td valign="top" >TBD</td> | ||
3199 | </tr> | ||
3200 | <tr> | ||
3201 | <td valign="top" >Generic</td> | ||
3202 | <td valign="top" >Standard name as in DRM</td> | ||
3203 | <td valign="top" >Standard type as in DRM</td> | ||
3204 | <td valign="top" >Standard value as in DRM</td> | ||
3205 | <td valign="top" >Standard Object as in DRM</td> | ||
3206 | <td valign="top" >TBD</td> | ||
3207 | </tr> | ||
3208 | <tr> | ||
3209 | <td rowspan="2" valign="top" >omap</td> | ||
3210 | <td rowspan="2" valign="top" >Generic</td> | ||
3211 | <td valign="top" >“rotation”</td> | ||
3212 | <td valign="top" >BITMASK</td> | ||
3213 | <td valign="top" >{ 0, "rotate-0" }, | ||
3214 | { 1, "rotate-90" }, | ||
3215 | { 2, "rotate-180" }, | ||
3216 | { 3, "rotate-270" }, | ||
3217 | { 4, "reflect-x" }, | ||
3218 | { 5, "reflect-y" }</td> | ||
3219 | <td valign="top" >CRTC, Plane</td> | ||
3220 | <td valign="top" >TBD</td> | ||
3221 | </tr> | ||
3222 | <tr> | ||
3223 | <td valign="top" >“zorder”</td> | ||
3224 | <td valign="top" >RANGE</td> | ||
3225 | <td valign="top" >Min=0, Max=3</td> | ||
3226 | <td valign="top" >CRTC, Plane</td> | ||
3227 | <td valign="top" >TBD</td> | ||
3228 | </tr> | ||
3229 | <tr> | ||
3230 | <td valign="top" >qxl</td> | ||
3231 | <td valign="top" >Generic</td> | ||
3232 | <td valign="top" >“hotplug_mode_update"</td> | ||
3233 | <td valign="top" >RANGE</td> | ||
3234 | <td valign="top" >Min=0, Max=1</td> | ||
3235 | <td valign="top" >Connector</td> | ||
3236 | <td valign="top" >TBD</td> | ||
3237 | </tr> | ||
3238 | <tr> | ||
3239 | <td rowspan="10" valign="top" >radeon</td> | ||
3240 | <td valign="top" >DVI-I</td> | ||
3241 | <td valign="top" >“coherent”</td> | ||
3242 | <td valign="top" >RANGE</td> | ||
3243 | <td valign="top" >Min=0, Max=1</td> | ||
3244 | <td valign="top" >Connector</td> | ||
3245 | <td valign="top" >TBD</td> | ||
3246 | </tr> | ||
3247 | <tr> | ||
3248 | <td valign="top" >DAC enable load detect</td> | ||
3249 | <td valign="top" >“load detection”</td> | ||
3250 | <td valign="top" >RANGE</td> | ||
3251 | <td valign="top" >Min=0, Max=1</td> | ||
3252 | <td valign="top" >Connector</td> | ||
3253 | <td valign="top" >TBD</td> | ||
3254 | </tr> | ||
3255 | <tr> | ||
3256 | <td valign="top" >TV Standard</td> | ||
3257 | <td valign="top" >"tv standard"</td> | ||
3258 | <td valign="top" >ENUM</td> | ||
3259 | <td valign="top" >{ "ntsc", "pal", "pal-m", "pal-60", "ntsc-j" | ||
3260 | , "scart-pal", "pal-cn", "secam" }</td> | ||
3261 | <td valign="top" >Connector</td> | ||
3262 | <td valign="top" >TBD</td> | ||
3263 | </tr> | ||
3264 | <tr> | ||
3265 | <td valign="top" >legacy TMDS PLL detect</td> | ||
3266 | <td valign="top" >"tmds_pll"</td> | ||
3267 | <td valign="top" >ENUM</td> | ||
3268 | <td valign="top" >{ "driver", "bios" }</td> | ||
3269 | <td valign="top" >-</td> | ||
3270 | <td valign="top" >TBD</td> | ||
3271 | </tr> | ||
3272 | <tr> | ||
3273 | <td rowspan="3" valign="top" >Underscan</td> | ||
3274 | <td valign="top" >"underscan"</td> | ||
3275 | <td valign="top" >ENUM</td> | ||
3276 | <td valign="top" >{ "off", "on", "auto" }</td> | ||
3277 | <td valign="top" >Connector</td> | ||
3278 | <td valign="top" >TBD</td> | ||
3279 | </tr> | ||
3280 | <tr> | ||
3281 | <td valign="top" >"underscan hborder"</td> | ||
3282 | <td valign="top" >RANGE</td> | ||
3283 | <td valign="top" >Min=0, Max=128</td> | ||
3284 | <td valign="top" >Connector</td> | ||
3285 | <td valign="top" >TBD</td> | ||
3286 | </tr> | ||
3287 | <tr> | ||
3288 | <td valign="top" >"underscan vborder"</td> | ||
3289 | <td valign="top" >RANGE</td> | ||
3290 | <td valign="top" >Min=0, Max=128</td> | ||
3291 | <td valign="top" >Connector</td> | ||
3292 | <td valign="top" >TBD</td> | ||
3293 | </tr> | ||
3294 | <tr> | ||
3295 | <td valign="top" >Audio</td> | ||
3296 | <td valign="top" >“audio”</td> | ||
3297 | <td valign="top" >ENUM</td> | ||
3298 | <td valign="top" >{ "off", "on", "auto" }</td> | ||
3299 | <td valign="top" >Connector</td> | ||
3300 | <td valign="top" >TBD</td> | ||
3301 | </tr> | ||
3302 | <tr> | ||
3303 | <td valign="top" >FMT Dithering</td> | ||
3304 | <td valign="top" >“dither”</td> | ||
3305 | <td valign="top" >ENUM</td> | ||
3306 | <td valign="top" >{ "off", "on" }</td> | ||
3307 | <td valign="top" >Connector</td> | ||
3308 | <td valign="top" >TBD</td> | ||
3309 | </tr> | ||
3310 | <tr> | ||
3311 | <td valign="top" >Generic</td> | ||
3312 | <td valign="top" >Standard name as in DRM</td> | ||
3313 | <td valign="top" >Standard type as in DRM</td> | ||
3314 | <td valign="top" >Standard value as in DRM</td> | ||
3315 | <td valign="top" >Standard Object as in DRM</td> | ||
3316 | <td valign="top" >TBD</td> | ||
3317 | </tr> | ||
3318 | <tr> | ||
3319 | <td rowspan="3" valign="top" >rcar-du</td> | ||
3320 | <td rowspan="3" valign="top" >Generic</td> | ||
3321 | <td valign="top" >"alpha"</td> | ||
3322 | <td valign="top" >RANGE</td> | ||
3323 | <td valign="top" >Min=0, Max=255</td> | ||
3324 | <td valign="top" >Plane</td> | ||
3325 | <td valign="top" >TBD</td> | ||
3326 | </tr> | ||
3327 | <tr> | ||
3328 | <td valign="top" >"colorkey"</td> | ||
3329 | <td valign="top" >RANGE</td> | ||
3330 | <td valign="top" >Min=0, Max=0x01ffffff</td> | ||
3331 | <td valign="top" >Plane</td> | ||
3332 | <td valign="top" >TBD</td> | ||
3333 | </tr> | ||
3334 | <tr> | ||
3335 | <td valign="top" >"zpos"</td> | ||
3336 | <td valign="top" >RANGE</td> | ||
3337 | <td valign="top" >Min=1, Max=7</td> | ||
3338 | <td valign="top" >Plane</td> | ||
3339 | <td valign="top" >TBD</td> | ||
3340 | </tr> | ||
3341 | </tbody> | ||
3342 | </table> | ||
3343 | </sect2> | ||
2453 | </sect1> | 3344 | </sect1> |
2454 | 3345 | ||
2455 | <!-- Internals: vertical blanking --> | 3346 | <!-- Internals: vertical blanking --> |
@@ -2527,6 +3418,10 @@ void (*disable_vblank) (struct drm_device *dev, int crtc);</synopsis> | |||
2527 | with a call to <function>drm_vblank_cleanup</function> in the driver | 3418 | with a call to <function>drm_vblank_cleanup</function> in the driver |
2528 | <methodname>unload</methodname> operation handler. | 3419 | <methodname>unload</methodname> operation handler. |
2529 | </para> | 3420 | </para> |
3421 | <sect2> | ||
3422 | <title>Vertical Blanking and Interrupt Handling Functions Reference</title> | ||
3423 | !Edrivers/gpu/drm/drm_irq.c | ||
3424 | </sect2> | ||
2530 | </sect1> | 3425 | </sect1> |
2531 | 3426 | ||
2532 | <!-- Internals: open/close, file operations and ioctls --> | 3427 | <!-- Internals: open/close, file operations and ioctls --> |
@@ -2869,17 +3764,16 @@ int num_ioctls;</synopsis> | |||
2869 | <term>DRM_IOCTL_MODESET_CTL</term> | 3764 | <term>DRM_IOCTL_MODESET_CTL</term> |
2870 | <listitem> | 3765 | <listitem> |
2871 | <para> | 3766 | <para> |
2872 | This should be called by application level drivers before and | 3767 | This was only used for user-mode-settind drivers around |
2873 | after mode setting, since on many devices the vertical blank | 3768 | modesetting changes to allow the kernel to update the vblank |
2874 | counter is reset at that time. Internally, the DRM snapshots | 3769 | interrupt after mode setting, since on many devices the vertical |
2875 | the last vblank count when the ioctl is called with the | 3770 | blank counter is reset to 0 at some point during modeset. Modern |
2876 | _DRM_PRE_MODESET command, so that the counter won't go backwards | 3771 | drivers should not call this any more since with kernel mode |
2877 | (which is dealt with when _DRM_POST_MODESET is used). | 3772 | setting it is a no-op. |
2878 | </para> | 3773 | </para> |
2879 | </listitem> | 3774 | </listitem> |
2880 | </varlistentry> | 3775 | </varlistentry> |
2881 | </variablelist> | 3776 | </variablelist> |
2882 | <!--!Edrivers/char/drm/drm_irq.c--> | ||
2883 | </para> | 3777 | </para> |
2884 | </sect1> | 3778 | </sect1> |
2885 | 3779 | ||
@@ -2942,6 +3836,96 @@ int num_ioctls;</synopsis> | |||
2942 | probing, so those sections fully apply. | 3836 | probing, so those sections fully apply. |
2943 | </para> | 3837 | </para> |
2944 | </sect2> | 3838 | </sect2> |
3839 | <sect2> | ||
3840 | <title>DPIO</title> | ||
3841 | !Pdrivers/gpu/drm/i915/i915_reg.h DPIO | ||
3842 | <table id="dpiox2"> | ||
3843 | <title>Dual channel PHY (VLV/CHV)</title> | ||
3844 | <tgroup cols="8"> | ||
3845 | <colspec colname="c0" /> | ||
3846 | <colspec colname="c1" /> | ||
3847 | <colspec colname="c2" /> | ||
3848 | <colspec colname="c3" /> | ||
3849 | <colspec colname="c4" /> | ||
3850 | <colspec colname="c5" /> | ||
3851 | <colspec colname="c6" /> | ||
3852 | <colspec colname="c7" /> | ||
3853 | <spanspec spanname="ch0" namest="c0" nameend="c3" /> | ||
3854 | <spanspec spanname="ch1" namest="c4" nameend="c7" /> | ||
3855 | <spanspec spanname="ch0pcs01" namest="c0" nameend="c1" /> | ||
3856 | <spanspec spanname="ch0pcs23" namest="c2" nameend="c3" /> | ||
3857 | <spanspec spanname="ch1pcs01" namest="c4" nameend="c5" /> | ||
3858 | <spanspec spanname="ch1pcs23" namest="c6" nameend="c7" /> | ||
3859 | <thead> | ||
3860 | <row> | ||
3861 | <entry spanname="ch0">CH0</entry> | ||
3862 | <entry spanname="ch1">CH1</entry> | ||
3863 | </row> | ||
3864 | </thead> | ||
3865 | <tbody valign="top" align="center"> | ||
3866 | <row> | ||
3867 | <entry spanname="ch0">CMN/PLL/REF</entry> | ||
3868 | <entry spanname="ch1">CMN/PLL/REF</entry> | ||
3869 | </row> | ||
3870 | <row> | ||
3871 | <entry spanname="ch0pcs01">PCS01</entry> | ||
3872 | <entry spanname="ch0pcs23">PCS23</entry> | ||
3873 | <entry spanname="ch1pcs01">PCS01</entry> | ||
3874 | <entry spanname="ch1pcs23">PCS23</entry> | ||
3875 | </row> | ||
3876 | <row> | ||
3877 | <entry>TX0</entry> | ||
3878 | <entry>TX1</entry> | ||
3879 | <entry>TX2</entry> | ||
3880 | <entry>TX3</entry> | ||
3881 | <entry>TX0</entry> | ||
3882 | <entry>TX1</entry> | ||
3883 | <entry>TX2</entry> | ||
3884 | <entry>TX3</entry> | ||
3885 | </row> | ||
3886 | <row> | ||
3887 | <entry spanname="ch0">DDI0</entry> | ||
3888 | <entry spanname="ch1">DDI1</entry> | ||
3889 | </row> | ||
3890 | </tbody> | ||
3891 | </tgroup> | ||
3892 | </table> | ||
3893 | <table id="dpiox1"> | ||
3894 | <title>Single channel PHY (CHV)</title> | ||
3895 | <tgroup cols="4"> | ||
3896 | <colspec colname="c0" /> | ||
3897 | <colspec colname="c1" /> | ||
3898 | <colspec colname="c2" /> | ||
3899 | <colspec colname="c3" /> | ||
3900 | <spanspec spanname="ch0" namest="c0" nameend="c3" /> | ||
3901 | <spanspec spanname="ch0pcs01" namest="c0" nameend="c1" /> | ||
3902 | <spanspec spanname="ch0pcs23" namest="c2" nameend="c3" /> | ||
3903 | <thead> | ||
3904 | <row> | ||
3905 | <entry spanname="ch0">CH0</entry> | ||
3906 | </row> | ||
3907 | </thead> | ||
3908 | <tbody valign="top" align="center"> | ||
3909 | <row> | ||
3910 | <entry spanname="ch0">CMN/PLL/REF</entry> | ||
3911 | </row> | ||
3912 | <row> | ||
3913 | <entry spanname="ch0pcs01">PCS01</entry> | ||
3914 | <entry spanname="ch0pcs23">PCS23</entry> | ||
3915 | </row> | ||
3916 | <row> | ||
3917 | <entry>TX0</entry> | ||
3918 | <entry>TX1</entry> | ||
3919 | <entry>TX2</entry> | ||
3920 | <entry>TX3</entry> | ||
3921 | </row> | ||
3922 | <row> | ||
3923 | <entry spanname="ch0">DDI2</entry> | ||
3924 | </row> | ||
3925 | </tbody> | ||
3926 | </tgroup> | ||
3927 | </table> | ||
3928 | </sect2> | ||
2945 | </sect1> | 3929 | </sect1> |
2946 | 3930 | ||
2947 | <sect1> | 3931 | <sect1> |
@@ -2950,6 +3934,11 @@ int num_ioctls;</synopsis> | |||
2950 | This sections covers all things related to the GEM implementation in the | 3934 | This sections covers all things related to the GEM implementation in the |
2951 | i915 driver. | 3935 | i915 driver. |
2952 | </para> | 3936 | </para> |
3937 | <sect2> | ||
3938 | <title>Batchbuffer Parsing</title> | ||
3939 | !Pdrivers/gpu/drm/i915/i915_cmd_parser.c batch buffer command parser | ||
3940 | !Idrivers/gpu/drm/i915/i915_cmd_parser.c | ||
3941 | </sect2> | ||
2953 | </sect1> | 3942 | </sect1> |
2954 | </chapter> | 3943 | </chapter> |
2955 | </part> | 3944 | </part> |