struct drm_mode_config — Mode configuration control structure
struct drm_mode_config { struct mutex mutex; struct drm_modeset_lock connection_mutex; struct drm_modeset_acquire_ctx * acquire_ctx; struct mutex idr_mutex; struct idr crtc_idr; struct mutex fb_lock; int num_fb; struct list_head fb_list; int num_connector; struct list_head connector_list; int num_encoder; struct list_head encoder_list; int num_overlay_plane; int num_total_plane; struct list_head plane_list; int num_crtc; struct list_head crtc_list; struct list_head property_list; int min_width; int min_height; int max_width; int max_height; const struct drm_mode_config_funcs * funcs; resource_size_t fb_base; bool poll_enabled; bool poll_running; struct delayed_work output_poll_work; struct list_head property_blob_list; uint32_t preferred_depth; uint32_t prefer_shadow; bool async_page_flip; uint32_t cursor_width; uint32_t cursor_height; };
mutex protecting KMS related lists and structures
ww mutex protecting connector state and routing
global implicit acquire context used by atomic drivers for legacy ioctls
mutex for KMS ID allocation and management
main KMS ID tracking object
mutex to protect fb state and lists
number of fbs available
list of framebuffers available
number of connectors on this device
list of connector objects
number of encoders on this device
list of encoder objects
number of overlay planes on this device
number of universal (i.e. with primary/curso) planes on this device
list of plane objects
number of CRTCs on this device
list of CRTC objects
list of property objects
minimum pixel width on this device
minimum pixel height on this device
maximum pixel width on this device
maximum pixel height on this device
core driver provided mode setting functions
base address of the framebuffer
track polling support for this device
track polling status for this device
delayed work for polling in process context
list of all the blob property objects
preferred RBG pixel depth, used by fb helpers
hint to userspace to prefer shadow-fb rendering
does this device support async flips on the primary plane?
hint to userspace for max cursor width
hint to userspace for max cursor height