summaryrefslogtreecommitdiff
path: root/kernel-devel/module-basics/vain_pci/vain_pci_4.c
blob: 518cb96fbc4ee34e600fd87751ddd34f1a95c61f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
err_rel_regs:
	pci_release_regions(pdev);
err_disable_device:
	pci_disable_device(pdev);
err_free:
	kfree(info);

	return ret;
}

static void vain_pci_remove(struct pci_dev *pdev)
{
	struct vain_pci_info *info = pci_get_drvdata(pdev);

	iounmap(info->base);
	pci_release_regions(pdev);
	pci_disable_device(pdev);
	pci_set_drvdata(pdev, NULL);

	kfree (info);
}