diff options
Diffstat (limited to 'drivers/video/console/bitblit.c')
-rw-r--r-- | drivers/video/console/bitblit.c | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/drivers/video/console/bitblit.c b/drivers/video/console/bitblit.c index b28a4b0e395e..3c731577fed6 100644 --- a/drivers/video/console/bitblit.c +++ b/drivers/video/console/bitblit.c | |||
@@ -107,13 +107,6 @@ static void bit_putcs(struct vc_data *vc, struct fb_info *info, | |||
107 | const unsigned short *s, int count, int yy, int xx, | 107 | const unsigned short *s, int count, int yy, int xx, |
108 | int fg, int bg) | 108 | int fg, int bg) |
109 | { | 109 | { |
110 | void (*move_unaligned)(struct fb_info *info, struct fb_pixmap *buf, | ||
111 | u8 *dst, u32 d_pitch, u8 *src, u32 idx, | ||
112 | u32 height, u32 shift_high, u32 shift_low, | ||
113 | u32 mod); | ||
114 | void (*move_aligned)(struct fb_info *info, struct fb_pixmap *buf, | ||
115 | u8 *dst, u32 d_pitch, u8 *src, u32 s_pitch, | ||
116 | u32 height); | ||
117 | unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff; | 110 | unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff; |
118 | unsigned int width = (vc->vc_font.width + 7) >> 3; | 111 | unsigned int width = (vc->vc_font.width + 7) >> 3; |
119 | unsigned int cellsize = vc->vc_font.height * width; | 112 | unsigned int cellsize = vc->vc_font.height * width; |
@@ -141,13 +134,6 @@ static void bit_putcs(struct vc_data *vc, struct fb_info *info, | |||
141 | image.height = vc->vc_font.height; | 134 | image.height = vc->vc_font.height; |
142 | image.depth = 1; | 135 | image.depth = 1; |
143 | 136 | ||
144 | if (info->pixmap.outbuf && info->pixmap.inbuf) { | ||
145 | move_aligned = fb_iomove_buf_aligned; | ||
146 | move_unaligned = fb_iomove_buf_unaligned; | ||
147 | } else { | ||
148 | move_aligned = fb_sysmove_buf_aligned; | ||
149 | move_unaligned = fb_sysmove_buf_unaligned; | ||
150 | } | ||
151 | while (count) { | 137 | while (count) { |
152 | if (count > maxcnt) | 138 | if (count > maxcnt) |
153 | cnt = k = maxcnt; | 139 | cnt = k = maxcnt; |
@@ -171,9 +157,9 @@ static void bit_putcs(struct vc_data *vc, struct fb_info *info, | |||
171 | src = buf; | 157 | src = buf; |
172 | } | 158 | } |
173 | 159 | ||
174 | move_unaligned(info, &info->pixmap, dst, pitch, | 160 | fb_pad_unaligned_buffer(dst, pitch, src, idx, |
175 | src, idx, image.height, | 161 | image.height, shift_high, |
176 | shift_high, shift_low, mod); | 162 | shift_low, mod); |
177 | shift_low += mod; | 163 | shift_low += mod; |
178 | dst += (shift_low >= 8) ? width : width - 1; | 164 | dst += (shift_low >= 8) ? width : width - 1; |
179 | shift_low &= 7; | 165 | shift_low &= 7; |
@@ -189,8 +175,7 @@ static void bit_putcs(struct vc_data *vc, struct fb_info *info, | |||
189 | src = buf; | 175 | src = buf; |
190 | } | 176 | } |
191 | 177 | ||
192 | move_aligned(info, &info->pixmap, dst, pitch, | 178 | fb_pad_aligned_buffer(dst, pitch, src, idx, image.height); |
193 | src, idx, image.height); | ||
194 | dst += width; | 179 | dst += width; |
195 | } | 180 | } |
196 | } | 181 | } |