Lines Matching defs:hstate

601 	struct atmel_hlcdc_plane_state *hstate =
604 struct drm_framebuffer *fb = hstate->base.fb;
610 if (!hstate->base.crtc || WARN_ON(!fb))
622 hstate->src_x = s->src.x1;
623 hstate->src_y = s->src.y1;
624 hstate->src_w = drm_rect_width(&s->src);
625 hstate->src_h = drm_rect_height(&s->src);
626 hstate->crtc_x = s->dst.x1;
627 hstate->crtc_y = s->dst.y1;
628 hstate->crtc_w = drm_rect_width(&s->dst);
629 hstate->crtc_h = drm_rect_height(&s->dst);
631 if ((hstate->src_x | hstate->src_y | hstate->src_w | hstate->src_h) &
635 hstate->src_x >>= 16;
636 hstate->src_y >>= 16;
637 hstate->src_w >>= 16;
638 hstate->src_h >>= 16;
640 hstate->nplanes = fb->format->num_planes;
641 if (hstate->nplanes > ATMEL_HLCDC_LAYER_MAX_PLANES)
644 for (i = 0; i < hstate->nplanes; i++) {
649 hstate->bpp[i] = fb->format->cpp[i];
650 if (!hstate->bpp[i])
653 switch (hstate->base.rotation & DRM_MODE_ROTATE_MASK) {
655 offset = (hstate->src_y / ydiv) *
657 offset += ((hstate->src_x + hstate->src_w - 1) /
658 xdiv) * hstate->bpp[i];
659 hstate->xstride[i] = -(((hstate->src_h - 1) / ydiv) *
661 (2 * hstate->bpp[i]);
662 hstate->pstride[i] = fb->pitches[i] - hstate->bpp[i];
665 offset = ((hstate->src_y + hstate->src_h - 1) /
667 offset += ((hstate->src_x + hstate->src_w - 1) /
668 xdiv) * hstate->bpp[i];
669 hstate->xstride[i] = ((((hstate->src_w - 1) / xdiv) - 1) *
670 hstate->bpp[i]) - fb->pitches[i];
671 hstate->pstride[i] = -2 * hstate->bpp[i];
674 offset = ((hstate->src_y + hstate->src_h - 1) /
676 offset += (hstate->src_x / xdiv) * hstate->bpp[i];
677 hstate->xstride[i] = ((hstate->src_h - 1) / ydiv) *
679 hstate->pstride[i] = -fb->pitches[i] - hstate->bpp[i];
683 offset = (hstate->src_y / ydiv) * fb->pitches[i];
684 offset += (hstate->src_x / xdiv) * hstate->bpp[i];
685 hstate->xstride[i] = fb->pitches[i] -
686 ((hstate->src_w / xdiv) *
687 hstate->bpp[i]);
688 hstate->pstride[i] = 0;
692 hstate->offsets[i] = offset + fb->offsets[i];
698 if (drm_rotation_90_or_270(hstate->base.rotation)) {
699 swap(hstate->src_w, hstate->src_h);
703 (mode->hdisplay != hstate->crtc_w ||
704 mode->vdisplay != hstate->crtc_h))
707 if ((hstate->crtc_h != hstate->src_h || hstate->crtc_w != hstate->src_w) &&
709 hstate->base.fb->format->has_alpha))
740 struct atmel_hlcdc_plane_state *hstate =
747 if (!hstate->base.visible) {
752 atmel_hlcdc_plane_update_pos_and_size(plane, hstate);
753 atmel_hlcdc_plane_update_general_settings(plane, hstate);
754 atmel_hlcdc_plane_update_format(plane, hstate);
755 atmel_hlcdc_plane_update_clut(plane, hstate);
756 atmel_hlcdc_plane_update_buffers(plane, hstate);
757 atmel_hlcdc_plane_update_disc_area(plane, hstate);