fbdev: allow passing more than one aperture for handoff
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / video / efifb.c
index 581d2dbf675a0061722db955a66d3fa402166db8..3b986567111a4fbdc85de35ee1016d9fe645e98e 100644 (file)
@@ -165,7 +165,7 @@ static void efifb_destroy(struct fb_info *info)
 {
        if (info->screen_base)
                iounmap(info->screen_base);
-       release_mem_region(info->aperture_base, info->aperture_size);
+       release_mem_region(info->apertures->ranges[0].base, info->apertures->ranges[0].size);
        framebuffer_release(info);
 }
 
@@ -289,8 +289,13 @@ static int __devinit efifb_probe(struct platform_device *dev)
        info->pseudo_palette = info->par;
        info->par = NULL;
 
-       info->aperture_base = efifb_fix.smem_start;
-       info->aperture_size = size_remap;
+       info->apertures = alloc_apertures(1);
+       if (!info->apertures) {
+               err = -ENOMEM;
+               goto err_release_fb;
+       }
+       info->apertures->ranges[0].base = efifb_fix.smem_start;
+       info->apertures->ranges[0].size = size_remap;
 
        info->screen_base = ioremap(efifb_fix.smem_start, efifb_fix.smem_len);
        if (!info->screen_base) {