diff options
Diffstat (limited to 'drivers/gpu')
53 files changed, 145 insertions, 147 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c index 8d0ff1c8db8e..84afaae97e65 100644 --- a/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c +++ b/drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | |||
@@ -2072,7 +2072,7 @@ static int dce_v10_0_crtc_do_set_base(struct drm_crtc *crtc, | |||
2072 | 2072 | ||
2073 | pipe_config = AMDGPU_TILING_GET(tiling_flags, PIPE_CONFIG); | 2073 | pipe_config = AMDGPU_TILING_GET(tiling_flags, PIPE_CONFIG); |
2074 | 2074 | ||
2075 | switch (target_fb->pixel_format) { | 2075 | switch (target_fb->format->format) { |
2076 | case DRM_FORMAT_C8: | 2076 | case DRM_FORMAT_C8: |
2077 | fb_format = REG_SET_FIELD(0, GRPH_CONTROL, GRPH_DEPTH, 0); | 2077 | fb_format = REG_SET_FIELD(0, GRPH_CONTROL, GRPH_DEPTH, 0); |
2078 | fb_format = REG_SET_FIELD(fb_format, GRPH_CONTROL, GRPH_FORMAT, 0); | 2078 | fb_format = REG_SET_FIELD(fb_format, GRPH_CONTROL, GRPH_FORMAT, 0); |
@@ -2145,7 +2145,7 @@ static int dce_v10_0_crtc_do_set_base(struct drm_crtc *crtc, | |||
2145 | break; | 2145 | break; |
2146 | default: | 2146 | default: |
2147 | DRM_ERROR("Unsupported screen format %s\n", | 2147 | DRM_ERROR("Unsupported screen format %s\n", |
2148 | drm_get_format_name(target_fb->pixel_format, &format_name)); | 2148 | drm_get_format_name(target_fb->format->format, &format_name)); |
2149 | return -EINVAL; | 2149 | return -EINVAL; |
2150 | } | 2150 | } |
2151 | 2151 | ||
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c index c25edecb46d4..7a7fa96d2e49 100644 --- a/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c +++ b/drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | |||
@@ -2053,7 +2053,7 @@ static int dce_v11_0_crtc_do_set_base(struct drm_crtc *crtc, | |||
2053 | 2053 | ||
2054 | pipe_config = AMDGPU_TILING_GET(tiling_flags, PIPE_CONFIG); | 2054 | pipe_config = AMDGPU_TILING_GET(tiling_flags, PIPE_CONFIG); |
2055 | 2055 | ||
2056 | switch (target_fb->pixel_format) { | 2056 | switch (target_fb->format->format) { |
2057 | case DRM_FORMAT_C8: | 2057 | case DRM_FORMAT_C8: |
2058 | fb_format = REG_SET_FIELD(0, GRPH_CONTROL, GRPH_DEPTH, 0); | 2058 | fb_format = REG_SET_FIELD(0, GRPH_CONTROL, GRPH_DEPTH, 0); |
2059 | fb_format = REG_SET_FIELD(fb_format, GRPH_CONTROL, GRPH_FORMAT, 0); | 2059 | fb_format = REG_SET_FIELD(fb_format, GRPH_CONTROL, GRPH_FORMAT, 0); |
@@ -2126,7 +2126,7 @@ static int dce_v11_0_crtc_do_set_base(struct drm_crtc *crtc, | |||
2126 | break; | 2126 | break; |
2127 | default: | 2127 | default: |
2128 | DRM_ERROR("Unsupported screen format %s\n", | 2128 | DRM_ERROR("Unsupported screen format %s\n", |
2129 | drm_get_format_name(target_fb->pixel_format, &format_name)); | 2129 | drm_get_format_name(target_fb->format->format, &format_name)); |
2130 | return -EINVAL; | 2130 | return -EINVAL; |
2131 | } | 2131 | } |
2132 | 2132 | ||
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c index ffd20f90788c..59eff6e9a883 100644 --- a/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c +++ b/drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | |||
@@ -1501,7 +1501,7 @@ static int dce_v6_0_crtc_do_set_base(struct drm_crtc *crtc, | |||
1501 | amdgpu_bo_get_tiling_flags(abo, &tiling_flags); | 1501 | amdgpu_bo_get_tiling_flags(abo, &tiling_flags); |
1502 | amdgpu_bo_unreserve(abo); | 1502 | amdgpu_bo_unreserve(abo); |
1503 | 1503 | ||
1504 | switch (target_fb->pixel_format) { | 1504 | switch (target_fb->format->format) { |
1505 | case DRM_FORMAT_C8: | 1505 | case DRM_FORMAT_C8: |
1506 | fb_format = (GRPH_DEPTH(GRPH_DEPTH_8BPP) | | 1506 | fb_format = (GRPH_DEPTH(GRPH_DEPTH_8BPP) | |
1507 | GRPH_FORMAT(GRPH_FORMAT_INDEXED)); | 1507 | GRPH_FORMAT(GRPH_FORMAT_INDEXED)); |
@@ -1567,7 +1567,7 @@ static int dce_v6_0_crtc_do_set_base(struct drm_crtc *crtc, | |||
1567 | break; | 1567 | break; |
1568 | default: | 1568 | default: |
1569 | DRM_ERROR("Unsupported screen format %s\n", | 1569 | DRM_ERROR("Unsupported screen format %s\n", |
1570 | drm_get_format_name(target_fb->pixel_format, &format_name)); | 1570 | drm_get_format_name(target_fb->format->format, &format_name)); |
1571 | return -EINVAL; | 1571 | return -EINVAL; |
1572 | } | 1572 | } |
1573 | 1573 | ||
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c index e6f446af3818..8de832dd981d 100644 --- a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c +++ b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | |||
@@ -1950,7 +1950,7 @@ static int dce_v8_0_crtc_do_set_base(struct drm_crtc *crtc, | |||
1950 | 1950 | ||
1951 | pipe_config = AMDGPU_TILING_GET(tiling_flags, PIPE_CONFIG); | 1951 | pipe_config = AMDGPU_TILING_GET(tiling_flags, PIPE_CONFIG); |
1952 | 1952 | ||
1953 | switch (target_fb->pixel_format) { | 1953 | switch (target_fb->format->format) { |
1954 | case DRM_FORMAT_C8: | 1954 | case DRM_FORMAT_C8: |
1955 | fb_format = ((GRPH_DEPTH_8BPP << GRPH_CONTROL__GRPH_DEPTH__SHIFT) | | 1955 | fb_format = ((GRPH_DEPTH_8BPP << GRPH_CONTROL__GRPH_DEPTH__SHIFT) | |
1956 | (GRPH_FORMAT_INDEXED << GRPH_CONTROL__GRPH_FORMAT__SHIFT)); | 1956 | (GRPH_FORMAT_INDEXED << GRPH_CONTROL__GRPH_FORMAT__SHIFT)); |
@@ -2016,7 +2016,7 @@ static int dce_v8_0_crtc_do_set_base(struct drm_crtc *crtc, | |||
2016 | break; | 2016 | break; |
2017 | default: | 2017 | default: |
2018 | DRM_ERROR("Unsupported screen format %s\n", | 2018 | DRM_ERROR("Unsupported screen format %s\n", |
2019 | drm_get_format_name(target_fb->pixel_format, &format_name)); | 2019 | drm_get_format_name(target_fb->format->format, &format_name)); |
2020 | return -EINVAL; | 2020 | return -EINVAL; |
2021 | } | 2021 | } |
2022 | 2022 | ||
diff --git a/drivers/gpu/drm/arc/arcpgu_crtc.c b/drivers/gpu/drm/arc/arcpgu_crtc.c index 5c26c5f126a3..ad9a95916f1f 100644 --- a/drivers/gpu/drm/arc/arcpgu_crtc.c +++ b/drivers/gpu/drm/arc/arcpgu_crtc.c | |||
@@ -36,7 +36,7 @@ static void arc_pgu_set_pxl_fmt(struct drm_crtc *crtc) | |||
36 | { | 36 | { |
37 | struct arcpgu_drm_private *arcpgu = crtc_to_arcpgu_priv(crtc); | 37 | struct arcpgu_drm_private *arcpgu = crtc_to_arcpgu_priv(crtc); |
38 | const struct drm_framebuffer *fb = crtc->primary->state->fb; | 38 | const struct drm_framebuffer *fb = crtc->primary->state->fb; |
39 | uint32_t pixel_format = fb->pixel_format; | 39 | uint32_t pixel_format = fb->format->format; |
40 | struct simplefb_format *format = NULL; | 40 | struct simplefb_format *format = NULL; |
41 | int i; | 41 | int i; |
42 | 42 | ||
diff --git a/drivers/gpu/drm/arm/hdlcd_crtc.c b/drivers/gpu/drm/arm/hdlcd_crtc.c index ecdcd99c92cc..20ebfb4fbdfa 100644 --- a/drivers/gpu/drm/arm/hdlcd_crtc.c +++ b/drivers/gpu/drm/arm/hdlcd_crtc.c | |||
@@ -65,7 +65,7 @@ static int hdlcd_set_pxl_fmt(struct drm_crtc *crtc) | |||
65 | struct simplefb_format *format = NULL; | 65 | struct simplefb_format *format = NULL; |
66 | int i; | 66 | int i; |
67 | 67 | ||
68 | pixel_format = fb->pixel_format; | 68 | pixel_format = fb->format->format; |
69 | 69 | ||
70 | for (i = 0; i < ARRAY_SIZE(supported_formats); i++) { | 70 | for (i = 0; i < ARRAY_SIZE(supported_formats); i++) { |
71 | if (supported_formats[i].fourcc == pixel_format) | 71 | if (supported_formats[i].fourcc == pixel_format) |
diff --git a/drivers/gpu/drm/arm/malidp_planes.c b/drivers/gpu/drm/arm/malidp_planes.c index 533ee2fa64be..eff2fe47e26a 100644 --- a/drivers/gpu/drm/arm/malidp_planes.c +++ b/drivers/gpu/drm/arm/malidp_planes.c | |||
@@ -112,7 +112,7 @@ static int malidp_de_plane_check(struct drm_plane *plane, | |||
112 | fb = state->fb; | 112 | fb = state->fb; |
113 | 113 | ||
114 | ms->format = malidp_hw_get_format_id(&mp->hwdev->map, mp->layer->id, | 114 | ms->format = malidp_hw_get_format_id(&mp->hwdev->map, mp->layer->id, |
115 | fb->pixel_format); | 115 | fb->format->format); |
116 | if (ms->format == MALIDP_INVALID_FORMAT_ID) | 116 | if (ms->format == MALIDP_INVALID_FORMAT_ID) |
117 | return -EINVAL; | 117 | return -EINVAL; |
118 | 118 | ||
@@ -137,8 +137,8 @@ static int malidp_de_plane_check(struct drm_plane *plane, | |||
137 | 137 | ||
138 | /* packed RGB888 / BGR888 can't be rotated or flipped */ | 138 | /* packed RGB888 / BGR888 can't be rotated or flipped */ |
139 | if (state->rotation != DRM_ROTATE_0 && | 139 | if (state->rotation != DRM_ROTATE_0 && |
140 | (fb->pixel_format == DRM_FORMAT_RGB888 || | 140 | (fb->format->format == DRM_FORMAT_RGB888 || |
141 | fb->pixel_format == DRM_FORMAT_BGR888)) | 141 | fb->format->format == DRM_FORMAT_BGR888)) |
142 | return -EINVAL; | 142 | return -EINVAL; |
143 | 143 | ||
144 | ms->rotmem_size = 0; | 144 | ms->rotmem_size = 0; |
@@ -147,7 +147,7 @@ static int malidp_de_plane_check(struct drm_plane *plane, | |||
147 | 147 | ||
148 | val = mp->hwdev->rotmem_required(mp->hwdev, state->crtc_h, | 148 | val = mp->hwdev->rotmem_required(mp->hwdev, state->crtc_h, |
149 | state->crtc_w, | 149 | state->crtc_w, |
150 | fb->pixel_format); | 150 | fb->format->format); |
151 | if (val < 0) | 151 | if (val < 0) |
152 | return val; | 152 | return val; |
153 | 153 | ||
diff --git a/drivers/gpu/drm/armada/armada_crtc.c b/drivers/gpu/drm/armada/armada_crtc.c index 426e86f4cf96..41fc6ee9da91 100644 --- a/drivers/gpu/drm/armada/armada_crtc.c +++ b/drivers/gpu/drm/armada/armada_crtc.c | |||
@@ -1035,7 +1035,7 @@ static int armada_drm_crtc_page_flip(struct drm_crtc *crtc, | |||
1035 | int ret; | 1035 | int ret; |
1036 | 1036 | ||
1037 | /* We don't support changing the pixel format */ | 1037 | /* We don't support changing the pixel format */ |
1038 | if (fb->pixel_format != crtc->primary->fb->pixel_format) | 1038 | if (fb->format->format != crtc->primary->fb->format->format) |
1039 | return -EINVAL; | 1039 | return -EINVAL; |
1040 | 1040 | ||
1041 | work = kmalloc(sizeof(*work), GFP_KERNEL); | 1041 | work = kmalloc(sizeof(*work), GFP_KERNEL); |
diff --git a/drivers/gpu/drm/armada/armada_overlay.c b/drivers/gpu/drm/armada/armada_overlay.c index a0883a1b3387..34cb73d0db77 100644 --- a/drivers/gpu/drm/armada/armada_overlay.c +++ b/drivers/gpu/drm/armada/armada_overlay.c | |||
@@ -186,7 +186,7 @@ armada_ovl_plane_update(struct drm_plane *plane, struct drm_crtc *crtc, | |||
186 | 186 | ||
187 | armada_drm_plane_calc_addrs(addrs, fb, src_x, src_y); | 187 | armada_drm_plane_calc_addrs(addrs, fb, src_x, src_y); |
188 | 188 | ||
189 | pixel_format = fb->pixel_format; | 189 | pixel_format = fb->format->format; |
190 | hsub = drm_format_horz_chroma_subsampling(pixel_format); | 190 | hsub = drm_format_horz_chroma_subsampling(pixel_format); |
191 | num_planes = fb->format->num_planes; | 191 | num_planes = fb->format->num_planes; |
192 | 192 | ||
diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c index 3e00512ef187..bd2791c4b002 100644 --- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c | |||
@@ -356,7 +356,7 @@ atmel_hlcdc_plane_update_general_settings(struct atmel_hlcdc_plane *plane, | |||
356 | cfg |= ATMEL_HLCDC_LAYER_OVR | ATMEL_HLCDC_LAYER_ITER2BL | | 356 | cfg |= ATMEL_HLCDC_LAYER_OVR | ATMEL_HLCDC_LAYER_ITER2BL | |
357 | ATMEL_HLCDC_LAYER_ITER; | 357 | ATMEL_HLCDC_LAYER_ITER; |
358 | 358 | ||
359 | if (atmel_hlcdc_format_embeds_alpha(state->base.fb->pixel_format)) | 359 | if (atmel_hlcdc_format_embeds_alpha(state->base.fb->format->format)) |
360 | cfg |= ATMEL_HLCDC_LAYER_LAEN; | 360 | cfg |= ATMEL_HLCDC_LAYER_LAEN; |
361 | else | 361 | else |
362 | cfg |= ATMEL_HLCDC_LAYER_GAEN | | 362 | cfg |= ATMEL_HLCDC_LAYER_GAEN | |
@@ -386,13 +386,13 @@ static void atmel_hlcdc_plane_update_format(struct atmel_hlcdc_plane *plane, | |||
386 | u32 cfg; | 386 | u32 cfg; |
387 | int ret; | 387 | int ret; |
388 | 388 | ||
389 | ret = atmel_hlcdc_format_to_plane_mode(state->base.fb->pixel_format, | 389 | ret = atmel_hlcdc_format_to_plane_mode(state->base.fb->format->format, |
390 | &cfg); | 390 | &cfg); |
391 | if (ret) | 391 | if (ret) |
392 | return; | 392 | return; |
393 | 393 | ||
394 | if ((state->base.fb->pixel_format == DRM_FORMAT_YUV422 || | 394 | if ((state->base.fb->format->format == DRM_FORMAT_YUV422 || |
395 | state->base.fb->pixel_format == DRM_FORMAT_NV61) && | 395 | state->base.fb->format->format == DRM_FORMAT_NV61) && |
396 | drm_rotation_90_or_270(state->base.rotation)) | 396 | drm_rotation_90_or_270(state->base.rotation)) |
397 | cfg |= ATMEL_HLCDC_YUV422ROT; | 397 | cfg |= ATMEL_HLCDC_YUV422ROT; |
398 | 398 | ||
@@ -405,7 +405,7 @@ static void atmel_hlcdc_plane_update_format(struct atmel_hlcdc_plane *plane, | |||
405 | * Rotation optimization is not working on RGB888 (rotation is still | 405 | * Rotation optimization is not working on RGB888 (rotation is still |
406 | * working but without any optimization). | 406 | * working but without any optimization). |
407 | */ | 407 | */ |
408 | if (state->base.fb->pixel_format == DRM_FORMAT_RGB888) | 408 | if (state->base.fb->format->format == DRM_FORMAT_RGB888) |
409 | cfg = ATMEL_HLCDC_LAYER_DMA_ROTDIS; | 409 | cfg = ATMEL_HLCDC_LAYER_DMA_ROTDIS; |
410 | else | 410 | else |
411 | cfg = 0; | 411 | cfg = 0; |
@@ -514,7 +514,7 @@ atmel_hlcdc_plane_prepare_disc_area(struct drm_crtc_state *c_state) | |||
514 | ovl_state = drm_plane_state_to_atmel_hlcdc_plane_state(ovl_s); | 514 | ovl_state = drm_plane_state_to_atmel_hlcdc_plane_state(ovl_s); |
515 | 515 | ||
516 | if (!ovl_s->fb || | 516 | if (!ovl_s->fb || |
517 | atmel_hlcdc_format_embeds_alpha(ovl_s->fb->pixel_format) || | 517 | atmel_hlcdc_format_embeds_alpha(ovl_s->fb->format->format) || |
518 | ovl_state->alpha != 255) | 518 | ovl_state->alpha != 255) |
519 | continue; | 519 | continue; |
520 | 520 | ||
@@ -664,8 +664,8 @@ static int atmel_hlcdc_plane_atomic_check(struct drm_plane *p, | |||
664 | patched_src_h = DIV_ROUND_CLOSEST(patched_crtc_h * state->src_h, | 664 | patched_src_h = DIV_ROUND_CLOSEST(patched_crtc_h * state->src_h, |
665 | state->crtc_h); | 665 | state->crtc_h); |
666 | 666 | ||
667 | hsub = drm_format_horz_chroma_subsampling(fb->pixel_format); | 667 | hsub = drm_format_horz_chroma_subsampling(fb->format->format); |
668 | vsub = drm_format_vert_chroma_subsampling(fb->pixel_format); | 668 | vsub = drm_format_vert_chroma_subsampling(fb->format->format); |
669 | 669 | ||
670 | for (i = 0; i < state->nplanes; i++) { | 670 | for (i = 0; i < state->nplanes; i++) { |
671 | unsigned int offset = 0; | 671 | unsigned int offset = 0; |
@@ -741,7 +741,7 @@ static int atmel_hlcdc_plane_atomic_check(struct drm_plane *p, | |||
741 | 741 | ||
742 | if ((state->crtc_h != state->src_h || state->crtc_w != state->src_w) && | 742 | if ((state->crtc_h != state->src_h || state->crtc_w != state->src_w) && |
743 | (!layout->memsize || | 743 | (!layout->memsize || |
744 | atmel_hlcdc_format_embeds_alpha(state->base.fb->pixel_format))) | 744 | atmel_hlcdc_format_embeds_alpha(state->base.fb->format->format))) |
745 | return -EINVAL; | 745 | return -EINVAL; |
746 | 746 | ||
747 | if (state->crtc_x < 0 || state->crtc_y < 0) | 747 | if (state->crtc_x < 0 || state->crtc_y < 0) |
diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c index 62f0f57728e1..b602faf28367 100644 --- a/drivers/gpu/drm/drm_atomic.c +++ b/drivers/gpu/drm/drm_atomic.c | |||
@@ -902,11 +902,11 @@ static int drm_atomic_plane_check(struct drm_plane *plane, | |||
902 | } | 902 | } |
903 | 903 | ||
904 | /* Check whether this plane supports the fb pixel format. */ | 904 | /* Check whether this plane supports the fb pixel format. */ |
905 | ret = drm_plane_check_pixel_format(plane, state->fb->pixel_format); | 905 | ret = drm_plane_check_pixel_format(plane, state->fb->format->format); |
906 | if (ret) { | 906 | if (ret) { |
907 | struct drm_format_name_buf format_name; | 907 | struct drm_format_name_buf format_name; |
908 | DRM_DEBUG_ATOMIC("Invalid pixel format %s\n", | 908 | DRM_DEBUG_ATOMIC("Invalid pixel format %s\n", |
909 | drm_get_format_name(state->fb->pixel_format, | 909 | drm_get_format_name(state->fb->format->format, |
910 | &format_name)); | 910 | &format_name)); |
911 | return ret; | 911 | return ret; |
912 | } | 912 | } |
@@ -964,7 +964,7 @@ static void drm_atomic_plane_print_state(struct drm_printer *p, | |||
964 | struct drm_format_name_buf format_name; | 964 | struct drm_format_name_buf format_name; |
965 | 965 | ||
966 | drm_printf(p, "\t\tformat=%s\n", | 966 | drm_printf(p, "\t\tformat=%s\n", |
967 | drm_get_format_name(fb->pixel_format, &format_name)); | 967 | drm_get_format_name(fb->format->format, &format_name)); |
968 | drm_printf(p, "\t\t\tmodifier=0x%llx\n", fb->modifier); | 968 | drm_printf(p, "\t\t\tmodifier=0x%llx\n", fb->modifier); |
969 | drm_printf(p, "\t\tsize=%dx%d\n", fb->width, fb->height); | 969 | drm_printf(p, "\t\tsize=%dx%d\n", fb->width, fb->height); |
970 | drm_printf(p, "\t\tlayers:\n"); | 970 | drm_printf(p, "\t\tlayers:\n"); |
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index 14c58072651b..080c8d361f1f 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c | |||
@@ -575,11 +575,11 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data, | |||
575 | */ | 575 | */ |
576 | if (!crtc->primary->format_default) { | 576 | if (!crtc->primary->format_default) { |
577 | ret = drm_plane_check_pixel_format(crtc->primary, | 577 | ret = drm_plane_check_pixel_format(crtc->primary, |
578 | fb->pixel_format); | 578 | fb->format->format); |
579 | if (ret) { | 579 | if (ret) { |
580 | struct drm_format_name_buf format_name; | 580 | struct drm_format_name_buf format_name; |
581 | DRM_DEBUG_KMS("Invalid pixel format %s\n", | 581 | DRM_DEBUG_KMS("Invalid pixel format %s\n", |
582 | drm_get_format_name(fb->pixel_format, | 582 | drm_get_format_name(fb->format->format, |
583 | &format_name)); | 583 | &format_name)); |
584 | goto out; | 584 | goto out; |
585 | } | 585 | } |
diff --git a/drivers/gpu/drm/drm_crtc_helper.c b/drivers/gpu/drm/drm_crtc_helper.c index 5d2cb138eba6..94bce0b462aa 100644 --- a/drivers/gpu/drm/drm_crtc_helper.c +++ b/drivers/gpu/drm/drm_crtc_helper.c | |||
@@ -588,8 +588,8 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set) | |||
588 | if (set->crtc->primary->fb == NULL) { | 588 | if (set->crtc->primary->fb == NULL) { |
589 | DRM_DEBUG_KMS("crtc has no fb, full mode set\n"); | 589 | DRM_DEBUG_KMS("crtc has no fb, full mode set\n"); |
590 | mode_changed = true; | 590 | mode_changed = true; |
591 | } else if (set->fb->pixel_format != | 591 | } else if (set->fb->format->format != |
592 | set->crtc->primary->fb->pixel_format) { | 592 | set->crtc->primary->fb->format->format) { |
593 | mode_changed = true; | 593 | mode_changed = true; |
594 | } else | 594 | } else |
595 | fb_changed = true; | 595 | fb_changed = true; |
diff --git a/drivers/gpu/drm/drm_fb_cma_helper.c b/drivers/gpu/drm/drm_fb_cma_helper.c index 181a9eafe34a..aab4465307ed 100644 --- a/drivers/gpu/drm/drm_fb_cma_helper.c +++ b/drivers/gpu/drm/drm_fb_cma_helper.c | |||
@@ -307,7 +307,7 @@ static void drm_fb_cma_describe(struct drm_framebuffer *fb, struct seq_file *m) | |||
307 | int i; | 307 | int i; |
308 | 308 | ||
309 | seq_printf(m, "fb: %dx%d@%4.4s\n", fb->width, fb->height, | 309 | seq_printf(m, "fb: %dx%d@%4.4s\n", fb->width, fb->height, |
310 | (char *)&fb->pixel_format); | 310 | (char *)&fb->format->format); |
311 | 311 | ||
312 | for (i = 0; i < fb->fomat->num_planes; i++) { | 312 | for (i = 0; i < fb->fomat->num_planes; i++) { |
313 | seq_printf(m, " %d: offset=%d pitch=%d, obj: ", | 313 | seq_printf(m, " %d: offset=%d pitch=%d, obj: ", |
diff --git a/drivers/gpu/drm/drm_modeset_helper.c b/drivers/gpu/drm/drm_modeset_helper.c index 3c44409244dc..639e474e7d43 100644 --- a/drivers/gpu/drm/drm_modeset_helper.c +++ b/drivers/gpu/drm/drm_modeset_helper.c | |||
@@ -94,7 +94,6 @@ void drm_helper_mode_fill_fb_struct(struct drm_device *dev, | |||
94 | fb->offsets[i] = mode_cmd->offsets[i]; | 94 | fb->offsets[i] = mode_cmd->offsets[i]; |
95 | } | 95 | } |
96 | fb->modifier = mode_cmd->modifier[0]; | 96 | fb->modifier = mode_cmd->modifier[0]; |
97 | fb->pixel_format = mode_cmd->pixel_format; | ||
98 | fb->flags = mode_cmd->flags; | 97 | fb->flags = mode_cmd->flags; |
99 | } | 98 | } |
100 | EXPORT_SYMBOL(drm_helper_mode_fill_fb_struct); | 99 | EXPORT_SYMBOL(drm_helper_mode_fill_fb_struct); |
diff --git a/drivers/gpu/drm/drm_plane.c b/drivers/gpu/drm/drm_plane.c index c2dc8e6f80ff..f479cda5fc2d 100644 --- a/drivers/gpu/drm/drm_plane.c +++ b/drivers/gpu/drm/drm_plane.c | |||
@@ -482,11 +482,11 @@ static int __setplane_internal(struct drm_plane *plane, | |||
482 | } | 482 | } |
483 | 483 | ||
484 | /* Check whether this plane supports the fb pixel format. */ | 484 | /* Check whether this plane supports the fb pixel format. */ |
485 | ret = drm_plane_check_pixel_format(plane, fb->pixel_format); | 485 | ret = drm_plane_check_pixel_format(plane, fb->format->format); |
486 | if (ret) { | 486 | if (ret) { |
487 | struct drm_format_name_buf format_name; | 487 | struct drm_format_name_buf format_name; |
488 | DRM_DEBUG_KMS("Invalid pixel format %s\n", | 488 | DRM_DEBUG_KMS("Invalid pixel format %s\n", |
489 | drm_get_format_name(fb->pixel_format, | 489 | drm_get_format_name(fb->format->format, |
490 | &format_name)); | 490 | &format_name)); |
491 | goto out; | 491 | goto out; |
492 | } | 492 | } |
@@ -858,7 +858,7 @@ int drm_mode_page_flip_ioctl(struct drm_device *dev, | |||
858 | if (ret) | 858 | if (ret) |
859 | goto out; | 859 | goto out; |
860 | 860 | ||
861 | if (crtc->primary->fb->pixel_format != fb->pixel_format) { | 861 | if (crtc->primary->fb->format->format != fb->format->format) { |
862 | DRM_DEBUG_KMS("Page flip is not allowed to change frame buffer format.\n"); | 862 | DRM_DEBUG_KMS("Page flip is not allowed to change frame buffer format.\n"); |
863 | ret = -EINVAL; | 863 | ret = -EINVAL; |
864 | goto out; | 864 | goto out; |
diff --git a/drivers/gpu/drm/exynos/exynos5433_drm_decon.c b/drivers/gpu/drm/exynos/exynos5433_drm_decon.c index e8ce4a318586..c5c01628c715 100644 --- a/drivers/gpu/drm/exynos/exynos5433_drm_decon.c +++ b/drivers/gpu/drm/exynos/exynos5433_drm_decon.c | |||
@@ -200,7 +200,7 @@ static void decon_win_set_pixfmt(struct decon_context *ctx, unsigned int win, | |||
200 | val = readl(ctx->addr + DECON_WINCONx(win)); | 200 | val = readl(ctx->addr + DECON_WINCONx(win)); |
201 | val &= ~WINCONx_BPPMODE_MASK; | 201 | val &= ~WINCONx_BPPMODE_MASK; |
202 | 202 | ||
203 | switch (fb->pixel_format) { | 203 | switch (fb->format->format) { |
204 | case DRM_FORMAT_XRGB1555: | 204 | case DRM_FORMAT_XRGB1555: |
205 | val |= WINCONx_BPPMODE_16BPP_I1555; | 205 | val |= WINCONx_BPPMODE_16BPP_I1555; |
206 | val |= WINCONx_HAWSWP_F; | 206 | val |= WINCONx_HAWSWP_F; |
diff --git a/drivers/gpu/drm/exynos/exynos7_drm_decon.c b/drivers/gpu/drm/exynos/exynos7_drm_decon.c index 58dc9a5196bc..f9ab19e205e2 100644 --- a/drivers/gpu/drm/exynos/exynos7_drm_decon.c +++ b/drivers/gpu/drm/exynos/exynos7_drm_decon.c | |||
@@ -281,7 +281,7 @@ static void decon_win_set_pixfmt(struct decon_context *ctx, unsigned int win, | |||
281 | val = readl(ctx->regs + WINCON(win)); | 281 | val = readl(ctx->regs + WINCON(win)); |
282 | val &= ~WINCONx_BPPMODE_MASK; | 282 | val &= ~WINCONx_BPPMODE_MASK; |
283 | 283 | ||
284 | switch (fb->pixel_format) { | 284 | switch (fb->format->format) { |
285 | case DRM_FORMAT_RGB565: | 285 | case DRM_FORMAT_RGB565: |
286 | val |= WINCONx_BPPMODE_16BPP_565; | 286 | val |= WINCONx_BPPMODE_16BPP_565; |
287 | val |= WINCONx_BURSTLEN_16WORD; | 287 | val |= WINCONx_BURSTLEN_16WORD; |
diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c b/drivers/gpu/drm/exynos/exynos_drm_fimd.c index 0029065979b8..745cfbdf6b39 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c +++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c | |||
@@ -804,7 +804,7 @@ static void fimd_update_plane(struct exynos_drm_crtc *crtc, | |||
804 | DRM_DEBUG_KMS("osd size = 0x%x\n", (unsigned int)val); | 804 | DRM_DEBUG_KMS("osd size = 0x%x\n", (unsigned int)val); |
805 | } | 805 | } |
806 | 806 | ||
807 | fimd_win_set_pixfmt(ctx, win, fb->pixel_format, state->src.w); | 807 | fimd_win_set_pixfmt(ctx, win, fb->format->format, state->src.w); |
808 | 808 | ||
809 | /* hardware window 0 doesn't support color key. */ | 809 | /* hardware window 0 doesn't support color key. */ |
810 | if (win != 0) | 810 | if (win != 0) |
diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c index b313e61aab65..a106046e0c93 100644 --- a/drivers/gpu/drm/exynos/exynos_mixer.c +++ b/drivers/gpu/drm/exynos/exynos_mixer.c | |||
@@ -485,7 +485,7 @@ static void vp_video_buffer(struct mixer_context *ctx, | |||
485 | bool crcb_mode = false; | 485 | bool crcb_mode = false; |
486 | u32 val; | 486 | u32 val; |
487 | 487 | ||
488 | switch (fb->pixel_format) { | 488 | switch (fb->format->format) { |
489 | case DRM_FORMAT_NV12: | 489 | case DRM_FORMAT_NV12: |
490 | crcb_mode = false; | 490 | crcb_mode = false; |
491 | break; | 491 | break; |
@@ -494,7 +494,7 @@ static void vp_video_buffer(struct mixer_context *ctx, | |||
494 | break; | 494 | break; |
495 | default: | 495 | default: |
496 | DRM_ERROR("pixel format for vp is wrong [%d].\n", | 496 | DRM_ERROR("pixel format for vp is wrong [%d].\n", |
497 | fb->pixel_format); | 497 | fb->format->format); |
498 | return; | 498 | return; |
499 | } | 499 | } |
500 | 500 | ||
@@ -597,7 +597,7 @@ static void mixer_graph_buffer(struct mixer_context *ctx, | |||
597 | unsigned int fmt; | 597 | unsigned int fmt; |
598 | u32 val; | 598 | u32 val; |
599 | 599 | ||
600 | switch (fb->pixel_format) { | 600 | switch (fb->format->format) { |
601 | case DRM_FORMAT_XRGB4444: | 601 | case DRM_FORMAT_XRGB4444: |
602 | case DRM_FORMAT_ARGB4444: | 602 | case DRM_FORMAT_ARGB4444: |
603 | fmt = MXR_FORMAT_ARGB4444; | 603 | fmt = MXR_FORMAT_ARGB4444; |
@@ -681,7 +681,7 @@ static void mixer_graph_buffer(struct mixer_context *ctx, | |||
681 | mixer_cfg_scan(ctx, mode->vdisplay); | 681 | mixer_cfg_scan(ctx, mode->vdisplay); |
682 | mixer_cfg_rgb_fmt(ctx, mode->vdisplay); | 682 | mixer_cfg_rgb_fmt(ctx, mode->vdisplay); |
683 | mixer_cfg_layer(ctx, win, priority, true); | 683 | mixer_cfg_layer(ctx, win, priority, true); |
684 | mixer_cfg_gfx_blend(ctx, win, is_alpha_format(fb->pixel_format)); | 684 | mixer_cfg_gfx_blend(ctx, win, is_alpha_format(fb->format->format)); |
685 | 685 | ||
686 | /* layer update mandatory for mixer 16.0.33.0 */ | 686 | /* layer update mandatory for mixer 16.0.33.0 */ |
687 | if (ctx->mxr_ver == MXR_VER_16_0_33_0 || | 687 | if (ctx->mxr_ver == MXR_VER_16_0_33_0 || |
diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c index a99f48847420..0a20723aa6e1 100644 --- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c +++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c | |||
@@ -44,7 +44,7 @@ static int fsl_dcu_drm_plane_atomic_check(struct drm_plane *plane, | |||
44 | if (!state->fb || !state->crtc) | 44 | if (!state->fb || !state->crtc) |
45 | return 0; | 45 | return 0; |
46 | 46 | ||
47 | switch (fb->pixel_format) { | 47 | switch (fb->format->format) { |
48 | case DRM_FORMAT_RGB565: | 48 | case DRM_FORMAT_RGB565: |
49 | case DRM_FORMAT_RGB888: | 49 | case DRM_FORMAT_RGB888: |
50 | case DRM_FORMAT_XRGB8888: | 50 | case DRM_FORMAT_XRGB8888: |
@@ -96,7 +96,7 @@ static void fsl_dcu_drm_plane_atomic_update(struct drm_plane *plane, | |||
96 | 96 | ||
97 | gem = drm_fb_cma_get_gem_obj(fb, 0); | 97 | gem = drm_fb_cma_get_gem_obj(fb, 0); |
98 | 98 | ||
99 | switch (fb->pixel_format) { | 99 | switch (fb->format->format) { |
100 | case DRM_FORMAT_RGB565: | 100 | case DRM_FORMAT_RGB565: |
101 | bpp = FSL_DCU_RGB565; | 101 | bpp = FSL_DCU_RGB565; |
102 | break; | 102 | break; |
diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c index 3ea70459b901..307d460ab684 100644 --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | |||
@@ -617,7 +617,7 @@ static void ade_rdma_set(void __iomem *base, struct drm_framebuffer *fb, | |||
617 | ch + 1, y, in_h, stride, (u32)obj->paddr); | 617 | ch + 1, y, in_h, stride, (u32)obj->paddr); |
618 | DRM_DEBUG_DRIVER("addr=0x%x, fb:%dx%d, pixel_format=%d(%s)\n", | 618 | DRM_DEBUG_DRIVER("addr=0x%x, fb:%dx%d, pixel_format=%d(%s)\n", |
619 | addr, fb->width, fb->height, fmt, | 619 | addr, fb->width, fb->height, fmt, |
620 | drm_get_format_name(fb->pixel_format, &format_name)); | 620 | drm_get_format_name(fb->format->format, &format_name)); |
621 | 621 | ||
622 | /* get reg offset */ | 622 | /* get reg offset */ |
623 | reg_ctrl = RD_CH_CTRL(ch); | 623 | reg_ctrl = RD_CH_CTRL(ch); |
@@ -773,7 +773,7 @@ static void ade_update_channel(struct ade_plane *aplane, | |||
773 | { | 773 | { |
774 | struct ade_hw_ctx *ctx = aplane->ctx; | 774 | struct ade_hw_ctx *ctx = aplane->ctx; |
775 | void __iomem *base = ctx->base; | 775 | void __iomem *base = ctx->base; |
776 | u32 fmt = ade_get_format(fb->pixel_format); | 776 | u32 fmt = ade_get_format(fb->format->format); |
777 | u32 ch = aplane->ch; | 777 | u32 ch = aplane->ch; |
778 | u32 in_w; | 778 | u32 in_w; |
779 | u32 in_h; | 779 | u32 in_h; |
@@ -835,7 +835,7 @@ static int ade_plane_atomic_check(struct drm_plane *plane, | |||
835 | if (!crtc || !fb) | 835 | if (!crtc || !fb) |
836 | return 0; | 836 | return 0; |
837 | 837 | ||
838 | fmt = ade_get_format(fb->pixel_format); | 838 | fmt = ade_get_format(fb->format->format); |
839 | if (fmt == ADE_FORMAT_UNSUPPORT) | 839 | if (fmt == ADE_FORMAT_UNSUPPORT) |
840 | return -EINVAL; | 840 | return -EINVAL; |
841 | 841 | ||
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index ec462dae46bc..b77b53b47acc 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c | |||
@@ -3021,7 +3021,8 @@ static void intel_plane_info(struct seq_file *m, struct intel_crtc *intel_crtc) | |||
3021 | state = plane->state; | 3021 | state = plane->state; |
3022 | 3022 | ||
3023 | if (state->fb) { | 3023 | if (state->fb) { |
3024 | drm_get_format_name(state->fb->pixel_format, &format_name); | 3024 | drm_get_format_name(state->fb->format->format, |
3025 | &format_name); | ||
3025 | } else { | 3026 | } else { |
3026 | sprintf(format_name.str, "N/A"); | 3027 | sprintf(format_name.str, "N/A"); |
3027 | } | 3028 | } |
diff --git a/drivers/gpu/drm/i915/intel_atomic_plane.c b/drivers/gpu/drm/i915/intel_atomic_plane.c index dbe9fb41ae53..e049838159a1 100644 --- a/drivers/gpu/drm/i915/intel_atomic_plane.c +++ b/drivers/gpu/drm/i915/intel_atomic_plane.c | |||
@@ -155,11 +155,11 @@ static int intel_plane_atomic_check(struct drm_plane *plane, | |||
155 | * RGB 16-bit 5:6:5, and Indexed 8-bit. | 155 | * RGB 16-bit 5:6:5, and Indexed 8-bit. |
156 | * TBD: Add RGB64 case once its added in supported format list. | 156 | * TBD: Add RGB64 case once its added in supported format list. |
157 | */ | 157 | */ |
158 | switch (state->fb->pixel_format) { | 158 | switch (state->fb->format->format) { |
159 | case DRM_FORMAT_C8: | 159 | case DRM_FORMAT_C8: |
160 | case DRM_FORMAT_RGB565: | 160 | case DRM_FORMAT_RGB565: |
161 | DRM_DEBUG_KMS("Unsupported pixel format %s for 90/270!\n", | 161 | DRM_DEBUG_KMS("Unsupported pixel format %s for 90/270!\n", |
162 | drm_get_format_name(state->fb->pixel_format, | 162 | drm_get_format_name(state->fb->format->format, |
163 | &format_name)); | 163 | &format_name)); |
164 | return -EINVAL; | 164 | return -EINVAL; |
165 | 165 | ||
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 4f0675460336..3b56b2cae804 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -2455,7 +2455,7 @@ u32 intel_compute_tile_offset(int *x, int *y, | |||
2455 | u32 alignment; | 2455 | u32 alignment; |
2456 | 2456 | ||
2457 | /* AUX_DIST needs only 4K alignment */ | 2457 | /* AUX_DIST needs only 4K alignment */ |
2458 | if (fb->pixel_format == DRM_FORMAT_NV12 && plane == 1) | 2458 | if (fb->format->format == DRM_FORMAT_NV12 && plane == 1) |
2459 | alignment = 4096; | 2459 | alignment = 4096; |
2460 | else | 2460 | else |
2461 | alignment = intel_surf_alignment(dev_priv, fb->modifier); | 2461 | alignment = intel_surf_alignment(dev_priv, fb->modifier); |
@@ -2700,7 +2700,7 @@ intel_alloc_initial_plane_obj(struct intel_crtc *crtc, | |||
2700 | if (plane_config->tiling == I915_TILING_X) | 2700 | if (plane_config->tiling == I915_TILING_X) |
2701 | obj->tiling_and_stride = fb->pitches[0] | I915_TILING_X; | 2701 | obj->tiling_and_stride = fb->pitches[0] | I915_TILING_X; |
2702 | 2702 | ||
2703 | mode_cmd.pixel_format = fb->pixel_format; | 2703 | mode_cmd.pixel_format = fb->format->format; |
2704 | mode_cmd.width = fb->width; | 2704 | mode_cmd.width = fb->width; |
2705 | mode_cmd.height = fb->height; | 2705 | mode_cmd.height = fb->height; |
2706 | mode_cmd.pitches[0] = fb->pitches[0]; | 2706 | mode_cmd.pitches[0] = fb->pitches[0]; |
@@ -2976,7 +2976,7 @@ int skl_check_plane_surface(struct intel_plane_state *plane_state) | |||
2976 | * Handle the AUX surface first since | 2976 | * Handle the AUX surface first since |
2977 | * the main surface setup depends on it. | 2977 | * the main surface setup depends on it. |
2978 | */ | 2978 | */ |
2979 | if (fb->pixel_format == DRM_FORMAT_NV12) { | 2979 | if (fb->format->format == DRM_FORMAT_NV12) { |
2980 | ret = skl_check_nv12_aux_surface(plane_state); | 2980 | ret = skl_check_nv12_aux_surface(plane_state); |
2981 | if (ret) | 2981 | if (ret) |
2982 | return ret; | 2982 | return ret; |
@@ -3031,7 +3031,7 @@ static void i9xx_update_primary_plane(struct drm_plane *primary, | |||
3031 | I915_WRITE(PRIMCNSTALPHA(plane), 0); | 3031 | I915_WRITE(PRIMCNSTALPHA(plane), 0); |
3032 | } | 3032 | } |
3033 | 3033 | ||
3034 | switch (fb->pixel_format) { | 3034 | switch (fb->format->format) { |
3035 | case DRM_FORMAT_C8: | 3035 | case DRM_FORMAT_C8: |
3036 | dspcntr |= DISPPLANE_8BPP; | 3036 | dspcntr |= DISPPLANE_8BPP; |
3037 | break; | 3037 | break; |
@@ -3146,7 +3146,7 @@ static void ironlake_update_primary_plane(struct drm_plane *primary, | |||
3146 | if (IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv)) | 3146 | if (IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv)) |
3147 | dspcntr |= DISPPLANE_PIPE_CSC_ENABLE; | 3147 | dspcntr |= DISPPLANE_PIPE_CSC_ENABLE; |
3148 | 3148 | ||
3149 | switch (fb->pixel_format) { | 3149 | switch (fb->format->format) { |
3150 | case DRM_FORMAT_C8: | 3150 | case DRM_FORMAT_C8: |
3151 | dspcntr |= DISPPLANE_8BPP; | 3151 | dspcntr |= DISPPLANE_8BPP; |
3152 | break; | 3152 | break; |
@@ -3282,7 +3282,7 @@ u32 skl_plane_stride(const struct drm_framebuffer *fb, int plane, | |||
3282 | stride /= intel_tile_height(dev_priv, fb->modifier, cpp); | 3282 | stride /= intel_tile_height(dev_priv, fb->modifier, cpp); |
3283 | } else { | 3283 | } else { |
3284 | stride /= intel_fb_stride_alignment(dev_priv, fb->modifier, | 3284 | stride /= intel_fb_stride_alignment(dev_priv, fb->modifier, |
3285 | fb->pixel_format); | 3285 | fb->format->format); |
3286 | } | 3286 | } |
3287 | 3287 | ||
3288 | return stride; | 3288 | return stride; |
@@ -3396,7 +3396,7 @@ static void skylake_update_primary_plane(struct drm_plane *plane, | |||
3396 | PLANE_CTL_PIPE_GAMMA_ENABLE | | 3396 | PLANE_CTL_PIPE_GAMMA_ENABLE | |
3397 | PLANE_CTL_PIPE_CSC_ENABLE; | 3397 | PLANE_CTL_PIPE_CSC_ENABLE; |
3398 | 3398 | ||
3399 | plane_ctl |= skl_plane_ctl_format(fb->pixel_format); | 3399 | plane_ctl |= skl_plane_ctl_format(fb->format->format); |
3400 | plane_ctl |= skl_plane_ctl_tiling(fb->modifier); | 3400 | plane_ctl |= skl_plane_ctl_tiling(fb->modifier); |
3401 | plane_ctl |= PLANE_CTL_PLANE_GAMMA_DISABLE; | 3401 | plane_ctl |= PLANE_CTL_PLANE_GAMMA_DISABLE; |
3402 | plane_ctl |= skl_plane_ctl_rotation(rotation); | 3402 | plane_ctl |= skl_plane_ctl_rotation(rotation); |
@@ -4768,7 +4768,7 @@ static int skl_update_scaler_plane(struct intel_crtc_state *crtc_state, | |||
4768 | } | 4768 | } |
4769 | 4769 | ||
4770 | /* Check src format */ | 4770 | /* Check src format */ |
4771 | switch (fb->pixel_format) { | 4771 | switch (fb->format->format) { |
4772 | case DRM_FORMAT_RGB565: | 4772 | case DRM_FORMAT_RGB565: |
4773 | case DRM_FORMAT_XBGR8888: | 4773 | case DRM_FORMAT_XBGR8888: |
4774 | case DRM_FORMAT_XRGB8888: | 4774 | case DRM_FORMAT_XRGB8888: |
@@ -4784,7 +4784,7 @@ static int skl_update_scaler_plane(struct intel_crtc_state *crtc_state, | |||
4784 | default: | 4784 | default: |
4785 | DRM_DEBUG_KMS("[PLANE:%d:%s] FB:%d unsupported scaling format 0x%x\n", | 4785 | DRM_DEBUG_KMS("[PLANE:%d:%s] FB:%d unsupported scaling format 0x%x\n", |
4786 | intel_plane->base.base.id, intel_plane->base.name, | 4786 | intel_plane->base.base.id, intel_plane->base.name, |
4787 | fb->base.id, fb->pixel_format); | 4787 | fb->base.id, fb->format->format); |
4788 | return -EINVAL; | 4788 | return -EINVAL; |
4789 | } | 4789 | } |
4790 | 4790 | ||
@@ -8714,7 +8714,6 @@ i9xx_get_initial_plane_config(struct intel_crtc *crtc, | |||
8714 | 8714 | ||
8715 | pixel_format = val & DISPPLANE_PIXFORMAT_MASK; | 8715 | pixel_format = val & DISPPLANE_PIXFORMAT_MASK; |
8716 | fourcc = i9xx_format_to_fourcc(pixel_format); | 8716 | fourcc = i9xx_format_to_fourcc(pixel_format); |
8717 | fb->pixel_format = fourcc; | ||
8718 | fb->format = drm_format_info(fourcc); | 8717 | fb->format = drm_format_info(fourcc); |
8719 | 8718 | ||
8720 | if (INTEL_GEN(dev_priv) >= 4) { | 8719 | if (INTEL_GEN(dev_priv) >= 4) { |
@@ -8736,7 +8735,7 @@ i9xx_get_initial_plane_config(struct intel_crtc *crtc, | |||
8736 | fb->pitches[0] = val & 0xffffffc0; | 8735 | fb->pitches[0] = val & 0xffffffc0; |
8737 | 8736 | ||
8738 | aligned_height = intel_fb_align_height(dev, fb->height, | 8737 | aligned_height = intel_fb_align_height(dev, fb->height, |
8739 | fb->pixel_format, | 8738 | fb->format->format, |
8740 | fb->modifier); | 8739 | fb->modifier); |
8741 | 8740 | ||
8742 | plane_config->size = fb->pitches[0] * aligned_height; | 8741 | plane_config->size = fb->pitches[0] * aligned_height; |
@@ -9745,7 +9744,6 @@ skylake_get_initial_plane_config(struct intel_crtc *crtc, | |||
9745 | fourcc = skl_format_to_fourcc(pixel_format, | 9744 | fourcc = skl_format_to_fourcc(pixel_format, |
9746 | val & PLANE_CTL_ORDER_RGBX, | 9745 | val & PLANE_CTL_ORDER_RGBX, |
9747 | val & PLANE_CTL_ALPHA_MASK); | 9746 | val & PLANE_CTL_ALPHA_MASK); |
9748 | fb->pixel_format = fourcc; | ||
9749 | fb->format = drm_format_info(fourcc); | 9747 | fb->format = drm_format_info(fourcc); |
9750 | 9748 | ||
9751 | tiling = val & PLANE_CTL_TILED_MASK; | 9749 | tiling = val & PLANE_CTL_TILED_MASK; |
@@ -9779,11 +9777,11 @@ skylake_get_initial_plane_config(struct intel_crtc *crtc, | |||
9779 | 9777 | ||
9780 | val = I915_READ(PLANE_STRIDE(pipe, 0)); | 9778 | val = I915_READ(PLANE_STRIDE(pipe, 0)); |
9781 | stride_mult = intel_fb_stride_alignment(dev_priv, fb->modifier, | 9779 | stride_mult = intel_fb_stride_alignment(dev_priv, fb->modifier, |
9782 | fb->pixel_format); | 9780 | fb->format->format); |
9783 | fb->pitches[0] = (val & 0x3ff) * stride_mult; | 9781 | fb->pitches[0] = (val & 0x3ff) * stride_mult; |
9784 | 9782 | ||
9785 | aligned_height = intel_fb_align_height(dev, fb->height, | 9783 | aligned_height = intel_fb_align_height(dev, fb->height, |
9786 | fb->pixel_format, | 9784 | fb->format->format, |
9787 | fb->modifier); | 9785 | fb->modifier); |
9788 | 9786 | ||
9789 | plane_config->size = fb->pitches[0] * aligned_height; | 9787 | plane_config->size = fb->pitches[0] * aligned_height; |
@@ -9860,7 +9858,6 @@ ironlake_get_initial_plane_config(struct intel_crtc *crtc, | |||
9860 | 9858 | ||
9861 | pixel_format = val & DISPPLANE_PIXFORMAT_MASK; | 9859 | pixel_format = val & DISPPLANE_PIXFORMAT_MASK; |
9862 | fourcc = i9xx_format_to_fourcc(pixel_format); | 9860 | fourcc = i9xx_format_to_fourcc(pixel_format); |
9863 | fb->pixel_format = fourcc; | ||
9864 | fb->format = drm_format_info(fourcc); | 9861 | fb->format = drm_format_info(fourcc); |
9865 | 9862 | ||
9866 | base = I915_READ(DSPSURF(pipe)) & 0xfffff000; | 9863 | base = I915_READ(DSPSURF(pipe)) & 0xfffff000; |
@@ -9882,7 +9879,7 @@ ironlake_get_initial_plane_config(struct intel_crtc *crtc, | |||
9882 | fb->pitches[0] = val & 0xffffffc0; | 9879 | fb->pitches[0] = val & 0xffffffc0; |
9883 | 9880 | ||
9884 | aligned_height = intel_fb_align_height(dev, fb->height, | 9881 | aligned_height = intel_fb_align_height(dev, fb->height, |
9885 | fb->pixel_format, | 9882 | fb->format->format, |
9886 | fb->modifier); | 9883 | fb->modifier); |
9887 | 9884 | ||
9888 | plane_config->size = fb->pitches[0] * aligned_height; | 9885 | plane_config->size = fb->pitches[0] * aligned_height; |
@@ -12150,7 +12147,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc, | |||
12150 | return -EBUSY; | 12147 | return -EBUSY; |
12151 | 12148 | ||
12152 | /* Can't change pixel format via MI display flips. */ | 12149 | /* Can't change pixel format via MI display flips. */ |
12153 | if (fb->pixel_format != crtc->primary->fb->pixel_format) | 12150 | if (fb->format->format != crtc->primary->fb->format->format) |
12154 | return -EINVAL; | 12151 | return -EINVAL; |
12155 | 12152 | ||
12156 | /* | 12153 | /* |
@@ -12847,7 +12844,7 @@ static void intel_dump_pipe_config(struct intel_crtc *crtc, | |||
12847 | DRM_DEBUG_KMS("[PLANE:%d:%s] FB:%d, fb = %ux%u format = %s\n", | 12844 | DRM_DEBUG_KMS("[PLANE:%d:%s] FB:%d, fb = %ux%u format = %s\n", |
12848 | plane->base.id, plane->name, | 12845 | plane->base.id, plane->name, |
12849 | fb->base.id, fb->width, fb->height, | 12846 | fb->base.id, fb->width, fb->height, |
12850 | drm_get_format_name(fb->pixel_format, &format_name)); | 12847 | drm_get_format_name(fb->format->format, &format_name)); |
12851 | if (INTEL_GEN(dev_priv) >= 9) | 12848 | if (INTEL_GEN(dev_priv) >= 9) |
12852 | DRM_DEBUG_KMS("\tscaler:%d src %dx%d+%d+%d dst %dx%d+%d+%d\n", | 12849 | DRM_DEBUG_KMS("\tscaler:%d src %dx%d+%d+%d dst %dx%d+%d+%d\n", |
12853 | state->scaler_id, | 12850 | state->scaler_id, |
diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c index 3f60a4f6f078..570c07d59d1a 100644 --- a/drivers/gpu/drm/i915/intel_fbdev.c +++ b/drivers/gpu/drm/i915/intel_fbdev.c | |||
@@ -632,7 +632,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev, | |||
632 | 632 | ||
633 | cur_size = intel_crtc->config->base.adjusted_mode.crtc_vdisplay; | 633 | cur_size = intel_crtc->config->base.adjusted_mode.crtc_vdisplay; |
634 | cur_size = intel_fb_align_height(dev, cur_size, | 634 | cur_size = intel_fb_align_height(dev, cur_size, |
635 | fb->base.pixel_format, | 635 | fb->base.format->format, |
636 | fb->base.modifier); | 636 | fb->base.modifier); |
637 | cur_size *= fb->base.pitches[0]; | 637 | cur_size *= fb->base.pitches[0]; |
638 | DRM_DEBUG_KMS("pipe %c area: %dx%d, bpp: %d, size: %d\n", | 638 | DRM_DEBUG_KMS("pipe %c area: %dx%d, bpp: %d, size: %d\n", |
diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c index ce3667c18e18..568d194435fd 100644 --- a/drivers/gpu/drm/i915/intel_overlay.c +++ b/drivers/gpu/drm/i915/intel_overlay.c | |||
@@ -667,7 +667,7 @@ static void update_colorkey(struct intel_overlay *overlay, | |||
667 | if (overlay->color_key_enabled) | 667 | if (overlay->color_key_enabled) |
668 | flags |= DST_KEY_ENABLE; | 668 | flags |= DST_KEY_ENABLE; |
669 | 669 | ||
670 | switch (fb->pixel_format) { | 670 | switch (fb->format->format) { |
671 | case DRM_FORMAT_C8: | 671 | case DRM_FORMAT_C8: |
672 | key = 0; | 672 | key = 0; |
673 | flags |= CLK_RGB8I_MASK; | 673 | flags |= CLK_RGB8I_MASK; |
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c index f6406ebd533c..ce03d9d5aca6 100644 --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c | |||
@@ -3241,7 +3241,7 @@ skl_plane_relative_data_rate(const struct intel_crtc_state *cstate, | |||
3241 | return 0; | 3241 | return 0; |
3242 | 3242 | ||
3243 | fb = pstate->fb; | 3243 | fb = pstate->fb; |
3244 | format = fb->pixel_format; | 3244 | format = fb->format->format; |
3245 | 3245 | ||
3246 | if (pstate->plane->type == DRM_PLANE_TYPE_CURSOR) | 3246 | if (pstate->plane->type == DRM_PLANE_TYPE_CURSOR) |
3247 | return 0; | 3247 | return 0; |
@@ -3330,7 +3330,7 @@ skl_ddb_min_alloc(const struct drm_plane_state *pstate, | |||
3330 | return 0; | 3330 | return 0; |
3331 | 3331 | ||
3332 | /* For packed formats, no y-plane, return 0 */ | 3332 | /* For packed formats, no y-plane, return 0 */ |
3333 | if (y && fb->pixel_format != DRM_FORMAT_NV12) | 3333 | if (y && fb->format->format != DRM_FORMAT_NV12) |
3334 | return 0; | 3334 | return 0; |
3335 | 3335 | ||
3336 | /* For Non Y-tile return 8-blocks */ | 3336 | /* For Non Y-tile return 8-blocks */ |
@@ -3345,12 +3345,12 @@ skl_ddb_min_alloc(const struct drm_plane_state *pstate, | |||
3345 | swap(src_w, src_h); | 3345 | swap(src_w, src_h); |
3346 | 3346 | ||
3347 | /* Halve UV plane width and height for NV12 */ | 3347 | /* Halve UV plane width and height for NV12 */ |
3348 | if (fb->pixel_format == DRM_FORMAT_NV12 && !y) { | 3348 | if (fb->format->format == DRM_FORMAT_NV12 && !y) { |
3349 | src_w /= 2; | 3349 | src_w /= 2; |
3350 | src_h /= 2; | 3350 | src_h /= 2; |
3351 | } | 3351 | } |
3352 | 3352 | ||
3353 | if (fb->pixel_format == DRM_FORMAT_NV12 && !y) | 3353 | if (fb->format->format == DRM_FORMAT_NV12 && !y) |
3354 | plane_bpp = fb->format->cpp[1]; | 3354 | plane_bpp = fb->format->cpp[1]; |
3355 | else | 3355 | else |
3356 | plane_bpp = fb->format->cpp[0]; | 3356 | plane_bpp = fb->format->cpp[0]; |
@@ -3617,7 +3617,7 @@ static int skl_compute_plane_wm(const struct drm_i915_private *dev_priv, | |||
3617 | plane_pixel_rate = skl_adjusted_plane_pixel_rate(cstate, intel_pstate); | 3617 | plane_pixel_rate = skl_adjusted_plane_pixel_rate(cstate, intel_pstate); |
3618 | 3618 | ||
3619 | if (drm_rotation_90_or_270(pstate->rotation)) { | 3619 | if (drm_rotation_90_or_270(pstate->rotation)) { |
3620 | int cpp = (fb->pixel_format == DRM_FORMAT_NV12) ? | 3620 | int cpp = (fb->format->format == DRM_FORMAT_NV12) ? |
3621 | fb->format->cpp[1] : | 3621 | fb->format->cpp[1] : |
3622 | fb->format->cpp[0]; | 3622 | fb->format->cpp[0]; |
3623 | 3623 | ||
diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c index b46c1794d3ac..ff766c0cb873 100644 --- a/drivers/gpu/drm/i915/intel_sprite.c +++ b/drivers/gpu/drm/i915/intel_sprite.c | |||
@@ -223,7 +223,7 @@ skl_update_plane(struct drm_plane *drm_plane, | |||
223 | PLANE_CTL_PIPE_GAMMA_ENABLE | | 223 | PLANE_CTL_PIPE_GAMMA_ENABLE | |
224 | PLANE_CTL_PIPE_CSC_ENABLE; | 224 | PLANE_CTL_PIPE_CSC_ENABLE; |
225 | 225 | ||
226 | plane_ctl |= skl_plane_ctl_format(fb->pixel_format); | 226 | plane_ctl |= skl_plane_ctl_format(fb->format->format); |
227 | plane_ctl |= skl_plane_ctl_tiling(fb->modifier); | 227 | plane_ctl |= skl_plane_ctl_tiling(fb->modifier); |
228 | 228 | ||
229 | plane_ctl |= skl_plane_ctl_rotation(rotation); | 229 | plane_ctl |= skl_plane_ctl_rotation(rotation); |
@@ -357,7 +357,7 @@ vlv_update_plane(struct drm_plane *dplane, | |||
357 | 357 | ||
358 | sprctl = SP_ENABLE; | 358 | sprctl = SP_ENABLE; |
359 | 359 | ||
360 | switch (fb->pixel_format) { | 360 | switch (fb->format->format) { |
361 | case DRM_FORMAT_YUYV: | 361 | case DRM_FORMAT_YUYV: |
362 | sprctl |= SP_FORMAT_YUV422 | SP_YUV_ORDER_YUYV; | 362 | sprctl |= SP_FORMAT_YUV422 | SP_YUV_ORDER_YUYV; |
363 | break; | 363 | break; |
@@ -443,7 +443,7 @@ vlv_update_plane(struct drm_plane *dplane, | |||
443 | sprctl |= SP_SOURCE_KEY; | 443 | sprctl |= SP_SOURCE_KEY; |
444 | 444 | ||
445 | if (IS_CHERRYVIEW(dev_priv) && pipe == PIPE_B) | 445 | if (IS_CHERRYVIEW(dev_priv) && pipe == PIPE_B) |
446 | chv_update_csc(intel_plane, fb->pixel_format); | 446 | chv_update_csc(intel_plane, fb->format->format); |
447 | 447 | ||
448 | I915_WRITE(SPSTRIDE(pipe, plane), fb->pitches[0]); | 448 | I915_WRITE(SPSTRIDE(pipe, plane), fb->pitches[0]); |
449 | I915_WRITE(SPPOS(pipe, plane), (crtc_y << 16) | crtc_x); | 449 | I915_WRITE(SPPOS(pipe, plane), (crtc_y << 16) | crtc_x); |
@@ -502,7 +502,7 @@ ivb_update_plane(struct drm_plane *plane, | |||
502 | 502 | ||
503 | sprctl = SPRITE_ENABLE; | 503 | sprctl = SPRITE_ENABLE; |
504 | 504 | ||
505 | switch (fb->pixel_format) { | 505 | switch (fb->format->format) { |
506 | case DRM_FORMAT_XBGR8888: | 506 | case DRM_FORMAT_XBGR8888: |
507 | sprctl |= SPRITE_FORMAT_RGBX888 | SPRITE_RGB_ORDER_RGBX; | 507 | sprctl |= SPRITE_FORMAT_RGBX888 | SPRITE_RGB_ORDER_RGBX; |
508 | break; | 508 | break; |
@@ -640,7 +640,7 @@ ilk_update_plane(struct drm_plane *plane, | |||
640 | 640 | ||
641 | dvscntr = DVS_ENABLE; | 641 | dvscntr = DVS_ENABLE; |
642 | 642 | ||
643 | switch (fb->pixel_format) { | 643 | switch (fb->format->format) { |
644 | case DRM_FORMAT_XBGR8888: | 644 | case DRM_FORMAT_XBGR8888: |
645 | dvscntr |= DVS_FORMAT_RGBX888 | DVS_RGB_ORDER_XBGR; | 645 | dvscntr |= DVS_FORMAT_RGBX888 | DVS_RGB_ORDER_XBGR; |
646 | break; | 646 | break; |
@@ -866,7 +866,7 @@ intel_check_sprite_plane(struct drm_plane *plane, | |||
866 | src_y = src->y1 >> 16; | 866 | src_y = src->y1 >> 16; |
867 | src_h = drm_rect_height(src) >> 16; | 867 | src_h = drm_rect_height(src) >> 16; |
868 | 868 | ||
869 | if (format_is_yuv(fb->pixel_format)) { | 869 | if (format_is_yuv(fb->format->format)) { |
870 | src_x &= ~1; | 870 | src_x &= ~1; |
871 | src_w &= ~1; | 871 | src_w &= ~1; |
872 | 872 | ||
diff --git a/drivers/gpu/drm/imx/ipuv3-plane.c b/drivers/gpu/drm/imx/ipuv3-plane.c index f44a83656310..0b945f077344 100644 --- a/drivers/gpu/drm/imx/ipuv3-plane.c +++ b/drivers/gpu/drm/imx/ipuv3-plane.c | |||
@@ -92,8 +92,8 @@ drm_plane_state_to_ubo(struct drm_plane_state *state) | |||
92 | cma_obj = drm_fb_cma_get_gem_obj(fb, 1); | 92 | cma_obj = drm_fb_cma_get_gem_obj(fb, 1); |
93 | BUG_ON(!cma_obj); | 93 | BUG_ON(!cma_obj); |
94 | 94 | ||
95 | x /= drm_format_horz_chroma_subsampling(fb->pixel_format); | 95 | x /= drm_format_horz_chroma_subsampling(fb->format->format); |
96 | y /= drm_format_vert_chroma_subsampling(fb->pixel_format); | 96 | y /= drm_format_vert_chroma_subsampling(fb->format->format); |
97 | 97 | ||
98 | return cma_obj->paddr + fb->offsets[1] + fb->pitches[1] * y + | 98 | return cma_obj->paddr + fb->offsets[1] + fb->pitches[1] * y + |
99 | fb->format->cpp[1] * x - eba; | 99 | fb->format->cpp[1] * x - eba; |
@@ -111,8 +111,8 @@ drm_plane_state_to_vbo(struct drm_plane_state *state) | |||
111 | cma_obj = drm_fb_cma_get_gem_obj(fb, 2); | 111 | cma_obj = drm_fb_cma_get_gem_obj(fb, 2); |
112 | BUG_ON(!cma_obj); | 112 | BUG_ON(!cma_obj); |
113 | 113 | ||
114 | x /= drm_format_horz_chroma_subsampling(fb->pixel_format); | 114 | x /= drm_format_horz_chroma_subsampling(fb->format->format); |
115 | y /= drm_format_vert_chroma_subsampling(fb->pixel_format); | 115 | y /= drm_format_vert_chroma_subsampling(fb->format->format); |
116 | 116 | ||
117 | return cma_obj->paddr + fb->offsets[2] + fb->pitches[2] * y + | 117 | return cma_obj->paddr + fb->offsets[2] + fb->pitches[2] * y + |
118 | fb->format->cpp[2] * x - eba; | 118 | fb->format->cpp[2] * x - eba; |
@@ -281,7 +281,7 @@ static int ipu_plane_atomic_check(struct drm_plane *plane, | |||
281 | */ | 281 | */ |
282 | if (old_fb && (state->src_w != old_state->src_w || | 282 | if (old_fb && (state->src_w != old_state->src_w || |
283 | state->src_h != old_state->src_h || | 283 | state->src_h != old_state->src_h || |
284 | fb->pixel_format != old_fb->pixel_format)) | 284 | fb->format->format != old_fb->format->format)) |
285 | crtc_state->mode_changed = true; | 285 | crtc_state->mode_changed = true; |
286 | 286 | ||
287 | eba = drm_plane_state_to_eba(state); | 287 | eba = drm_plane_state_to_eba(state); |
@@ -295,7 +295,7 @@ static int ipu_plane_atomic_check(struct drm_plane *plane, | |||
295 | if (old_fb && fb->pitches[0] != old_fb->pitches[0]) | 295 | if (old_fb && fb->pitches[0] != old_fb->pitches[0]) |
296 | crtc_state->mode_changed = true; | 296 | crtc_state->mode_changed = true; |
297 | 297 | ||
298 | switch (fb->pixel_format) { | 298 | switch (fb->format->format) { |
299 | case DRM_FORMAT_YUV420: | 299 | case DRM_FORMAT_YUV420: |
300 | case DRM_FORMAT_YVU420: | 300 | case DRM_FORMAT_YVU420: |
301 | case DRM_FORMAT_YUV422: | 301 | case DRM_FORMAT_YUV422: |
@@ -315,7 +315,7 @@ static int ipu_plane_atomic_check(struct drm_plane *plane, | |||
315 | if (vbo & 0x7 || vbo > 0xfffff8) | 315 | if (vbo & 0x7 || vbo > 0xfffff8) |
316 | return -EINVAL; | 316 | return -EINVAL; |
317 | 317 | ||
318 | if (old_fb && (fb->pixel_format == old_fb->pixel_format)) { | 318 | if (old_fb && (fb->format->format == old_fb->format->format)) { |
319 | old_vbo = drm_plane_state_to_vbo(old_state); | 319 | old_vbo = drm_plane_state_to_vbo(old_state); |
320 | if (vbo != old_vbo) | 320 | if (vbo != old_vbo) |
321 | crtc_state->mode_changed = true; | 321 | crtc_state->mode_changed = true; |
@@ -332,7 +332,7 @@ static int ipu_plane_atomic_check(struct drm_plane *plane, | |||
332 | if (ubo & 0x7 || ubo > 0xfffff8) | 332 | if (ubo & 0x7 || ubo > 0xfffff8) |
333 | return -EINVAL; | 333 | return -EINVAL; |
334 | 334 | ||
335 | if (old_fb && (fb->pixel_format == old_fb->pixel_format)) { | 335 | if (old_fb && (fb->format->format == old_fb->format->format)) { |
336 | old_ubo = drm_plane_state_to_ubo(old_state); | 336 | old_ubo = drm_plane_state_to_ubo(old_state); |
337 | if (ubo != old_ubo) | 337 | if (ubo != old_ubo) |
338 | crtc_state->mode_changed = true; | 338 | crtc_state->mode_changed = true; |
@@ -348,8 +348,8 @@ static int ipu_plane_atomic_check(struct drm_plane *plane, | |||
348 | * The x/y offsets must be even in case of horizontal/vertical | 348 | * The x/y offsets must be even in case of horizontal/vertical |
349 | * chroma subsampling. | 349 | * chroma subsampling. |
350 | */ | 350 | */ |
351 | hsub = drm_format_horz_chroma_subsampling(fb->pixel_format); | 351 | hsub = drm_format_horz_chroma_subsampling(fb->format->format); |
352 | vsub = drm_format_vert_chroma_subsampling(fb->pixel_format); | 352 | vsub = drm_format_vert_chroma_subsampling(fb->format->format); |
353 | if (((state->src_x >> 16) & (hsub - 1)) || | 353 | if (((state->src_x >> 16) & (hsub - 1)) || |
354 | ((state->src_y >> 16) & (vsub - 1))) | 354 | ((state->src_y >> 16) & (vsub - 1))) |
355 | return -EINVAL; | 355 | return -EINVAL; |
@@ -392,13 +392,13 @@ static void ipu_plane_atomic_update(struct drm_plane *plane, | |||
392 | ipu_dp_set_global_alpha(ipu_plane->dp, true, 0, true); | 392 | ipu_dp_set_global_alpha(ipu_plane->dp, true, 0, true); |
393 | break; | 393 | break; |
394 | case IPU_DP_FLOW_SYNC_FG: | 394 | case IPU_DP_FLOW_SYNC_FG: |
395 | ics = ipu_drm_fourcc_to_colorspace(state->fb->pixel_format); | 395 | ics = ipu_drm_fourcc_to_colorspace(state->fb->format->format); |
396 | ipu_dp_setup_channel(ipu_plane->dp, ics, | 396 | ipu_dp_setup_channel(ipu_plane->dp, ics, |
397 | IPUV3_COLORSPACE_UNKNOWN); | 397 | IPUV3_COLORSPACE_UNKNOWN); |
398 | ipu_dp_set_window_pos(ipu_plane->dp, state->crtc_x, | 398 | ipu_dp_set_window_pos(ipu_plane->dp, state->crtc_x, |
399 | state->crtc_y); | 399 | state->crtc_y); |
400 | /* Enable local alpha on partial plane */ | 400 | /* Enable local alpha on partial plane */ |
401 | switch (state->fb->pixel_format) { | 401 | switch (state->fb->format->format) { |
402 | case DRM_FORMAT_ARGB1555: | 402 | case DRM_FORMAT_ARGB1555: |
403 | case DRM_FORMAT_ABGR1555: | 403 | case DRM_FORMAT_ABGR1555: |
404 | case DRM_FORMAT_RGBA5551: | 404 | case DRM_FORMAT_RGBA5551: |
@@ -421,11 +421,11 @@ static void ipu_plane_atomic_update(struct drm_plane *plane, | |||
421 | ipu_cpmem_zero(ipu_plane->ipu_ch); | 421 | ipu_cpmem_zero(ipu_plane->ipu_ch); |
422 | ipu_cpmem_set_resolution(ipu_plane->ipu_ch, state->src_w >> 16, | 422 | ipu_cpmem_set_resolution(ipu_plane->ipu_ch, state->src_w >> 16, |
423 | state->src_h >> 16); | 423 | state->src_h >> 16); |
424 | ipu_cpmem_set_fmt(ipu_plane->ipu_ch, state->fb->pixel_format); | 424 | ipu_cpmem_set_fmt(ipu_plane->ipu_ch, state->fb->format->format); |
425 | ipu_cpmem_set_high_priority(ipu_plane->ipu_ch); | 425 | ipu_cpmem_set_high_priority(ipu_plane->ipu_ch); |
426 | ipu_idmac_set_double_buffer(ipu_plane->ipu_ch, 1); | 426 | ipu_idmac_set_double_buffer(ipu_plane->ipu_ch, 1); |
427 | ipu_cpmem_set_stride(ipu_plane->ipu_ch, state->fb->pitches[0]); | 427 | ipu_cpmem_set_stride(ipu_plane->ipu_ch, state->fb->pitches[0]); |
428 | switch (fb->pixel_format) { | 428 | switch (fb->format->format) { |
429 | case DRM_FORMAT_YUV420: | 429 | case DRM_FORMAT_YUV420: |
430 | case DRM_FORMAT_YVU420: | 430 | case DRM_FORMAT_YVU420: |
431 | case DRM_FORMAT_YUV422: | 431 | case DRM_FORMAT_YUV422: |
@@ -434,9 +434,9 @@ static void ipu_plane_atomic_update(struct drm_plane *plane, | |||
434 | case DRM_FORMAT_YVU444: | 434 | case DRM_FORMAT_YVU444: |
435 | ubo = drm_plane_state_to_ubo(state); | 435 | ubo = drm_plane_state_to_ubo(state); |
436 | vbo = drm_plane_state_to_vbo(state); | 436 | vbo = drm_plane_state_to_vbo(state); |
437 | if (fb->pixel_format == DRM_FORMAT_YVU420 || | 437 | if (fb->format->format == DRM_FORMAT_YVU420 || |
438 | fb->pixel_format == DRM_FORMAT_YVU422 || | 438 | fb->format->format == DRM_FORMAT_YVU422 || |
439 | fb->pixel_format == DRM_FORMAT_YVU444) | 439 | fb->format->format == DRM_FORMAT_YVU444) |
440 | swap(ubo, vbo); | 440 | swap(ubo, vbo); |
441 | 441 | ||
442 | ipu_cpmem_set_yuv_planar_full(ipu_plane->ipu_ch, | 442 | ipu_cpmem_set_yuv_planar_full(ipu_plane->ipu_ch, |
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_plane.c b/drivers/gpu/drm/mediatek/mtk_drm_plane.c index 71421923c592..e405e89ed5e5 100644 --- a/drivers/gpu/drm/mediatek/mtk_drm_plane.c +++ b/drivers/gpu/drm/mediatek/mtk_drm_plane.c | |||
@@ -133,7 +133,7 @@ static void mtk_plane_atomic_update(struct drm_plane *plane, | |||
133 | mtk_gem = to_mtk_gem_obj(gem); | 133 | mtk_gem = to_mtk_gem_obj(gem); |
134 | addr = mtk_gem->dma_addr; | 134 | addr = mtk_gem->dma_addr; |
135 | pitch = fb->pitches[0]; | 135 | pitch = fb->pitches[0]; |
136 | format = fb->pixel_format; | 136 | format = fb->format->format; |
137 | 137 | ||
138 | addr += (plane->state->src.x1 >> 16) * fb->format->cpp[0]; | 138 | addr += (plane->state->src.x1 >> 16) * fb->format->cpp[0]; |
139 | addr += (plane->state->src.y1 >> 16) * pitch; | 139 | addr += (plane->state->src.y1 >> 16) * pitch; |
diff --git a/drivers/gpu/drm/meson/meson_plane.c b/drivers/gpu/drm/meson/meson_plane.c index 4942ca090b46..642b2fab42ff 100644 --- a/drivers/gpu/drm/meson/meson_plane.c +++ b/drivers/gpu/drm/meson/meson_plane.c | |||
@@ -113,7 +113,7 @@ static void meson_plane_atomic_update(struct drm_plane *plane, | |||
113 | if (meson_vpu_is_compatible(priv, "amlogic,meson-gxbb-vpu")) | 113 | if (meson_vpu_is_compatible(priv, "amlogic,meson-gxbb-vpu")) |
114 | priv->viu.osd1_blk0_cfg[0] |= OSD_OUTPUT_COLOR_RGB; | 114 | priv->viu.osd1_blk0_cfg[0] |= OSD_OUTPUT_COLOR_RGB; |
115 | 115 | ||
116 | switch (fb->pixel_format) { | 116 | switch (fb->format->format) { |
117 | case DRM_FORMAT_XRGB8888: | 117 | case DRM_FORMAT_XRGB8888: |
118 | /* For XRGB, replace the pixel's alpha by 0xFF */ | 118 | /* For XRGB, replace the pixel's alpha by 0xFF */ |
119 | writel_bits_relaxed(OSD_REPLACE_EN, OSD_REPLACE_EN, | 119 | writel_bits_relaxed(OSD_REPLACE_EN, OSD_REPLACE_EN, |
diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_plane.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_plane.c index 911e4690d36a..53619d07677e 100644 --- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_plane.c +++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_plane.c | |||
@@ -43,7 +43,7 @@ enum mdp4_frame_format mdp4_get_frame_format(struct drm_framebuffer *fb) | |||
43 | if (fb->modifier == DRM_FORMAT_MOD_SAMSUNG_64_32_TILE) | 43 | if (fb->modifier == DRM_FORMAT_MOD_SAMSUNG_64_32_TILE) |
44 | is_tile = true; | 44 | is_tile = true; |
45 | 45 | ||
46 | if (fb->pixel_format == DRM_FORMAT_NV12 && is_tile) | 46 | if (fb->format->format == DRM_FORMAT_NV12 && is_tile) |
47 | return FRAME_TILE_YCBCR_420; | 47 | return FRAME_TILE_YCBCR_420; |
48 | 48 | ||
49 | return FRAME_LINEAR; | 49 | return FRAME_LINEAR; |
diff --git a/drivers/gpu/drm/msm/msm_fb.c b/drivers/gpu/drm/msm/msm_fb.c index 0649863d7fd7..5cf165c9c3a9 100644 --- a/drivers/gpu/drm/msm/msm_fb.c +++ b/drivers/gpu/drm/msm/msm_fb.c | |||
@@ -68,7 +68,7 @@ void msm_framebuffer_describe(struct drm_framebuffer *fb, struct seq_file *m) | |||
68 | int i, n = fb->format->num_planes; | 68 | int i, n = fb->format->num_planes; |
69 | 69 | ||
70 | seq_printf(m, "fb: %dx%d@%4.4s (%2d, ID:%d)\n", | 70 | seq_printf(m, "fb: %dx%d@%4.4s (%2d, ID:%d)\n", |
71 | fb->width, fb->height, (char *)&fb->pixel_format, | 71 | fb->width, fb->height, (char *)&fb->format->format, |
72 | drm_framebuffer_read_refcount(fb), fb->base.id); | 72 | drm_framebuffer_read_refcount(fb), fb->base.id); |
73 | 73 | ||
74 | for (i = 0; i < n; i++) { | 74 | for (i = 0; i < n; i++) { |
diff --git a/drivers/gpu/drm/mxsfb/mxsfb_crtc.c b/drivers/gpu/drm/mxsfb/mxsfb_crtc.c index 081890336ce7..e10a4eda4078 100644 --- a/drivers/gpu/drm/mxsfb/mxsfb_crtc.c +++ b/drivers/gpu/drm/mxsfb/mxsfb_crtc.c | |||
@@ -46,7 +46,7 @@ static int mxsfb_set_pixel_fmt(struct mxsfb_drm_private *mxsfb) | |||
46 | { | 46 | { |
47 | struct drm_crtc *crtc = &mxsfb->pipe.crtc; | 47 | struct drm_crtc *crtc = &mxsfb->pipe.crtc; |
48 | struct drm_device *drm = crtc->dev; | 48 | struct drm_device *drm = crtc->dev; |
49 | const u32 format = crtc->primary->state->fb->pixel_format; | 49 | const u32 format = crtc->primary->state->fb->format->format; |
50 | u32 ctrl, ctrl1; | 50 | u32 ctrl, ctrl1; |
51 | 51 | ||
52 | ctrl = CTRL_BYPASS_COUNT | CTRL_MASTER; | 52 | ctrl = CTRL_BYPASS_COUNT | CTRL_MASTER; |
diff --git a/drivers/gpu/drm/nouveau/dispnv04/overlay.c b/drivers/gpu/drm/nouveau/dispnv04/overlay.c index a79514d440b3..6275c270df25 100644 --- a/drivers/gpu/drm/nouveau/dispnv04/overlay.c +++ b/drivers/gpu/drm/nouveau/dispnv04/overlay.c | |||
@@ -145,16 +145,16 @@ nv10_update_plane(struct drm_plane *plane, struct drm_crtc *crtc, | |||
145 | nvif_wr32(dev, NV_PVIDEO_POINT_OUT(flip), crtc_y << 16 | crtc_x); | 145 | nvif_wr32(dev, NV_PVIDEO_POINT_OUT(flip), crtc_y << 16 | crtc_x); |
146 | nvif_wr32(dev, NV_PVIDEO_SIZE_OUT(flip), crtc_h << 16 | crtc_w); | 146 | nvif_wr32(dev, NV_PVIDEO_SIZE_OUT(flip), crtc_h << 16 | crtc_w); |
147 | 147 | ||
148 | if (fb->pixel_format != DRM_FORMAT_UYVY) | 148 | if (fb->format->format != DRM_FORMAT_UYVY) |
149 | format |= NV_PVIDEO_FORMAT_COLOR_LE_CR8YB8CB8YA8; | 149 | format |= NV_PVIDEO_FORMAT_COLOR_LE_CR8YB8CB8YA8; |
150 | if (fb->pixel_format == DRM_FORMAT_NV12) | 150 | if (fb->format->format == DRM_FORMAT_NV12) |
151 | format |= NV_PVIDEO_FORMAT_PLANAR; | 151 | format |= NV_PVIDEO_FORMAT_PLANAR; |
152 | if (nv_plane->iturbt_709) | 152 | if (nv_plane->iturbt_709) |
153 | format |= NV_PVIDEO_FORMAT_MATRIX_ITURBT709; | 153 | format |= NV_PVIDEO_FORMAT_MATRIX_ITURBT709; |
154 | if (nv_plane->colorkey & (1 << 24)) | 154 | if (nv_plane->colorkey & (1 << 24)) |
155 | format |= NV_PVIDEO_FORMAT_DISPLAY_COLOR_KEY; | 155 | format |= NV_PVIDEO_FORMAT_DISPLAY_COLOR_KEY; |
156 | 156 | ||
157 | if (fb->pixel_format == DRM_FORMAT_NV12) { | 157 | if (fb->format->format == DRM_FORMAT_NV12) { |
158 | nvif_wr32(dev, NV_PVIDEO_UVPLANE_BASE(flip), 0); | 158 | nvif_wr32(dev, NV_PVIDEO_UVPLANE_BASE(flip), 0); |
159 | nvif_wr32(dev, NV_PVIDEO_UVPLANE_OFFSET_BUFF(flip), | 159 | nvif_wr32(dev, NV_PVIDEO_UVPLANE_OFFSET_BUFF(flip), |
160 | nv_fb->nvbo->bo.offset + fb->offsets[1]); | 160 | nv_fb->nvbo->bo.offset + fb->offsets[1]); |
@@ -411,7 +411,7 @@ nv04_update_plane(struct drm_plane *plane, struct drm_crtc *crtc, | |||
411 | 411 | ||
412 | if (nv_plane->colorkey & (1 << 24)) | 412 | if (nv_plane->colorkey & (1 << 24)) |
413 | overlay |= 0x10; | 413 | overlay |= 0x10; |
414 | if (fb->pixel_format == DRM_FORMAT_YUYV) | 414 | if (fb->format->format == DRM_FORMAT_YUYV) |
415 | overlay |= 0x100; | 415 | overlay |= 0x100; |
416 | 416 | ||
417 | nvif_wr32(dev, NV_PVIDEO_OVERLAY, overlay); | 417 | nvif_wr32(dev, NV_PVIDEO_OVERLAY, overlay); |
diff --git a/drivers/gpu/drm/nouveau/nv50_display.c b/drivers/gpu/drm/nouveau/nv50_display.c index b617e5d3277a..cb85cb72dc1c 100644 --- a/drivers/gpu/drm/nouveau/nv50_display.c +++ b/drivers/gpu/drm/nouveau/nv50_display.c | |||
@@ -1153,7 +1153,7 @@ nv50_curs_acquire(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw, | |||
1153 | if (asyw->state.fb->width != asyw->state.fb->height) | 1153 | if (asyw->state.fb->width != asyw->state.fb->height) |
1154 | return -EINVAL; | 1154 | return -EINVAL; |
1155 | 1155 | ||
1156 | switch (asyw->state.fb->pixel_format) { | 1156 | switch (asyw->state.fb->format->format) { |
1157 | case DRM_FORMAT_ARGB8888: asyh->curs.format = 1; break; | 1157 | case DRM_FORMAT_ARGB8888: asyh->curs.format = 1; break; |
1158 | default: | 1158 | default: |
1159 | WARN_ON(1); | 1159 | WARN_ON(1); |
@@ -1438,7 +1438,7 @@ nv50_base_acquire(struct nv50_wndw *wndw, struct nv50_wndw_atom *asyw, | |||
1438 | asyh->base.w = asyw->state.fb->width; | 1438 | asyh->base.w = asyw->state.fb->width; |
1439 | asyh->base.h = asyw->state.fb->height; | 1439 | asyh->base.h = asyw->state.fb->height; |
1440 | 1440 | ||
1441 | switch (fb->pixel_format) { | 1441 | switch (fb->format->format) { |
1442 | case DRM_FORMAT_C8 : asyw->image.format = 0x1e; break; | 1442 | case DRM_FORMAT_C8 : asyw->image.format = 0x1e; break; |
1443 | case DRM_FORMAT_RGB565 : asyw->image.format = 0xe8; break; | 1443 | case DRM_FORMAT_RGB565 : asyw->image.format = 0xe8; break; |
1444 | case DRM_FORMAT_XRGB1555 : | 1444 | case DRM_FORMAT_XRGB1555 : |
diff --git a/drivers/gpu/drm/omapdrm/omap_fb.c b/drivers/gpu/drm/omapdrm/omap_fb.c index c6ef457b9fca..bd6b94c38613 100644 --- a/drivers/gpu/drm/omapdrm/omap_fb.c +++ b/drivers/gpu/drm/omapdrm/omap_fb.c | |||
@@ -346,7 +346,7 @@ void omap_framebuffer_describe(struct drm_framebuffer *fb, struct seq_file *m) | |||
346 | int i, n = fb->format->num_planes; | 346 | int i, n = fb->format->num_planes; |
347 | 347 | ||
348 | seq_printf(m, "fb: %dx%d@%4.4s\n", fb->width, fb->height, | 348 | seq_printf(m, "fb: %dx%d@%4.4s\n", fb->width, fb->height, |
349 | (char *)&fb->pixel_format); | 349 | (char *)&fb->format->format); |
350 | 350 | ||
351 | for (i = 0; i < n; i++) { | 351 | for (i = 0; i < n; i++) { |
352 | struct plane *plane = &omap_fb->planes[i]; | 352 | struct plane *plane = &omap_fb->planes[i]; |
diff --git a/drivers/gpu/drm/radeon/atombios_crtc.c b/drivers/gpu/drm/radeon/atombios_crtc.c index 0d7f84f7d71d..3c492a0aa6bd 100644 --- a/drivers/gpu/drm/radeon/atombios_crtc.c +++ b/drivers/gpu/drm/radeon/atombios_crtc.c | |||
@@ -1195,7 +1195,7 @@ static int dce4_crtc_do_set_base(struct drm_crtc *crtc, | |||
1195 | radeon_bo_get_tiling_flags(rbo, &tiling_flags, NULL); | 1195 | radeon_bo_get_tiling_flags(rbo, &tiling_flags, NULL); |
1196 | radeon_bo_unreserve(rbo); | 1196 | radeon_bo_unreserve(rbo); |
1197 | 1197 | ||
1198 | switch (target_fb->pixel_format) { | 1198 | switch (target_fb->format->format) { |
1199 | case DRM_FORMAT_C8: | 1199 | case DRM_FORMAT_C8: |
1200 | fb_format = (EVERGREEN_GRPH_DEPTH(EVERGREEN_GRPH_DEPTH_8BPP) | | 1200 | fb_format = (EVERGREEN_GRPH_DEPTH(EVERGREEN_GRPH_DEPTH_8BPP) | |
1201 | EVERGREEN_GRPH_FORMAT(EVERGREEN_GRPH_FORMAT_INDEXED)); | 1201 | EVERGREEN_GRPH_FORMAT(EVERGREEN_GRPH_FORMAT_INDEXED)); |
@@ -1261,7 +1261,7 @@ static int dce4_crtc_do_set_base(struct drm_crtc *crtc, | |||
1261 | break; | 1261 | break; |
1262 | default: | 1262 | default: |
1263 | DRM_ERROR("Unsupported screen format %s\n", | 1263 | DRM_ERROR("Unsupported screen format %s\n", |
1264 | drm_get_format_name(target_fb->pixel_format, &format_name)); | 1264 | drm_get_format_name(target_fb->format->format, &format_name)); |
1265 | return -EINVAL; | 1265 | return -EINVAL; |
1266 | } | 1266 | } |
1267 | 1267 | ||
@@ -1511,7 +1511,7 @@ static int avivo_crtc_do_set_base(struct drm_crtc *crtc, | |||
1511 | radeon_bo_get_tiling_flags(rbo, &tiling_flags, NULL); | 1511 | radeon_bo_get_tiling_flags(rbo, &tiling_flags, NULL); |
1512 | radeon_bo_unreserve(rbo); | 1512 | radeon_bo_unreserve(rbo); |
1513 | 1513 | ||
1514 | switch (target_fb->pixel_format) { | 1514 | switch (target_fb->format->format) { |
1515 | case DRM_FORMAT_C8: | 1515 | case DRM_FORMAT_C8: |
1516 | fb_format = | 1516 | fb_format = |
1517 | AVIVO_D1GRPH_CONTROL_DEPTH_8BPP | | 1517 | AVIVO_D1GRPH_CONTROL_DEPTH_8BPP | |
@@ -1564,7 +1564,7 @@ static int avivo_crtc_do_set_base(struct drm_crtc *crtc, | |||
1564 | break; | 1564 | break; |
1565 | default: | 1565 | default: |
1566 | DRM_ERROR("Unsupported screen format %s\n", | 1566 | DRM_ERROR("Unsupported screen format %s\n", |
1567 | drm_get_format_name(target_fb->pixel_format, &format_name)); | 1567 | drm_get_format_name(target_fb->format->format, &format_name)); |
1568 | return -EINVAL; | 1568 | return -EINVAL; |
1569 | } | 1569 | } |
1570 | 1570 | ||
diff --git a/drivers/gpu/drm/rcar-du/rcar_du_plane.c b/drivers/gpu/drm/rcar-du/rcar_du_plane.c index a74f8ed8ca2e..dcde6288da6c 100644 --- a/drivers/gpu/drm/rcar-du/rcar_du_plane.c +++ b/drivers/gpu/drm/rcar-du/rcar_du_plane.c | |||
@@ -567,10 +567,10 @@ static int rcar_du_plane_atomic_check(struct drm_plane *plane, | |||
567 | return -EINVAL; | 567 | return -EINVAL; |
568 | } | 568 | } |
569 | 569 | ||
570 | rstate->format = rcar_du_format_info(state->fb->pixel_format); | 570 | rstate->format = rcar_du_format_info(state->fb->format->format); |
571 | if (rstate->format == NULL) { | 571 | if (rstate->format == NULL) { |
572 | dev_dbg(rcdu->dev, "%s: unsupported format %08x\n", __func__, | 572 | dev_dbg(rcdu->dev, "%s: unsupported format %08x\n", __func__, |
573 | state->fb->pixel_format); | 573 | state->fb->format->format); |
574 | return -EINVAL; | 574 | return -EINVAL; |
575 | } | 575 | } |
576 | 576 | ||
diff --git a/drivers/gpu/drm/rcar-du/rcar_du_vsp.c b/drivers/gpu/drm/rcar-du/rcar_du_vsp.c index 83ebd162f3ef..b5bfbe50bd87 100644 --- a/drivers/gpu/drm/rcar-du/rcar_du_vsp.c +++ b/drivers/gpu/drm/rcar-du/rcar_du_vsp.c | |||
@@ -201,10 +201,10 @@ static int rcar_du_vsp_plane_atomic_check(struct drm_plane *plane, | |||
201 | return -EINVAL; | 201 | return -EINVAL; |
202 | } | 202 | } |
203 | 203 | ||
204 | rstate->format = rcar_du_format_info(state->fb->pixel_format); | 204 | rstate->format = rcar_du_format_info(state->fb->format->format); |
205 | if (rstate->format == NULL) { | 205 | if (rstate->format == NULL) { |
206 | dev_dbg(rcdu->dev, "%s: unsupported format %08x\n", __func__, | 206 | dev_dbg(rcdu->dev, "%s: unsupported format %08x\n", __func__, |
207 | state->fb->pixel_format); | 207 | state->fb->format->format); |
208 | return -EINVAL; | 208 | return -EINVAL; |
209 | } | 209 | } |
210 | 210 | ||
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index 50e085e74214..fb5f001f51c3 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c | |||
@@ -668,7 +668,7 @@ static int vop_plane_atomic_check(struct drm_plane *plane, | |||
668 | if (!state->visible) | 668 | if (!state->visible) |
669 | return 0; | 669 | return 0; |
670 | 670 | ||
671 | ret = vop_convert_format(fb->pixel_format); | 671 | ret = vop_convert_format(fb->format->format); |
672 | if (ret < 0) | 672 | if (ret < 0) |
673 | return ret; | 673 | return ret; |
674 | 674 | ||
@@ -676,7 +676,7 @@ static int vop_plane_atomic_check(struct drm_plane *plane, | |||
676 | * Src.x1 can be odd when do clip, but yuv plane start point | 676 | * Src.x1 can be odd when do clip, but yuv plane start point |
677 | * need align with 2 pixel. | 677 | * need align with 2 pixel. |
678 | */ | 678 | */ |
679 | if (is_yuv_support(fb->pixel_format) && ((state->src.x1 >> 16) % 2)) | 679 | if (is_yuv_support(fb->format->format) && ((state->src.x1 >> 16) % 2)) |
680 | return -EINVAL; | 680 | return -EINVAL; |
681 | 681 | ||
682 | return 0; | 682 | return 0; |
@@ -753,16 +753,16 @@ static void vop_plane_atomic_update(struct drm_plane *plane, | |||
753 | offset += (src->y1 >> 16) * fb->pitches[0]; | 753 | offset += (src->y1 >> 16) * fb->pitches[0]; |
754 | dma_addr = rk_obj->dma_addr + offset + fb->offsets[0]; | 754 | dma_addr = rk_obj->dma_addr + offset + fb->offsets[0]; |
755 | 755 | ||
756 | format = vop_convert_format(fb->pixel_format); | 756 | format = vop_convert_format(fb->format->format); |
757 | 757 | ||
758 | spin_lock(&vop->reg_lock); | 758 | spin_lock(&vop->reg_lock); |
759 | 759 | ||
760 | VOP_WIN_SET(vop, win, format, format); | 760 | VOP_WIN_SET(vop, win, format, format); |
761 | VOP_WIN_SET(vop, win, yrgb_vir, fb->pitches[0] >> 2); | 761 | VOP_WIN_SET(vop, win, yrgb_vir, fb->pitches[0] >> 2); |
762 | VOP_WIN_SET(vop, win, yrgb_mst, dma_addr); | 762 | VOP_WIN_SET(vop, win, yrgb_mst, dma_addr); |
763 | if (is_yuv_support(fb->pixel_format)) { | 763 | if (is_yuv_support(fb->format->format)) { |
764 | int hsub = drm_format_horz_chroma_subsampling(fb->pixel_format); | 764 | int hsub = drm_format_horz_chroma_subsampling(fb->format->format); |
765 | int vsub = drm_format_vert_chroma_subsampling(fb->pixel_format); | 765 | int vsub = drm_format_vert_chroma_subsampling(fb->format->format); |
766 | int bpp = fb->format->cpp[1]; | 766 | int bpp = fb->format->cpp[1]; |
767 | 767 | ||
768 | uv_obj = rockchip_fb_get_gem_obj(fb, 1); | 768 | uv_obj = rockchip_fb_get_gem_obj(fb, 1); |
@@ -779,16 +779,16 @@ static void vop_plane_atomic_update(struct drm_plane *plane, | |||
779 | if (win->phy->scl) | 779 | if (win->phy->scl) |
780 | scl_vop_cal_scl_fac(vop, win, actual_w, actual_h, | 780 | scl_vop_cal_scl_fac(vop, win, actual_w, actual_h, |
781 | drm_rect_width(dest), drm_rect_height(dest), | 781 | drm_rect_width(dest), drm_rect_height(dest), |
782 | fb->pixel_format); | 782 | fb->format->format); |
783 | 783 | ||
784 | VOP_WIN_SET(vop, win, act_info, act_info); | 784 | VOP_WIN_SET(vop, win, act_info, act_info); |
785 | VOP_WIN_SET(vop, win, dsp_info, dsp_info); | 785 | VOP_WIN_SET(vop, win, dsp_info, dsp_info); |
786 | VOP_WIN_SET(vop, win, dsp_st, dsp_st); | 786 | VOP_WIN_SET(vop, win, dsp_st, dsp_st); |
787 | 787 | ||
788 | rb_swap = has_rb_swapped(fb->pixel_format); | 788 | rb_swap = has_rb_swapped(fb->format->format); |
789 | VOP_WIN_SET(vop, win, rb_swap, rb_swap); | 789 | VOP_WIN_SET(vop, win, rb_swap, rb_swap); |
790 | 790 | ||
791 | if (is_alpha_support(fb->pixel_format)) { | 791 | if (is_alpha_support(fb->format->format)) { |
792 | VOP_WIN_SET(vop, win, dst_alpha_ctl, | 792 | VOP_WIN_SET(vop, win, dst_alpha_ctl, |
793 | DST_FACTOR_M0(ALPHA_SRC_INVERSE)); | 793 | DST_FACTOR_M0(ALPHA_SRC_INVERSE)); |
794 | val = SRC_ALPHA_EN(1) | SRC_COLOR_M0(ALPHA_SRC_PRE_MUL) | | 794 | val = SRC_ALPHA_EN(1) | SRC_COLOR_M0(ALPHA_SRC_PRE_MUL) | |
diff --git a/drivers/gpu/drm/shmobile/shmob_drm_crtc.c b/drivers/gpu/drm/shmobile/shmob_drm_crtc.c index dddbdd62bed0..445476551695 100644 --- a/drivers/gpu/drm/shmobile/shmob_drm_crtc.c +++ b/drivers/gpu/drm/shmobile/shmob_drm_crtc.c | |||
@@ -174,7 +174,7 @@ static void shmob_drm_crtc_start(struct shmob_drm_crtc *scrtc) | |||
174 | if (scrtc->started) | 174 | if (scrtc->started) |
175 | return; | 175 | return; |
176 | 176 | ||
177 | format = shmob_drm_format_info(crtc->primary->fb->pixel_format); | 177 | format = shmob_drm_format_info(crtc->primary->fb->format->format); |
178 | if (WARN_ON(format == NULL)) | 178 | if (WARN_ON(format == NULL)) |
179 | return; | 179 | return; |
180 | 180 | ||
@@ -376,10 +376,10 @@ static int shmob_drm_crtc_mode_set(struct drm_crtc *crtc, | |||
376 | const struct shmob_drm_format_info *format; | 376 | const struct shmob_drm_format_info *format; |
377 | void *cache; | 377 | void *cache; |
378 | 378 | ||
379 | format = shmob_drm_format_info(crtc->primary->fb->pixel_format); | 379 | format = shmob_drm_format_info(crtc->primary->fb->format->format); |
380 | if (format == NULL) { | 380 | if (format == NULL) { |
381 | dev_dbg(sdev->dev, "mode_set: unsupported format %08x\n", | 381 | dev_dbg(sdev->dev, "mode_set: unsupported format %08x\n", |
382 | crtc->primary->fb->pixel_format); | 382 | crtc->primary->fb->format->format); |
383 | return -EINVAL; | 383 | return -EINVAL; |
384 | } | 384 | } |
385 | 385 | ||
diff --git a/drivers/gpu/drm/shmobile/shmob_drm_plane.c b/drivers/gpu/drm/shmobile/shmob_drm_plane.c index 1805bb23b113..2023a93cee2b 100644 --- a/drivers/gpu/drm/shmobile/shmob_drm_plane.c +++ b/drivers/gpu/drm/shmobile/shmob_drm_plane.c | |||
@@ -183,10 +183,10 @@ shmob_drm_plane_update(struct drm_plane *plane, struct drm_crtc *crtc, | |||
183 | struct shmob_drm_device *sdev = plane->dev->dev_private; | 183 | struct shmob_drm_device *sdev = plane->dev->dev_private; |
184 | const struct shmob_drm_format_info *format; | 184 | const struct shmob_drm_format_info *format; |
185 | 185 | ||
186 | format = shmob_drm_format_info(fb->pixel_format); | 186 | format = shmob_drm_format_info(fb->format->format); |
187 | if (format == NULL) { | 187 | if (format == NULL) { |
188 | dev_dbg(sdev->dev, "update_plane: unsupported format %08x\n", | 188 | dev_dbg(sdev->dev, "update_plane: unsupported format %08x\n", |
189 | fb->pixel_format); | 189 | fb->format->format); |
190 | return -EINVAL; | 190 | return -EINVAL; |
191 | } | 191 | } |
192 | 192 | ||
diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c index 58316bd6d7d6..877d053d86f4 100644 --- a/drivers/gpu/drm/sti/sti_gdp.c +++ b/drivers/gpu/drm/sti/sti_gdp.c | |||
@@ -636,10 +636,10 @@ static int sti_gdp_atomic_check(struct drm_plane *drm_plane, | |||
636 | src_w = clamp_val(state->src_w >> 16, 0, GAM_GDP_SIZE_MAX); | 636 | src_w = clamp_val(state->src_w >> 16, 0, GAM_GDP_SIZE_MAX); |
637 | src_h = clamp_val(state->src_h >> 16, 0, GAM_GDP_SIZE_MAX); | 637 | src_h = clamp_val(state->src_h >> 16, 0, GAM_GDP_SIZE_MAX); |
638 | 638 | ||
639 | format = sti_gdp_fourcc2format(fb->pixel_format); | 639 | format = sti_gdp_fourcc2format(fb->format->format); |
640 | if (format == -1) { | 640 | if (format == -1) { |
641 | DRM_ERROR("Format not supported by GDP %.4s\n", | 641 | DRM_ERROR("Format not supported by GDP %.4s\n", |
642 | (char *)&fb->pixel_format); | 642 | (char *)&fb->format->format); |
643 | return -EINVAL; | 643 | return -EINVAL; |
644 | } | 644 | } |
645 | 645 | ||
@@ -745,7 +745,7 @@ static void sti_gdp_atomic_update(struct drm_plane *drm_plane, | |||
745 | /* build the top field */ | 745 | /* build the top field */ |
746 | top_field->gam_gdp_agc = GAM_GDP_AGC_FULL_RANGE; | 746 | top_field->gam_gdp_agc = GAM_GDP_AGC_FULL_RANGE; |
747 | top_field->gam_gdp_ctl = WAIT_NEXT_VSYNC; | 747 | top_field->gam_gdp_ctl = WAIT_NEXT_VSYNC; |
748 | format = sti_gdp_fourcc2format(fb->pixel_format); | 748 | format = sti_gdp_fourcc2format(fb->format->format); |
749 | top_field->gam_gdp_ctl |= format; | 749 | top_field->gam_gdp_ctl |= format; |
750 | top_field->gam_gdp_ctl |= sti_gdp_get_alpharange(format); | 750 | top_field->gam_gdp_ctl |= sti_gdp_get_alpharange(format); |
751 | top_field->gam_gdp_ppt &= ~GAM_GDP_PPT_IGNORE; | 751 | top_field->gam_gdp_ppt &= ~GAM_GDP_PPT_IGNORE; |
@@ -753,7 +753,7 @@ static void sti_gdp_atomic_update(struct drm_plane *drm_plane, | |||
753 | cma_obj = drm_fb_cma_get_gem_obj(fb, 0); | 753 | cma_obj = drm_fb_cma_get_gem_obj(fb, 0); |
754 | 754 | ||
755 | DRM_DEBUG_DRIVER("drm FB:%d format:%.4s phys@:0x%lx\n", fb->base.id, | 755 | DRM_DEBUG_DRIVER("drm FB:%d format:%.4s phys@:0x%lx\n", fb->base.id, |
756 | (char *)&fb->pixel_format, | 756 | (char *)&fb->format->format, |
757 | (unsigned long)cma_obj->paddr); | 757 | (unsigned long)cma_obj->paddr); |
758 | 758 | ||
759 | /* pixel memory location */ | 759 | /* pixel memory location */ |
diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c index f88130f2eb48..becf10d255c4 100644 --- a/drivers/gpu/drm/sti/sti_hqvdp.c +++ b/drivers/gpu/drm/sti/sti_hqvdp.c | |||
@@ -1147,7 +1147,7 @@ static void sti_hqvdp_atomic_update(struct drm_plane *drm_plane, | |||
1147 | cma_obj = drm_fb_cma_get_gem_obj(fb, 0); | 1147 | cma_obj = drm_fb_cma_get_gem_obj(fb, 0); |
1148 | 1148 | ||
1149 | DRM_DEBUG_DRIVER("drm FB:%d format:%.4s phys@:0x%lx\n", fb->base.id, | 1149 | DRM_DEBUG_DRIVER("drm FB:%d format:%.4s phys@:0x%lx\n", fb->base.id, |
1150 | (char *)&fb->pixel_format, | 1150 | (char *)&fb->format->format, |
1151 | (unsigned long)cma_obj->paddr); | 1151 | (unsigned long)cma_obj->paddr); |
1152 | 1152 | ||
1153 | /* Buffer planes address */ | 1153 | /* Buffer planes address */ |
diff --git a/drivers/gpu/drm/sun4i/sun4i_backend.c b/drivers/gpu/drm/sun4i/sun4i_backend.c index a606207d4e25..a278e1f44661 100644 --- a/drivers/gpu/drm/sun4i/sun4i_backend.c +++ b/drivers/gpu/drm/sun4i/sun4i_backend.c | |||
@@ -189,7 +189,8 @@ int sun4i_backend_update_layer_formats(struct sun4i_backend *backend, | |||
189 | DRM_DEBUG_DRIVER("Switching display backend interlaced mode %s\n", | 189 | DRM_DEBUG_DRIVER("Switching display backend interlaced mode %s\n", |
190 | interlaced ? "on" : "off"); | 190 | interlaced ? "on" : "off"); |
191 | 191 | ||
192 | ret = sun4i_backend_drm_format_to_layer(plane, fb->pixel_format, &val); | 192 | ret = sun4i_backend_drm_format_to_layer(plane, fb->format->format, |
193 | &val); | ||
193 | if (ret) { | 194 | if (ret) { |
194 | DRM_DEBUG_DRIVER("Invalid format\n"); | 195 | DRM_DEBUG_DRIVER("Invalid format\n"); |
195 | return val; | 196 | return val; |
diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c index 642dcff87e34..7561a95a54e3 100644 --- a/drivers/gpu/drm/tegra/dc.c +++ b/drivers/gpu/drm/tegra/dc.c | |||
@@ -511,7 +511,7 @@ static int tegra_plane_atomic_check(struct drm_plane *plane, | |||
511 | if (!state->crtc) | 511 | if (!state->crtc) |
512 | return 0; | 512 | return 0; |
513 | 513 | ||
514 | err = tegra_dc_format(state->fb->pixel_format, &plane_state->format, | 514 | err = tegra_dc_format(state->fb->format->format, &plane_state->format, |
515 | &plane_state->swap); | 515 | &plane_state->swap); |
516 | if (err < 0) | 516 | if (err < 0) |
517 | return err; | 517 | return err; |
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_crtc.c b/drivers/gpu/drm/tilcdc/tilcdc_crtc.c index 0dc96e12fd06..47c2fe659fe3 100644 --- a/drivers/gpu/drm/tilcdc/tilcdc_crtc.c +++ b/drivers/gpu/drm/tilcdc/tilcdc_crtc.c | |||
@@ -399,7 +399,7 @@ static void tilcdc_crtc_set_mode(struct drm_crtc *crtc) | |||
399 | if (info->tft_alt_mode) | 399 | if (info->tft_alt_mode) |
400 | reg |= LCDC_TFT_ALT_ENABLE; | 400 | reg |= LCDC_TFT_ALT_ENABLE; |
401 | if (priv->rev == 2) { | 401 | if (priv->rev == 2) { |
402 | switch (fb->pixel_format) { | 402 | switch (fb->format->format) { |
403 | case DRM_FORMAT_BGR565: | 403 | case DRM_FORMAT_BGR565: |
404 | case DRM_FORMAT_RGB565: | 404 | case DRM_FORMAT_RGB565: |
405 | break; | 405 | break; |
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_plane.c b/drivers/gpu/drm/tilcdc/tilcdc_plane.c index c0fc874e91cf..4b7519dfd1b9 100644 --- a/drivers/gpu/drm/tilcdc/tilcdc_plane.c +++ b/drivers/gpu/drm/tilcdc/tilcdc_plane.c | |||
@@ -77,7 +77,7 @@ static int tilcdc_plane_atomic_check(struct drm_plane *plane, | |||
77 | } | 77 | } |
78 | 78 | ||
79 | if (state->fb && old_state->fb && | 79 | if (state->fb && old_state->fb && |
80 | state->fb->pixel_format != old_state->fb->pixel_format) { | 80 | state->fb->format->format != old_state->fb->format->format) { |
81 | dev_dbg(plane->dev->dev, | 81 | dev_dbg(plane->dev->dev, |
82 | "%s(): pixel format change requires mode_change\n", | 82 | "%s(): pixel format change requires mode_change\n", |
83 | __func__); | 83 | __func__); |
diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c index f84f6bddd015..110d1518f5d5 100644 --- a/drivers/gpu/drm/vc4/vc4_plane.c +++ b/drivers/gpu/drm/vc4/vc4_plane.c | |||
@@ -295,7 +295,7 @@ static int vc4_plane_setup_clipping_and_scaling(struct drm_plane_state *state) | |||
295 | struct drm_framebuffer *fb = state->fb; | 295 | struct drm_framebuffer *fb = state->fb; |
296 | struct drm_gem_cma_object *bo = drm_fb_cma_get_gem_obj(fb, 0); | 296 | struct drm_gem_cma_object *bo = drm_fb_cma_get_gem_obj(fb, 0); |
297 | u32 subpixel_src_mask = (1 << 16) - 1; | 297 | u32 subpixel_src_mask = (1 << 16) - 1; |
298 | u32 format = fb->pixel_format; | 298 | u32 format = fb->format->format; |
299 | int num_planes = fb->format->num_planes; | 299 | int num_planes = fb->format->num_planes; |
300 | u32 h_subsample = 1; | 300 | u32 h_subsample = 1; |
301 | u32 v_subsample = 1; | 301 | u32 v_subsample = 1; |
@@ -496,7 +496,7 @@ static int vc4_plane_mode_set(struct drm_plane *plane, | |||
496 | struct vc4_plane_state *vc4_state = to_vc4_plane_state(state); | 496 | struct vc4_plane_state *vc4_state = to_vc4_plane_state(state); |
497 | struct drm_framebuffer *fb = state->fb; | 497 | struct drm_framebuffer *fb = state->fb; |
498 | u32 ctl0_offset = vc4_state->dlist_count; | 498 | u32 ctl0_offset = vc4_state->dlist_count; |
499 | const struct hvs_format *format = vc4_get_hvs_format(fb->pixel_format); | 499 | const struct hvs_format *format = vc4_get_hvs_format(fb->format->format); |
500 | int num_planes = drm_format_num_planes(format->drm); | 500 | int num_planes = drm_format_num_planes(format->drm); |
501 | u32 scl0, scl1; | 501 | u32 scl0, scl1; |
502 | u32 lbm_size; | 502 | u32 lbm_size; |
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c index 58643c5ca1d7..867a8442220c 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | |||
@@ -488,7 +488,7 @@ static int vmw_fb_kms_framebuffer(struct fb_info *info) | |||
488 | cur_fb = par->set_fb; | 488 | cur_fb = par->set_fb; |
489 | if (cur_fb && cur_fb->width == mode_cmd.width && | 489 | if (cur_fb && cur_fb->width == mode_cmd.width && |
490 | cur_fb->height == mode_cmd.height && | 490 | cur_fb->height == mode_cmd.height && |
491 | cur_fb->pixel_format == mode_cmd.pixel_format && | 491 | cur_fb->format->format == mode_cmd.pixel_format && |
492 | cur_fb->pitches[0] == mode_cmd.pitches[0]) | 492 | cur_fb->pitches[0] == mode_cmd.pitches[0]) |
493 | return 0; | 493 | return 0; |
494 | 494 | ||
diff --git a/drivers/gpu/drm/zte/zx_plane.c b/drivers/gpu/drm/zte/zx_plane.c index 72d27b0a48b2..b634b090cdc1 100644 --- a/drivers/gpu/drm/zte/zx_plane.c +++ b/drivers/gpu/drm/zte/zx_plane.c | |||
@@ -146,7 +146,7 @@ static void zx_gl_plane_atomic_update(struct drm_plane *plane, | |||
146 | if (!fb) | 146 | if (!fb) |
147 | return; | 147 | return; |
148 | 148 | ||
149 | format = fb->pixel_format; | 149 | format = fb->format->format; |
150 | stride = fb->pitches[0]; | 150 | stride = fb->pitches[0]; |
151 | 151 | ||
152 | src_x = plane->state->src_x >> 16; | 152 | src_x = plane->state->src_x >> 16; |