RuntimeError:"DMA does not support unaligned transfers"

Hi @marioruiz ,
del rx_buffer works fine,
Thanks,
Nir

1 Like

The subject of this support issue should be changed to RuntimeError: Flush Failed: 4294967274
File /usr/local/share/pynq-venv/lib/python3.10/site-packages/pynq/lib/dma.py:154, in _SDMAChannel.transfer(self, array, start, nbytes)
148 raise RuntimeError(
149 "DMA does not support unaligned transfers; "
150 "Starting address must be aligned to "
151 “{} bytes.”.format(self._align)
152 )
153 if self._flush_before:
→ 154 array.flush()
155 self.transferred = 0
156 self._mmio.write(
157 self._offset + 0x18, (array.physical_address + start) & 0xFFFFFFFF
158 )

File /usr/local/share/pynq-venv/lib/python3.10/site-packages/pynq**/buffer.py:107**, in PynqBuffer.flush(self)
105 “”“Flush the underlying memory if necessary”“”
106 if not self.coherent:
→ 107 self.device.flush(self.bo, self.offset, self.virtual_address, self.nbytes)

File /usr/local/share/pynq-venv/lib/python3.10/site-packages/pynq/pl_server/xrt_device.py:392, in XrtDevice.flush(self, bo, offset, ptr, size)
384 ret = xrt.xclSyncBO(
385 self.handle,
386 bo,
(…)
389 offset,
390 )
391 if ret >= 0x80000000:
→ 392 raise RuntimeError("Flush Failed: " + str(ret))

RuntimeError: Flush Failed: 4294967274