S32K3 SPD DMA

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

S32K3 SPD DMA

Jump to solution
5,384 Views
Neo1096
Contributor III

Hello.

I use RTD400 and SPD105, and the development board is the S32K312 144P development board

I added the FCCU module to the tested UART+DMA program without making any Settings. Even if the header file is not referenced and the FCCU part is not initialized in the code, the program will die at Clock_Ip_SetWaitStates

I added the uart module normally in the tested SPD module program (including RAM and flash injection errors), and then added the DMA module without making any Settings. Even if the header file and the initialization Fdma part are not referenced in the code, the program will still be in the function Clock_Ip_SetWaitStates(); Then it enters a hardware error interrupt.

I uploaded the code of UART+DMA without adding the FCCU module, and it can run normally. However, after adding it, there will be a hardware error in the clock initialization program. What could be the reason for this and how can this problem be solved?

0 Kudos
Reply
1 Solution
4,789 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Neo1096

We found the cause of the problem.

This is because of the configuration problem of the link file provided by S32 DS.

We replaced the link file in the SPD package with that in S32 DS, and this problem can be solved.

So please refer to the link file in the attachment for further testing.

View solution in original post

0 Kudos
Reply
14 Replies
4,790 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Neo1096

We found the cause of the problem.

This is because of the configuration problem of the link file provided by S32 DS.

We replaced the link file in the SPD package with that in S32 DS, and this problem can be solved.

So please refer to the link file in the attachment for further testing.

0 Kudos
Reply
3,556 Views
gan89557
Contributor I

I encountered a similar problem. It works when I use UART Interrupt mode of S32K312, but it enter HardFault_Handler(), when I running Lpuart_Uart_Ip_AsyncSend() or Lpuart_Uart_Ip_AsyncReceive()  after Dma_Ip_Init() and Rm_Init().

Can anybody help me?

0 Kudos
Reply
4,592 Views
Neo1096
Contributor III

Could you provide the icf file? I need to use it in IAR

0 Kudos
Reply
4,589 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Neo1096

Sorry, we cannot support IAR, you can refer to the link file we provide to modify it.

0 Kudos
Reply
4,800 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Neo1096

The internal team has reproduced the problem and is currently eliminating possible causes.

Update time : 7/23/2025.

0 Kudos
Reply
5,367 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Neo1096

First,I tested the project you provided, and I did not encounter the problem you mentioned. Can you provide more information and whether some changes are needed?

Secondly, the SPD version corresponding to 4.0.0 P24 should be 1.0.4. You can try to install version 1.0.4 and try again

Senlent_0-1750671995090.png

 

0 Kudos
Reply
5,337 Views
Neo1096
Contributor III

The code I uploaded before can run. Adding the FCCU module separately will cause the operation to fail.

I re-uploaded two copies of the code.

A file that can run correctly tests RAM and FLASH injection errors based on the SPD104 version. (S32K312_SPD104)

Another one cannot run correctly. It is to add the DMA+UART part additionally in the previous code, which will be in Clock_Ip_SetWaitStates(); Enter the hardware interrupt (S32K312_SPD104_DMA_UART)

Please have a look. Thank you.

0 Kudos
Reply
5,307 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Neo1096

I encountered your problem when testing the project "S32K312_SPD104_DMA_UART" you provided.

I haven't found the reason yet, but in theory, if your settings are the same as "S32K312_SPD104", there shouldn't be such a problem.

I will try to modify your code in "S32K312_SPD104" tomorrow.

It will take some time, and you may have modified the startup file.

0 Kudos
Reply
5,274 Views
Neo1096
Contributor III

I added some code in exceptions.c under the Startup_Code folder, mainly to handle the hardware errors caused by error injection. The other parts remain unchanged.

Neo1096_0-1750839778075.png

 

0 Kudos
Reply
5,261 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Ne01096

This may be a bug, I need to confirm with the design team if I have overlooked something.

The current situation is that as long as I add the DMA module, it will enter hardfalut when initializing the clock.

I have tested it in different versions and the results are the same.

0 Kudos
Reply
5,172 Views
Neo1096
Contributor III
Has there been any progress?
0 Kudos
Reply
4,976 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Neo1096

I haven't received a response from the internal forum yet, thank you for your patience.

Update data:15/7/2025.

0 Kudos
Reply
5,124 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Neo1096

I haven't received a response from the internal forum yet, thank you for your patience.

Update data:7/7/2025.

0 Kudos
Reply
5,170 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Neo1096

I pushed again this morning, but I haven't received any response from the internal forum yet.

0 Kudos
Reply