Dne petek, 15. april 2022 ob 17:27:38 CEST je Paul Kocialkowski napisal(a): > In order to keep the power use count fields balanced when link changes > happen between v4l2_pipeline_pm_get/set calls (in open/close), > the link_notify media operation callback needs to be registered. > > Signed-off-by: Paul Kocialkowski <paul.kocialkowski@xxxxxxxxxxx> Acked-by: Jernej Skrabec <jernej.skrabec@xxxxxxxxx> Best regards, Jernej > --- > drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c > b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c index > e59ee3e3f372..578714606c2f 100644 > --- a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c > +++ b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c > @@ -23,6 +23,7 @@ > #include <linux/sched.h> > #include <linux/sizes.h> > #include <linux/slab.h> > +#include <media/v4l2-mc.h> > > #include "sun6i_csi.h" > #include "sun6i_csi_reg.h" > @@ -574,6 +575,12 @@ void sun6i_csi_set_stream(struct sun6i_csi_device > *csi_dev, bool enable) CSI_CAP_CH0_VCAP_ON); > } > > +/* Media */ > + > +static const struct media_device_ops sun6i_csi_media_ops = { > + .link_notify = v4l2_pipeline_link_notify, > +}; > + > /* V4L2 */ > > static int sun6i_csi_link_entity(struct sun6i_csi_device *csi_dev, > @@ -683,6 +690,7 @@ static int sun6i_csi_v4l2_setup(struct sun6i_csi_device > *csi_dev) snprintf(media_dev->bus_info, sizeof(media_dev->bus_info), > "platform:%s", dev_name(dev)); > media_dev->hw_revision = 0; > + media_dev->ops = &sun6i_csi_media_ops; > media_dev->dev = dev; > > media_device_init(media_dev);