1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>drm_gem_cma_dumb_create</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Linux DRM Developer's Guide"><link rel="up" href="drm-memory-management.html#idp1123226860" title="CMA Helper Functions Reference"><link rel="prev" href="API-drm-gem-cma-dumb-create-internal.html" title="drm_gem_cma_dumb_create_internal"><link rel="next" href="API-drm-gem-cma-dumb-map-offset.html" title="drm_gem_cma_dumb_map_offset"></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">drm_gem_cma_dumb_create</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-drm-gem-cma-dumb-create-internal.html">Prev</a>&#160;</td><th width="60%" align="center">CMA Helper Functions Reference</th><td width="20%" align="right">&#160;<a accesskey="n" href="API-drm-gem-cma-dumb-map-offset.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-drm-gem-cma-dumb-create"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>drm_gem_cma_dumb_create &#8212; 
2     create a dumb buffer object
3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">drm_gem_cma_dumb_create </b>(</code></td><td>struct drm_file * <var class="pdparam">file_priv</var>, </td></tr><tr><td>&#160;</td><td>struct drm_device * <var class="pdparam">drm</var>, </td></tr><tr><td>&#160;</td><td>struct drm_mode_create_dumb * <var class="pdparam">args</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div></div><div class="refsect1"><a name="idp1123260636"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>file_priv</code></em></span></dt><dd><p>
4     DRM file-private structure to create the dumb buffer for
5    </p></dd><dt><span class="term"><em class="parameter"><code>drm</code></em></span></dt><dd><p>
6     DRM device
7    </p></dd><dt><span class="term"><em class="parameter"><code>args</code></em></span></dt><dd><p>
8     IOCTL data
9    </p></dd></dl></div></div><div class="refsect1"><a name="idp1123264140"></a><h2>Description</h2><p>
10   This function computes the pitch of the dumb buffer and rounds it up to an
11   integer number of bytes per pixel. Drivers for hardware that doesn't have
12   any additional restrictions on the pitch can directly use this function as
13   their -&gt;<code class="function">dumb_create</code> callback.
14   </p><p>
15
16   For hardware with additional restrictions, drivers can adjust the fields
17   set up by userspace and pass the IOCTL data along to the
18   <code class="function">drm_gem_cma_dumb_create_internal</code> function.
19</p></div><div class="refsect1"><a name="idp1123266156"></a><h2>Returns</h2><p>
20   0 on success or a negative error code on failure.
21</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-drm-gem-cma-dumb-create-internal.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="drm-memory-management.html#idp1123226860">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="API-drm-gem-cma-dumb-map-offset.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">drm_gem_cma_dumb_create_internal</span>&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;<span class="phrase">drm_gem_cma_dumb_map_offset</span></td></tr></table></div></body></html>
22