xref: /kvm-unit-tests/lib/x86/asm/memory_areas.h (revision c865f654ffe4c5955038aaf74f702ba62f3eb014)
1*c865f654SCornelia Huck #ifndef _ASMX86_MEMORY_AREAS_H_
2*c865f654SCornelia Huck #define _ASMX86_MEMORY_AREAS_H_
3d7470824SClaudio Imbrenda 
4d7470824SClaudio Imbrenda #define AREA_NORMAL_PFN BIT(36-12)
5d7470824SClaudio Imbrenda #define AREA_NORMAL_NUMBER 0
6322cdd64SClaudio Imbrenda #define AREA_NORMAL (1 << AREA_NORMAL_NUMBER)
7d7470824SClaudio Imbrenda 
8322cdd64SClaudio Imbrenda #define AREA_HIGH_PFN BIT(32-12)
9322cdd64SClaudio Imbrenda #define AREA_HIGH_NUMBER 1
10322cdd64SClaudio Imbrenda #define AREA_HIGH (1 << AREA_HIGH_NUMBER)
11d7470824SClaudio Imbrenda 
12322cdd64SClaudio Imbrenda #define AREA_LOW_PFN BIT(24-12)
13d7470824SClaudio Imbrenda #define AREA_LOW_NUMBER 2
14322cdd64SClaudio Imbrenda #define AREA_LOW (1 << AREA_LOW_NUMBER)
15d7470824SClaudio Imbrenda 
16322cdd64SClaudio Imbrenda #define AREA_LOWEST_PFN 0
17322cdd64SClaudio Imbrenda #define AREA_LOWEST_NUMBER 3
18322cdd64SClaudio Imbrenda #define AREA_LOWEST (1 << AREA_LOWEST_NUMBER)
19d7470824SClaudio Imbrenda 
20322cdd64SClaudio Imbrenda #define MAX_AREAS 4
21322cdd64SClaudio Imbrenda 
22322cdd64SClaudio Imbrenda #define AREA_DMA24 AREA_LOWEST
23322cdd64SClaudio Imbrenda #define AREA_DMA32 (AREA_LOWEST | AREA_LOW)
24322cdd64SClaudio Imbrenda #define AREA_PAE36 (AREA_LOWEST | AREA_LOW | AREA_HIGH)
25d7470824SClaudio Imbrenda 
26d7470824SClaudio Imbrenda #endif
27