Lines Matching refs:encoder
24 static struct mdp5_kms *get_kms(struct drm_encoder *encoder) in get_kms() argument
26 struct msm_drm_private *priv = encoder->dev->dev_private; in get_kms()
92 static void mdp5_encoder_destroy(struct drm_encoder *encoder) in mdp5_encoder_destroy() argument
94 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_encoder_destroy()
96 drm_encoder_cleanup(encoder); in mdp5_encoder_destroy()
104 static void mdp5_vid_encoder_mode_set(struct drm_encoder *encoder, in mdp5_vid_encoder_mode_set() argument
108 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_vid_encoder_mode_set()
109 struct mdp5_kms *mdp5_kms = get_kms(encoder); in mdp5_vid_encoder_mode_set()
110 struct drm_device *dev = encoder->dev; in mdp5_vid_encoder_mode_set()
145 if (connector->encoder == encoder) { in mdp5_vid_encoder_mode_set()
209 mdp5_crtc_set_pipeline(encoder->crtc); in mdp5_vid_encoder_mode_set()
212 static void mdp5_vid_encoder_disable(struct drm_encoder *encoder) in mdp5_vid_encoder_disable() argument
214 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_vid_encoder_disable()
215 struct mdp5_kms *mdp5_kms = get_kms(encoder); in mdp5_vid_encoder_disable()
217 struct mdp5_pipeline *pipeline = mdp5_crtc_get_pipeline(encoder->crtc); in mdp5_vid_encoder_disable()
218 struct mdp5_hw_mixer *mixer = mdp5_crtc_get_mixer(encoder->crtc); in mdp5_vid_encoder_disable()
248 static void mdp5_vid_encoder_enable(struct drm_encoder *encoder) in mdp5_vid_encoder_enable() argument
250 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_vid_encoder_enable()
251 struct mdp5_kms *mdp5_kms = get_kms(encoder); in mdp5_vid_encoder_enable()
254 struct mdp5_pipeline *pipeline = mdp5_crtc_get_pipeline(encoder->crtc); in mdp5_vid_encoder_enable()
272 static void mdp5_encoder_mode_set(struct drm_encoder *encoder, in mdp5_encoder_mode_set() argument
276 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_encoder_mode_set()
280 mdp5_cmd_encoder_mode_set(encoder, mode, adjusted_mode); in mdp5_encoder_mode_set()
282 mdp5_vid_encoder_mode_set(encoder, mode, adjusted_mode); in mdp5_encoder_mode_set()
285 static void mdp5_encoder_disable(struct drm_encoder *encoder) in mdp5_encoder_disable() argument
287 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_encoder_disable()
291 mdp5_cmd_encoder_disable(encoder); in mdp5_encoder_disable()
293 mdp5_vid_encoder_disable(encoder); in mdp5_encoder_disable()
296 static void mdp5_encoder_enable(struct drm_encoder *encoder) in mdp5_encoder_enable() argument
298 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_encoder_enable()
301 struct drm_crtc_state *cstate = encoder->crtc->state; in mdp5_encoder_enable()
303 mdp5_encoder_mode_set(encoder, &cstate->mode, &cstate->adjusted_mode); in mdp5_encoder_enable()
306 mdp5_cmd_encoder_enable(encoder); in mdp5_encoder_enable()
308 mdp5_vid_encoder_enable(encoder); in mdp5_encoder_enable()
311 static int mdp5_encoder_atomic_check(struct drm_encoder *encoder, in mdp5_encoder_atomic_check() argument
315 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_encoder_atomic_check()
343 int mdp5_encoder_get_linecount(struct drm_encoder *encoder) in mdp5_encoder_get_linecount() argument
345 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_encoder_get_linecount()
346 struct mdp5_kms *mdp5_kms = get_kms(encoder); in mdp5_encoder_get_linecount()
352 u32 mdp5_encoder_get_framecount(struct drm_encoder *encoder) in mdp5_encoder_get_framecount() argument
354 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_encoder_get_framecount()
355 struct mdp5_kms *mdp5_kms = get_kms(encoder); in mdp5_encoder_get_framecount()
361 int mdp5_vid_encoder_set_split_display(struct drm_encoder *encoder, in mdp5_vid_encoder_set_split_display() argument
364 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_vid_encoder_set_split_display()
371 if (!encoder || !slave_encoder) in mdp5_vid_encoder_set_split_display()
374 mdp5_kms = get_kms(encoder); in mdp5_vid_encoder_set_split_display()
403 void mdp5_encoder_set_intf_mode(struct drm_encoder *encoder, bool cmd_mode) in mdp5_encoder_set_intf_mode() argument
405 struct mdp5_encoder *mdp5_encoder = to_mdp5_encoder(encoder); in mdp5_encoder_set_intf_mode()
425 struct drm_encoder *encoder = NULL; in mdp5_encoder_init() local
437 encoder = &mdp5_encoder->base; in mdp5_encoder_init()
443 drm_encoder_init(dev, encoder, &mdp5_encoder_funcs, enc_type, NULL); in mdp5_encoder_init()
445 drm_encoder_helper_add(encoder, &mdp5_encoder_helper_funcs); in mdp5_encoder_init()
449 return encoder; in mdp5_encoder_init()
452 if (encoder) in mdp5_encoder_init()
453 mdp5_encoder_destroy(encoder); in mdp5_encoder_init()