---
name: "drm_universal_plane_init"
section: "9"
platform: "linux"
package: "linux-manual-3.16"
version: "3.16.56-1+deb8u1"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/drm_universal_plane_init"
---

# drm\_universal\_plane\_init(9)

Initialize a new universal plane object

## NAME

drm\_universal\_plane\_init - Initialize a new universal plane object

## SYNOPSIS

**int drm\_universal\_plane\_init(struct drm\_device \*** *dev***, struct drm\_plane \*** *plane***, unsigned long** *possible\_crtcs***, const struct drm\_plane\_funcs \*** *funcs***, const uint32\_t \*** *formats***, uint32\_t** *format\_count***, enum drm\_plane\_type** *type***);**

## ARGUMENTS

*dev*

DRM device

*plane*

plane object to init

*possible\_crtcs*

bitmask of possible CRTCs

*funcs*

callbacks for the new plane

*formats*

array of supported formats (**DRM\_FORMAT\_**\*)

*format\_count*

number of elements in *formats*

*type*

type of plane (overlay, primary, cursor)

## DESCRIPTION

Initializes a plane object of type *type*.

## RETURNS

Zero on success, error code on failure.

## AUTHORS

**Jesse Barnes** \<jesse.barnes@intel.com\>\
 Intel Corporation,

Initial version

**Laurent Pinchart** \<laurent.pinchart@ideasonboard.com\>\
 Ideas on board SPRL,

Driver internals

**Daniel Vetter** \<daniel.vetter@ffwll.ch\>\
 Intel Corporation,

Contributions all over the place

## COPYRIGHT
