packet.hh (10885:3ac92bf1f31f) | packet.hh (10886:fdd4a895f325) |
---|---|
1/* 2 * Copyright (c) 2012-2015 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 --- 78 unchanged lines hidden (view full) --- 87 WriteReq, 88 WriteResp, 89 Writeback, 90 CleanEvict, 91 SoftPFReq, 92 HardPFReq, 93 SoftPFResp, 94 HardPFResp, | 1/* 2 * Copyright (c) 2012-2015 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 --- 78 unchanged lines hidden (view full) --- 87 WriteReq, 88 WriteResp, 89 Writeback, 90 CleanEvict, 91 SoftPFReq, 92 HardPFReq, 93 SoftPFResp, 94 HardPFResp, |
95 WriteInvalidateReq, 96 WriteInvalidateResp, | 95 WriteLineReq, |
97 UpgradeReq, 98 SCUpgradeReq, // Special "weak" upgrade for StoreCond 99 UpgradeResp, 100 SCUpgradeFailReq, // Failed SCUpgradeReq in MSHR (never sent) 101 UpgradeFailResp, // Valid for SCUpgradeReq only 102 ReadExReq, 103 ReadExResp, 104 ReadCleanReq, --- 12 unchanged lines hidden (view full) --- 117 // compatibility 118 InvalidDestError, // packet dest field invalid 119 BadAddressError, // memory address invalid 120 FunctionalReadError, // unable to fulfill functional read 121 FunctionalWriteError, // unable to fulfill functional write 122 // Fake simulator-only commands 123 PrintReq, // Print state matching address 124 FlushReq, //request for a cache flush | 96 UpgradeReq, 97 SCUpgradeReq, // Special "weak" upgrade for StoreCond 98 UpgradeResp, 99 SCUpgradeFailReq, // Failed SCUpgradeReq in MSHR (never sent) 100 UpgradeFailResp, // Valid for SCUpgradeReq only 101 ReadExReq, 102 ReadExResp, 103 ReadCleanReq, --- 12 unchanged lines hidden (view full) --- 116 // compatibility 117 InvalidDestError, // packet dest field invalid 118 BadAddressError, // memory address invalid 119 FunctionalReadError, // unable to fulfill functional read 120 FunctionalWriteError, // unable to fulfill functional write 121 // Fake simulator-only commands 122 PrintReq, // Print state matching address 123 FlushReq, //request for a cache flush |
125 InvalidationReq, // request for address to be invalidated from lsq | 124 InvalidateReq, // request for address to be invalidated 125 InvalidateResp, |
126 NUM_MEM_CMDS 127 }; 128 129 private: 130 /** 131 * List of command attributes. 132 */ 133 enum Attribute --- 49 unchanged lines hidden (view full) --- 183 bool isRead() const { return testCmdAttrib(IsRead); } 184 bool isWrite() const { return testCmdAttrib(IsWrite); } 185 bool isUpgrade() const { return testCmdAttrib(IsUpgrade); } 186 bool isRequest() const { return testCmdAttrib(IsRequest); } 187 bool isResponse() const { return testCmdAttrib(IsResponse); } 188 bool needsExclusive() const { return testCmdAttrib(NeedsExclusive); } 189 bool needsResponse() const { return testCmdAttrib(NeedsResponse); } 190 bool isInvalidate() const { return testCmdAttrib(IsInvalidate); } | 126 NUM_MEM_CMDS 127 }; 128 129 private: 130 /** 131 * List of command attributes. 132 */ 133 enum Attribute --- 49 unchanged lines hidden (view full) --- 183 bool isRead() const { return testCmdAttrib(IsRead); } 184 bool isWrite() const { return testCmdAttrib(IsWrite); } 185 bool isUpgrade() const { return testCmdAttrib(IsUpgrade); } 186 bool isRequest() const { return testCmdAttrib(IsRequest); } 187 bool isResponse() const { return testCmdAttrib(IsResponse); } 188 bool needsExclusive() const { return testCmdAttrib(NeedsExclusive); } 189 bool needsResponse() const { return testCmdAttrib(NeedsResponse); } 190 bool isInvalidate() const { return testCmdAttrib(IsInvalidate); } |
191 bool isWriteInvalidate() const { return testCmdAttrib(IsWrite) && 192 testCmdAttrib(IsInvalidate); } | |
193 194 /** 195 * Check if this particular packet type carries payload data. Note 196 * that this does not reflect if the data pointer of the packet is 197 * valid or not. 198 */ 199 bool hasData() const { return testCmdAttrib(HasData); } 200 bool isLLSC() const { return testCmdAttrib(IsLlsc); } --- 277 unchanged lines hidden (view full) --- 478 bool isRead() const { return cmd.isRead(); } 479 bool isWrite() const { return cmd.isWrite(); } 480 bool isUpgrade() const { return cmd.isUpgrade(); } 481 bool isRequest() const { return cmd.isRequest(); } 482 bool isResponse() const { return cmd.isResponse(); } 483 bool needsExclusive() const { return cmd.needsExclusive(); } 484 bool needsResponse() const { return cmd.needsResponse(); } 485 bool isInvalidate() const { return cmd.isInvalidate(); } | 191 192 /** 193 * Check if this particular packet type carries payload data. Note 194 * that this does not reflect if the data pointer of the packet is 195 * valid or not. 196 */ 197 bool hasData() const { return testCmdAttrib(HasData); } 198 bool isLLSC() const { return testCmdAttrib(IsLlsc); } --- 277 unchanged lines hidden (view full) --- 476 bool isRead() const { return cmd.isRead(); } 477 bool isWrite() const { return cmd.isWrite(); } 478 bool isUpgrade() const { return cmd.isUpgrade(); } 479 bool isRequest() const { return cmd.isRequest(); } 480 bool isResponse() const { return cmd.isResponse(); } 481 bool needsExclusive() const { return cmd.needsExclusive(); } 482 bool needsResponse() const { return cmd.needsResponse(); } 483 bool isInvalidate() const { return cmd.isInvalidate(); } |
486 bool isWriteInvalidate() const { return cmd.isWriteInvalidate(); } | |
487 bool hasData() const { return cmd.hasData(); } 488 bool isLLSC() const { return cmd.isLLSC(); } 489 bool isError() const { return cmd.isError(); } 490 bool isPrint() const { return cmd.isPrint(); } 491 bool isFlush() const { return cmd.isFlush(); } 492 493 // Snoop flags 494 void assertMemInhibit() --- 513 unchanged lines hidden --- | 484 bool hasData() const { return cmd.hasData(); } 485 bool isLLSC() const { return cmd.isLLSC(); } 486 bool isError() const { return cmd.isError(); } 487 bool isPrint() const { return cmd.isPrint(); } 488 bool isFlush() const { return cmd.isFlush(); } 489 490 // Snoop flags 491 void assertMemInhibit() --- 513 unchanged lines hidden --- |