OMAP5912 and McBSP2 with DMA
Could someone tell me what the port should be for DMA with McBSP2? Since it is an ARM peripheral (as opposed to McBSP1 and McBSP3), then I expect it to be as follows. However, I get a timeout error.
omap_set_dma_dest_params(cs4384_data.dma_tx_ch,
OMAP_DMA_PORT_TIPB,
OMAP_DMA_AMODE_CONSTANT,
OMAP1610_MCBSP2_BASE + OMAP_MCBSP_REG_DXR2,
0, 0);If I change the code to use MCBSP1 (and MPUI as the port), all is well.
Thanks,
Steve
Hi,
Quoted 9 lines · Steve Poulsen
Could someone tell me what the port should be for DMA with McBSP2? Since it is an ARM peripheral (as opposed to McBSP1 and McBSP3), then I expect it to be as follows. However, I get a timeout error.
omap_set_dma_dest_params(cs4384_data.dma_tx_ch, OMAP_DMA_PORT_TIPB, OMAP_DMA_AMODE_CONSTANT, OMAP1610_MCBSP2_BASE + OMAP_MCBSP_REG_DXR2, 0, 0);
I believe McBSP2 is on the TIPB-MPUI port, which has the value of 5 (as opposed to 3 for TIPB) but I don't remember the macro name.
Cheers
Many thanks. The TIPB seemed to work fine, but only after I changed the DMA element size to 16-bit and wrote to DXR1. I could not get 32-bit transfers to work at all.
I may double check your recommendation to see if I can get 32-bit working that way.
Steve
Quoted 18 lines · andrzej zaborowski
Hi,
Quoted 9 lines · Steve Poulsen
Could someone tell me what the port should be for DMA with McBSP2? Since it is an ARM peripheral (as opposed to McBSP1 and McBSP3), then I expect it to be as follows. However, I get a timeout error.
omap_set_dma_dest_params(cs4384_data.dma_tx_ch, OMAP_DMA_PORT_TIPB, OMAP_DMA_AMODE_CONSTANT, OMAP1610_MCBSP2_BASE + OMAP_MCBSP_REG_DXR2, 0, 0);I believe McBSP2 is on the TIPB-MPUI port, which has the value of 5 (as opposed to 3 for TIPB) but I don't remember the macro name.
Cheers
Quoted 14 lines · andrzej zaborowski
Hi,
Quoted 9 lines · Steve Poulsen
Could someone tell me what the port should be for DMA with McBSP2? Since it is an ARM peripheral (as opposed to McBSP1 and McBSP3), then I expect it to be as follows. However, I get a timeout error.
omap_set_dma_dest_params(cs4384_data.dma_tx_ch, OMAP_DMA_PORT_TIPB, OMAP_DMA_AMODE_CONSTANT, OMAP1610_MCBSP2_BASE + OMAP_MCBSP_REG_DXR2, 0, 0);
Quoted 9 lines
I believe McBSP2 is on the TIPB-MPUI port, which has the value of 5 (as opposed to 3 for TIPB) but I don't remember the macro name.
Cheers
_______________________________________________
Linux-omap-open-source mailing list
[email protected]
http://linux.omap.com/mailman/listinfo/linux-omap-open-source
I disagree.
===
" but the MPUI port is a dedicated port used for MPU or system DMA initiated transfers
to DSP subsystem resources."
===
sprs231b.pdf page 165. So for MCBSP2 port type is TIPB bus I think. (I use it by myself in OMAP5910 and it is work fine).
Quoted 25 lines · Oleg Kechin
Quoted 14 lines · andrzej zaborowski
Hi,
Quoted 9 lines · Steve Poulsen
Could someone tell me what the port should be for DMA with McBSP2? Since it is an ARM peripheral (as opposed to McBSP1 and McBSP3), then I expect it to be as follows. However, I get a timeout error.
omap_set_dma_dest_params(cs4384_data.dma_tx_ch, OMAP_DMA_PORT_TIPB, OMAP_DMA_AMODE_CONSTANT, OMAP1610_MCBSP2_BASE + OMAP_MCBSP_REG_DXR2, 0, 0);Quoted 9 lines
I believe McBSP2 is on the TIPB-MPUI port, which has the value of 5 (as opposed to 3 for TIPB) but I don't remember the macro name.
Cheers
_______________________________________________
Linux-omap-open-source mailing list
[email protected]
http://linux.omap.com/mailman/listinfo/linux-omap-open-source
Quoted 8 lines
I disagree.
===
" but the MPUI port is a dedicated port used for MPU or system DMA initiated transfers
to DSP subsystem resources."
===
sprs231b.pdf page 165. So for MCBSP2 port type is TIPB bus I think. (I use it by myself in OMAP5910 and it is work fine).
Sorry, I confused the ports. It's McBSP1 and McBSP3 that use the other bus (just checked in sound/arm/omap/omap-alsa-dma.c now):
omap_set_dma_dest_params(channel, 0x05, 0x00,
(OMAP1510_MCBSP1_BASE + 0x06),
0, 0);whie for McBSP2 the value is indeed 0x3.
Regards