[NTOSKRNL/FREELDR/NDK]
[reactos.git] / reactos / boot / freeldr / freeldr / include / arch / arm / hardware.h
index 1ac2774..67d1f9a 100644 (file)
@@ -38,3 +38,30 @@ FORCEINLINE VOID Reboot(VOID)
 {
     DbgBreakPoint();
 }
+
+typedef struct _PAGE_TABLE_ARM
+{
+    HARDWARE_PTE_ARMV6 Pte[1024];
+} PAGE_TABLE_ARM, *PPAGE_TABLE_ARM;
+C_ASSERT(sizeof(PAGE_TABLE_ARM) == PAGE_SIZE);
+
+typedef struct _PAGE_DIRECTORY_ARM
+{
+    union
+    {
+        HARDWARE_PDE_ARMV6 Pde[4096];
+        HARDWARE_LARGE_PTE_ARMV6 Pte[4096];
+    };
+} PAGE_DIRECTORY_ARM, *PPAGE_DIRECTORY_ARM;
+C_ASSERT(sizeof(PAGE_DIRECTORY_ARM) == (4 * PAGE_SIZE));
+
+// FIXME: sync with NDK
+typedef enum _ARM_DOMAIN
+{
+    FaultDomain,
+    ClientDomain,
+    InvalidDomain,
+    ManagerDomain
+} ARM_DOMAIN;
+
+#define PDE_SHIFT 20