Merge tag 'fbdev-updates-for-3.7' of git://github.com/schandinat/linux-2.6
[cascardo/linux.git] / drivers / video / ps3fb.c
index 4e292f2..0b340d6 100644 (file)
@@ -1034,6 +1034,7 @@ static int __devinit ps3fb_probe(struct ps3_system_bus_device *dev)
        if (status) {
                dev_err(&dev->core, "%s: lv1_gpu_memory_allocate failed: %d\n",
                        __func__, status);
+               retval = -ENOMEM;
                goto err_close_device;
        }
        dev_dbg(&dev->core, "ddr:lpar:0x%llx\n", ddr_lpar);
@@ -1046,6 +1047,7 @@ static int __devinit ps3fb_probe(struct ps3_system_bus_device *dev)
                dev_err(&dev->core,
                        "%s: lv1_gpu_context_allocate failed: %d\n", __func__,
                        status);
+               retval = -ENOMEM;
                goto err_gpu_memory_free;
        }
 
@@ -1053,6 +1055,7 @@ static int __devinit ps3fb_probe(struct ps3_system_bus_device *dev)
        dinfo = (void __force *)ioremap(lpar_driver_info, 128 * 1024);
        if (!dinfo) {
                dev_err(&dev->core, "%s: ioremap failed\n", __func__);
+               retval = -ENOMEM;
                goto err_gpu_context_free;
        }
 
@@ -1121,8 +1124,10 @@ static int __devinit ps3fb_probe(struct ps3_system_bus_device *dev)
        }
 
        info = framebuffer_alloc(sizeof(struct ps3fb_par), &dev->core);
-       if (!info)
+       if (!info) {
+               retval = -ENOMEM;
                goto err_context_fb_close;
+       }
 
        par = info->par;
        par->mode_id = ~ps3fb_mode;     /* != ps3fb_mode, to trigger change */