+++ /dev/null
-From 1c01103cb90197900beb534911de558d7a43d0b3 Mon Sep 17 00:00:00 2001
-From: Alex Deucher <alexander.deucher@amd.com>
-Date: Fri, 12 Jul 2013 15:56:02 -0400
-Subject: drm/radeon: align VM PTBs (Page Table Blocks) to 32K
-
-From: Alex Deucher <alexander.deucher@amd.com>
-
-commit 1c01103cb90197900beb534911de558d7a43d0b3 upstream.
-
-Covers requirements of all current asics.
-
-Reviewed-by: Christian König <christian.koenig@amd.com>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- drivers/gpu/drm/radeon/radeon.h | 5 +++++
- drivers/gpu/drm/radeon/radeon_gart.c | 12 ++++++------
- 2 files changed, 11 insertions(+), 6 deletions(-)
-
---- a/drivers/gpu/drm/radeon/radeon.h
-+++ b/drivers/gpu/drm/radeon/radeon.h
-@@ -695,6 +695,11 @@ struct radeon_ring {
- /* number of entries in page table */
- #define RADEON_VM_PTE_COUNT (1 << RADEON_VM_BLOCK_SIZE)
-
-+/* PTBs (Page Table Blocks) need to be aligned to 32K */
-+#define RADEON_VM_PTB_ALIGN_SIZE 32768
-+#define RADEON_VM_PTB_ALIGN_MASK (RADEON_VM_PTB_ALIGN_SIZE - 1)
-+#define RADEON_VM_PTB_ALIGN(a) (((a) + RADEON_VM_PTB_ALIGN_MASK) & ~RADEON_VM_PTB_ALIGN_MASK)
-+
- struct radeon_vm {
- struct list_head list;
- struct list_head va;
---- a/drivers/gpu/drm/radeon/radeon_gart.c
-+++ b/drivers/gpu/drm/radeon/radeon_gart.c
-@@ -466,8 +466,8 @@ int radeon_vm_manager_init(struct radeon
- size += rdev->vm_manager.max_pfn * 8;
- size *= 2;
- r = radeon_sa_bo_manager_init(rdev, &rdev->vm_manager.sa_manager,
-- RADEON_GPU_PAGE_ALIGN(size),
-- RADEON_GPU_PAGE_SIZE,
-+ RADEON_VM_PTB_ALIGN(size),
-+ RADEON_VM_PTB_ALIGN_SIZE,
- RADEON_GEM_DOMAIN_VRAM);
- if (r) {
- dev_err(rdev->dev, "failed to allocate vm bo (%dKB)\n",
-@@ -621,10 +621,10 @@ int radeon_vm_alloc_pt(struct radeon_dev
- }
-
- retry:
-- pd_size = RADEON_GPU_PAGE_ALIGN(radeon_vm_directory_size(rdev));
-+ pd_size = RADEON_VM_PTB_ALIGN(radeon_vm_directory_size(rdev));
- r = radeon_sa_bo_new(rdev, &rdev->vm_manager.sa_manager,
- &vm->page_directory, pd_size,
-- RADEON_GPU_PAGE_SIZE, false);
-+ RADEON_VM_PTB_ALIGN_SIZE, false);
- if (r == -ENOMEM) {
- r = radeon_vm_evict(rdev, vm);
- if (r)
-@@ -953,8 +953,8 @@ static int radeon_vm_update_pdes(struct
- retry:
- r = radeon_sa_bo_new(rdev, &rdev->vm_manager.sa_manager,
- &vm->page_tables[pt_idx],
-- RADEON_VM_PTE_COUNT * 8,
-- RADEON_GPU_PAGE_SIZE, false);
-+ RADEON_VM_PTB_ALIGN(RADEON_VM_PTE_COUNT * 8),
-+ RADEON_VM_PTB_ALIGN_SIZE, false);
-
- if (r == -ENOMEM) {
- r = radeon_vm_evict(rdev, vm);
+++ /dev/null
-From 3e3e53f86bee87bb14474213c879595605e35112 Mon Sep 17 00:00:00 2001
-From: Alex Deucher <alexander.deucher@amd.com>
-Date: Thu, 18 Jul 2013 13:11:56 -0400
-Subject: drm/radeon/vm: only align the pt base to 32k
-
-From: Alex Deucher <alexander.deucher@amd.com>
-
-commit 3e3e53f86bee87bb14474213c879595605e35112 upstream.
-
-fixes:
-https://bugs.freedesktop.org/show_bug.cgi?id=67016
-
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- drivers/gpu/drm/radeon/radeon_gart.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
---- a/drivers/gpu/drm/radeon/radeon_gart.c
-+++ b/drivers/gpu/drm/radeon/radeon_gart.c
-@@ -466,7 +466,7 @@ int radeon_vm_manager_init(struct radeon
- size += rdev->vm_manager.max_pfn * 8;
- size *= 2;
- r = radeon_sa_bo_manager_init(rdev, &rdev->vm_manager.sa_manager,
-- RADEON_VM_PTB_ALIGN(size),
-+ RADEON_GPU_PAGE_ALIGN(size),
- RADEON_VM_PTB_ALIGN_SIZE,
- RADEON_GEM_DOMAIN_VRAM);
- if (r) {
-@@ -621,7 +621,7 @@ int radeon_vm_alloc_pt(struct radeon_dev
- }
-
- retry:
-- pd_size = RADEON_VM_PTB_ALIGN(radeon_vm_directory_size(rdev));
-+ pd_size = radeon_vm_directory_size(rdev);
- r = radeon_sa_bo_new(rdev, &rdev->vm_manager.sa_manager,
- &vm->page_directory, pd_size,
- RADEON_VM_PTB_ALIGN_SIZE, false);
-@@ -953,8 +953,8 @@ static int radeon_vm_update_pdes(struct
- retry:
- r = radeon_sa_bo_new(rdev, &rdev->vm_manager.sa_manager,
- &vm->page_tables[pt_idx],
-- RADEON_VM_PTB_ALIGN(RADEON_VM_PTE_COUNT * 8),
-- RADEON_VM_PTB_ALIGN_SIZE, false);
-+ RADEON_VM_PTE_COUNT * 8,
-+ RADEON_GPU_PAGE_SIZE, false);
-
- if (r == -ENOMEM) {
- r = radeon_vm_evict(rdev, vm);