Lines Matching refs:dst
55 static u32 clip_scaled(int src, int dst, int *clip) in clip_scaled() argument
59 if (dst == 0) in clip_scaled()
63 *clip = min(*clip, dst); in clip_scaled()
65 tmp = mul_u32_u32(src, dst - *clip); in clip_scaled()
71 if (src < (dst << 16)) in clip_scaled()
72 return DIV_ROUND_UP_ULL(tmp, dst); in clip_scaled()
74 return DIV_ROUND_DOWN_ULL(tmp, dst); in clip_scaled()
91 bool drm_rect_clip_scaled(struct drm_rect *src, struct drm_rect *dst, in drm_rect_clip_scaled() argument
96 diff = clip->x1 - dst->x1; in drm_rect_clip_scaled()
99 drm_rect_width(dst), &diff); in drm_rect_clip_scaled()
102 dst->x1 += diff; in drm_rect_clip_scaled()
104 diff = clip->y1 - dst->y1; in drm_rect_clip_scaled()
107 drm_rect_height(dst), &diff); in drm_rect_clip_scaled()
110 dst->y1 += diff; in drm_rect_clip_scaled()
112 diff = dst->x2 - clip->x2; in drm_rect_clip_scaled()
115 drm_rect_width(dst), &diff); in drm_rect_clip_scaled()
118 dst->x2 -= diff; in drm_rect_clip_scaled()
120 diff = dst->y2 - clip->y2; in drm_rect_clip_scaled()
123 drm_rect_height(dst), &diff); in drm_rect_clip_scaled()
126 dst->y2 -= diff; in drm_rect_clip_scaled()
129 return drm_rect_visible(dst); in drm_rect_clip_scaled()
133 static int drm_calc_scale(int src, int dst) in drm_calc_scale() argument
137 if (WARN_ON(src < 0 || dst < 0)) in drm_calc_scale()
140 if (dst == 0) in drm_calc_scale()
143 if (src > (dst << 16)) in drm_calc_scale()
144 return DIV_ROUND_UP(src, dst); in drm_calc_scale()
146 scale = src / dst; in drm_calc_scale()
169 const struct drm_rect *dst, in drm_rect_calc_hscale() argument
173 int dst_w = drm_rect_width(dst); in drm_rect_calc_hscale()
204 const struct drm_rect *dst, in drm_rect_calc_vscale() argument
208 int dst_h = drm_rect_height(dst); in drm_rect_calc_vscale()