Lines Matching refs:dcss_plane

49 static inline struct dcss_plane *to_dcss_plane(struct drm_plane *p)  in to_dcss_plane()
51 return container_of(p, struct dcss_plane, base); in to_dcss_plane()
63 struct dcss_plane *dcss_plane = container_of(plane, struct dcss_plane, in dcss_plane_destroy() local
67 kfree(dcss_plane); in dcss_plane_destroy()
146 struct dcss_plane *dcss_plane = to_dcss_plane(plane); in dcss_plane_atomic_check() local
175 dcss_scaler_get_min_max_ratios(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_check()
214 static void dcss_plane_atomic_set_base(struct dcss_plane *dcss_plane) in dcss_plane_atomic_set_base() argument
216 struct drm_plane *plane = &dcss_plane->base; in dcss_plane_atomic_set_base()
244 dcss_dpr_addr_set(dcss->dpr, dcss_plane->ch_num, p1_ba, p2_ba, in dcss_plane_atomic_set_base()
275 struct dcss_plane *dcss_plane = to_dcss_plane(plane); in dcss_plane_atomic_update() local
293 dcss_plane_atomic_set_base(dcss_plane); in dcss_plane_atomic_update()
312 dcss_dpr_format_set(dcss->dpr, dcss_plane->ch_num, in dcss_plane_atomic_update()
316 dcss_dpr_set_res(dcss->dpr, dcss_plane->ch_num, src_w, src_h); in dcss_plane_atomic_update()
317 dcss_dpr_set_rotation(dcss->dpr, dcss_plane->ch_num, in dcss_plane_atomic_update()
320 dcss_plane_atomic_set_base(dcss_plane); in dcss_plane_atomic_update()
325 dcss_scaler_set_filter(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_update()
328 dcss_scaler_setup(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_update()
335 dcss_dtg_plane_pos_set(dcss->dtg, dcss_plane->ch_num, in dcss_plane_atomic_update()
337 dcss_dtg_plane_alpha_set(dcss->dtg, dcss_plane->ch_num, in dcss_plane_atomic_update()
340 if (!dcss_plane->ch_num && (new_state->alpha >> 8) == 0) in dcss_plane_atomic_update()
343 dcss_dpr_enable(dcss->dpr, dcss_plane->ch_num, enable); in dcss_plane_atomic_update()
344 dcss_scaler_ch_enable(dcss->scaler, dcss_plane->ch_num, enable); in dcss_plane_atomic_update()
347 dcss_dtg_plane_pos_set(dcss->dtg, dcss_plane->ch_num, in dcss_plane_atomic_update()
350 dcss_dtg_ch_enable(dcss->dtg, dcss_plane->ch_num, enable); in dcss_plane_atomic_update()
356 struct dcss_plane *dcss_plane = to_dcss_plane(plane); in dcss_plane_atomic_disable() local
359 dcss_dpr_enable(dcss->dpr, dcss_plane->ch_num, false); in dcss_plane_atomic_disable()
360 dcss_scaler_ch_enable(dcss->scaler, dcss_plane->ch_num, false); in dcss_plane_atomic_disable()
361 dcss_dtg_plane_pos_set(dcss->dtg, dcss_plane->ch_num, 0, 0, 0, 0); in dcss_plane_atomic_disable()
362 dcss_dtg_ch_enable(dcss->dtg, dcss_plane->ch_num, false); in dcss_plane_atomic_disable()
371 struct dcss_plane *dcss_plane_init(struct drm_device *drm, in dcss_plane_init()
376 struct dcss_plane *dcss_plane; in dcss_plane_init() local
383 dcss_plane = kzalloc(sizeof(*dcss_plane), GFP_KERNEL); in dcss_plane_init()
384 if (!dcss_plane) { in dcss_plane_init()
392 ret = drm_universal_plane_init(drm, &dcss_plane->base, possible_crtcs, in dcss_plane_init()
398 kfree(dcss_plane); in dcss_plane_init()
402 drm_plane_helper_add(&dcss_plane->base, &dcss_plane_helper_funcs); in dcss_plane_init()
404 ret = drm_plane_create_zpos_immutable_property(&dcss_plane->base, zpos); in dcss_plane_init()
408 drm_plane_create_scaling_filter_property(&dcss_plane->base, in dcss_plane_init()
412 drm_plane_create_rotation_property(&dcss_plane->base, in dcss_plane_init()
421 dcss_plane->ch_num = zpos; in dcss_plane_init()
423 return dcss_plane; in dcss_plane_init()