ReactOS
0.4.15-dev-2092-gf04890c
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
_PAGE_DIRECTORY_ARM::Pde
HARDWARE_PDE_ARMV6 Pde[4096]
Definition:
hardware.h:52
SecondLevelDcacheSize
ULONG SecondLevelDcacheSize
Definition:
macharm.c:27
gFileSysBuffer
ULONG gFileSysBuffer
Definition:
macharm.c:17
_PAGE_DIRECTORY_ARM::Pte
HARDWARE_LARGE_PTE_ARMV6 Pte[4096]
Definition:
hardware.h:53
Reboot
FORCEINLINE VOID Reboot(VOID)
Definition:
hardware.h:37
PPAGE_DIRECTORY_ARM
struct _PAGE_DIRECTORY_ARM * PPAGE_DIRECTORY_ARM
_HARDWARE_PDE_ARMV6
Definition:
mmtypes.h:65
DbgBreakPoint
void DbgBreakPoint()
Definition:
mach.c:553
FaultDomain
Definition:
hardware.h:61
FirstLevelIcacheFillSize
ULONG FirstLevelIcacheFillSize
Definition:
macharm.c:26
FirstLevelDcacheFillSize
ULONG FirstLevelDcacheFillSize
Definition:
macharm.c:24
ClientDomain
Definition:
hardware.h:62
ArmBoardBlock
PARM_BOARD_CONFIGURATION_BLOCK ArmBoardBlock
Definition:
macharm.c:16
_ARM_DOMAIN
_ARM_DOMAIN
Definition:
hardware.h:59
PPAGE_TABLE_ARM
struct _PAGE_TABLE_ARM * PPAGE_TABLE_ARM
PAGE_TABLE_ARM
struct _PAGE_TABLE_ARM PAGE_TABLE_ARM
FirstLevelDcacheSize
ULONG FirstLevelDcacheSize
Definition:
macharm.c:23
InvalidDomain
Definition:
hardware.h:63
PAGE_DIRECTORY_ARM
struct _PAGE_DIRECTORY_ARM PAGE_DIRECTORY_ARM
ManagerDomain
Definition:
hardware.h:64
C_ASSERT
C_ASSERT(sizeof(PAGE_TABLE_ARM)==PAGE_SIZE)
SecondLevelDcacheFillSize
ULONG SecondLevelDcacheFillSize
Definition:
macharm.c:28
PAGE_SIZE
#define PAGE_SIZE
Definition:
env_spec_w32.h:49
_PAGE_TABLE_ARM::Pte
HARDWARE_PTE_ARMV6 Pte[1024]
Definition:
hardware.h:44
_ARM_BOARD_CONFIGURATION_BLOCK
Definition:
osloader.h:44
_PAGE_TABLE_ARM
Definition:
hardware.h:42
FORCEINLINE
#define FORCEINLINE
Definition:
wdftypes.h:67
SecondLevelIcacheSize
ULONG SecondLevelIcacheSize
Definition:
macharm.c:29
ULONG
unsigned int ULONG
Definition:
retypes.h:1
gDiskReadBuffer
ULONG gDiskReadBuffer
Definition:
macharm.c:17
ARM_DOMAIN
enum _ARM_DOMAIN ARM_DOMAIN
SecondLevelIcacheFillSize
ULONG SecondLevelIcacheFillSize
Definition:
macharm.c:30
_HARDWARE_LARGE_PTE_ARMV6
Definition:
mmtypes.h:77
void
Definition:
nsiface.idl:2306
_PAGE_DIRECTORY_ARM
Definition:
hardware.h:48
FirstLevelIcacheSize
ULONG FirstLevelIcacheSize
Definition:
macharm.c:25
_HARDWARE_PTE_ARMV6
Definition:
mmtypes.h:97
boot
freeldr
freeldr
include
arch
arm
hardware.h
Generated on Fri Feb 26 2021 06:04:25 for ReactOS by
1.8.15