drm/amdgpu/powerplay: mv ppinterrupt.h to inc folder to share with other submodule.
authorRex Zhu <Rex.Zhu@amd.com>
Wed, 21 Oct 2015 02:30:02 +0000 (10:30 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 21 Dec 2015 21:42:24 +0000 (16:42 -0500)
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>
drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h
drivers/gpu/drm/amd/powerplay/inc/ppinterrupt.h [moved from drivers/gpu/drm/amd/powerplay/hwmgr/ppinterrupt.h with 64% similarity]

index c3ac966..d773d12 100644 (file)
@@ -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;
  * 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_ */