diff options
author | Vitaly Andrianov <vitalya@ti.com> | 2012-12-05 18:29:25 +0400 |
---|---|---|
committer | Marek Szyprowski <m.szyprowski@samsung.com> | 2012-12-11 12:28:09 +0400 |
commit | 4009793e15d44469da1547a46ab129cc08ffa503 (patch) | |
tree | 7d5e89b42669f647278d21284517f3256d051259 /include/linux/dma-contiguous.h | |
parent | 387870f2d6d679746020fa8e25ef786ff338dc98 (diff) | |
download | linux-4009793e15d44469da1547a46ab129cc08ffa503.tar.xz |
drivers: cma: represent physical addresses as phys_addr_t
This commit changes the CMA early initialization code to use phys_addr_t
for representing physical addresses instead of unsigned long.
Without this change, among other things, dma_declare_contiguous() simply
discards any memory regions whose address is not representable as unsigned
long.
This is a problem on 32-bit PAE machines where unsigned long is 32-bit
but physical address space is larger.
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
Signed-off-by: Cyril Chemparathy <cyril@ti.com>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Diffstat (limited to 'include/linux/dma-contiguous.h')
-rw-r--r-- | include/linux/dma-contiguous.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/dma-contiguous.h b/include/linux/dma-contiguous.h index 2f303e4b7ed3..01b5c84be828 100644 --- a/include/linux/dma-contiguous.h +++ b/include/linux/dma-contiguous.h @@ -68,7 +68,7 @@ struct device; extern struct cma *dma_contiguous_default_area; void dma_contiguous_reserve(phys_addr_t addr_limit); -int dma_declare_contiguous(struct device *dev, unsigned long size, +int dma_declare_contiguous(struct device *dev, phys_addr_t size, phys_addr_t base, phys_addr_t limit); struct page *dma_alloc_from_contiguous(struct device *dev, int count, @@ -83,7 +83,7 @@ bool dma_release_from_contiguous(struct device *dev, struct page *pages, static inline void dma_contiguous_reserve(phys_addr_t limit) { } static inline -int dma_declare_contiguous(struct device *dev, unsigned long size, +int dma_declare_contiguous(struct device *dev, phys_addr_t size, phys_addr_t base, phys_addr_t limit) { return -ENOSYS; |