summaryrefslogtreecommitdiff
path: root/drivers/video/mcde/mcde_fb.c
diff options
context:
space:
mode:
authorPhilippe Langlais <philippe.langlais@linaro.org>2011-05-05 11:28:37 +0200
committerRobert Marklund <robert.marklund@stericsson.com>2011-10-05 11:18:20 +0200
commit50df6b86700dd03c2491c9ac0e453aa2c19a18a1 (patch)
tree49cdf9caffa3fc37590c1c42022938278f8a0166 /drivers/video/mcde/mcde_fb.c
parent030052f4dcc8ba255fbd4f81648c7b6db797d296 (diff)
HWMEM: Update API
Perform queued hwmem API changes. One commit to ease dependency handling. Depends-On: I13f249cf5f51f9f138171e8d6f59e1d5d2f72de1, I31030bcfda7cf76d15402c2137576da4f3fb2761, I2dc7e6aa5686492550b5164e50c06ed750ac9e16, Ia12bbb9f378c331cfb9b1376dedb3b7b65f56429, Ibc3404df4876971d8b69272c63120e2fe3bb2787 ST-Ericsson ID: AP 327001 ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10068 Change-Id: I9a45ad54a0cc8a5cdb1e3b9038ad50aeacb3f9c3 Signed-off-by: Johan Mossberg <johan.xx.mossberg@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/17518 Reviewed-by: Robert FEKETE <robert.fekete@stericsson.com> Conflicts: drivers/misc/dispdev/dispdev.c
Diffstat (limited to 'drivers/video/mcde/mcde_fb.c')
-rw-r--r--drivers/video/mcde/mcde_fb.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/video/mcde/mcde_fb.c b/drivers/video/mcde/mcde_fb.c
index ae21f46b0a1..2390bd742df 100644
--- a/drivers/video/mcde/mcde_fb.c
+++ b/drivers/video/mcde/mcde_fb.c
@@ -209,9 +209,10 @@ static int init_var_fmt(struct fb_var_screeninfo *var,
static int reallocate_fb_mem(struct fb_info *fbi, u32 size)
{
struct mcde_fb *mfb = to_mcde_fb(fbi);
- dma_addr_t paddr;
void *vaddr;
struct hwmem_alloc *alloc;
+ struct hwmem_mem_chunk mem_chunk;
+ size_t num_mem_chunks = 1;
int name;
size = PAGE_ALIGN(size);
@@ -228,7 +229,7 @@ static int reallocate_fb_mem(struct fb_info *fbi, u32 size)
MCDE_FB_VYRES_MAX;
#endif
- alloc = hwmem_alloc(size, HWMEM_ALLOC_BUFFERED,
+ alloc = hwmem_alloc(size, HWMEM_ALLOC_HINT_WRITE_COMBINE,
(HWMEM_ACCESS_READ | HWMEM_ACCESS_WRITE |
HWMEM_ACCESS_IMPORT),
HWMEM_MEM_CONTIGUOUS_SYS);
@@ -247,7 +248,7 @@ static int reallocate_fb_mem(struct fb_info *fbi, u32 size)
hwmem_release(mfb->alloc);
}
- (void)hwmem_pin(alloc, &paddr, NULL);
+ (void)hwmem_pin(alloc, &mem_chunk, &num_mem_chunks);
vaddr = hwmem_kmap(alloc);
if (vaddr == NULL) {
@@ -260,7 +261,7 @@ static int reallocate_fb_mem(struct fb_info *fbi, u32 size)
mfb->alloc_name = name;
fbi->screen_base = vaddr;
- fbi->fix.smem_start = paddr;
+ fbi->fix.smem_start = mem_chunk.paddr;
#ifdef CONFIG_MCDE_FB_AVOID_REALLOC
size = old_size;