Lines Matching defs:params
615 struct drm_intel_overlay_put_image *params)
622 int uv_hscale = uv_hsubsampling(params->flags);
623 int uv_vscale = uv_vsubsampling(params->flags);
625 if (params->dst_width > 1)
626 xscale = ((params->src_scan_width - 1) << FP_SHIFT) /
627 params->dst_width;
631 if (params->dst_height > 1)
632 yscale = ((params->src_scan_height - 1) << FP_SHIFT) /
633 params->dst_height;
637 /*if (params->format & I915_OVERLAY_YUV_PLANAR) {*/
715 static u32 overlay_cmd_reg(struct drm_intel_overlay_put_image *params)
719 if (params->flags & I915_OVERLAY_YUV_PLANAR) {
720 switch (params->flags & I915_OVERLAY_DEPTH_MASK) {
733 switch (params->flags & I915_OVERLAY_DEPTH_MASK) {
742 switch (params->flags & I915_OVERLAY_SWAP_MASK) {
788 struct drm_intel_overlay_put_image *params)
836 iowrite32(params->dst_y << 16 | params->dst_x, ®s->DWINPOS);
837 iowrite32(params->dst_height << 16 | params->dst_width, ®s->DWINSZ);
839 if (params->flags & I915_OVERLAY_YUV_PACKED)
840 tmp_width = packed_width_bytes(params->flags,
841 params->src_width);
843 tmp_width = params->src_width;
845 swidth = params->src_width;
846 swidthsw = calc_swidthsw(dev_priv, params->offset_Y, tmp_width);
847 sheight = params->src_height;
848 iowrite32(i915_ggtt_offset(vma) + params->offset_Y, ®s->OBUF_0Y);
849 ostride = params->stride_Y;
851 if (params->flags & I915_OVERLAY_YUV_PLANAR) {
852 int uv_hscale = uv_hsubsampling(params->flags);
853 int uv_vscale = uv_vsubsampling(params->flags);
856 swidth |= (params->src_width / uv_hscale) << 16;
857 sheight |= (params->src_height / uv_vscale) << 16;
859 tmp_U = calc_swidthsw(dev_priv, params->offset_U,
860 params->src_width / uv_hscale);
861 tmp_V = calc_swidthsw(dev_priv, params->offset_V,
862 params->src_width / uv_hscale);
865 iowrite32(i915_ggtt_offset(vma) + params->offset_U,
867 iowrite32(i915_ggtt_offset(vma) + params->offset_V,
870 ostride |= params->stride_UV << 16;
878 scale_changed = update_scaling_factors(overlay, regs, params);
882 iowrite32(overlay_cmd_reg(params), ®s->OCMD);
1112 struct drm_intel_overlay_put_image *params = data;
1126 if (!(params->flags & I915_OVERLAY_ENABLE)) {
1134 drmmode_crtc = drm_crtc_find(dev, file_priv, params->crtc_id);
1139 new_bo = i915_gem_object_lookup(file_priv, params->bo_handle);
1177 ret = check_overlay_dst(overlay, params);
1182 params->dst_y = (((u32)params->dst_y << 12) /
1185 params->dst_height = (((u32)params->dst_height << 12) /
1189 if (params->src_scan_height > params->src_height ||
1190 params->src_scan_width > params->src_width) {
1195 ret = check_overlay_src(dev_priv, params, new_bo);
1200 ret = check_overlay_scaling(params);
1204 ret = intel_overlay_do_put_image(overlay, new_bo, params);