static int __devinit vain_plat_probe(struct platform_device *pdev) { struct vain_plat_info *info; struct resource *res, *mem; int err; info = kzalloc(sizeof(struct vain_plat_info), GFP_KERNEL); if (unlikely(!info)) { dev_err(&pdev->dev, "Could not allocate memory\n"); err = -ENOMEM; goto out; } res = platform_get_resource(pdev, IORESOURCE_MEM, 0); if (unlikely(!res)) { dev_err(&pdev->dev, "I/O address already in use\n"); err = -ENOENT; goto err_free; } mem = request_mem_region(res->start, resource_size(res), pdev->name); if (!mem) { err = -EBUSY; goto err_free; }