mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
bitkeeper revision 1.358 (3f1548d1q_6caSqIuMtbsS3JI4fPHA)
Allow 'setfont' on dom0 VGA text console to keep RH8 happy. XFree86 now works fine in dom0, at least on ATI Mach64 cards, and probably others too.
This commit is contained in:
1 parent
a5de3f68a1
commit
fa3e395ae6
3 files changed
+19
-9
No files matched your search
@@ -40,9 +40,14 @@ asmlinkage int sys_iopl(unsigned int new_io_pl)
|
||||
|
||||
asmlinkage int sys_ioperm(unsigned long from, unsigned long num, int turn_on)
|
||||
{
|
||||
unsigned int new_io_pl = turn_on ? 3 : 0;
|
||||
printk("ioperm not fully supported - set iopl to %d\n", new_io_pl);
|
||||
return sys_iopl(new_io_pl);
|
||||
if ( turn_on )
|
||||
{
|
||||
printk("ioperm not fully supported - set iopl to 3\n");
|
||||
return sys_iopl(3);
|
||||
}
|
||||
else
|
||||
printk("ioperm not fully supported - ignore resource release\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -47,10 +47,16 @@ enum fixed_addresses {
|
||||
FIX_NETRING1_BASE,
|
||||
FIX_NETRING2_BASE,
|
||||
FIX_NETRING3_BASE,
|
||||
#define NR_FIX_BTMAPS 8 /* 32KB For the Dom0 VGA Console */
|
||||
|
||||
#ifdef CONFIG_VGA_CONSOLE
|
||||
#define NR_FIX_BTMAPS 32 /* 128KB For the Dom0 VGA Console A0000-C0000 */
|
||||
#else
|
||||
#define NR_FIX_BTMAPS 1 /* have on page incase anyone wants it in future */
|
||||
#endif
|
||||
FIX_BTMAP_END,
|
||||
FIX_BTMAP_BEGIN = FIX_BTMAP_END + NR_FIX_BTMAPS - 1,
|
||||
/* our bt_ioremap is permenant unlike other architectures */
|
||||
|
||||
__end_of_permanent_fixed_addresses,
|
||||
__end_of_fixed_addresses = __end_of_permanent_fixed_addresses
|
||||
};
|
||||
|
||||
@@ -24,15 +24,14 @@ static unsigned long VGA_MAP_MEM(unsigned long x)
|
||||
if( x != 0xb8000 )
|
||||
panic("Argghh! VGA Console is weird. 1:%08lx\n",x);
|
||||
|
||||
vgacon_mmap = (unsigned char*) bt_ioremap( 0xb8000, 32*1024 );
|
||||
return (unsigned long) vgacon_mmap;
|
||||
vgacon_mmap = (unsigned char*) bt_ioremap( 0xa0000, 128*1024 );
|
||||
return (unsigned long) (vgacon_mmap+x-0xa0000);
|
||||
}
|
||||
else
|
||||
{
|
||||
if( x != 0xc0000 )
|
||||
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 + 0x8000;
|
||||
return (unsigned long) (vgacon_mmap+x-0xa0000);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||