38 lines
1.2 KiB
Diff
38 lines
1.2 KiB
Diff
diff --git a/drivers/media/i2c/cvs/v4l2.c b/drivers/media/i2c/cvs/v4l2.c
|
|
--- a/drivers/media/i2c/cvs/v4l2.c
|
|
+++ b/drivers/media/i2c/cvs/v4l2.c
|
|
@@ -13,6 +13,7 @@
|
|
#include <media/v4l2-async.h>
|
|
#include <media/v4l2-common.h>
|
|
#include <media/v4l2-ctrls.h>
|
|
+#include <media/v4l2-device.h>
|
|
#include <media/v4l2-event.h>
|
|
#include <media/v4l2-fwnode.h>
|
|
#include <media/v4l2-mc.h>
|
|
@@ -400,7 +401,7 @@ static int cvs_csi_notify_bound(struct v4l2_async_notifier *notifier,
|
|
struct v4l2_async_connection *asc)
|
|
{
|
|
struct icvs *ctx = notifier_to_csi(notifier);
|
|
- int pad;
|
|
+ int pad, ret;
|
|
|
|
pad = media_entity_get_fwnode_pad(&sd->entity, asc->match.fwnode,
|
|
MEDIA_PAD_FL_SOURCE);
|
|
@@ -409,9 +410,13 @@ static int cvs_csi_notify_bound(struct v4l2_async_notifier *notifier,
|
|
|
|
ctx->remote = &sd->entity.pads[pad];
|
|
|
|
- return media_create_pad_link(&sd->entity, pad, &ctx->subdev.entity,
|
|
- ICVS_CSI_PAD_SINK, MEDIA_LNK_FL_ENABLED |
|
|
- MEDIA_LNK_FL_IMMUTABLE);
|
|
+ ret = media_create_pad_link(&sd->entity, pad, &ctx->subdev.entity,
|
|
+ ICVS_CSI_PAD_SINK, MEDIA_LNK_FL_ENABLED |
|
|
+ MEDIA_LNK_FL_IMMUTABLE);
|
|
+ if (ret)
|
|
+ return ret;
|
|
+
|
|
+ return v4l2_device_register_subdev_nodes(sd->v4l2_dev);
|
|
}
|
|
|
|
/**
|