| .. | .. |
|---|
| 1711 | 1711 | } \ |
|---|
| 1712 | 1712 | module_exit(__driver##_exit); |
|---|
| 1713 | 1713 | |
|---|
| 1714 | | -#define module_driver1(__driver, __register, __unregister, ...) \ |
|---|
| 1715 | | -static int __init __driver##_init(void) \ |
|---|
| 1716 | | -{ \ |
|---|
| 1717 | | - return __register(&(__driver) , ##__VA_ARGS__); \ |
|---|
| 1718 | | -} \ |
|---|
| 1719 | | -arch_initcall(__driver##_init); \ |
|---|
| 1720 | | -static void __exit __driver##_exit(void) \ |
|---|
| 1721 | | -{ \ |
|---|
| 1722 | | - __unregister(&(__driver) , ##__VA_ARGS__); \ |
|---|
| 1723 | | -} \ |
|---|
| 1724 | | -module_exit(__driver##_exit); |
|---|
| 1725 | 1714 | /** |
|---|
| 1726 | 1715 | * builtin_driver() - Helper macro for drivers that don't do anything |
|---|
| 1727 | 1716 | * special in init and have no exit. This eliminates some boilerplate. |
|---|