All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH libdrm 1/3] amdgpu: fix 32bit VA manager max address
@ 2017-12-18 13:46 Christian König
       [not found] ` <20171218134636.21405-1-christian.koenig-5C7GfCeVMHo@public.gmane.org>
  0 siblings, 1 reply; 3+ messages in thread
From: Christian König @ 2017-12-18 13:46 UTC (permalink / raw)
  To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

The range is exclusive not inclusive.

Signed-off-by: Christian König <christian.koenig@amd.com>
---
 amdgpu/amdgpu_device.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/amdgpu/amdgpu_device.c b/amdgpu/amdgpu_device.c
index eb4b2745..d7077184 100644
--- a/amdgpu/amdgpu_device.c
+++ b/amdgpu/amdgpu_device.c
@@ -265,7 +265,7 @@ int amdgpu_device_initialize(int fd,
 	}
 
 	start = dev->dev_info.virtual_address_offset;
-	max = MIN2(dev->dev_info.virtual_address_max, 0xffffffff);
+	max = MIN2(dev->dev_info.virtual_address_max, 0x100000000ULL);
 	amdgpu_vamgr_init(&dev->vamgr_32, start, max,
 			  dev->dev_info.virtual_address_alignment);
 
-- 
2.11.0

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH libdrm 2/3] headers: sync up amdgpu_drm.h with drm-next
       [not found] ` <20171218134636.21405-1-christian.koenig-5C7GfCeVMHo@public.gmane.org>
@ 2017-12-18 13:46   ` Christian König
  2017-12-18 13:46   ` [PATCH libdrm 3/3] amdgpu: use the high VA range if possible Christian König
  1 sibling, 0 replies; 3+ messages in thread
From: Christian König @ 2017-12-18 13:46 UTC (permalink / raw)
  To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

Sync up amdgpu changes from drm-next.

Signed-off-by: Christian König <christian.koenig@amd.com>
---
 include/drm/amdgpu_drm.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/include/drm/amdgpu_drm.h b/include/drm/amdgpu_drm.h
index 919248fb..a023b476 100644
--- a/include/drm/amdgpu_drm.h
+++ b/include/drm/amdgpu_drm.h
@@ -869,6 +869,10 @@ struct drm_amdgpu_info_device {
 	__u32 _pad1;
 	/* always on cu bitmap */
 	__u32 cu_ao_bitmap[4][4];
+	/** Starting high virtual address for UMDs. */
+	__u64 high_va_offset;
+	/** The maximum high virtual address */
+	__u64 high_va_max;
 };
 
 struct drm_amdgpu_info_hw_ip {
-- 
2.11.0

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH libdrm 3/3] amdgpu: use the high VA range if possible
       [not found] ` <20171218134636.21405-1-christian.koenig-5C7GfCeVMHo@public.gmane.org>
  2017-12-18 13:46   ` [PATCH libdrm 2/3] headers: sync up amdgpu_drm.h with drm-next Christian König
@ 2017-12-18 13:46   ` Christian König
  1 sibling, 0 replies; 3+ messages in thread
From: Christian König @ 2017-12-18 13:46 UTC (permalink / raw)
  To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

Retire the 32bit range and the low range on Vega10. AFAIK THe 32bit
range was never used by any open source component and this frees up
everything below 0xffff800000000000 for HMM.

Signed-off-by: Christian König <christian.koenig@amd.com>
---
 amdgpu/amdgpu_device.c | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/amdgpu/amdgpu_device.c b/amdgpu/amdgpu_device.c
index d7077184..5ccef300 100644
--- a/amdgpu/amdgpu_device.c
+++ b/amdgpu/amdgpu_device.c
@@ -264,13 +264,20 @@ int amdgpu_device_initialize(int fd,
 		goto cleanup;
 	}
 
-	start = dev->dev_info.virtual_address_offset;
-	max = MIN2(dev->dev_info.virtual_address_max, 0x100000000ULL);
-	amdgpu_vamgr_init(&dev->vamgr_32, start, max,
-			  dev->dev_info.virtual_address_alignment);
-
-	start = MAX2(dev->dev_info.virtual_address_offset, 0x100000000ULL);
-	max = MAX2(dev->dev_info.virtual_address_max, 0x100000000ULL);
+	if (dev->dev_info.high_va_offset && dev->dev_info.high_va_max) {
+		amdgpu_vamgr_init(&dev->vamgr_32, 0, 0, 0);
+
+		start = dev->dev_info.high_va_offset;
+		max = dev->dev_info.high_va_max;
+	} else {
+		start = dev->dev_info.virtual_address_offset;
+		max = MIN2(dev->dev_info.virtual_address_max, 0x100000000ULL);
+		amdgpu_vamgr_init(&dev->vamgr_32, start, max,
+				  dev->dev_info.virtual_address_alignment);
+
+		start = MAX2(dev->dev_info.virtual_address_offset, 0x100000000ULL);
+		max = MAX2(dev->dev_info.virtual_address_max, 0x100000000ULL);
+	}
 	amdgpu_vamgr_init(&dev->vamgr, start, max,
 			  dev->dev_info.virtual_address_alignment);
 
-- 
2.11.0

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-12-18 13:46 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-18 13:46 [PATCH libdrm 1/3] amdgpu: fix 32bit VA manager max address Christian König
     [not found] ` <20171218134636.21405-1-christian.koenig-5C7GfCeVMHo@public.gmane.org>
2017-12-18 13:46   ` [PATCH libdrm 2/3] headers: sync up amdgpu_drm.h with drm-next Christian König
2017-12-18 13:46   ` [PATCH libdrm 3/3] amdgpu: use the high VA range if possible Christian König

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.