summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorAshwini Rao <ashwinik@codeaurora.org>2016-01-21 15:17:21 -0800
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-25 16:02:55 -0700
commit0f31b83fcffa50016a08e3b1de1882ebf5f6dafb (patch)
tree98aafd2dc6b8dd47f0f41dd7e5ec69893016da9a /drivers
parent850b0ec74f0c9299813b6f263c7a74c4727c3ff2 (diff)
msm: fd: Add FD HW reset sequence after halt
The FD hardware needs to be reset everytime after halt is called. Adding the reset sequence. CRs-fixed: 961394 Change-Id: I129de341e619d8c8f6faa69d43c9d13ba21dd88f Signed-off-by: Ashwini Rao <ashwinik@codeaurora.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/platform/msm/camera_v2/fd/msm_fd_hw.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/media/platform/msm/camera_v2/fd/msm_fd_hw.c b/drivers/media/platform/msm/camera_v2/fd/msm_fd_hw.c
index a0efe89f61d0..b8ee18da44cd 100644
--- a/drivers/media/platform/msm/camera_v2/fd/msm_fd_hw.c
+++ b/drivers/media/platform/msm/camera_v2/fd/msm_fd_hw.c
@@ -493,6 +493,14 @@ static void msm_fd_hw_halt(struct msm_fd_device *fd)
if (!time)
dev_err(fd->dev, "Face detection halt timeout\n");
+ /* Reset sequence after halt */
+ msm_fd_hw_write_reg(fd, MSM_FD_IOMEM_MISC, MSM_FD_MISC_SW_RESET,
+ MSM_FD_MISC_SW_RESET_SET);
+ msm_fd_hw_write_reg(fd, MSM_FD_IOMEM_CORE, MSM_FD_CONTROL,
+ MSM_FD_CONTROL_SRST);
+ msm_fd_hw_write_reg(fd, MSM_FD_IOMEM_MISC,
+ MSM_FD_MISC_SW_RESET, 0);
+ msm_fd_hw_write_reg(fd, MSM_FD_IOMEM_CORE, MSM_FD_CONTROL, 0);
}
}