libnvdimm: provide module_nd_driver wrapper
Provide a module_nd_driver() wrapper over simple nd_driver_register() nd_driver_unregister() combinations in module_init() and module_exit() respectively. Note an explicit nd_driver_unregister() had to be implemented as nd bus drivers did call device_unregister() direcly in the module_exit() function. Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
This commit is contained in:
parent
1526f9e2ac
commit
71cfdd0bad
|
@ -180,6 +180,12 @@ struct nd_region;
|
|||
void nvdimm_region_notify(struct nd_region *nd_region, enum nvdimm_event event);
|
||||
int __must_check __nd_driver_register(struct nd_device_driver *nd_drv,
|
||||
struct module *module, const char *mod_name);
|
||||
static inline void nd_driver_unregister(struct nd_device_driver *drv)
|
||||
{
|
||||
driver_unregister(&drv->drv);
|
||||
}
|
||||
#define nd_driver_register(driver) \
|
||||
__nd_driver_register(driver, THIS_MODULE, KBUILD_MODNAME)
|
||||
#define module_nd_driver(driver) \
|
||||
module_driver(driver, nd_driver_register, nd_driver_unregister)
|
||||
#endif /* __LINUX_ND_H__ */
|
||||
|
|
Loading…
Reference in a new issue