diff options
author | Antonino A. Daplas <adaplas@gmail.com> | 2005-09-10 00:10:04 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-10 01:03:41 +0400 |
commit | 829e79b680210c4f4de435af6e1f90451922fc7d (patch) | |
tree | cb8d46347a64f4c5673fb7e5dee55a8078ff8e80 /include | |
parent | ba44cd2d8abc3271a608b42cdbf55e1e575e2ba5 (diff) | |
download | linux-829e79b680210c4f4de435af6e1f90451922fc7d.tar.xz |
[PATCH] fbcon: Break up bit_putcs into its component functions
The function bit_putcs() in drivers/video/console/bitblit.c is becoming large.
Break it up into its component functions (bit_putcs_unaligned and
bit_putcs_aligned).
Incorporated fb_pad_aligned_buffer() optimization by Roman Zippel.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/fb.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/linux/fb.h b/include/linux/fb.h index 9a4f035e9fdc..82e39cd0c4fb 100644 --- a/include/linux/fb.h +++ b/include/linux/fb.h @@ -833,6 +833,21 @@ extern int fb_new_modelist(struct fb_info *info); extern struct fb_info *registered_fb[FB_MAX]; extern int num_registered_fb; +static inline void __fb_pad_aligned_buffer(u8 *dst, u32 d_pitch, + u8 *src, u32 s_pitch, u32 height) +{ + int i, j; + + d_pitch -= s_pitch; + + for (i = height; i--; ) { + /* s_pitch is a few bytes at the most, memcpy is suboptimal */ + for (j = 0; j < s_pitch; j++) + *dst++ = *src++; + dst += d_pitch; + } +} + /* drivers/video/fbsysfs.c */ extern struct fb_info *framebuffer_alloc(size_t size, struct device *dev); extern void framebuffer_release(struct fb_info *info); |