summaryrefslogtreecommitdiffstats
path: root/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c
diff options
context:
space:
mode:
authorPaul Kocialkowski <paul.kocialkowski@bootlin.com>2022-11-03 16:30:53 +0000
committerMauro Carvalho Chehab <mchehab@kernel.org>2022-11-25 07:06:09 +0000
commitd0895e0f81731cc781a25e4f298c2af07f16e4cf (patch)
tree5a485e992e6e60bc5d09b25e9625b5b02343484b /drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c
parent85469b9e6634cf64836568587c82ecba330bb38f (diff)
downloadlinux-stable-d0895e0f81731cc781a25e4f298c2af07f16e4cf.tar.gz
linux-stable-d0895e0f81731cc781a25e4f298c2af07f16e4cf.tar.bz2
linux-stable-d0895e0f81731cc781a25e4f298c2af07f16e4cf.zip
media: sun6i-csi: Move power management to runtime pm in capture
Let's just enable the module when we start using it (at stream on) and benefit from runtime pm instead of enabling it at first open. Also reorder the call to v4l2_pipeline_pm_get. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com> Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Diffstat (limited to 'drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c')
-rw-r--r--drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c24
1 files changed, 0 insertions, 24 deletions
diff --git a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c
index 7944736d27e1..26d8f5eb11ce 100644
--- a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c
+++ b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c
@@ -148,30 +148,6 @@ bool sun6i_csi_is_format_supported(struct sun6i_csi_device *csi_dev,
return false;
}
-int sun6i_csi_set_power(struct sun6i_csi_device *csi_dev, bool enable)
-{
- struct device *dev = csi_dev->dev;
- struct regmap *regmap = csi_dev->regmap;
- int ret;
-
- if (!enable) {
- regmap_update_bits(regmap, SUN6I_CSI_EN_REG,
- SUN6I_CSI_EN_CSI_EN, 0);
- pm_runtime_put(dev);
-
- return 0;
- }
-
- ret = pm_runtime_resume_and_get(dev);
- if (ret < 0)
- return ret;
-
- regmap_update_bits(regmap, SUN6I_CSI_EN_REG, SUN6I_CSI_EN_CSI_EN,
- SUN6I_CSI_EN_CSI_EN);
-
- return 0;
-}
-
static enum csi_input_fmt get_csi_input_format(struct sun6i_csi_device *csi_dev,
u32 mbus_code, u32 pixformat)
{