mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
5c5373b51b
Not all archs have the __io_virt() macro, so cirrus can't simply convert pointers that way. The drm format helpers have to use memcpy_toio() instead. This patch makes drm_fb_xrgb8888_to_rgb888_dstclip() accept a __iomem dst pointer and use memcpy_toio() instead of memcpy(). The helper function (drm_fb_xrgb8888_to_rgb888_line) has been changed to process a single scanline. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Noralf Trønnes <noralf@tronnes.org> Link: http://patchwork.freedesktop.org/patch/msgid/20190410063815.17062-4-kraxel@redhat.com
36 lines
1.3 KiB
C
36 lines
1.3 KiB
C
/*
|
|
* Copyright (C) 2016 Noralf Trønnes
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*/
|
|
|
|
#ifndef __LINUX_DRM_FORMAT_HELPER_H
|
|
#define __LINUX_DRM_FORMAT_HELPER_H
|
|
|
|
struct drm_framebuffer;
|
|
struct drm_rect;
|
|
|
|
void drm_fb_memcpy(void *dst, void *vaddr, struct drm_framebuffer *fb,
|
|
struct drm_rect *clip);
|
|
void drm_fb_memcpy_dstclip(void __iomem *dst, void *vaddr,
|
|
struct drm_framebuffer *fb,
|
|
struct drm_rect *clip);
|
|
void drm_fb_swab16(u16 *dst, void *vaddr, struct drm_framebuffer *fb,
|
|
struct drm_rect *clip);
|
|
void drm_fb_xrgb8888_to_rgb565(void *dst, void *vaddr,
|
|
struct drm_framebuffer *fb,
|
|
struct drm_rect *clip, bool swab);
|
|
void drm_fb_xrgb8888_to_rgb565_dstclip(void __iomem *dst, unsigned int dst_pitch,
|
|
void *vaddr, struct drm_framebuffer *fb,
|
|
struct drm_rect *clip, bool swab);
|
|
void drm_fb_xrgb8888_to_rgb888_dstclip(void __iomem *dst, unsigned int dst_pitch,
|
|
void *vaddr, struct drm_framebuffer *fb,
|
|
struct drm_rect *clip);
|
|
void drm_fb_xrgb8888_to_gray8(u8 *dst, void *vaddr, struct drm_framebuffer *fb,
|
|
struct drm_rect *clip);
|
|
|
|
#endif /* __LINUX_DRM_FORMAT_HELPER_H */
|