Merge branch 'for-5.14-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj...
[linux-2.6-microblaze.git] / include / drm / drm_format_helper.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Copyright (C) 2016 Noralf Trønnes
4  */
5
6 #ifndef __LINUX_DRM_FORMAT_HELPER_H
7 #define __LINUX_DRM_FORMAT_HELPER_H
8
9 struct drm_framebuffer;
10 struct drm_rect;
11
12 void drm_fb_memcpy(void *dst, void *vaddr, struct drm_framebuffer *fb,
13                    struct drm_rect *clip);
14 void drm_fb_memcpy_dstclip(void __iomem *dst, unsigned int dst_pitch, void *vaddr,
15                            struct drm_framebuffer *fb,
16                            struct drm_rect *clip);
17 void drm_fb_swab(void *dst, void *src, struct drm_framebuffer *fb,
18                  struct drm_rect *clip, bool cached);
19 void drm_fb_xrgb8888_to_rgb565(void *dst, void *vaddr,
20                                struct drm_framebuffer *fb,
21                                struct drm_rect *clip, bool swab);
22 void drm_fb_xrgb8888_to_rgb565_dstclip(void __iomem *dst, unsigned int dst_pitch,
23                                        void *vaddr, struct drm_framebuffer *fb,
24                                        struct drm_rect *clip, bool swab);
25 void drm_fb_xrgb8888_to_rgb888_dstclip(void __iomem *dst, unsigned int dst_pitch,
26                                        void *vaddr, struct drm_framebuffer *fb,
27                                        struct drm_rect *clip);
28 void drm_fb_xrgb8888_to_gray8(u8 *dst, void *vaddr, struct drm_framebuffer *fb,
29                               struct drm_rect *clip);
30
31 int drm_fb_blit_rect_dstclip(void __iomem *dst, unsigned int dst_pitch,
32                              uint32_t dst_format, void *vmap,
33                              struct drm_framebuffer *fb,
34                              struct drm_rect *rect);
35 int drm_fb_blit_dstclip(void __iomem *dst, unsigned int dst_pitch,
36                         uint32_t dst_format, void *vmap,
37                         struct drm_framebuffer *fb);
38
39 #endif /* __LINUX_DRM_FORMAT_HELPER_H */