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 523ded71de] 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: Paul Gortmaker <paul.gortmaker@windriver.com>
	
	
This commit is contained in:
		
					parent
					
						
							
								7c926402a7
							
						
					
				
			
			
				commit
				
					
						eb5589a8f0
					
				
			
		
					 11 changed files with 57 additions and 58 deletions
				
			
		| 
						 | 
				
			
			@ -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…
	
	Add table
		Add a link
		
	
		Reference in a new issue