for_each_child_of_node(root, child) {
pwr_ctr = kmalloc(sizeof(struct rk_disp_pwr_ctr_list),
GFP_KERNEL);
+ if (!pwr_ctr)
+ return -ENOMEM;
strcpy(pwr_ctr->pwr_ctr.name, child->name);
if (!of_property_read_u32(child, "rockchip,power_type", &val)) {
if (val == GPIO) {
fb_par->ion_hdl);
dev_drv->win[win_id]->area[0].ion_hdl =
fb_par->ion_hdl;
- if (dev_drv->iommu_enabled && dev_drv->mmu_dev)
+ if (dev_drv->mmu_dev)
ret = ion_map_iommu(dev_drv->dev,
rk_fb->ion_client,
fb_par->ion_hdl,
fbi = framebuffer_alloc(0, &fb_pdev->dev);
if (!fbi) {
dev_err(&fb_pdev->dev, "fb framebuffer_alloc fail!");
- ret = -ENOMEM;
+ return -ENOMEM;
}
fb_par = devm_kzalloc(&fb_pdev->dev, sizeof(struct rk_fb_par),
GFP_KERNEL);
nr_pages = size >> PAGE_SHIFT;
pages = kzalloc(sizeof(struct page) * nr_pages,
GFP_KERNEL);
+ if (!pages)
+ return -ENOMEM;
while (i < nr_pages) {
pages[i] = phys_to_page(start);
start += PAGE_SIZE;
pr_err("failed to vmap phy addr 0x%lx\n",
(long)(uboot_logo_base +
uboot_logo_offset));
+ kfree(pages);
return -1;
}
}
kfree(pages);
vunmap(vaddr);
- if (dev_drv->uboot_logo &&
- (width != xact || height != yact)) {
+ if (width != xact || height != yact) {
pr_err("can't support uboot kernel logo use different size [%dx%d] != [%dx%d]\n",
xact, yact, width, height);
return 0;
nr_pages = PAGE_ALIGN(logo_len + align) >> PAGE_SHIFT;
pages = kzalloc(sizeof(struct page) * nr_pages,
GFP_KERNEL);
+ if (!pages)
+ return -ENOMEM;
while (i < nr_pages) {
pages[i] = phys_to_page(start);
start += PAGE_SIZE;
if (!vaddr) {
pr_err("failed to vmap phy addr 0x%x\n",
start);
+ kfree(pages);
return -1;
}