• Andrew Lewycky's avatar
    amdkfd: Add interrupt handling module · b3f5e6b4
    Andrew Lewycky authored
    This patch adds the interrupt handling module, in kfd_interrupt.c, and its
    related members in different data structures to the amdkfd driver.
    
    The amdkfd interrupt module maintains an internal interrupt ring per amdkfd
    device. The internal interrupt ring contains interrupts that needs further
    handling. The extra handling is deferred to a later time through a workqueue.
    
    There's no acknowledgment for the interrupts we use. The hardware simply queues
    a new interrupt each time without waiting.
    
    The fixed-size internal queue means that it's possible for us to lose
    interrupts because we have no back-pressure to the hardware.
    
    v3:
    
    Move amdkfd from drm/radeon/ to drm/amd/
    Change device init
    Made sure spin lock is taken only if init is complete
    Moved bool field to the end of the structure
    Signed-off-by: default avatarAndrew Lewycky <Andrew.Lewycky@amd.com>
    Signed-off-by: default avatarOded Gabbay <oded.gabbay@amd.com>
    b3f5e6b4
kfd_interrupt.c 5.51 KB