mirror of
git://projects.qi-hardware.com/ben-blinkenlights.git
synced 2024-11-27 16:57:31 +02:00
ubb-la/ubb-la.c (xfers): revert to "safe" end-of-command synchronization
This seems to be the best compromise between stability and performance.
This commit is contained in:
parent
3b007ebaf1
commit
760e8a893a
@ -191,21 +191,12 @@ static void xfers(unsigned long *bufs, int n_bufs, int nibbles,
|
|||||||
dma_setup(bufs[0], nibbles);
|
dma_setup(bufs[0], nibbles);
|
||||||
|
|
||||||
while (1) {
|
while (1) {
|
||||||
int j;
|
|
||||||
|
|
||||||
MSC_STRPCL = MSC_STRPCRL_START_OP;
|
MSC_STRPCL = MSC_STRPCRL_START_OP;
|
||||||
|
|
||||||
MSC_CLKRT = fast_clk->clkrt;
|
MSC_CLKRT = fast_clk->clkrt;
|
||||||
MSCCDR = 0;
|
MSCCDR = 0;
|
||||||
|
|
||||||
/*
|
while (!(MSC_STAT & MSC_STAT_END_CMD_RES));
|
||||||
* Experimental value for 12 MSa/s with speedup to 84 MSa/s:
|
|
||||||
* hangs often with 29 cycles, hangs never (so far) with 30.
|
|
||||||
*/
|
|
||||||
for (j = 0; j != 30; j++) asm volatile ("");
|
|
||||||
|
|
||||||
// while (MSC_STAT & MSC_STAT_DATA_FIFO_EMPTY);
|
|
||||||
// while (!(MSC_STAT & MSC_STAT_END_CMD_RES));
|
|
||||||
|
|
||||||
IN(UBB_CMD);
|
IN(UBB_CMD);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user