diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 8 | 
1 files changed, 7 insertions, 1 deletions
| diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c index 567df2db23ac..e8b8f28c2f72 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c @@ -208,6 +208,7 @@ static struct attribute *amdgpu_xgmi_hive_attrs[] = {  	&amdgpu_xgmi_hive_id,  	NULL  }; +ATTRIBUTE_GROUPS(amdgpu_xgmi_hive);  static ssize_t amdgpu_xgmi_show_attrs(struct kobject *kobj,  	struct attribute *attr, char *buf) @@ -237,7 +238,7 @@ static const struct sysfs_ops amdgpu_xgmi_hive_ops = {  struct kobj_type amdgpu_xgmi_hive_type = {  	.release = amdgpu_xgmi_hive_release,  	.sysfs_ops = &amdgpu_xgmi_hive_ops, -	.default_attrs = amdgpu_xgmi_hive_attrs, +	.default_groups = amdgpu_xgmi_hive_groups,  };  static ssize_t amdgpu_xgmi_show_device_id(struct device *dev, @@ -265,6 +266,11 @@ static ssize_t amdgpu_xgmi_show_error(struct device *dev,  	ficaa_pie_ctl_in = AMDGPU_XGMI_SET_FICAA(0x200);  	ficaa_pie_status_in = AMDGPU_XGMI_SET_FICAA(0x208); +	if ((!adev->df.funcs) || +	    (!adev->df.funcs->get_fica) || +	    (!adev->df.funcs->set_fica)) +		return -EINVAL; +  	fica_out = adev->df.funcs->get_fica(adev, ficaa_pie_ctl_in);  	if (fica_out != 0x1f)  		pr_err("xGMI error counters not enabled!\n"); |