aboutsummaryrefslogtreecommitdiffstats
path: root/xenolinux-2.4.25-sparse/include/asm-xeno/vga.h
diff options
context:
space:
mode:
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2004-02-20 11:15:03 +0000
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2004-02-20 11:15:03 +0000
commit92207c117ac7c3b4f3304fb6855575844da73980 (patch)
tree3e9d4af5dbfb9619d7288c0f84d22643a5cd1b71 /xenolinux-2.4.25-sparse/include/asm-xeno/vga.h
parentb39cfce3243dfbfa5d877425adad77a108fb1094 (diff)
downloadxen-92207c117ac7c3b4f3304fb6855575844da73980.tar.gz
xen-92207c117ac7c3b4f3304fb6855575844da73980.tar.bz2
xen-92207c117ac7c3b4f3304fb6855575844da73980.zip
bitkeeper revision 1.735 (4035ec37QrObBVUp0-0jtnp646Qg3g)
xenolinux-sparse: new file Many files: Port to linux-2.4.25 .del-xenolinux-sparse~6c1e6e8b9138ffe9: Delete: xenolinux-sparse Many files: mvdir
Diffstat (limited to 'xenolinux-2.4.25-sparse/include/asm-xeno/vga.h')
-rw-r--r--xenolinux-2.4.25-sparse/include/asm-xeno/vga.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/xenolinux-2.4.25-sparse/include/asm-xeno/vga.h b/xenolinux-2.4.25-sparse/include/asm-xeno/vga.h
new file mode 100644
index 0000000000..d0624cf480
--- /dev/null
+++ b/xenolinux-2.4.25-sparse/include/asm-xeno/vga.h
@@ -0,0 +1,42 @@
+/*
+ * Access to VGA videoram
+ *
+ * (c) 1998 Martin Mares <mj@ucw.cz>
+ */
+
+#ifndef _LINUX_ASM_VGA_H_
+#define _LINUX_ASM_VGA_H_
+
+#include <asm/io.h>
+
+extern unsigned char *vgacon_mmap;
+
+static unsigned long VGA_MAP_MEM(unsigned long x)
+{
+ if( vgacon_mmap == NULL )
+ {
+ /* This is our first time in this function. This whole thing
+ is a rather grim hack. We know we're going to get asked
+ to map a 32KB region between 0xb0000 and 0xb8000 because
+ that's what VGAs are. We used the boot time permanent
+ fixed map region, and map it to machine pages.
+ */
+ if( x != 0xb8000 )
+ panic("Argghh! VGA Console is weird. 1:%08lx\n",x);
+
+ vgacon_mmap = (unsigned char*) bt_ioremap( 0xa0000, 128*1024 );
+ return (unsigned long) (vgacon_mmap+x-0xa0000);
+ }
+ else
+ {
+ if( x != 0xc0000 && x != 0xa0000 ) /* vidmem_end or charmap fonts */
+ panic("Argghh! VGA Console is weird. 2:%08lx\n",x);
+ return (unsigned long) (vgacon_mmap+x-0xa0000);
+ }
+ return 0;
+}
+
+static inline unsigned char vga_readb(unsigned char * x) { return (*(x)); }
+static inline void vga_writeb(unsigned char x, unsigned char *y) { *(y) = (x); }
+
+#endif