You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
139 lines
5.5 KiB
139 lines
5.5 KiB
<?xml version='1.0'?> <!--*-nxml-*--> |
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" |
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> |
|
|
|
<!-- |
|
Written 2012 by David Herrmann <dh.herrmann@googlemail.com> |
|
Dedicated to the Public Domain |
|
--> |
|
|
|
<refentry id="drmModeGetResources"> |
|
<refentryinfo> |
|
<title>Direct Rendering Manager</title> |
|
<productname>libdrm</productname> |
|
<date>September 2012</date> |
|
<authorgroup> |
|
<author> |
|
<contrib>Developer</contrib> |
|
<firstname>David</firstname> |
|
<surname>Herrmann</surname> |
|
<email>dh.herrmann@googlemail.com</email> |
|
</author> |
|
</authorgroup> |
|
</refentryinfo> |
|
|
|
<refmeta> |
|
<refentrytitle>drmModeGetResources</refentrytitle> |
|
<manvolnum>3</manvolnum> |
|
</refmeta> |
|
|
|
<refnamediv> |
|
<refname>drmModeGetResources</refname> |
|
<refpurpose>retrieve current display configuration information</refpurpose> |
|
</refnamediv> |
|
|
|
<refsynopsisdiv> |
|
|
|
<funcsynopsis> |
|
<funcsynopsisinfo>#include <xf86drm.h></funcsynopsisinfo> |
|
<funcsynopsisinfo>#include <xf86drmMode.h></funcsynopsisinfo> |
|
|
|
<funcprototype> |
|
<funcdef>drmModeResPtr <function>drmModeGetResources</function></funcdef> |
|
<paramdef>int <parameter>fd</parameter></paramdef> |
|
</funcprototype> |
|
</funcsynopsis> |
|
|
|
</refsynopsisdiv> |
|
|
|
<refsect1> |
|
<title>Description</title> |
|
<para><function>drmModeGetResources</function> allocates, populates, and |
|
returns a <structname>drmModeRes</structname> structure containing |
|
information about the current display configuration. The structure |
|
contains the following fields: |
|
|
|
<programlisting> |
|
typedef struct _drmModeRes { |
|
int count_fbs; |
|
uint32_t *fbs; |
|
|
|
int count_crtcs; |
|
uint32_t *crtcs; |
|
|
|
int count_connectors; |
|
uint32_t *connectors; |
|
|
|
int count_encoders; |
|
uint32_t *encoders; |
|
|
|
uint32_t min_width, max_width; |
|
uint32_t min_height, max_height; |
|
} drmModeRes, *drmModeResPtr; |
|
</programlisting> |
|
|
|
</para> |
|
|
|
<para>The <structfield>count_fbs</structfield> and |
|
<structfield>fbs</structfield> fields indicate the number of currently |
|
allocated framebuffer objects (i.e., objects that can be attached to |
|
a given CRTC or sprite for display).</para> |
|
|
|
<para>The <structfield>count_crtcs</structfield> and |
|
<structfield>crtcs</structfield> fields list the available CRTCs in |
|
the configuration. A CRTC is simply an object that can scan out a |
|
framebuffer to a display sink, and contains mode timing and relative |
|
position information. CRTCs drive encoders, which are responsible for |
|
converting the pixel stream into a specific display protocol (e.g., |
|
MIPI or HDMI).</para> |
|
|
|
<para>The <structfield>count_connectors</structfield> and |
|
<structfield>connectors</structfield> fields list the available |
|
physical connectors on the system. Note that some of these may not be |
|
exposed from the chassis (e.g., LVDS or eDP). Connectors are attached |
|
to encoders and contain information about the attached display sink |
|
(e.g., width and height in mm, subpixel ordering, and various other |
|
properties).</para> |
|
|
|
<para>The <structfield>count_encoders</structfield> and |
|
<structfield>encoders</structfield> fields list the available encoders |
|
on the device. Each encoder may be associated with a CRTC, and may be |
|
used to drive a particular encoder.</para> |
|
|
|
<para>The <structfield>min*</structfield> and |
|
<structfield>max*</structfield> fields indicate the maximum size of a |
|
framebuffer for this device (i.e., the scanout size limit).</para> |
|
</refsect1> |
|
|
|
<refsect1> |
|
<title>Return Value</title> |
|
<para><function>drmModeGetResources</function> returns a drmModeRes |
|
structure pointer on success, <literal>NULL</literal> on failure. The |
|
returned structure must be freed with |
|
<citerefentry><refentrytitle>drmModeFreeResources</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para> |
|
</refsect1> |
|
|
|
<refsect1> |
|
<title>Reporting Bugs</title> |
|
<para>Bugs in this function should be reported to |
|
https://bugs.freedesktop.org/enter_bug.cgi?product=DRI&component=libdrm |
|
under the "DRI" product, component "libdrm"</para> |
|
</refsect1> |
|
|
|
<refsect1> |
|
<title>See Also</title> |
|
<para> |
|
<citerefentry><refentrytitle>drm</refentrytitle><manvolnum>7</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drm-kms</refentrytitle><manvolnum>7</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drmModeGetFB</refentrytitle><manvolnum>3</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drmModeAddFB</refentrytitle><manvolnum>3</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drmModeAddFB2</refentrytitle><manvolnum>3</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drmModeRmFB</refentrytitle><manvolnum>3</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drmModeDirtyFB</refentrytitle><manvolnum>3</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drmModeGetCrtc</refentrytitle><manvolnum>3</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drmModeSetCrtc</refentrytitle><manvolnum>3</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drmModeGetEncoder</refentrytitle><manvolnum>3</manvolnum></citerefentry>, |
|
<citerefentry><refentrytitle>drmModeGetConnector</refentrytitle><manvolnum>3</manvolnum></citerefentry> |
|
</para> |
|
</refsect1> |
|
</refentry>
|
|
|