Lines Matching refs:plane
259 atmel_hlcdc_plane_update_pos_and_size(struct atmel_hlcdc_plane *plane, in atmel_hlcdc_plane_update_pos_and_size() argument
263 &plane->layer.desc->layout; in atmel_hlcdc_plane_update_pos_and_size()
266 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_pos_and_size()
273 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_pos_and_size()
280 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_pos_and_size()
299 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_pos_and_size()
322 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_pos_and_size()
336 atmel_hlcdc_layer_update_cfg(&plane->layer, 13, 0xffffffff, in atmel_hlcdc_plane_update_pos_and_size()
342 atmel_hlcdc_plane_update_general_settings(struct atmel_hlcdc_plane *plane, in atmel_hlcdc_plane_update_general_settings() argument
346 &plane->layer.desc->layout; in atmel_hlcdc_plane_update_general_settings()
349 if (plane->base.type != DRM_PLANE_TYPE_PRIMARY) { in atmel_hlcdc_plane_update_general_settings()
360 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_general_settings()
365 atmel_hlcdc_layer_update_cfg(&plane->layer, layout->general_config, in atmel_hlcdc_plane_update_general_settings()
375 static void atmel_hlcdc_plane_update_format(struct atmel_hlcdc_plane *plane, in atmel_hlcdc_plane_update_format() argument
391 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_format()
405 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_format()
410 static void atmel_hlcdc_plane_update_buffers(struct atmel_hlcdc_plane *plane, in atmel_hlcdc_plane_update_buffers() argument
413 struct atmel_hlcdc_layer *layer = &plane->layer; in atmel_hlcdc_plane_update_buffers()
418 atmel_hlcdc_layer_update_set_fb(&plane->layer, state->base.fb, in atmel_hlcdc_plane_update_buffers()
423 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_buffers()
430 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_buffers()
505 atmel_hlcdc_plane_update_disc_area(struct atmel_hlcdc_plane *plane, in atmel_hlcdc_plane_update_disc_area() argument
509 &plane->layer.desc->layout; in atmel_hlcdc_plane_update_disc_area()
517 atmel_hlcdc_layer_update_cfg(&plane->layer, layout->general_config, in atmel_hlcdc_plane_update_disc_area()
524 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_disc_area()
529 atmel_hlcdc_layer_update_cfg(&plane->layer, in atmel_hlcdc_plane_update_disc_area()
539 struct atmel_hlcdc_plane *plane = drm_plane_to_atmel_hlcdc_plane(p); in atmel_hlcdc_plane_atomic_check() local
543 &plane->layer.desc->layout; in atmel_hlcdc_plane_atomic_check()
691 if (plane->layer.desc->max_height && in atmel_hlcdc_plane_atomic_check()
692 state->crtc_h > plane->layer.desc->max_height) in atmel_hlcdc_plane_atomic_check()
695 if (plane->layer.desc->max_width && in atmel_hlcdc_plane_atomic_check()
696 state->crtc_w > plane->layer.desc->max_width) in atmel_hlcdc_plane_atomic_check()
718 struct atmel_hlcdc_plane *plane = drm_plane_to_atmel_hlcdc_plane(p); in atmel_hlcdc_plane_prepare_fb() local
720 return atmel_hlcdc_layer_update_start(&plane->layer); in atmel_hlcdc_plane_prepare_fb()
726 struct atmel_hlcdc_plane *plane = drm_plane_to_atmel_hlcdc_plane(p); in atmel_hlcdc_plane_atomic_update() local
733 atmel_hlcdc_plane_update_pos_and_size(plane, state); in atmel_hlcdc_plane_atomic_update()
734 atmel_hlcdc_plane_update_general_settings(plane, state); in atmel_hlcdc_plane_atomic_update()
735 atmel_hlcdc_plane_update_format(plane, state); in atmel_hlcdc_plane_atomic_update()
736 atmel_hlcdc_plane_update_buffers(plane, state); in atmel_hlcdc_plane_atomic_update()
737 atmel_hlcdc_plane_update_disc_area(plane, state); in atmel_hlcdc_plane_atomic_update()
739 atmel_hlcdc_layer_update_commit(&plane->layer); in atmel_hlcdc_plane_atomic_update()
745 struct atmel_hlcdc_plane *plane = drm_plane_to_atmel_hlcdc_plane(p); in atmel_hlcdc_plane_atomic_disable() local
747 atmel_hlcdc_layer_disable(&plane->layer); in atmel_hlcdc_plane_atomic_disable()
752 struct atmel_hlcdc_plane *plane = drm_plane_to_atmel_hlcdc_plane(p); in atmel_hlcdc_plane_destroy() local
754 if (plane->base.fb) in atmel_hlcdc_plane_destroy()
755 drm_framebuffer_unreference(plane->base.fb); in atmel_hlcdc_plane_destroy()
757 atmel_hlcdc_layer_cleanup(p->dev, &plane->layer); in atmel_hlcdc_plane_destroy()
760 devm_kfree(p->dev->dev, plane); in atmel_hlcdc_plane_destroy()
768 struct atmel_hlcdc_plane *plane = drm_plane_to_atmel_hlcdc_plane(p); in atmel_hlcdc_plane_atomic_set_property() local
769 struct atmel_hlcdc_plane_properties *props = plane->properties; in atmel_hlcdc_plane_atomic_set_property()
786 struct atmel_hlcdc_plane *plane = drm_plane_to_atmel_hlcdc_plane(p); in atmel_hlcdc_plane_atomic_get_property() local
787 struct atmel_hlcdc_plane_properties *props = plane->properties; in atmel_hlcdc_plane_atomic_get_property()
799 static void atmel_hlcdc_plane_init_properties(struct atmel_hlcdc_plane *plane, in atmel_hlcdc_plane_init_properties() argument
803 struct regmap *regmap = plane->layer.hlcdc->regmap; in atmel_hlcdc_plane_init_properties()
807 drm_object_attach_property(&plane->base.base, in atmel_hlcdc_plane_init_properties()
813 ATMEL_HLCDC_LAYER_GENERAL_CFG(&plane->layer), in atmel_hlcdc_plane_init_properties()
819 drm_object_attach_property(&plane->base.base, in atmel_hlcdc_plane_init_properties()
820 plane->base.dev->mode_config.rotation_property, in atmel_hlcdc_plane_init_properties()
830 ATMEL_HLCDC_LAYER_CSC_CFG(&plane->layer, 0), in atmel_hlcdc_plane_init_properties()
834 ATMEL_HLCDC_LAYER_CSC_CFG(&plane->layer, 1), in atmel_hlcdc_plane_init_properties()
838 ATMEL_HLCDC_LAYER_CSC_CFG(&plane->layer, 2), in atmel_hlcdc_plane_init_properties()
868 p->state->plane = p; in atmel_hlcdc_plane_reset()
891 static void atmel_hlcdc_plane_atomic_destroy_state(struct drm_plane *plane, in atmel_hlcdc_plane_atomic_destroy_state() argument
920 struct atmel_hlcdc_plane *plane; in atmel_hlcdc_plane_create() local
924 plane = devm_kzalloc(dev->dev, sizeof(*plane), GFP_KERNEL); in atmel_hlcdc_plane_create()
925 if (!plane) in atmel_hlcdc_plane_create()
928 ret = atmel_hlcdc_layer_init(dev, &plane->layer, desc); in atmel_hlcdc_plane_create()
939 ret = drm_universal_plane_init(dev, &plane->base, 0, in atmel_hlcdc_plane_create()
946 drm_plane_helper_add(&plane->base, in atmel_hlcdc_plane_create()
950 atmel_hlcdc_plane_init_properties(plane, desc, props); in atmel_hlcdc_plane_create()
952 return plane; in atmel_hlcdc_plane_create()
1014 struct atmel_hlcdc_plane *plane; in atmel_hlcdc_create_planes() local
1019 plane = atmel_hlcdc_plane_create(dev, &descs[i], props); in atmel_hlcdc_create_planes()
1020 if (IS_ERR(plane)) in atmel_hlcdc_create_planes()
1021 return ERR_CAST(plane); in atmel_hlcdc_create_planes()
1023 plane->properties = props; in atmel_hlcdc_create_planes()
1029 planes->primary = plane; in atmel_hlcdc_create_planes()
1033 planes->overlays[planes->noverlays++] = plane; in atmel_hlcdc_create_planes()
1039 planes->cursor = plane; in atmel_hlcdc_create_planes()