[PATCH] drm/amdgpu:Expose physical id of device in XGMI hive

Lazar, Lijo lijo.lazar at amd.com
Thu Sep 21 09:14:16 UTC 2023



On 9/21/2023 12:34 PM, Kamal, Asad wrote:
> [AMD Official Use Only - General]
> 
> -----Original Message-----
> From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> On Behalf Of Mangesh Gadre
> Sent: Thursday, September 21, 2023 10:06 AM
> To: amd-gfx at lists.freedesktop.org; Zhang, Hawking <Hawking.Zhang at amd.com>; Lazar, Lijo <Lijo.Lazar at amd.com>; Ma, Le <Le.Ma at amd.com>; Zhang, Morris <Shiwu.Zhang at amd.com>
> Cc: Gadre, Mangesh <Mangesh.Gadre at amd.com>; Lazar, Lijo <Lijo.Lazar at amd.com>
> Subject: [PATCH] drm/amdgpu:Expose physical id of device in XGMI hive
> 
> This identifies the physical ordering of devices in the hive
> 
> Signed-off-by: Mangesh Gadre <Mangesh.Gadre at amd.com>
> Reviewed-by: Lijo Lazar <lijo.lazar at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 20 ++++++++++++++++++++
>   1 file changed, 20 insertions(+)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> index 061534e845a7..4cf38164d72c 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
> @@ -325,6 +325,17 @@ static ssize_t amdgpu_xgmi_show_device_id(struct device *dev,
> 
>   }
> 
> +static ssize_t amdgpu_xgmi_show_physical_id(struct device *dev,
> +                                    struct device_attribute *attr,
> +                                    char *buf)
> +{
> +       struct drm_device *ddev = dev_get_drvdata(dev);
> +       struct amdgpu_device *adev = drm_to_adev(ddev);
> +
> +       return sysfs_emit(buf, "%llu\n", adev->gmc.xgmi.physical_node_id);
> +
> +}
> +
>   static ssize_t amdgpu_xgmi_show_num_hops(struct device *dev,
>                                          struct device_attribute *attr,
>                                          char *buf)
> @@ -390,6 +401,7 @@ static ssize_t amdgpu_xgmi_show_error(struct device *dev,
> 
> 
>   static DEVICE_ATTR(xgmi_device_id, S_IRUGO, amdgpu_xgmi_show_device_id, NULL);
> +static DEVICE_ATTR(xgmi_physical_id, 0444,
> +amdgpu_xgmi_show_physical_id, NULL);
> [Kamal, Asad]  Can we use S_IRUGO in place of hard code value 0444?
> 
This is the recommended way by checkpatch. S_IR* will result in 
"Symbolic permissions are not preferred. Consider using octal permissions"

Thanks,
Lijo

> Regards
> Asad
>   static DEVICE_ATTR(xgmi_error, S_IRUGO, amdgpu_xgmi_show_error, NULL);  static DEVICE_ATTR(xgmi_num_hops, S_IRUGO, amdgpu_xgmi_show_num_hops, NULL);  static DEVICE_ATTR(xgmi_num_links, S_IRUGO, amdgpu_xgmi_show_num_links, NULL); @@ -407,6 +419,12 @@ static int amdgpu_xgmi_sysfs_add_dev_info(struct amdgpu_device *adev,
>                  return ret;
>          }
> 
> +       ret = device_create_file(adev->dev, &dev_attr_xgmi_physical_id);
> +       if (ret) {
> +               dev_err(adev->dev, "XGMI: Failed to create device file xgmi_physical_id\n");
> +               return ret;
> +       }
> +
>          /* Create xgmi error file */
>          ret = device_create_file(adev->dev, &dev_attr_xgmi_error);
>          if (ret)
> @@ -448,6 +466,7 @@ static int amdgpu_xgmi_sysfs_add_dev_info(struct amdgpu_device *adev,
> 
>   remove_file:
>          device_remove_file(adev->dev, &dev_attr_xgmi_device_id);
> +       device_remove_file(adev->dev, &dev_attr_xgmi_physical_id);
>          device_remove_file(adev->dev, &dev_attr_xgmi_error);
>          device_remove_file(adev->dev, &dev_attr_xgmi_num_hops);
>          device_remove_file(adev->dev, &dev_attr_xgmi_num_links); @@ -463,6 +482,7 @@ static void amdgpu_xgmi_sysfs_rem_dev_info(struct amdgpu_device *adev,
>          memset(node, 0, sizeof(node));
> 
>          device_remove_file(adev->dev, &dev_attr_xgmi_device_id);
> +       device_remove_file(adev->dev, &dev_attr_xgmi_physical_id);
>          device_remove_file(adev->dev, &dev_attr_xgmi_error);
>          device_remove_file(adev->dev, &dev_attr_xgmi_num_hops);
>          device_remove_file(adev->dev, &dev_attr_xgmi_num_links);
> --
> 2.34.1
> 


More information about the amd-gfx mailing list