15#include "mlir/IR/Location.h"
16#include "llvm/Support/raw_ostream.h"
51 mlir::LogicalResult
setIOBackend(
bool aieSim,
bool xaieDebug);
54 const DMAChannelDir &channelDir,
55 int bdId,
int repeatCount,
56 uint32_t padValue = 0,
57 bool outOfOrder =
false);
59 bool outOfOrder =
false);
60 mlir::LogicalResult
initLocks(DeviceOp &targetOp);
61 mlir::LogicalResult
initBuffers(DeviceOp &targetOp);
63 bool skipCtrlPktOverlay =
false);
65 bool skipCtrlPktOverlay =
false);
70 mlir::LogicalResult
addAieElf(uint8_t col, uint8_t row,
71 const mlir::StringRef elfPath,
bool aieSim);
72 mlir::LogicalResult
addAieElfs(DeviceOp &targetOp,
73 const mlir::StringRef elfPath,
bool aieSim);
94 mlir::LogicalResult
resetDMA(
int col,
int row,
bool on);
95 mlir::LogicalResult
resetCore(
int col,
int row);
98 mlir::LogicalResult
resetLock(
int col,
int row,
int lockId);
100 WireBundle sourceBundle,
102 WireBundle destBundle,
109 std::unique_ptr<AIERtImpl> aiert;
TxnLocBracket(const TxnLocBracket &)=delete
TxnLocBracket & operator=(const TxnLocBracket &)=delete
TxnLocBracket(AIERTControl &ctl, mlir::Location loc)
mlir::LogicalResult configureSwitches(DeviceOp &targetOp, bool skipCtrlPktOverlay=false)
mlir::LogicalResult resetPerfCounters(int col, int row)
mlir::LogicalResult configureLocksAndBd(mlir::Block &block, int col, int row, bool outOfOrder=false)
mlir::LogicalResult resetCore(int col, int row)
void dmaUpdateBdAddr(int col, int row, size_t addr, size_t bdId)
mlir::LogicalResult resetPartition()
mlir::LogicalResult resetCoreUnreset(int col, int row)
mlir::LogicalResult setIOBackend(bool aieSim, bool xaieDebug)
uint32_t getCurrentTxnNumCmds() const
std::vector< uint8_t > exportSerializedTransaction()
AIERTControl(const xilinx::AIE::AIETargetModel &tm)
mlir::LogicalResult initLocks(DeviceOp &targetOp)
mlir::LogicalResult resetDMA(int col, int row, bool on)
mlir::LogicalResult disableCores(DeviceOp &targetOp)
mlir::LogicalResult initBuffers(DeviceOp &targetOp)
mlir::LogicalResult resetSwitch(int col, int row)
mlir::LogicalResult addCoreEnable(DeviceOp &targetOp)
mlir::LogicalResult resetSwitchConnection(int col, int row, WireBundle sourceBundle, int sourceChannel, WireBundle destBundle, int destChannel)
const std::vector< mlir::Location > & getTxnOpLocs() const
mlir::LogicalResult addInitConfig(DeviceOp &targetOp, bool skipCtrlPktOverlay=false)
mlir::LogicalResult pushToBdQueueAndEnable(mlir::Operation &op, int col, int row, int chNum, const DMAChannelDir &channelDir, int bdId, int repeatCount, uint32_t padValue=0, bool outOfOrder=false)
mlir::LogicalResult addAieElf(uint8_t col, uint8_t row, const mlir::StringRef elfPath, bool aieSim)
void recordTxnLocRange(uint32_t startCmds, uint32_t endCmds, mlir::Location loc)
mlir::LogicalResult resetDmaChannels(DeviceOp &targetOp)
mlir::LogicalResult addAieElfs(DeviceOp &targetOp, const mlir::StringRef elfPath, bool aieSim)
mlir::LogicalResult teardownSwitches(DeviceOp &targetOp)
mlir::LogicalResult resetLock(int col, int row, int lockId)