Bläddra i källkod

msm: camera: jpeg: Increase number of jpeg contexts

Fixed out of memory issue in triple camera usecase by increasing
number of logical jpeg contexts.

CRs-Fixed: 2587592
Change-Id: I25c99c0be8d3986bc11fbc2894a0dbf27c645d4e
Signed-off-by: Suraj Dongre <[email protected]>
Signed-off-by: Mukund Madhusudan Atre <[email protected]>
Suraj Dongre 5 år sedan
förälder
incheckning
2e181b7f9c

+ 3 - 3
drivers/cam_jpeg/cam_jpeg_dev.c

@@ -97,7 +97,7 @@ static int cam_jpeg_dev_remove(struct platform_device *pdev)
 	int rc;
 	int i;
 
-	for (i = 0; i < CAM_CTX_MAX; i++) {
+	for (i = 0; i < CAM_JPEG_CTX_MAX; i++) {
 		rc = cam_jpeg_context_deinit(&g_jpeg_dev.ctx_jpeg[i]);
 		if (rc)
 			CAM_ERR(CAM_JPEG, "JPEG context %d deinit failed %d",
@@ -135,7 +135,7 @@ static int cam_jpeg_dev_probe(struct platform_device *pdev)
 		goto unregister;
 	}
 
-	for (i = 0; i < CAM_CTX_MAX; i++) {
+	for (i = 0; i < CAM_JPEG_CTX_MAX; i++) {
 		rc = cam_jpeg_context_init(&g_jpeg_dev.ctx_jpeg[i],
 			&g_jpeg_dev.ctx[i],
 			&node->hw_mgr_intf,
@@ -147,7 +147,7 @@ static int cam_jpeg_dev_probe(struct platform_device *pdev)
 		}
 	}
 
-	rc = cam_node_init(node, &hw_mgr_intf, g_jpeg_dev.ctx, CAM_CTX_MAX,
+	rc = cam_node_init(node, &hw_mgr_intf, g_jpeg_dev.ctx, CAM_JPEG_CTX_MAX,
 		CAM_JPEG_DEV_NAME);
 	if (rc) {
 		CAM_ERR(CAM_JPEG, "JPEG node init failed %d", rc);

+ 2 - 2
drivers/cam_jpeg/cam_jpeg_dev.h

@@ -24,8 +24,8 @@
 struct cam_jpeg_dev {
 	struct cam_subdev sd;
 	struct cam_node *node;
-	struct cam_context ctx[CAM_CTX_MAX];
-	struct cam_jpeg_context ctx_jpeg[CAM_CTX_MAX];
+	struct cam_context ctx[CAM_JPEG_CTX_MAX];
+	struct cam_jpeg_context ctx_jpeg[CAM_JPEG_CTX_MAX];
 	struct mutex jpeg_mutex;
 	int32_t open_cnt;
 };

+ 1 - 2
drivers/cam_jpeg/jpeg_hw/include/cam_jpeg_hw_intf.h

@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: GPL-2.0-only */
 /*
- * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
  */
 
 #ifndef CAM_JPEG_HW_INTF_H
@@ -8,7 +8,6 @@
 
 #include "cam_cpas_api.h"
 
-#define CAM_JPEG_CTX_MAX              8
 #define CAM_JPEG_DEV_PER_TYPE_MAX     1
 
 #define CAM_JPEG_CMD_BUF_MAX_SIZE     128

+ 3 - 1
drivers/cam_jpeg/jpeg_hw/include/cam_jpeg_hw_mgr_intf.h

@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: GPL-2.0-only */
 /*
- * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
  */
 
 #ifndef CAM_JPEG_HW_MGR_INTF_H
@@ -10,6 +10,8 @@
 #include <media/cam_jpeg.h>
 #include <media/cam_defs.h>
 
+#define CAM_JPEG_CTX_MAX        16
+
 int cam_jpeg_hw_mgr_init(struct device_node *of_node,
 	uint64_t *hw_mgr_hdl, int *iommu_hdl);