How to configure GIC for I.Mx6q?

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

How to configure GIC for I.Mx6q?

Jump to solution
1,021 Views
ajmalali
Contributor III

Hi,

I am trying to enable UART interrupt for Imx6q. I have initialized the GIC, UART, set the interrupt state, registered the handler, and enabled the interrupt. But after enabling the interrupt, the normal execution halts. On further analysis it was seen that the execution halts when i set the "GICD_ISENABLERn" register of the GIC.  But, even if the normal execution halts, it enters the "IRQ_HLDR" for once and executes till the end of the handler. 

Then, i tried initializing the gic only after the interrupt has been enabled. In that case the program does not halt when i set the  "GICD_ISENABLERn" register, but when i set the "gicd->CTLR" for enable forwarding the secure and non-secure interrupt. Even then, the "IRQ_HLDR" executes once as before. What might be the problem? am i forgetting some initialization steps? I  have attached my main,gic and interrupt files. Please do ask if need anything else. Please help..

Original Attachment has been moved to: vectors.S.zip

Original Attachment has been moved to: startup.S.zip

Original Attachment has been moved to: main.c.zip

Original Attachment has been moved to: gic.c.zip

Original Attachment has been moved to: gic.h.zip

Original Attachment has been moved to: interrupt.c.zip

Original Attachment has been moved to: interrupt.h.zip

Labels (3)
0 Kudos
1 Solution
721 Views
igorpadykov
NXP Employee
NXP Employee

Hi ajmalali

please look at attached sdk example with description in pdf file

Chapter 4 Configuring the GIC Driver. For obtaining full sdk one

can create service request.

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

3 Replies
722 Views
igorpadykov
NXP Employee
NXP Employee

Hi ajmalali

please look at attached sdk example with description in pdf file

Chapter 4 Configuring the GIC Driver. For obtaining full sdk one

can create service request.

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

721 Views
ajmalali
Contributor III

Hi ~Igor,

Thanks for the reply. 

I have referred "1.1.0_iMX6_Platform_SDK" for writing the above. The problem occure when i set the "GICD_ISENABLERn" or "gicd->CTLR" as done in the sdk. what might be the problem ?

regards,

Ajmal

0 Kudos
721 Views
igorpadykov
NXP Employee
NXP Employee

Hi Ajmal

please check uboot gpio interrupt example, it may be modified for uart

Enable interrupt on Uboot 

Best regards
igor

0 Kudos