Lines Matching refs:fb
126 struct drm_framebuffer *fb = state->fb; in drm_plane_state_to_eba() local
131 cma_obj = drm_fb_cma_get_gem_obj(fb, plane); in drm_plane_state_to_eba()
134 return cma_obj->paddr + fb->offsets[plane] + fb->pitches[plane] * y + in drm_plane_state_to_eba()
135 fb->format->cpp[plane] * x; in drm_plane_state_to_eba()
141 struct drm_framebuffer *fb = state->fb; in drm_plane_state_to_ubo() local
147 cma_obj = drm_fb_cma_get_gem_obj(fb, 1); in drm_plane_state_to_ubo()
150 x /= fb->format->hsub; in drm_plane_state_to_ubo()
151 y /= fb->format->vsub; in drm_plane_state_to_ubo()
153 return cma_obj->paddr + fb->offsets[1] + fb->pitches[1] * y + in drm_plane_state_to_ubo()
154 fb->format->cpp[1] * x - eba; in drm_plane_state_to_ubo()
160 struct drm_framebuffer *fb = state->fb; in drm_plane_state_to_vbo() local
166 cma_obj = drm_fb_cma_get_gem_obj(fb, 2); in drm_plane_state_to_vbo()
169 x /= fb->format->hsub; in drm_plane_state_to_vbo()
170 y /= fb->format->vsub; in drm_plane_state_to_vbo()
172 return cma_obj->paddr + fb->offsets[2] + fb->pitches[2] * y + in drm_plane_state_to_vbo()
173 fb->format->cpp[2] * x - eba; in drm_plane_state_to_vbo()
239 switch (ipu_plane->base.state->fb->format->format) { in ipu_plane_separate_alpha()
380 struct drm_framebuffer *fb = new_state->fb; in ipu_plane_atomic_check() local
381 struct drm_framebuffer *old_fb = old_state->fb; in ipu_plane_atomic_check()
387 if (!fb) in ipu_plane_atomic_check()
436 fb->format != old_fb->format)) in ipu_plane_atomic_check()
444 if (fb->pitches[0] < 1 || fb->pitches[0] > 16384) in ipu_plane_atomic_check()
447 if (old_fb && fb->pitches[0] != old_fb->pitches[0]) in ipu_plane_atomic_check()
450 if (ALIGN(fb->width, 8) * fb->format->cpp[0] > in ipu_plane_atomic_check()
451 fb->pitches[0] + fb->offsets[0]) { in ipu_plane_atomic_check()
456 switch (fb->format->format) { in ipu_plane_atomic_check()
476 if (old_fb && (fb->format == old_fb->format)) { in ipu_plane_atomic_check()
482 if (fb->pitches[1] != fb->pitches[2]) in ipu_plane_atomic_check()
493 if (old_fb && (fb->format == old_fb->format)) { in ipu_plane_atomic_check()
499 if (fb->pitches[1] < 1 || fb->pitches[1] > 16384) in ipu_plane_atomic_check()
502 if (old_fb && old_fb->pitches[1] != fb->pitches[1]) in ipu_plane_atomic_check()
509 if (((new_state->src.x1 >> 16) & (fb->format->hsub - 1)) || in ipu_plane_atomic_check()
510 ((new_state->src.y1 >> 16) & (fb->format->vsub - 1))) in ipu_plane_atomic_check()
523 if (fb->pitches[1] < 1 || fb->pitches[1] > 16384) in ipu_plane_atomic_check()
526 if (old_fb && old_fb->pitches[1] != fb->pitches[1]) in ipu_plane_atomic_check()
589 struct drm_framebuffer *fb = new_state->fb; in ipu_plane_atomic_update() local
607 !fb->format->has_alpha, 0xff, in ipu_plane_atomic_update()
616 !fb->format->has_alpha, 0xff, in ipu_plane_atomic_update()
633 fb->pitches[0], fb->format->format, in ipu_plane_atomic_update()
634 fb->modifier, &eba); in ipu_plane_atomic_update()
637 if (!old_state->fb || in ipu_plane_atomic_update()
638 old_state->fb->format->format != fb->format->format || in ipu_plane_atomic_update()
641 ics = ipu_drm_fourcc_to_colorspace(fb->format->format); in ipu_plane_atomic_update()
656 if (old_state->fb && !drm_atomic_crtc_needs_modeset(crtc_state)) { in ipu_plane_atomic_update()
672 ics = ipu_drm_fourcc_to_colorspace(fb->format->format); in ipu_plane_atomic_update()
690 info = drm_format_info(fb->format->format); in ipu_plane_atomic_update()
691 ipu_calculate_bursts(width, info->cpp[0], fb->pitches[0], in ipu_plane_atomic_update()
696 ipu_cpmem_set_fmt(ipu_plane->ipu_ch, fb->format->format); in ipu_plane_atomic_update()
701 ipu_cpmem_set_stride(ipu_plane->ipu_ch, fb->pitches[0]); in ipu_plane_atomic_update()
704 switch (fb->format->format) { in ipu_plane_atomic_update()
713 if (fb->format->format == DRM_FORMAT_YVU420 || in ipu_plane_atomic_update()
714 fb->format->format == DRM_FORMAT_YVU422 || in ipu_plane_atomic_update()
715 fb->format->format == DRM_FORMAT_YVU444) in ipu_plane_atomic_update()
719 fb->pitches[1], ubo, vbo); in ipu_plane_atomic_update()
730 fb->pitches[1], ubo, ubo); in ipu_plane_atomic_update()
758 ipu_cpmem_set_stride(ipu_plane->alpha_ch, fb->pitches[1]); in ipu_plane_atomic_update()
833 if (!plane_state->fb) { in ipu_planes_assign_pre()
838 if (!(plane_state->fb->flags & DRM_MODE_FB_MODIFIERS) || in ipu_planes_assign_pre()
839 plane_state->fb->modifier == DRM_FORMAT_MOD_LINEAR) in ipu_planes_assign_pre()
846 plane_state->fb->format->format, in ipu_planes_assign_pre()
847 plane_state->fb->modifier)) in ipu_planes_assign_pre()
858 if (!plane_state->fb) { in ipu_planes_assign_pre()
863 if ((plane_state->fb->flags & DRM_MODE_FB_MODIFIERS) && in ipu_planes_assign_pre()
864 plane_state->fb->modifier != DRM_FORMAT_MOD_LINEAR) in ipu_planes_assign_pre()
868 plane_state->fb->modifier = DRM_FORMAT_MOD_LINEAR; in ipu_planes_assign_pre()
872 plane_state->fb->format->format, in ipu_planes_assign_pre()
873 plane_state->fb->modifier)) { in ipu_planes_assign_pre()