smmu_v3_slaveifc.hh (14039:4991b2a345a1) smmu_v3_slaveifc.hh (14064:870553bad072)
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

--- 42 unchanged lines hidden (view full) ---

51#include "params/SMMUv3SlaveInterface.hh"
52
53class SMMUTranslationProcess;
54class SMMUv3;
55class SMMUSlavePort;
56
57class SMMUv3SlaveInterface : public MemObject
58{
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

--- 42 unchanged lines hidden (view full) ---

51#include "params/SMMUv3SlaveInterface.hh"
52
53class SMMUTranslationProcess;
54class SMMUv3;
55class SMMUSlavePort;
56
57class SMMUv3SlaveInterface : public MemObject
58{
59 protected:
60 friend class SMMUTranslationProcess;
61
59 public:
60 SMMUv3 *smmu;
61 SMMUTLB* microTLB;
62 SMMUTLB* mainTLB;
63
64 const bool microTLBEnable;
65 const bool mainTLBEnable;
66

--- 52 unchanged lines hidden (view full) ---

119 SMMUv3SlaveInterface(const SMMUv3SlaveInterfaceParams *p);
120
121 ~SMMUv3SlaveInterface()
122 {
123 delete microTLB;
124 delete mainTLB;
125 }
126
62 public:
63 SMMUv3 *smmu;
64 SMMUTLB* microTLB;
65 SMMUTLB* mainTLB;
66
67 const bool microTLBEnable;
68 const bool mainTLBEnable;
69

--- 52 unchanged lines hidden (view full) ---

122 SMMUv3SlaveInterface(const SMMUv3SlaveInterfaceParams *p);
123
124 ~SMMUv3SlaveInterface()
125 {
126 delete microTLB;
127 delete mainTLB;
128 }
129
130 const SMMUv3SlaveInterfaceParams *
131 params() const
132 {
133 return static_cast<const SMMUv3SlaveInterfaceParams *>(_params);
134 }
135
136 DrainState drain() override;
137
127 void setSMMU(SMMUv3 *_smmu) { smmu = _smmu; }
128 void sendRange();
129};
130
131#endif /* __DEV_ARM_SMMU_V3_SLAVEIFC_HH__ */
138 void setSMMU(SMMUv3 *_smmu) { smmu = _smmu; }
139 void sendRange();
140};
141
142#endif /* __DEV_ARM_SMMU_V3_SLAVEIFC_HH__ */