From d9927380ed7c8366f762049be9f3fee225860833 Mon Sep 17 00:00:00 2001
From: liyujie <2352380935@qq.com>
Date: Thu, 28 Aug 2025 12:04:16 +0000
Subject: [PATCH] [2/4]解决USB摄像头打开相机预览界面绿屏

---
 android/hardware/aw/camera/3_4/allwinnertech/libAWIspApi/libisp_new/isp_cfg/isp_ini_parse.c |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/android/hardware/aw/camera/3_4/allwinnertech/libAWIspApi/libisp_new/isp_cfg/isp_ini_parse.c b/android/hardware/aw/camera/3_4/allwinnertech/libAWIspApi/libisp_new/isp_cfg/isp_ini_parse.c
index 1061a57..13c18da 100755
--- a/android/hardware/aw/camera/3_4/allwinnertech/libAWIspApi/libisp_new/isp_cfg/isp_ini_parse.c
+++ b/android/hardware/aw/camera/3_4/allwinnertech/libAWIspApi/libisp_new/isp_cfg/isp_ini_parse.c
@@ -34,6 +34,10 @@
 #include "SENSOR_H/gc030a_mipi_a100.h"
 #include "SENSOR_H/gc5025_mipi_a100.h"
 #include "SENSOR_H/ov5648_mipi_a100.h"
+#include "SENSOR_H/ov13850_cap_a100.h"
+#include "SENSOR_H/ov13850_crop_a100.h"
+#include "SENSOR_H/ov13850_pre_a100.h"
+#include "SENSOR_H/ov13850_2_cap_a100.h"
 #elif (ISP_VERSION >= 521)
 #include "SENSOR_H/imx317_default_ini_v459.h"
 #include "SENSOR_H/imx317_wdr_ini_v459.h"
@@ -797,6 +801,10 @@
 	{"gc2385_mipi", "gc2385_mipi_isp_cfg", 1600, 1200, 30, 0, 0, &gc2385_mipi_isp_cfg},
 	{"gc5025_mipi", "gc5025_mipi_isp_cfg", 2592, 1944, 25, 0, 0, &gc5025_mipi_isp_cfg},
 	{"ov5648_mipi", "ov5648_mipi_isp_cfg", 2592, 1936, 30, 0, 0, &ov5648_mipi_isp_cfg},
+	{"ov13850_mipi", "ov13850_pre_isp_cfg", 2112, 1568, 30, 0, 0, &ov13850_pre_isp_cfg},
+	{"ov13850_mipi", "ov13850_crop_isp_cfg", 3264, 2448, 25, 0, 0, &ov13850_crop_isp_cfg},
+	{"ov13850_mipi", "ov13850_cap_isp_cfg", 4208, 3120, 24, 0, 0, &ov13850_cap_isp_cfg},
+	{"ov13850_mipi_2", "ov13850_2_cap_isp_cfg", 4208, 3120, 24, 0, 0, &ov13850_2_cap_isp_cfg},
 #elif (ISP_VERSION >= 521)
 	{"imx317_mipi", "imx317_default_ini_v459", 1920, 1080, 30, 0, 0, &imx317_default_ini_v459},
 	{"imx317_mipi", "imx317_wdr_ini_4v5", 1920, 1080, 30, 1, 0, &imx317_wdr_ini_v459},
@@ -1064,6 +1072,7 @@
 	int i, ret = 0;
 #if !ISP_LIB_USE_INIPARSER
 	struct isp_cfg_pt *cfg = NULL;
+        char sensor_name_2[20];
 
 	for (i = 0; i < array_size(cfg_arr); i++) {
 		if (!strncmp(sensor_name, cfg_arr[i].sensor_name, 18) &&
@@ -1076,6 +1085,23 @@
 		}
 	}
 
+#if (ISP_VERSION == 522)
+        if (isp_id == 1 && w > 4000 && h >3000) {
+            strcpy(sensor_name_2, sensor_name);
+            strcat(sensor_name_2, "_2");
+            for (i = 0; i < array_size(cfg_arr); i++) {
+                if (!strncmp(sensor_name_2, cfg_arr[i].sensor_name, 14) &&
+                        (w == cfg_arr[i].width) && (h == cfg_arr[i].height) &&
+                        (fps == cfg_arr[i].fps) && (wdr == cfg_arr[i].wdr)) {
+                    cfg = cfg_arr[i].cfg;
+                    ISP_PRINT("find %s_%d_%d_%d_%d [%s] isp config\n", cfg_arr[i].sensor_name,
+                            cfg_arr[i].width, cfg_arr[i].height, cfg_arr[i].fps, cfg_arr[i].wdr, cfg_arr[i].isp_cfg_name);
+                    break;
+                }
+            }
+        }
+#endif
+
 	if (i == array_size(cfg_arr)) {
 		for (i = 0; i < array_size(cfg_arr); i++) {
 			if (!strncmp(sensor_name, cfg_arr[i].sensor_name, 18) && (0 == cfg_arr[i].wdr)) {

--
Gitblit v1.6.2