S32K148 LPUART DMA RX Idle line Issue

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

S32K148 LPUART DMA RX Idle line Issue

Jump to solution
728 Views
Pratap_Metharamitta
Contributor III

Hello,

When we are trying to use the S32K148 LPUART driver to setup DMA RX Idle line we are getting RXEDGIF interrupt, we never getting IDLE.

Here our DMA buffer size is 128 bytes, and our packets are 5 bytes to 78 bytes that is why we need Idle line interrupt to handle any packet.

Please let me know if there is similar issue or share the example code if you have any.

regards, Pratap

Pratap Metharamitta
0 Kudos
Reply
1 Solution
712 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Pratap_Metharamitta

This is a demo I made before. You can refer to it. I need to inform you that our SDK does not support this feature. This is just a test demo I modified myself. We will not provide more support for this. Please evaluate it yourself.

https://community.nxp.com/t5/S32K-Knowledge-Base/S32K1xx-Lpuart-IDLE-detected-with-DMA-transfer/ta-p...

 

View solution in original post

2 Replies
706 Views
Pratap_Metharamitta
Contributor III
Root Cause is: In the SDK LPUART driver, when enter to the LPUART_DRV_IRQHandler() all ERROR status is cleared by LPUART_DRV_ErrIrqHandler(), the FEATURE_LPUART_STAT_REG_FLAGS_MASK (in file S32K148_features.h), is 0xC01FC000U, the idle flag being clear here.
 
Solution: Modeling the FEATURE_LPUART_STAT_REG_FLAGS_MASK (in file S32K148_features.h), from 0xC01FC000U to 0xC00FC000U.
 
Please let me know can we solve this issue by above modification.
Pratap Metharamitta
0 Kudos
Reply
713 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Pratap_Metharamitta

This is a demo I made before. You can refer to it. I need to inform you that our SDK does not support this feature. This is just a test demo I modified myself. We will not provide more support for this. Please evaluate it yourself.

https://community.nxp.com/t5/S32K-Knowledge-Base/S32K1xx-Lpuart-IDLE-detected-with-DMA-transfer/ta-p...

 

%3CLINGO-SUB%20id%3D%22lingo-sub-2069040%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ES32K148%20LPUART%20DMA%20RX%20Idle%20line%20Issue%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2069040%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHello%2C%3C%2FP%3E%3CP%3EWhen%20we%20are%20trying%20to%20use%20the%20S32K148%20LPUART%20driver%20to%20setup%20DMA%20RX%20Idle%20line%20we%20are%20getting%20RXEDGIF%20interrupt%2C%20we%20never%20getting%20IDLE.%3C%2FP%3E%3CP%3EHere%20our%20DMA%20buffer%20size%20is%20128%20bytes%2C%20and%20our%20packets%20are%205%20bytes%20to%2078%20bytes%20that%20is%20why%20we%20need%20Idle%20line%20interrupt%20to%20handle%20any%20packet.%3C%2FP%3E%3CP%3EPlease%20let%20me%20know%20if%20there%20is%20similar%20issue%20or%20share%20the%20example%20code%20if%20you%20have%20any.%3C%2FP%3E%3CP%3Eregards%2C%20Pratap%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2069162%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20S32K148%20LPUART%20DMA%20RX%20Idle%20line%20Issue%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2069162%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CDIV%20class%3D%22%22%3ERoot%20Cause%20is%3A%20In%20the%20SDK%20LPUART%20driver%2C%20when%20enter%20to%20the%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CSTRONG%3E%3CU%3ELPUART_DRV_IRQHandler()%3C%2FU%3E%3C%2FSTRONG%3E%26nbsp%3Ball%20ERROR%20status%20is%20cleared%20by%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CSTRONG%3ELPUART_DRV_ErrIrqHandler()%2C%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FSTRONG%3Ethe%20FEATURE_LPUART_STAT_REG_FLAGS_MASK%20(in%20file%20S32K148_features.h)%2C%20is%200xC0%3CSPAN%3E1%3C%2FSPAN%3EFC000U%2C%20the%20idle%20flag%20being%20clear%20here.%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3ESolution%3A%20Modeling%20the%20FEATURE_LPUART_STAT_REG_FLAGS_MASK%20(in%20file%20S32K148_features.h)%2C%20from%200xC0%3C%2FSPAN%3E%3CSPAN%3E1%3C%2FSPAN%3E%3CSPAN%3EFC000U%20to%200xC0%3C%2FSPAN%3E%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3EFC000U.%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%20class%3D%22%22%3E%3CSPAN%3EPlease%20let%20me%20know%20can%20we%20solve%20this%20issue%20by%20above%20modification.%3C%2FSPAN%3E%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2069142%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20S32K148%20LPUART%20DMA%20RX%20Idle%20line%20Issue%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2069142%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%40%3CSPAN%3EPratap_Metharam%3C%2FSPAN%3E%3CWBR%20%2F%3E%3CSPAN%3Eitta%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3EThis%20is%20a%20demo%20I%20made%20before.%20You%20can%20refer%20to%20it.%20I%20need%20to%20inform%20you%20that%20our%20SDK%20does%20not%20support%20this%20feature.%20This%20is%20just%20a%20test%20demo%20I%20modified%20myself.%20We%20will%20not%20provide%20more%20support%20for%20this.%20Please%20evaluate%20it%20yourself.%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2FS32K-Knowledge-Base%2FS32K1xx-Lpuart-IDLE-detected-with-DMA-transfer%2Fta-p%2F1945182%22%20target%3D%22_blank%22%3Ehttps%3A%2F%2Fcommunity.nxp.com%2Ft5%2FS32K-Knowledge-Base%2FS32K1xx-Lpuart-IDLE-detected-with-DMA-transfer%2Fta-p%2F1945182%3C%2FA%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E