Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6c885554 authored by Alex Deucher's avatar Alex Deucher
Browse files

drm/amdgpu/atom: fix atom_fw check



Not all vbios images seem to set the version appropriately.
Switch the check based on asic type instead.

Reviewed-by: default avatarHawking Zhang <Hawking.Zhang@amd.com>
Acked-by: default avatarChristian König <christian.koenig@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent a5d20c40
Loading
Loading
Loading
Loading
+1 −14
Original line number Diff line number Diff line
@@ -86,19 +86,6 @@ static bool check_atom_bios(uint8_t *bios, size_t size)
	return false;
}

static bool is_atom_fw(uint8_t *bios)
{
	uint16_t bios_header_start = bios[0x48] | (bios[0x49] << 8);
	uint8_t frev = bios[bios_header_start + 2];
	uint8_t crev = bios[bios_header_start + 3];

	if ((frev < 3) ||
	    ((frev == 3) && (crev < 3)))
		return false;

	return true;
}

/* If you boot an IGP board with a discrete card as the primary,
 * the IGP rom is not accessible via the rom bar as the IGP rom is
 * part of the system bios.  On boot, the system bios puts a
@@ -455,6 +442,6 @@ bool amdgpu_get_bios(struct amdgpu_device *adev)
	return false;

success:
	adev->is_atom_fw = is_atom_fw(adev->bios);
	adev->is_atom_fw = (adev->asic_type >= CHIP_VEGA10) ? true : false;
	return true;
}