diff options
author | Rex Zhu <Rex.Zhu@amd.com> | 2015-10-21 10:30:02 +0800 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2015-12-21 16:42:24 -0500 |
commit | 251bb34fa44ef92dce1903e92af68f12a7f6d594 (patch) | |
tree | 5a5512764d81451c72f55de09b398f89bc767db6 /drivers/gpu/drm | |
parent | c28eae26b54cb864310a4088ce4d999b66208b8c (diff) |
drm/amdgpu/powerplay: mv ppinterrupt.h to inc folder to share with other submodule.
Redefine interrupt callback function in accordance with cgs.
Signed-off-by: Rex Zhu <Rex.Zhu@amd.com>
Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h | 14 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/powerplay/inc/ppinterrupt.h (renamed from drivers/gpu/drm/amd/powerplay/hwmgr/ppinterrupt.h) | 34 |
2 files changed, 26 insertions, 22 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h b/drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h index c3ac966bfe6b..d773d12258d2 100644 --- a/drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h @@ -223,17 +223,17 @@ struct tonga_hwmgr { uint32_t vddc_vddci_delta; uint32_t vddc_vddgfx_delta; - pp_interrupt_registration_info internal_high_thermal_interrupt_info; - pp_interrupt_registration_info internal_low_thermal_interrupt_info; - pp_interrupt_registration_info smc_to_host_interrupt_info; + struct pp_interrupt_registration_info internal_high_thermal_interrupt_info; + struct pp_interrupt_registration_info internal_low_thermal_interrupt_info; + struct pp_interrupt_registration_info smc_to_host_interrupt_info; uint32_t active_auto_throttle_sources; - pp_interrupt_registration_info external_throttle_interrupt; - pp_interrupt_callback external_throttle_callback; + struct pp_interrupt_registration_info external_throttle_interrupt; + irq_handler_func_t external_throttle_callback; void *external_throttle_context; - pp_interrupt_registration_info ctf_interrupt_info; - pp_interrupt_callback ctf_callback; + struct pp_interrupt_registration_info ctf_interrupt_info; + irq_handler_func_t ctf_callback; void *ctf_context; phw_tonga_clock_registers clock_registers; diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/ppinterrupt.h b/drivers/gpu/drm/amd/powerplay/inc/ppinterrupt.h index 7269ac1cd8b4..c067e0925b6b 100644 --- a/drivers/gpu/drm/amd/powerplay/hwmgr/ppinterrupt.h +++ b/drivers/gpu/drm/amd/powerplay/inc/ppinterrupt.h @@ -20,23 +20,27 @@ * OTHER DEALINGS IN THE SOFTWARE. * */ -#ifndef PP_INTERRUPT_H -#define PP_INTERRUPT_H -/** - * The type of the interrupt callback functions in PowerPlay - */ -typedef void (*pp_interrupt_callback) (void *context, uint32_t ul_context_data); +#ifndef _PP_INTERRUPT_H_ +#define _PP_INTERRUPT_H_ -/** - * Event Manager action chain list information - */ -struct pp_interrupt_registration_info { - pp_interrupt_callback callback; /* Pointer to callback function */ - void *context; /* Pointer to callback function context */ - uint32_t *interrupt_enable_id; /* Registered interrupt id */ +enum amd_thermal_irq { + AMD_THERMAL_IRQ_LOW_TO_HIGH = 0, + AMD_THERMAL_IRQ_HIGH_TO_LOW, + + AMD_THERMAL_IRQ_LAST }; -typedef struct pp_interrupt_registration_info pp_interrupt_registration_info; +/* The type of the interrupt callback functions in PowerPlay */ +typedef int (*irq_handler_func_t)(void *private_data, + unsigned src_id, const uint32_t *iv_entry); + +/* Event Manager action chain list information */ +struct pp_interrupt_registration_info { + irq_handler_func_t call_back; /* Pointer to callback function */ + void *context; /* Pointer to callback function context */ + uint32_t src_id; /* Registered interrupt id */ + const uint32_t *iv_entry; +}; -#endif +#endif /* _PP_INTERRUPT_H_ */ |