Reset limit pointer during DMA re-init
This commit is contained in:
parent
44cfd36a45
commit
7cf66e031e
|
|
@ -732,7 +732,6 @@ public:
|
||||||
// Set up DMA buffer segment.
|
// Set up DMA buffer segment.
|
||||||
m_device.write_reg(m_reg.addr_start, m_buf_start);
|
m_device.write_reg(m_reg.addr_start, m_buf_start);
|
||||||
m_device.write_reg(m_reg.addr_end, m_buf_end);
|
m_device.write_reg(m_reg.addr_end, m_buf_end);
|
||||||
m_device.write_reg(m_reg.addr_limit, m_buf_end - POINTER_MARGIN);
|
|
||||||
|
|
||||||
// Initialize DMA stream and reset write pointer.
|
// Initialize DMA stream and reset write pointer.
|
||||||
init();
|
init();
|
||||||
|
|
@ -791,6 +790,9 @@ public:
|
||||||
|
|
||||||
// Reset read pointer.
|
// Reset read pointer.
|
||||||
m_read_pointer = m_buf_start;
|
m_read_pointer = m_buf_start;
|
||||||
|
|
||||||
|
// Reset write limit pointer.
|
||||||
|
m_device.write_reg(m_reg.addr_limit, m_buf_end - POINTER_MARGIN);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Return the number of bytes available in the DMA buffer. */
|
/** Return the number of bytes available in the DMA buffer. */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue