Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eb5589a8 authored by Paul Gortmaker's avatar Paul Gortmaker
Browse files

include: convert various register fcns to macros to avoid include chaining



The original implementations reference THIS_MODULE in an inline.
We could include <linux/export.h>, but it is better to avoid chaining.

Fortunately someone else already thought of this, and made a similar
inline into a #define in <linux/device.h> for device_schedule_callback(),
[see commit 523ded71] so follow that precedent here.

Also bubble up any __must_check that were used on the prev. wrapper inline
functions up one to the real __register functions, to preserve any prev.
sanity checks that were used in those instances.

Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
parent 7c926402
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -170,10 +170,9 @@ struct bcma_driver {
};
extern
int __bcma_driver_register(struct bcma_driver *drv, struct module *owner);
static inline int bcma_driver_register(struct bcma_driver *drv)
{
	return __bcma_driver_register(drv, THIS_MODULE);
}
#define bcma_driver_register(drv) \
	__bcma_driver_register(drv, THIS_MODULE)

extern void bcma_driver_unregister(struct bcma_driver *drv);

struct bcma_bus {
+8 −4
Original line number Diff line number Diff line
@@ -723,10 +723,14 @@ extern int dev_set_drvdata(struct device *dev, void *data);
 */
extern struct device *__root_device_register(const char *name,
					     struct module *owner);
static inline struct device *root_device_register(const char *name)
{
	return __root_device_register(name, THIS_MODULE);
}

/*
 * This is a macro to avoid include problems with THIS_MODULE,
 * just as per what is done for device_schedule_callback() above.
 */
#define root_device_register(name) \
	__root_device_register(name, THIS_MODULE)

extern void root_device_unregister(struct device *root);

static inline void *dev_get_platdata(const struct device *dev)
+8 −9
Original line number Diff line number Diff line
@@ -71,10 +71,9 @@ void gameport_close(struct gameport *gameport);
#if defined(CONFIG_GAMEPORT) || (defined(MODULE) && defined(CONFIG_GAMEPORT_MODULE))

void __gameport_register_port(struct gameport *gameport, struct module *owner);
static inline void gameport_register_port(struct gameport *gameport)
{
	__gameport_register_port(gameport, THIS_MODULE);
}
/* use a define to avoid include chaining to get THIS_MODULE */
#define gameport_register_port(gameport) \
	__gameport_register_port(gameport, THIS_MODULE)

void gameport_unregister_port(struct gameport *gameport);

@@ -145,12 +144,12 @@ static inline void gameport_unpin_driver(struct gameport *gameport)
	mutex_unlock(&gameport->drv_mutex);
}

int __gameport_register_driver(struct gameport_driver *drv,
int __must_check __gameport_register_driver(struct gameport_driver *drv,
				struct module *owner, const char *mod_name);
static inline int __must_check gameport_register_driver(struct gameport_driver *drv)
{
	return __gameport_register_driver(drv, THIS_MODULE, KBUILD_MODNAME);
}

/* use a define to avoid include chaining to get THIS_MODULE & friends */
#define gameport_register_driver(drv) \
	__gameport_register_driver(drv, THIS_MODULE, KBUILD_MODNAME)

void gameport_unregister_driver(struct gameport_driver *drv);

+5 −4
Original line number Diff line number Diff line
@@ -697,10 +697,11 @@ extern void hid_destroy_device(struct hid_device *);

extern int __must_check __hid_register_driver(struct hid_driver *,
		struct module *, const char *mod_name);
static inline int __must_check hid_register_driver(struct hid_driver *driver)
{
	return __hid_register_driver(driver, THIS_MODULE, KBUILD_MODNAME);
}

/* use a define to avoid include chaining to get THIS_MODULE & friends */
#define hid_register_driver(driver) \
	__hid_register_driver(driver, THIS_MODULE, KBUILD_MODNAME)

extern void hid_unregister_driver(struct hid_driver *);

extern void hidinput_hid_event(struct hid_device *, struct hid_field *, struct hid_usage *, __s32);
+3 −4
Original line number Diff line number Diff line
@@ -451,10 +451,9 @@ extern int i2c_add_numbered_adapter(struct i2c_adapter *);
extern int i2c_register_driver(struct module *, struct i2c_driver *);
extern void i2c_del_driver(struct i2c_driver *);

static inline int i2c_add_driver(struct i2c_driver *driver)
{
	return i2c_register_driver(THIS_MODULE, driver);
}
/* use a define to avoid include chaining to get THIS_MODULE */
#define i2c_add_driver(driver) \
	i2c_register_driver(THIS_MODULE, driver)

extern struct i2c_client *i2c_use_client(struct i2c_client *client);
extern void i2c_release_client(struct i2c_client *client);
Loading