neterion: s2io: Use module_pci_driver
authorVaishali Thakkar <vthakkar1994@gmail.com>
Thu, 9 Jul 2015 04:55:39 +0000 (10:25 +0530)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Jul 2015 07:19:00 +0000 (00:19 -0700)
commit910be1abbec9cac102fde8ab6dd68a9b410ca441
tree532213d0c28ad9d9a8ef84347c4cc8b8494d030b
parent71d3c0b49a72fd092b7490b923d1721ceced8170
neterion: s2io: Use module_pci_driver

Use module_pci_driver for drivers whose init and exit functions
only register and unregister, respectively.

A simplified version of the Coccinelle semantic patch that performs
this transformation is as follows:

@a@
identifier f, x;
@@
-static f(...) { return pci_register_driver(&x); }

@b depends on a@
identifier e, a.x;
statement S;
@@
-static e(...) {
-pci_unregister_driver(&x);
-DBG_PRINT(INIT_DBG,"S");
- }

@c depends on a && b@
identifier a.f;
declarer name module_init;
@@
-module_init(f);

@d depends on a && b && c@
identifier b.e, a.x;
declarer name module_exit;
declarer name module_pci_driver;
@@
-module_exit(e);
+module_pci_driver(x);

Signed-off-by: Vaishali Thakkar <vthakkar1994@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/neterion/s2io.c
drivers/net/ethernet/neterion/s2io.h