Rev 1702 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1702 | Rev 1780 | ||
---|---|---|---|
Line 37... | Line 37... | ||
37 | 37 | ||
38 | #include <arch/types.h> |
38 | #include <arch/types.h> |
39 | 39 | ||
40 | /** Translation Table Entry - Tag. */ |
40 | /** Translation Table Entry - Tag. */ |
41 | union tte_tag { |
41 | union tte_tag { |
42 | __u64 value; |
42 | uint64_t value; |
43 | struct { |
43 | struct { |
44 | unsigned g : 1; /**< Global. */ |
44 | unsigned g : 1; /**< Global. */ |
45 | unsigned : 2; /**< Reserved. */ |
45 | unsigned : 2; /**< Reserved. */ |
46 | unsigned context : 13; /**< Context identifier. */ |
46 | unsigned context : 13; /**< Context identifier. */ |
47 | unsigned : 6; /**< Reserved. */ |
47 | unsigned : 6; /**< Reserved. */ |
48 | __u64 va_tag : 42; /**< Virtual Address Tag, bits 63:22. */ |
48 | uint64_t va_tag : 42; /**< Virtual Address Tag, bits 63:22. */ |
49 | } __attribute__ ((packed)); |
49 | } __attribute__ ((packed)); |
50 | }; |
50 | }; |
51 | 51 | ||
52 | typedef union tte_tag tte_tag_t; |
52 | typedef union tte_tag tte_tag_t; |
53 | 53 | ||
54 | /** Translation Table Entry - Data. */ |
54 | /** Translation Table Entry - Data. */ |
55 | union tte_data { |
55 | union tte_data { |
56 | __u64 value; |
56 | uint64_t value; |
57 | struct { |
57 | struct { |
58 | unsigned v : 1; /**< Valid. */ |
58 | unsigned v : 1; /**< Valid. */ |
59 | unsigned size : 2; /**< Page size of this entry. */ |
59 | unsigned size : 2; /**< Page size of this entry. */ |
60 | unsigned nfo : 1; /**< No-Fault-Only. */ |
60 | unsigned nfo : 1; /**< No-Fault-Only. */ |
61 | unsigned ie : 1; /**< Invert Endianness. */ |
61 | unsigned ie : 1; /**< Invert Endianness. */ |