When creating a new sub-device, The V4L I2C subdev API has historically required drivers to pass the name of the module that implements support for the I2C device. I2C modules can be loaded based on modaliases instead of the module name. As the I2C device type name is already available to the v4l2_i2c_new_subdev* functions, make the module name argument optional and create a modalias based on the type name when no module name is provided. All in-tree drivers call those functions with a non-NULL module name argument, this change is thus harmless. Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> --- drivers/media/video/v4l2-common.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/media/video/v4l2-common.c b/drivers/media/video/v4l2-common.c index 3ce7c64..120b4ac 100644 --- a/drivers/media/video/v4l2-common.c +++ b/drivers/media/video/v4l2-common.c @@ -378,6 +378,8 @@ struct v4l2_subdev *v4l2_i2c_new_subdev_board(struct v4l2_device *v4l2_dev, if (module_name) request_module(module_name); + else + request_module(I2C_MODULE_PREFIX "%s", info->type); /* Create the i2c client */ if (info->addr == 0 && probe_addrs) -- 1.7.2.2 -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html