Tool/software: TI-RTOS
Hi,
I have a problem that I am receiving msi1 and msi2 interrupts so close that I am missing msi2 interrupt completely. Is there any way that I can register 2 ISR for these 2 msi interrupts.
Thanks & Regards
Manjula
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software: TI-RTOS
Hi,
I have a problem that I am receiving msi1 and msi2 interrupts so close that I am missing msi2 interrupt completely. Is there any way that I can register 2 ISR for these 2 msi interrupts.
Thanks & Regards
Manjula
Like I want a solution similar to what we have in linux
In linux we have pci_alloc_irq_vectors() which RC uses to allocate requested no of vectors for the msi vectors and then using the request_irq (and the helper function pci_irq_vector which gets the vector no ) and the allocated vector number I can register multiple ISR one for each msi vector.
Some similar thing is possible in AM5728 RTOS also? I need to register 2 ISR one for msi1 and one for msi2 so that the 2 interrupts are serviced independently without timing concern.
When i receive msi1 and msi2 at some delay I am able to receive both the interrupts. If msi1 and msi2 overlap/close then onwards I am missing any msi1/msi2 interrupts. Not receiving interrupts at all.
Thanks & Regards
Manjula
Actually I have 4 msi interrupts. The scenario is I will receive interrupts any time. It may overlap and it may not. So I need to have 4 ISR for each MSI interrupts. Is there any possibility I can implement with 4 ISRS.
Please reply.
Thanks & Regards
Manjula
Actually i am doing dma receive from fpga to rc in my isr function as a swi function. I.e., when i receive msi1 interrupt i am calling swi_post and doing dma transfer inside that. I am receing interrupts at 5us delay continously. Dma trnsfer is getting delayed so i am missing interrupts.
Please give me solution i have do dma transfer as part of hardware isr and still receive all interrupts and data correctly
Its a new issue happening when we try to dsp pcie code with arm to boot using remoteproc. Remoteproc related entries are made in cfg file and resource table is updated for pcie. Any hints why pendingbits.msi is not set? Fpga is sending msi interrupts. There is no legacy interrupts. If dsp pcie code is run alone without arm and remote proc i am not having any issues.
The pcie addresses are mapped in resource_table.h. 8MB size starting from 0x51000000 for config space and 256MB size starting from 0x20000000. when msi interrupt happens the addresses 0x51002034 which is pending bits.msi and 0x51000830 is msibits[0].msiCtrlIntStatus should be set. but these bits are not set when the pcie code is run with remoteproc.
Meaning the address that gets set at runtime is not reflected properly. Any issue with remoteproc integration please help.
Thanks & Regards
Manjula
The issue is resolved. In the Linux dts file running in ARM15 we disabled the entries for pcie. With this the DSP pcie alone is running and this solved the issue