From e64de31e5d0be79486f3a6bbfd11965347037fe7 Mon Sep 17 00:00:00 2001 From: Ken Chang Date: Tue, 2 Apr 2019 15:05:18 +0800 Subject: media: tegra: camera: vi2: locking for vi recover Introduce rwsem for the locking between vi/csi recover call and the capture thread to avoid vi/csi register accesses during vi reset. Bug 200486098 Change-Id: I9a6b643708bec9db739ecd1e0607fe56713b00fb Signed-off-by: Ken Chang (cherry picked from commit 04765fae230bc8f7c4ae6908c7f934a4056000ae) Reviewed-on: https://git-master.nvidia.com/r/2097524 (cherry picked from commit 8e4c60d8b7ff81b817226cad1a6fd82ffaeba623) (cherry picked from commit 0313cd0998849973041daa78f57917504cf669b6) Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2309291 Reviewed-by: Bibek Basu Reviewed-by: automaticguardword Reviewed-by: mobile promotions GVS: Gerrit_Virtual_Submit Tested-by: mobile promotions --- include/media/mc_common.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/media/mc_common.h b/include/media/mc_common.h index 131087d32..c966cbd1c 100644 --- a/include/media/mc_common.h +++ b/include/media/mc_common.h @@ -33,6 +33,7 @@ #include #include #include +#include #define MAX_FORMAT_NUM 64 #define MAX_SUBDEVICES 4 @@ -262,6 +263,7 @@ struct tegra_channel { int interlace_bplfactor; atomic_t syncpt_depth; + struct rw_semaphore reset_lock; }; #define to_tegra_channel(vdev) \ -- cgit v1.2.2