diff options
Diffstat (limited to 'drivers/platform/x86/i2c-multi-instantiate.c')
| -rw-r--r-- | drivers/platform/x86/i2c-multi-instantiate.c | 6 | 
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/platform/x86/i2c-multi-instantiate.c b/drivers/platform/x86/i2c-multi-instantiate.c index 197d8a192721..ea68f6ed66ae 100644 --- a/drivers/platform/x86/i2c-multi-instantiate.c +++ b/drivers/platform/x86/i2c-multi-instantiate.c @@ -81,9 +81,7 @@ static int i2c_multi_inst_probe(struct platform_device *pdev)  	if (ret < 0)  		return ret; -	multi = devm_kmalloc(dev, -			offsetof(struct i2c_multi_inst_data, clients[ret]), -			GFP_KERNEL); +	multi = devm_kmalloc(dev, struct_size(multi, clients, ret), GFP_KERNEL);  	if (!multi)  		return -ENOMEM; @@ -92,7 +90,7 @@ static int i2c_multi_inst_probe(struct platform_device *pdev)  	for (i = 0; i < multi->num_clients && inst_data[i].type; i++) {  		memset(&board_info, 0, sizeof(board_info));  		strlcpy(board_info.type, inst_data[i].type, I2C_NAME_SIZE); -		snprintf(name, sizeof(name), "%s-%s.%d", match->id, +		snprintf(name, sizeof(name), "%s-%s.%d", dev_name(dev),  			 inst_data[i].type, i);  		board_info.dev_name = name;  		switch (inst_data[i].flags & IRQ_RESOURCE_TYPE) {  |