diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c index 9d7e6e0e73ed..a150b7a4b4aa 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c @@ -3548,6 +3548,9 @@ static ssize_t amdgpu_psp_vbflash_read(struct file *filp, struct kobject *kobj,  	void *fw_pri_cpu_addr;  	int ret; +	if (adev->psp.vbflash_image_size == 0) +		return -EINVAL; +  	dev_info(adev->dev, "VBIOS flash to PSP started");  	ret = amdgpu_bo_create_kernel(adev, adev->psp.vbflash_image_size, @@ -3599,13 +3602,13 @@ static ssize_t amdgpu_psp_vbflash_status(struct device *dev,  }  static const struct bin_attribute psp_vbflash_bin_attr = { -	.attr = {.name = "psp_vbflash", .mode = 0664}, +	.attr = {.name = "psp_vbflash", .mode = 0660},  	.size = 0,  	.write = amdgpu_psp_vbflash_write,  	.read = amdgpu_psp_vbflash_read,  }; -static DEVICE_ATTR(psp_vbflash_status, 0444, amdgpu_psp_vbflash_status, NULL); +static DEVICE_ATTR(psp_vbflash_status, 0440, amdgpu_psp_vbflash_status, NULL);  int amdgpu_psp_sysfs_init(struct amdgpu_device *adev)  {  | 
