ia64/xen-unstable

changeset 640:1e118e51c91f

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.
author iap10@labyrinth.cl.cam.ac.uk
date Wed Jul 16 12:45:05 2003 +0000 (2003-07-16)
parents 178a4dbaac17
children f635998b684b b344838eb409 acb99181f4d3
files xenolinux-2.4.21-sparse/arch/xeno/kernel/ioport.c xenolinux-2.4.21-sparse/include/asm-xeno/fixmap.h xenolinux-2.4.21-sparse/include/asm-xeno/vga.h
line diff
     1.1 --- a/xenolinux-2.4.21-sparse/arch/xeno/kernel/ioport.c	Tue Jul 15 12:57:59 2003 +0000
     1.2 +++ b/xenolinux-2.4.21-sparse/arch/xeno/kernel/ioport.c	Wed Jul 16 12:45:05 2003 +0000
     1.3 @@ -40,9 +40,14 @@ asmlinkage int sys_iopl(unsigned int new
     1.4  
     1.5  asmlinkage int sys_ioperm(unsigned long from, unsigned long num, int turn_on)
     1.6  {
     1.7 -    unsigned int new_io_pl = turn_on ? 3 : 0;
     1.8 -    printk("ioperm not fully supported - set iopl to %d\n", new_io_pl);
     1.9 -    return sys_iopl(new_io_pl);
    1.10 +    if ( turn_on )
    1.11 +        {
    1.12 +        printk("ioperm not fully supported - set iopl to 3\n");
    1.13 +        return sys_iopl(3);
    1.14 +	}
    1.15 +    else
    1.16 +	 printk("ioperm not fully supported - ignore resource release\n");
    1.17 +    return 0;
    1.18  }
    1.19  
    1.20  
     2.1 --- a/xenolinux-2.4.21-sparse/include/asm-xeno/fixmap.h	Tue Jul 15 12:57:59 2003 +0000
     2.2 +++ b/xenolinux-2.4.21-sparse/include/asm-xeno/fixmap.h	Wed Jul 16 12:45:05 2003 +0000
     2.3 @@ -47,10 +47,16 @@ enum fixed_addresses {
     2.4  	FIX_NETRING1_BASE,
     2.5  	FIX_NETRING2_BASE,
     2.6  	FIX_NETRING3_BASE,
     2.7 -#define NR_FIX_BTMAPS   8  /* 32KB For the Dom0 VGA Console */
     2.8 +
     2.9 +#ifdef CONFIG_VGA_CONSOLE
    2.10 +#define NR_FIX_BTMAPS   32  /* 128KB For the Dom0 VGA Console A0000-C0000 */
    2.11 +#else
    2.12 +#define NR_FIX_BTMAPS   1   /* have on page incase anyone wants it in future */
    2.13 +#endif
    2.14          FIX_BTMAP_END,
    2.15          FIX_BTMAP_BEGIN = FIX_BTMAP_END + NR_FIX_BTMAPS - 1,
    2.16  	/* our bt_ioremap is permenant unlike other architectures */
    2.17 +
    2.18  	__end_of_permanent_fixed_addresses,
    2.19  	__end_of_fixed_addresses = __end_of_permanent_fixed_addresses
    2.20  };
     3.1 --- a/xenolinux-2.4.21-sparse/include/asm-xeno/vga.h	Tue Jul 15 12:57:59 2003 +0000
     3.2 +++ b/xenolinux-2.4.21-sparse/include/asm-xeno/vga.h	Wed Jul 16 12:45:05 2003 +0000
     3.3 @@ -24,15 +24,14 @@ static unsigned long VGA_MAP_MEM(unsigne
     3.4          if( x != 0xb8000 )
     3.5              panic("Argghh! VGA Console is weird. 1:%08lx\n",x);
     3.6  
     3.7 -        vgacon_mmap = (unsigned char*) bt_ioremap( 0xb8000, 32*1024 );
     3.8 -        return (unsigned long) vgacon_mmap;
     3.9 +        vgacon_mmap = (unsigned char*) bt_ioremap( 0xa0000, 128*1024 );
    3.10 +        return (unsigned long) (vgacon_mmap+x-0xa0000);
    3.11      }
    3.12      else
    3.13      {
    3.14 -        if( x != 0xc0000 )
    3.15 +        if( x != 0xc0000 && x != 0xa0000 ) /* vidmem_end or charmap fonts */
    3.16              panic("Argghh! VGA Console is weird. 2:%08lx\n",x);  
    3.17 -
    3.18 -        return (unsigned long) vgacon_mmap + 0x8000;
    3.19 +	return (unsigned long) (vgacon_mmap+x-0xa0000);
    3.20      }
    3.21      return 0;
    3.22  }