how to register SGI IRQ on Linux in AMP

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

how to register SGI IRQ on Linux in AMP

941 Views
mihaitaivascu
Contributor III

Hello,

    I have the following situation on a platform that has a dual core A9. Core 0 runs Linux, core 1 FreeRTOS. 

    Core 1 sets some SGI interrupt that I wish to catch on Linux from a device driver.

    I have added the SGI ID 8 in the interrupt controller node in device tree.

    In the device driver I have tried to get it using request_irq but I always get error -22 when loading the driver module.

    I have read that different methods should be used for registering an irq handling SGI interrupts but is not clear to me how should I use handle_IPI functions from smp.c.

    Moreover should I change SMP specific functions if my scheme is AMP?

    Does anyone have experience with this topic?

Best regards,

         Mihaita

0 Kudos
2 Replies

750 Views
mihaitaivascu
Contributor III

I wonder if replacing request_irq function call with set_ipi_handler function call in the device driver would be enough.

I did that but I still cannot catch the SGI on the core running Linux when loading the driver module.

Best regards,

         Mihaita

0 Kudos

750 Views
mihaitaivascu
Contributor III

I will close this topic as it has been solved.

Thanks,

      Mihaita

0 Kudos