Lines Matching full:diff

72  * Instantiate find diff functions for relevant unsigned integer sizes,
241 * @diff: The struct vmw_diff_cpy closure argument (unused).
246 void vmw_memcpy(struct vmw_diff_cpy *diff, u8 *dest, const u8 *src, size_t n) in vmw_memcpy() argument
255 * @diff: The struct vmw_diff_cpy used to track the modified bounding box.
256 * @diff_offs: The offset from @diff->line_offset where the difference was
259 static void vmw_adjust_rect(struct vmw_diff_cpy *diff, size_t diff_offs) in vmw_adjust_rect() argument
261 size_t offs = (diff_offs + diff->line_offset) / diff->cpp; in vmw_adjust_rect()
262 struct drm_rect *rect = &diff->rect; in vmw_adjust_rect()
266 rect->y1 = min_t(int, rect->y1, diff->line); in vmw_adjust_rect()
267 rect->y2 = max_t(int, rect->y2, diff->line + 1); in vmw_adjust_rect()
273 * @diff: The struct vmw_diff_cpy used to track the modified bounding box.
278 * In order to correctly track the modified content, the field @diff->line must
279 * be pre-loaded with the current line number, the field @diff->line_offset must
281 * finally the field @diff->cpp need to be preloaded with the number of bytes
288 void vmw_diff_memcpy(struct vmw_diff_cpy *diff, u8 *dest, const u8 *src, in vmw_diff_memcpy() argument
293 if (WARN_ON_ONCE(round_down(n, diff->cpp) != n)) in vmw_diff_memcpy()
297 csize = vmw_find_first_diff(dest, src, n, diff->cpp); in vmw_diff_memcpy()
299 vmw_adjust_rect(diff, csize); in vmw_diff_memcpy()
300 byte_len = diff->cpp; in vmw_diff_memcpy()
306 diff->line_offset += csize; in vmw_diff_memcpy()
310 csize = vmw_find_last_diff(dest, src, n, diff->cpp); in vmw_diff_memcpy()
313 vmw_adjust_rect(diff, csize); in vmw_diff_memcpy()
317 diff->line_offset += n; in vmw_diff_memcpy()
333 * @diff: Struct vmw_diff_cpy, in the end forwarded to the memcpy routine.
346 struct vmw_diff_cpy *diff; member
362 struct vmw_diff_cpy *diff = d->diff; in vmw_bo_cpu_blit_line() local
412 diff->do_cpy(diff, d->dst_addr + dst_page_offset, in vmw_bo_cpu_blit_line()
434 * @diff: The struct vmw_diff_cpy used to track the modified bounding box.
452 struct vmw_diff_cpy *diff) in vmw_bo_cpu_blit() argument
490 d.diff = diff; in vmw_bo_cpu_blit()
493 diff->line = j + initial_line; in vmw_bo_cpu_blit()
494 diff->line_offset = dst_offset % dst_stride; in vmw_bo_cpu_blit()