ia64/xen-unstable

changeset 15739:b55fe44438bc

x86: Always define both PAE and non-PAE address constants

Solaris decides to run as PAE or not at runtime. Thus, make the
address constants for both cases always available in the public
headers.

Signed-off-by: John Levon <john.levon@sun.com>
author kfraser@localhost.localdomain
date Thu Aug 09 10:14:38 2007 +0100 (2007-08-09)
parents 918e04a982b8
children db21f714d37f
files xen/include/public/arch-x86/xen-x86_32.h
line diff
     1.1 --- a/xen/include/public/arch-x86/xen-x86_32.h	Thu Aug 09 10:03:59 2007 +0100
     1.2 +++ b/xen/include/public/arch-x86/xen-x86_32.h	Thu Aug 09 10:14:38 2007 +0100
     1.3 @@ -64,18 +64,34 @@
     1.4  #define FLAT_USER_DS    FLAT_RING3_DS
     1.5  #define FLAT_USER_SS    FLAT_RING3_SS
     1.6  
     1.7 -/*
     1.8 - * Virtual addresses beyond this are not modifiable by guest OSes. The 
     1.9 - * machine->physical mapping table starts at this address, read-only.
    1.10 - */
    1.11 +#define __HYPERVISOR_VIRT_START_PAE    0xF5800000
    1.12 +#define __MACH2PHYS_VIRT_START_PAE     0xF5800000
    1.13 +#define __MACH2PHYS_VIRT_END_PAE       0xF6800000
    1.14 +#define HYPERVISOR_VIRT_START_PAE      \
    1.15 +    mk_unsigned_long(__HYPERVISOR_VIRT_START_PAE)
    1.16 +#define MACH2PHYS_VIRT_START_PAE       \
    1.17 +    mk_unsigned_long(__MACH2PHYS_VIRT_START_PAE)
    1.18 +#define MACH2PHYS_VIRT_END_PAE         \
    1.19 +    mk_unsigned_long(__MACH2PHYS_VIRT_END_PAE)
    1.20 +
    1.21 +#define __HYPERVISOR_VIRT_START_NONPAE 0xFC000000
    1.22 +#define __MACH2PHYS_VIRT_START_NONPAE  0xFC000000
    1.23 +#define __MACH2PHYS_VIRT_END_NONPAE    0xFC400000
    1.24 +#define HYPERVISOR_VIRT_START_NONPAE   \
    1.25 +    mk_unsigned_long(__HYPERVISOR_VIRT_START_NONPAE)
    1.26 +#define MACH2PHYS_VIRT_START_NONPAE    \
    1.27 +    mk_unsigned_long(__MACH2PHYS_VIRT_START_NONPAE)
    1.28 +#define MACH2PHYS_VIRT_END_NONPAE      \
    1.29 +    mk_unsigned_long(__MACH2PHYS_VIRT_END_NONPAE)
    1.30 +
    1.31  #ifdef CONFIG_X86_PAE
    1.32 -#define __HYPERVISOR_VIRT_START 0xF5800000
    1.33 -#define __MACH2PHYS_VIRT_START  0xF5800000
    1.34 -#define __MACH2PHYS_VIRT_END    0xF6800000
    1.35 +#define __HYPERVISOR_VIRT_START __HYPERVISOR_VIRT_START_PAE
    1.36 +#define __MACH2PHYS_VIRT_START  __MACH2PHYS_VIRT_START_PAE
    1.37 +#define __MACH2PHYS_VIRT_END    __MACH2PHYS_VIRT_END_PAE
    1.38  #else
    1.39 -#define __HYPERVISOR_VIRT_START 0xFC000000
    1.40 -#define __MACH2PHYS_VIRT_START  0xFC000000
    1.41 -#define __MACH2PHYS_VIRT_END    0xFC400000
    1.42 +#define __HYPERVISOR_VIRT_START __HYPERVISOR_VIRT_START_NONPAE
    1.43 +#define __MACH2PHYS_VIRT_START  __MACH2PHYS_VIRT_START_NONPAE
    1.44 +#define __MACH2PHYS_VIRT_END    __MACH2PHYS_VIRT_END_NONPAE
    1.45  #endif
    1.46  
    1.47  #ifndef HYPERVISOR_VIRT_START