dma_device.hh (11168:f98eb2da15a4) | dma_device.hh (11169:44b5c183c3cd) |
---|---|
1/* 2 * Copyright (c) 2012-2013, 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 --- 120 unchanged lines hidden (view full) --- 129 uint32_t pendingCount; 130 131 /** If the port is currently waiting for a retry before it can 132 * send whatever it is that it's sending. */ 133 bool inRetry; 134 135 protected: 136 | 1/* 2 * Copyright (c) 2012-2013, 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 --- 120 unchanged lines hidden (view full) --- 129 uint32_t pendingCount; 130 131 /** If the port is currently waiting for a retry before it can 132 * send whatever it is that it's sending. */ 133 bool inRetry; 134 135 protected: 136 |
137 bool recvTimingResp(PacketPtr pkt); 138 void recvReqRetry() ; | 137 bool recvTimingResp(PacketPtr pkt) override; 138 void recvReqRetry() override; |
139 140 void queueDma(PacketPtr pkt); 141 142 public: 143 144 DmaPort(MemObject *dev, System *s); 145 146 RequestPtr dmaAction(Packet::Command cmd, Addr addr, int size, Event *event, --- 23 unchanged lines hidden (view full) --- 170 void dmaRead(Addr addr, int size, Event *event, uint8_t *data, 171 Tick delay = 0) 172 { 173 dmaPort.dmaAction(MemCmd::ReadReq, addr, size, event, data, delay); 174 } 175 176 bool dmaPending() const { return dmaPort.dmaPending(); } 177 | 139 140 void queueDma(PacketPtr pkt); 141 142 public: 143 144 DmaPort(MemObject *dev, System *s); 145 146 RequestPtr dmaAction(Packet::Command cmd, Addr addr, int size, Event *event, --- 23 unchanged lines hidden (view full) --- 170 void dmaRead(Addr addr, int size, Event *event, uint8_t *data, 171 Tick delay = 0) 172 { 173 dmaPort.dmaAction(MemCmd::ReadReq, addr, size, event, data, delay); 174 } 175 176 bool dmaPending() const { return dmaPort.dmaPending(); } 177 |
178 virtual void init(); | 178 void init() override; |
179 180 unsigned int cacheBlockSize() const { return sys->cacheLineSize(); } 181 | 179 180 unsigned int cacheBlockSize() const { return sys->cacheLineSize(); } 181 |
182 virtual BaseMasterPort &getMasterPort(const std::string &if_name, 183 PortID idx = InvalidPortID); | 182 BaseMasterPort &getMasterPort(const std::string &if_name, 183 PortID idx = InvalidPortID) override; |
184 185}; 186 187/** 188 * Buffered DMA engine helper class 189 * 190 * This class implements a simple DMA engine that feeds a FIFO 191 * buffer. The size of the buffer, the maximum number of pending --- 234 unchanged lines hidden --- | 184 185}; 186 187/** 188 * Buffered DMA engine helper class 189 * 190 * This class implements a simple DMA engine that feeds a FIFO 191 * buffer. The size of the buffer, the maximum number of pending --- 234 unchanged lines hidden --- |