RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
mmu.h
Go to the documentation of this file.
1
9/*
10 * Copyright (c) 2009-2011 embedded brains GmbH. All rights reserved.
11 *
12 * embedded brains GmbH
13 * Obere Lagerstr. 30
14 * 82178 Puchheim
15 * Germany
16 * <rtems@embedded-brains.de>
17 *
18 * The license and distribution terms for this file may be
19 * found in the file LICENSE in this distribution or at
20 * http://www.rtems.org/license/LICENSE.
21 */
22
23#ifndef LIBBSP_ARM_LPC32XX_MMU_H
24#define LIBBSP_ARM_LPC32XX_MMU_H
25
26#include <libcpu/arm-cp15.h>
27
28#ifdef __cplusplus
29extern "C" {
30#endif /* __cplusplus */
31
42#define LPC32XX_MMU_CLIENT_DOMAIN 15U
43
44#define LPC32XX_MMU_READ_ONLY \
45 ((LPC32XX_MMU_CLIENT_DOMAIN << ARM_MMU_SECT_DOMAIN_SHIFT) \
46 | ARM_MMU_SECT_DEFAULT)
47
48#define LPC32XX_MMU_READ_ONLY_CACHED \
49 (LPC32XX_MMU_READ_ONLY | ARM_MMU_SECT_C | ARM_MMU_SECT_B)
50
51#define LPC32XX_MMU_READ_WRITE \
52 ((LPC32XX_MMU_CLIENT_DOMAIN << ARM_MMU_SECT_DOMAIN_SHIFT) \
53 | ARM_MMU_SECT_AP_0 \
54 | ARM_MMU_SECT_DEFAULT)
55
56#define LPC32XX_MMU_READ_WRITE_CACHED \
57 (LPC32XX_MMU_READ_WRITE | ARM_MMU_SECT_C | ARM_MMU_SECT_B)
58
64static inline uint32_t lpc32xx_set_translation_table_entries(
65 const void *begin,
66 const void *end,
67 uint32_t section_flags
68)
69{
70 return arm_cp15_set_translation_table_entries(begin, end, section_flags);
71}
72
75#ifdef __cplusplus
76}
77#endif /* __cplusplus */
78
79#endif /* LIBBSP_ARM_LPC32XX_MMU_H */
ARM co-processor 15 (CP15) API.
uint32_t arm_cp15_set_translation_table_entries(const void *begin, const void *end, uint32_t section_flags)
Sets the section_flags for the address range [begin, end).
Definition: arm-cp15-set-ttb-entries.c:126