diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/0006-drm-amdgpu-add-read_bios_from_rom-callback-for-VI-pa.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/0006-drm-amdgpu-add-read_bios_from_rom-callback-for-VI-pa.patch | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/common/recipes-kernel/linux/files/0006-drm-amdgpu-add-read_bios_from_rom-callback-for-VI-pa.patch b/common/recipes-kernel/linux/files/0006-drm-amdgpu-add-read_bios_from_rom-callback-for-VI-pa.patch deleted file mode 100644 index 9d6a83de..00000000 --- a/common/recipes-kernel/linux/files/0006-drm-amdgpu-add-read_bios_from_rom-callback-for-VI-pa.patch +++ /dev/null @@ -1,73 +0,0 @@ -From b526555fa7a53776ff1925bd0bf9cef664134750 Mon Sep 17 00:00:00 2001 -From: Alex Deucher <alexander.deucher@amd.com> -Date: Tue, 24 Nov 2015 10:37:54 -0500 -Subject: [PATCH 0006/1110] drm/amdgpu: add read_bios_from_rom callback for VI - parts -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Read the vbios image directly from the rom. - -Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com> -Reviewed-by: Christian König <christian.koenig@amd.com> -Reviewed-by: Monk Liu <monk.liu@amd.com> -Signed-off-by: Alex Deucher <alexander.deucher@amd.com> ---- - drivers/gpu/drm/amd/amdgpu/vi.c | 33 +++++++++++++++++++++++++++++++++ - 1 file changed, 33 insertions(+) - -diff --git a/drivers/gpu/drm/amd/amdgpu/vi.c b/drivers/gpu/drm/amd/amdgpu/vi.c -index 3e9cbe3..0cb6f31 100644 ---- a/drivers/gpu/drm/amd/amdgpu/vi.c -+++ b/drivers/gpu/drm/amd/amdgpu/vi.c -@@ -377,6 +377,38 @@ static bool vi_read_disabled_bios(struct amdgpu_device *adev) - WREG32_SMC(ixROM_CNTL, rom_cntl); - return r; - } -+ -+static bool vi_read_bios_from_rom(struct amdgpu_device *adev, -+ u8 *bios, u32 length_bytes) -+{ -+ u32 *dw_ptr; -+ unsigned long flags; -+ u32 i, length_dw; -+ -+ if (bios == NULL) -+ return false; -+ if (length_bytes == 0) -+ return false; -+ /* APU vbios image is part of sbios image */ -+ if (adev->flags & AMD_IS_APU) -+ return false; -+ -+ dw_ptr = (u32 *)bios; -+ length_dw = ALIGN(length_bytes, 4) / 4; -+ /* take the smc lock since we are using the smc index */ -+ spin_lock_irqsave(&adev->smc_idx_lock, flags); -+ /* set rom index to 0 */ -+ WREG32(mmSMC_IND_INDEX_0, ixROM_INDEX); -+ WREG32(mmSMC_IND_DATA_0, 0); -+ /* set index to data for continous read */ -+ WREG32(mmSMC_IND_INDEX_0, ixROM_DATA); -+ for (i = 0; i < length_dw; i++) -+ dw_ptr[i] = RREG32(mmSMC_IND_DATA_0); -+ spin_unlock_irqrestore(&adev->smc_idx_lock, flags); -+ -+ return true; -+} -+ - static struct amdgpu_allowed_register_entry tonga_allowed_read_registers[] = { - {mmGB_MACROTILE_MODE7, true}, - }; -@@ -1369,6 +1401,7 @@ static uint32_t vi_get_rev_id(struct amdgpu_device *adev) - static const struct amdgpu_asic_funcs vi_asic_funcs = - { - .read_disabled_bios = &vi_read_disabled_bios, -+ .read_bios_from_rom = &vi_read_bios_from_rom, - .read_register = &vi_read_register, - .reset = &vi_asic_reset, - .set_vga_state = &vi_vga_set_state, --- -2.7.4 - |