RTEMS  5.1
mmu.h
Go to the documentation of this file.
1 
9 /*
10  * Copyright (c) 2013 Alan Cudmore.
11  * based on work by:
12  * Copyright (c) 2009
13  * embedded brains GmbH
14  * Obere Lagerstr. 30
15  * D-82178 Puchheim
16  * Germany
17  * <rtems@embedded-brains.de>
18  *
19  * The license and distribution terms for this file may be
20  * found in the file LICENSE in this distribution or at
21  *
22  * http://www.rtems.org/license/LICENSE
23  *
24  */
25 
26 #ifndef LIBBSP_ARM_RASPBERRYPI_MMU_H
27 #define LIBBSP_ARM_RASPBERRYPI_MMU_H
28 
29 #include <libcpu/arm-cp15.h>
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif /* __cplusplus */
34 
45 #define RASPBERRYPI_MMU_CLIENT_DOMAIN 15U
46 
47 #define RASPBERRYPI_MMU_READ_ONLY \
48  ((RASPBERRYPI_MMU_CLIENT_DOMAIN << ARM_MMU_SECT_DOMAIN_SHIFT) \
49  | ARM_MMU_SECT_DEFAULT)
50 
51 #define RASPBERRYPI_MMU_READ_ONLY_CACHED \
52  (RASPBERRYPI_MMU_READ_ONLY | ARM_MMU_SECT_C | ARM_MMU_SECT_B)
53 
54 #define RASPBERRYPI_MMU_READ_WRITE \
55  ((RASPBERRYPI_MMU_CLIENT_DOMAIN << ARM_MMU_SECT_DOMAIN_SHIFT) \
56  | ARM_MMU_SECT_AP_0 \
57  | ARM_MMU_SECT_DEFAULT)
58 
59 #define RASPBERRYPI_MMU_READ_WRITE_CACHED \
60  (RASPBERRYPI_MMU_READ_WRITE | ARM_MMU_SECT_C | ARM_MMU_SECT_B)
61 
64 #ifdef __cplusplus
65 }
66 #endif /* __cplusplus */
67 
68 #endif /* LIBBSP_ARM_RASPBERRYPI_MMU_H */
ARM co-processor 15 (CP15) API.