PXS20 DMA UART driver

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

PXS20 DMA UART driver

Jump to solution
584 Views
twp
Contributor III

Hi,

We are developing basic UART drivers for the PXS20.  We have the LinFLEX modules configured as UARTS correctly and can send an receive characters, however when converting the send process to use the eDMA module we are running in to a few issues.  When the channel requests are enabled and the UART TXEN is set, the DMA channel generates a Source Bus Error (SBE).  I can see that the source pointer in the TCD has been incremented to an invalid value, this happens even if the increment (SOFF) is 1 and the outer loop (CITER/BITER) is 1.

If I set the source increment to 0 I no longer receive the SBE error but instead get a DBE error.  Is this due to an incorrect configuration of the XBAR or some missing configuration in the eDMA?

Apologies if this is in the wrong section but I can't see a Power Architecture or PXS section.

Thanks,

Tom.

0 Kudos
1 Solution
375 Views
twp
Contributor III

Found the answer to my own question...

The eDMA module (Logical Master ID 2) Master Privilege Level needs to be set to 1 (not forced to user-mode):

PBRIDGE.MPROT0_7.B.MPROT2_MPL = 1;

See...

https://community.freescale.com/message/21883#21883

View solution in original post

0 Kudos
1 Reply
376 Views
twp
Contributor III

Found the answer to my own question...

The eDMA module (Logical Master ID 2) Master Privilege Level needs to be set to 1 (not forced to user-mode):

PBRIDGE.MPROT0_7.B.MPROT2_MPL = 1;

See...

https://community.freescale.com/message/21883#21883

0 Kudos