DRM_ERROR("Cannot get meminfo for handle 0x%x\n",
(IMG_UINT32)hKernelMemInfo);
- return NULL;
+ return ERR_PTR(ret);
}
DRM_DEBUG("Got Kernel MemInfo for handle %p\n", hKernelMemInfo);
/* JB: TODO not drop, make smarter */
size = psKernelMemInfo->ui32AllocSize;
if (size < r->height * r->pitch)
- return NULL;
+ return ERR_PTR(-ENOSPC);
/* JB: TODO not drop, refcount buffer */
/* return psb_framebuffer_create(dev, r, bo); */
fb = psb_framebuffer_create(dev, r, (void *)psKernelMemInfo);
if (!fb) {
DRM_ERROR("failed to allocate fb.\n");
- return NULL;
+ return ERR_PTR(-ENOMEM);
}
psbfb = to_psb_fb(fb);
if (ret) {
DRM_ERROR("map meminfo for 0x%x failed\n",
(IMG_UINT32)hKernelMemInfo);
- return NULL;
+ return ERR_PTR(ret);
}
psbfb->offset = (offset << PAGE_SHIFT);
} else {
}
info = framebuffer_alloc(0, &dev->pdev->dev);
if (!info)
- return NULL;
+ return ERR_PTR(-ENOMEM);
strcpy(info->fix.id, "psbfb");