mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
msm: kgsl: Use phys_addr_t where appropriate
LPAE support on MSM targets requires that the option ARCH_DMA_ADDR_T_64BIT is selected during compilation time. This requires that DMA clients use the phys_addr_t type when calling generic DMA APIs. Change-Id: I7ed24a7ca313da236ec944175e64b558459c0222 Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org> Signed-off-by: Carter Cooper <ccooper@codeaurora.org>
This commit is contained in:
parent
1893600b3c
commit
5e4140c6ba
4 changed files with 8 additions and 9 deletions
|
@ -162,7 +162,7 @@ struct kgsl_memdesc {
|
|||
void *hostptr; /* kernel virtual address */
|
||||
unsigned long useraddr; /* userspace address */
|
||||
unsigned int gpuaddr;
|
||||
unsigned int physaddr;
|
||||
phys_addr_t physaddr;
|
||||
unsigned int size;
|
||||
unsigned int priv; /* Internal flags and settings */
|
||||
struct scatterlist *sg;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (c) 2011-2012, The Linux Foundation. All rights reserved.
|
||||
/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
|
@ -161,7 +161,7 @@ err:
|
|||
}
|
||||
|
||||
static void *
|
||||
_kgsl_ptpool_get_entry(struct kgsl_ptpool *pool, unsigned int *physaddr)
|
||||
_kgsl_ptpool_get_entry(struct kgsl_ptpool *pool, phys_addr_t *physaddr)
|
||||
{
|
||||
struct kgsl_ptpool_chunk *chunk;
|
||||
|
||||
|
@ -227,7 +227,7 @@ kgsl_ptpool_add(struct kgsl_ptpool *pool, int count)
|
|||
*/
|
||||
|
||||
static void *kgsl_ptpool_alloc(struct kgsl_ptpool *pool,
|
||||
unsigned int *physaddr)
|
||||
phys_addr_t *physaddr)
|
||||
{
|
||||
void *addr = NULL;
|
||||
int ret;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (c) 2011-2012, The Linux Foundation. All rights reserved.
|
||||
/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
|
@ -57,7 +57,7 @@ struct kgsl_ptpool_chunk {
|
|||
int dynamic;
|
||||
|
||||
void *data;
|
||||
unsigned int phys;
|
||||
phys_addr_t phys;
|
||||
|
||||
unsigned long *bitmap;
|
||||
struct list_head list;
|
||||
|
|
|
@ -864,9 +864,8 @@ int kgsl_mmu_map_global(struct kgsl_pagetable *pagetable,
|
|||
|
||||
/*global mappings must have the same gpu address in all pagetables*/
|
||||
if (gpuaddr && gpuaddr != memdesc->gpuaddr) {
|
||||
KGSL_CORE_ERR("pt %p addr mismatch phys 0x%08x"
|
||||
"gpu 0x%0x 0x%08x", pagetable, memdesc->physaddr,
|
||||
gpuaddr, memdesc->gpuaddr);
|
||||
KGSL_CORE_ERR("pt %p addr mismatch phys %pa gpu 0x%0x 0x%08x",
|
||||
pagetable, &memdesc->physaddr, gpuaddr, memdesc->gpuaddr);
|
||||
goto error_unmap;
|
||||
}
|
||||
return result;
|
||||
|
|
Loading…
Reference in a new issue