Lines Matching refs:pmd

117 #define pmd_table(pmd)		((pmd_val(pmd) & PMD_TYPE_MASK) == \
119 #define pmd_sect(pmd) ((pmd_val(pmd) & PMD_TYPE_MASK) == \
121 #define pmd_leaf(pmd) pmd_sect(pmd)
140 #define pmd_bad(pmd) (!(pmd_val(pmd) & 2))
176 #define pmd_isset(pmd, val) ((u32)(val) == (val) ? pmd_val(pmd) & (val) \
177 : !!(pmd_val(pmd) & (val)))
178 #define pmd_isclear(pmd, val) (!(pmd_val(pmd) & (val)))
180 #define pmd_present(pmd) (pmd_isset((pmd), L_PMD_SECT_VALID))
181 #define pmd_young(pmd) (pmd_isset((pmd), PMD_SECT_AF))
189 #define pmd_write(pmd) (pmd_isclear((pmd), L_PMD_SECT_RDONLY))
190 #define pmd_dirty(pmd) (pmd_isset((pmd), L_PMD_SECT_DIRTY))
192 #define pmd_hugewillfault(pmd) (!pmd_young(pmd) || !pmd_write(pmd))
193 #define pmd_thp_or_huge(pmd) (pmd_huge(pmd) || pmd_trans_huge(pmd))
196 #define pmd_trans_huge(pmd) (pmd_val(pmd) && !pmd_table(pmd))
200 static inline pmd_t pmd_##fn(pmd_t pmd) { pmd_val(pmd) op; return pmd; }
209 #define pmd_mkhuge(pmd) (__pmd(pmd_val(pmd) & ~PMD_TABLE_BIT))
211 #define pmd_pfn(pmd) (((pmd_val(pmd) & PMD_MASK) & PHYS_MASK) >> PAGE_SHIFT)
218 /* represent a notpresent pmd by faulting entry, this is used by pmdp_invalidate */
219 static inline pmd_t pmd_mkinvalid(pmd_t pmd)
221 return __pmd(pmd_val(pmd) & ~L_PMD_SECT_VALID);
224 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot)
228 pmd_val(pmd) = (pmd_val(pmd) & ~mask) | (pgprot_val(newprot) & mask);
229 return pmd;
233 pmd_t *pmdp, pmd_t pmd)
238 if (pmd_val(pmd) & L_PMD_SECT_NONE)
239 pmd_val(pmd) &= ~L_PMD_SECT_VALID;
241 if (pmd_write(pmd) && pmd_dirty(pmd))
242 pmd_val(pmd) &= ~PMD_SECT_AP2;
244 pmd_val(pmd) |= PMD_SECT_AP2;
246 *pmdp = __pmd(pmd_val(pmd) | PMD_SECT_nG);