Hi,
I have been trying to get the edma3init function to work without compromising an example DSPLink application for a while now with no success. I am using the example readwrite DSPLink example which I am able to compile and target on a L138 Experimentor board without a problem. However, when I include the edma3init function from the EDMA3 LLD examples - the readwrite DSPLink application fails to complete. It does not crash Linux - it just seems as if the DSP does not reply anymore (The program can be interrupted with CtrlC). The readwrite example makes use of DSPLink MSGQ and is unmodified other than the inclusion of the EDMA3 LLD libraries and example code. The only think I do is call edma3init();
I know there have been similar posts - and I have followed them to try resolve the issue without success. I have tried:
- Changing the DSPLink interrupt and clean rebuilding it.
- Removing all EDMA3 related components in the Linux kernel (SPI, McBSP, Audio, MMC)
- Removing the registerEdma3Interrupts in the edma3init() call
- Making sure the ECM manager is used for EDMA3 interrupts
In the edma3init function I have removed the EDMA3_DRV_Create function as I thought that the ARM and Linux cannot both open this. It just fails on EDMA3_DRV_Open later. I have also tried setting the EDMA3_DRV_Create as slave but it also did not resolve the issue.
I am sure my application requirement of using EDMA3 LLD under DSPLINK is not unusual. Please - how is it accomplished? I need to do this or my project will fail.
I am using DSPLink 1.65.01.05; EDMA3LLD 02.11.02.05; DSP BIOS 5.41.13.42
Ian