| .. | .. |
|---|
| 272 | 272 | } \ |
|---|
| 273 | 273 | module_exit(__driver##_exit); |
|---|
| 274 | 274 | |
|---|
| 275 | | - |
|---|
| 275 | +#define module_driver1(__driver, __register, __unregister, ...) \ |
|---|
| 276 | +static int __init __driver##_init(void) \ |
|---|
| 277 | +{ \ |
|---|
| 278 | + return __register(&(__driver) , ##__VA_ARGS__); \ |
|---|
| 279 | +} \ |
|---|
| 280 | +arch_initcall(__driver##_init); \ |
|---|
| 281 | +static void __exit __driver##_exit(void) \ |
|---|
| 282 | +{ \ |
|---|
| 283 | + __unregister(&(__driver) , ##__VA_ARGS__); \ |
|---|
| 284 | +} \ |
|---|
| 285 | +module_exit(__driver##_exit) |
|---|
| 276 | 286 | |
|---|
| 277 | 287 | #define module_driver2(__driver, __register, __unregister, ...) \ |
|---|
| 278 | 288 | static int __init __driver##_init(void) \ |
|---|