pte.h (297017) | pte.h (297446) |
---|---|
1/*- 2 * Copyright (c) 2014 Andrew Turner 3 * Copyright (c) 2014-2015 The FreeBSD Foundation 4 * All rights reserved. 5 * 6 * This software was developed by Andrew Turner under 7 * sponsorship from the FreeBSD Foundation. 8 * --- 13 unchanged lines hidden (view full) --- 22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28 * SUCH DAMAGE. 29 * | 1/*- 2 * Copyright (c) 2014 Andrew Turner 3 * Copyright (c) 2014-2015 The FreeBSD Foundation 4 * All rights reserved. 5 * 6 * This software was developed by Andrew Turner under 7 * sponsorship from the FreeBSD Foundation. 8 * --- 13 unchanged lines hidden (view full) --- 22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28 * SUCH DAMAGE. 29 * |
30 * $FreeBSD: head/sys/arm64/include/pte.h 297017 2016-03-18 10:01:25Z andrew $ | 30 * $FreeBSD: head/sys/arm64/include/pte.h 297446 2016-03-31 11:07:24Z andrew $ |
31 */ 32 33#ifndef _MACHINE_PTE_H_ 34#define _MACHINE_PTE_H_ 35 36#ifndef LOCORE 37typedef uint64_t pd_entry_t; /* page directory entry */ 38typedef uint64_t pt_entry_t; /* page table entry */ --- 29 unchanged lines hidden (view full) --- 68#else 69#define ATTR_DEFAULT (ATTR_AF) 70#endif 71 72#define ATTR_DESCR_MASK 3 73 74/* Level 0 table, 512GiB per entry */ 75#define L0_SHIFT 39 | 31 */ 32 33#ifndef _MACHINE_PTE_H_ 34#define _MACHINE_PTE_H_ 35 36#ifndef LOCORE 37typedef uint64_t pd_entry_t; /* page directory entry */ 38typedef uint64_t pt_entry_t; /* page table entry */ --- 29 unchanged lines hidden (view full) --- 68#else 69#define ATTR_DEFAULT (ATTR_AF) 70#endif 71 72#define ATTR_DESCR_MASK 3 73 74/* Level 0 table, 512GiB per entry */ 75#define L0_SHIFT 39 |
76#define L0_SIZE (1ul << L0_SHIFT) 77#define L0_OFFSET (L0_SIZE - 1ul) |
|
76#define L0_INVAL 0x0 /* An invalid address */ 77 /* 0x1 Level 0 doesn't support block translation */ 78 /* 0x2 also marks an invalid address */ 79#define L0_TABLE 0x3 /* A next-level table */ 80 81/* Level 1 table, 1GiB per entry */ 82#define L1_SHIFT 30 83#define L1_SIZE (1 << L1_SHIFT) --- 17 unchanged lines hidden (view full) --- 101#define L3_SIZE (1 << L3_SHIFT) 102#define L3_OFFSET (L3_SIZE - 1) 103#define L3_SHIFT 12 104#define L3_INVAL 0x0 105 /* 0x1 is reserved */ 106 /* 0x2 also marks an invalid address */ 107#define L3_PAGE 0x3 108 | 78#define L0_INVAL 0x0 /* An invalid address */ 79 /* 0x1 Level 0 doesn't support block translation */ 80 /* 0x2 also marks an invalid address */ 81#define L0_TABLE 0x3 /* A next-level table */ 82 83/* Level 1 table, 1GiB per entry */ 84#define L1_SHIFT 30 85#define L1_SIZE (1 << L1_SHIFT) --- 17 unchanged lines hidden (view full) --- 103#define L3_SIZE (1 << L3_SHIFT) 104#define L3_OFFSET (L3_SIZE - 1) 105#define L3_SHIFT 12 106#define L3_INVAL 0x0 107 /* 0x1 is reserved */ 108 /* 0x2 also marks an invalid address */ 109#define L3_PAGE 0x3 110 |
109#define Ln_ENTRIES (1 << 9) | 111#define L0_ENTRIES_SHIFT 9 112#define L0_ENTRIES (1 << L0_ENTRIES_SHIFT) 113#define L0_ADDR_MASK (L0_ENTRIES - 1) 114 115#define Ln_ENTRIES_SHIFT 9 116#define Ln_ENTRIES (1 << Ln_ENTRIES_SHIFT) |
110#define Ln_ADDR_MASK (Ln_ENTRIES - 1) 111#define Ln_TABLE_MASK ((1 << 12) - 1) 112 113#endif /* !_MACHINE_PTE_H_ */ 114 115/* End of pte.h */ | 117#define Ln_ADDR_MASK (Ln_ENTRIES - 1) 118#define Ln_TABLE_MASK ((1 << 12) - 1) 119 120#endif /* !_MACHINE_PTE_H_ */ 121 122/* End of pte.h */ |