summaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/imx-ipu-fb.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/video/imx-ipu-fb.c b/drivers/video/imx-ipu-fb.c
index 4b9aae75fb..18a70521de 100644
--- a/drivers/video/imx-ipu-fb.c
+++ b/drivers/video/imx-ipu-fb.c
@@ -964,6 +964,8 @@ static int sdc_fb_register_overlay(struct ipu_fb_info *fbi, void *fb)
if (!overlay->screen_base)
return -ENOMEM;
+ overlay->screen_size = pdata->framebuffer_ovl_size;
+
sdc_enable_channel(fbi, overlay->screen_base, IDMAC_SDC_1);
ret = register_framebuffer(&fbi->overlay);
@@ -1011,14 +1013,17 @@ static int imxfb_probe(struct device_d *dev)
dev_info(dev, "i.MX Framebuffer driver\n");
+ fbi->info.screen_size = pdata->framebuffer_size;
+ if (!fbi->info.screen_size)
+ fbi->info.screen_size = info->xres * info->yres *
+ (info->bits_per_pixel >> 3);
/*
* Use a given frambuffer or reserve some
* memory for screen usage
*/
fbi->info.screen_base = pdata->framebuffer;
if (fbi->info.screen_base == NULL) {
- fbi->info.screen_base = malloc(info->xres * info->yres *
- (info->bits_per_pixel >> 3));
+ fbi->info.screen_base = malloc(fbi->info.screen_size);
if (!fbi->info.screen_base)
return -ENOMEM;
}