diff --git a/drivers/media/i2c/Kconfig b/drivers/media/i2c/Kconfig index 6f215745844f..087f786f8656 100644 --- a/drivers/media/i2c/Kconfig +++ b/drivers/media/i2c/Kconfig @@ -725,6 +725,17 @@ config VIDEO_APTINA_PLL config VIDEO_SMIAPP_PLL tristate +config VIDEO_GC2053 + tristate "GalaxyCore GC2053 sensor support" + depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API + depends on MEDIA_CAMERA_SUPPORT + select V4L2_FWNODE + help + Support for the GalaxyCore GC2053 sensor. + + To compile this driver as a module, choose M here: the + module will be called gc2053. + config VIDEO_GC2093 tristate "GalaxyCore GC2093 sensor support" depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API diff --git a/drivers/media/i2c/Makefile b/drivers/media/i2c/Makefile index 3d8209073454..1b1930be73f5 100644 --- a/drivers/media/i2c/Makefile +++ b/drivers/media/i2c/Makefile @@ -111,6 +111,7 @@ obj-$(CONFIG_VIDEO_I2C) += video-i2c.o obj-$(CONFIG_VIDEO_ML86V7667) += ml86v7667.o obj-$(CONFIG_VIDEO_OV2659) += ov2659.o obj-$(CONFIG_VIDEO_TC358743) += tc358743.o +obj-$(CONFIG_VIDEO_GC2053) += gc2053.o obj-$(CONFIG_VIDEO_GC2093) += gc2093.o obj-$(CONFIG_VIDEO_GC2145) += gc2145.o obj-$(CONFIG_VIDEO_GC2385) += gc2385.o diff --git a/drivers/media/i2c/gc2053.c b/drivers/media/i2c/gc2053.c index ad69fc14527e..04562af60ea0 100644 --- a/drivers/media/i2c/gc2053.c +++ b/drivers/media/i2c/gc2053.c @@ -1068,7 +1068,7 @@ static int gc2053_g_frame_interval(struct v4l2_subdev *sd, return 0; } -static int gc2053_g_mbus_config(struct v4l2_subdev *sd, +static int gc2053_g_mbus_config(struct v4l2_subdev *sd, unsigned int pad_id, struct v4l2_mbus_config *config) { struct gc2053 *gc2053 = to_gc2053(sd); @@ -1080,7 +1080,7 @@ static int gc2053_g_mbus_config(struct v4l2_subdev *sd, V4L2_MBUS_CSI2_CHANNEL_0 | V4L2_MBUS_CSI2_CONTINUOUS_CLOCK; - config->type = V4L2_MBUS_CSI2; + config->type = V4L2_MBUS_CSI2_DPHY; config->flags = val; return 0; } @@ -1268,7 +1268,6 @@ static const struct v4l2_subdev_core_ops gc2053_core_ops = { static const struct v4l2_subdev_video_ops gc2053_video_ops = { .s_stream = gc2053_s_stream, .g_frame_interval = gc2053_g_frame_interval, - .g_mbus_config = gc2053_g_mbus_config, }; static const struct v4l2_subdev_pad_ops gc2053_pad_ops = { @@ -1277,6 +1276,7 @@ static const struct v4l2_subdev_pad_ops gc2053_pad_ops = { .enum_frame_interval = gc2053_enum_frame_interval, .get_fmt = gc2053_get_fmt, .set_fmt = gc2053_set_fmt, + .get_mbus_config = gc2053_g_mbus_config, }; static const struct v4l2_subdev_ops gc2053_subdev_ops = {