summaryrefslogtreecommitdiffstats
path: root/include/video
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1999-02-15 02:15:32 +0000
committerRalf Baechle <ralf@linux-mips.org>1999-02-15 02:15:32 +0000
commit86464aed71025541805e7b1515541aee89879e33 (patch)
treee01a457a4912a8553bc65524aa3125d51f29f810 /include/video
parent88f99939ecc6a95a79614574cb7d95ffccfc3466 (diff)
Merge with Linux 2.2.1.
Diffstat (limited to 'include/video')
-rw-r--r--include/video/fbcon.h23
-rw-r--r--include/video/font.h15
2 files changed, 17 insertions, 21 deletions
diff --git a/include/video/fbcon.h b/include/video/fbcon.h
index 4145f56e3..4fe4eb7eb 100644
--- a/include/video/fbcon.h
+++ b/include/video/fbcon.h
@@ -100,6 +100,7 @@ extern struct display_switch fbcon_dummy;
#define __SCROLL_YFIXED 0x010
#define __SCROLL_YNOMOVE 0x020
#define __SCROLL_YPANREDRAW 0x040
+#define __SCROLL_YNOPARTIAL 0x080
/* Only these should be used by the drivers */
/* Which one should you use? If you have a fast card and slow bus,
@@ -117,6 +118,15 @@ extern struct display_switch fbcon_dummy;
#define SCROLL_YREDRAW (__SCROLL_YFIXED|__SCROLL_YREDRAW)
#define SCROLL_YNOMOVE (__SCROLL_YNOMOVE|__SCROLL_YPANREDRAW)
+/* SCROLL_YNOPARTIAL, used in combination with the above, is for video
+ cards which can not handle using panning to scroll a portion of the
+ screen without excessive flicker. Panning will only be used for
+ whole screens.
+ */
+/* Namespace consistency */
+#define SCROLL_YNOPARTIAL __SCROLL_YNOPARTIAL
+
+
extern void fbcon_redraw_bmove(struct display *, int, int, int, int, int, int);
@@ -431,6 +441,7 @@ static __inline__ void *mymemset(void *s, size_t count)
static __inline__ void fast_memmove(void *d, const void *s, size_t count)
{
+ int d0, d1, d2, d3;
if (d < s) {
__asm__ __volatile__ (
"cld\n\t"
@@ -442,9 +453,9 @@ __asm__ __volatile__ (
"movsw\n"
"2:\trep\n\t"
"movsl"
- : /* no output */
- :"c"(count),"D"((long)d),"S"((long)s)
- :"cx","di","si","memory");
+ : "=&c" (d0), "=&D" (d1), "=&S" (d2)
+ :"0"(count),"1"((long)d),"2"((long)s)
+ :"memory");
} else {
__asm__ __volatile__ (
"std\n\t"
@@ -465,9 +476,9 @@ __asm__ __volatile__ (
"2:\trep\n\t"
"movsl\n\t"
"cld"
- : /* no output */
- :"c"(count),"D"(count-4+(long)d),"S"(count-4+(long)s)
- :"ax","cx","di","si","memory");
+ : "=&c" (d0), "=&D" (d1), "=&S" (d2), "=&a" (d3)
+ :"0"(count),"1"(count-4+(long)d),"2"(count-4+(long)s)
+ :"memory");
}
}
diff --git a/include/video/font.h b/include/video/font.h
index bdb7fc4bf..01d3c87d4 100644
--- a/include/video/font.h
+++ b/include/video/font.h
@@ -11,19 +11,6 @@
#ifndef _VIDEO_FONT_H
#define _VIDEO_FONT_H
-#ifdef __ASSEMBLY__
-
-#ifdef __mc68000__
-#define FBCON_FONT_DESC_idx 0
-#define FBCON_FONT_DESC_name (FBCON_FONT_DESC_idx +4)
-#define FBCON_FONT_DESC_width (FBCON_FONT_DESC_name +4)
-#define FBCON_FONT_DESC_height (FBCON_FONT_DESC_width +4)
-#define FBCON_FONT_DESC_data (FBCON_FONT_DESC_height+4)
-#define FBCON_FONT_DESC_pref (FBCON_FONT_DESC_data +4)
-#endif
-
-#else /* __ASSEMBLY__ */
-
#include <linux/types.h>
struct fbcon_font_desc {
@@ -61,6 +48,4 @@ extern struct fbcon_font_desc *fbcon_get_default_font(int xres, int yres);
/* Max. length for the name of a predefined font */
#define MAX_FONT_NAME 32
-#endif /* __ASSEMBLY__ */
-
#endif /* _VIDEO_FONT_H */