44,6 → 44,13 |
ENTER_ATOMIC_MODE_SET, |
}; |
|
/** |
* drm_crtc_helper_funcs - helper operations for CRTCs |
* @mode_fixup: try to fixup proposed mode for this connector |
* @mode_set: set this mode |
* |
* The helper operations are called by the mid-layer CRTC helper. |
*/ |
struct drm_crtc_helper_funcs { |
/* |
* Control power levels on the CRTC. If the mode passed in is |
55,7 → 62,7 |
|
/* Provider can fixup or change mode timings before modeset occurs */ |
bool (*mode_fixup)(struct drm_crtc *crtc, |
struct drm_display_mode *mode, |
const struct drm_display_mode *mode, |
struct drm_display_mode *adjusted_mode); |
/* Actually set the mode */ |
int (*mode_set)(struct drm_crtc *crtc, struct drm_display_mode *mode, |
76,6 → 83,13 |
void (*disable)(struct drm_crtc *crtc); |
}; |
|
/** |
* drm_encoder_helper_funcs - helper operations for encoders |
* @mode_fixup: try to fixup proposed mode for this connector |
* @mode_set: set this mode |
* |
* The helper operations are called by the mid-layer CRTC helper. |
*/ |
struct drm_encoder_helper_funcs { |
void (*dpms)(struct drm_encoder *encoder, int mode); |
void (*save)(struct drm_encoder *encoder); |
82,7 → 96,7 |
void (*restore)(struct drm_encoder *encoder); |
|
bool (*mode_fixup)(struct drm_encoder *encoder, |
struct drm_display_mode *mode, |
const struct drm_display_mode *mode, |
struct drm_display_mode *adjusted_mode); |
void (*prepare)(struct drm_encoder *encoder); |
void (*commit)(struct drm_encoder *encoder); |
97,6 → 111,13 |
void (*disable)(struct drm_encoder *encoder); |
}; |
|
/** |
* drm_connector_helper_funcs - helper operations for connectors |
* @get_modes: get mode list for this connector |
* @mode_valid: is this mode valid on the given connector? |
* |
* The helper operations are called by the mid-layer CRTC helper. |
*/ |
struct drm_connector_helper_funcs { |
int (*get_modes)(struct drm_connector *connector); |
int (*mode_valid)(struct drm_connector *connector, |
145,6 → 166,4 |
extern void drm_kms_helper_poll_disable(struct drm_device *dev); |
extern void drm_kms_helper_poll_enable(struct drm_device *dev); |
|
extern int drm_format_num_planes(uint32_t format); |
|
#endif |