Lines Matching full:encoder
23 struct drm_encoder encoder; member
36 drm_encoder_to_sun4i_lvds(struct drm_encoder *encoder) in drm_encoder_to_sun4i_lvds() argument
38 return container_of(encoder, struct sun4i_lvds, in drm_encoder_to_sun4i_lvds()
39 encoder); in drm_encoder_to_sun4i_lvds()
68 static void sun4i_lvds_encoder_enable(struct drm_encoder *encoder) in sun4i_lvds_encoder_enable() argument
70 struct sun4i_lvds *lvds = drm_encoder_to_sun4i_lvds(encoder); in sun4i_lvds_encoder_enable()
80 static void sun4i_lvds_encoder_disable(struct drm_encoder *encoder) in sun4i_lvds_encoder_disable() argument
82 struct sun4i_lvds *lvds = drm_encoder_to_sun4i_lvds(encoder); in sun4i_lvds_encoder_disable()
99 struct drm_encoder *encoder; in sun4i_lvds_init() local
107 encoder = &lvds->encoder; in sun4i_lvds_init()
116 drm_encoder_helper_add(&lvds->encoder, in sun4i_lvds_init()
118 ret = drm_simple_encoder_init(drm, &lvds->encoder, in sun4i_lvds_init()
121 dev_err(drm->dev, "Couldn't initialise the lvds encoder\n"); in sun4i_lvds_init()
125 /* The LVDS encoder can only work with the TCON channel 0 */ in sun4i_lvds_init()
126 lvds->encoder.possible_crtcs = drm_crtc_mask(&tcon->crtc->crtc); in sun4i_lvds_init()
140 &lvds->encoder); in sun4i_lvds_init()
144 ret = drm_bridge_attach(encoder, bridge, NULL, 0); in sun4i_lvds_init()
152 drm_encoder_cleanup(&lvds->encoder); in sun4i_lvds_init()