Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

media: core: Don't use i2c_client->driver

The 'driver' field of the i2c_client struct is redundant and is going to be
removed. The results of the expressions 'client->driver.driver->field' and
'client->dev.driver->field' are identical, so replace all occurrences of the
former with the later.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>

authored by

Lars-Peter Clausen and committed by
Wolfram Sang
f9d32f25 c7110f37

+9 -9
+3 -3
drivers/media/v4l2-core/tuner-core.c
··· 43 43 44 44 #define UNSET (-1U) 45 45 46 - #define PREFIX (t->i2c->driver->driver.name) 46 + #define PREFIX (t->i2c->dev.driver->name) 47 47 48 48 /* 49 49 * Driver modprobe parameters ··· 452 452 } 453 453 454 454 tuner_dbg("%s %s I2C addr 0x%02x with type %d used for 0x%02x\n", 455 - c->adapter->name, c->driver->driver.name, c->addr << 1, type, 455 + c->adapter->name, c->dev.driver->name, c->addr << 1, type, 456 456 t->mode_mask); 457 457 return; 458 458 ··· 556 556 int mode_mask; 557 557 558 558 if (pos->i2c->adapter != adap || 559 - strcmp(pos->i2c->driver->driver.name, "tuner")) 559 + strcmp(pos->i2c->dev.driver->name, "tuner")) 560 560 continue; 561 561 562 562 mode_mask = pos->mode_mask;
+5 -5
drivers/media/v4l2-core/v4l2-common.c
··· 236 236 v4l2_subdev_init(sd, ops); 237 237 sd->flags |= V4L2_SUBDEV_FL_IS_I2C; 238 238 /* the owner is the same as the i2c_client's driver owner */ 239 - sd->owner = client->driver->driver.owner; 239 + sd->owner = client->dev.driver->owner; 240 240 sd->dev = &client->dev; 241 241 /* i2c_client and v4l2_subdev point to one another */ 242 242 v4l2_set_subdevdata(sd, client); 243 243 i2c_set_clientdata(client, sd); 244 244 /* initialize name */ 245 245 snprintf(sd->name, sizeof(sd->name), "%s %d-%04x", 246 - client->driver->driver.name, i2c_adapter_id(client->adapter), 246 + client->dev.driver->name, i2c_adapter_id(client->adapter), 247 247 client->addr); 248 248 } 249 249 EXPORT_SYMBOL_GPL(v4l2_i2c_subdev_init); ··· 274 274 loaded. This delay-load mechanism doesn't work if other drivers 275 275 want to use the i2c device, so explicitly loading the module 276 276 is the best alternative. */ 277 - if (client == NULL || client->driver == NULL) 277 + if (client == NULL || client->dev.driver == NULL) 278 278 goto error; 279 279 280 280 /* Lock the module so we can safely get the v4l2_subdev pointer */ 281 - if (!try_module_get(client->driver->driver.owner)) 281 + if (!try_module_get(client->dev.driver->owner)) 282 282 goto error; 283 283 sd = i2c_get_clientdata(client); 284 284 ··· 287 287 if (v4l2_device_register_subdev(v4l2_dev, sd)) 288 288 sd = NULL; 289 289 /* Decrease the module use count to match the first try_module_get. */ 290 - module_put(client->driver->driver.owner); 290 + module_put(client->dev.driver->owner); 291 291 292 292 error: 293 293 /* If we have a client but no subdev, then something went wrong and
+1 -1
include/media/v4l2-common.h
··· 35 35 printk(level "%s %d-%04x: " fmt, name, i2c_adapter_id(adapter), addr , ## arg) 36 36 37 37 #define v4l_client_printk(level, client, fmt, arg...) \ 38 - v4l_printk(level, (client)->driver->driver.name, (client)->adapter, \ 38 + v4l_printk(level, (client)->dev.driver->name, (client)->adapter, \ 39 39 (client)->addr, fmt , ## arg) 40 40 41 41 #define v4l_err(client, fmt, arg...) \