ReactOS
0.4.16-dev-336-gb667d82
hardware.h
Go to the documentation of this file.
1
/*
2
* PROJECT: ReactOS Boot Loader
3
* LICENSE: BSD - See COPYING.ARM in the top level directory
4
* FILE: boot/freeldr/freeldr/include/arch/arm/hardware.h
5
* PURPOSE: Header for ARC definitions (to be cleaned up)
6
* PROGRAMMERS: ReactOS Portable Systems Group
7
*/
8
9
#pragma once
10
11
#ifndef __REGISTRY_H
12
//#include "../../reactos/registry.h"
13
#endif
14
15
#include "../../../../../armllb/inc/osloader.h"
16
#include "../../../../../armllb/inc/machtype.h"
17
18
#define FREELDR_BASE 0x0001F000
19
#define FREELDR_PE_BASE 0x0001F000
20
#define MAX_FREELDR_PE_SIZE 0xFFFFFF
21
22
extern
PARM_BOARD_CONFIGURATION_BLOCK
ArmBoardBlock
;
23
extern
ULONG
FirstLevelDcacheSize
;
24
extern
ULONG
FirstLevelDcacheFillSize
;
25
extern
ULONG
FirstLevelIcacheSize
;
26
extern
ULONG
FirstLevelIcacheFillSize
;
27
extern
ULONG
SecondLevelDcacheSize
;
28
extern
ULONG
SecondLevelDcacheFillSize
;
29
extern
ULONG
SecondLevelIcacheSize
;
30
extern
ULONG
SecondLevelIcacheFillSize
;
31
32
extern
ULONG
gDiskReadBuffer
,
gFileSysBuffer
;
33
#define DiskReadBuffer ((PVOID)gDiskReadBuffer)
34
35
#define DriveMapGetBiosDriveNumber(DeviceName) 0
36
37
FORCEINLINE
VOID
Reboot
(
VOID
)
38
{
39
DbgBreakPoint
();
40
}
41
42
typedef
struct
_PAGE_TABLE_ARM
43
{
44
HARDWARE_PTE_ARMV6
Pte
[1024];
45
}
PAGE_TABLE_ARM
, *
PPAGE_TABLE_ARM
;
46
C_ASSERT
(
sizeof
(
PAGE_TABLE_ARM
) ==
PAGE_SIZE
);
47
48
typedef
struct
_PAGE_DIRECTORY_ARM
49
{
50
union
51
{
52
HARDWARE_PDE_ARMV6
Pde
[4096];
53
HARDWARE_LARGE_PTE_ARMV6
Pte
[4096];
54
};
55
}
PAGE_DIRECTORY_ARM
, *
PPAGE_DIRECTORY_ARM
;
56
C_ASSERT
(
sizeof
(
PAGE_DIRECTORY_ARM
) == (4 *
PAGE_SIZE
));
57
58
// FIXME: sync with NDK
59
typedef
enum
_ARM_DOMAIN
60
{
61
FaultDomain
,
62
ClientDomain
,
63
InvalidDomain
,
64
ManagerDomain
65
}
ARM_DOMAIN
;
66
67
#define PDE_SHIFT 20
Reboot
@ Reboot
Definition:
bl.h:891
ArmBoardBlock
PARM_BOARD_CONFIGURATION_BLOCK ArmBoardBlock
Definition:
macharm.c:16
_ARM_DOMAIN
_ARM_DOMAIN
Definition:
hardware.h:60
ManagerDomain
@ ManagerDomain
Definition:
hardware.h:64
ClientDomain
@ ClientDomain
Definition:
hardware.h:62
FaultDomain
@ FaultDomain
Definition:
hardware.h:61
InvalidDomain
@ InvalidDomain
Definition:
hardware.h:63
FirstLevelIcacheFillSize
ULONG FirstLevelIcacheFillSize
Definition:
macharm.c:28
gFileSysBuffer
ULONG gFileSysBuffer
Definition:
hardware.h:32
PPAGE_TABLE_ARM
struct _PAGE_TABLE_ARM * PPAGE_TABLE_ARM
PAGE_DIRECTORY_ARM
struct _PAGE_DIRECTORY_ARM PAGE_DIRECTORY_ARM
SecondLevelDcacheSize
ULONG SecondLevelDcacheSize
Definition:
macharm.c:29
FirstLevelDcacheFillSize
ULONG FirstLevelDcacheFillSize
Definition:
macharm.c:26
PAGE_TABLE_ARM
struct _PAGE_TABLE_ARM PAGE_TABLE_ARM
gDiskReadBuffer
ULONG gDiskReadBuffer
Definition:
macharm.c:17
FirstLevelIcacheSize
ULONG FirstLevelIcacheSize
Definition:
macharm.c:27
SecondLevelIcacheSize
ULONG SecondLevelIcacheSize
Definition:
macharm.c:31
SecondLevelIcacheFillSize
ULONG SecondLevelIcacheFillSize
Definition:
macharm.c:32
ARM_DOMAIN
enum _ARM_DOMAIN ARM_DOMAIN
FirstLevelDcacheSize
ULONG FirstLevelDcacheSize
Definition:
macharm.c:25
SecondLevelDcacheFillSize
ULONG SecondLevelDcacheFillSize
Definition:
macharm.c:30
PPAGE_DIRECTORY_ARM
struct _PAGE_DIRECTORY_ARM * PPAGE_DIRECTORY_ARM
PAGE_SIZE
#define PAGE_SIZE
Definition:
env_spec_w32.h:49
DbgBreakPoint
NTSYSAPI void WINAPI DbgBreakPoint(void)
void
Definition:
nsiface.idl:2307
C_ASSERT
#define C_ASSERT(e)
Definition:
intsafe.h:73
_ARM_BOARD_CONFIGURATION_BLOCK
Definition:
osloader.h:45
_HARDWARE_LARGE_PTE_ARMV6
Definition:
mmtypes.h:78
_HARDWARE_PDE_ARMV6
Definition:
mmtypes.h:66
_HARDWARE_PTE_ARMV6
Definition:
mmtypes.h:98
_PAGE_DIRECTORY_ARM
Definition:
hardware.h:49
_PAGE_DIRECTORY_ARM::Pte
HARDWARE_LARGE_PTE_ARMV6 Pte[4096]
Definition:
hardware.h:53
_PAGE_DIRECTORY_ARM::Pde
HARDWARE_PDE_ARMV6 Pde[4096]
Definition:
hardware.h:52
_PAGE_TABLE_ARM
Definition:
hardware.h:43
_PAGE_TABLE_ARM::Pte
HARDWARE_PTE_ARMV6 Pte[1024]
Definition:
hardware.h:44
ULONG
uint32_t ULONG
Definition:
typedefs.h:59
FORCEINLINE
#define FORCEINLINE
Definition:
wdftypes.h:67
boot
freeldr
freeldr
include
arch
arm
hardware.h
Generated on Tue Dec 10 2024 06:12:36 for ReactOS by
1.9.6