Symbol: plane
games/atc/struct.h
72
struct plane *next, *prev;
lib/i18n_module/DECHanyu/citrus_dechanyu.c
326
int plane;
lib/i18n_module/DECHanyu/citrus_dechanyu.c
328
plane = 0;
lib/i18n_module/DECHanyu/citrus_dechanyu.c
335
plane += 2;
lib/i18n_module/DECHanyu/citrus_dechanyu.c
340
plane += (wc & 0x80) ? 1 : 2;
lib/i18n_module/DECHanyu/citrus_dechanyu.c
343
*csid = plane;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
103
struct drm_plane *plane,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
1739
struct amdgpu_plane *plane;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
1743
plane = kzalloc(sizeof(struct amdgpu_plane), GFP_KERNEL);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
1744
mode_info->planes[plane_id] = plane;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
1746
if (!plane) {
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
1750
plane->base.type = mode_info->plane_type[plane_id];
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3426
static void dm_drm_plane_reset(struct drm_plane *plane)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3430
if (plane->state)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3431
plane->funcs->atomic_destroy_state(plane, plane->state);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3437
plane->state = &amdgpu_state->base;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3438
plane->state->plane = plane;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3439
plane->state->rotation = DRM_MODE_ROTATE_0;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3444
dm_drm_plane_duplicate_state(struct drm_plane *plane)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3448
old_dm_plane_state = to_dm_plane_state(plane->state);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3453
__drm_atomic_helper_plane_duplicate_state(plane, &dm_plane_state->base);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3464
void dm_drm_plane_destroy_state(struct drm_plane *plane,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3472
drm_atomic_helper_plane_destroy_state(plane, state);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3484
static int dm_plane_helper_prepare_fb(struct drm_plane *plane,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3497
dm_plane_state_old = to_dm_plane_state(plane->state);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3513
if (plane->type != DRM_PLANE_TYPE_CURSOR)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3564
static void dm_plane_helper_cleanup_fb(struct drm_plane *plane,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3585
static int dm_plane_atomic_check(struct drm_plane *plane,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3588
struct amdgpu_device *adev = plane->dev->dev_private;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3689
struct drm_plane *plane,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
3711
plane,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4239
static int get_cursor_position(struct drm_plane *plane, struct drm_crtc *crtc,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4246
if (!crtc || !plane->state->fb) {
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4253
if ((plane->state->crtc_w > amdgpu_crtc->max_cursor_width) ||
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4254
(plane->state->crtc_h > amdgpu_crtc->max_cursor_height)) {
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4257
plane->state->crtc_w,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4258
plane->state->crtc_h);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4262
x = plane->state->crtc_x;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4263
y = plane->state->crtc_y;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4284
static void handle_cursor_update(struct drm_plane *plane,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4287
struct amdgpu_framebuffer *afb = to_amdgpu_framebuffer(plane->state->fb);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4288
struct drm_crtc *crtc = afb ? plane->state->crtc : old_plane_state->crtc;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4296
if (!plane->state->fb && !old_plane_state->fb)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4302
plane->state->crtc_w,
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4303
plane->state->crtc_h);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4305
ret = get_cursor_position(plane, crtc, &position);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4317
amdgpu_crtc->cursor_width = plane->state->crtc_w;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4318
amdgpu_crtc->cursor_height = plane->state->crtc_h;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4322
attributes.width = plane->state->crtc_w;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4323
attributes.height = plane->state->crtc_h;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4584
struct drm_plane *plane;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4598
for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4605
if (plane->type == DRM_PLANE_TYPE_CURSOR) {
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4606
handle_cursor_update(plane, old_plane_state);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4629
if (!pflip_needed || plane->type == DRM_PLANE_TYPE_OVERLAY) {
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4647
if (plane->type == DRM_PLANE_TYPE_PRIMARY)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
4983
struct drm_plane *plane = disconnected_acrtc->base.primary;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5015
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5382
struct drm_plane *plane;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5393
for_each_oldnew_plane_in_state_reverse(state, plane, old_plane_state, new_plane_state, i) {
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5400
if (plane->type == DRM_PLANE_TYPE_CURSOR)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5406
plane->type != DRM_PLANE_TYPE_OVERLAY)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5420
plane->base.id, old_plane_crtc->base.id);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5445
if (drm_atomic_plane_disabling(plane->state, new_plane_state))
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5458
plane->type != DRM_PLANE_TYPE_OVERLAY)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5468
plane->base.id, new_plane_crtc->base.id);
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5528
struct drm_plane *plane;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5554
for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, j) {
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
5560
if (plane->type == DRM_PLANE_TYPE_CURSOR)
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
832
struct drm_plane *plane;
sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm.c
899
for_each_new_plane_in_state(dm->cached_state, plane, new_plane_state, i) {
sys/dev/drm/amd/display/dc/dce110/dce110_resource.c
954
struct dc_plane_state *plane =
sys/dev/drm/amd/display/dc/dce110/dce110_resource.c
958
if (plane->format >= SURFACE_PIXEL_FORMAT_VIDEO_BEGIN) {
sys/dev/drm/amd/display/dc/dce110/dce110_resource.c
960
if ((plane->src_rect.width > 1920 ||
sys/dev/drm/amd/display/dc/dce110/dce110_resource.c
961
plane->src_rect.height > 1080))
sys/dev/drm/amd/display/modules/freesync/freesync.c
845
const struct dc_plane_state *plane,
sys/dev/drm/amd/display/modules/freesync/freesync.c
862
unsigned int oldest_index = plane->time.index + 1;
sys/dev/drm/amd/display/modules/freesync/freesync.c
868
plane->time.prev_update_time_in_us;
sys/dev/drm/amd/display/modules/freesync/freesync.c
873
plane->time.time_elapsed_in_us[i];
sys/dev/drm/amd/display/modules/freesync/freesync.c
876
plane->time.time_elapsed_in_us[oldest_index];
sys/dev/drm/amd/display/modules/inc/mod_freesync.h
157
const struct dc_plane_state *plane,
sys/dev/drm/drm_atomic.c
1087
struct drm_plane *plane;
sys/dev/drm/drm_atomic.c
1097
for_each_new_plane_in_state(state, plane, plane_state, i)
sys/dev/drm/drm_atomic.c
1111
struct drm_plane *plane;
sys/dev/drm/drm_atomic.c
1119
list_for_each_entry(plane, &config->plane_list, head) {
sys/dev/drm/drm_atomic.c
1121
drm_modeset_lock(&plane->mutex, NULL);
sys/dev/drm/drm_atomic.c
1122
drm_atomic_plane_print_state(p, plane->state);
sys/dev/drm/drm_atomic.c
1124
drm_modeset_unlock(&plane->mutex);
sys/dev/drm/drm_atomic.c
186
struct drm_plane *plane = state->planes[i].ptr;
sys/dev/drm/drm_atomic.c
188
if (!plane)
sys/dev/drm/drm_atomic.c
191
plane->funcs->atomic_destroy_state(plane,
sys/dev/drm/drm_atomic.c
445
struct drm_plane *plane)
sys/dev/drm/drm_atomic.c
447
int ret, index = drm_plane_index(plane);
sys/dev/drm/drm_atomic.c
453
WARN_ON(plane->fb);
sys/dev/drm/drm_atomic.c
454
WARN_ON(plane->old_fb);
sys/dev/drm/drm_atomic.c
455
WARN_ON(plane->crtc);
sys/dev/drm/drm_atomic.c
457
plane_state = drm_atomic_get_existing_plane_state(state, plane);
sys/dev/drm/drm_atomic.c
461
ret = drm_modeset_lock(&plane->mutex, state->acquire_ctx);
sys/dev/drm/drm_atomic.c
465
plane_state = plane->funcs->atomic_duplicate_state(plane);
sys/dev/drm/drm_atomic.c
470
state->planes[index].ptr = plane;
sys/dev/drm/drm_atomic.c
471
state->planes[index].old_state = plane->state;
sys/dev/drm/drm_atomic.c
476
plane->base.id, plane->name, plane_state, state);
sys/dev/drm/drm_atomic.c
493
struct drm_plane *plane,
sys/dev/drm/drm_atomic.c
496
if (!plane->state->crtc || !plane_state->crtc)
sys/dev/drm/drm_atomic.c
499
if (plane->state->crtc == plane_state->crtc)
sys/dev/drm/drm_atomic.c
520
static int drm_atomic_plane_check(struct drm_plane *plane,
sys/dev/drm/drm_atomic.c
529
plane->base.id, plane->name);
sys/dev/drm/drm_atomic.c
533
plane->base.id, plane->name);
sys/dev/drm/drm_atomic.c
542
if (!(plane->possible_crtcs & drm_crtc_mask(state->crtc))) {
sys/dev/drm/drm_atomic.c
545
plane->base.id, plane->name);
sys/dev/drm/drm_atomic.c
550
ret = drm_plane_check_pixel_format(plane, state->fb->format->format,
sys/dev/drm/drm_atomic.c
555
plane->base.id, plane->name,
sys/dev/drm/drm_atomic.c
568
plane->base.id, plane->name,
sys/dev/drm/drm_atomic.c
584
plane->base.id, plane->name,
sys/dev/drm/drm_atomic.c
593
if (plane_switching_crtc(state->state, plane, state)) {
sys/dev/drm/drm_atomic.c
595
plane->base.id, plane->name);
sys/dev/drm/drm_atomic.c
605
struct drm_plane *plane = state->plane;
sys/dev/drm/drm_atomic.c
609
drm_printf(p, "plane[%u]: %s\n", plane->base.id, plane->name);
sys/dev/drm/drm_atomic.c
623
if (plane->funcs->atomic_print_state)
sys/dev/drm/drm_atomic.c
624
plane->funcs->atomic_print_state(p, state);
sys/dev/drm/drm_atomic.c
932
struct drm_plane *plane;
sys/dev/drm/drm_atomic.c
939
drm_for_each_plane_mask(plane, state->dev, crtc->state->plane_mask) {
sys/dev/drm/drm_atomic.c
941
drm_atomic_get_plane_state(state, plane);
sys/dev/drm/drm_atomic.c
965
struct drm_plane *plane;
sys/dev/drm/drm_atomic.c
975
for_each_new_plane_in_state(state, plane, plane_state, i) {
sys/dev/drm/drm_atomic.c
976
ret = drm_atomic_plane_check(plane, plane_state);
sys/dev/drm/drm_atomic.c
979
plane->base.id, plane->name);
sys/dev/drm/drm_atomic_helper.c
1326
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
1330
for_each_new_plane_in_state(state, plane, new_plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
1565
struct drm_plane *plane = NULL;
sys/dev/drm/drm_atomic_helper.c
1576
for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i)
sys/dev/drm/drm_atomic_helper.c
1605
funcs = plane->helper_private;
sys/dev/drm/drm_atomic_helper.c
1621
return funcs->atomic_async_check(plane, new_plane_state);
sys/dev/drm/drm_atomic_helper.c
1639
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
1644
for_each_new_plane_in_state(state, plane, plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
1645
funcs = plane->helper_private;
sys/dev/drm/drm_atomic_helper.c
1646
funcs->atomic_async_update(plane, plane_state);
sys/dev/drm/drm_atomic_helper.c
1653
WARN_ON_ONCE(plane->state->fb != plane_state->fb);
sys/dev/drm/drm_atomic_helper.c
1654
WARN_ON_ONCE(plane->state->crtc_x != plane_state->crtc_x);
sys/dev/drm/drm_atomic_helper.c
1655
WARN_ON_ONCE(plane->state->crtc_y != plane_state->crtc_y);
sys/dev/drm/drm_atomic_helper.c
1656
WARN_ON_ONCE(plane->state->src_x != plane_state->src_x);
sys/dev/drm/drm_atomic_helper.c
1657
WARN_ON_ONCE(plane->state->src_y != plane_state->src_y);
sys/dev/drm/drm_atomic_helper.c
1933
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
1999
for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
2034
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
2084
for_each_old_plane_in_state(old_state, plane, old_plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
2094
plane->base.id, plane->name);
sys/dev/drm/drm_atomic_helper.c
2102
plane->base.id, plane->name);
sys/dev/drm/drm_atomic_helper.c
2247
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
2251
for_each_new_plane_in_state(state, plane, new_plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
2254
funcs = plane->helper_private;
sys/dev/drm/drm_atomic_helper.c
2257
ret = funcs->prepare_fb(plane, new_plane_state);
sys/dev/drm/drm_atomic_helper.c
2266
for_each_new_plane_in_state(state, plane, new_plane_state, j) {
sys/dev/drm/drm_atomic_helper.c
2272
funcs = plane->helper_private;
sys/dev/drm/drm_atomic_helper.c
2275
funcs->cleanup_fb(plane, new_plane_state);
sys/dev/drm/drm_atomic_helper.c
2334
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
2354
for_each_oldnew_plane_in_state(old_state, plane, old_plane_state, new_plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
2358
funcs = plane->helper_private;
sys/dev/drm/drm_atomic_helper.c
2392
funcs->atomic_disable(plane, old_plane_state);
sys/dev/drm/drm_atomic_helper.c
2394
funcs->atomic_update(plane, old_plane_state);
sys/dev/drm/drm_atomic_helper.c
2439
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
2449
drm_for_each_plane_mask(plane, crtc->dev, plane_mask) {
sys/dev/drm/drm_atomic_helper.c
2451
drm_atomic_get_old_plane_state(old_state, plane);
sys/dev/drm/drm_atomic_helper.c
2453
drm_atomic_get_new_plane_state(old_state, plane);
sys/dev/drm/drm_atomic_helper.c
2456
plane_funcs = plane->helper_private;
sys/dev/drm/drm_atomic_helper.c
2466
plane_funcs->atomic_disable(plane, old_plane_state);
sys/dev/drm/drm_atomic_helper.c
2469
plane_funcs->atomic_update(plane, old_plane_state);
sys/dev/drm/drm_atomic_helper.c
2500
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
2505
drm_atomic_crtc_state_for_each_plane(plane, old_crtc_state) {
sys/dev/drm/drm_atomic_helper.c
2507
plane->helper_private;
sys/dev/drm/drm_atomic_helper.c
2514
plane_funcs->atomic_disable(plane, NULL);
sys/dev/drm/drm_atomic_helper.c
2537
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
2541
for_each_oldnew_plane_in_state(old_state, plane, old_plane_state, new_plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
2549
if (old_plane_state == plane->state)
sys/dev/drm/drm_atomic_helper.c
2554
funcs = plane->helper_private;
sys/dev/drm/drm_atomic_helper.c
2557
funcs->cleanup_fb(plane, plane_state);
sys/dev/drm/drm_atomic_helper.c
2605
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
2643
for_each_old_plane_in_state(state, plane, old_plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
2684
for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
2685
WARN_ON(plane->state != old_plane_state);
sys/dev/drm/drm_atomic_helper.c
2691
plane->state = new_plane_state;
sys/dev/drm/drm_atomic_helper.c
2728
int drm_atomic_helper_update_plane(struct drm_plane *plane,
sys/dev/drm/drm_atomic_helper.c
2741
state = drm_atomic_state_alloc(plane->dev);
sys/dev/drm/drm_atomic_helper.c
2746
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/drm_atomic_helper.c
2765
if (plane == crtc->cursor)
sys/dev/drm/drm_atomic_helper.c
2785
int drm_atomic_helper_disable_plane(struct drm_plane *plane,
sys/dev/drm/drm_atomic_helper.c
2792
state = drm_atomic_state_alloc(plane->dev);
sys/dev/drm/drm_atomic_helper.c
2797
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/drm_atomic_helper.c
2803
if (plane_state->crtc && plane_state->crtc->cursor == plane)
sys/dev/drm/drm_atomic_helper.c
2806
ret = __drm_atomic_helper_disable_plane(plane, plane_state);
sys/dev/drm/drm_atomic_helper.c
2818
int __drm_atomic_helper_disable_plane(struct drm_plane *plane,
sys/dev/drm/drm_atomic_helper.c
3033
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
3072
for_each_new_plane_in_state(state, plane, plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
3234
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
3243
for_each_new_plane_in_state(state, plane, new_plane_state, i)
sys/dev/drm/drm_atomic_helper.c
3244
state->planes[i].old_state = plane->state;
sys/dev/drm/drm_atomic_helper.c
3312
struct drm_plane *plane = crtc->primary;
sys/dev/drm/drm_atomic_helper.c
3324
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/drm_atomic_helper.c
3367
struct drm_plane *plane = crtc->primary;
sys/dev/drm/drm_atomic_helper.c
3371
state = drm_atomic_state_alloc(plane->dev);
sys/dev/drm/drm_atomic_helper.c
3411
struct drm_plane *plane = crtc->primary;
sys/dev/drm/drm_atomic_helper.c
3416
state = drm_atomic_state_alloc(plane->dev);
sys/dev/drm/drm_atomic_helper.c
3614
void __drm_atomic_helper_plane_reset(struct drm_plane *plane,
sys/dev/drm/drm_atomic_helper.c
3617
state->plane = plane;
sys/dev/drm/drm_atomic_helper.c
3623
plane->state = state;
sys/dev/drm/drm_atomic_helper.c
3634
void drm_atomic_helper_plane_reset(struct drm_plane *plane)
sys/dev/drm/drm_atomic_helper.c
3636
if (plane->state)
sys/dev/drm/drm_atomic_helper.c
3637
__drm_atomic_helper_plane_destroy_state(plane->state);
sys/dev/drm/drm_atomic_helper.c
3639
kfree(plane->state);
sys/dev/drm/drm_atomic_helper.c
3640
plane->state = kzalloc(sizeof(*plane->state), GFP_KERNEL);
sys/dev/drm/drm_atomic_helper.c
3641
if (plane->state)
sys/dev/drm/drm_atomic_helper.c
3642
__drm_atomic_helper_plane_reset(plane, plane->state);
sys/dev/drm/drm_atomic_helper.c
3654
void __drm_atomic_helper_plane_duplicate_state(struct drm_plane *plane,
sys/dev/drm/drm_atomic_helper.c
3657
memcpy(state, plane->state, sizeof(*state));
sys/dev/drm/drm_atomic_helper.c
3675
drm_atomic_helper_plane_duplicate_state(struct drm_plane *plane)
sys/dev/drm/drm_atomic_helper.c
3679
if (WARN_ON(!plane->state))
sys/dev/drm/drm_atomic_helper.c
3684
__drm_atomic_helper_plane_duplicate_state(plane, state);
sys/dev/drm/drm_atomic_helper.c
3719
void drm_atomic_helper_plane_destroy_state(struct drm_plane *plane,
sys/dev/drm/drm_atomic_helper.c
3847
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
3867
drm_for_each_plane(plane, dev) {
sys/dev/drm/drm_atomic_helper.c
3870
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/drm_atomic_helper.c
71
struct drm_plane *plane)
sys/dev/drm/drm_atomic_helper.c
837
struct drm_plane *plane;
sys/dev/drm/drm_atomic_helper.c
841
for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
sys/dev/drm/drm_atomic_helper.c
844
WARN_ON(!drm_modeset_is_locked(&plane->mutex));
sys/dev/drm/drm_atomic_helper.c
846
funcs = plane->helper_private;
sys/dev/drm/drm_atomic_helper.c
848
drm_atomic_helper_plane_changed(state, old_plane_state, new_plane_state, plane);
sys/dev/drm/drm_atomic_helper.c
853
ret = funcs->atomic_check(plane, new_plane_state);
sys/dev/drm/drm_atomic_helper.c
856
plane->base.id, plane->name);
sys/dev/drm/drm_atomic_uapi.c
180
struct drm_plane *plane = plane_state->plane;
sys/dev/drm/drm_atomic_uapi.c
191
crtc_state->plane_mask &= ~drm_plane_mask(plane);
sys/dev/drm/drm_atomic_uapi.c
201
crtc_state->plane_mask |= drm_plane_mask(plane);
sys/dev/drm/drm_atomic_uapi.c
206
plane->base.id, plane->name, plane_state,
sys/dev/drm/drm_atomic_uapi.c
210
plane->base.id, plane->name, plane_state);
sys/dev/drm/drm_atomic_uapi.c
230
struct drm_plane *plane = plane_state->plane;
sys/dev/drm/drm_atomic_uapi.c
234
fb->base.id, plane->base.id, plane->name,
sys/dev/drm/drm_atomic_uapi.c
238
plane->base.id, plane->name, plane_state);
sys/dev/drm/drm_atomic_uapi.c
510
static int drm_atomic_plane_set_property(struct drm_plane *plane,
sys/dev/drm/drm_atomic_uapi.c
514
struct drm_device *dev = plane->dev;
sys/dev/drm/drm_atomic_uapi.c
552
} else if (property == plane->alpha_property) {
sys/dev/drm/drm_atomic_uapi.c
554
} else if (property == plane->blend_mode_property) {
sys/dev/drm/drm_atomic_uapi.c
556
} else if (property == plane->rotation_property) {
sys/dev/drm/drm_atomic_uapi.c
559
plane->base.id, plane->name, val);
sys/dev/drm/drm_atomic_uapi.c
563
} else if (property == plane->zpos_property) {
sys/dev/drm/drm_atomic_uapi.c
565
} else if (property == plane->color_encoding_property) {
sys/dev/drm/drm_atomic_uapi.c
567
} else if (property == plane->color_range_property) {
sys/dev/drm/drm_atomic_uapi.c
569
} else if (plane->funcs->atomic_set_property) {
sys/dev/drm/drm_atomic_uapi.c
570
return plane->funcs->atomic_set_property(plane, state,
sys/dev/drm/drm_atomic_uapi.c
574
plane->base.id, plane->name,
sys/dev/drm/drm_atomic_uapi.c
583
drm_atomic_plane_get_property(struct drm_plane *plane,
sys/dev/drm/drm_atomic_uapi.c
587
struct drm_device *dev = plane->dev;
sys/dev/drm/drm_atomic_uapi.c
612
} else if (property == plane->alpha_property) {
sys/dev/drm/drm_atomic_uapi.c
614
} else if (property == plane->blend_mode_property) {
sys/dev/drm/drm_atomic_uapi.c
616
} else if (property == plane->rotation_property) {
sys/dev/drm/drm_atomic_uapi.c
618
} else if (property == plane->zpos_property) {
sys/dev/drm/drm_atomic_uapi.c
620
} else if (property == plane->color_encoding_property) {
sys/dev/drm/drm_atomic_uapi.c
622
} else if (property == plane->color_range_property) {
sys/dev/drm/drm_atomic_uapi.c
624
} else if (plane->funcs->atomic_get_property) {
sys/dev/drm/drm_atomic_uapi.c
625
return plane->funcs->atomic_get_property(plane, state, property, val);
sys/dev/drm/drm_atomic_uapi.c
839
struct drm_plane *plane = obj_to_plane(obj);
sys/dev/drm/drm_atomic_uapi.c
840
WARN_ON(!drm_modeset_is_locked(&plane->mutex));
sys/dev/drm/drm_atomic_uapi.c
841
ret = drm_atomic_plane_get_property(plane,
sys/dev/drm/drm_atomic_uapi.c
842
plane->state, property, val);
sys/dev/drm/drm_atomic_uapi.c
965
struct drm_plane *plane = obj_to_plane(obj);
sys/dev/drm/drm_atomic_uapi.c
968
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/drm_atomic_uapi.c
974
ret = drm_atomic_plane_set_property(plane,
sys/dev/drm/drm_blend.c
196
int drm_plane_create_alpha_property(struct drm_plane *plane)
sys/dev/drm/drm_blend.c
200
prop = drm_property_create_range(plane->dev, 0, "alpha",
sys/dev/drm/drm_blend.c
205
drm_object_attach_property(&plane->base, prop, DRM_BLEND_ALPHA_OPAQUE);
sys/dev/drm/drm_blend.c
206
plane->alpha_property = prop;
sys/dev/drm/drm_blend.c
208
if (plane->state)
sys/dev/drm/drm_blend.c
209
plane->state->alpha = DRM_BLEND_ALPHA_OPAQUE;
sys/dev/drm/drm_blend.c
249
int drm_plane_create_rotation_property(struct drm_plane *plane,
sys/dev/drm/drm_blend.c
267
prop = drm_property_create_bitmask(plane->dev, 0, "rotation",
sys/dev/drm/drm_blend.c
273
drm_object_attach_property(&plane->base, prop, rotation);
sys/dev/drm/drm_blend.c
275
if (plane->state)
sys/dev/drm/drm_blend.c
276
plane->state->rotation = rotation;
sys/dev/drm/drm_blend.c
278
plane->rotation_property = prop;
sys/dev/drm/drm_blend.c
346
int drm_plane_create_zpos_property(struct drm_plane *plane,
sys/dev/drm/drm_blend.c
352
prop = drm_property_create_range(plane->dev, 0, "zpos", min, max);
sys/dev/drm/drm_blend.c
356
drm_object_attach_property(&plane->base, prop, zpos);
sys/dev/drm/drm_blend.c
358
plane->zpos_property = prop;
sys/dev/drm/drm_blend.c
360
if (plane->state) {
sys/dev/drm/drm_blend.c
361
plane->state->zpos = zpos;
sys/dev/drm/drm_blend.c
362
plane->state->normalized_zpos = zpos;
sys/dev/drm/drm_blend.c
385
int drm_plane_create_zpos_immutable_property(struct drm_plane *plane,
sys/dev/drm/drm_blend.c
390
prop = drm_property_create_range(plane->dev, DRM_MODE_PROP_IMMUTABLE,
sys/dev/drm/drm_blend.c
395
drm_object_attach_property(&plane->base, prop, zpos);
sys/dev/drm/drm_blend.c
397
plane->zpos_property = prop;
sys/dev/drm/drm_blend.c
399
if (plane->state) {
sys/dev/drm/drm_blend.c
400
plane->state->zpos = zpos;
sys/dev/drm/drm_blend.c
401
plane->state->normalized_zpos = zpos;
sys/dev/drm/drm_blend.c
416
return sa->plane->base.id - sb->plane->base.id;
sys/dev/drm/drm_blend.c
426
struct drm_plane *plane;
sys/dev/drm/drm_blend.c
441
drm_for_each_plane_mask(plane, dev, crtc_state->plane_mask) {
sys/dev/drm/drm_blend.c
443
drm_atomic_get_plane_state(state, plane);
sys/dev/drm/drm_blend.c
450
plane->base.id, plane->name,
sys/dev/drm/drm_blend.c
457
plane = states[i]->plane;
sys/dev/drm/drm_blend.c
461
plane->base.id, plane->name, i);
sys/dev/drm/drm_blend.c
493
struct drm_plane *plane;
sys/dev/drm/drm_blend.c
497
for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
sys/dev/drm/drm_blend.c
549
int drm_plane_create_blend_mode_property(struct drm_plane *plane,
sys/dev/drm/drm_blend.c
552
struct drm_device *dev = plane->dev;
sys/dev/drm/drm_blend.c
590
drm_object_attach_property(&plane->base, prop, DRM_MODE_BLEND_PREMULTI);
sys/dev/drm/drm_blend.c
591
plane->blend_mode_property = prop;
sys/dev/drm/drm_color_mgmt.c
412
int drm_plane_create_color_properties(struct drm_plane *plane,
sys/dev/drm/drm_color_mgmt.c
418
struct drm_device *dev = plane->dev;
sys/dev/drm/drm_color_mgmt.c
448
plane->color_encoding_property = prop;
sys/dev/drm/drm_color_mgmt.c
449
drm_object_attach_property(&plane->base, prop, default_encoding);
sys/dev/drm/drm_color_mgmt.c
450
if (plane->state)
sys/dev/drm/drm_color_mgmt.c
451
plane->state->color_encoding = default_encoding;
sys/dev/drm/drm_color_mgmt.c
467
plane->color_range_property = prop;
sys/dev/drm/drm_color_mgmt.c
468
drm_object_attach_property(&plane->base, prop, default_range);
sys/dev/drm/drm_color_mgmt.c
469
if (plane->state)
sys/dev/drm/drm_color_mgmt.c
470
plane->state->color_range = default_range;
sys/dev/drm/drm_crtc.c
405
struct drm_plane *plane;
sys/dev/drm/drm_crtc.c
414
plane = crtc->primary;
sys/dev/drm/drm_crtc.c
418
drm_modeset_lock(&plane->mutex, NULL);
sys/dev/drm/drm_crtc.c
419
if (plane->state && plane->state->fb)
sys/dev/drm/drm_crtc.c
420
crtc_resp->fb_id = plane->state->fb->base.id;
sys/dev/drm/drm_crtc.c
421
else if (!plane->state && plane->fb)
sys/dev/drm/drm_crtc.c
422
crtc_resp->fb_id = plane->fb->base.id;
sys/dev/drm/drm_crtc.c
426
if (plane->state) {
sys/dev/drm/drm_crtc.c
427
crtc_resp->x = plane->state->src_x >> 16;
sys/dev/drm/drm_crtc.c
428
crtc_resp->y = plane->state->src_y >> 16;
sys/dev/drm/drm_crtc.c
430
drm_modeset_unlock(&plane->mutex);
sys/dev/drm/drm_crtc.c
475
struct drm_plane *plane = tmp->primary;
sys/dev/drm/drm_crtc.c
477
plane->old_fb = plane->fb;
sys/dev/drm/drm_crtc.c
484
struct drm_plane *plane = crtc->primary;
sys/dev/drm/drm_crtc.c
486
plane->crtc = fb ? crtc : NULL;
sys/dev/drm/drm_crtc.c
487
plane->fb = fb;
sys/dev/drm/drm_crtc.c
491
struct drm_plane *plane = tmp->primary;
sys/dev/drm/drm_crtc.c
493
if (plane->fb)
sys/dev/drm/drm_crtc.c
494
drm_framebuffer_get(plane->fb);
sys/dev/drm/drm_crtc.c
495
if (plane->old_fb)
sys/dev/drm/drm_crtc.c
496
drm_framebuffer_put(plane->old_fb);
sys/dev/drm/drm_crtc.c
497
plane->old_fb = NULL;
sys/dev/drm/drm_crtc.c
572
struct drm_plane *plane;
sys/dev/drm/drm_crtc.c
599
plane = crtc->primary;
sys/dev/drm/drm_crtc.c
618
if (plane->state)
sys/dev/drm/drm_crtc.c
619
old_fb = plane->state->fb;
sys/dev/drm/drm_crtc.c
621
old_fb = plane->fb;
sys/dev/drm/drm_crtc.c
670
if (!plane->format_default) {
sys/dev/drm/drm_crtc.c
671
ret = drm_plane_check_pixel_format(plane,
sys/dev/drm/drm_crtc_helper.c
1074
struct drm_plane *plane = crtc->primary;
sys/dev/drm/drm_crtc_helper.c
1076
if (plane->funcs->atomic_duplicate_state)
sys/dev/drm/drm_crtc_helper.c
1077
plane_state = plane->funcs->atomic_duplicate_state(plane);
sys/dev/drm/drm_crtc_helper.c
1079
if (!plane->state)
sys/dev/drm/drm_crtc_helper.c
1080
drm_atomic_helper_plane_reset(plane);
sys/dev/drm/drm_crtc_helper.c
1082
plane_state = drm_atomic_helper_plane_duplicate_state(plane);
sys/dev/drm/drm_crtc_helper.c
1086
plane_state->plane = plane;
sys/dev/drm/drm_crtc_helper.c
1099
return drm_plane_helper_commit(plane, plane_state, old_fb);
sys/dev/drm/drm_crtc_internal.h
230
int drm_plane_check_pixel_format(struct drm_plane *plane,
sys/dev/drm/drm_fb_helper.c
2510
struct drm_plane *plane = fb_crtc->mode_set.crtc->primary;
sys/dev/drm/drm_fb_helper.c
2535
if (rotation != DRM_MODE_ROTATE_180 || !plane->rotation_property) {
sys/dev/drm/drm_fb_helper.c
2540
for (i = 0; i < plane->rotation_property->num_values; i++)
sys/dev/drm/drm_fb_helper.c
2541
valid_mask |= (1ULL << plane->rotation_property->values[i]);
sys/dev/drm/drm_fb_helper.c
394
struct drm_plane *plane;
sys/dev/drm/drm_fb_helper.c
409
drm_for_each_plane(plane, dev) {
sys/dev/drm/drm_fb_helper.c
410
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/drm_fb_helper.c
419
if (plane->type == DRM_PLANE_TYPE_PRIMARY)
sys/dev/drm/drm_fb_helper.c
422
ret = __drm_atomic_helper_disable_plane(plane, plane_state);
sys/dev/drm/drm_fb_helper.c
474
struct drm_plane *plane;
sys/dev/drm/drm_fb_helper.c
478
drm_for_each_plane(plane, dev) {
sys/dev/drm/drm_fb_helper.c
479
if (plane->type != DRM_PLANE_TYPE_PRIMARY)
sys/dev/drm/drm_fb_helper.c
480
drm_plane_force_disable(plane);
sys/dev/drm/drm_fb_helper.c
482
if (plane->rotation_property)
sys/dev/drm/drm_fb_helper.c
483
drm_mode_plane_set_obj_prop(plane,
sys/dev/drm/drm_fb_helper.c
484
plane->rotation_property,
sys/dev/drm/drm_fourcc.c
310
int drm_format_plane_cpp(uint32_t format, int plane)
sys/dev/drm/drm_fourcc.c
315
if (!info || plane >= info->num_planes)
sys/dev/drm/drm_fourcc.c
318
return info->cpp[plane];
sys/dev/drm/drm_fourcc.c
365
int drm_format_plane_width(int width, uint32_t format, int plane)
sys/dev/drm/drm_fourcc.c
370
if (!info || plane >= info->num_planes)
sys/dev/drm/drm_fourcc.c
373
if (plane == 0)
sys/dev/drm/drm_fourcc.c
389
int drm_format_plane_height(int height, uint32_t format, int plane)
sys/dev/drm/drm_fourcc.c
394
if (!info || plane >= info->num_planes)
sys/dev/drm/drm_fourcc.c
397
if (plane == 0)
sys/dev/drm/drm_framebuffer.c
1018
const struct drm_framebuffer *fb, int plane)
sys/dev/drm/drm_framebuffer.c
1020
if (plane >= fb->format->num_planes)
sys/dev/drm/drm_framebuffer.c
1023
return fb_plane_width(width, fb->format, plane);
sys/dev/drm/drm_framebuffer.c
1037
const struct drm_framebuffer *fb, int plane)
sys/dev/drm/drm_framebuffer.c
1039
if (plane >= fb->format->num_planes)
sys/dev/drm/drm_framebuffer.c
1042
return fb_plane_height(height, fb->format, plane);
sys/dev/drm/drm_framebuffer.c
148
const struct drm_format_info *format, int plane)
sys/dev/drm/drm_framebuffer.c
150
if (plane == 0)
sys/dev/drm/drm_framebuffer.c
157
const struct drm_format_info *format, int plane)
sys/dev/drm/drm_framebuffer.c
159
if (plane == 0)
sys/dev/drm/drm_framebuffer.c
845
struct drm_plane *plane;
sys/dev/drm/drm_framebuffer.c
868
drm_for_each_plane(plane, dev) {
sys/dev/drm/drm_framebuffer.c
871
if (plane->state->fb != fb)
sys/dev/drm/drm_framebuffer.c
874
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/drm_framebuffer.c
880
if (disable_crtcs && plane_state->crtc->primary == plane) {
sys/dev/drm/drm_framebuffer.c
900
plane_mask |= drm_plane_mask(plane);
sys/dev/drm/drm_framebuffer.c
939
struct drm_plane *plane;
sys/dev/drm/drm_framebuffer.c
951
drm_for_each_plane(plane, dev) {
sys/dev/drm/drm_framebuffer.c
952
if (plane->fb == fb)
sys/dev/drm/drm_framebuffer.c
953
drm_plane_force_disable(plane);
sys/dev/drm/drm_gem_framebuffer_helper.c
251
int drm_gem_fb_prepare_fb(struct drm_plane *plane,
sys/dev/drm/drm_gem_framebuffer_helper.c
284
return drm_gem_fb_prepare_fb(&pipe->plane, plane_state);
sys/dev/drm/drm_gem_framebuffer_helper.c
52
unsigned int plane)
sys/dev/drm/drm_gem_framebuffer_helper.c
54
if (plane >= 4)
sys/dev/drm/drm_gem_framebuffer_helper.c
57
return fb->obj[plane];
sys/dev/drm/drm_mode_config.c
178
struct drm_plane *plane;
sys/dev/drm/drm_mode_config.c
183
drm_for_each_plane(plane, dev)
sys/dev/drm/drm_mode_config.c
184
if (plane->funcs->reset)
sys/dev/drm/drm_mode_config.c
185
plane->funcs->reset(plane);
sys/dev/drm/drm_mode_config.c
425
struct drm_plane *plane, *plt;
sys/dev/drm/drm_mode_config.c
455
list_for_each_entry_safe(plane, plt, &dev->mode_config.plane_list,
sys/dev/drm/drm_mode_config.c
457
plane->funcs->destroy(plane);
sys/dev/drm/drm_modeset_lock.c
419
struct drm_plane *plane;
sys/dev/drm/drm_modeset_lock.c
432
drm_for_each_plane(plane, dev) {
sys/dev/drm/drm_modeset_lock.c
433
ret = drm_modeset_lock(&plane->mutex, ctx);
sys/dev/drm/drm_plane.c
1018
struct drm_plane *plane;
sys/dev/drm/drm_plane.c
102
sizeof(struct drm_format_modifier) * plane->modifier_count;
sys/dev/drm/drm_plane.c
1047
plane = crtc->primary;
sys/dev/drm/drm_plane.c
1093
ret = drm_modeset_lock(&plane->mutex, &ctx);
sys/dev/drm/drm_plane.c
1097
if (plane->state)
sys/dev/drm/drm_plane.c
1098
old_fb = plane->state->fb;
sys/dev/drm/drm_plane.c
1100
old_fb = plane->fb;
sys/dev/drm/drm_plane.c
1117
if (plane->state) {
sys/dev/drm/drm_plane.c
1118
const struct drm_plane_state *state = plane->state;
sys/dev/drm/drm_plane.c
1158
plane->old_fb = plane->fb;
sys/dev/drm/drm_plane.c
1171
plane->old_fb = NULL;
sys/dev/drm/drm_plane.c
1173
if (!plane->state) {
sys/dev/drm/drm_plane.c
1174
plane->fb = fb;
sys/dev/drm/drm_plane.c
118
blob_data->count_formats = plane->format_count;
sys/dev/drm/drm_plane.c
1182
if (plane->old_fb)
sys/dev/drm/drm_plane.c
1183
drm_framebuffer_put(plane->old_fb);
sys/dev/drm/drm_plane.c
1184
plane->old_fb = NULL;
sys/dev/drm/drm_plane.c
120
blob_data->count_modifiers = plane->modifier_count;
sys/dev/drm/drm_plane.c
125
memcpy(formats_ptr(blob_data), plane->format_types, formats_size);
sys/dev/drm/drm_plane.c
128
if (!plane->funcs->format_mod_supported)
sys/dev/drm/drm_plane.c
132
for (i = 0; i < plane->modifier_count; i++) {
sys/dev/drm/drm_plane.c
133
for (j = 0; j < plane->format_count; j++) {
sys/dev/drm/drm_plane.c
134
if (plane->funcs->format_mod_supported(plane,
sys/dev/drm/drm_plane.c
135
plane->format_types[j],
sys/dev/drm/drm_plane.c
136
plane->modifiers[i])) {
sys/dev/drm/drm_plane.c
142
mod->modifier = plane->modifiers[i];
sys/dev/drm/drm_plane.c
149
drm_object_attach_property(&plane->base, config->modifiers_property,
sys/dev/drm/drm_plane.c
173
int drm_universal_plane_init(struct drm_device *dev, struct drm_plane *plane,
sys/dev/drm/drm_plane.c
193
ret = drm_mode_object_add(dev, &plane->base, DRM_MODE_OBJECT_PLANE);
sys/dev/drm/drm_plane.c
197
drm_modeset_lock_init(&plane->mutex);
sys/dev/drm/drm_plane.c
199
plane->base.properties = &plane->properties;
sys/dev/drm/drm_plane.c
200
plane->dev = dev;
sys/dev/drm/drm_plane.c
201
plane->funcs = funcs;
sys/dev/drm/drm_plane.c
202
plane->format_types = kmalloc_array(format_count, sizeof(uint32_t),
sys/dev/drm/drm_plane.c
204
if (!plane->format_types) {
sys/dev/drm/drm_plane.c
206
drm_mode_object_unregister(dev, &plane->base);
sys/dev/drm/drm_plane.c
223
plane->modifier_count = format_modifier_count;
sys/dev/drm/drm_plane.c
224
plane->modifiers = kmalloc_array(format_modifier_count,
sys/dev/drm/drm_plane.c
228
if (format_modifier_count && !plane->modifiers) {
sys/dev/drm/drm_plane.c
230
kfree(plane->format_types);
sys/dev/drm/drm_plane.c
231
drm_mode_object_unregister(dev, &plane->base);
sys/dev/drm/drm_plane.c
239
plane->name = kvasprintf(GFP_KERNEL, name, ap);
sys/dev/drm/drm_plane.c
242
plane->name = kasprintf(GFP_KERNEL, "plane-%d",
sys/dev/drm/drm_plane.c
245
if (!plane->name) {
sys/dev/drm/drm_plane.c
246
kfree(plane->format_types);
sys/dev/drm/drm_plane.c
247
kfree(plane->modifiers);
sys/dev/drm/drm_plane.c
248
drm_mode_object_unregister(dev, &plane->base);
sys/dev/drm/drm_plane.c
252
memcpy(plane->format_types, formats, format_count * sizeof(uint32_t));
sys/dev/drm/drm_plane.c
253
plane->format_count = format_count;
sys/dev/drm/drm_plane.c
254
memcpy(plane->modifiers, format_modifiers,
sys/dev/drm/drm_plane.c
256
plane->possible_crtcs = possible_crtcs;
sys/dev/drm/drm_plane.c
257
plane->type = type;
sys/dev/drm/drm_plane.c
259
list_add_tail(&plane->head, &config->plane_list);
sys/dev/drm/drm_plane.c
260
plane->index = config->num_total_plane++;
sys/dev/drm/drm_plane.c
262
drm_object_attach_property(&plane->base,
sys/dev/drm/drm_plane.c
264
plane->type);
sys/dev/drm/drm_plane.c
267
drm_object_attach_property(&plane->base, config->prop_fb_id, 0);
sys/dev/drm/drm_plane.c
268
drm_object_attach_property(&plane->base, config->prop_in_fence_fd, -1);
sys/dev/drm/drm_plane.c
269
drm_object_attach_property(&plane->base, config->prop_crtc_id, 0);
sys/dev/drm/drm_plane.c
270
drm_object_attach_property(&plane->base, config->prop_crtc_x, 0);
sys/dev/drm/drm_plane.c
271
drm_object_attach_property(&plane->base, config->prop_crtc_y, 0);
sys/dev/drm/drm_plane.c
272
drm_object_attach_property(&plane->base, config->prop_crtc_w, 0);
sys/dev/drm/drm_plane.c
273
drm_object_attach_property(&plane->base, config->prop_crtc_h, 0);
sys/dev/drm/drm_plane.c
274
drm_object_attach_property(&plane->base, config->prop_src_x, 0);
sys/dev/drm/drm_plane.c
275
drm_object_attach_property(&plane->base, config->prop_src_y, 0);
sys/dev/drm/drm_plane.c
276
drm_object_attach_property(&plane->base, config->prop_src_w, 0);
sys/dev/drm/drm_plane.c
277
drm_object_attach_property(&plane->base, config->prop_src_h, 0);
sys/dev/drm/drm_plane.c
281
create_in_format_blob(dev, plane);
sys/dev/drm/drm_plane.c
289
struct drm_plane *plane;
sys/dev/drm/drm_plane.c
292
drm_for_each_plane(plane, dev) {
sys/dev/drm/drm_plane.c
293
if (plane->funcs->late_register)
sys/dev/drm/drm_plane.c
294
ret = plane->funcs->late_register(plane);
sys/dev/drm/drm_plane.c
304
struct drm_plane *plane;
sys/dev/drm/drm_plane.c
306
drm_for_each_plane(plane, dev) {
sys/dev/drm/drm_plane.c
307
if (plane->funcs->early_unregister)
sys/dev/drm/drm_plane.c
308
plane->funcs->early_unregister(plane);
sys/dev/drm/drm_plane.c
329
int drm_plane_init(struct drm_device *dev, struct drm_plane *plane,
sys/dev/drm/drm_plane.c
338
return drm_universal_plane_init(dev, plane, possible_crtcs, funcs,
sys/dev/drm/drm_plane.c
352
void drm_plane_cleanup(struct drm_plane *plane)
sys/dev/drm/drm_plane.c
354
struct drm_device *dev = plane->dev;
sys/dev/drm/drm_plane.c
356
drm_modeset_lock_fini(&plane->mutex);
sys/dev/drm/drm_plane.c
358
kfree(plane->format_types);
sys/dev/drm/drm_plane.c
359
kfree(plane->modifiers);
sys/dev/drm/drm_plane.c
360
drm_mode_object_unregister(dev, &plane->base);
sys/dev/drm/drm_plane.c
362
BUG_ON(list_empty(&plane->head));
sys/dev/drm/drm_plane.c
369
list_del(&plane->head);
sys/dev/drm/drm_plane.c
372
WARN_ON(plane->state && !plane->funcs->atomic_destroy_state);
sys/dev/drm/drm_plane.c
373
if (plane->state && plane->funcs->atomic_destroy_state)
sys/dev/drm/drm_plane.c
374
plane->funcs->atomic_destroy_state(plane, plane->state);
sys/dev/drm/drm_plane.c
376
kfree(plane->name);
sys/dev/drm/drm_plane.c
378
memset(plane, 0, sizeof(*plane));
sys/dev/drm/drm_plane.c
393
struct drm_plane *plane;
sys/dev/drm/drm_plane.c
395
drm_for_each_plane(plane, dev)
sys/dev/drm/drm_plane.c
396
if (idx == plane->index)
sys/dev/drm/drm_plane.c
397
return plane;
sys/dev/drm/drm_plane.c
418
void drm_plane_force_disable(struct drm_plane *plane)
sys/dev/drm/drm_plane.c
422
if (!plane->fb)
sys/dev/drm/drm_plane.c
425
WARN_ON(drm_drv_uses_atomic_modeset(plane->dev));
sys/dev/drm/drm_plane.c
427
plane->old_fb = plane->fb;
sys/dev/drm/drm_plane.c
428
ret = plane->funcs->disable_plane(plane, NULL);
sys/dev/drm/drm_plane.c
431
plane->old_fb = NULL;
sys/dev/drm/drm_plane.c
435
drm_framebuffer_put(plane->old_fb);
sys/dev/drm/drm_plane.c
436
plane->old_fb = NULL;
sys/dev/drm/drm_plane.c
437
plane->fb = NULL;
sys/dev/drm/drm_plane.c
438
plane->crtc = NULL;
sys/dev/drm/drm_plane.c
455
int drm_mode_plane_set_obj_prop(struct drm_plane *plane,
sys/dev/drm/drm_plane.c
460
struct drm_mode_object *obj = &plane->base;
sys/dev/drm/drm_plane.c
462
if (plane->funcs->set_property)
sys/dev/drm/drm_plane.c
463
ret = plane->funcs->set_property(plane, property, value);
sys/dev/drm/drm_plane.c
475
struct drm_plane *plane;
sys/dev/drm/drm_plane.c
488
drm_for_each_plane(plane, dev) {
sys/dev/drm/drm_plane.c
493
if (plane->type != DRM_PLANE_TYPE_OVERLAY &&
sys/dev/drm/drm_plane.c
497
if (drm_lease_held(file_priv, plane->base.id)) {
sys/dev/drm/drm_plane.c
499
put_user(plane->base.id, plane_ptr + count))
sys/dev/drm/drm_plane.c
513
struct drm_plane *plane;
sys/dev/drm/drm_plane.c
519
plane = drm_plane_find(dev, file_priv, plane_resp->plane_id);
sys/dev/drm/drm_plane.c
520
if (!plane)
sys/dev/drm/drm_plane.c
523
drm_modeset_lock(&plane->mutex, NULL);
sys/dev/drm/drm_plane.c
524
if (plane->state && plane->state->crtc && drm_lease_held(file_priv, plane->state->crtc->base.id))
sys/dev/drm/drm_plane.c
525
plane_resp->crtc_id = plane->state->crtc->base.id;
sys/dev/drm/drm_plane.c
526
else if (!plane->state && plane->crtc && drm_lease_held(file_priv, plane->crtc->base.id))
sys/dev/drm/drm_plane.c
527
plane_resp->crtc_id = plane->crtc->base.id;
sys/dev/drm/drm_plane.c
531
if (plane->state && plane->state->fb)
sys/dev/drm/drm_plane.c
532
plane_resp->fb_id = plane->state->fb->base.id;
sys/dev/drm/drm_plane.c
533
else if (!plane->state && plane->fb)
sys/dev/drm/drm_plane.c
534
plane_resp->fb_id = plane->fb->base.id;
sys/dev/drm/drm_plane.c
537
drm_modeset_unlock(&plane->mutex);
sys/dev/drm/drm_plane.c
539
plane_resp->plane_id = plane->base.id;
sys/dev/drm/drm_plane.c
541
plane->possible_crtcs);
sys/dev/drm/drm_plane.c
549
if (plane->format_count &&
sys/dev/drm/drm_plane.c
550
(plane_resp->count_format_types >= plane->format_count)) {
sys/dev/drm/drm_plane.c
553
plane->format_types,
sys/dev/drm/drm_plane.c
554
sizeof(uint32_t) * plane->format_count)) {
sys/dev/drm/drm_plane.c
558
plane_resp->count_format_types = plane->format_count;
sys/dev/drm/drm_plane.c
563
int drm_plane_check_pixel_format(struct drm_plane *plane,
sys/dev/drm/drm_plane.c
568
for (i = 0; i < plane->format_count; i++) {
sys/dev/drm/drm_plane.c
569
if (format == plane->format_types[i])
sys/dev/drm/drm_plane.c
572
if (i == plane->format_count)
sys/dev/drm/drm_plane.c
575
if (plane->funcs->format_mod_supported) {
sys/dev/drm/drm_plane.c
576
if (!plane->funcs->format_mod_supported(plane, format, modifier))
sys/dev/drm/drm_plane.c
579
if (!plane->modifier_count)
sys/dev/drm/drm_plane.c
582
for (i = 0; i < plane->modifier_count; i++) {
sys/dev/drm/drm_plane.c
583
if (modifier == plane->modifiers[i])
sys/dev/drm/drm_plane.c
586
if (i == plane->modifier_count)
sys/dev/drm/drm_plane.c
593
static int __setplane_check(struct drm_plane *plane,
sys/dev/drm/drm_plane.c
604
if (!(plane->possible_crtcs & drm_crtc_mask(crtc))) {
sys/dev/drm/drm_plane.c
610
ret = drm_plane_check_pixel_format(plane, fb->format->format,
sys/dev/drm/drm_plane.c
647
static int __setplane_internal(struct drm_plane *plane,
sys/dev/drm/drm_plane.c
659
WARN_ON(drm_drv_uses_atomic_modeset(plane->dev));
sys/dev/drm/drm_plane.c
663
plane->old_fb = plane->fb;
sys/dev/drm/drm_plane.c
664
ret = plane->funcs->disable_plane(plane, ctx);
sys/dev/drm/drm_plane.c
666
plane->crtc = NULL;
sys/dev/drm/drm_plane.c
667
plane->fb = NULL;
sys/dev/drm/drm_plane.c
669
plane->old_fb = NULL;
sys/dev/drm/drm_plane.c
674
ret = __setplane_check(plane, crtc, fb,
sys/dev/drm/drm_plane.c
680
plane->old_fb = plane->fb;
sys/dev/drm/drm_plane.c
681
ret = plane->funcs->update_plane(plane, crtc, fb,
sys/dev/drm/drm_plane.c
685
plane->crtc = crtc;
sys/dev/drm/drm_plane.c
686
plane->fb = fb;
sys/dev/drm/drm_plane.c
687
drm_framebuffer_get(plane->fb);
sys/dev/drm/drm_plane.c
689
plane->old_fb = NULL;
sys/dev/drm/drm_plane.c
693
if (plane->old_fb)
sys/dev/drm/drm_plane.c
694
drm_framebuffer_put(plane->old_fb);
sys/dev/drm/drm_plane.c
695
plane->old_fb = NULL;
sys/dev/drm/drm_plane.c
700
static int __setplane_atomic(struct drm_plane *plane,
sys/dev/drm/drm_plane.c
711
WARN_ON(!drm_drv_uses_atomic_modeset(plane->dev));
sys/dev/drm/drm_plane.c
715
return plane->funcs->disable_plane(plane, ctx);
sys/dev/drm/drm_plane.c
724
ret = __setplane_check(plane, crtc, fb,
sys/dev/drm/drm_plane.c
730
return plane->funcs->update_plane(plane, crtc, fb,
sys/dev/drm/drm_plane.c
735
static int setplane_internal(struct drm_plane *plane,
sys/dev/drm/drm_plane.c
749
ret = drm_modeset_lock_all_ctx(plane->dev, &ctx);
sys/dev/drm/drm_plane.c
753
if (drm_drv_uses_atomic_modeset(plane->dev))
sys/dev/drm/drm_plane.c
754
ret = __setplane_atomic(plane, crtc, fb,
sys/dev/drm/drm_plane.c
758
ret = __setplane_internal(plane, crtc, fb,
sys/dev/drm/drm_plane.c
778
struct drm_plane *plane;
sys/dev/drm/drm_plane.c
790
plane = drm_plane_find(dev, file_priv, plane_req->plane_id);
sys/dev/drm/drm_plane.c
791
if (!plane) {
sys/dev/drm/drm_plane.c
814
ret = setplane_internal(plane, crtc, fb,
sys/dev/drm/drm_plane.c
832
struct drm_plane *plane = crtc->cursor;
sys/dev/drm/drm_plane.c
846
BUG_ON(!plane);
sys/dev/drm/drm_plane.c
847
WARN_ON(plane->crtc != crtc && plane->crtc != NULL);
sys/dev/drm/drm_plane.c
86
static int create_in_format_blob(struct drm_device *dev, struct drm_plane *plane)
sys/dev/drm/drm_plane.c
868
if (plane->state)
sys/dev/drm/drm_plane.c
869
fb = plane->state->fb;
sys/dev/drm/drm_plane.c
871
fb = plane->fb;
sys/dev/drm/drm_plane.c
893
ret = __setplane_atomic(plane, crtc, fb,
sys/dev/drm/drm_plane.c
897
ret = __setplane_internal(plane, crtc, fb,
sys/dev/drm/drm_plane.c
95
formats_size = sizeof(__u32) * plane->format_count;
sys/dev/drm/drm_plane_helper.c
129
int drm_plane_helper_check_update(struct drm_plane *plane,
sys/dev/drm/drm_plane_helper.c
142
.plane = plane,
sys/dev/drm/drm_plane_helper.c
215
int drm_primary_helper_update(struct drm_plane *plane, struct drm_crtc *crtc,
sys/dev/drm/drm_plane_helper.c
246
ret = drm_plane_helper_check_update(plane, crtc, fb,
sys/dev/drm/drm_plane_helper.c
261
return plane->funcs->disable_plane(plane, ctx);
sys/dev/drm/drm_plane_helper.c
311
int drm_primary_helper_disable(struct drm_plane *plane,
sys/dev/drm/drm_plane_helper.c
326
void drm_primary_helper_destroy(struct drm_plane *plane)
sys/dev/drm/drm_plane_helper.c
328
drm_plane_cleanup(plane);
sys/dev/drm/drm_plane_helper.c
329
kfree(plane);
sys/dev/drm/drm_plane_helper.c
340
int drm_plane_helper_commit(struct drm_plane *plane,
sys/dev/drm/drm_plane_helper.c
349
plane_funcs = plane->helper_private;
sys/dev/drm/drm_plane_helper.c
354
crtc[0] = plane->crtc;
sys/dev/drm/drm_plane_helper.c
361
ret = plane_funcs->atomic_check(plane, plane_state);
sys/dev/drm/drm_plane_helper.c
367
ret = plane_funcs->prepare_fb(plane,
sys/dev/drm/drm_plane_helper.c
374
swap(plane->state, plane_state);
sys/dev/drm/drm_plane_helper.c
385
if (drm_atomic_plane_disabling(plane_state, plane->state) &&
sys/dev/drm/drm_plane_helper.c
387
plane_funcs->atomic_disable(plane, plane_state);
sys/dev/drm/drm_plane_helper.c
389
plane_funcs->atomic_update(plane, plane_state);
sys/dev/drm/drm_plane_helper.c
400
if (plane->state->fb == old_fb)
sys/dev/drm/drm_plane_helper.c
407
if (crtc[i]->cursor == plane)
sys/dev/drm/drm_plane_helper.c
421
plane_funcs->cleanup_fb(plane, plane_state);
sys/dev/drm/drm_plane_helper.c
423
if (plane->funcs->atomic_destroy_state)
sys/dev/drm/drm_plane_helper.c
424
plane->funcs->atomic_destroy_state(plane, plane_state);
sys/dev/drm/drm_plane_helper.c
426
drm_atomic_helper_plane_destroy_state(plane, plane_state);
sys/dev/drm/drm_plane_helper.c
455
int drm_plane_helper_update(struct drm_plane *plane, struct drm_crtc *crtc,
sys/dev/drm/drm_plane_helper.c
465
if (plane->funcs->atomic_duplicate_state)
sys/dev/drm/drm_plane_helper.c
466
plane_state = plane->funcs->atomic_duplicate_state(plane);
sys/dev/drm/drm_plane_helper.c
468
if (!plane->state)
sys/dev/drm/drm_plane_helper.c
469
drm_atomic_helper_plane_reset(plane);
sys/dev/drm/drm_plane_helper.c
471
plane_state = drm_atomic_helper_plane_duplicate_state(plane);
sys/dev/drm/drm_plane_helper.c
475
plane_state->plane = plane;
sys/dev/drm/drm_plane_helper.c
488
return drm_plane_helper_commit(plane, plane_state, plane->fb);
sys/dev/drm/drm_plane_helper.c
506
int drm_plane_helper_disable(struct drm_plane *plane,
sys/dev/drm/drm_plane_helper.c
514
if (!plane->crtc)
sys/dev/drm/drm_plane_helper.c
517
if (plane->funcs->atomic_duplicate_state)
sys/dev/drm/drm_plane_helper.c
518
plane_state = plane->funcs->atomic_duplicate_state(plane);
sys/dev/drm/drm_plane_helper.c
520
if (!plane->state)
sys/dev/drm/drm_plane_helper.c
521
drm_atomic_helper_plane_reset(plane);
sys/dev/drm/drm_plane_helper.c
523
plane_state = drm_atomic_helper_plane_duplicate_state(plane);
sys/dev/drm/drm_plane_helper.c
527
plane_state->plane = plane;
sys/dev/drm/drm_plane_helper.c
533
return drm_plane_helper_commit(plane, plane_state, old_fb);
sys/dev/drm/drm_simple_kms_helper.c
130
static int drm_simple_kms_plane_atomic_check(struct drm_plane *plane,
sys/dev/drm/drm_simple_kms_helper.c
137
pipe = container_of(plane, struct drm_simple_display_pipe, plane);
sys/dev/drm/drm_simple_kms_helper.c
157
static void drm_simple_kms_plane_atomic_update(struct drm_plane *plane,
sys/dev/drm/drm_simple_kms_helper.c
162
pipe = container_of(plane, struct drm_simple_display_pipe, plane);
sys/dev/drm/drm_simple_kms_helper.c
169
static int drm_simple_kms_plane_prepare_fb(struct drm_plane *plane,
sys/dev/drm/drm_simple_kms_helper.c
174
pipe = container_of(plane, struct drm_simple_display_pipe, plane);
sys/dev/drm/drm_simple_kms_helper.c
181
static void drm_simple_kms_plane_cleanup_fb(struct drm_plane *plane,
sys/dev/drm/drm_simple_kms_helper.c
186
pipe = container_of(plane, struct drm_simple_display_pipe, plane);
sys/dev/drm/drm_simple_kms_helper.c
262
struct drm_plane *plane = &pipe->plane;
sys/dev/drm/drm_simple_kms_helper.c
269
drm_plane_helper_add(plane, &drm_simple_kms_plane_helper_funcs);
sys/dev/drm/drm_simple_kms_helper.c
270
ret = drm_universal_plane_init(dev, plane, 0,
sys/dev/drm/drm_simple_kms_helper.c
279
ret = drm_crtc_init_with_planes(dev, crtc, plane, NULL,
sys/dev/drm/drm_simple_kms_helper.c
67
struct drm_plane *plane;
sys/dev/drm/drm_simple_kms_helper.c
74
plane = &pipe->plane;
sys/dev/drm/drm_simple_kms_helper.c
75
pipe->funcs->enable(pipe, crtc->state, plane->state);
sys/dev/drm/i915/i915_drv.h
1181
uint16_t plane[I915_MAX_PLANES];
sys/dev/drm/i915/i915_drv.h
1186
uint16_t plane;
sys/dev/drm/i915/i915_drv.h
1192
uint8_t plane[I915_MAX_PLANES];
sys/dev/drm/i915/i915_drv.h
1232
struct skl_ddb_entry plane[I915_MAX_PIPES][I915_MAX_PLANES];
sys/dev/drm/i915/i915_drv.h
549
} plane;
sys/dev/drm/i915/i915_gem_gtt.c
3807
for (i = 0 ; i < ARRAY_SIZE(rot_info->plane); i++) {
sys/dev/drm/i915/i915_gem_gtt.c
3808
sg = rotate_pages(page_addr_list, rot_info->plane[i].offset,
sys/dev/drm/i915/i915_gem_gtt.c
3809
rot_info->plane[i].width, rot_info->plane[i].height,
sys/dev/drm/i915/i915_gem_gtt.c
3810
rot_info->plane[i].stride, st, sg);
sys/dev/drm/i915/i915_gem_gtt.c
3823
obj->base.size, rot_info->plane[0].width, rot_info->plane[0].height, size);
sys/dev/drm/i915/i915_gem_gtt.h
173
} plane[2];
sys/dev/drm/i915/i915_reg.h
162
#define _PLANE(plane, a, b) _PICK_EVEN(plane, a, b)
sys/dev/drm/i915/i915_reg.h
163
#define _MMIO_PLANE(plane, a, b) _MMIO_PIPE(plane, a, b)
sys/dev/drm/i915/i915_reg.h
2635
#define DISPLAY_PLANE_FLIP_PENDING(plane) (1 << (11 - (plane))) /* A and B only */
sys/dev/drm/i915/i915_reg.h
3006
#define FBC_CTL_PLANE(plane) ((plane) << 0)
sys/dev/drm/i915/i915_reg.h
3019
#define DPFC_CTL_PLANE(plane) ((plane) << 30)
sys/dev/drm/i915/i915_reg.h
3020
#define IVB_DPFC_CTL_PLANE(plane) ((plane) << 29)
sys/dev/drm/i915/i915_reg.h
5957
#define _PLANE_WM_BASE(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
5958
_PLANE(plane, _PLANE_WM_1(pipe), _PLANE_WM_2(pipe))
sys/dev/drm/i915/i915_reg.h
5959
#define PLANE_WM(pipe, plane, level) \
sys/dev/drm/i915/i915_reg.h
5960
_MMIO(_PLANE_WM_BASE(pipe, plane) + ((4) * (level)))
sys/dev/drm/i915/i915_reg.h
5965
#define PLANE_WM_TRANS(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
5966
_MMIO(_PLANE(plane, _PLANE_WM_TRANS_1(pipe), _PLANE_WM_TRANS_2(pipe)))
sys/dev/drm/i915/i915_reg.h
6156
#define DSPCNTR(plane) _MMIO_PIPE2(plane, _DSPACNTR)
sys/dev/drm/i915/i915_reg.h
6157
#define DSPADDR(plane) _MMIO_PIPE2(plane, _DSPAADDR)
sys/dev/drm/i915/i915_reg.h
6158
#define DSPSTRIDE(plane) _MMIO_PIPE2(plane, _DSPASTRIDE)
sys/dev/drm/i915/i915_reg.h
6159
#define DSPPOS(plane) _MMIO_PIPE2(plane, _DSPAPOS)
sys/dev/drm/i915/i915_reg.h
6160
#define DSPSIZE(plane) _MMIO_PIPE2(plane, _DSPASIZE)
sys/dev/drm/i915/i915_reg.h
6161
#define DSPSURF(plane) _MMIO_PIPE2(plane, _DSPASURF)
sys/dev/drm/i915/i915_reg.h
6162
#define DSPTILEOFF(plane) _MMIO_PIPE2(plane, _DSPATILEOFF)
sys/dev/drm/i915/i915_reg.h
6163
#define DSPLINOFF(plane) DSPADDR(plane)
sys/dev/drm/i915/i915_reg.h
6164
#define DSPOFFSET(plane) _MMIO_PIPE2(plane, _DSPAOFFSET)
sys/dev/drm/i915/i915_reg.h
6165
#define DSPSURFLIVE(plane) _MMIO_PIPE2(plane, _DSPASURFLIVE)
sys/dev/drm/i915/i915_reg.h
6181
#define PRIMPOS(plane) _MMIO_TRANS2(plane, _PRIMPOS_A)
sys/dev/drm/i915/i915_reg.h
6182
#define PRIMSIZE(plane) _MMIO_TRANS2(plane, _PRIMSIZE_A)
sys/dev/drm/i915/i915_reg.h
6183
#define PRIMCNSTALPHA(plane) _MMIO_TRANS2(plane, _PRIMCNSTALPHA_A)
sys/dev/drm/i915/i915_reg.h
6595
#define PLANE_CTL(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6596
_MMIO_PLANE(plane, _PLANE_CTL_1(pipe), _PLANE_CTL_2(pipe))
sys/dev/drm/i915/i915_reg.h
6607
#define PLANE_STRIDE(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6608
_MMIO_PLANE(plane, _PLANE_STRIDE_1(pipe), _PLANE_STRIDE_2(pipe))
sys/dev/drm/i915/i915_reg.h
6616
#define PLANE_POS(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6617
_MMIO_PLANE(plane, _PLANE_POS_1(pipe), _PLANE_POS_2(pipe))
sys/dev/drm/i915/i915_reg.h
6625
#define PLANE_SIZE(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6626
_MMIO_PLANE(plane, _PLANE_SIZE_1(pipe), _PLANE_SIZE_2(pipe))
sys/dev/drm/i915/i915_reg.h
6634
#define PLANE_SURF(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6635
_MMIO_PLANE(plane, _PLANE_SURF_1(pipe), _PLANE_SURF_2(pipe))
sys/dev/drm/i915/i915_reg.h
6641
#define PLANE_OFFSET(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6642
_MMIO_PLANE(plane, _PLANE_OFFSET_1(pipe), _PLANE_OFFSET_2(pipe))
sys/dev/drm/i915/i915_reg.h
6648
#define PLANE_KEYVAL(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6649
_MMIO_PLANE(plane, _PLANE_KEYVAL_1(pipe), _PLANE_KEYVAL_2(pipe))
sys/dev/drm/i915/i915_reg.h
6655
#define PLANE_KEYMSK(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6656
_MMIO_PLANE(plane, _PLANE_KEYMSK_1(pipe), _PLANE_KEYMSK_2(pipe))
sys/dev/drm/i915/i915_reg.h
6662
#define PLANE_KEYMAX(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6663
_MMIO_PLANE(plane, _PLANE_KEYMAX_1(pipe), _PLANE_KEYMAX_2(pipe))
sys/dev/drm/i915/i915_reg.h
6674
#define PLANE_BUF_CFG(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6675
_MMIO_PLANE(plane, _PLANE_BUF_CFG_1(pipe), _PLANE_BUF_CFG_2(pipe))
sys/dev/drm/i915/i915_reg.h
6683
#define PLANE_NV12_BUF_CFG(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6684
_MMIO_PLANE(plane, _PLANE_NV12_BUF_CFG_1(pipe), _PLANE_NV12_BUF_CFG_2(pipe))
sys/dev/drm/i915/i915_reg.h
6692
#define PLANE_AUX_DIST(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6693
_MMIO_PLANE(plane, _PLANE_AUX_DIST_1(pipe), _PLANE_AUX_DIST_2(pipe))
sys/dev/drm/i915/i915_reg.h
6701
#define PLANE_AUX_OFFSET(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6702
_MMIO_PLANE(plane, _PLANE_AUX_OFFSET_1(pipe), _PLANE_AUX_OFFSET_2(pipe))
sys/dev/drm/i915/i915_reg.h
6711
#define PLANE_COLOR_CTL(pipe, plane) \
sys/dev/drm/i915/i915_reg.h
6712
_MMIO_PLANE(plane, _PLANE_COLOR_CTL_1(pipe), _PLANE_COLOR_CTL_2(pipe))
sys/dev/drm/i915/i915_reg.h
6863
#define PS_PLANE_SEL(plane) (((plane) + 1) << 25)
sys/dev/drm/i915/i915_reg.h
7004
#define DE_PLANE_FLIP_DONE(plane) (1 << (26 + (plane)))
sys/dev/drm/i915/i915_reg.h
7046
#define DE_PLANE_FLIP_DONE_IVB(plane) (1 << (3 + 5 * (plane)))
sys/dev/drm/i915/i915_trace.h
86
#define trace_intel_disable_plane(plane, crtc)
sys/dev/drm/i915/i915_trace.h
91
#define trace_intel_update_plane(plane, crtc)
sys/dev/drm/i915/intel_atomic.c
227
struct drm_plane *plane = NULL;
sys/dev/drm/i915/intel_atomic.c
279
plane = drm_state->planes[i].ptr;
sys/dev/drm/i915/intel_atomic.c
285
if (!plane) {
sys/dev/drm/i915/intel_atomic.c
287
plane = drm_plane_from_index(&dev_priv->drm, i);
sys/dev/drm/i915/intel_atomic.c
288
state = drm_atomic_get_plane_state(drm_state, plane);
sys/dev/drm/i915/intel_atomic.c
291
plane->base.id);
sys/dev/drm/i915/intel_atomic.c
303
intel_plane = to_intel_plane(plane);
sys/dev/drm/i915/intel_atomic.c
304
idx = plane->base.id;
sys/dev/drm/i915/intel_atomic_plane.c
102
intel_plane_destroy_state(struct drm_plane *plane,
sys/dev/drm/i915/intel_atomic_plane.c
107
drm_atomic_helper_plane_destroy_state(plane, state);
sys/dev/drm/i915/intel_atomic_plane.c
115
struct drm_plane *plane = intel_state->base.plane;
sys/dev/drm/i915/intel_atomic_plane.c
117
struct intel_plane *intel_plane = to_intel_plane(plane);
sys/dev/drm/i915/intel_atomic_plane.c
145
static int intel_plane_atomic_check(struct drm_plane *plane,
sys/dev/drm/i915/intel_atomic_plane.c
150
drm_atomic_get_old_plane_state(state, plane);
sys/dev/drm/i915/intel_atomic_plane.c
167
static void intel_plane_atomic_update(struct drm_plane *plane,
sys/dev/drm/i915/intel_atomic_plane.c
171
struct intel_plane *intel_plane = to_intel_plane(plane);
sys/dev/drm/i915/intel_atomic_plane.c
180
trace_intel_update_plane(plane,
sys/dev/drm/i915/intel_atomic_plane.c
186
trace_intel_disable_plane(plane,
sys/dev/drm/i915/intel_atomic_plane.c
212
intel_plane_atomic_get_property(struct drm_plane *plane,
sys/dev/drm/i915/intel_atomic_plane.c
235
intel_plane_atomic_set_property(struct drm_plane *plane,
sys/dev/drm/i915/intel_atomic_plane.c
49
intel_create_plane_state(struct drm_plane *plane)
sys/dev/drm/i915/intel_atomic_plane.c
57
state->base.plane = plane;
sys/dev/drm/i915/intel_atomic_plane.c
73
intel_plane_duplicate_state(struct drm_plane *plane)
sys/dev/drm/i915/intel_atomic_plane.c
78
intel_state = kmemdup(plane->state, sizeof(*intel_state), GFP_KERNEL);
sys/dev/drm/i915/intel_atomic_plane.c
85
__drm_atomic_helper_plane_duplicate_state(plane, state);
sys/dev/drm/i915/intel_display.c
10007
i9xx_cursor_max_stride(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
10011
return plane->base.dev->mode_config.cursor_width * 4;
sys/dev/drm/i915/intel_display.c
10018
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_display.c
10059
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_display.c
10097
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_display.c
10098
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
10100
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_display.c
10149
static void i9xx_update_cursor(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
10153
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
10154
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_display.c
10188
if (plane->cursor.base != base ||
sys/dev/drm/i915/intel_display.c
10189
plane->cursor.size != fbc_ctl ||
sys/dev/drm/i915/intel_display.c
10190
plane->cursor.cntl != cntl) {
sys/dev/drm/i915/intel_display.c
10197
plane->cursor.base = base;
sys/dev/drm/i915/intel_display.c
10198
plane->cursor.size = fbc_ctl;
sys/dev/drm/i915/intel_display.c
10199
plane->cursor.cntl = cntl;
sys/dev/drm/i915/intel_display.c
10210
static void i9xx_disable_cursor(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
10213
i9xx_update_cursor(plane, NULL, NULL);
sys/dev/drm/i915/intel_display.c
10216
static bool i9xx_cursor_get_hw_state(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
10219
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
10229
power_domain = POWER_DOMAIN_PIPE(plane->pipe);
sys/dev/drm/i915/intel_display.c
10233
val = I915_READ(CURCNTR(plane->pipe));
sys/dev/drm/i915/intel_display.c
10238
*pipe = plane->pipe;
sys/dev/drm/i915/intel_display.c
10279
struct drm_plane *plane;
sys/dev/drm/i915/intel_display.c
10287
for_each_new_plane_in_state(state, plane, plane_state, i) {
sys/dev/drm/i915/intel_display.c
10685
static bool intel_wm_need_update(struct drm_plane *plane,
sys/dev/drm/i915/intel_display.c
10689
struct intel_plane_state *cur = to_intel_plane_state(plane->state);
sys/dev/drm/i915/intel_display.c
10727
struct intel_plane *plane = to_intel_plane(plane_state->plane);
sys/dev/drm/i915/intel_display.c
10737
if (INTEL_GEN(dev_priv) >= 9 && plane->id != PLANE_CURSOR) {
sys/dev/drm/i915/intel_display.c
10763
to_intel_crtc_state(crtc_state)->active_planes &= ~BIT(plane->id);
sys/dev/drm/i915/intel_display.c
10777
plane->base.base.id, plane->base.name,
sys/dev/drm/i915/intel_display.c
10781
plane->base.base.id, plane->base.name,
sys/dev/drm/i915/intel_display.c
10790
if (plane->id != PLANE_CURSOR)
sys/dev/drm/i915/intel_display.c
10797
if (plane->id != PLANE_CURSOR)
sys/dev/drm/i915/intel_display.c
10799
} else if (intel_wm_need_update(&plane->base, plane_state)) {
sys/dev/drm/i915/intel_display.c
10808
pipe_config->fb_bits |= plane->frontbuffer_bit;
sys/dev/drm/i915/intel_display.c
10816
if (plane->id == PLANE_SPRITE0 && IS_IVYBRIDGE(dev_priv) &&
sys/dev/drm/i915/intel_display.c
11104
struct drm_plane *plane;
sys/dev/drm/i915/intel_display.c
11174
list_for_each_entry(plane, &dev->mode_config.plane_list, head) {
sys/dev/drm/i915/intel_display.c
11176
intel_plane = to_intel_plane(plane);
sys/dev/drm/i915/intel_display.c
11180
state = to_intel_plane_state(plane->state);
sys/dev/drm/i915/intel_display.c
11184
plane->base.id, plane->name, state->scaler_id);
sys/dev/drm/i915/intel_display.c
11189
plane->base.id, plane->name,
sys/dev/drm/i915/intel_display.c
11840
int plane, level, max_level = ilk_wm_max_level(dev_priv);
sys/dev/drm/i915/intel_display.c
11857
for_each_universal_plane(dev_priv, pipe, plane) {
sys/dev/drm/i915/intel_display.c
11858
hw_plane_wm = &hw_wm.planes[plane];
sys/dev/drm/i915/intel_display.c
11859
sw_plane_wm = &sw_wm->planes[plane];
sys/dev/drm/i915/intel_display.c
11868
pipe_name(pipe), plane + 1, level,
sys/dev/drm/i915/intel_display.c
11880
pipe_name(pipe), plane + 1,
sys/dev/drm/i915/intel_display.c
11890
hw_ddb_entry = &hw_ddb.plane[pipe][plane];
sys/dev/drm/i915/intel_display.c
11891
sw_ddb_entry = &sw_ddb->plane[pipe][plane];
sys/dev/drm/i915/intel_display.c
11895
pipe_name(pipe), plane + 1,
sys/dev/drm/i915/intel_display.c
11940
hw_ddb_entry = &hw_ddb.plane[pipe][PLANE_CURSOR];
sys/dev/drm/i915/intel_display.c
11941
sw_ddb_entry = &sw_ddb->plane[pipe][PLANE_CURSOR];
sys/dev/drm/i915/intel_display.c
12100
struct intel_plane *plane;
sys/dev/drm/i915/intel_display.c
12104
for_each_new_intel_plane_in_state(state, plane,
sys/dev/drm/i915/intel_display.c
12106
assert_plane(plane, plane_state->base.visible);
sys/dev/drm/i915/intel_display.c
1286
static void assert_plane(struct intel_plane *plane, bool state)
sys/dev/drm/i915/intel_display.c
1291
cur_state = plane->get_hw_state(plane, &pipe);
sys/dev/drm/i915/intel_display.c
1295
plane->base.name, onoff(state), onoff(cur_state));
sys/dev/drm/i915/intel_display.c
12990
struct drm_plane *plane;
sys/dev/drm/i915/intel_display.c
12993
for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i)
sys/dev/drm/i915/intel_display.c
12996
to_intel_plane(plane)->frontbuffer_bit);
sys/dev/drm/i915/intel_display.c
1304
struct intel_plane *plane;
sys/dev/drm/i915/intel_display.c
1306
for_each_intel_plane_on_crtc(&dev_priv->drm, crtc, plane)
sys/dev/drm/i915/intel_display.c
1307
assert_plane_disabled(plane);
sys/dev/drm/i915/intel_display.c
13172
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_display.c
13173
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
13177
if (plane->id == PLANE_CURSOR &&
sys/dev/drm/i915/intel_display.c
13233
intel_prepare_plane_fb(struct drm_plane *plane,
sys/dev/drm/i915/intel_display.c
13238
struct drm_i915_private *dev_priv = to_i915(plane->dev);
sys/dev/drm/i915/intel_display.c
13241
struct drm_i915_gem_object *old_obj = intel_fb_obj(plane->state->fb);
sys/dev/drm/i915/intel_display.c
13247
plane->state->crtc);
sys/dev/drm/i915/intel_display.c
13348
intel_cleanup_plane_fb(struct drm_plane *plane,
sys/dev/drm/i915/intel_display.c
13353
struct drm_i915_private *dev_priv = to_i915(plane->dev);
sys/dev/drm/i915/intel_display.c
13479
void intel_plane_destroy(struct drm_plane *plane)
sys/dev/drm/i915/intel_display.c
13481
drm_plane_cleanup(plane);
sys/dev/drm/i915/intel_display.c
13482
kfree(to_intel_plane(plane));
sys/dev/drm/i915/intel_display.c
13536
struct intel_plane *plane = to_intel_plane(_plane);
sys/dev/drm/i915/intel_display.c
13546
if (!plane->has_ccs)
sys/dev/drm/i915/intel_display.c
13624
intel_legacy_cursor_update(struct drm_plane *plane,
sys/dev/drm/i915/intel_display.c
13636
struct intel_plane *intel_plane = to_intel_plane(plane);
sys/dev/drm/i915/intel_display.c
13648
old_plane_state = plane->state;
sys/dev/drm/i915/intel_display.c
13671
new_plane_state = intel_plane_duplicate_state(plane);
sys/dev/drm/i915/intel_display.c
13688
to_intel_plane_state(plane->state),
sys/dev/drm/i915/intel_display.c
13708
plane->state = new_plane_state;
sys/dev/drm/i915/intel_display.c
13710
if (plane->state->visible) {
sys/dev/drm/i915/intel_display.c
13711
trace_intel_update_plane(plane, to_intel_crtc(crtc));
sys/dev/drm/i915/intel_display.c
13714
to_intel_plane_state(plane->state));
sys/dev/drm/i915/intel_display.c
13716
trace_intel_disable_plane(plane, to_intel_crtc(crtc));
sys/dev/drm/i915/intel_display.c
13726
intel_plane_destroy_state(plane, new_plane_state);
sys/dev/drm/i915/intel_display.c
13728
intel_plane_destroy_state(plane, old_plane_state);
sys/dev/drm/i915/intel_display.c
13732
return drm_atomic_helper_update_plane(plane, crtc, fb,
sys/dev/drm/i915/intel_display.c
14098
struct intel_plane *plane;
sys/dev/drm/i915/intel_display.c
14100
plane = intel_sprite_plane_create(dev_priv, pipe, sprite);
sys/dev/drm/i915/intel_display.c
14101
if (IS_ERR(plane)) {
sys/dev/drm/i915/intel_display.c
14102
ret = PTR_ERR(plane);
sys/dev/drm/i915/intel_display.c
14105
intel_crtc->plane_ids_mask |= BIT(plane->id);
sys/dev/drm/i915/intel_display.c
14531
struct intel_plane *plane;
sys/dev/drm/i915/intel_display.c
14538
plane = to_intel_plane(crtc->base.primary);
sys/dev/drm/i915/intel_display.c
14540
return plane->max_stride(plane, pixel_format, fb_modifier,
sys/dev/drm/i915/intel_display.c
15579
struct intel_plane *plane =
sys/dev/drm/i915/intel_display.c
15584
if (!plane->get_hw_state(plane, &pipe))
sys/dev/drm/i915/intel_display.c
15591
plane->base.name);
sys/dev/drm/i915/intel_display.c
15594
intel_plane_disable_noatomic(plane_crtc, plane);
sys/dev/drm/i915/intel_display.c
15643
struct intel_plane *plane;
sys/dev/drm/i915/intel_display.c
15646
for_each_intel_plane_on_crtc(dev, crtc, plane) {
sys/dev/drm/i915/intel_display.c
15648
to_intel_plane_state(plane->base.state);
sys/dev/drm/i915/intel_display.c
15651
plane->base.type != DRM_PLANE_TYPE_PRIMARY)
sys/dev/drm/i915/intel_display.c
15652
intel_plane_disable_noatomic(crtc, plane);
sys/dev/drm/i915/intel_display.c
15803
struct intel_plane *plane;
sys/dev/drm/i915/intel_display.c
15806
for_each_intel_plane(&dev_priv->drm, plane) {
sys/dev/drm/i915/intel_display.c
15808
to_intel_plane_state(plane->base.state);
sys/dev/drm/i915/intel_display.c
15813
visible = plane->get_hw_state(plane, &pipe);
sys/dev/drm/i915/intel_display.c
16289
} plane[I915_MAX_PIPES];
sys/dev/drm/i915/intel_display.c
16339
error->plane[i].control = I915_READ(DSPCNTR(i));
sys/dev/drm/i915/intel_display.c
16340
error->plane[i].stride = I915_READ(DSPSTRIDE(i));
sys/dev/drm/i915/intel_display.c
16342
error->plane[i].size = I915_READ(DSPSIZE(i));
sys/dev/drm/i915/intel_display.c
16343
error->plane[i].pos = I915_READ(DSPPOS(i));
sys/dev/drm/i915/intel_display.c
16346
error->plane[i].addr = I915_READ(DSPADDR(i));
sys/dev/drm/i915/intel_display.c
16348
error->plane[i].surface = I915_READ(DSPSURF(i));
sys/dev/drm/i915/intel_display.c
16349
error->plane[i].tile_offset = I915_READ(DSPTILEOFF(i));
sys/dev/drm/i915/intel_display.c
16410
err_printf(m, " CNTR: %08x\n", error->plane[i].control);
sys/dev/drm/i915/intel_display.c
16411
err_printf(m, " STRIDE: %08x\n", error->plane[i].stride);
sys/dev/drm/i915/intel_display.c
16413
err_printf(m, " SIZE: %08x\n", error->plane[i].size);
sys/dev/drm/i915/intel_display.c
16414
err_printf(m, " POS: %08x\n", error->plane[i].pos);
sys/dev/drm/i915/intel_display.c
16417
err_printf(m, " ADDR: %08x\n", error->plane[i].addr);
sys/dev/drm/i915/intel_display.c
16419
err_printf(m, " SURF: %08x\n", error->plane[i].surface);
sys/dev/drm/i915/intel_display.c
16420
err_printf(m, " TILEOFF: %08x\n", error->plane[i].tile_offset);
sys/dev/drm/i915/intel_display.c
2003
for (i = 0 ; i < ARRAY_SIZE(rot_info->plane); i++)
sys/dev/drm/i915/intel_display.c
2004
size += rot_info->plane[i].width * rot_info->plane[i].height;
sys/dev/drm/i915/intel_display.c
2075
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_display.c
2076
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
2078
return INTEL_GEN(dev_priv) < 4 || plane->has_fbc;
sys/dev/drm/i915/intel_display.c
2381
struct intel_plane *intel_plane = to_intel_plane(state->base.plane);
sys/dev/drm/i915/intel_display.c
2584
rot_info->plane[i].offset = offset;
sys/dev/drm/i915/intel_display.c
2585
rot_info->plane[i].stride = DIV_ROUND_UP(fb->pitches[i], tile_width * cpp);
sys/dev/drm/i915/intel_display.c
2586
rot_info->plane[i].width = DIV_ROUND_UP(x + width, tile_width);
sys/dev/drm/i915/intel_display.c
2587
rot_info->plane[i].height = DIV_ROUND_UP(y + height, tile_height);
sys/dev/drm/i915/intel_display.c
2590
rot_info->plane[i].height * tile_height;
sys/dev/drm/i915/intel_display.c
2593
size = rot_info->plane[i].stride * rot_info->plane[i].height;
sys/dev/drm/i915/intel_display.c
2607
rot_info->plane[i].width * tile_width,
sys/dev/drm/i915/intel_display.c
2608
rot_info->plane[i].height * tile_height,
sys/dev/drm/i915/intel_display.c
2626
gtt_offset_rotated += rot_info->plane[i].width * rot_info->plane[i].height;
sys/dev/drm/i915/intel_display.c
2783
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_display.c
2788
crtc_state->base.plane_mask |= drm_plane_mask(&plane->base);
sys/dev/drm/i915/intel_display.c
2790
crtc_state->base.plane_mask &= ~drm_plane_mask(&plane->base);
sys/dev/drm/i915/intel_display.c
2800
struct drm_plane *plane;
sys/dev/drm/i915/intel_display.c
2809
drm_for_each_plane_mask(plane, &dev_priv->drm,
sys/dev/drm/i915/intel_display.c
2811
crtc_state->active_planes |= BIT(to_intel_plane(plane)->id);
sys/dev/drm/i915/intel_display.c
2815
struct intel_plane *plane)
sys/dev/drm/i915/intel_display.c
2820
to_intel_plane_state(plane->base.state);
sys/dev/drm/i915/intel_display.c
2825
if (plane->id == PLANE_PRIMARY)
sys/dev/drm/i915/intel_display.c
2828
trace_intel_disable_plane(&plane->base, crtc);
sys/dev/drm/i915/intel_display.c
2829
plane->disable_plane(plane, crtc);
sys/dev/drm/i915/intel_display.c
3226
i9xx_plane_max_stride(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
3230
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
3245
if (plane->i9xx_plane == PLANE_C)
sys/dev/drm/i915/intel_display.c
3256
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_display.c
3317
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_display.c
3394
static void i9xx_update_plane(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
3398
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
3399
enum i9xx_plane_id i9xx_plane = plane->i9xx_plane;
sys/dev/drm/i915/intel_display.c
3457
static void i9xx_disable_plane(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
3460
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
3461
enum i9xx_plane_id i9xx_plane = plane->i9xx_plane;
sys/dev/drm/i915/intel_display.c
3476
static bool i9xx_plane_get_hw_state(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
3479
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
3481
enum i9xx_plane_id i9xx_plane = plane->i9xx_plane;
sys/dev/drm/i915/intel_display.c
3490
power_domain = POWER_DOMAIN_PIPE(plane->pipe);
sys/dev/drm/i915/intel_display.c
3499
*pipe = plane->pipe;
sys/dev/drm/i915/intel_display.c
3691
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_display.c
3733
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_display.c
5034
to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_display.c
6308
struct intel_plane *plane;
sys/dev/drm/i915/intel_display.c
6317
for_each_intel_plane_on_crtc(&dev_priv->drm, intel_crtc, plane) {
sys/dev/drm/i915/intel_display.c
6319
to_intel_plane_state(plane->base.state);
sys/dev/drm/i915/intel_display.c
6322
intel_plane_disable_noatomic(intel_crtc, plane);
sys/dev/drm/i915/intel_display.c
7855
struct intel_plane *plane = to_intel_plane(crtc->base.primary);
sys/dev/drm/i915/intel_display.c
7856
enum i9xx_plane_id i9xx_plane = plane->i9xx_plane;
sys/dev/drm/i915/intel_display.c
7864
if (!plane->get_hw_state(plane, &pipe))
sys/dev/drm/i915/intel_display.c
7925
crtc->base.name, plane->base.name, fb->width, fb->height,
sys/dev/drm/i915/intel_display.c
8894
struct intel_plane *plane = to_intel_plane(crtc->base.primary);
sys/dev/drm/i915/intel_display.c
8895
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_display.c
8903
if (!plane->get_hw_state(plane, &pipe))
sys/dev/drm/i915/intel_display.c
9004
crtc->base.name, plane->base.name, fb->width, fb->height,
sys/dev/drm/i915/intel_display.c
9747
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_display.c
9792
&plane_state->base.plane->dev->mode_config;
sys/dev/drm/i915/intel_display.c
9866
i845_cursor_max_stride(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
9935
static void i845_update_cursor(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
9939
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.c
9959
if (plane->cursor.base != base ||
sys/dev/drm/i915/intel_display.c
9960
plane->cursor.size != size ||
sys/dev/drm/i915/intel_display.c
9961
plane->cursor.cntl != cntl) {
sys/dev/drm/i915/intel_display.c
9968
plane->cursor.base = base;
sys/dev/drm/i915/intel_display.c
9969
plane->cursor.size = size;
sys/dev/drm/i915/intel_display.c
9970
plane->cursor.cntl = cntl;
sys/dev/drm/i915/intel_display.c
9980
static void i845_disable_cursor(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
9983
i845_update_cursor(plane, NULL, NULL);
sys/dev/drm/i915/intel_display.c
9986
static bool i845_cursor_get_hw_state(struct intel_plane *plane,
sys/dev/drm/i915/intel_display.c
9989
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_display.h
380
#define for_each_new_intel_plane_in_state(__state, plane, new_plane_state, __i) \
sys/dev/drm/i915/intel_display.h
383
((plane) = to_intel_plane((__state)->base.planes[__i].ptr), \
sys/dev/drm/i915/intel_display.h
386
for_each_if(plane)
sys/dev/drm/i915/intel_display.h
396
#define for_each_oldnew_intel_plane_in_state(__state, plane, old_plane_state, new_plane_state, __i) \
sys/dev/drm/i915/intel_display.h
399
((plane) = to_intel_plane((__state)->base.planes[__i].ptr), \
sys/dev/drm/i915/intel_display.h
403
for_each_if(plane)
sys/dev/drm/i915/intel_drv.h
1257
intel_get_crtc_for_plane(struct drm_i915_private *dev_priv, enum i9xx_plane_id plane)
sys/dev/drm/i915/intel_drv.h
1259
return dev_priv->plane_to_crtc_mapping[plane];
sys/dev/drm/i915/intel_drv.h
1348
struct intel_plane *plane)
sys/dev/drm/i915/intel_drv.h
1351
&plane->base));
sys/dev/drm/i915/intel_drv.h
1517
int plane);
sys/dev/drm/i915/intel_drv.h
1519
const struct intel_plane_state *state, int plane);
sys/dev/drm/i915/intel_drv.h
1595
int intel_prepare_plane_fb(struct drm_plane *plane,
sys/dev/drm/i915/intel_drv.h
1597
void intel_cleanup_plane_fb(struct drm_plane *plane,
sys/dev/drm/i915/intel_drv.h
1599
int intel_plane_atomic_get_property(struct drm_plane *plane,
sys/dev/drm/i915/intel_drv.h
1603
int intel_plane_atomic_set_property(struct drm_plane *plane,
sys/dev/drm/i915/intel_drv.h
1680
int plane);
sys/dev/drm/i915/intel_drv.h
1684
unsigned int i9xx_plane_max_stride(struct intel_plane *plane,
sys/dev/drm/i915/intel_drv.h
1737
void intel_plane_destroy(struct drm_plane *plane);
sys/dev/drm/i915/intel_drv.h
2140
enum i915_pipe pipe, int plane);
sys/dev/drm/i915/intel_drv.h
2145
void skl_update_plane(struct intel_plane *plane,
sys/dev/drm/i915/intel_drv.h
2148
void skl_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc);
sys/dev/drm/i915/intel_drv.h
2149
bool skl_plane_get_hw_state(struct intel_plane *plane, enum i915_pipe *pipe);
sys/dev/drm/i915/intel_drv.h
2154
unsigned int skl_plane_max_stride(struct intel_plane *plane,
sys/dev/drm/i915/intel_drv.h
2203
struct intel_plane_state *intel_create_plane_state(struct drm_plane *plane);
sys/dev/drm/i915/intel_drv.h
2204
struct drm_plane_state *intel_plane_duplicate_state(struct drm_plane *plane);
sys/dev/drm/i915/intel_drv.h
2205
void intel_plane_destroy_state(struct drm_plane *plane,
sys/dev/drm/i915/intel_drv.h
654
u16 plane[I915_MAX_PLANES];
sys/dev/drm/i915/intel_drv.h
983
unsigned int (*max_stride)(struct intel_plane *plane,
sys/dev/drm/i915/intel_drv.h
986
void (*update_plane)(struct intel_plane *plane,
sys/dev/drm/i915/intel_drv.h
989
void (*disable_plane)(struct intel_plane *plane,
sys/dev/drm/i915/intel_drv.h
991
bool (*get_hw_state)(struct intel_plane *plane, enum i915_pipe *pipe);
sys/dev/drm/i915/intel_fbc.c
1015
struct intel_plane *plane;
sys/dev/drm/i915/intel_fbc.c
1034
for_each_new_intel_plane_in_state(state, plane, plane_state, i) {
sys/dev/drm/i915/intel_fbc.c
1038
if (!plane->has_fbc)
sys/dev/drm/i915/intel_fbc.c
64
return fbc->state_cache.plane.y - fbc->state_cache.plane.adjusted_y;
sys/dev/drm/i915/intel_fbc.c
646
effective_w += fbc->state_cache.plane.adjusted_x;
sys/dev/drm/i915/intel_fbc.c
647
effective_h += fbc->state_cache.plane.adjusted_y;
sys/dev/drm/i915/intel_fbc.c
668
cache->plane.rotation = plane_state->base.rotation;
sys/dev/drm/i915/intel_fbc.c
674
cache->plane.src_w = drm_rect_width(&plane_state->base.src) >> 16;
sys/dev/drm/i915/intel_fbc.c
675
cache->plane.src_h = drm_rect_height(&plane_state->base.src) >> 16;
sys/dev/drm/i915/intel_fbc.c
676
cache->plane.visible = plane_state->base.visible;
sys/dev/drm/i915/intel_fbc.c
677
cache->plane.adjusted_x = plane_state->color_plane[0].x;
sys/dev/drm/i915/intel_fbc.c
678
cache->plane.adjusted_y = plane_state->color_plane[0].y;
sys/dev/drm/i915/intel_fbc.c
679
cache->plane.y = plane_state->base.src.y1 >> 16;
sys/dev/drm/i915/intel_fbc.c
681
if (!cache->plane.visible)
sys/dev/drm/i915/intel_fbc.c
740
cache->plane.rotation != DRM_MODE_ROTATE_0) {
sys/dev/drm/i915/intel_fbc.c
76
*width = cache->plane.src_w;
sys/dev/drm/i915/intel_fbc.c
78
*height = cache->plane.src_h;
sys/dev/drm/i915/intel_fbc.c
784
(fbc->state_cache.plane.adjusted_y & 3)) {
sys/dev/drm/i915/intel_fbc.c
839
params->gen9_wa_cfb_stride = DIV_ROUND_UP(cache->plane.src_w,
sys/dev/drm/i915/intel_pm.c
1000
FW_WM_VLV(wm->pipe[PIPE_B].plane[PLANE_SPRITE1], SPRITED) |
sys/dev/drm/i915/intel_pm.c
1001
FW_WM_VLV(wm->pipe[PIPE_B].plane[PLANE_SPRITE0], SPRITEC));
sys/dev/drm/i915/intel_pm.c
1003
FW_WM_VLV(wm->pipe[PIPE_C].plane[PLANE_SPRITE1], SPRITEF) |
sys/dev/drm/i915/intel_pm.c
1004
FW_WM_VLV(wm->pipe[PIPE_C].plane[PLANE_SPRITE0], SPRITEE));
sys/dev/drm/i915/intel_pm.c
1006
FW_WM_VLV(wm->pipe[PIPE_C].plane[PLANE_PRIMARY], PLANEC) |
sys/dev/drm/i915/intel_pm.c
1007
FW_WM(wm->pipe[PIPE_C].plane[PLANE_CURSOR], CURSORC));
sys/dev/drm/i915/intel_pm.c
1009
FW_WM(wm->sr.plane >> 9, SR_HI) |
sys/dev/drm/i915/intel_pm.c
1010
FW_WM(wm->pipe[PIPE_C].plane[PLANE_SPRITE1] >> 8, SPRITEF_HI) |
sys/dev/drm/i915/intel_pm.c
1011
FW_WM(wm->pipe[PIPE_C].plane[PLANE_SPRITE0] >> 8, SPRITEE_HI) |
sys/dev/drm/i915/intel_pm.c
1012
FW_WM(wm->pipe[PIPE_C].plane[PLANE_PRIMARY] >> 8, PLANEC_HI) |
sys/dev/drm/i915/intel_pm.c
1013
FW_WM(wm->pipe[PIPE_B].plane[PLANE_SPRITE1] >> 8, SPRITED_HI) |
sys/dev/drm/i915/intel_pm.c
1014
FW_WM(wm->pipe[PIPE_B].plane[PLANE_SPRITE0] >> 8, SPRITEC_HI) |
sys/dev/drm/i915/intel_pm.c
1015
FW_WM(wm->pipe[PIPE_B].plane[PLANE_PRIMARY] >> 8, PLANEB_HI) |
sys/dev/drm/i915/intel_pm.c
1016
FW_WM(wm->pipe[PIPE_A].plane[PLANE_SPRITE1] >> 8, SPRITEB_HI) |
sys/dev/drm/i915/intel_pm.c
1017
FW_WM(wm->pipe[PIPE_A].plane[PLANE_SPRITE0] >> 8, SPRITEA_HI) |
sys/dev/drm/i915/intel_pm.c
1018
FW_WM(wm->pipe[PIPE_A].plane[PLANE_PRIMARY] >> 8, PLANEA_HI));
sys/dev/drm/i915/intel_pm.c
1021
FW_WM_VLV(wm->pipe[PIPE_B].plane[PLANE_SPRITE1], SPRITED) |
sys/dev/drm/i915/intel_pm.c
1022
FW_WM_VLV(wm->pipe[PIPE_B].plane[PLANE_SPRITE0], SPRITEC));
sys/dev/drm/i915/intel_pm.c
1024
FW_WM(wm->sr.plane >> 9, SR_HI) |
sys/dev/drm/i915/intel_pm.c
1025
FW_WM(wm->pipe[PIPE_B].plane[PLANE_SPRITE1] >> 8, SPRITED_HI) |
sys/dev/drm/i915/intel_pm.c
1026
FW_WM(wm->pipe[PIPE_B].plane[PLANE_SPRITE0] >> 8, SPRITEC_HI) |
sys/dev/drm/i915/intel_pm.c
1027
FW_WM(wm->pipe[PIPE_B].plane[PLANE_PRIMARY] >> 8, PLANEB_HI) |
sys/dev/drm/i915/intel_pm.c
1028
FW_WM(wm->pipe[PIPE_A].plane[PLANE_SPRITE1] >> 8, SPRITEB_HI) |
sys/dev/drm/i915/intel_pm.c
1029
FW_WM(wm->pipe[PIPE_A].plane[PLANE_SPRITE0] >> 8, SPRITEA_HI) |
sys/dev/drm/i915/intel_pm.c
1030
FW_WM(wm->pipe[PIPE_A].plane[PLANE_PRIMARY] >> 8, PLANEA_HI));
sys/dev/drm/i915/intel_pm.c
1094
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_pm.c
1095
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_pm.c
1118
if (IS_GM45(dev_priv) && plane->id == PLANE_PRIMARY &&
sys/dev/drm/i915/intel_pm.c
1127
if (plane->id == PLANE_CURSOR)
sys/dev/drm/i915/intel_pm.c
1132
if (plane->id == PLANE_CURSOR) {
sys/dev/drm/i915/intel_pm.c
1134
} else if (plane->id == PLANE_PRIMARY &&
sys/dev/drm/i915/intel_pm.c
1146
wm += g4x_tlb_miss_wa(g4x_plane_fifo_size(plane->id, level),
sys/dev/drm/i915/intel_pm.c
1163
dirty |= raw->plane[plane_id] != value;
sys/dev/drm/i915/intel_pm.c
1164
raw->plane[plane_id] = value;
sys/dev/drm/i915/intel_pm.c
1196
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_pm.c
1197
int num_levels = intel_wm_num_levels(to_i915(plane->base.dev));
sys/dev/drm/i915/intel_pm.c
1198
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_pm.c
1219
dirty |= raw->plane[plane_id] != wm;
sys/dev/drm/i915/intel_pm.c
1220
raw->plane[plane_id] = wm;
sys/dev/drm/i915/intel_pm.c
1227
raw->plane[plane_id]);
sys/dev/drm/i915/intel_pm.c
1250
plane->base.name,
sys/dev/drm/i915/intel_pm.c
1251
crtc_state->wm.g4x.raw[G4X_WM_LEVEL_NORMAL].plane[plane_id],
sys/dev/drm/i915/intel_pm.c
1252
crtc_state->wm.g4x.raw[G4X_WM_LEVEL_SR].plane[plane_id],
sys/dev/drm/i915/intel_pm.c
1253
crtc_state->wm.g4x.raw[G4X_WM_LEVEL_HPLL].plane[plane_id]);
sys/dev/drm/i915/intel_pm.c
1269
return raw->plane[plane_id] <= g4x_plane_fifo_size(plane_id, level);
sys/dev/drm/i915/intel_pm.c
1293
wm_state->wm.plane[plane_id] = USHRT_MAX;
sys/dev/drm/i915/intel_pm.c
1299
wm_state->sr.plane = USHRT_MAX;
sys/dev/drm/i915/intel_pm.c
1306
wm_state->hpll.plane = USHRT_MAX;
sys/dev/drm/i915/intel_pm.c
1322
struct intel_plane *plane;
sys/dev/drm/i915/intel_pm.c
1327
for_each_oldnew_intel_plane_in_state(state, plane,
sys/dev/drm/i915/intel_pm.c
1335
dirty |= BIT(plane->id);
sys/dev/drm/i915/intel_pm.c
1347
wm_state->wm.plane[plane_id] = raw->plane[plane_id];
sys/dev/drm/i915/intel_pm.c
1355
wm_state->sr.plane = raw->plane[PLANE_PRIMARY];
sys/dev/drm/i915/intel_pm.c
1356
wm_state->sr.cursor = raw->plane[PLANE_CURSOR];
sys/dev/drm/i915/intel_pm.c
1367
wm_state->hpll.plane = raw->plane[PLANE_PRIMARY];
sys/dev/drm/i915/intel_pm.c
1368
wm_state->hpll.cursor = raw->plane[PLANE_CURSOR];
sys/dev/drm/i915/intel_pm.c
1428
intermediate->wm.plane[plane_id] =
sys/dev/drm/i915/intel_pm.c
1429
max(optimal->wm.plane[plane_id],
sys/dev/drm/i915/intel_pm.c
1430
active->wm.plane[plane_id]);
sys/dev/drm/i915/intel_pm.c
1432
WARN_ON(intermediate->wm.plane[plane_id] >
sys/dev/drm/i915/intel_pm.c
1436
intermediate->sr.plane = max(optimal->sr.plane,
sys/dev/drm/i915/intel_pm.c
1437
active->sr.plane);
sys/dev/drm/i915/intel_pm.c
1443
intermediate->hpll.plane = max(optimal->hpll.plane,
sys/dev/drm/i915/intel_pm.c
1444
active->hpll.plane);
sys/dev/drm/i915/intel_pm.c
1450
WARN_ON((intermediate->sr.plane >
sys/dev/drm/i915/intel_pm.c
1455
WARN_ON((intermediate->sr.plane >
sys/dev/drm/i915/intel_pm.c
1604
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_pm.c
1605
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_pm.c
1621
if (plane->id == PLANE_CURSOR) {
sys/dev/drm/i915/intel_pm.c
1668
total_rate = raw->plane[PLANE_PRIMARY] +
sys/dev/drm/i915/intel_pm.c
1669
raw->plane[PLANE_SPRITE0] +
sys/dev/drm/i915/intel_pm.c
1670
raw->plane[PLANE_SPRITE1] +
sys/dev/drm/i915/intel_pm.c
1683
fifo_state->plane[plane_id] = 0;
sys/dev/drm/i915/intel_pm.c
1687
rate = raw->plane[plane_id];
sys/dev/drm/i915/intel_pm.c
1688
fifo_state->plane[plane_id] = fifo_size * rate / total_rate;
sys/dev/drm/i915/intel_pm.c
1689
fifo_left -= fifo_state->plane[plane_id];
sys/dev/drm/i915/intel_pm.c
1692
fifo_state->plane[PLANE_SPRITE0] += sprite0_fifo_extra;
sys/dev/drm/i915/intel_pm.c
1695
fifo_state->plane[PLANE_CURSOR] = 63;
sys/dev/drm/i915/intel_pm.c
1710
fifo_state->plane[plane_id] += plane_extra;
sys/dev/drm/i915/intel_pm.c
1719
fifo_state->plane[PLANE_PRIMARY] = fifo_left;
sys/dev/drm/i915/intel_pm.c
1735
wm_state->wm[level].plane[plane_id] = USHRT_MAX;
sys/dev/drm/i915/intel_pm.c
1738
wm_state->sr[level].plane = USHRT_MAX;
sys/dev/drm/i915/intel_pm.c
1764
dirty |= raw->plane[plane_id] != value;
sys/dev/drm/i915/intel_pm.c
1765
raw->plane[plane_id] = value;
sys/dev/drm/i915/intel_pm.c
1774
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_pm.c
1775
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_pm.c
1776
int num_levels = intel_wm_num_levels(to_i915(plane->base.dev));
sys/dev/drm/i915/intel_pm.c
1793
dirty |= raw->plane[plane_id] != wm;
sys/dev/drm/i915/intel_pm.c
1794
raw->plane[plane_id] = wm;
sys/dev/drm/i915/intel_pm.c
1803
plane->base.name,
sys/dev/drm/i915/intel_pm.c
1804
crtc_state->wm.vlv.raw[VLV_WM_LEVEL_PM2].plane[plane_id],
sys/dev/drm/i915/intel_pm.c
1805
crtc_state->wm.vlv.raw[VLV_WM_LEVEL_PM5].plane[plane_id],
sys/dev/drm/i915/intel_pm.c
1806
crtc_state->wm.vlv.raw[VLV_WM_LEVEL_DDR_DVFS].plane[plane_id]);
sys/dev/drm/i915/intel_pm.c
1819
return raw->plane[plane_id] <= fifo_state->plane[plane_id];
sys/dev/drm/i915/intel_pm.c
1844
struct intel_plane *plane;
sys/dev/drm/i915/intel_pm.c
1849
for_each_oldnew_intel_plane_in_state(state, plane,
sys/dev/drm/i915/intel_pm.c
1857
dirty |= BIT(plane->id);
sys/dev/drm/i915/intel_pm.c
1906
wm_state->wm[level].plane[plane_id] =
sys/dev/drm/i915/intel_pm.c
1907
vlv_invert_wm_value(raw->plane[plane_id],
sys/dev/drm/i915/intel_pm.c
1908
fifo_state->plane[plane_id]);
sys/dev/drm/i915/intel_pm.c
1911
wm_state->sr[level].plane =
sys/dev/drm/i915/intel_pm.c
1912
vlv_invert_wm_value(max3(raw->plane[PLANE_PRIMARY],
sys/dev/drm/i915/intel_pm.c
1913
raw->plane[PLANE_SPRITE0],
sys/dev/drm/i915/intel_pm.c
1914
raw->plane[PLANE_SPRITE1]),
sys/dev/drm/i915/intel_pm.c
1918
vlv_invert_wm_value(raw->plane[PLANE_CURSOR],
sys/dev/drm/i915/intel_pm.c
1934
#define VLV_FIFO(plane, value) \
sys/dev/drm/i915/intel_pm.c
1935
(((value) << DSPARB_ ## plane ## _SHIFT_VLV) & DSPARB_ ## plane ## _MASK_VLV)
sys/dev/drm/i915/intel_pm.c
1949
sprite0_start = fifo_state->plane[PLANE_PRIMARY];
sys/dev/drm/i915/intel_pm.c
1950
sprite1_start = fifo_state->plane[PLANE_SPRITE0] + sprite0_start;
sys/dev/drm/i915/intel_pm.c
1951
fifo_size = fifo_state->plane[PLANE_SPRITE1] + sprite1_start;
sys/dev/drm/i915/intel_pm.c
1953
WARN_ON(fifo_state->plane[PLANE_CURSOR] != 63);
sys/dev/drm/i915/intel_pm.c
2061
intermediate->wm[level].plane[plane_id] =
sys/dev/drm/i915/intel_pm.c
2062
min(optimal->wm[level].plane[plane_id],
sys/dev/drm/i915/intel_pm.c
2063
active->wm[level].plane[plane_id]);
sys/dev/drm/i915/intel_pm.c
2066
intermediate->sr[level].plane = min(optimal->sr[level].plane,
sys/dev/drm/i915/intel_pm.c
2067
active->sr[level].plane);
sys/dev/drm/i915/intel_pm.c
2121
wm->ddl[pipe].plane[PLANE_PRIMARY] = DDL_PRECISION_HIGH | 2;
sys/dev/drm/i915/intel_pm.c
2122
wm->ddl[pipe].plane[PLANE_SPRITE0] = DDL_PRECISION_HIGH | 2;
sys/dev/drm/i915/intel_pm.c
2123
wm->ddl[pipe].plane[PLANE_SPRITE1] = DDL_PRECISION_HIGH | 2;
sys/dev/drm/i915/intel_pm.c
2124
wm->ddl[pipe].plane[PLANE_CURSOR] = DDL_PRECISION_HIGH | 2;
sys/dev/drm/i915/intel_pm.c
3105
struct drm_plane *plane;
sys/dev/drm/i915/intel_pm.c
3115
drm_atomic_crtc_state_for_each_plane_state(plane, plane_state, &cstate->base) {
sys/dev/drm/i915/intel_pm.c
3118
if (plane->type == DRM_PLANE_TYPE_PRIMARY)
sys/dev/drm/i915/intel_pm.c
3120
else if (plane->type == DRM_PLANE_TYPE_OVERLAY)
sys/dev/drm/i915/intel_pm.c
3122
else if (plane->type == DRM_PLANE_TYPE_CURSOR)
sys/dev/drm/i915/intel_pm.c
346
#define FW_WM(value, plane) \
sys/dev/drm/i915/intel_pm.c
347
(((value) << DSPFW_ ## plane ## _SHIFT) & DSPFW_ ## plane ## _MASK)
sys/dev/drm/i915/intel_pm.c
3754
struct intel_plane *plane;
sys/dev/drm/i915/intel_pm.c
3789
for_each_intel_plane_on_crtc(dev, crtc, plane) {
sys/dev/drm/i915/intel_pm.c
3791
&cstate->wm.skl.optimal.planes[plane->id];
sys/dev/drm/i915/intel_pm.c
3805
plane->base.state->fb->modifier ==
sys/dev/drm/i915/intel_pm.c
3968
&ddb->plane[pipe][plane_id], val);
sys/dev/drm/i915/intel_pm.c
3993
&ddb->plane[pipe][plane_id], val2);
sys/dev/drm/i915/intel_pm.c
3998
&ddb->plane[pipe][plane_id], val);
sys/dev/drm/i915/intel_pm.c
4048
struct intel_plane *plane = to_intel_plane(pstate->base.plane);
sys/dev/drm/i915/intel_pm.c
4057
if (plane->id == PLANE_CURSOR) {
sys/dev/drm/i915/intel_pm.c
4125
struct drm_plane *plane;
sys/dev/drm/i915/intel_pm.c
4136
drm_atomic_crtc_state_for_each_plane_state(plane, pstate, crtc_state) {
sys/dev/drm/i915/intel_pm.c
4181
const int plane)
sys/dev/drm/i915/intel_pm.c
4183
struct intel_plane *intel_plane = to_intel_plane(pstate->plane);
sys/dev/drm/i915/intel_pm.c
4199
if (plane == 1 && format != DRM_FORMAT_NV12)
sys/dev/drm/i915/intel_pm.c
4211
if (plane == 1 && format == DRM_FORMAT_NV12) {
sys/dev/drm/i915/intel_pm.c
4216
data_rate = width * height * fb->format->cpp[plane];
sys/dev/drm/i915/intel_pm.c
4235
struct drm_plane *plane;
sys/dev/drm/i915/intel_pm.c
4243
drm_atomic_crtc_state_for_each_plane_state(plane, pstate, cstate) {
sys/dev/drm/i915/intel_pm.c
4244
enum plane_id plane_id = to_intel_plane(plane)->id;
sys/dev/drm/i915/intel_pm.c
4266
skl_ddb_min_alloc(const struct drm_plane_state *pstate, const int plane)
sys/dev/drm/i915/intel_pm.c
4278
if (plane == 1 && fb->format->format != DRM_FORMAT_NV12)
sys/dev/drm/i915/intel_pm.c
4297
if (plane == 1) {
sys/dev/drm/i915/intel_pm.c
4302
plane_bpp = fb->format->cpp[plane];
sys/dev/drm/i915/intel_pm.c
4333
struct drm_plane *plane;
sys/dev/drm/i915/intel_pm.c
4335
drm_atomic_crtc_state_for_each_plane_state(plane, pstate, &cstate->base) {
sys/dev/drm/i915/intel_pm.c
4336
enum plane_id plane_id = to_intel_plane(plane)->id;
sys/dev/drm/i915/intel_pm.c
4372
memset(ddb->plane[pipe], 0, sizeof(ddb->plane[pipe]));
sys/dev/drm/i915/intel_pm.c
4413
ddb->plane[pipe][PLANE_CURSOR].start = alloc->end - minimum[PLANE_CURSOR];
sys/dev/drm/i915/intel_pm.c
4414
ddb->plane[pipe][PLANE_CURSOR].end = alloc->end;
sys/dev/drm/i915/intel_pm.c
4446
ddb->plane[pipe][plane_id].start = start;
sys/dev/drm/i915/intel_pm.c
4447
ddb->plane[pipe][plane_id].end = start + plane_blocks;
sys/dev/drm/i915/intel_pm.c
4563
struct intel_plane *plane = to_intel_plane(intel_pstate->base.plane);
sys/dev/drm/i915/intel_pm.c
4589
if (plane->id == PLANE_CURSOR) {
sys/dev/drm/i915/intel_pm.c
4785
struct drm_plane *plane = pstate->plane;
sys/dev/drm/i915/intel_pm.c
4789
plane->base.id, plane->name,
sys/dev/drm/i915/intel_pm.c
4824
struct drm_plane *plane = intel_pstate->base.plane;
sys/dev/drm/i915/intel_pm.c
4825
struct intel_plane *intel_plane = to_intel_plane(plane);
sys/dev/drm/i915/intel_pm.c
4837
skl_ddb_entry_size(&ddb->plane[pipe][intel_plane_id]);
sys/dev/drm/i915/intel_pm.c
4953
struct drm_plane *plane;
sys/dev/drm/i915/intel_pm.c
4964
drm_atomic_crtc_state_for_each_plane_state(plane, pstate, crtc_state) {
sys/dev/drm/i915/intel_pm.c
4967
enum plane_id plane_id = to_intel_plane(plane)->id;
sys/dev/drm/i915/intel_pm.c
4973
ddb_blocks = skl_ddb_entry_size(&ddb->plane[pipe][plane_id]);
sys/dev/drm/i915/intel_pm.c
505
fifo_state->plane[PLANE_PRIMARY] = sprite0_start;
sys/dev/drm/i915/intel_pm.c
5056
&ddb->plane[pipe][plane_id]);
sys/dev/drm/i915/intel_pm.c
506
fifo_state->plane[PLANE_SPRITE0] = sprite1_start - sprite0_start;
sys/dev/drm/i915/intel_pm.c
5061
&ddb->plane[pipe][plane_id]);
sys/dev/drm/i915/intel_pm.c
5067
&ddb->plane[pipe][plane_id]);
sys/dev/drm/i915/intel_pm.c
507
fifo_state->plane[PLANE_SPRITE1] = 511 - sprite1_start;
sys/dev/drm/i915/intel_pm.c
5070
&ddb->plane[pipe][plane_id]);
sys/dev/drm/i915/intel_pm.c
508
fifo_state->plane[PLANE_CURSOR] = 63;
sys/dev/drm/i915/intel_pm.c
5092
&ddb->plane[pipe][PLANE_CURSOR]);
sys/dev/drm/i915/intel_pm.c
5177
struct drm_plane *plane;
sys/dev/drm/i915/intel_pm.c
5180
drm_for_each_plane_mask(plane, dev, cstate->base.plane_mask) {
sys/dev/drm/i915/intel_pm.c
5181
enum plane_id plane_id = to_intel_plane(plane)->id;
sys/dev/drm/i915/intel_pm.c
5183
if (skl_ddb_entry_equal(&cur_ddb->plane[pipe][plane_id],
sys/dev/drm/i915/intel_pm.c
5184
&new_ddb->plane[pipe][plane_id]) &&
sys/dev/drm/i915/intel_pm.c
5189
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/i915/intel_pm.c
5244
old = &old_ddb->plane[pipe][plane_id];
sys/dev/drm/i915/intel_pm.c
5245
new = &new_ddb->plane[pipe][plane_id];
sys/dev/drm/i915/intel_pm.c
5453
memcpy(hw_vals->ddb.plane[pipe], results->ddb.plane[pipe],
sys/dev/drm/i915/intel_pm.c
5454
sizeof(hw_vals->ddb.plane[pipe]));
sys/dev/drm/i915/intel_pm.c
5611
memset(ddb->plane, 0, sizeof(ddb->plane));
sys/dev/drm/i915/intel_pm.c
5668
#define _FW_WM(value, plane) \
sys/dev/drm/i915/intel_pm.c
5669
(((value) & DSPFW_ ## plane ## _MASK) >> DSPFW_ ## plane ## _SHIFT)
sys/dev/drm/i915/intel_pm.c
5670
#define _FW_WM_VLV(value, plane) \
sys/dev/drm/i915/intel_pm.c
5671
(((value) & DSPFW_ ## plane ## _MASK_VLV) >> DSPFW_ ## plane ## _SHIFT)
sys/dev/drm/i915/intel_pm.c
5679
wm->sr.plane = _FW_WM(tmp, SR);
sys/dev/drm/i915/intel_pm.c
5680
wm->pipe[PIPE_B].plane[PLANE_CURSOR] = _FW_WM(tmp, CURSORB);
sys/dev/drm/i915/intel_pm.c
5681
wm->pipe[PIPE_B].plane[PLANE_PRIMARY] = _FW_WM(tmp, PLANEB);
sys/dev/drm/i915/intel_pm.c
5682
wm->pipe[PIPE_A].plane[PLANE_PRIMARY] = _FW_WM(tmp, PLANEA);
sys/dev/drm/i915/intel_pm.c
5688
wm->pipe[PIPE_B].plane[PLANE_SPRITE0] = _FW_WM(tmp, SPRITEB);
sys/dev/drm/i915/intel_pm.c
5689
wm->pipe[PIPE_A].plane[PLANE_CURSOR] = _FW_WM(tmp, CURSORA);
sys/dev/drm/i915/intel_pm.c
5690
wm->pipe[PIPE_A].plane[PLANE_SPRITE0] = _FW_WM(tmp, SPRITEA);
sys/dev/drm/i915/intel_pm.c
5696
wm->hpll.plane = _FW_WM(tmp, HPLL_SR);
sys/dev/drm/i915/intel_pm.c
5708
wm->ddl[pipe].plane[PLANE_PRIMARY] =
sys/dev/drm/i915/intel_pm.c
5710
wm->ddl[pipe].plane[PLANE_CURSOR] =
sys/dev/drm/i915/intel_pm.c
5712
wm->ddl[pipe].plane[PLANE_SPRITE0] =
sys/dev/drm/i915/intel_pm.c
5714
wm->ddl[pipe].plane[PLANE_SPRITE1] =
sys/dev/drm/i915/intel_pm.c
5719
wm->sr.plane = _FW_WM(tmp, SR);
sys/dev/drm/i915/intel_pm.c
5720
wm->pipe[PIPE_B].plane[PLANE_CURSOR] = _FW_WM(tmp, CURSORB);
sys/dev/drm/i915/intel_pm.c
5721
wm->pipe[PIPE_B].plane[PLANE_PRIMARY] = _FW_WM_VLV(tmp, PLANEB);
sys/dev/drm/i915/intel_pm.c
5722
wm->pipe[PIPE_A].plane[PLANE_PRIMARY] = _FW_WM_VLV(tmp, PLANEA);
sys/dev/drm/i915/intel_pm.c
5725
wm->pipe[PIPE_A].plane[PLANE_SPRITE1] = _FW_WM_VLV(tmp, SPRITEB);
sys/dev/drm/i915/intel_pm.c
5726
wm->pipe[PIPE_A].plane[PLANE_CURSOR] = _FW_WM(tmp, CURSORA);
sys/dev/drm/i915/intel_pm.c
5727
wm->pipe[PIPE_A].plane[PLANE_SPRITE0] = _FW_WM_VLV(tmp, SPRITEA);
sys/dev/drm/i915/intel_pm.c
5734
wm->pipe[PIPE_B].plane[PLANE_SPRITE1] = _FW_WM_VLV(tmp, SPRITED);
sys/dev/drm/i915/intel_pm.c
5735
wm->pipe[PIPE_B].plane[PLANE_SPRITE0] = _FW_WM_VLV(tmp, SPRITEC);
sys/dev/drm/i915/intel_pm.c
5738
wm->pipe[PIPE_C].plane[PLANE_SPRITE1] = _FW_WM_VLV(tmp, SPRITEF);
sys/dev/drm/i915/intel_pm.c
5739
wm->pipe[PIPE_C].plane[PLANE_SPRITE0] = _FW_WM_VLV(tmp, SPRITEE);
sys/dev/drm/i915/intel_pm.c
5742
wm->pipe[PIPE_C].plane[PLANE_PRIMARY] = _FW_WM_VLV(tmp, PLANEC);
sys/dev/drm/i915/intel_pm.c
5743
wm->pipe[PIPE_C].plane[PLANE_CURSOR] = _FW_WM(tmp, CURSORC);
sys/dev/drm/i915/intel_pm.c
5746
wm->sr.plane |= _FW_WM(tmp, SR_HI) << 9;
sys/dev/drm/i915/intel_pm.c
5747
wm->pipe[PIPE_C].plane[PLANE_SPRITE1] |= _FW_WM(tmp, SPRITEF_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5748
wm->pipe[PIPE_C].plane[PLANE_SPRITE0] |= _FW_WM(tmp, SPRITEE_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5749
wm->pipe[PIPE_C].plane[PLANE_PRIMARY] |= _FW_WM(tmp, PLANEC_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5750
wm->pipe[PIPE_B].plane[PLANE_SPRITE1] |= _FW_WM(tmp, SPRITED_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5751
wm->pipe[PIPE_B].plane[PLANE_SPRITE0] |= _FW_WM(tmp, SPRITEC_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5752
wm->pipe[PIPE_B].plane[PLANE_PRIMARY] |= _FW_WM(tmp, PLANEB_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5753
wm->pipe[PIPE_A].plane[PLANE_SPRITE1] |= _FW_WM(tmp, SPRITEB_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5754
wm->pipe[PIPE_A].plane[PLANE_SPRITE0] |= _FW_WM(tmp, SPRITEA_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5755
wm->pipe[PIPE_A].plane[PLANE_PRIMARY] |= _FW_WM(tmp, PLANEA_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5758
wm->pipe[PIPE_B].plane[PLANE_SPRITE1] = _FW_WM_VLV(tmp, SPRITED);
sys/dev/drm/i915/intel_pm.c
5759
wm->pipe[PIPE_B].plane[PLANE_SPRITE0] = _FW_WM_VLV(tmp, SPRITEC);
sys/dev/drm/i915/intel_pm.c
5762
wm->sr.plane |= _FW_WM(tmp, SR_HI) << 9;
sys/dev/drm/i915/intel_pm.c
5763
wm->pipe[PIPE_B].plane[PLANE_SPRITE1] |= _FW_WM(tmp, SPRITED_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5764
wm->pipe[PIPE_B].plane[PLANE_SPRITE0] |= _FW_WM(tmp, SPRITEC_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5765
wm->pipe[PIPE_B].plane[PLANE_PRIMARY] |= _FW_WM(tmp, PLANEB_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5766
wm->pipe[PIPE_A].plane[PLANE_SPRITE1] |= _FW_WM(tmp, SPRITEB_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5767
wm->pipe[PIPE_A].plane[PLANE_SPRITE0] |= _FW_WM(tmp, SPRITEA_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5768
wm->pipe[PIPE_A].plane[PLANE_PRIMARY] |= _FW_WM(tmp, PLANEA_HI) << 8;
sys/dev/drm/i915/intel_pm.c
5802
active->wm.plane[plane_id] =
sys/dev/drm/i915/intel_pm.c
5803
wm->pipe[pipe].plane[plane_id];
sys/dev/drm/i915/intel_pm.c
5816
raw->plane[plane_id] = active->wm.plane[plane_id];
sys/dev/drm/i915/intel_pm.c
5822
raw->plane[PLANE_PRIMARY] = active->sr.plane;
sys/dev/drm/i915/intel_pm.c
5823
raw->plane[PLANE_CURSOR] = active->sr.cursor;
sys/dev/drm/i915/intel_pm.c
5824
raw->plane[PLANE_SPRITE0] = 0;
sys/dev/drm/i915/intel_pm.c
5831
raw->plane[PLANE_PRIMARY] = active->hpll.plane;
sys/dev/drm/i915/intel_pm.c
5832
raw->plane[PLANE_CURSOR] = active->hpll.cursor;
sys/dev/drm/i915/intel_pm.c
5833
raw->plane[PLANE_SPRITE0] = 0;
sys/dev/drm/i915/intel_pm.c
5847
wm->pipe[pipe].plane[PLANE_PRIMARY],
sys/dev/drm/i915/intel_pm.c
5848
wm->pipe[pipe].plane[PLANE_CURSOR],
sys/dev/drm/i915/intel_pm.c
5849
wm->pipe[pipe].plane[PLANE_SPRITE0]);
sys/dev/drm/i915/intel_pm.c
5853
wm->sr.plane, wm->sr.cursor, wm->sr.fbc);
sys/dev/drm/i915/intel_pm.c
5855
wm->hpll.plane, wm->hpll.cursor, wm->hpll.fbc);
sys/dev/drm/i915/intel_pm.c
5862
struct intel_plane *plane;
sys/dev/drm/i915/intel_pm.c
5867
for_each_intel_plane(&dev_priv->drm, plane) {
sys/dev/drm/i915/intel_pm.c
5869
intel_get_crtc_for_pipe(dev_priv, plane->pipe);
sys/dev/drm/i915/intel_pm.c
5873
to_intel_plane_state(plane->base.state);
sys/dev/drm/i915/intel_pm.c
5875
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_pm.c
5885
raw->plane[plane_id] = 0;
sys/dev/drm/i915/intel_pm.c
5886
wm_state->wm.plane[plane_id] = 0;
sys/dev/drm/i915/intel_pm.c
5981
active->sr[level].plane = wm->sr.plane;
sys/dev/drm/i915/intel_pm.c
5985
active->wm[level].plane[plane_id] =
sys/dev/drm/i915/intel_pm.c
5986
wm->pipe[pipe].plane[plane_id];
sys/dev/drm/i915/intel_pm.c
5988
raw->plane[plane_id] =
sys/dev/drm/i915/intel_pm.c
5989
vlv_invert_wm_value(active->wm[level].plane[plane_id],
sys/dev/drm/i915/intel_pm.c
5990
fifo_state->plane[plane_id]);
sys/dev/drm/i915/intel_pm.c
6004
wm->pipe[pipe].plane[PLANE_PRIMARY],
sys/dev/drm/i915/intel_pm.c
6005
wm->pipe[pipe].plane[PLANE_CURSOR],
sys/dev/drm/i915/intel_pm.c
6006
wm->pipe[pipe].plane[PLANE_SPRITE0],
sys/dev/drm/i915/intel_pm.c
6007
wm->pipe[pipe].plane[PLANE_SPRITE1]);
sys/dev/drm/i915/intel_pm.c
6011
wm->sr.plane, wm->sr.cursor, wm->level, wm->cxsr);
sys/dev/drm/i915/intel_pm.c
6016
struct intel_plane *plane;
sys/dev/drm/i915/intel_pm.c
6021
for_each_intel_plane(&dev_priv->drm, plane) {
sys/dev/drm/i915/intel_pm.c
6023
intel_get_crtc_for_pipe(dev_priv, plane->pipe);
sys/dev/drm/i915/intel_pm.c
6027
to_intel_plane_state(plane->base.state);
sys/dev/drm/i915/intel_pm.c
6031
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_pm.c
6041
raw->plane[plane_id] = 0;
sys/dev/drm/i915/intel_pm.c
6043
wm_state->wm[level].plane[plane_id] =
sys/dev/drm/i915/intel_pm.c
6044
vlv_invert_wm_value(raw->plane[plane_id],
sys/dev/drm/i915/intel_pm.c
6045
fifo_state->plane[plane_id]);
sys/dev/drm/i915/intel_pm.c
805
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_pm.c
819
if (plane->id == PLANE_CURSOR)
sys/dev/drm/i915/intel_pm.c
937
FW_WM(wm->sr.plane, SR) |
sys/dev/drm/i915/intel_pm.c
938
FW_WM(wm->pipe[PIPE_B].plane[PLANE_CURSOR], CURSORB) |
sys/dev/drm/i915/intel_pm.c
939
FW_WM(wm->pipe[PIPE_B].plane[PLANE_PRIMARY], PLANEB) |
sys/dev/drm/i915/intel_pm.c
940
FW_WM(wm->pipe[PIPE_A].plane[PLANE_PRIMARY], PLANEA));
sys/dev/drm/i915/intel_pm.c
945
FW_WM(wm->pipe[PIPE_B].plane[PLANE_SPRITE0], SPRITEB) |
sys/dev/drm/i915/intel_pm.c
946
FW_WM(wm->pipe[PIPE_A].plane[PLANE_CURSOR], CURSORA) |
sys/dev/drm/i915/intel_pm.c
947
FW_WM(wm->pipe[PIPE_A].plane[PLANE_SPRITE0], SPRITEA));
sys/dev/drm/i915/intel_pm.c
952
FW_WM(wm->hpll.plane, HPLL_SR));
sys/dev/drm/i915/intel_pm.c
957
#define FW_WM_VLV(value, plane) \
sys/dev/drm/i915/intel_pm.c
958
(((value) << DSPFW_ ## plane ## _SHIFT) & DSPFW_ ## plane ## _MASK_VLV)
sys/dev/drm/i915/intel_pm.c
969
(wm->ddl[pipe].plane[PLANE_CURSOR] << DDL_CURSOR_SHIFT) |
sys/dev/drm/i915/intel_pm.c
970
(wm->ddl[pipe].plane[PLANE_SPRITE1] << DDL_SPRITE_SHIFT(1)) |
sys/dev/drm/i915/intel_pm.c
971
(wm->ddl[pipe].plane[PLANE_SPRITE0] << DDL_SPRITE_SHIFT(0)) |
sys/dev/drm/i915/intel_pm.c
972
(wm->ddl[pipe].plane[PLANE_PRIMARY] << DDL_PLANE_SHIFT));
sys/dev/drm/i915/intel_pm.c
987
FW_WM(wm->sr.plane, SR) |
sys/dev/drm/i915/intel_pm.c
988
FW_WM(wm->pipe[PIPE_B].plane[PLANE_CURSOR], CURSORB) |
sys/dev/drm/i915/intel_pm.c
989
FW_WM_VLV(wm->pipe[PIPE_B].plane[PLANE_PRIMARY], PLANEB) |
sys/dev/drm/i915/intel_pm.c
990
FW_WM_VLV(wm->pipe[PIPE_A].plane[PLANE_PRIMARY], PLANEA));
sys/dev/drm/i915/intel_pm.c
992
FW_WM_VLV(wm->pipe[PIPE_A].plane[PLANE_SPRITE1], SPRITEB) |
sys/dev/drm/i915/intel_pm.c
993
FW_WM(wm->pipe[PIPE_A].plane[PLANE_CURSOR], CURSORA) |
sys/dev/drm/i915/intel_pm.c
994
FW_WM_VLV(wm->pipe[PIPE_A].plane[PLANE_SPRITE0], SPRITEA));
sys/dev/drm/i915/intel_sprite.c
1018
g4x_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
sys/dev/drm/i915/intel_sprite.c
1020
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
1021
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
1037
g4x_plane_get_hw_state(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
1040
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
1044
power_domain = POWER_DOMAIN_PIPE(plane->pipe);
sys/dev/drm/i915/intel_sprite.c
1048
ret = I915_READ(DVSCNTR(plane->pipe)) & DVS_ENABLE;
sys/dev/drm/i915/intel_sprite.c
1050
*pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
1122
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_sprite.c
1123
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
1170
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_sprite.c
1171
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
1284
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_sprite.c
1313
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_sprite.c
1314
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
1373
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_sprite.c
1374
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
1383
if (plane->id == PLANE_PRIMARY &&
sys/dev/drm/i915/intel_sprite.c
1391
if (INTEL_GEN(dev_priv) >= 9 && plane->id != PLANE_PRIMARY &&
sys/dev/drm/i915/intel_sprite.c
1401
struct drm_plane *plane;
sys/dev/drm/i915/intel_sprite.c
1421
plane = drm_plane_find(dev, file_priv, set->plane_id);
sys/dev/drm/i915/intel_sprite.c
1422
if (!plane || plane->type != DRM_PLANE_TYPE_OVERLAY)
sys/dev/drm/i915/intel_sprite.c
1431
to_intel_plane(plane)->id >= PLANE_SPRITE1 &&
sys/dev/drm/i915/intel_sprite.c
1437
state = drm_atomic_state_alloc(plane->dev);
sys/dev/drm/i915/intel_sprite.c
1445
plane_state = drm_atomic_get_plane_state(state, plane);
sys/dev/drm/i915/intel_sprite.c
1457
to_intel_plane(plane)->pipe);
sys/dev/drm/i915/intel_sprite.c
1651
struct intel_plane *plane = to_intel_plane(_plane);
sys/dev/drm/i915/intel_sprite.c
1661
if (!plane->has_ccs)
sys/dev/drm/i915/intel_sprite.c
1761
enum i915_pipe pipe, int plane)
sys/dev/drm/i915/intel_sprite.c
1790
PLANE_SPRITE0 + plane);
sys/dev/drm/i915/intel_sprite.c
1799
PLANE_SPRITE0 + plane)) {
sys/dev/drm/i915/intel_sprite.c
1872
intel_plane->i9xx_plane = plane;
sys/dev/drm/i915/intel_sprite.c
1873
intel_plane->id = PLANE_SPRITE0 + plane;
sys/dev/drm/i915/intel_sprite.c
1884
"plane %d%c", plane + 2, pipe_name(pipe));
sys/dev/drm/i915/intel_sprite.c
1891
"sprite %c", sprite_name(pipe, plane));
sys/dev/drm/i915/intel_sprite.c
235
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_sprite.c
242
max_stride = plane->max_stride(plane, fb->format->format,
sys/dev/drm/i915/intel_sprite.c
248
plane->base.base.id, plane->base.name, max_stride);
sys/dev/drm/i915/intel_sprite.c
289
skl_plane_max_stride(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
306
skl_program_scaler(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
310
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
311
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
348
PS_SCALER_EN | PS_PLANE_SEL(plane->id) | scaler->mode);
sys/dev/drm/i915/intel_sprite.c
359
skl_update_plane(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
363
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
364
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_sprite.c
365
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
405
skl_program_scaler(plane, crtc_state, plane_state);
sys/dev/drm/i915/intel_sprite.c
421
skl_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
sys/dev/drm/i915/intel_sprite.c
423
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
424
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_sprite.c
425
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
439
skl_plane_get_hw_state(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
442
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
444
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_sprite.c
447
power_domain = POWER_DOMAIN_PIPE(plane->pipe);
sys/dev/drm/i915/intel_sprite.c
451
ret = I915_READ(PLANE_CTL(plane->pipe, plane_id)) & PLANE_CTL_ENABLE;
sys/dev/drm/i915/intel_sprite.c
453
*pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
463
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_sprite.c
464
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
466
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_sprite.c
522
struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
sys/dev/drm/i915/intel_sprite.c
523
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
525
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
526
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_sprite.c
626
vlv_update_plane(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
630
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
632
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
633
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_sprite.c
685
vlv_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
sys/dev/drm/i915/intel_sprite.c
687
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
688
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
689
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_sprite.c
703
vlv_plane_get_hw_state(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
706
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
708
enum plane_id plane_id = plane->id;
sys/dev/drm/i915/intel_sprite.c
711
power_domain = POWER_DOMAIN_PIPE(plane->pipe);
sys/dev/drm/i915/intel_sprite.c
715
ret = I915_READ(SPCNTR(plane->pipe, plane_id)) & SP_ENABLE;
sys/dev/drm/i915/intel_sprite.c
717
*pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
728
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_sprite.c
787
ivb_update_plane(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
791
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
793
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
851
ivb_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
sys/dev/drm/i915/intel_sprite.c
853
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
854
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
871
ivb_plane_get_hw_state(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
874
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
878
power_domain = POWER_DOMAIN_PIPE(plane->pipe);
sys/dev/drm/i915/intel_sprite.c
882
ret = I915_READ(SPRCTL(plane->pipe)) & SPRITE_ENABLE;
sys/dev/drm/i915/intel_sprite.c
884
*pipe = plane->pipe;
sys/dev/drm/i915/intel_sprite.c
892
g4x_sprite_max_stride(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
903
to_i915(plane_state->base.plane->dev);
sys/dev/drm/i915/intel_sprite.c
959
g4x_update_plane(struct intel_plane *plane,
sys/dev/drm/i915/intel_sprite.c
963
struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
sys/dev/drm/i915/intel_sprite.c
965
enum i915_pipe pipe = plane->pipe;
sys/dev/drm/include/drm/drm_atomic.h
390
struct drm_plane *plane);
sys/dev/drm/include/drm/drm_atomic.h
464
struct drm_plane *plane)
sys/dev/drm/include/drm/drm_atomic.h
466
return state->planes[drm_plane_index(plane)].state;
sys/dev/drm/include/drm/drm_atomic.h
479
struct drm_plane *plane)
sys/dev/drm/include/drm/drm_atomic.h
481
return state->planes[drm_plane_index(plane)].old_state;
sys/dev/drm/include/drm/drm_atomic.h
494
struct drm_plane *plane)
sys/dev/drm/include/drm/drm_atomic.h
496
return state->planes[drm_plane_index(plane)].new_state;
sys/dev/drm/include/drm/drm_atomic.h
590
struct drm_plane *plane)
sys/dev/drm/include/drm/drm_atomic.h
592
if (state->planes[drm_plane_index(plane)].state)
sys/dev/drm/include/drm/drm_atomic.h
593
return state->planes[drm_plane_index(plane)].state;
sys/dev/drm/include/drm/drm_atomic.h
595
return plane->state;
sys/dev/drm/include/drm/drm_atomic.h
745
#define for_each_oldnew_plane_in_state(__state, plane, old_plane_state, new_plane_state, __i) \
sys/dev/drm/include/drm/drm_atomic.h
750
((plane) = (__state)->planes[__i].ptr, \
sys/dev/drm/include/drm/drm_atomic.h
767
#define for_each_oldnew_plane_in_state_reverse(__state, plane, old_plane_state, new_plane_state, __i) \
sys/dev/drm/include/drm/drm_atomic.h
772
((plane) = (__state)->planes[__i].ptr, \
sys/dev/drm/include/drm/drm_atomic.h
787
#define for_each_old_plane_in_state(__state, plane, old_plane_state, __i) \
sys/dev/drm/include/drm/drm_atomic.h
792
((plane) = (__state)->planes[__i].ptr, \
sys/dev/drm/include/drm/drm_atomic.h
805
#define for_each_new_plane_in_state(__state, plane, new_plane_state, __i) \
sys/dev/drm/include/drm/drm_atomic.h
810
((plane) = (__state)->planes[__i].ptr, \
sys/dev/drm/include/drm/drm_atomic_helper.h
109
int drm_atomic_helper_update_plane(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_atomic_helper.h
117
int drm_atomic_helper_disable_plane(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_atomic_helper.h
119
int __drm_atomic_helper_disable_plane(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_atomic_helper.h
160
void __drm_atomic_helper_plane_reset(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_atomic_helper.h
162
void drm_atomic_helper_plane_reset(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_atomic_helper.h
163
void __drm_atomic_helper_plane_duplicate_state(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_atomic_helper.h
166
drm_atomic_helper_plane_duplicate_state(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_atomic_helper.h
168
void drm_atomic_helper_plane_destroy_state(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_atomic_helper.h
204
#define drm_atomic_crtc_for_each_plane(plane, crtc) \
sys/dev/drm/include/drm/drm_atomic_helper.h
205
drm_for_each_plane_mask(plane, (crtc)->dev, (crtc)->state->plane_mask)
sys/dev/drm/include/drm/drm_atomic_helper.h
217
#define drm_atomic_crtc_state_for_each_plane(plane, crtc_state) \
sys/dev/drm/include/drm/drm_atomic_helper.h
218
drm_for_each_plane_mask(plane, (crtc_state)->state->dev, (crtc_state)->plane_mask)
sys/dev/drm/include/drm/drm_atomic_helper.h
235
#define drm_atomic_crtc_state_for_each_plane_state(plane, plane_state, crtc_state) \
sys/dev/drm/include/drm/drm_atomic_helper.h
236
drm_for_each_plane_mask(plane, (crtc_state)->state->dev, (crtc_state)->plane_mask) \
sys/dev/drm/include/drm/drm_atomic_helper.h
239
plane)))
sys/dev/drm/include/drm/drm_blend.h
45
int drm_plane_create_alpha_property(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_blend.h
46
int drm_plane_create_rotation_property(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_blend.h
52
int drm_plane_create_zpos_property(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_blend.h
55
int drm_plane_create_zpos_immutable_property(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_blend.h
59
int drm_plane_create_blend_mode_property(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_color_mgmt.h
67
int drm_plane_create_color_properties(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_fb_cma_helper.h
32
unsigned int plane);
sys/dev/drm/include/drm/drm_fb_cma_helper.h
36
unsigned int plane);
sys/dev/drm/include/drm/drm_fourcc.h
94
int drm_format_plane_cpp(uint32_t format, int plane);
sys/dev/drm/include/drm/drm_fourcc.h
97
int drm_format_plane_width(int width, uint32_t format, int plane);
sys/dev/drm/include/drm/drm_fourcc.h
98
int drm_format_plane_height(int height, uint32_t format, int plane);
sys/dev/drm/include/drm/drm_framebuffer.h
313
const struct drm_framebuffer *fb, int plane);
sys/dev/drm/include/drm/drm_framebuffer.h
315
const struct drm_framebuffer *fb, int plane);
sys/dev/drm/include/drm/drm_gem_framebuffer_helper.h
16
unsigned int plane);
sys/dev/drm/include/drm/drm_gem_framebuffer_helper.h
29
int drm_gem_fb_prepare_fb(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_modeset_helper_vtables.h
1043
int (*prepare_fb)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_modeset_helper_vtables.h
1054
void (*cleanup_fb)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_modeset_helper_vtables.h
1093
int (*atomic_check)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_modeset_helper_vtables.h
1111
void (*atomic_update)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_modeset_helper_vtables.h
1135
void (*atomic_disable)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_modeset_helper_vtables.h
1154
int (*atomic_async_check)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_modeset_helper_vtables.h
1185
void (*atomic_async_update)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_modeset_helper_vtables.h
1194
static inline void drm_plane_helper_add(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_modeset_helper_vtables.h
1197
plane->helper_private = funcs;
sys/dev/drm/include/drm/drm_plane.h
254
int (*update_plane)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane.h
277
int (*disable_plane)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane.h
287
void (*destroy)(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_plane.h
299
void (*reset)(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_plane.h
315
int (*set_property)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane.h
349
struct drm_plane_state *(*atomic_duplicate_state)(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_plane.h
359
void (*atomic_destroy_state)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane.h
404
int (*atomic_set_property)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane.h
427
int (*atomic_get_property)(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane.h
444
int (*late_register)(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_plane.h
455
void (*early_unregister)(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_plane.h
485
bool (*format_mod_supported)(struct drm_plane *plane, uint32_t format,
sys/dev/drm/include/drm/drm_plane.h
49
struct drm_plane *plane;
sys/dev/drm/include/drm/drm_plane.h
704
struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane.h
713
struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane.h
718
void drm_plane_cleanup(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_plane.h
727
static inline unsigned int drm_plane_index(const struct drm_plane *plane)
sys/dev/drm/include/drm/drm_plane.h
729
return plane->index;
sys/dev/drm/include/drm/drm_plane.h
736
static inline u32 drm_plane_mask(const struct drm_plane *plane)
sys/dev/drm/include/drm/drm_plane.h
738
return 1 << drm_plane_index(plane);
sys/dev/drm/include/drm/drm_plane.h
742
void drm_plane_force_disable(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_plane.h
744
int drm_mode_plane_set_obj_prop(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane.h
774
#define drm_for_each_plane_mask(plane, dev, plane_mask) \
sys/dev/drm/include/drm/drm_plane.h
775
list_for_each_entry((plane), &(dev)->mode_config.plane_list, head) \
sys/dev/drm/include/drm/drm_plane.h
776
for_each_if ((plane_mask) & drm_plane_mask(plane))
sys/dev/drm/include/drm/drm_plane.h
787
#define drm_for_each_legacy_plane(plane, dev) \
sys/dev/drm/include/drm/drm_plane.h
788
list_for_each_entry(plane, &(dev)->mode_config.plane_list, head) \
sys/dev/drm/include/drm/drm_plane.h
789
for_each_if (plane->type == DRM_PLANE_TYPE_OVERLAY)
sys/dev/drm/include/drm/drm_plane.h
798
#define drm_for_each_plane(plane, dev) \
sys/dev/drm/include/drm/drm_plane.h
799
list_for_each_entry(plane, &(dev)->mode_config.plane_list, head)
sys/dev/drm/include/drm/drm_plane_helper.h
41
int drm_plane_helper_check_update(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane_helper.h
52
int drm_primary_helper_update(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane_helper.h
60
int drm_primary_helper_disable(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane_helper.h
62
void drm_primary_helper_destroy(struct drm_plane *plane);
sys/dev/drm/include/drm/drm_plane_helper.h
65
int drm_plane_helper_update(struct drm_plane *plane, struct drm_crtc *crtc,
sys/dev/drm/include/drm/drm_plane_helper.h
72
int drm_plane_helper_disable(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_plane_helper.h
76
int drm_plane_helper_commit(struct drm_plane *plane,
sys/dev/drm/include/drm/drm_simple_kms_helper.h
168
struct drm_plane plane;