Commit 43251981 authored by Christian König's avatar Christian König Committed by Alex Deucher
Browse files

drm/amdgpu: remove GART page addr array



Not needed any more.

Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 8358dcee
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -612,7 +612,6 @@ struct amdgpu_gart {
	unsigned			num_cpu_pages;
	unsigned			table_size;
	struct page			**pages;
	dma_addr_t			*pages_addr;
	bool				ready;
	const struct amdgpu_gart_funcs *gart_funcs;
};
+4 −18
Original line number Diff line number Diff line
@@ -240,8 +240,7 @@ void amdgpu_gart_unbind(struct amdgpu_device *adev, unsigned offset,
	for (i = 0; i < pages; i++, p++) {
		if (adev->gart.pages[p]) {
			adev->gart.pages[p] = NULL;
			adev->gart.pages_addr[p] = adev->dummy_page.addr;
			page_base = adev->gart.pages_addr[p];
			page_base = adev->dummy_page.addr;
			if (!adev->gart.ptr)
				continue;

@@ -287,10 +286,9 @@ int amdgpu_gart_bind(struct amdgpu_device *adev, unsigned offset,
	p = t / (PAGE_SIZE / AMDGPU_GPU_PAGE_SIZE);

	for (i = 0; i < pages; i++, p++) {
		adev->gart.pages_addr[p] = dma_addr[i];
		adev->gart.pages[p] = pagelist[i];
		if (adev->gart.ptr) {
			page_base = adev->gart.pages_addr[p];
			page_base = dma_addr[i];
			for (j = 0; j < (PAGE_SIZE / AMDGPU_GPU_PAGE_SIZE); j++, t++) {
				amdgpu_gart_set_pte_pde(adev, adev->gart.ptr, t, page_base, flags);
				page_base += AMDGPU_GPU_PAGE_SIZE;
@@ -312,7 +310,7 @@ int amdgpu_gart_bind(struct amdgpu_device *adev, unsigned offset,
 */
int amdgpu_gart_init(struct amdgpu_device *adev)
{
	int r, i;
	int r;

	if (adev->gart.pages) {
		return 0;
@@ -336,16 +334,6 @@ int amdgpu_gart_init(struct amdgpu_device *adev)
		amdgpu_gart_fini(adev);
		return -ENOMEM;
	}
	adev->gart.pages_addr = vzalloc(sizeof(dma_addr_t) *
					adev->gart.num_cpu_pages);
	if (adev->gart.pages_addr == NULL) {
		amdgpu_gart_fini(adev);
		return -ENOMEM;
	}
	/* set GART entry to point to the dummy page by default */
	for (i = 0; i < adev->gart.num_cpu_pages; i++) {
		adev->gart.pages_addr[i] = adev->dummy_page.addr;
	}
	return 0;
}

@@ -358,15 +346,13 @@ int amdgpu_gart_init(struct amdgpu_device *adev)
 */
void amdgpu_gart_fini(struct amdgpu_device *adev)
{
	if (adev->gart.pages && adev->gart.pages_addr && adev->gart.ready) {
	if (adev->gart.pages && adev->gart.ready) {
		/* unbind pages */
		amdgpu_gart_unbind(adev, 0, adev->gart.num_cpu_pages);
	}
	adev->gart.ready = false;
	vfree(adev->gart.pages);
	vfree(adev->gart.pages_addr);
	adev->gart.pages = NULL;
	adev->gart.pages_addr = NULL;

	amdgpu_dummy_page_fini(adev);
}