Ignore:
Timestamp:
Mar 18, 2021, 8:57:36 PM (4 years ago)
Author:
David Azarewicz
Message:

Merge changes from Paul's uniaud32next branch.

Location:
GPL/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • GPL/trunk

  • GPL/trunk/include/linux/module.h

    r598 r679  
    77#ifndef _LINUX_MODULE_H
    88#define _LINUX_MODULE_H
     9
     10#include <linux/list.h>
     11#include <linux/compiler.h>
     12#include <linux/kmod.h>
     13#include <linux/init.h>
     14#include <linux/string.h>
     15#include <linux/kobject.h>
     16#include <linux/moduleparam.h>
     17#include <linux/export.h>
    918
    1019/* Poke the use count of a module.  */
     
    4655
    4756#ifdef TARGET_OS2
    48 #define MODULE_PARM(var,type)
    49 #define MODULE_PARM_DESC(var,desc)
    5057#define MODULE_LICENSE(a)
    51 #define EXPORT_SYMBOL_GPL(a)
    5258#else
    5359#define MODULE_PARM(var,type)                   \
     
    7177#define MODULE_ALIAS(x)
    7278
    73 extern int this_module[64];
    74 #define THIS_MODULE (void *)&this_module[0]
    7579#define MODULE_GENERIC_TABLE(gtype,name)
    7680#define MODULE_DEVICE_TABLE(type,name)
    77 #define EXPORT_SYMBOL(a)
    7881#define MODULE_ALIAS_CHARDEV(x)
    7982#define module_param(name, type, perm)
     83
     84/**
     85 * module_driver() - Helper macro for drivers that don't do anything
     86 * special in module init/exit. This eliminates a lot of boilerplate.
     87 * Each module may only use this macro once, and calling it replaces
     88 * module_init() and module_exit().
     89 *
     90 * @__driver: driver name
     91 * @__register: register function for this driver type
     92 * @__unregister: unregister function for this driver type
     93 * @...: Additional arguments to be passed to __register and __unregister.
     94 *
     95 * Use this macro to construct bus specific macros for registering
     96 * drivers, and do not use it on its own.
     97 */
     98#define module_driver(__driver, __register, __unregister, ...) \
     99static int __init __driver##_init(void) \
     100{ \
     101        return __register(&__driver, ##__VA_ARGS__); \
     102} \
     103module_init(__driver##_init); \
     104static void __exit __driver##_exit(void) \
     105{ \
     106        __unregister(&__driver, ##__VA_ARGS__); \
     107} \
     108module_exit(__driver##_exit);
     109#define symbol_put_addr(p) do { } while (0)
     110#define postcore_initcall(fn)           module_init(fn)
     111
     112#define MODULE_NAME_LEN 255
     113
     114struct module {
     115        /* Unique handle for this module */
     116        char name[MODULE_NAME_LEN];
     117};
    80118#endif /* _LINUX_MODULE_H */
Note: See TracChangeset for help on using the changeset viewer.