Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
drm_crtc.c File Reference
#include <linux/list.h>
#include <linux/slab.h>
#include <linux/export.h>
#include <drm/drmP.h>
#include <drm/drm_crtc.h>
#include <drm/drm_edid.h>
#include <drm/drm_fourcc.h>

Go to the source code of this file.

Macros

#define DRM_ENUM_NAME_FN(fnname, list)
 

Functions

 DRM_ENUM_NAME_FN (drm_get_dvi_i_subconnector_name, drm_dvi_i_subconnector_enum_list)
 
 DRM_ENUM_NAME_FN (drm_get_tv_subconnector_name, drm_tv_subconnector_enum_list)
 
 DRM_ENUM_NAME_FN (drm_get_dirty_info_name, drm_dirty_info_enum_list)
 
chardrm_get_encoder_name (struct drm_encoder *encoder)
 
 EXPORT_SYMBOL (drm_get_encoder_name)
 
chardrm_get_connector_name (struct drm_connector *connector)
 
 EXPORT_SYMBOL (drm_get_connector_name)
 
chardrm_get_connector_status_name (enum drm_connector_status status)
 
struct drm_mode_objectdrm_mode_object_find (struct drm_device *dev, uint32_t id, uint32_t type)
 
 EXPORT_SYMBOL (drm_mode_object_find)
 
int drm_framebuffer_init (struct drm_device *dev, struct drm_framebuffer *fb, const struct drm_framebuffer_funcs *funcs)
 
 EXPORT_SYMBOL (drm_framebuffer_init)
 
void drm_framebuffer_unreference (struct drm_framebuffer *fb)
 
 EXPORT_SYMBOL (drm_framebuffer_unreference)
 
void drm_framebuffer_reference (struct drm_framebuffer *fb)
 
 EXPORT_SYMBOL (drm_framebuffer_reference)
 
void drm_framebuffer_cleanup (struct drm_framebuffer *fb)
 
 EXPORT_SYMBOL (drm_framebuffer_cleanup)
 
void drm_framebuffer_remove (struct drm_framebuffer *fb)
 
 EXPORT_SYMBOL (drm_framebuffer_remove)
 
int drm_crtc_init (struct drm_device *dev, struct drm_crtc *crtc, const struct drm_crtc_funcs *funcs)
 
 EXPORT_SYMBOL (drm_crtc_init)
 
void drm_crtc_cleanup (struct drm_crtc *crtc)
 
 EXPORT_SYMBOL (drm_crtc_cleanup)
 
void drm_mode_probed_add (struct drm_connector *connector, struct drm_display_mode *mode)
 
 EXPORT_SYMBOL (drm_mode_probed_add)
 
void drm_mode_remove (struct drm_connector *connector, struct drm_display_mode *mode)
 
 EXPORT_SYMBOL (drm_mode_remove)
 
: user visible name of the connector

drm_connector_init - Init a preallocated connector : DRM device : the connector to init : callbacks for this connector

LOCKING: Takes mode config lock.

Initialises a preallocated connector. Connectors should be subclassed as part of driver connector objects.

RETURNS: Zero on success, error code on failure.

int drm_connector_init (struct drm_device *dev, struct drm_connector *connector, const struct drm_connector_funcs *funcs, int connector_type)
 
 EXPORT_SYMBOL (drm_connector_init)
 
void drm_connector_cleanup (struct drm_connector *connector)
 
 EXPORT_SYMBOL (drm_connector_cleanup)
 
void drm_connector_unplug_all (struct drm_device *dev)
 
 EXPORT_SYMBOL (drm_connector_unplug_all)
 
int drm_encoder_init (struct drm_device *dev, struct drm_encoder *encoder, const struct drm_encoder_funcs *funcs, int encoder_type)
 
 EXPORT_SYMBOL (drm_encoder_init)
 
void drm_encoder_cleanup (struct drm_encoder *encoder)
 
 EXPORT_SYMBOL (drm_encoder_cleanup)
 
int drm_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, bool priv)
 
 EXPORT_SYMBOL (drm_plane_init)
 
void drm_plane_cleanup (struct drm_plane *plane)
 
 EXPORT_SYMBOL (drm_plane_cleanup)
 
struct drm_display_modedrm_mode_create (struct drm_device *dev)
 
 EXPORT_SYMBOL (drm_mode_create)
 
void drm_mode_destroy (struct drm_device *dev, struct drm_display_mode *mode)
 
 EXPORT_SYMBOL (drm_mode_destroy)
 
int drm_mode_create_dvi_i_properties (struct drm_device *dev)
 
 EXPORT_SYMBOL (drm_mode_create_dvi_i_properties)
 
int drm_mode_create_tv_properties (struct drm_device *dev, int num_modes, char *modes[])
 
 EXPORT_SYMBOL (drm_mode_create_tv_properties)
 
int drm_mode_create_scaling_mode_property (struct drm_device *dev)
 
 EXPORT_SYMBOL (drm_mode_create_scaling_mode_property)
 
int drm_mode_create_dithering_property (struct drm_device *dev)
 
 EXPORT_SYMBOL (drm_mode_create_dithering_property)
 
int drm_mode_create_dirty_info_property (struct drm_device *dev)
 
 EXPORT_SYMBOL (drm_mode_create_dirty_info_property)
 
void drm_mode_config_init (struct drm_device *dev)
 
 EXPORT_SYMBOL (drm_mode_config_init)
 
int drm_mode_group_init (struct drm_device *dev, struct drm_mode_group *group)
 
int drm_mode_group_init_legacy_group (struct drm_device *dev, struct drm_mode_group *group)
 
 EXPORT_SYMBOL (drm_mode_group_init_legacy_group)
 
void drm_mode_config_cleanup (struct drm_device *dev)
 
 EXPORT_SYMBOL (drm_mode_config_cleanup)
 
int drm_mode_getresources (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_getcrtc (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_getconnector (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_getencoder (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_getplane_res (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_getplane (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_setplane (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_setcrtc (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_cursor_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
uint32_t drm_mode_legacy_fb_format (uint32_t bpp, uint32_t depth)
 
 EXPORT_SYMBOL (drm_mode_legacy_fb_format)
 
int drm_mode_addfb (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_addfb2 (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_rmfb (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_getfb (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_dirtyfb_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
void drm_fb_release (struct drm_file *priv)
 
int drm_mode_attachmode_crtc (struct drm_device *dev, struct drm_crtc *crtc, const struct drm_display_mode *mode)
 
 EXPORT_SYMBOL (drm_mode_attachmode_crtc)
 
int drm_mode_detachmode_crtc (struct drm_device *dev, struct drm_display_mode *mode)
 
 EXPORT_SYMBOL (drm_mode_detachmode_crtc)
 
int drm_mode_attachmode_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_detachmode_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
struct drm_propertydrm_property_create (struct drm_device *dev, int flags, const char *name, int num_values)
 
 EXPORT_SYMBOL (drm_property_create)
 
struct drm_propertydrm_property_create_enum (struct drm_device *dev, int flags, const char *name, const struct drm_prop_enum_list *props, int num_values)
 
 EXPORT_SYMBOL (drm_property_create_enum)
 
struct drm_propertydrm_property_create_bitmask (struct drm_device *dev, int flags, const char *name, const struct drm_prop_enum_list *props, int num_values)
 
 EXPORT_SYMBOL (drm_property_create_bitmask)
 
struct drm_propertydrm_property_create_range (struct drm_device *dev, int flags, const char *name, uint64_t min, uint64_t max)
 
 EXPORT_SYMBOL (drm_property_create_range)
 
int drm_property_add_enum (struct drm_property *property, int index, uint64_t value, const char *name)
 
 EXPORT_SYMBOL (drm_property_add_enum)
 
void drm_property_destroy (struct drm_device *dev, struct drm_property *property)
 
 EXPORT_SYMBOL (drm_property_destroy)
 
void drm_connector_attach_property (struct drm_connector *connector, struct drm_property *property, uint64_t init_val)
 
 EXPORT_SYMBOL (drm_connector_attach_property)
 
int drm_connector_property_set_value (struct drm_connector *connector, struct drm_property *property, uint64_t value)
 
 EXPORT_SYMBOL (drm_connector_property_set_value)
 
int drm_connector_property_get_value (struct drm_connector *connector, struct drm_property *property, uint64_t *val)
 
 EXPORT_SYMBOL (drm_connector_property_get_value)
 
void drm_object_attach_property (struct drm_mode_object *obj, struct drm_property *property, uint64_t init_val)
 
 EXPORT_SYMBOL (drm_object_attach_property)
 
int drm_object_property_set_value (struct drm_mode_object *obj, struct drm_property *property, uint64_t val)
 
 EXPORT_SYMBOL (drm_object_property_set_value)
 
int drm_object_property_get_value (struct drm_mode_object *obj, struct drm_property *property, uint64_t *val)
 
 EXPORT_SYMBOL (drm_object_property_get_value)
 
int drm_mode_getproperty_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_getblob_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_connector_update_edid_property (struct drm_connector *connector, struct edid *edid)
 
 EXPORT_SYMBOL (drm_mode_connector_update_edid_property)
 
int drm_mode_connector_property_set_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_obj_get_properties_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_obj_set_property_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_connector_attach_encoder (struct drm_connector *connector, struct drm_encoder *encoder)
 
 EXPORT_SYMBOL (drm_mode_connector_attach_encoder)
 
void drm_mode_connector_detach_encoder (struct drm_connector *connector, struct drm_encoder *encoder)
 
 EXPORT_SYMBOL (drm_mode_connector_detach_encoder)
 
int drm_mode_crtc_set_gamma_size (struct drm_crtc *crtc, int gamma_size)
 
 EXPORT_SYMBOL (drm_mode_crtc_set_gamma_size)
 
int drm_mode_gamma_set_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_gamma_get_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_page_flip_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
void drm_mode_config_reset (struct drm_device *dev)
 
 EXPORT_SYMBOL (drm_mode_config_reset)
 
int drm_mode_create_dumb_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_mmap_dumb_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
int drm_mode_destroy_dumb_ioctl (struct drm_device *dev, void *data, struct drm_file *file_priv)
 
void drm_fb_get_bpp_depth (uint32_t format, unsigned int *depth, int *bpp)
 
 EXPORT_SYMBOL (drm_fb_get_bpp_depth)
 
int drm_format_num_planes (uint32_t format)
 
 EXPORT_SYMBOL (drm_format_num_planes)
 
int drm_format_plane_cpp (uint32_t format, int plane)
 
 EXPORT_SYMBOL (drm_format_plane_cpp)
 
int drm_format_horz_chroma_subsampling (uint32_t format)
 
 EXPORT_SYMBOL (drm_format_horz_chroma_subsampling)
 
int drm_format_vert_chroma_subsampling (uint32_t format)
 
 EXPORT_SYMBOL (drm_format_vert_chroma_subsampling)
 

Macro Definition Documentation

#define DRM_ENUM_NAME_FN (   fnname,
  list 
)
Value:
char *fnname(int val) \
{ \
int i; \
for (i = 0; i < ARRAY_SIZE(list); i++) { \
if (list[i].type == val) \
return list[i].name; \
} \
return "(unknown)"; \
}

Definition at line 41 of file drm_crtc.c.

Function Documentation

void drm_connector_attach_property ( struct drm_connector connector,
struct drm_property property,
uint64_t  init_val 
)

Definition at line 2919 of file drm_crtc.c.

void drm_connector_cleanup ( struct drm_connector connector)

drm_connector_cleanup - cleans up an initialised connector : connector to cleanup

LOCKING: Takes mode config lock.

Cleans up the connector but doesn't free the object.

Definition at line 586 of file drm_crtc.c.

int drm_connector_init ( struct drm_device dev,
struct drm_connector connector,
const struct drm_connector_funcs funcs,
int  connector_type 
)

Definition at line 535 of file drm_crtc.c.

int drm_connector_property_get_value ( struct drm_connector connector,
struct drm_property property,
uint64_t val 
)

Definition at line 2933 of file drm_crtc.c.

int drm_connector_property_set_value ( struct drm_connector connector,
struct drm_property property,
uint64_t  value 
)

Definition at line 2926 of file drm_crtc.c.

void drm_connector_unplug_all ( struct drm_device dev)

Definition at line 608 of file drm_crtc.c.

void drm_crtc_cleanup ( struct drm_crtc crtc)

drm_crtc_cleanup - Cleans up the core crtc usage. : CRTC to cleanup

LOCKING: Caller must hold mode config lock.

Cleanup . Removes from drm modesetting space does NOT free object, caller does that.

Definition at line 469 of file drm_crtc.c.

int drm_crtc_init ( struct drm_device dev,
struct drm_crtc crtc,
const struct drm_crtc_funcs funcs 
)

drm_crtc_init - Initialise a new CRTC object : DRM device : CRTC object to init : callbacks for the new CRTC

LOCKING: Takes mode_config lock.

Inits a new object created as base part of an driver crtc object.

RETURNS: Zero on success, error code on failure.

Definition at line 432 of file drm_crtc.c.

void drm_encoder_cleanup ( struct drm_encoder encoder)

Definition at line 646 of file drm_crtc.c.

int drm_encoder_init ( struct drm_device dev,
struct drm_encoder encoder,
const struct drm_encoder_funcs funcs,
int  encoder_type 
)

Definition at line 619 of file drm_crtc.c.

DRM_ENUM_NAME_FN ( drm_get_dvi_i_subconnector_name  ,
drm_dvi_i_subconnector_enum_list   
)

Definition at line 101 of file drm_crtc.c.

DRM_ENUM_NAME_FN ( drm_get_tv_subconnector_name  ,
drm_tv_subconnector_enum_list   
)

Definition at line 124 of file drm_crtc.c.

DRM_ENUM_NAME_FN ( drm_get_dirty_info_name  ,
drm_dirty_info_enum_list   
)

Definition at line 133 of file drm_crtc.c.

void drm_fb_get_bpp_depth ( uint32_t  format,
unsigned int depth,
int bpp 
)

Definition at line 3702 of file drm_crtc.c.

void drm_fb_release ( struct drm_file *  priv)

drm_fb_release - remove and free the FBs on this file : file * from the ioctl

LOCKING: Takes mode config lock.

Destroy all the FBs associated with .

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 2550 of file drm_crtc.c.

int drm_format_horz_chroma_subsampling ( uint32_t  format)

drm_format_horz_chroma_subsampling - get the horizontal chroma subsampling factor : pixel format (DRM_FORMAT_*)

RETURNS: The horizontal chroma subsampling factor for the specified pixel format.

Definition at line 3855 of file drm_crtc.c.

int drm_format_num_planes ( uint32_t  format)

drm_format_num_planes - get the number of planes for format : pixel format (DRM_FORMAT_*)

RETURNS: The number of planes used by the specified pixel format.

Definition at line 3773 of file drm_crtc.c.

int drm_format_plane_cpp ( uint32_t  format,
int  plane 
)

drm_format_plane_cpp - determine the bytes per pixel value : pixel format (DRM_FORMAT_*) : plane index

RETURNS: The bytes per pixel value for the specified plane.

Definition at line 3808 of file drm_crtc.c.

int drm_format_vert_chroma_subsampling ( uint32_t  format)

drm_format_vert_chroma_subsampling - get the vertical chroma subsampling factor : pixel format (DRM_FORMAT_*)

RETURNS: The vertical chroma subsampling factor for the specified pixel format.

Definition at line 3890 of file drm_crtc.c.

void drm_framebuffer_cleanup ( struct drm_framebuffer fb)

drm_framebuffer_cleanup - remove a framebuffer object : framebuffer to remove

LOCKING: Caller must hold mode config lock.

Scans all the CRTCs in 's mode_config. If they're using , removes it, setting it to NULL.

Definition at line 353 of file drm_crtc.c.

int drm_framebuffer_init ( struct drm_device dev,
struct drm_framebuffer fb,
const struct drm_framebuffer_funcs funcs 
)

drm_framebuffer_init - initialize a framebuffer : DRM device

LOCKING: Caller must hold mode config lock.

Allocates an ID for the framebuffer's parent mode object, sets its mode functions & device file and adds it to the master fd list.

RETURNS: Zero on success, error code on failure.

Definition at line 291 of file drm_crtc.c.

void drm_framebuffer_reference ( struct drm_framebuffer fb)

drm_framebuffer_reference - incr the fb refcnt

Definition at line 336 of file drm_crtc.c.

void drm_framebuffer_remove ( struct drm_framebuffer fb)

drm_framebuffer_remove - remove and unreference a framebuffer object : framebuffer to remove

LOCKING: Caller must hold mode config lock.

Scans all the CRTCs and planes in 's mode_config. If they're using , removes it, setting it to NULL.

Definition at line 379 of file drm_crtc.c.

void drm_framebuffer_unreference ( struct drm_framebuffer fb)

drm_framebuffer_unreference - unref a framebuffer

LOCKING: Caller must hold mode config lock.

Definition at line 324 of file drm_crtc.c.

char* drm_get_connector_name ( struct drm_connector connector)

Definition at line 184 of file drm_crtc.c.

char* drm_get_connector_status_name ( enum drm_connector_status  status)

Definition at line 195 of file drm_crtc.c.

char* drm_get_encoder_name ( struct drm_encoder encoder)

Definition at line 173 of file drm_crtc.c.

int drm_mode_addfb ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_addfb - add an FB to the graphics configuration : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

LOCKING: Takes mode config lock.

Add a new FB to the specified CRTC, given a user request.

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 2139 of file drm_crtc.c.

int drm_mode_addfb2 ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_addfb2 - add an FB to the graphics configuration : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

LOCKING: Takes mode config lock.

Add a new FB to the specified CRTC, given a user request with format.

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 2315 of file drm_crtc.c.

int drm_mode_attachmode_crtc ( struct drm_device dev,
struct drm_crtc crtc,
const struct drm_display_mode mode 
)

Definition at line 2577 of file drm_crtc.c.

int drm_mode_attachmode_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_fb_attachmode - Attach a user mode to an connector : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

This attaches a user specified mode to an connector. Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 2662 of file drm_crtc.c.

void drm_mode_config_cleanup ( struct drm_device dev)

drm_mode_config_cleanup - free up DRM mode_config info : DRM device

LOCKING: Caller must hold mode config lock.

Free up all the connectors and CRTCs associated with this DRM device, then free up the framebuffers and associated buffer objects.

FIXME: cleanup any dangling user buffer objects too

Definition at line 1069 of file drm_crtc.c.

void drm_mode_config_init ( struct drm_device dev)

drm_mode_config_init - initialize DRM mode_configuration structure : DRM device

LOCKING: None, should happen single threaded at init time.

Initialize 's mode_config structure, used for tracking the graphics configuration of .

Definition at line 988 of file drm_crtc.c.

void drm_mode_config_reset ( struct drm_device dev)

Definition at line 3645 of file drm_crtc.c.

int drm_mode_connector_attach_encoder ( struct drm_connector connector,
struct drm_encoder encoder 
)

Definition at line 3393 of file drm_crtc.c.

void drm_mode_connector_detach_encoder ( struct drm_connector connector,
struct drm_encoder encoder 
)

Definition at line 3408 of file drm_crtc.c.

int drm_mode_connector_property_set_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3216 of file drm_crtc.c.

int drm_mode_connector_update_edid_property ( struct drm_connector connector,
struct edid edid 
)

Definition at line 3164 of file drm_crtc.c.

struct drm_display_mode* drm_mode_create ( struct drm_device dev)
read

drm_mode_create - create a new display mode : DRM device

LOCKING: Caller must hold DRM mode_config lock.

Create a new drm_display_mode, give it an ID, and return it.

RETURNS: Pointer to new mode on success, NULL on error.

Definition at line 733 of file drm_crtc.c.

int drm_mode_create_dirty_info_property ( struct drm_device dev)

drm_mode_create_dirty_property - create dirty property : DRM device

Called by a driver the first time it's needed, must be attached to desired connectors.

Definition at line 960 of file drm_crtc.c.

int drm_mode_create_dithering_property ( struct drm_device dev)

drm_mode_create_dithering_property - create dithering property : DRM device

Called by a driver the first time it's needed, must be attached to desired connectors.

Definition at line 936 of file drm_crtc.c.

int drm_mode_create_dumb_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3665 of file drm_crtc.c.

int drm_mode_create_dvi_i_properties ( struct drm_device dev)

drm_mode_create_dvi_i_properties - create DVI-I specific connector properties : DRM device

Called by a driver the first time a DVI-I connector is made.

Definition at line 798 of file drm_crtc.c.

int drm_mode_create_scaling_mode_property ( struct drm_device dev)

drm_mode_create_scaling_mode_property - create scaling mode property : DRM device

Called by a driver the first time it's needed, must be attached to desired connectors.

Definition at line 911 of file drm_crtc.c.

int drm_mode_create_tv_properties ( struct drm_device dev,
int  num_modes,
char modes[] 
)

drm_create_tv_properties - create TV specific connector properties : DRM device : number of different TV formats (modes) supported : array of pointers to strings containing name of each format

Called by a driver's TV initialization routine, this function creates the TV specific connector properties for a given device. Caller is responsible for allocating a list of format names and passing them to this routine.

Definition at line 834 of file drm_crtc.c.

int drm_mode_crtc_set_gamma_size ( struct drm_crtc crtc,
int  gamma_size 
)

Definition at line 3423 of file drm_crtc.c.

int drm_mode_cursor_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 2040 of file drm_crtc.c.

void drm_mode_destroy ( struct drm_device dev,
struct drm_display_mode mode 
)

drm_mode_destroy - remove a mode : DRM device : mode to remove

LOCKING: Caller must hold mode config lock.

Free 's unique identifier, then free it.

Definition at line 760 of file drm_crtc.c.

int drm_mode_destroy_dumb_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3687 of file drm_crtc.c.

int drm_mode_detachmode_crtc ( struct drm_device dev,
struct drm_display_mode mode 
)

Definition at line 2638 of file drm_crtc.c.

int drm_mode_detachmode_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_fb_detachmode - Detach a user specified mode from an connector : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 2716 of file drm_crtc.c.

int drm_mode_dirtyfb_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 2462 of file drm_crtc.c.

int drm_mode_gamma_get_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3497 of file drm_crtc.c.

int drm_mode_gamma_set_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3438 of file drm_crtc.c.

int drm_mode_getblob_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3130 of file drm_crtc.c.

int drm_mode_getconnector ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_getconnector - get connector configuration : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

LOCKING: Takes mode config lock.

Construct a connector configuration structure to return to the user.

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 1455 of file drm_crtc.c.

int drm_mode_getcrtc ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_getcrtc - get CRTC configuration : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

LOCKING: Takes mode config lock.

Construct a CRTC configuration structure to return to the user.

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 1395 of file drm_crtc.c.

int drm_mode_getencoder ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 1582 of file drm_crtc.c.

int drm_mode_getfb ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_getfb - get FB info : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

LOCKING: Takes mode config lock.

Lookup the FB given its ID and return info about it.

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 2431 of file drm_crtc.c.

int drm_mode_getplane ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_getplane - get plane info : DRM device : ioctl data : DRM file info

LOCKING: Takes mode config lock.

Return plane info, including formats supported, gamma size, any current fb, etc.

Definition at line 1677 of file drm_crtc.c.

int drm_mode_getplane_res ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_getplane_res - get plane info : DRM device : ioctl data : DRM file info

LOCKING: Takes mode config lock.

Return an plane count and set of IDs.

Definition at line 1627 of file drm_crtc.c.

int drm_mode_getproperty_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 2992 of file drm_crtc.c.

int drm_mode_getresources ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_getresources - get graphics configuration : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

LOCKING: Takes mode config lock.

Construct a set of configuration description structures and return them to the user, including CRTC, connector and framebuffer configuration.

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 1208 of file drm_crtc.c.

int drm_mode_group_init ( struct drm_device dev,
struct drm_mode_group group 
)

Definition at line 1013 of file drm_crtc.c.

int drm_mode_group_init_legacy_group ( struct drm_device dev,
struct drm_mode_group group 
)

Definition at line 1031 of file drm_crtc.c.

uint32_t drm_mode_legacy_fb_format ( uint32_t  bpp,
uint32_t  depth 
)

Definition at line 2087 of file drm_crtc.c.

int drm_mode_mmap_dumb_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3675 of file drm_crtc.c.

int drm_mode_obj_get_properties_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3282 of file drm_crtc.c.

int drm_mode_obj_set_property_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3338 of file drm_crtc.c.

struct drm_mode_object* drm_mode_object_find ( struct drm_device dev,
uint32_t  id,
uint32_t  type 
)
read

Definition at line 263 of file drm_crtc.c.

int drm_mode_page_flip_ioctl ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

Definition at line 3547 of file drm_crtc.c.

void drm_mode_probed_add ( struct drm_connector connector,
struct drm_display_mode mode 
)

drm_mode_probed_add - add a mode to a connector's probed mode list : connector the new mode : mode data

LOCKING: Caller must hold mode config lock.

Add to 's mode list for later use.

Definition at line 494 of file drm_crtc.c.

void drm_mode_remove ( struct drm_connector connector,
struct drm_display_mode mode 
)

drm_mode_remove - remove and free a mode : connector list to modify : mode to remove

LOCKING: Caller must hold mode config lock.

Remove from 's mode list, then free it.

Definition at line 511 of file drm_crtc.c.

int drm_mode_rmfb ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_rmfb - remove an FB from the configuration : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

LOCKING: Takes mode config lock.

Remove the FB specified by the user.

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 2376 of file drm_crtc.c.

int drm_mode_setcrtc ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_setcrtc - set CRTC configuration : inode from the ioctl : file * from the ioctl : cmd from ioctl

  • : arg from ioctl

LOCKING: Takes mode config lock.

Build a new CRTC configuration based on user request.

Called by the user via ioctl.

RETURNS: Zero on success, errno on failure.

Definition at line 1881 of file drm_crtc.c.

int drm_mode_setplane ( struct drm_device dev,
void data,
struct drm_file *  file_priv 
)

drm_mode_setplane - set up or tear down an plane : DRM device : ioctl data* : DRM file info

LOCKING: Takes mode config lock.

Set plane info, including placement, fb, scaling, and other factors. Or pass a NULL fb to disable.

Definition at line 1745 of file drm_crtc.c.

void drm_object_attach_property ( struct drm_mode_object obj,
struct drm_property property,
uint64_t  init_val 
)

Definition at line 2940 of file drm_crtc.c.

int drm_object_property_get_value ( struct drm_mode_object obj,
struct drm_property property,
uint64_t val 
)

Definition at line 2976 of file drm_crtc.c.

int drm_object_property_set_value ( struct drm_mode_object obj,
struct drm_property property,
uint64_t  val 
)

Definition at line 2960 of file drm_crtc.c.

void drm_plane_cleanup ( struct drm_plane plane)

Definition at line 705 of file drm_crtc.c.

int drm_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,
bool  priv 
)

Definition at line 657 of file drm_crtc.c.

int drm_property_add_enum ( struct drm_property property,
int  index,
uint64_t  value,
const char name 
)

Definition at line 2863 of file drm_crtc.c.

struct drm_property* drm_property_create ( struct drm_device dev,
int  flags,
const char name,
int  num_values 
)
read

Definition at line 2750 of file drm_crtc.c.

struct drm_property* drm_property_create_bitmask ( struct drm_device dev,
int  flags,
const char name,
const struct drm_prop_enum_list props,
int  num_values 
)
read

Definition at line 2816 of file drm_crtc.c.

struct drm_property* drm_property_create_enum ( struct drm_device dev,
int  flags,
const char name,
const struct drm_prop_enum_list props,
int  num_values 
)
read

Definition at line 2788 of file drm_crtc.c.

struct drm_property* drm_property_create_range ( struct drm_device dev,
int  flags,
const char name,
uint64_t  min,
uint64_t  max 
)
read

Definition at line 2844 of file drm_crtc.c.

void drm_property_destroy ( struct drm_device dev,
struct drm_property property 
)

Definition at line 2902 of file drm_crtc.c.

EXPORT_SYMBOL ( drm_get_encoder_name  )
EXPORT_SYMBOL ( drm_get_connector_name  )
EXPORT_SYMBOL ( drm_mode_object_find  )
EXPORT_SYMBOL ( drm_framebuffer_init  )
EXPORT_SYMBOL ( drm_framebuffer_unreference  )
EXPORT_SYMBOL ( drm_framebuffer_reference  )
EXPORT_SYMBOL ( drm_framebuffer_cleanup  )
EXPORT_SYMBOL ( drm_framebuffer_remove  )
EXPORT_SYMBOL ( drm_crtc_init  )
EXPORT_SYMBOL ( drm_crtc_cleanup  )
EXPORT_SYMBOL ( drm_mode_probed_add  )
EXPORT_SYMBOL ( drm_mode_remove  )
EXPORT_SYMBOL ( drm_connector_init  )
EXPORT_SYMBOL ( drm_connector_cleanup  )
EXPORT_SYMBOL ( drm_connector_unplug_all  )
EXPORT_SYMBOL ( drm_encoder_init  )
EXPORT_SYMBOL ( drm_encoder_cleanup  )
EXPORT_SYMBOL ( drm_plane_init  )
EXPORT_SYMBOL ( drm_plane_cleanup  )
EXPORT_SYMBOL ( drm_mode_create  )
EXPORT_SYMBOL ( drm_mode_destroy  )
EXPORT_SYMBOL ( drm_mode_create_dvi_i_properties  )
EXPORT_SYMBOL ( drm_mode_create_tv_properties  )
EXPORT_SYMBOL ( drm_mode_config_init  )
EXPORT_SYMBOL ( drm_mode_group_init_legacy_group  )
EXPORT_SYMBOL ( drm_mode_config_cleanup  )
EXPORT_SYMBOL ( drm_mode_legacy_fb_format  )
EXPORT_SYMBOL ( drm_mode_attachmode_crtc  )
EXPORT_SYMBOL ( drm_mode_detachmode_crtc  )
EXPORT_SYMBOL ( drm_property_create  )
EXPORT_SYMBOL ( drm_property_create_enum  )
EXPORT_SYMBOL ( drm_property_create_bitmask  )
EXPORT_SYMBOL ( drm_property_create_range  )
EXPORT_SYMBOL ( drm_property_add_enum  )
EXPORT_SYMBOL ( drm_property_destroy  )
EXPORT_SYMBOL ( drm_connector_attach_property  )
EXPORT_SYMBOL ( drm_connector_property_set_value  )
EXPORT_SYMBOL ( drm_connector_property_get_value  )
EXPORT_SYMBOL ( drm_object_attach_property  )
EXPORT_SYMBOL ( drm_object_property_set_value  )
EXPORT_SYMBOL ( drm_object_property_get_value  )
EXPORT_SYMBOL ( drm_mode_connector_attach_encoder  )
EXPORT_SYMBOL ( drm_mode_connector_detach_encoder  )
EXPORT_SYMBOL ( drm_mode_crtc_set_gamma_size  )
EXPORT_SYMBOL ( drm_mode_config_reset  )
EXPORT_SYMBOL ( drm_fb_get_bpp_depth  )
EXPORT_SYMBOL ( drm_format_num_planes  )
EXPORT_SYMBOL ( drm_format_plane_cpp  )