Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 82f29542 authored by Michael Bestas's avatar Michael Bestas
Browse files

Merge tag 'LA.UM.9.14.r1-19500-LAHAINA.QSSI12.0' of...

Merge tag 'LA.UM.9.14.r1-19500-LAHAINA.QSSI12.0' of https://git.codelinaro.org/clo/la/platform/vendor/opensource/camera-kernel into android12-5.4-lahaina

"LA.UM.9.14.r1-19500-LAHAINA.QSSI12.0"

* tag 'LA.UM.9.14.r1-19500-LAHAINA.QSSI12.0' of https://git.codelinaro.org/clo/la/platform/vendor/opensource/camera-kernel:
  msm: camera: ife: dump data at overlflow for rdi only use case
  msm: camera: memmgr: update correct length in bufq
  msm: camera: reqmgr: Validate the link handle
  msm: camera: cdm: Fix workqueue timing issue
  msm: camera: reqmgr: Avoid freeing subdev twice
  msm: camera: tfe: dump csid clock and path data at overflow
  msm: camera: reqmgr: reader writer locks to avoid memory faults
  msm: camera: ope: Fix for 32-bit kernel
  msm: camera: reqmgr: check if link handle is correctly passed
  msm: camera: isp: Add eof notification for rdi only context
  msm: camera: config: Enable camera drivers for qcs610
  msm: camera: ope: Update request timeout for NRT/RT context
  msm: camera: ope: Increase max bl limit and max stripe to process
  msm: camera: reqmgr: Prevent session deadlock
  msm: camera: isp: handle buf_done at apply failure from deferred list
  msm: camera: cdm: Fix deadlock issue in CDM handle error
  msm: camera: isp: Fix PPI index based on the phy selection
  msm: camera: ife: Add ife num outport bound checks
  msm: camera: cdm: handle dead lock scenario
  msm: camera: isp: Add handling for flush in flushed state
  msm: camera: core: Delete request from pending list in case of error
  msm: camera: req_mgr: Table info dump removed
  msm: camera: flash: Add support for qup i2c flash
  msm: camera: jpeg: Ensure in/out map entries are within allowed range
  msm: camera: memmgr: ref count for init and deinit

Change-Id: I023497de5674200d39cabeeba781c277c4c4dfc9
parents 83c68122 68281ab7
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -38,6 +38,10 @@ ifeq ($(CONFIG_ARCH_YUPIK), y)
include $(srctree)/techpack/camera/config/yupikcamera.conf
endif

ifeq ($(CONFIG_ARCH_SM6150), y)
include $(srctree)/techpack/camera/config/sm6150camera.conf
endif

ifeq ($(CONFIG_ARCH_KONA), y)
LINUXINCLUDE    += \
		-include $(srctree)/techpack/camera/config/konacameraconf.h
@@ -83,6 +87,11 @@ LINUXINCLUDE += \
		-include $(srctree)/techpack/camera/config/yupikcameraconf.h
endif

ifeq ($(CONFIG_ARCH_SM6150), y)
LINUXINCLUDE    += \
		-include $(srctree)/techpack/camera/config/sm6150cameraconf.h
endif

endif

ifneq (,$(filter $(CONFIG_SPECTRA_CAMERA), y m))
+18 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only
# Copyright (c) 2021, The Linux Foundation. All rights reserved.

ifeq ($(CONFIG_QGKI),y)
export CONFIG_SPECTRA_CAMERA=m
$(info "QGKI Spectra Camera Building as DLKM")
else
export CONFIG_SPECTRA_CAMERA=m
$(info "GKI Spectra Camera Building as DLKM")
endif

ifneq (,$(filter $(CONFIG_SPECTRA_CAMERA), y m))
export CONFIG_SPECTRA_ISP=y
export CONFIG_SPECTRA_SENSOR=y
export CONFIG_SPECTRA_ICP=y
export CONFIG_SPECTRA_JPEG=y
export CONFIG_SPECTRA_CUSTOM=y
endif
+12 −0
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2021, The Linux Foundation. All rights reserved.
 */


#define CONFIG_SPECTRA_CAMERA 1
#define CONFIG_SPECTRA_ISP    1
#define CONFIG_SPECTRA_SENSOR 1
#define CONFIG_SPECTRA_ICP    1
#define CONFIG_SPECTRA_JPEG   1
#define CONFIG_SPECTRA_CUSTOM 1
+3 −0
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
 * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
 */

#ifndef _CAM_CDM_H_
@@ -68,6 +69,8 @@
#define CAM_CDM_BL_FIFO_LENGTH_MAX_DEFAULT 0x40
#define CAM_CDM_BL_FIFO_LENGTH_CFG_SHIFT 0x10
#define CAM_CDM_BL_FIFO_FLUSH_SHIFT 0x3
#define CAM_CDM_BL_FIFO_BOUNDARY_CHECK \
	(CAM_CDM_BL_FIFO_LENGTH_MAX_DEFAULT / 2)

#define CAM_CDM_BL_FIFO_REQ_SIZE_MAX 0x00
#define CAM_CDM_BL_FIFO_REQ_SIZE_MAX_DIV2 0x01
+0 −5
Original line number Diff line number Diff line
@@ -180,12 +180,10 @@ void cam_cdm_notify_clients(struct cam_hw_info *cdm_hw,
			(struct cam_cdm_bl_cb_request_entry *)data;

		client_idx = CAM_CDM_GET_CLIENT_IDX(node->client_hdl);
		mutex_lock(&cdm_hw->hw_mutex);
		client = core->clients[client_idx];
		if ((!client) || (client->handle != node->client_hdl)) {
			CAM_ERR(CAM_CDM, "Invalid client %pK hdl=%x", client,
				node->client_hdl);
			mutex_unlock(&cdm_hw->hw_mutex);
			return;
		}
		cam_cdm_get_client_refcount(client);
@@ -204,7 +202,6 @@ void cam_cdm_notify_clients(struct cam_hw_info *cdm_hw,
		}
		mutex_unlock(&client->lock);
		cam_cdm_put_client_refcount(client);
		mutex_unlock(&cdm_hw->hw_mutex);
		return;
	} else if (status == CAM_CDM_CB_STATUS_HW_RESET_DONE ||
			status == CAM_CDM_CB_STATUS_HW_FLUSH ||
@@ -242,7 +239,6 @@ void cam_cdm_notify_clients(struct cam_hw_info *cdm_hw,

	for (i = 0; i < CAM_PER_CDM_MAX_REGISTERED_CLIENTS; i++) {
		if (core->clients[i] != NULL) {
			mutex_lock(&cdm_hw->hw_mutex);
			client = core->clients[i];
			cam_cdm_get_client_refcount(client);
			mutex_lock(&client->lock);
@@ -265,7 +261,6 @@ void cam_cdm_notify_clients(struct cam_hw_info *cdm_hw,
			}
			mutex_unlock(&client->lock);
			cam_cdm_put_client_refcount(client);
			mutex_unlock(&cdm_hw->hw_mutex);
		}
	}
}
Loading