request.hh (12346:9b1144d046ca) request.hh (12347:c4bb52d1aba4)
1/*
2 * Copyright (c) 2012-2013,2017 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

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

177 */
178 GENERIC_IPR = 0x08000000,
179
180 /** The request targets the secure memory space. */
181 SECURE = 0x10000000,
182 /** The request is a page table walk */
183 PT_WALK = 0x20000000,
184
1/*
2 * Copyright (c) 2012-2013,2017 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

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

177 */
178 GENERIC_IPR = 0x08000000,
179
180 /** The request targets the secure memory space. */
181 SECURE = 0x10000000,
182 /** The request is a page table walk */
183 PT_WALK = 0x20000000,
184
185 /** The request invalidates a memory location */
186 INVALIDATE = 0x0000000100000000,
187 /** The request cleans a memory location */
188 CLEAN = 0x0000000200000000,
189
185 /** The request targets the point of unification */
186 DST_POU = 0x0000001000000000,
187
188 /** The request targets the point of coherence */
189 DST_POC = 0x0000002000000000,
190
191 /** Bits to define the destination of a request */
192 DST_BITS = 0x0000003000000000,

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

884 return _memSpaceConfigFlags.isSet(SPILL_SEGMENT);
885 }
886
887 bool
888 isArgSegment() const
889 {
890 return _memSpaceConfigFlags.isSet(ARG_SEGMENT);
891 }
190 /** The request targets the point of unification */
191 DST_POU = 0x0000001000000000,
192
193 /** The request targets the point of coherence */
194 DST_POC = 0x0000002000000000,
195
196 /** Bits to define the destination of a request */
197 DST_BITS = 0x0000003000000000,

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

889 return _memSpaceConfigFlags.isSet(SPILL_SEGMENT);
890 }
891
892 bool
893 isArgSegment() const
894 {
895 return _memSpaceConfigFlags.isSet(ARG_SEGMENT);
896 }
897
898 /**
899 * Accessor functions to determine whether this request is part of
900 * a cache maintenance operation. At the moment three operations
901 * are supported:
902
903 * 1) A cache clean operation updates all copies of a memory
904 * location to the point of reference,
905 * 2) A cache invalidate operation invalidates all copies of the
906 * specified block in the memory above the point of reference,
907 * 3) A clean and invalidate operation is a combination of the two
908 * operations.
909 * @{ */
910 bool isCacheClean() const { return _flags.isSet(CLEAN); }
911 bool isCacheInvalidate() const { return _flags.isSet(INVALIDATE); }
912 bool isCacheMaintenance() const { return _flags.isSet(CLEAN|INVALIDATE); }
913 /** @} */
892};
893
894#endif // __MEM_REQUEST_HH__
914};
915
916#endif // __MEM_REQUEST_HH__