[AMD Official Use Only - General] With clarification from Lijo, patch is, Reviewed-by: Asad Kamal <asad.kamal@xxxxxxx> Thanks & Regards Asad -----Original Message----- From: Lazar, Lijo <Lijo.Lazar@xxxxxxx> Sent: Thursday, September 21, 2023 2:44 PM To: Kamal, Asad <Asad.Kamal@xxxxxxx>; Gadre, Mangesh <Mangesh.Gadre@xxxxxxx>; amd-gfx@xxxxxxxxxxxxxxxxxxxxx; Zhang, Hawking <Hawking.Zhang@xxxxxxx>; Ma, Le <Le.Ma@xxxxxxx>; Zhang, Morris <Shiwu.Zhang@xxxxxxx> Subject: Re: [PATCH] drm/amdgpu:Expose physical id of device in XGMI hive On 9/21/2023 12:34 PM, Kamal, Asad wrote: > [AMD Official Use Only - General] > > -----Original Message----- > From: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of > Mangesh Gadre > Sent: Thursday, September 21, 2023 10:06 AM > To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx; Zhang, Hawking > <Hawking.Zhang@xxxxxxx>; Lazar, Lijo <Lijo.Lazar@xxxxxxx>; Ma, Le > <Le.Ma@xxxxxxx>; Zhang, Morris <Shiwu.Zhang@xxxxxxx> > Cc: Gadre, Mangesh <Mangesh.Gadre@xxxxxxx>; Lazar, Lijo > <Lijo.Lazar@xxxxxxx> > 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@xxxxxxx> > Reviewed-by: Lijo Lazar <lijo.lazar@xxxxxxx> > --- > 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" [Kamal, Asad] Ok. 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 >