OSDN Git Service

media: Split v4l2_pipeline_pm_use into v4l2_pipeline_pm_{get, put}
authorEzequiel Garcia <ezequiel@collabora.com>
Fri, 24 Jan 2020 20:35:43 +0000 (21:35 +0100)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Mon, 2 Mar 2020 14:11:40 +0000 (15:11 +0100)
commit8fd390b89cc8ca786bc1b66d8a76512a6068b081
treefb5f0c974505a685f67ced9dd9ff1e5c6970c1bb
parent8fb12ce2ec9d569e1b3051f01cee13ff27e29466
media: Split v4l2_pipeline_pm_use into v4l2_pipeline_pm_{get, put}

Currently, v4l2_pipeline_pm_use() prototype is:

  int v4l2_pipeline_pm_use(struct media_entity *entity, int use)

Where the 'use' argument shall only be set to '1' for enable/power-on,
or to '0' for disable/power-off. The integer return is specified
as only meaningful when 'use' is set to '1'.

Let's enforce this semantic by splitting the function in two:
v4l2_pipeline_pm_get and v4l2_pipeline_pm_put. This is done
for several reasons.

It makes the API easier to use (or harder to misuse).
It removes the constraint on the values the 'use' argument
shall take. Also, it removes the need to constraint
the return value, by making v4l2_pipeline_pm_put void return.

And last, it's more consistent with other kernel APIs, such
as the runtime pm APIs, which makes the code more symmetric.

Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Documentation/media/kapi/csi2.rst
drivers/media/platform/omap3isp/ispvideo.c
drivers/media/platform/qcom/camss/camss-video.c
drivers/media/platform/rcar-vin/rcar-v4l2.c
drivers/media/platform/sunxi/sun4i-csi/sun4i_v4l2.c
drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c
drivers/media/v4l2-core/v4l2-mc.c
drivers/staging/media/imx/imx-media-capture.c
drivers/staging/media/omap4iss/iss_video.c
drivers/staging/media/rkisp1/rkisp1-capture.c
include/media/v4l2-mc.h