summaryrefslogtreecommitdiff
path: root/drivers/media/platform/qcom/camss/camss.h
diff options
context:
space:
mode:
authorRobert Foss <robert.foss@linaro.org>2021-03-16 20:19:21 +0300
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>2021-03-22 14:30:14 +0300
commit2f6f8af672038b34d71e16ce9b30c59cc987db2b (patch)
treed142ee5e5879165a1b45944139c697a0bfb195c1 /drivers/media/platform/qcom/camss/camss.h
parent2f8b67195e4839c02151f255a5c93c250b6df968 (diff)
downloadlinux-2f6f8af672038b34d71e16ce9b30c59cc987db2b.tar.xz
media: camss: Refactor VFE power domain toggling
For Titan ISPs clocks fail to re-enable during vfe_get() after any vfe has been halted and its corresponding power domain power has been detached. Since all of the clocks depend on all of the PDs, per VFE PD detaching is no option for Gen2 HW. In order to not have regressions on for Gen1 HW, refactor the power domain management into hardware version specific code paths. Signed-off-by: Robert Foss <robert.foss@linaro.org> Reviewed-by: Andrey Konovalov <andrey.konovalov@linaro.org> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'drivers/media/platform/qcom/camss/camss.h')
-rw-r--r--drivers/media/platform/qcom/camss/camss.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/media/platform/qcom/camss/camss.h b/drivers/media/platform/qcom/camss/camss.h
index 0f8f77801001..33ed16ab821d 100644
--- a/drivers/media/platform/qcom/camss/camss.h
+++ b/drivers/media/platform/qcom/camss/camss.h
@@ -57,9 +57,9 @@ struct resources_ispif {
};
enum pm_domain {
- PM_DOMAIN_VFE0,
- PM_DOMAIN_VFE1,
- PM_DOMAIN_COUNT
+ PM_DOMAIN_VFE0 = 0,
+ PM_DOMAIN_VFE1 = 1,
+ PM_DOMAIN_GEN1_COUNT = 2, /* CAMSS series of ISPs */
};
enum camss_version {
@@ -83,8 +83,8 @@ struct camss {
int vfe_num;
struct vfe_device *vfe;
atomic_t ref_count;
- struct device *genpd[PM_DOMAIN_COUNT];
- struct device_link *genpd_link[PM_DOMAIN_COUNT];
+ struct device *genpd[PM_DOMAIN_GEN1_COUNT];
+ struct device_link *genpd_link[PM_DOMAIN_GEN1_COUNT];
};
struct camss_camera_interface {