mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	i2c: Get rid of struct i2c_client_address_data
Struct i2c_client_address_data only contains one field at this point, which makes its usefulness questionable. Get rid of it and pass simple address lists around instead. Signed-off-by: Jean Delvare <khali@linux-fr.org> Tested-by: Wolfram Sang <w.sang@pengutronix.de>
This commit is contained in:
		
							parent
							
								
									310ec79210
								
							
						
					
					
						commit
						c3813d6af1
					
				
					 50 changed files with 66 additions and 89 deletions
				
			
		| 
						 | 
					@ -44,7 +44,7 @@ static struct i2c_driver foo_driver = {
 | 
				
			||||||
	/* if device autodetection is needed: */
 | 
						/* if device autodetection is needed: */
 | 
				
			||||||
	.class		= I2C_CLASS_SOMETHING,
 | 
						.class		= I2C_CLASS_SOMETHING,
 | 
				
			||||||
	.detect		= foo_detect,
 | 
						.detect		= foo_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	.shutdown	= foo_shutdown,	/* optional */
 | 
						.shutdown	= foo_shutdown,	/* optional */
 | 
				
			||||||
	.suspend	= foo_suspend,	/* optional */
 | 
						.suspend	= foo_suspend,	/* optional */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -130,7 +130,7 @@ static struct i2c_driver adm1021_driver = {
 | 
				
			||||||
	.remove		= adm1021_remove,
 | 
						.remove		= adm1021_remove,
 | 
				
			||||||
	.id_table	= adm1021_id,
 | 
						.id_table	= adm1021_id,
 | 
				
			||||||
	.detect		= adm1021_detect,
 | 
						.detect		= adm1021_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static ssize_t show_temp(struct device *dev,
 | 
					static ssize_t show_temp(struct device *dev,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -137,7 +137,7 @@ static struct i2c_driver adm1025_driver = {
 | 
				
			||||||
	.remove		= adm1025_remove,
 | 
						.remove		= adm1025_remove,
 | 
				
			||||||
	.id_table	= adm1025_id,
 | 
						.id_table	= adm1025_id,
 | 
				
			||||||
	.detect		= adm1025_detect,
 | 
						.detect		= adm1025_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -319,7 +319,7 @@ static struct i2c_driver adm1026_driver = {
 | 
				
			||||||
	.remove		= adm1026_remove,
 | 
						.remove		= adm1026_remove,
 | 
				
			||||||
	.id_table	= adm1026_id,
 | 
						.id_table	= adm1026_id,
 | 
				
			||||||
	.detect		= adm1026_detect,
 | 
						.detect		= adm1026_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int adm1026_read_value(struct i2c_client *client, u8 reg)
 | 
					static int adm1026_read_value(struct i2c_client *client, u8 reg)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -142,7 +142,7 @@ static struct i2c_driver adm1029_driver = {
 | 
				
			||||||
	.remove		= adm1029_remove,
 | 
						.remove		= adm1029_remove,
 | 
				
			||||||
	.id_table	= adm1029_id,
 | 
						.id_table	= adm1029_id,
 | 
				
			||||||
	.detect		= adm1029_detect,
 | 
						.detect		= adm1029_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -125,7 +125,7 @@ static struct i2c_driver adm1031_driver = {
 | 
				
			||||||
	.remove		= adm1031_remove,
 | 
						.remove		= adm1031_remove,
 | 
				
			||||||
	.id_table	= adm1031_id,
 | 
						.id_table	= adm1031_id,
 | 
				
			||||||
	.detect		= adm1031_detect,
 | 
						.detect		= adm1031_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static inline u8 adm1031_read_value(struct i2c_client *client, u8 reg)
 | 
					static inline u8 adm1031_read_value(struct i2c_client *client, u8 reg)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -156,7 +156,7 @@ static struct i2c_driver adm9240_driver = {
 | 
				
			||||||
	.remove		= adm9240_remove,
 | 
						.remove		= adm9240_remove,
 | 
				
			||||||
	.id_table	= adm9240_id,
 | 
						.id_table	= adm9240_id,
 | 
				
			||||||
	.detect		= adm9240_detect,
 | 
						.detect		= adm9240_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* per client data */
 | 
					/* per client data */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -183,7 +183,7 @@ static struct i2c_driver ads7828_driver = {
 | 
				
			||||||
	.remove = ads7828_remove,
 | 
						.remove = ads7828_remove,
 | 
				
			||||||
	.id_table = ads7828_id,
 | 
						.id_table = ads7828_id,
 | 
				
			||||||
	.detect = ads7828_detect,
 | 
						.detect = ads7828_detect,
 | 
				
			||||||
	.address_data = &addr_data,
 | 
						.address_list = normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Return 0 if detection is successful, -ENODEV otherwise */
 | 
					/* Return 0 if detection is successful, -ENODEV otherwise */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -256,7 +256,7 @@ static struct i2c_driver adt7462_driver = {
 | 
				
			||||||
	.remove		= adt7462_remove,
 | 
						.remove		= adt7462_remove,
 | 
				
			||||||
	.id_table	= adt7462_id,
 | 
						.id_table	= adt7462_id,
 | 
				
			||||||
	.detect		= adt7462_detect,
 | 
						.detect		= adt7462_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -196,7 +196,7 @@ static struct i2c_driver adt7470_driver = {
 | 
				
			||||||
	.remove		= adt7470_remove,
 | 
						.remove		= adt7470_remove,
 | 
				
			||||||
	.id_table	= adt7470_id,
 | 
						.id_table	= adt7470_id,
 | 
				
			||||||
	.detect		= adt7470_detect,
 | 
						.detect		= adt7470_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -184,7 +184,7 @@ static struct i2c_driver adt7473_driver = {
 | 
				
			||||||
	.remove		= adt7473_remove,
 | 
						.remove		= adt7473_remove,
 | 
				
			||||||
	.id_table	= adt7473_id,
 | 
						.id_table	= adt7473_id,
 | 
				
			||||||
	.detect		= adt7473_detect,
 | 
						.detect		= adt7473_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1412,7 +1412,7 @@ static struct i2c_driver adt7475_driver = {
 | 
				
			||||||
	.remove		= adt7475_remove,
 | 
						.remove		= adt7475_remove,
 | 
				
			||||||
	.id_table	= adt7475_id,
 | 
						.id_table	= adt7475_id,
 | 
				
			||||||
	.detect		= adt7475_detect,
 | 
						.detect		= adt7475_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void adt7475_read_hystersis(struct i2c_client *client)
 | 
					static void adt7475_read_hystersis(struct i2c_client *client)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -230,7 +230,7 @@ static struct i2c_driver asb100_driver = {
 | 
				
			||||||
	.remove		= asb100_remove,
 | 
						.remove		= asb100_remove,
 | 
				
			||||||
	.id_table	= asb100_id,
 | 
						.id_table	= asb100_id,
 | 
				
			||||||
	.detect		= asb100_detect,
 | 
						.detect		= asb100_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* 7 Voltages */
 | 
					/* 7 Voltages */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -67,7 +67,7 @@ static struct i2c_driver atxp1_driver = {
 | 
				
			||||||
	.remove		= atxp1_remove,
 | 
						.remove		= atxp1_remove,
 | 
				
			||||||
	.id_table	= atxp1_id,
 | 
						.id_table	= atxp1_id,
 | 
				
			||||||
	.detect		= atxp1_detect,
 | 
						.detect		= atxp1_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
struct atxp1_data {
 | 
					struct atxp1_data {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2318,7 +2318,7 @@ static struct i2c_driver dme1737_i2c_driver = {
 | 
				
			||||||
	.remove = dme1737_i2c_remove,
 | 
						.remove = dme1737_i2c_remove,
 | 
				
			||||||
	.id_table = dme1737_id,
 | 
						.id_table = dme1737_id,
 | 
				
			||||||
	.detect = dme1737_i2c_detect,
 | 
						.detect = dme1737_i2c_detect,
 | 
				
			||||||
	.address_data = &addr_data,
 | 
						.address_list = normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* ---------------------------------------------------------------------
 | 
					/* ---------------------------------------------------------------------
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -321,7 +321,7 @@ static struct i2c_driver ds1621_driver = {
 | 
				
			||||||
	.remove		= ds1621_remove,
 | 
						.remove		= ds1621_remove,
 | 
				
			||||||
	.id_table	= ds1621_id,
 | 
						.id_table	= ds1621_id,
 | 
				
			||||||
	.detect		= ds1621_detect,
 | 
						.detect		= ds1621_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init ds1621_init(void)
 | 
					static int __init ds1621_init(void)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -135,7 +135,7 @@ static struct i2c_driver f75375_driver = {
 | 
				
			||||||
	.remove = f75375_remove,
 | 
						.remove = f75375_remove,
 | 
				
			||||||
	.id_table = f75375_id,
 | 
						.id_table = f75375_id,
 | 
				
			||||||
	.detect = f75375_detect,
 | 
						.detect = f75375_detect,
 | 
				
			||||||
	.address_data = &addr_data,
 | 
						.address_list = normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static inline int f75375_read8(struct i2c_client *client, u8 reg)
 | 
					static inline int f75375_read8(struct i2c_client *client, u8 reg)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -251,7 +251,7 @@ static struct i2c_driver fschmd_driver = {
 | 
				
			||||||
	.remove		= fschmd_remove,
 | 
						.remove		= fschmd_remove,
 | 
				
			||||||
	.id_table	= fschmd_id,
 | 
						.id_table	= fschmd_id,
 | 
				
			||||||
	.detect		= fschmd_detect,
 | 
						.detect		= fschmd_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -162,7 +162,7 @@ static struct i2c_driver gl518_driver = {
 | 
				
			||||||
	.remove		= gl518_remove,
 | 
						.remove		= gl518_remove,
 | 
				
			||||||
	.id_table	= gl518_id,
 | 
						.id_table	= gl518_id,
 | 
				
			||||||
	.detect		= gl518_detect,
 | 
						.detect		= gl518_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -104,7 +104,7 @@ static struct i2c_driver gl520_driver = {
 | 
				
			||||||
	.remove		= gl520_remove,
 | 
						.remove		= gl520_remove,
 | 
				
			||||||
	.id_table	= gl520_id,
 | 
						.id_table	= gl520_id,
 | 
				
			||||||
	.detect		= gl520_detect,
 | 
						.detect		= gl520_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Client data */
 | 
					/* Client data */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -156,7 +156,7 @@ static struct i2c_driver lm63_driver = {
 | 
				
			||||||
	.remove		= lm63_remove,
 | 
						.remove		= lm63_remove,
 | 
				
			||||||
	.id_table	= lm63_id,
 | 
						.id_table	= lm63_id,
 | 
				
			||||||
	.detect		= lm63_detect,
 | 
						.detect		= lm63_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -182,7 +182,7 @@ static struct i2c_driver lm73_driver = {
 | 
				
			||||||
	.remove		= lm73_remove,
 | 
						.remove		= lm73_remove,
 | 
				
			||||||
	.id_table	= lm73_ids,
 | 
						.id_table	= lm73_ids,
 | 
				
			||||||
	.detect		= lm73_detect,
 | 
						.detect		= lm73_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* module glue */
 | 
					/* module glue */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -295,7 +295,7 @@ static struct i2c_driver lm75_driver = {
 | 
				
			||||||
	.remove		= lm75_remove,
 | 
						.remove		= lm75_remove,
 | 
				
			||||||
	.id_table	= lm75_ids,
 | 
						.id_table	= lm75_ids,
 | 
				
			||||||
	.detect		= lm75_detect,
 | 
						.detect		= lm75_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*-----------------------------------------------------------------------*/
 | 
					/*-----------------------------------------------------------------------*/
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -91,7 +91,7 @@ static struct i2c_driver lm77_driver = {
 | 
				
			||||||
	.remove		= lm77_remove,
 | 
						.remove		= lm77_remove,
 | 
				
			||||||
	.id_table	= lm77_id,
 | 
						.id_table	= lm77_id,
 | 
				
			||||||
	.detect		= lm77_detect,
 | 
						.detect		= lm77_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* straight from the datasheet */
 | 
					/* straight from the datasheet */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -173,7 +173,7 @@ static struct i2c_driver lm78_driver = {
 | 
				
			||||||
	.remove		= lm78_i2c_remove,
 | 
						.remove		= lm78_i2c_remove,
 | 
				
			||||||
	.id_table	= lm78_i2c_id,
 | 
						.id_table	= lm78_i2c_id,
 | 
				
			||||||
	.detect		= lm78_i2c_detect,
 | 
						.detect		= lm78_i2c_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct platform_driver lm78_isa_driver = {
 | 
					static struct platform_driver lm78_isa_driver = {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -159,7 +159,7 @@ static struct i2c_driver lm80_driver = {
 | 
				
			||||||
	.remove		= lm80_remove,
 | 
						.remove		= lm80_remove,
 | 
				
			||||||
	.id_table	= lm80_id,
 | 
						.id_table	= lm80_id,
 | 
				
			||||||
	.detect		= lm80_detect,
 | 
						.detect		= lm80_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -145,7 +145,7 @@ static struct i2c_driver lm83_driver = {
 | 
				
			||||||
	.remove		= lm83_remove,
 | 
						.remove		= lm83_remove,
 | 
				
			||||||
	.id_table	= lm83_id,
 | 
						.id_table	= lm83_id,
 | 
				
			||||||
	.detect		= lm83_detect,
 | 
						.detect		= lm83_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -356,7 +356,7 @@ static struct i2c_driver lm85_driver = {
 | 
				
			||||||
	.remove		= lm85_remove,
 | 
						.remove		= lm85_remove,
 | 
				
			||||||
	.id_table	= lm85_id,
 | 
						.id_table	= lm85_id,
 | 
				
			||||||
	.detect		= lm85_detect,
 | 
						.detect		= lm85_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -184,7 +184,7 @@ static struct i2c_driver lm87_driver = {
 | 
				
			||||||
	.remove		= lm87_remove,
 | 
						.remove		= lm87_remove,
 | 
				
			||||||
	.id_table	= lm87_id,
 | 
						.id_table	= lm87_id,
 | 
				
			||||||
	.detect		= lm87_detect,
 | 
						.detect		= lm87_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -191,7 +191,7 @@ static struct i2c_driver lm90_driver = {
 | 
				
			||||||
	.remove		= lm90_remove,
 | 
						.remove		= lm90_remove,
 | 
				
			||||||
	.id_table	= lm90_id,
 | 
						.id_table	= lm90_id,
 | 
				
			||||||
	.detect		= lm90_detect,
 | 
						.detect		= lm90_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -416,7 +416,7 @@ static struct i2c_driver lm92_driver = {
 | 
				
			||||||
	.remove		= lm92_remove,
 | 
						.remove		= lm92_remove,
 | 
				
			||||||
	.id_table	= lm92_id,
 | 
						.id_table	= lm92_id,
 | 
				
			||||||
	.detect		= lm92_detect,
 | 
						.detect		= lm92_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init sensors_lm92_init(void)
 | 
					static int __init sensors_lm92_init(void)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2616,7 +2616,7 @@ static struct i2c_driver lm93_driver = {
 | 
				
			||||||
	.remove		= lm93_remove,
 | 
						.remove		= lm93_remove,
 | 
				
			||||||
	.id_table	= lm93_id,
 | 
						.id_table	= lm93_id,
 | 
				
			||||||
	.detect		= lm93_detect,
 | 
						.detect		= lm93_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init lm93_init(void)
 | 
					static int __init lm93_init(void)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -460,7 +460,7 @@ static struct i2c_driver lm95241_driver = {
 | 
				
			||||||
	.remove		= lm95241_remove,
 | 
						.remove		= lm95241_remove,
 | 
				
			||||||
	.id_table	= lm95241_id,
 | 
						.id_table	= lm95241_id,
 | 
				
			||||||
	.detect		= lm95241_detect,
 | 
						.detect		= lm95241_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init sensors_lm95241_init(void)
 | 
					static int __init sensors_lm95241_init(void)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -113,7 +113,7 @@ static struct i2c_driver max1619_driver = {
 | 
				
			||||||
	.remove		= max1619_remove,
 | 
						.remove		= max1619_remove,
 | 
				
			||||||
	.id_table	= max1619_id,
 | 
						.id_table	= max1619_id,
 | 
				
			||||||
	.detect		= max1619_detect,
 | 
						.detect		= max1619_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -141,7 +141,7 @@ static struct i2c_driver max6650_driver = {
 | 
				
			||||||
	.remove		= max6650_remove,
 | 
						.remove		= max6650_remove,
 | 
				
			||||||
	.id_table	= max6650_id,
 | 
						.id_table	= max6650_id,
 | 
				
			||||||
	.detect		= max6650_detect,
 | 
						.detect		= max6650_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -299,7 +299,7 @@ static struct i2c_driver pcf8591_driver = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	.class		= I2C_CLASS_HWMON,	/* Nearest choice */
 | 
						.class		= I2C_CLASS_HWMON,	/* Nearest choice */
 | 
				
			||||||
	.detect		= pcf8591_detect,
 | 
						.detect		= pcf8591_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init pcf8591_init(void)
 | 
					static int __init pcf8591_init(void)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -135,7 +135,7 @@ static struct i2c_driver smsc47m192_driver = {
 | 
				
			||||||
	.remove		= smsc47m192_remove,
 | 
						.remove		= smsc47m192_remove,
 | 
				
			||||||
	.id_table	= smsc47m192_id,
 | 
						.id_table	= smsc47m192_id,
 | 
				
			||||||
	.detect		= smsc47m192_detect,
 | 
						.detect		= smsc47m192_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Voltages */
 | 
					/* Voltages */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -108,7 +108,7 @@ static struct i2c_driver thmc50_driver = {
 | 
				
			||||||
	.remove = thmc50_remove,
 | 
						.remove = thmc50_remove,
 | 
				
			||||||
	.id_table = thmc50_id,
 | 
						.id_table = thmc50_id,
 | 
				
			||||||
	.detect = thmc50_detect,
 | 
						.detect = thmc50_detect,
 | 
				
			||||||
	.address_data = &addr_data,
 | 
						.address_list = normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static ssize_t show_analog_out(struct device *dev,
 | 
					static ssize_t show_analog_out(struct device *dev,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -123,7 +123,7 @@ static struct i2c_driver tmp401_driver = {
 | 
				
			||||||
	.remove		= tmp401_remove,
 | 
						.remove		= tmp401_remove,
 | 
				
			||||||
	.id_table	= tmp401_id,
 | 
						.id_table	= tmp401_id,
 | 
				
			||||||
	.detect		= tmp401_detect,
 | 
						.detect		= tmp401_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -322,7 +322,7 @@ static struct i2c_driver tmp421_driver = {
 | 
				
			||||||
	.remove = tmp421_remove,
 | 
						.remove = tmp421_remove,
 | 
				
			||||||
	.id_table = tmp421_id,
 | 
						.id_table = tmp421_id,
 | 
				
			||||||
	.detect = tmp421_detect,
 | 
						.detect = tmp421_detect,
 | 
				
			||||||
	.address_data = &addr_data,
 | 
						.address_list = normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init tmp421_init(void)
 | 
					static int __init tmp421_init(void)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1536,7 +1536,7 @@ static struct i2c_driver w83781d_driver = {
 | 
				
			||||||
	.remove		= w83781d_remove,
 | 
						.remove		= w83781d_remove,
 | 
				
			||||||
	.id_table	= w83781d_ids,
 | 
						.id_table	= w83781d_ids,
 | 
				
			||||||
	.detect		= w83781d_detect,
 | 
						.detect		= w83781d_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -355,7 +355,7 @@ static struct i2c_driver w83791d_driver = {
 | 
				
			||||||
	.remove		= w83791d_remove,
 | 
						.remove		= w83791d_remove,
 | 
				
			||||||
	.id_table	= w83791d_id,
 | 
						.id_table	= w83791d_id,
 | 
				
			||||||
	.detect		= w83791d_detect,
 | 
						.detect		= w83791d_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* following are the sysfs callback functions */
 | 
					/* following are the sysfs callback functions */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -328,7 +328,7 @@ static struct i2c_driver w83792d_driver = {
 | 
				
			||||||
	.remove		= w83792d_remove,
 | 
						.remove		= w83792d_remove,
 | 
				
			||||||
	.id_table	= w83792d_id,
 | 
						.id_table	= w83792d_id,
 | 
				
			||||||
	.detect		= w83792d_detect,
 | 
						.detect		= w83792d_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static inline long in_count_from_reg(int nr, struct w83792d_data *data)
 | 
					static inline long in_count_from_reg(int nr, struct w83792d_data *data)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -252,7 +252,7 @@ static struct i2c_driver w83793_driver = {
 | 
				
			||||||
	.remove		= w83793_remove,
 | 
						.remove		= w83793_remove,
 | 
				
			||||||
	.id_table	= w83793_id,
 | 
						.id_table	= w83793_id,
 | 
				
			||||||
	.detect		= w83793_detect,
 | 
						.detect		= w83793_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static ssize_t
 | 
					static ssize_t
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -108,7 +108,7 @@ static struct i2c_driver w83l785ts_driver = {
 | 
				
			||||||
	.remove		= w83l785ts_remove,
 | 
						.remove		= w83l785ts_remove,
 | 
				
			||||||
	.id_table	= w83l785ts_id,
 | 
						.id_table	= w83l785ts_id,
 | 
				
			||||||
	.detect		= w83l785ts_detect,
 | 
						.detect		= w83l785ts_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -168,7 +168,7 @@ static struct i2c_driver w83l786ng_driver = {
 | 
				
			||||||
	.remove		= w83l786ng_remove,
 | 
						.remove		= w83l786ng_remove,
 | 
				
			||||||
	.id_table	= w83l786ng_id,
 | 
						.id_table	= w83l786ng_id,
 | 
				
			||||||
	.detect		= w83l786ng_detect,
 | 
						.detect		= w83l786ng_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static u8
 | 
					static u8
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1214,13 +1214,13 @@ static int i2c_detect_address(struct i2c_client *temp_client,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int i2c_detect(struct i2c_adapter *adapter, struct i2c_driver *driver)
 | 
					static int i2c_detect(struct i2c_adapter *adapter, struct i2c_driver *driver)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	const struct i2c_client_address_data *address_data;
 | 
						const unsigned short *address_list;
 | 
				
			||||||
	struct i2c_client *temp_client;
 | 
						struct i2c_client *temp_client;
 | 
				
			||||||
	int i, err = 0;
 | 
						int i, err = 0;
 | 
				
			||||||
	int adap_id = i2c_adapter_id(adapter);
 | 
						int adap_id = i2c_adapter_id(adapter);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	address_data = driver->address_data;
 | 
						address_list = driver->address_list;
 | 
				
			||||||
	if (!driver->detect || !address_data)
 | 
						if (!driver->detect || !address_list)
 | 
				
			||||||
		return 0;
 | 
							return 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* Set up a temporary client to help detect callback */
 | 
						/* Set up a temporary client to help detect callback */
 | 
				
			||||||
| 
						 | 
					@ -1235,7 +1235,7 @@ static int i2c_detect(struct i2c_adapter *adapter, struct i2c_driver *driver)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* Stop here if we can't use SMBUS_QUICK */
 | 
						/* Stop here if we can't use SMBUS_QUICK */
 | 
				
			||||||
	if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_QUICK)) {
 | 
						if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_QUICK)) {
 | 
				
			||||||
		if (address_data->normal_i2c[0] == I2C_CLIENT_END)
 | 
							if (address_list[0] == I2C_CLIENT_END)
 | 
				
			||||||
			goto exit_free;
 | 
								goto exit_free;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		dev_warn(&adapter->dev, "SMBus Quick command not supported, "
 | 
							dev_warn(&adapter->dev, "SMBus Quick command not supported, "
 | 
				
			||||||
| 
						 | 
					@ -1244,11 +1244,10 @@ static int i2c_detect(struct i2c_adapter *adapter, struct i2c_driver *driver)
 | 
				
			||||||
		goto exit_free;
 | 
							goto exit_free;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (i = 0; address_data->normal_i2c[i] != I2C_CLIENT_END; i += 1) {
 | 
						for (i = 0; address_list[i] != I2C_CLIENT_END; i += 1) {
 | 
				
			||||||
		dev_dbg(&adapter->dev, "found normal entry for adapter %d, "
 | 
							dev_dbg(&adapter->dev, "found normal entry for adapter %d, "
 | 
				
			||||||
			"addr 0x%02x\n", adap_id,
 | 
								"addr 0x%02x\n", adap_id, address_list[i]);
 | 
				
			||||||
			address_data->normal_i2c[i]);
 | 
							temp_client->addr = address_list[i];
 | 
				
			||||||
		temp_client->addr = address_data->normal_i2c[i];
 | 
					 | 
				
			||||||
		err = i2c_detect_address(temp_client, driver);
 | 
							err = i2c_detect_address(temp_client, driver);
 | 
				
			||||||
		if (err)
 | 
							if (err)
 | 
				
			||||||
			goto exit_free;
 | 
								goto exit_free;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -232,7 +232,7 @@ static struct i2c_driver eeprom_driver = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	.class		= I2C_CLASS_DDC | I2C_CLASS_SPD,
 | 
						.class		= I2C_CLASS_DDC | I2C_CLASS_SPD,
 | 
				
			||||||
	.detect		= eeprom_detect,
 | 
						.detect		= eeprom_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init eeprom_init(void)
 | 
					static int __init eeprom_init(void)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -125,7 +125,7 @@ static struct i2c_driver ics932s401_driver = {
 | 
				
			||||||
	.remove		= ics932s401_remove,
 | 
						.remove		= ics932s401_remove,
 | 
				
			||||||
	.id_table	= ics932s401_id,
 | 
						.id_table	= ics932s401_id,
 | 
				
			||||||
	.detect		= ics932s401_detect,
 | 
						.detect		= ics932s401_detect,
 | 
				
			||||||
	.address_data	= &addr_data,
 | 
						.address_list	= normal_i2c,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct ics932s401_data *ics932s401_update_device(struct device *dev)
 | 
					static struct ics932s401_data *ics932s401_update_device(struct device *dev)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -110,7 +110,7 @@ extern s32 i2c_smbus_write_i2c_block_data(struct i2c_client *client,
 | 
				
			||||||
 * @driver: Device driver model driver
 | 
					 * @driver: Device driver model driver
 | 
				
			||||||
 * @id_table: List of I2C devices supported by this driver
 | 
					 * @id_table: List of I2C devices supported by this driver
 | 
				
			||||||
 * @detect: Callback for device detection
 | 
					 * @detect: Callback for device detection
 | 
				
			||||||
 * @address_data: The I2C addresses to probe (for detect)
 | 
					 * @address_list: The I2C addresses to probe (for detect)
 | 
				
			||||||
 * @clients: List of detected clients we created (for i2c-core use only)
 | 
					 * @clients: List of detected clients we created (for i2c-core use only)
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * The driver.owner field should be set to the module owner of this driver.
 | 
					 * The driver.owner field should be set to the module owner of this driver.
 | 
				
			||||||
| 
						 | 
					@ -162,7 +162,7 @@ struct i2c_driver {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* Device detection callback for automatic device creation */
 | 
						/* Device detection callback for automatic device creation */
 | 
				
			||||||
	int (*detect)(struct i2c_client *, struct i2c_board_info *);
 | 
						int (*detect)(struct i2c_client *, struct i2c_board_info *);
 | 
				
			||||||
	const struct i2c_client_address_data *address_data;
 | 
						const unsigned short *address_list;
 | 
				
			||||||
	struct list_head clients;
 | 
						struct list_head clients;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
#define to_i2c_driver(d) container_of(d, struct i2c_driver, driver)
 | 
					#define to_i2c_driver(d) container_of(d, struct i2c_driver, driver)
 | 
				
			||||||
| 
						 | 
					@ -391,14 +391,6 @@ static inline void i2c_unlock_adapter(struct i2c_adapter *adapter)
 | 
				
			||||||
#define I2C_CLASS_DDC		(1<<3)	/* DDC bus on graphics adapters */
 | 
					#define I2C_CLASS_DDC		(1<<3)	/* DDC bus on graphics adapters */
 | 
				
			||||||
#define I2C_CLASS_SPD		(1<<7)	/* SPD EEPROMs and similar */
 | 
					#define I2C_CLASS_SPD		(1<<7)	/* SPD EEPROMs and similar */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* i2c_client_address_data is the struct for holding default client
 | 
					 | 
				
			||||||
 * addresses for a driver and for the parameters supplied on the
 | 
					 | 
				
			||||||
 * command line
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
struct i2c_client_address_data {
 | 
					 | 
				
			||||||
	const unsigned short *normal_i2c;
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* Internal numbers to terminate lists */
 | 
					/* Internal numbers to terminate lists */
 | 
				
			||||||
#define I2C_CLIENT_END		0xfffeU
 | 
					#define I2C_CLIENT_END		0xfffeU
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -610,48 +602,34 @@ union i2c_smbus_data {
 | 
				
			||||||
  module_param_array(var, short, &var##_num, 0); \
 | 
					  module_param_array(var, short, &var##_num, 0); \
 | 
				
			||||||
  MODULE_PARM_DESC(var, desc)
 | 
					  MODULE_PARM_DESC(var, desc)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define I2C_CLIENT_INSMOD_COMMON					\
 | 
					 | 
				
			||||||
static const struct i2c_client_address_data addr_data = {		\
 | 
					 | 
				
			||||||
	.normal_i2c	= normal_i2c,					\
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* These are the ones you want to use in your own drivers. Pick the one
 | 
					/* These are the ones you want to use in your own drivers. Pick the one
 | 
				
			||||||
   which matches the number of devices the driver differenciates between. */
 | 
					   which matches the number of devices the driver differenciates between. */
 | 
				
			||||||
#define I2C_CLIENT_INSMOD						\
 | 
					#define I2C_CLIENT_INSMOD
 | 
				
			||||||
I2C_CLIENT_INSMOD_COMMON
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define I2C_CLIENT_INSMOD_1(chip1)					\
 | 
					#define I2C_CLIENT_INSMOD_1(chip1)					\
 | 
				
			||||||
enum chips { any_chip, chip1 };						\
 | 
					enum chips { any_chip, chip1 }
 | 
				
			||||||
I2C_CLIENT_INSMOD_COMMON
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define I2C_CLIENT_INSMOD_2(chip1, chip2)				\
 | 
					#define I2C_CLIENT_INSMOD_2(chip1, chip2)				\
 | 
				
			||||||
enum chips { any_chip, chip1, chip2 };					\
 | 
					enum chips { any_chip, chip1, chip2 }
 | 
				
			||||||
I2C_CLIENT_INSMOD_COMMON
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define I2C_CLIENT_INSMOD_3(chip1, chip2, chip3)			\
 | 
					#define I2C_CLIENT_INSMOD_3(chip1, chip2, chip3)			\
 | 
				
			||||||
enum chips { any_chip, chip1, chip2, chip3 };				\
 | 
					enum chips { any_chip, chip1, chip2, chip3 }
 | 
				
			||||||
I2C_CLIENT_INSMOD_COMMON
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define I2C_CLIENT_INSMOD_4(chip1, chip2, chip3, chip4)			\
 | 
					#define I2C_CLIENT_INSMOD_4(chip1, chip2, chip3, chip4)			\
 | 
				
			||||||
enum chips { any_chip, chip1, chip2, chip3, chip4 };			\
 | 
					enum chips { any_chip, chip1, chip2, chip3, chip4 }
 | 
				
			||||||
I2C_CLIENT_INSMOD_COMMON
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define I2C_CLIENT_INSMOD_5(chip1, chip2, chip3, chip4, chip5)		\
 | 
					#define I2C_CLIENT_INSMOD_5(chip1, chip2, chip3, chip4, chip5)		\
 | 
				
			||||||
enum chips { any_chip, chip1, chip2, chip3, chip4, chip5 };		\
 | 
					enum chips { any_chip, chip1, chip2, chip3, chip4, chip5 }
 | 
				
			||||||
I2C_CLIENT_INSMOD_COMMON
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define I2C_CLIENT_INSMOD_6(chip1, chip2, chip3, chip4, chip5, chip6)	\
 | 
					#define I2C_CLIENT_INSMOD_6(chip1, chip2, chip3, chip4, chip5, chip6)	\
 | 
				
			||||||
enum chips { any_chip, chip1, chip2, chip3, chip4, chip5, chip6 };	\
 | 
					enum chips { any_chip, chip1, chip2, chip3, chip4, chip5, chip6 }
 | 
				
			||||||
I2C_CLIENT_INSMOD_COMMON
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define I2C_CLIENT_INSMOD_7(chip1, chip2, chip3, chip4, chip5, chip6, chip7) \
 | 
					#define I2C_CLIENT_INSMOD_7(chip1, chip2, chip3, chip4, chip5, chip6, chip7) \
 | 
				
			||||||
enum chips { any_chip, chip1, chip2, chip3, chip4, chip5, chip6,	\
 | 
					enum chips { any_chip, chip1, chip2, chip3, chip4, chip5, chip6,	\
 | 
				
			||||||
	     chip7 };							\
 | 
						     chip7 }
 | 
				
			||||||
I2C_CLIENT_INSMOD_COMMON
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define I2C_CLIENT_INSMOD_8(chip1, chip2, chip3, chip4, chip5, chip6, chip7, chip8) \
 | 
					#define I2C_CLIENT_INSMOD_8(chip1, chip2, chip3, chip4, chip5, chip6, chip7, chip8) \
 | 
				
			||||||
enum chips { any_chip, chip1, chip2, chip3, chip4, chip5, chip6,	\
 | 
					enum chips { any_chip, chip1, chip2, chip3, chip4, chip5, chip6,	\
 | 
				
			||||||
	     chip7, chip8 };						\
 | 
						     chip7, chip8 }
 | 
				
			||||||
I2C_CLIENT_INSMOD_COMMON
 | 
					 | 
				
			||||||
#endif /* __KERNEL__ */
 | 
					#endif /* __KERNEL__ */
 | 
				
			||||||
#endif /* _LINUX_I2C_H */
 | 
					#endif /* _LINUX_I2C_H */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue