/linux/drivers/gpu/drm/tiny/ |
H A D | ili9225.c | 82 struct drm_rect *rect, struct drm_format_conv_state *fmtcnv_state) in ili9225_fb_dirty() argument 85 unsigned int height = rect->y2 - rect->y1; in ili9225_fb_dirty() 86 unsigned int width = rect->x2 - rect->x1; in ili9225_fb_dirty() 97 DRM_DEBUG_KMS("Flushing [FB:%d] " DRM_RECT_FMT "\n", fb->base.id, DRM_RECT_ARG(rect)); in ili9225_fb_dirty() 102 ret = mipi_dbi_buf_copy(tr, src, fb, rect, swap, fmtcnv_state); in ili9225_fb_dirty() 111 x1 = rect->x1; in ili9225_fb_dirty() 112 x2 = rect->x2 - 1; in ili9225_fb_dirty() 113 y1 = rect->y1; in ili9225_fb_dirty() 114 y2 = rect->y2 - 1; in ili9225_fb_dirty() 119 x1 = rect->y1; in ili9225_fb_dirty() [all …]
|
H A D | st7586.c | 114 struct drm_rect *rect, struct drm_format_conv_state *fmtcnv_state) in st7586_fb_dirty() argument 121 rect->x1 = rounddown(rect->x1, 3); in st7586_fb_dirty() 122 rect->x2 = roundup(rect->x2, 3); in st7586_fb_dirty() 124 DRM_DEBUG_KMS("Flushing [FB:%d] " DRM_RECT_FMT "\n", fb->base.id, DRM_RECT_ARG(rect)); in st7586_fb_dirty() 126 ret = st7586_buf_copy(dbidev->tx_buf, src, fb, rect, fmtcnv_state); in st7586_fb_dirty() 131 start = rect->x1 / 3; in st7586_fb_dirty() 132 end = rect->x2 / 3; in st7586_fb_dirty() 138 (rect->y1 >> 8) & 0xFF, rect->y1 & 0xFF, in st7586_fb_dirty() 139 (rect->y2 >> 8) & 0xFF, (rect->y2 - 1) & 0xFF); in st7586_fb_dirty() 143 (end - start) * (rect->y2 - rect->y1)); in st7586_fb_dirty() [all …]
|
H A D | gm12u320.c | 98 struct drm_rect rect; member 267 x1 = gm12u320->fb_update.rect.x1; in gm12u320_copy_fb_to_blocks() 268 x2 = gm12u320->fb_update.rect.x2; in gm12u320_copy_fb_to_blocks() 269 y1 = gm12u320->fb_update.rect.y1; in gm12u320_copy_fb_to_blocks() 270 y2 = gm12u320->fb_update.rect.y2; in gm12u320_copy_fb_to_blocks() 415 gm12u320->fb_update.rect = *dirty; in gm12u320_fb_mark_dirty() 419 struct drm_rect *rect = &gm12u320->fb_update.rect; in gm12u320_fb_mark_dirty() local 421 rect->x1 = min(rect->x1, dirty->x1); in gm12u320_fb_mark_dirty() 422 rect->y1 = min(rect->y1, dirty->y1); in gm12u320_fb_mark_dirty() 423 rect->x2 = max(rect->x2, dirty->x2); in gm12u320_fb_mark_dirty() [all …]
|
/linux/drivers/gpu/drm/ |
H A D | drm_damage_helper.c | 271 struct drm_rect *rect) in drm_atomic_helper_damage_iter_next() argument 276 *rect = iter->plane_src; in drm_atomic_helper_damage_iter_next() 282 *rect = iter->clips[iter->curr_clip]; in drm_atomic_helper_damage_iter_next() 285 if (drm_rect_intersect(rect, &iter->plane_src)) { in drm_atomic_helper_damage_iter_next() 312 struct drm_rect *rect) in drm_atomic_helper_damage_merged() argument 318 rect->x1 = INT_MAX; in drm_atomic_helper_damage_merged() 319 rect->y1 = INT_MAX; in drm_atomic_helper_damage_merged() 320 rect->x2 = 0; in drm_atomic_helper_damage_merged() 321 rect->y2 = 0; in drm_atomic_helper_damage_merged() 325 rect->x1 = min(rect->x1, clip.x1); in drm_atomic_helper_damage_merged() [all …]
|
/linux/drivers/video/fbdev/sis/ |
H A D | sis_accel.c | 305 void fbcon_sis_fillrect(struct fb_info *info, const struct fb_fillrect *rect) in fbcon_sis_fillrect() argument 318 cfb_fillrect(info, rect); in fbcon_sis_fillrect() 322 if(!rect->width || !rect->height || rect->dx >= vxres || rect->dy >= vyres) in fbcon_sis_fillrect() 326 width = ((rect->dx + rect->width) > vxres) ? (vxres - rect->dx) : rect->width; in fbcon_sis_fillrect() 327 height = ((rect->dy + rect->height) > vyres) ? (vyres - rect->dy) : rect->height; in fbcon_sis_fillrect() 330 case 8: col = rect->color; in fbcon_sis_fillrect() 333 case 32: col = ((u32 *)(info->pseudo_palette))[rect->color]; in fbcon_sis_fillrect() 340 SiS300SetupForSolidFill(ivideo, col, myrops[rect->rop]); in fbcon_sis_fillrect() 341 SiS300SubsequentSolidFillRect(ivideo, rect->dx, rect->dy, width, height); in fbcon_sis_fillrect() 347 SiS310SetupForSolidFill(ivideo, col, myrops[rect->rop]); in fbcon_sis_fillrect() [all …]
|
/linux/drivers/gpu/drm/gud/ |
H A D | gud_pipe.c | 54 struct drm_rect *rect, in gud_xrgb8888_to_r124() argument 68 rect->x1 = ALIGN_DOWN(rect->x1, block_width); in gud_xrgb8888_to_r124() 69 width = drm_rect_width(rect); in gud_xrgb8888_to_r124() 70 height = drm_rect_height(rect); in gud_xrgb8888_to_r124() 79 drm_fb_xrgb8888_to_gray8(&dst_map, NULL, &vmap, fb, rect, fmtcnv_state); in gud_xrgb8888_to_r124() 104 struct drm_rect *rect) in gud_xrgb8888_to_color() argument 115 rect->x1 = ALIGN_DOWN(rect->x1, block_width); in gud_xrgb8888_to_color() 116 width = drm_rect_width(rect); in gud_xrgb8888_to_color() 117 len = drm_format_info_min_pitch(format, 0, width) * drm_rect_height(rect); in gud_xrgb8888_to_color() 119 for (y = rect->y1; y < rect->y2; y++) { in gud_xrgb8888_to_color() [all …]
|
/linux/drivers/gpu/drm/exynos/ |
H A D | exynos_drm_ipp.c | 270 task->src.rect.w = task->dst.rect.w = UINT_MAX; in exynos_drm_ipp_task_alloc() 271 task->src.rect.h = task->dst.rect.h = UINT_MAX; in exynos_drm_ipp_task_alloc() 296 offsetof(struct exynos_drm_ipp_task, src.rect), 301 offsetof(struct exynos_drm_ipp_task, dst.rect), 497 if (!__size_limit_check(buf->rect.w, lh) || in exynos_drm_ipp_check_size_limits() 498 !__align_check(buf->rect.x, lh->align) || in exynos_drm_ipp_check_size_limits() 499 !__size_limit_check(buf->rect.h, lv) || in exynos_drm_ipp_check_size_limits() 500 !__align_check(buf->rect.y, lv->align)) in exynos_drm_ipp_check_size_limits() 596 ret = exynos_drm_ipp_check_scale_limits(&src->rect, &dst->rect, in exynos_drm_ipp_check_format() 614 if (src->rect.w == UINT_MAX) in exynos_drm_ipp_task_check() [all …]
|
H A D | exynos_drm_fimc.c | 474 h1 = buf->rect.x; in fimc_set_window() 475 h2 = real_width - buf->rect.w - buf->rect.x; in fimc_set_window() 476 v1 = buf->rect.y; in fimc_set_window() 477 v2 = buf->buf.height - buf->rect.h - buf->rect.y; in fimc_set_window() 480 buf->rect.x, buf->rect.y, buf->rect.w, buf->rect.h, in fimc_set_window() 517 DRM_DEV_DEBUG_KMS(ctx->dev, "x[%d]y[%d]w[%d]h[%d]\n", buf->rect.x, in fimc_src_set_size() 518 buf->rect.y, buf->rect.w, buf->rect.h); in fimc_src_set_size() 524 cfg |= (EXYNOS_CIREAL_ISIZE_WIDTH(buf->rect.w) | in fimc_src_set_size() 525 EXYNOS_CIREAL_ISIZE_HEIGHT(buf->rect.h)); in fimc_src_set_size() 538 cfg = (EXYNOS_CIIYOFF_HORIZONTAL(buf->rect.x) | in fimc_src_set_size() [all …]
|
/linux/drivers/media/i2c/ |
H A D | mt9m111.c | 233 struct v4l2_rect rect; /* cropping rectangle */ member 381 struct mt9m111_context *ctx, struct v4l2_rect *rect, in mt9m111_setup_rect_ctx() argument 385 int ret = mt9m111_reg_write(client, ctx->reducer_xzoom, rect->width); in mt9m111_setup_rect_ctx() 387 ret = mt9m111_reg_write(client, ctx->reducer_yzoom, rect->height); in mt9m111_setup_rect_ctx() 395 static int mt9m111_setup_geometry(struct mt9m111 *mt9m111, struct v4l2_rect *rect, in mt9m111_setup_geometry() argument 401 ret = reg_write(COLUMN_START, rect->left); in mt9m111_setup_geometry() 403 ret = reg_write(ROW_START, rect->top); in mt9m111_setup_geometry() 406 ret = reg_write(WINDOW_WIDTH, rect->width); in mt9m111_setup_geometry() 408 ret = reg_write(WINDOW_HEIGHT, rect->height); in mt9m111_setup_geometry() 414 rect, width, height); in mt9m111_setup_geometry() [all …]
|
H A D | mt9m001.c | 97 struct v4l2_rect rect; /* Sensor window */ member 197 { MT9M001_COLUMN_START, mt9m001->rect.left }, in mt9m001_apply_selection() 198 { MT9M001_ROW_START, mt9m001->rect.top }, in mt9m001_apply_selection() 199 { MT9M001_WINDOW_WIDTH, mt9m001->rect.width - 1 }, in mt9m001_apply_selection() 201 mt9m001->rect.height + mt9m001->y_skip_top - 1 }, in mt9m001_apply_selection() 256 struct v4l2_rect rect = sel->r; in mt9m001_set_selection() local 267 rect.height = ALIGN(rect.height, 2); in mt9m001_set_selection() 270 rect.width = ALIGN(rect.width, 2); in mt9m001_set_selection() 271 rect.left = ALIGN(rect.left, 2); in mt9m001_set_selection() 273 rect.width = clamp_t(u32, rect.width, MT9M001_MIN_WIDTH, in mt9m001_set_selection() [all …]
|
H A D | ov6650.c | 199 struct v4l2_rect rect; /* sensor cropping window */ member 475 struct v4l2_rect *rect; in ov6650_get_selection() local 479 rect = v4l2_subdev_state_get_crop(sd_state, 0); in ov6650_get_selection() 483 rect = &priv->rect; in ov6650_get_selection() 496 sel->r = *rect; in ov6650_get_selection() 504 static bool is_unscaled_ok(int width, int height, struct v4l2_rect *rect) in is_unscaled_ok() argument 506 return width > rect->width >> 1 || height > rect->height >> 1; in is_unscaled_ok() 509 static void ov6650_bind_align_crop_rectangle(struct v4l2_rect *rect) in ov6650_bind_align_crop_rectangle() argument 511 v4l_bound_align_image(&rect->width, 2, W_CIF, 1, in ov6650_bind_align_crop_rectangle() 512 &rect->height, 2, H_CIF, 1, 0); in ov6650_bind_align_crop_rectangle() [all …]
|
H A D | tvp5150.c | 80 struct v4l2_rect rect; member 820 decoder->rect.height = TVP5150_V_MAX_525_60; in tvp5150_s_std() 822 decoder->rect.height = TVP5150_V_MAX_OTHERS; in tvp5150_s_std() 1035 return &decoder->rect; in tvp5150_get_pad_crop() 1059 f->width = decoder->rect.width; in tvp5150_fill_fmt() 1060 f->height = decoder->rect.height / 2; in tvp5150_fill_fmt() 1087 struct v4l2_rect *rect) in tvp5150_set_hw_selection() argument 1092 regmap_write(decoder->regmap, TVP5150_VERT_BLANKING_START, rect->top); in tvp5150_set_hw_selection() 1094 rect->top + rect->height - hmax); in tvp5150_set_hw_selection() 1096 rect->left >> TVP5150_CROP_SHIFT); in tvp5150_set_hw_selection() [all …]
|
/linux/drivers/media/platform/nxp/imx8-isi/ |
H A D | imx8-isi-pipe.c | 458 struct v4l2_rect *rect; in mxc_isi_pipe_set_fmt() local 486 rect = mxc_isi_pipe_get_pad_compose(pipe, state, in mxc_isi_pipe_set_fmt() 488 rect->width = mf->width; in mxc_isi_pipe_set_fmt() 489 rect->height = mf->height; in mxc_isi_pipe_set_fmt() 491 rect = mxc_isi_pipe_get_pad_crop(pipe, state, in mxc_isi_pipe_set_fmt() 493 rect->left = 0; in mxc_isi_pipe_set_fmt() 494 rect->top = 0; in mxc_isi_pipe_set_fmt() 495 rect->width = mf->width; in mxc_isi_pipe_set_fmt() 496 rect->height = mf->height; in mxc_isi_pipe_set_fmt() 529 rect = mxc_isi_pipe_get_pad_crop(pipe, state, in mxc_isi_pipe_set_fmt() [all …]
|
/linux/drivers/gpu/ipu-v3/ |
H A D | ipu-cpmem.c | 774 ipu_cpmem_set_resolution(ch, image->rect.width, image->rect.height); in ipu_cpmem_set_image() 781 offset = Y_OFFSET(pix, image->rect.left, image->rect.top); in ipu_cpmem_set_image() 783 image->u_offset : U_OFFSET(pix, image->rect.left, in ipu_cpmem_set_image() 784 image->rect.top) - offset; in ipu_cpmem_set_image() 786 image->v_offset : V_OFFSET(pix, image->rect.left, in ipu_cpmem_set_image() 787 image->rect.top) - offset; in ipu_cpmem_set_image() 793 offset = Y_OFFSET(pix, image->rect.left, image->rect.top); in ipu_cpmem_set_image() 795 image->u_offset : V_OFFSET(pix, image->rect.left, in ipu_cpmem_set_image() 796 image->rect.top) - offset; in ipu_cpmem_set_image() 798 image->v_offset : U_OFFSET(pix, image->rect.left, in ipu_cpmem_set_image() [all …]
|
/linux/drivers/video/fbdev/savage/ |
H A D | savagefb_accel.c | 65 void savagefb_fillrect(struct fb_info *info, const struct fb_fillrect *rect) in savagefb_fillrect() argument 70 if (!rect->width || !rect->height) in savagefb_fillrect() 74 color = rect->color; in savagefb_fillrect() 76 color = ((u32 *)info->pseudo_palette)[rect->color]; in savagefb_fillrect() 83 BCI_CMD_SET_ROP(cmd, savagefb_rop[rect->rop]); in savagefb_fillrect() 88 BCI_SEND( BCI_X_Y(rect->dx, rect->dy) ); in savagefb_fillrect() 89 BCI_SEND( BCI_W_H(rect->width, rect->height) ); in savagefb_fillrect()
|
/linux/drivers/staging/media/starfive/camss/ |
H A D | stf-isp.c | 203 struct v4l2_rect *rect; in isp_get_selection() local 215 rect = v4l2_subdev_state_get_crop(state, sel->pad); in isp_get_selection() 216 sel->r = *rect; in isp_get_selection() 221 rect = v4l2_subdev_state_get_crop(state, sel->pad); in isp_get_selection() 222 if (!rect) in isp_get_selection() 225 sel->r = *rect; in isp_get_selection() 240 struct v4l2_rect *rect; in isp_set_selection() local 249 rect = v4l2_subdev_state_get_crop(state, sel->pad); in isp_set_selection() 250 if (!rect) in isp_set_selection() 254 *rect = sel->r; in isp_set_selection() [all …]
|
/linux/drivers/video/fbdev/mb862xx/ |
H A D | mb862xxfb_accel.c | 249 const struct fb_fillrect *rect) in mb86290fb_fillrect() argument 258 if (!rect->width || !rect->height || rect->dx > vxres in mb86290fb_fillrect() 259 || rect->dy > vyres) in mb86290fb_fillrect() 264 x2 = rect->dx + rect->width; in mb86290fb_fillrect() 265 y2 = rect->dy + rect->height; in mb86290fb_fillrect() 268 width = x2 - rect->dx; in mb86290fb_fillrect() 269 height = y2 - rect->dy; in mb86290fb_fillrect() 272 fg = ((u32 *) (info->pseudo_palette))[rect->color]; in mb86290fb_fillrect() 274 fg = rect->color; in mb86290fb_fillrect() 276 switch (rect->rop) { in mb86290fb_fillrect() [all …]
|
/linux/drivers/video/fbdev/core/ |
H A D | tileblit.c | 37 struct fb_tilerect rect; in tile_clear() local 41 rect.index = vc->vc_video_erase_char & in tile_clear() 43 rect.fg = attr_fgcol_ec(fgshift, vc, info); in tile_clear() 44 rect.bg = attr_bgcol_ec(bgshift, vc, info); in tile_clear() 45 rect.sx = sx; in tile_clear() 46 rect.sy = sy; in tile_clear() 47 rect.width = width; in tile_clear() 48 rect.height = height; in tile_clear() 49 rect.rop = ROP_COPY; in tile_clear() 51 info->tileops->fb_tilefill(info, &rect); in tile_clear()
|
/linux/drivers/gpu/drm/amd/display/dc/ |
H A D | dc_spl_translate.c | 20 static void populate_splrect_from_rect(struct spl_rect *spl_rect, const struct rect *rect) in populate_splrect_from_rect() argument 22 spl_rect->x = rect->x; in populate_splrect_from_rect() 23 spl_rect->y = rect->y; in populate_splrect_from_rect() 24 spl_rect->width = rect->width; in populate_splrect_from_rect() 25 spl_rect->height = rect->height; in populate_splrect_from_rect() 27 static void populate_rect_from_splrect(struct rect *rect, const struct spl_rect *spl_rect) in populate_rect_from_splrect() argument 29 rect->x = spl_rect->x; in populate_rect_from_splrect() 30 rect->y = spl_rect->y; in populate_rect_from_splrect() 31 rect->width = spl_rect->width; in populate_rect_from_splrect() 32 rect->height = spl_rect->height; in populate_rect_from_splrect() [all …]
|
/linux/drivers/gpu/drm/virtio/ |
H A D | virtgpu_plane.c | 132 struct drm_rect *rect) in virtio_gpu_update_dumb_bo() argument 137 uint32_t w = rect->x2 - rect->x1; in virtio_gpu_update_dumb_bo() 138 uint32_t h = rect->y2 - rect->y1; in virtio_gpu_update_dumb_bo() 139 uint32_t x = rect->x1; in virtio_gpu_update_dumb_bo() 140 uint32_t y = rect->y1; in virtio_gpu_update_dumb_bo() 196 struct drm_rect rect; in virtio_gpu_primary_plane_update() local 215 if (!drm_atomic_helper_damage_merged(old_state, plane->state, &rect)) in virtio_gpu_primary_plane_update() 220 virtio_gpu_update_dumb_bo(vgdev, plane->state, &rect); in virtio_gpu_primary_plane_update() 257 rect.x1, in virtio_gpu_primary_plane_update() 258 rect.y1, in virtio_gpu_primary_plane_update() [all …]
|
/linux/drivers/video/fbdev/ |
H A D | wmt_ge_rops.c | 44 void wmt_ge_fillrect(struct fb_info *p, const struct fb_fillrect *rect) in wmt_ge_fillrect() argument 53 fg = ((u32 *) (p->pseudo_palette))[rect->color]; in wmt_ge_fillrect() 55 fg = rect->color; in wmt_ge_fillrect() 68 writel(rect->dx, regbase + GE_DESTAREAX_OFF); in wmt_ge_fillrect() 69 writel(rect->dy, regbase + GE_DESTAREAY_OFF); in wmt_ge_fillrect() 70 writel(rect->width - 1, regbase + GE_DESTAREAW_OFF); in wmt_ge_fillrect() 71 writel(rect->height - 1, regbase + GE_DESTAREAH_OFF); in wmt_ge_fillrect() 75 writel(rect->rop == ROP_XOR ? 0x5a : 0xf0, regbase + GE_ROPCODE_OFF); in wmt_ge_fillrect()
|
H A D | hitfb.c | 140 static void hitfb_fillrect(struct fb_info *p, const struct fb_fillrect *rect) in hitfb_fillrect() argument 142 if (rect->rop != ROP_COPY) in hitfb_fillrect() 143 cfb_fillrect(p, rect); in hitfb_fillrect() 150 hitfb_writew(((u32 *) (p->pseudo_palette))[rect->color], in hitfb_fillrect() 152 hitfb_accel_set_dest(1, rect->dx, rect->dy, rect->width, in hitfb_fillrect() 153 rect->height); in hitfb_fillrect() 156 hitfb_writew(rect->color, HD64461_GRSCR); in hitfb_fillrect() 157 hitfb_accel_set_dest(0, rect->dx, rect->dy, rect->width, in hitfb_fillrect() 158 rect->height); in hitfb_fillrect()
|
/linux/drivers/video/fbdev/matrox/ |
H A D | matroxfb_accel.c | 106 static void matroxfb_fillrect(struct fb_info* info, const struct fb_fillrect* rect); 108 static void matroxfb_cfb4_fillrect(struct fb_info* info, const struct fb_fillrect* rect); 327 static void matroxfb_fillrect(struct fb_info* info, const struct fb_fillrect* rect) { in matroxfb_fillrect() argument 330 switch (rect->rop) { in matroxfb_fillrect() 332 …_clear(minfo, ((u_int32_t *)info->pseudo_palette)[rect->color], rect->dy, rect->dx, rect->height, … in matroxfb_fillrect() 395 static void matroxfb_cfb4_fillrect(struct fb_info* info, const struct fb_fillrect* rect) { in matroxfb_cfb4_fillrect() argument 398 switch (rect->rop) { in matroxfb_cfb4_fillrect() 400 …_clear(minfo, ((u_int32_t *)info->pseudo_palette)[rect->color], rect->dy, rect->dx, rect->height, … in matroxfb_cfb4_fillrect()
|
/linux/drivers/gpu/drm/vmwgfx/ |
H A D | vmwgfx_blit.c | 264 struct drm_rect *rect = &diff->rect; in vmw_adjust_rect() local 266 rect->x1 = min_t(int, rect->x1, offs); in vmw_adjust_rect() 267 rect->x2 = max_t(int, rect->x2, offs + 1); in vmw_adjust_rect() 268 rect->y1 = min_t(int, rect->y1, diff->line); in vmw_adjust_rect() 269 rect->y2 = max_t(int, rect->y2, diff->line + 1); in vmw_adjust_rect() 504 diff->rect.x1 = x_in_bytes / diff->cpp; in vmw_external_bo_copy() 505 diff->rect.y1 = ((dst_offset - x_in_bytes) / dst_stride); in vmw_external_bo_copy() 506 diff->rect.x2 = diff->rect.x1 + width_in_bytes / diff->cpp; in vmw_external_bo_copy() 507 diff->rect.y2 = diff->rect.y1 + height; in vmw_external_bo_copy()
|
/linux/include/drm/ |
H A D | drm_damage_helper.h | 46 #define drm_atomic_for_each_plane_damage(iter, rect) \ argument 47 while (drm_atomic_helper_damage_iter_next(iter, rect)) 79 struct drm_rect *rect); 82 struct drm_rect *rect);
|