Hi Roman,
You can refer to MPC563x RM, Section 7.4.3.
https://www.nxp.com/files-static/32bit/doc/ref_manual/MPC563XMRM.pdf
These equations and estimated "DMA peak request rate" calculated in the RM for the MPC56xx could be also applied to the S32K1. Even though we have a different platform, the DMA module is very similar and the platform architecture is quite similar (one Crossbar bus with one peripheral bridge as a slave). But that equation was formulated in an ideal scenario where there are no interferences from other requests, nor other masters communications on the Crossbar, nor delays by peripherals, so, I'm not sure if this is any help.
It depends on the application-specific scenarios, different factors and we cannot determinate a single max value.
According to the app note, users could check the "time slot request", which is the minimum time needed between one DMA channel request to avoid any possible overrun or underrun, and normally if we don't consider a lot of DMA transfers, this min time is easily accomplished. Now, if we do have overrun issues, then we can only try to optimize the communication transfers. Unfortunately, there isn't much we can do to speed up the DMA and in the end, we cannot limit the customer application with a number of DMA channels / requests / frequency.
A colleague of mine encountered a similar issue, some overrun and underrun UART flags (missing data). The main problem there was that they were using Scatter-Gatter feature (instead of the linking feature) and that they didn't have enabled the FIFO for the LPUART. After they changed it in their application, they didn't experiment with any flag or missing data again.
Maybe you could also verify that you are properly using these features.
Regards,
Daniel