Lines Matching defs:window

183 		 * of top window is set to max, we can enforce dependent
185 * window if top window is opaque and if top window enables
186 * alpha blending, then bottom window is getting alpha value
218 * If any of the windows on top of this window is opaque, it
219 * will completely conceal this window within that area. If
220 * top window has an alpha component, it is blended over the
221 * bottom window.
240 * is blended over the bottom window.
262 * If window B / C is topmost, then X / Y registers are
288 const struct tegra_dc_window *window)
302 value = K2(255) | K1(255) | WINDOW_LAYER_DEPTH(255 - window->zpos);
308 const struct tegra_dc_window *window)
312 if (window->src.w == window->dst.w)
323 const struct tegra_dc_window *window)
327 if (window->src.h == window->dst.h)
340 const struct tegra_dc_window *window)
351 yuv = tegra_plane_format_is_yuv(window->format, &planar);
353 bpp = window->bits_per_pixel / 8;
357 tegra_plane_writel(plane, window->format, DC_WIN_COLOR_DEPTH);
358 tegra_plane_writel(plane, window->swap, DC_WIN_BYTE_SWAP);
360 value = V_POSITION(window->dst.y) | H_POSITION(window->dst.x);
363 value = V_SIZE(window->dst.h) | H_SIZE(window->dst.w);
366 h_offset = window->src.x * bpp;
367 v_offset = window->src.y;
368 h_size = window->src.w * bpp;
369 v_size = window->src.h;
371 if (window->reflect_x)
372 h_offset += (window->src.w - 1) * bpp;
374 if (window->reflect_y)
375 v_offset += window->src.h - 1;
387 h_dda = compute_dda_inc(window->src.w, window->dst.w, false, bpp);
388 v_dda = compute_dda_inc(window->src.h, window->dst.h, true, bpp);
393 h_dda = compute_initial_dda(window->src.x);
394 v_dda = compute_initial_dda(window->src.y);
402 tegra_plane_writel(plane, window->base[0], DC_WINBUF_START_ADDR);
405 tegra_plane_writel(plane, window->base[1], DC_WINBUF_START_ADDR_U);
406 tegra_plane_writel(plane, window->base[2], DC_WINBUF_START_ADDR_V);
407 value = window->stride[1] << 16 | window->stride[0];
410 tegra_plane_writel(plane, window->stride[0], DC_WIN_LINE_STRIDE);
417 unsigned long height = window->tiling.value;
419 switch (window->tiling.mode) {
436 switch (window->tiling.mode) {
472 } else if (window->bits_per_pixel < 24) {
476 if (window->reflect_x)
479 if (window->reflect_y)
482 if (tegra_plane_use_horizontal_filtering(plane, window)) {
507 if (tegra_plane_use_vertical_filtering(plane, window)) {
525 tegra_plane_setup_blending(plane, window);
712 struct tegra_dc_window window;
722 memset(&window, 0, sizeof(window));
723 window.src.x = plane->state->src.x1 >> 16;
724 window.src.y = plane->state->src.y1 >> 16;
725 window.src.w = drm_rect_width(&plane->state->src) >> 16;
726 window.src.h = drm_rect_height(&plane->state->src) >> 16;
727 window.dst.x = plane->state->dst.x1;
728 window.dst.y = plane->state->dst.y1;
729 window.dst.w = drm_rect_width(&plane->state->dst);
730 window.dst.h = drm_rect_height(&plane->state->dst);
731 window.bits_per_pixel = fb->format->cpp[0] * 8;
732 window.reflect_x = state->reflect_x;
733 window.reflect_y = state->reflect_y;
736 window.zpos = plane->state->normalized_zpos;
737 window.tiling = state->tiling;
738 window.format = state->format;
739 window.swap = state->swap;
742 window.base[i] = state->iova[i] + fb->offsets[i];
750 window.stride[i] = fb->pitches[i];
753 tegra_dc_setup_window(p, &window);
796 /* Always use window A as primary window */
2041 * XXX do not register DCs with no window groups because we cannot