Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2025 Zsolt Kajtar (soci@c64.rulez.org)
4 */
5#include <linux/module.h>
6#include <linux/fb.h>
7#include <linux/bitrev.h>
8#include <asm/types.h>
9
10#ifdef CONFIG_FB_CFB_REV_PIXELS_IN_BYTE
11#define FB_REV_PIXELS_IN_BYTE
12#endif
13
14#include "cfbmem.h"
15#include "fb_copyarea.h"
16
17void cfb_copyarea(struct fb_info *p, const struct fb_copyarea *area)
18{
19 if (p->state != FBINFO_STATE_RUNNING)
20 return;
21
22 if (p->flags & FBINFO_VIRTFB)
23 fb_warn_once(p, "%s: framebuffer is not in I/O address space.\n", __func__);
24
25 if (p->fbops->fb_sync)
26 p->fbops->fb_sync(p);
27
28 fb_copyarea(p, area);
29}
30EXPORT_SYMBOL(cfb_copyarea);
31
32MODULE_AUTHOR("Zsolt Kajtar <soci@c64.rulez.org>");
33MODULE_DESCRIPTION("I/O memory packed pixel framebuffer area copy");
34MODULE_LICENSE("GPL");