drm/amdkfd: expose num_sdma_queues_per_engine data field to topology node (v2)
authorHuang Rui <ray.huang@amd.com>
Mon, 16 Dec 2019 07:02:50 +0000 (15:02 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 19 Dec 2019 15:10:05 +0000 (10:10 -0500)
Thunk driver would like to know the num_sdma_queues_per_engine data, however
this data relied on different asic specific. So it's better to get it from kfd
driver.

v2: don't update the name size.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@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 69bd062..cc01ccd 100644 (file)
@@ -486,6 +486,8 @@ static ssize_t node_show(struct kobject *kobj, struct attribute *attr,
                        dev->node_props.num_sdma_engines);
        sysfs_show_32bit_prop(buffer, "num_sdma_xgmi_engines",
                        dev->node_props.num_sdma_xgmi_engines);
+       sysfs_show_32bit_prop(buffer, "num_sdma_queues_per_engine",
+                       dev->node_props.num_sdma_queues_per_engine);
 
        if (dev->gpu) {
                log_max_watch_addr =
@@ -1309,6 +1311,8 @@ int kfd_topology_add_device(struct kfd_dev *gpu)
        dev->node_props.num_sdma_engines = gpu->device_info->num_sdma_engines;
        dev->node_props.num_sdma_xgmi_engines =
                                gpu->device_info->num_xgmi_sdma_engines;
+       dev->node_props.num_sdma_queues_per_engine =
+                               gpu->device_info->num_sdma_queues_per_engine;
        dev->node_props.num_gws = (hws_gws_support &&
                dev->gpu->dqm->sched_policy != KFD_SCHED_POLICY_NO_HWS) ?
                amdgpu_amdkfd_get_num_gws(dev->gpu->kgd) : 0;
index 15843e0..e1c9719 100644 (file)
@@ -81,6 +81,7 @@ struct kfd_node_properties {
        int32_t  drm_render_minor;
        uint32_t num_sdma_engines;
        uint32_t num_sdma_xgmi_engines;
+       uint32_t num_sdma_queues_per_engine;
        char name[KFD_TOPOLOGY_PUBLIC_NAME_SIZE];
 };