1/* 2 * Copyright (c) 2013, 2018-2019 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 71 unchanged lines hidden (view full) --- 80 virtual Addr nextLevelPointer(pte_t pte, unsigned level) const; 81 virtual Addr index(Addr va, unsigned level) const; 82 virtual Addr pageMask(pte_t pte, unsigned level) const; 83 virtual Addr walkMask(unsigned level) const; 84 virtual unsigned firstLevel() const; 85 virtual unsigned lastLevel() const; 86}; 87 |
88struct V8PageTableOps16k : public PageTableOps 89{ 90 virtual bool isValid(pte_t pte, unsigned level) const; 91 virtual bool isLeaf(pte_t pte, unsigned level) const; 92 virtual bool isWritable(pte_t pte, unsigned level, bool stage2) const; 93 virtual Addr nextLevelPointer(pte_t pte, unsigned level) const; 94 virtual Addr index(Addr va, unsigned level) const; 95 virtual Addr pageMask(pte_t pte, unsigned level) const; 96 virtual Addr walkMask(unsigned level) const; 97 virtual unsigned firstLevel() const; 98 virtual unsigned lastLevel() const; 99}; 100 |
101struct V8PageTableOps64k : public PageTableOps 102{ 103 virtual bool isValid(pte_t pte, unsigned level) const; 104 virtual bool isLeaf(pte_t pte, unsigned level) const; 105 virtual bool isWritable(pte_t pte, unsigned level, bool stage2) const; 106 virtual Addr nextLevelPointer(pte_t pte, unsigned level) const; 107 virtual Addr index(Addr va, unsigned level) const; 108 virtual Addr pageMask(pte_t pte, unsigned level) const; 109 virtual Addr walkMask(unsigned level) const; 110 virtual unsigned firstLevel() const; 111 virtual unsigned lastLevel() const; 112}; 113 114#endif /* __DEV_ARM_SMMU_V3_PTOPS_HH__ */ |