Commit e3a4d51c authored by Wenhui Sheng's avatar Wenhui Sheng Committed by Alex Deucher
Browse files

drm/amdgpu: merge atombios init block



After we move request full access before set
ip blocks, we can merge atombios init block
of SRIOV and baremetal together.

Signed-off-by: default avatarWenhui Sheng <Wenhui.Sheng@amd.com>
Reviewed-by: default avatarHawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 00a979f3
Loading
Loading
Loading
Loading
+1 −22
Original line number Diff line number Diff line
@@ -1723,27 +1723,10 @@ static int amdgpu_device_ip_early_init(struct amdgpu_device *adev)
	amdgpu_device_enable_virtual_display(adev);

	if (amdgpu_sriov_vf(adev)) {
		/* handle vbios stuff prior full access mode for new handshake */
		if (adev->virt.req_init_data_ver == 1) {
			if (!amdgpu_get_bios(adev)) {
				DRM_ERROR("failed to get vbios\n");
				return -EINVAL;
			}

			r = amdgpu_atombios_init(adev);
			if (r) {
				dev_err(adev->dev, "amdgpu_atombios_init failed\n");
				amdgpu_vf_error_put(adev, AMDGIM_ERROR_VF_ATOMBIOS_INIT_FAIL, 0, 0);
				return r;
			}
		}

		r = amdgpu_virt_request_full_gpu(adev, true);
		if (r) {
			amdgpu_atombios_fini(adev);
		if (r)
			return r;
	}
	}

	switch (adev->asic_type) {
#ifdef CONFIG_DRM_AMDGPU_SI
@@ -1855,10 +1838,6 @@ static int amdgpu_device_ip_early_init(struct amdgpu_device *adev)
			if (r)
				return r;

			/* skip vbios handling for new handshake */
			if (amdgpu_sriov_vf(adev) && adev->virt.req_init_data_ver == 1)
				continue;

			/* Read BIOS */
			if (!amdgpu_get_bios(adev))
				return -EINVAL;