diff options
Diffstat (limited to 'drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c')
-rw-r--r-- | drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c b/drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c index 04384426e548..d5ec8ccbe97d 100644 --- a/drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c +++ b/drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c @@ -22,6 +22,8 @@ */ #include "eventmgr.h" #include "eventinit.h" +#include "ppinterrupt.h" +#include "hardwaremanager.h" void pem_init_feature_info(struct pp_eventmgr *eventmgr) { @@ -145,12 +147,25 @@ void pem_init_feature_info(struct pp_eventmgr *eventmgr) eventmgr->features[PP_Feature_ViPG].enabled = false; } +static int thermal_interrupt_callback(void *private_data, + unsigned src_id, const uint32_t *iv_entry) +{ + /* TO DO hanle PEM_Event_ThermalNotification (struct pp_eventmgr *)private_data*/ + printk("current thermal is out of range \n"); + return 0; +} + int pem_register_interrupts(struct pp_eventmgr *eventmgr) { int result = 0; + struct pp_interrupt_registration_info info; + + info.call_back = thermal_interrupt_callback; + info.context = eventmgr; + + result = phm_register_thermal_interrupt(eventmgr->hwmgr, &info); /* TODO: - * 1. Register thermal events interrupt * 2. Register CTF event interrupt * 3. Register for vbios events interrupt * 4. Register External Throttle Interrupt |