1<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>struct drm_mode_config_funcs</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Linux GPU Driver Developer's Guide"><link rel="up" href="drm-kms-init.html#id-1.3.4.8.10" title="KMS Data Structures"><link rel="prev" href="API-struct-drm-mode-set.html" title="struct drm_mode_set"><link rel="next" href="API-struct-drm-mode-config.html" title="struct drm_mode_config"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">struct drm_mode_config_funcs</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-struct-drm-mode-set.html">Prev</a> </td><th width="60%" align="center">KMS Data Structures</th><td width="20%" align="right"> <a accesskey="n" href="API-struct-drm-mode-config.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-struct-drm-mode-config-funcs"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>struct drm_mode_config_funcs — 2 basic driver provided mode setting functions 3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="programlisting"> 4struct drm_mode_config_funcs { 5 struct drm_framebuffer *(* fb_create) (struct drm_device *dev,struct drm_file *file_priv,struct drm_mode_fb_cmd2 *mode_cmd); 6 void (* output_poll_changed) (struct drm_device *dev); 7 int (* atomic_check) (struct drm_device *dev,struct drm_atomic_state *a); 8 int (* atomic_commit) (struct drm_device *dev,struct drm_atomic_state *a,bool async); 9 struct drm_atomic_state *(* atomic_state_alloc) (struct drm_device *dev); 10 void (* atomic_state_clear) (struct drm_atomic_state *state); 11 void (* atomic_state_free) (struct drm_atomic_state *state); 12}; </pre></div><div class="refsect1"><a name="id-1.3.4.8.10.17.5"></a><h2>Members</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term">fb_create</span></dt><dd><p> 13 create a new framebuffer object 14 </p></dd><dt><span class="term">output_poll_changed</span></dt><dd><p> 15 function to handle output configuration changes 16 </p></dd><dt><span class="term">atomic_check</span></dt><dd><p> 17 check whether a given atomic state update is possible 18 </p></dd><dt><span class="term">atomic_commit</span></dt><dd><p> 19 commit an atomic state update previously verified with 20 <code class="function">atomic_check</code> 21 </p></dd><dt><span class="term">atomic_state_alloc</span></dt><dd><p> 22 allocate a new atomic state 23 </p></dd><dt><span class="term">atomic_state_clear</span></dt><dd><p> 24 clear the atomic state 25 </p></dd><dt><span class="term">atomic_state_free</span></dt><dd><p> 26 free the atomic state 27 </p></dd></dl></div></div><div class="refsect1"><a name="id-1.3.4.8.10.17.6"></a><h2>Description</h2><p> 28 Some global (i.e. not per-CRTC, connector, etc) mode setting functions that 29 involve drivers. 30</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-struct-drm-mode-set.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="drm-kms-init.html#id-1.3.4.8.10">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="API-struct-drm-mode-config.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">struct drm_mode_set</span> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">struct drm_mode_config</span></td></tr></table></div></body></html> 31