summaryrefslogtreecommitdiff
path: root/kernel-devel/module-basics/vain_plat/vain_plat_3.c
blob: 7fb0fc2436d83d030f4aa06181f8d9a974b1ca8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
	mem = request_mem_region(res->start, resource_size(res),
				 pdev->name);
	if (!mem) {
		err = -EBUSY;
		goto err_free;
	}

	info->base = ioremap(res->start, resource_size(res));
	if (!info->base) {
		dev_err(&pdev->dev, "Unable to map card MMIO\n");
		err = -ENODEV;
		goto err_ioremap;
	}

	platform_set_drvdata(pdev, info);

	return 0;

err_ioremap:
	release_mem_region(res->start, resource_size(res));
err_free:
	kfree(info);
out:
	return err;
}