Skip to content

Commit

Permalink
ARM: dma-mapping: remove custom consistent dma region
Browse files Browse the repository at this point in the history
This patch changes dma-mapping subsystem to use generic vmalloc areas
for all consistent dma allocations. This increases the total size limit
of the consistent allocations and removes platform hacks and a lot of
duplicated code.

Atomic allocations are served from special pool preallocated on boot,
because vmalloc areas cannot be reliably created in atomic context.

Signed-off-by: Marek Szyprowski <[email protected]>
Reviewed-by: Kyungmin Park <[email protected]>
Reviewed-by: Minchan Kim <[email protected]>
  • Loading branch information
mszyprow committed Jul 30, 2012
1 parent 5e6cafc commit e9da6e9
Show file tree
Hide file tree
Showing 6 changed files with 181 additions and 323 deletions.
2 changes: 1 addition & 1 deletion Documentation/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -526,7 +526,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted.

coherent_pool=nn[KMG] [ARM,KNL]
Sets the size of memory pool for coherent, atomic dma
allocations if Contiguous Memory Allocator (CMA) is used.
allocations, by default set to 256K.

code_bytes [X86] How many bytes of object code to print
in an oops report.
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/include/asm/dma-mapping.h
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ static inline int dma_mmap_writecombine(struct device *dev, struct vm_area_struc
* DMA region above it's default value of 2MB. It must be called before the
* memory allocator is initialised, i.e. before any core_initcall.
*/
extern void __init init_consistent_dma_size(unsigned long size);
static inline void init_consistent_dma_size(unsigned long size) { }

/*
* For SA-1111, IXP425, and ADI systems the dma-mapping functions are "magic"
Expand Down
Loading

0 comments on commit e9da6e9

Please sign in to comment.