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

Commit 09971cfc authored by Linux Build Service Account's avatar Linux Build Service Account
Browse files

Merge 129fc4a1 on remote branch

Change-Id: I249c58189b896e32734cf90abb03da75308fcc9c
parents b5010f62 129fc4a1
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -1333,7 +1333,7 @@ static int cam_ope_mgr_calculate_num_path(
			((clk_info->axi_path[i].path_data_type -
			CAM_AXI_PATH_DATA_OPE_START_OFFSET) >=
			CAM_OPE_MAX_PER_PATH_VOTES)) {
			CAM_WARN(CAM_OPE,
			CAM_DBG(CAM_OPE,
				"Invalid path %d, start offset=%d, max=%d",
				ctx_data->clk_info.axi_path[i].path_data_type,
				CAM_AXI_PATH_DATA_OPE_START_OFFSET,
@@ -1641,11 +1641,11 @@ static void cam_ope_ctx_cdm_callback(uint32_t handle, void *userdata,
		if (!rc)
			goto end;
	} else {
		CAM_ERR(CAM_OPE,
		CAM_INFO(CAM_OPE,
			"CDM hdl=%x, udata=%pK, status=%d, cookie=%d req_id = %llu ctx_id=%d",
			 handle, userdata, status, cookie,
			 ope_req->request_id, ctx->ctx_id);
		CAM_ERR(CAM_OPE, "Rst of CDM and OPE for error reqid = %lld",
		CAM_INFO(CAM_OPE, "Rst of CDM and OPE for error reqid = %lld",
			ope_req->request_id);
		if (status != CAM_CDM_CB_STATUS_HW_FLUSH) {
			cam_ope_dump_req_data(ope_req);
@@ -2642,8 +2642,6 @@ static int cam_ope_mgr_acquire_hw(void *hw_priv, void *hw_acquire_args)

		hw_mgr->clk_info.base_clk =
			soc_info->clk_rate[CAM_TURBO_VOTE][idx];
		hw_mgr->clk_info.curr_clk =
			soc_info->clk_rate[CAM_TURBO_VOTE][idx];
		hw_mgr->clk_info.threshold = 5;
		hw_mgr->clk_info.over_clked = 0;

@@ -2674,6 +2672,8 @@ static int cam_ope_mgr_acquire_hw(void *hw_priv, void *hw_acquire_args)
		soc_info = &dev->soc_info;
		idx = soc_info->src_clk_idx;
		clk_update.clk_rate = soc_info->clk_rate[CAM_TURBO_VOTE][idx];
		hw_mgr->clk_info.curr_clk =
			soc_info->clk_rate[CAM_TURBO_VOTE][idx];

		rc = hw_mgr->ope_dev_intf[i]->hw_ops.process_cmd(
			hw_mgr->ope_dev_intf[i]->hw_priv, OPE_HW_CLK_UPDATE,
+0 −1
Original line number Diff line number Diff line
@@ -644,7 +644,6 @@ void cam_subdev_notify_message(u32 subdev_type,
	struct cam_subdev *csd = NULL;

	list_for_each_entry(sd, &g_dev.v4l2_dev->subdevs, list) {
		sd->entity.name = video_device_node_name(sd->devnode);
		if (sd->entity.function == subdev_type) {
			csd = container_of(sd, struct cam_subdev, sd);
			if (csd->msg_cb != NULL)
+2 −3
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
 * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
 */

#include "cam_cci_dev.h"
@@ -403,8 +403,7 @@ static int cam_cci_platform_probe(struct platform_device *pdev)
		sizeof(new_cci_dev->device_name));
	new_cci_dev->v4l2_dev_str.name =
		new_cci_dev->device_name;
	new_cci_dev->v4l2_dev_str.sd_flags =
		(V4L2_SUBDEV_FL_HAS_DEVNODE | V4L2_SUBDEV_FL_HAS_EVENTS);
	new_cci_dev->v4l2_dev_str.sd_flags = V4L2_SUBDEV_FL_HAS_EVENTS;
	new_cci_dev->v4l2_dev_str.ent_function =
		CAM_CCI_DEVICE_TYPE;
	new_cci_dev->v4l2_dev_str.token =
+1 −1
Original line number Diff line number Diff line
@@ -304,6 +304,6 @@ irqreturn_t cam_cci_irq(int irq_num, void *data);
struct v4l2_subdev *cam_cci_get_subdev(int cci_dev_index);

#define VIDIOC_MSM_CCI_CFG \
	_IOWR('V', BASE_VIDIOC_PRIVATE + 23, struct cam_cci_ctrl *)
	_IOWR('V', BASE_VIDIOC_PRIVATE + 23, struct cam_cci_ctrl)

#endif /* _CAM_CCI_DEV_H_ */
+21 −13
Original line number Diff line number Diff line
@@ -589,17 +589,10 @@ int32_t cam_csiphy_config_dev(struct csiphy_device *csiphy_dev)
	return rc;
}

void cam_csiphy_shutdown(struct csiphy_device *csiphy_dev)
void cam_csiphy_clear_secbits(struct csiphy_device *csiphy_dev)
{
	struct cam_hw_soc_info *soc_info;
	int32_t i = 0;

	if (csiphy_dev->csiphy_state == CAM_CSIPHY_INIT)
		return;

	if (csiphy_dev->csiphy_state == CAM_CSIPHY_START) {
		soc_info = &csiphy_dev->soc_info;

	for (i = 0; i < csiphy_dev->acquire_count; i++) {
		if (csiphy_dev->csiphy_info.secure_mode[i])
			cam_csiphy_notify_secure_mode(
@@ -611,6 +604,21 @@ void cam_csiphy_shutdown(struct csiphy_device *csiphy_dev)

		csiphy_dev->csiphy_cpas_cp_reg_mask[i] = 0;
	}
}

void cam_csiphy_shutdown(struct csiphy_device *csiphy_dev)
{
	struct cam_hw_soc_info *soc_info;

	if (csiphy_dev->csiphy_state == CAM_CSIPHY_INIT)
		return;

	/*
	 * clear the secure bits if the provider crashed
	 */
	cam_csiphy_clear_secbits(csiphy_dev);
	if (csiphy_dev->csiphy_state == CAM_CSIPHY_START) {
		soc_info = &csiphy_dev->soc_info;

		cam_csiphy_reset(csiphy_dev);
		cam_soc_util_disable_platform_resource(soc_info, true, true);
Loading