Lines Matching +full:int +full:- +full:property
42 * struct drm_mode_config_funcs - basic driver provided mode setting functions
44 * Some global (i.e. not per-CRTC, connector, etc) mode setting functions that
59 * ie. when (@mode_cmd->flags & DRM_MODE_FB_MODIFIERS) == 0.
70 * driver-specific information (like the internal native buffer object
135 * - Checking that the modes, framebuffers, scaling and placement
138 * - Checking that any hidden shared resources are not oversubscribed.
143 * - Checking that virtualized resources exported to userspace are not
146 * example is dual-pipe operations (which generally should be hidden
153 * - Check that any transitional state is possible and that if
157 * - Check any other constraints the driver or hardware might have.
159 * - This callback also needs to correctly fill out the &drm_crtc_state
168 * - The driver also does not need to repeat basic input validation
180 * drm_atomic_helper_check(), or one of the exported sub-functions of
187 * - -EINVAL, if any of the above constraints are violated.
189 * - -EDEADLK, when returned from an attempt to acquire an additional
192 * - -ENOMEM, if allocating additional state sub-structures failed due
195 * - -EINTR, -EAGAIN or -ERESTARTSYS, if the IOCTL should be restarted.
201 int (*atomic_check)(struct drm_device *dev,
216 * drm_atomic_helper_commit(), or one of the exported sub-functions of
222 * errors resulting in -EIO. But even in that case the driver must
232 * buffer is a shared dma-buf. Nonblocking commits must not wait for
236 * completed. These events are per-CRTC and can be distinguished by the
255 * - -EBUSY, if a nonblocking updated is requested and there is
262 * - -ENOMEM, if the driver failed to allocate memory. Specifically
266 * - -ENOSPC, as a refinement of the more generic -ENOMEM to indicate
270 * - -EIO, if the hardware completely died.
272 * - -EINTR, -EAGAIN or -ERESTARTSYS, if the IOCTL should be restarted.
279 * return -EINVAL (any invalid requests should be caught in
280 * @atomic_check) or -EDEADLK (this function must not acquire
283 int (*atomic_commit)(struct drm_device *dev,
291 * &drm_atomic_state to be able to track their own driver-private global
308 * passed-in &drm_atomic_state. This hook is called when the caller
342 * struct drm_mode_config - Mode configuration control structure
354 * @prefer_shadow: hint to userspace to prefer shadow-fb rendering
357 * @helper_private: mid-layer private data
382 * anything from under its protection and move it into more well-scoped
404 * impossible to use driver-private &struct drm_modeset_lock. Users of
421 * connector, modes - just makes life easier to have only one.
429 * high-res DP MST screens.
436 int num_fb;
449 int num_connector;
483 int num_encoder;
500 int num_total_plane;
515 int num_crtc;
527 * List of property type objects linked with &drm_property.head. This is
542 int min_width, min_height;
543 int max_width, max_height;
556 * Mutex for blob property allocation and management, protects
564 * List of all the blob property objects linked with
572 * @edid_property: Default connector property to hold the EDID of the
577 * @dpms_property: Default connector property to control the
582 * @path_property: Default connector property to hold the DP MST path
587 * @tile_property: Default connector property to store the tile
593 * @link_status_property: Default connector property for link status
598 * @plane_type_property: Default plane property to differentiate
603 * @prop_src_x: Default atomic plane property for the plane source
608 * @prop_src_y: Default atomic plane property for the plane source
613 * @prop_src_w: Default atomic plane property for the plane source
618 * @prop_src_h: Default atomic plane property for the plane source
623 * @prop_crtc_x: Default atomic plane property for the plane destination
628 * @prop_crtc_y: Default atomic plane property for the plane destination
633 * @prop_crtc_w: Default atomic plane property for the plane destination
638 * @prop_crtc_h: Default atomic plane property for the plane destination
643 * @prop_fb_id: Default atomic plane property to specify the
659 * @prop_crtc_id: Default atomic plane property to specify the
664 * @prop_fb_damage_clips: Optional plane property to mark damaged
673 * @prop_active: Default atomic CRTC property to control the active
679 * @prop_mode_id: Default atomic CRTC property to set the mode for a
680 * CRTC. A 0 mode implies that the CRTC is entirely disabled - all
685 * @prop_vrr_enabled: Default atomic CRTC property to indicate
691 * @dvi_i_subconnector_property: Optional DVI-I property to
696 * @dvi_i_select_subconnector_property: Optional DVI-I property to
702 * @dp_subconnector_property: Optional DP property to differentiate
708 * @tv_subconnector_property: Optional TV property to differentiate
713 * @tv_select_subconnector_property: Optional TV property to select
718 * @tv_mode_property: Optional TV property to select
723 * @tv_left_margin_property: Optional TV property to set the left
728 * @tv_right_margin_property: Optional TV property to set the right
733 * @tv_top_margin_property: Optional TV property to set the right
738 * @tv_bottom_margin_property: Optional TV property to set the right
743 * @tv_brightness_property: Optional TV property to set the
748 * @tv_contrast_property: Optional TV property to set the
753 * @tv_flicker_reduction_property: Optional TV property to control the
758 * @tv_overscan_property: Optional TV property to control the overscan
763 * @tv_saturation_property: Optional TV property to set the
768 * @tv_hue_property: Optional TV property to set the hue.
773 * @scaling_mode_property: Optional connector property to control the
774 * upscaling, mostly used for built-in panels.
778 * @aspect_ratio_property: Optional connector property to control the
783 * @content_type_property: Optional connector property to control the
788 * @degamma_lut_property: Optional CRTC property to set the LUT used to
793 * @degamma_lut_size_property: Optional CRTC property for the size of
794 * the degamma LUT as supported by the driver (read-only).
798 * @ctm_property: Optional CRTC property to set the
804 * @gamma_lut_property: Optional CRTC property to set the LUT used to
810 * @gamma_lut_size_property: Optional CRTC property for the size of the
811 * gamma LUT as supported by the driver (read-only).
816 * @suggested_x_property: Optional connector property with a hint for
821 * @suggested_y_property: Optional connector property with a hint for
827 * @non_desktop_property: Optional connector property with a hint
834 * @panel_orientation_property: Optional connector property indicating
835 * how the lcd-panel is mounted inside the casing (e.g. normal or
836 * upside-down).
841 * @writeback_fb_id_property: Property for writeback connectors, storing
848 * @writeback_pixel_formats_property: Property for writeback connectors,
850 * engine (read-only).
855 * @writeback_out_fence_ptr_property: Property for writeback connectors,
864 * @hdr_output_metadata_property: Connector property containing hdr
871 * @content_protection_property: DRM ENUM property for content
877 * @hdcp_content_type_property: DRM ENUM property for type of
888 * Hint to framebuffer emulation to prefer shadow-fb rendering.
910 * opt-in.
939 * @modifiers_property: Plane property to list support modifier/format
959 int __must_check drmm_mode_config_init(struct drm_device *dev);
962 * drm_mode_config_init - DRM mode_configuration structure initialization
971 static inline int drm_mode_config_init(struct drm_device *dev) in drm_mode_config_init()