mirror of https://gitee.com/openkylin/linux.git
drm/amd/amdgpu: stored bios_size
It's necessary if we want to export vbios image out. Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Signed-off-by: Evan Quan <evan.quan@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian Koenig <christian.koenig@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
ff9d646017
commit
a9f5db9ca7
|
@ -1330,6 +1330,7 @@ struct amdgpu_device {
|
|||
|
||||
/* BIOS */
|
||||
uint8_t *bios;
|
||||
uint32_t bios_size;
|
||||
bool is_atom_bios;
|
||||
struct amdgpu_bo *stollen_vga_memory;
|
||||
uint32_t bios_scratch[AMDGPU_BIOS_NUM_SCRATCH];
|
||||
|
|
|
@ -74,6 +74,7 @@ static bool igp_read_bios_from_vram(struct amdgpu_device *adev)
|
|||
iounmap(bios);
|
||||
return false;
|
||||
}
|
||||
adev->bios_size = size;
|
||||
memcpy_fromio(adev->bios, bios, size);
|
||||
iounmap(bios);
|
||||
return true;
|
||||
|
@ -103,6 +104,7 @@ bool amdgpu_read_bios(struct amdgpu_device *adev)
|
|||
pci_unmap_rom(adev->pdev, bios);
|
||||
return false;
|
||||
}
|
||||
adev->bios_size = size;
|
||||
memcpy_fromio(adev->bios, bios, size);
|
||||
pci_unmap_rom(adev->pdev, bios);
|
||||
return true;
|
||||
|
@ -135,6 +137,7 @@ static bool amdgpu_read_bios_from_rom(struct amdgpu_device *adev)
|
|||
DRM_ERROR("no memory to allocate for BIOS\n");
|
||||
return false;
|
||||
}
|
||||
adev->bios_size = len;
|
||||
|
||||
/* read complete BIOS */
|
||||
return amdgpu_asic_read_bios_from_rom(adev, adev->bios, len);
|
||||
|
@ -159,6 +162,7 @@ static bool amdgpu_read_platform_bios(struct amdgpu_device *adev)
|
|||
if (adev->bios == NULL) {
|
||||
return false;
|
||||
}
|
||||
adev->bios_size = size;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -273,6 +277,7 @@ static bool amdgpu_atrm_get_bios(struct amdgpu_device *adev)
|
|||
kfree(adev->bios);
|
||||
return false;
|
||||
}
|
||||
adev->bios_size = size;
|
||||
return true;
|
||||
}
|
||||
#else
|
||||
|
@ -334,6 +339,7 @@ static bool amdgpu_acpi_vfct_bios(struct amdgpu_device *adev)
|
|||
}
|
||||
|
||||
adev->bios = kmemdup(&vbios->VbiosContent, vhdr->ImageLength, GFP_KERNEL);
|
||||
adev->bios_size = vhdr->ImageLength;
|
||||
ret = !!adev->bios;
|
||||
|
||||
out_unmap:
|
||||
|
|
Loading…
Reference in New Issue