Browse Source

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>
Rex Zhu 9 years ago
parent
commit
251bb34fa4

+ 7 - 7
drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h

@@ -223,17 +223,17 @@ struct tonga_hwmgr {
 	uint32_t                           vddc_vddci_delta;
 	uint32_t                           vddc_vddci_delta;
 	uint32_t                           vddc_vddgfx_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;
 	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;
 	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;
 	void                             *ctf_context;
 
 
 	phw_tonga_clock_registers      	  clock_registers;
 	phw_tonga_clock_registers      	  clock_registers;

+ 19 - 15
drivers/gpu/drm/amd/powerplay/hwmgr/ppinterrupt.h → drivers/gpu/drm/amd/powerplay/inc/ppinterrupt.h

@@ -20,23 +20,27 @@
  * OTHER DEALINGS IN THE SOFTWARE.
  * 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_ */