20 static constexpr size_t _maxDmaChannels = 4;
21 static constexpr size_t _maxInterrupts = 16;
23 std::optional<CtrlIntf> _ctrlIntf;
24 std::vector<DmaIntf> _dmaChannels;
25 std::array<std::unique_ptr<EventFile>, _maxInterrupts> _eventFiles;
27 const std::string _devicePath;
32 explicit XdmaBackend(std::string devicePath,
const std::string& mapFileName =
"",
33 const std::string& dataConsistencyKeyDescriptor =
"");
40 void dump(
const int32_t* data,
size_t nbytes);
41 void read(uint64_t bar, uint64_t address, int32_t* data,
size_t sizeInBytes)
override;
42 void write(uint64_t bar, uint64_t address,
const int32_t* data,
size_t sizeInBytes)
override;
49 std::string address, std::map<std::string, std::string> parameters);
std::future< void > activateSubscription(uint32_t interruptNumber, boost::shared_ptr< async::DomainImpl< std::nullptr_t > > asyncDomain) override
Activate/create the subscription for a given interrupt (for instance by starting the according interr...