diff options
| author | Thomas Zimmermann <tzimmermann@suse.de> | 2023-01-25 21:12:51 +0100 | 
|---|---|---|
| committer | Thomas Zimmermann <tzimmermann@suse.de> | 2023-01-25 21:12:51 +0100 | 
| commit | 8d71c78e1aeec37eca4f0a4c190fd3e9548721de (patch) | |
| tree | 7182211bc619e2207a507b24c02f2c990e6999cc /drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |
| parent | 0c8fb2469438256a9cbb690d538437db6f845df8 (diff) | |
| parent | 68de345e101ce9a24e5c8849e69dd0dba2e8c9b2 (diff) | |
Merge drm/drm-next into drm-misc-next
Backmerging to sync with other DRM trees.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_device.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 10 | 
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index 76a2b4a4de10..1257745fb202 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -2076,6 +2076,7 @@ static int amdgpu_device_ip_early_init(struct amdgpu_device *adev)  	struct drm_device *dev = adev_to_drm(adev);  	struct pci_dev *parent;  	int i, r; +	bool total;  	amdgpu_device_enable_virtual_display(adev); @@ -2159,6 +2160,7 @@ static int amdgpu_device_ip_early_init(struct amdgpu_device *adev)  	if (amdgpu_sriov_vf(adev) && adev->asic_type == CHIP_SIENNA_CICHLID)  		adev->pm.pp_feature &= ~PP_OVERDRIVE_MASK; +	total = true;  	for (i = 0; i < adev->num_ip_blocks; i++) {  		if ((amdgpu_ip_block_mask & (1 << i)) == 0) {  			DRM_ERROR("disabled ip block: %d <%s>\n", @@ -2172,7 +2174,7 @@ static int amdgpu_device_ip_early_init(struct amdgpu_device *adev)  				} else if (r) {  					DRM_ERROR("early_init of IP block <%s> failed %d\n",  						  adev->ip_blocks[i].version->funcs->name, r); -					return r; +					total = false;  				} else {  					adev->ip_blocks[i].status.valid = true;  				} @@ -2203,6 +2205,8 @@ static int amdgpu_device_ip_early_init(struct amdgpu_device *adev)  		}  	} +	if (!total) +		return -ENODEV;  	adev->cg_flags &= amdgpu_cg_mask;  	adev->pg_flags &= amdgpu_pg_mask; @@ -5854,8 +5858,8 @@ void amdgpu_device_invalidate_hdp(struct amdgpu_device *adev,  int amdgpu_in_reset(struct amdgpu_device *adev)  {  	return atomic_read(&adev->reset_domain->in_gpu_reset); -	} -	 +} +  /**   * amdgpu_device_halt() - bring hardware to some kind of halt state   *  | 
