XenevaOS
Loading...
Searching...
No Matches
Public Attributes | List of all members
drm_encoder_funcs Struct Reference

#include <drm_encoder.h>

Public Attributes

void(* reset )(struct drm_encoder *encoder)
 
void(* destroy )(struct drm_encoder *encoder)
 
int(* late_register )(struct drm_encoder *encoder)
 
void(* early_unregister )(struct drm_encoder *encoder)
 
void(* debugfs_init )(struct drm_encoder *encoder, struct dentry *root)
 

Detailed Description

struct drm_encoder_funcs - encoder controls

Encoders sit between CRTCs and connectors.

Member Data Documentation

◆ debugfs_init

void(* drm_encoder_funcs::debugfs_init) (struct drm_encoder *encoder, struct dentry *root)

@debugfs_init:

Allows encoders to create encoder-specific debugfs files.

◆ destroy

void(* drm_encoder_funcs::destroy) (struct drm_encoder *encoder)

@destroy:

Clean up encoder resources. This is only called at driver unload time through drm_mode_config_cleanup() since an encoder cannot be hotplugged in DRM.

◆ early_unregister

void(* drm_encoder_funcs::early_unregister) (struct drm_encoder *encoder)

@early_unregister:

This optional hook should be used to unregister the additional userspace interfaces attached to the encoder from @late_register. It is called from drm_dev_unregister(), early in the driver unload sequence to disable userspace access before data structures are torndown.

◆ late_register

int(* drm_encoder_funcs::late_register) (struct drm_encoder *encoder)

@late_register:

This optional hook can be used to register additional userspace interfaces attached to the encoder. It is called late in the driver load sequence from drm_dev_register(). Everything added from this callback should be unregistered in the early_unregister callback.

Returns:

0 on success, or a negative error code on failure.

◆ reset

void(* drm_encoder_funcs::reset) (struct drm_encoder *encoder)

@reset:

Reset encoder hardware and software state to off. This function isn't called by the core directly, only through drm_mode_config_reset(). It's not a helper hook only for historical reasons.


The documentation for this struct was generated from the following file: