mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-09 05:39:54 -04:00
Merge 21017701fa on remote branch
Change-Id: I87eba0b2244645858fbc0ac22d9fdbbaf435ebc0
This commit is contained in:
commit
eeac0cb806
2 changed files with 19 additions and 1 deletions
|
|
@ -62,7 +62,7 @@ static int cam_fd_dev_open(struct v4l2_subdev *sd,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int cam_fd_dev_close_internal(struct v4l2_subdev *sd,
|
||||
int cam_fd_dev_close_internal(struct v4l2_subdev *sd,
|
||||
struct v4l2_subdev_fh *fh)
|
||||
{
|
||||
struct cam_fd_dev *fd_dev = &g_fd_dev;
|
||||
|
|
|
|||
|
|
@ -759,6 +759,24 @@ static int __cam_req_mgr_check_next_req_slot(
|
|||
|
||||
CAM_DBG(CAM_CRM, "idx: %d: slot->status %d", idx, slot->status);
|
||||
|
||||
/*
|
||||
* Some slot can't be reset due to irq congestion and
|
||||
* performance issue, we need to reset it when we
|
||||
* want to move to this slot.
|
||||
*/
|
||||
if (slot->status == CRM_SLOT_STATUS_REQ_APPLIED) {
|
||||
CAM_WARN(CAM_CRM,
|
||||
"slot[%d] wasn't reset, reset it now",
|
||||
idx);
|
||||
if (in_q->last_applied_idx == idx) {
|
||||
CAM_WARN(CAM_CRM,
|
||||
"last_applied_idx: %d",
|
||||
in_q->last_applied_idx);
|
||||
in_q->last_applied_idx = -1;
|
||||
}
|
||||
__cam_req_mgr_reset_req_slot(link, idx);
|
||||
}
|
||||
|
||||
/* Check if there is new req from CSL, if not complete req */
|
||||
if (slot->status == CRM_SLOT_STATUS_NO_REQ) {
|
||||
rc = __cam_req_mgr_check_for_lower_pd_devices(link);
|
||||
|
|
|
|||
Loading…
Reference in a new issue