OSDN Git Service

OMAPFB: use dma_alloc_attrs to allocate memory
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 9 Nov 2012 13:52:20 +0000 (15:52 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Tue, 13 Nov 2012 07:52:24 +0000 (09:52 +0200)
commit0049fb2603b7afb1080776ee691dfa5a3d282357
tree87a13be03223d34213fc9f213e0a480b365a4dd0
parent3f5ba55e8f3698432c65b0ef77e83d22d5f64a79
OMAPFB: use dma_alloc_attrs to allocate memory

Use dma_alloc_attrs to allocate memory instead of omap specific vram
allocator. After this we can remove the omap vram allocator.

There are some downsides to this change:

1) dma_alloc_attrs doesn't let us allocate at certain physical address.
However, this should not be a problem as this feature of vram allocator
is only used when reserving the framebuffer that was initialized by the
bootloader, and we don't currently support "passing" a framebuffer from
the bootloader to the kernel anyway.

2) dma_alloc_attrs, as of now, always ioremaps the allocated area, and
we don't need the ioremap when using VRFB. This patch uses
DMA_ATTR_NO_KERNEL_MAPPING for the allocation, but the flag is currently
not operational.

3) OMAPFB_GET_VRAM_INFO ioctl cannot return real values anymore. I
changed the ioctl to return 64M for all the values, which, I hope, the
applications will interpret as "there's enough vram".

4) "vram" kernel parameter to define how much ram to reserve for video
use no longer works. The user needs to enable CMA and use "cma"
parameter.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Documentation/arm/OMAP/DSS
drivers/video/omap2/omapfb/Kconfig
drivers/video/omap2/omapfb/omapfb-ioctl.c
drivers/video/omap2/omapfb/omapfb-main.c
drivers/video/omap2/omapfb/omapfb.h