OSDN Git Service

drm/amdkfd: restore debugger additional info for gfx v9_4_3
authorJonathan Kim <jonathan.kim@amd.com>
Tue, 14 Dec 2021 18:30:01 +0000 (13:30 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 12 Jul 2023 15:10:19 +0000 (11:10 -0400)
The additional information that the KFD reports to the debugger was
destroyed when the following commit was merged:
"drm/amdkfd: convert switches to IP version checking"

Signed-off-by: Jonathan Kim <jonathan.kim@amd.com>
Reviewed-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>
Acked-by: Amber Lin <amber.lin@amd.com>
Signed-off-by: Eric Huang <jinhuieric.huang@amd.com>
Reviewed-by: Jonathan Kim <jonathan.kim@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdkfd/kfd_topology.c
drivers/gpu/drm/amd/amdkfd/kfd_topology.h

index 61fc62f..1a4cdee 100644 (file)
@@ -1932,8 +1932,14 @@ static void kfd_topology_set_capabilities(struct kfd_topology_device *dev)
                        HSA_CAP_TRAP_DEBUG_WAVE_LAUNCH_MODE_SUPPORTED;
 
        if (KFD_GC_VERSION(dev->gpu) < IP_VERSION(10, 0, 0)) {
-               dev->node_props.debug_prop |= HSA_DBG_WATCH_ADDR_MASK_LO_BIT_GFX9 |
-                                               HSA_DBG_WATCH_ADDR_MASK_HI_BIT;
+               if (KFD_GC_VERSION(dev->gpu) == IP_VERSION(9, 4, 3))
+                       dev->node_props.debug_prop |=
+                               HSA_DBG_WATCH_ADDR_MASK_LO_BIT_GFX9_4_3 |
+                               HSA_DBG_WATCH_ADDR_MASK_HI_BIT_GFX9_4_3;
+               else
+                       dev->node_props.debug_prop |=
+                               HSA_DBG_WATCH_ADDR_MASK_LO_BIT_GFX9 |
+                               HSA_DBG_WATCH_ADDR_MASK_HI_BIT;
 
                if (KFD_GC_VERSION(dev->gpu) < IP_VERSION(9, 4, 2))
                        dev->node_props.debug_prop |=
index cba2cd5..dea32a9 100644 (file)
 #define KFD_TOPOLOGY_PUBLIC_NAME_SIZE 32
 
 #define HSA_DBG_WATCH_ADDR_MASK_LO_BIT_GFX9    6
+#define HSA_DBG_WATCH_ADDR_MASK_LO_BIT_GFX9_4_3 7
 #define HSA_DBG_WATCH_ADDR_MASK_LO_BIT_GFX10   7
 #define HSA_DBG_WATCH_ADDR_MASK_HI_BIT  \
                        (29 << HSA_DBG_WATCH_ADDR_MASK_HI_BIT_SHIFT)
+#define HSA_DBG_WATCH_ADDR_MASK_HI_BIT_GFX9_4_3 \
+                       (30 << HSA_DBG_WATCH_ADDR_MASK_HI_BIT_SHIFT)
 
 struct kfd_node_properties {
        uint64_t hive_id;