diff --git a/CMakeLists.txt b/CMakeLists.txt
index f7b515aa..cbd2c954 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -251,7 +251,8 @@ if (NOT CAL_BUILD)
find_package(LIBDRM)
if(LIBDRM_FOUND AND ("${LIBDRM_VERSION}" VERSION_GREATER_EQUAL 2.4.114))
include_directories(${LIBDRM_INCLUDE_DIRS})
- set(LIBCAMHAL_LINK_LIBS ${LIBCAMHAL_LINK_LIBS} ${LIBDRM_LIBS})
+ link_directories(${LIBDRM_LIBRARY_DIRS})
+ set(LIBCAMHAL_LINK_LIBS ${LIBCAMHAL_LINK_LIBS} ${LIBDRM_LIBRARIES})
add_definitions(-DLIBDRM_SUPPORT_MMAP_OFFSET)
endif()
endif()
@@ -331,28 +332,32 @@ endif()
# Link ia_imaging
find_package(IA_IMAGING)
set(TARGET_INCLUDE ${TARGET_INCLUDE} ${IA_IMAGING${TARGET_SUFFIX}_INCLUDE_DIRS})
- set(TARGET_LINK_LIBS ${TARGET_LINK_LIBS} ${IA_IMAGING${TARGET_SUFFIX}_LIBS})
+ set(TARGET_LINK_LIBS ${TARGET_LINK_LIBS} ${IA_IMAGING${TARGET_SUFFIX}_LIBRARIES})
+ link_directories(${IA_IMAGING${TARGET_SUFFIX}_LIBRARY_DIRS})
if(USE_PG_LITE_PIPE)
find_package(LIBGCSS)
set(TARGET_INCLUDE ${TARGET_INCLUDE} ${LIBGCSS${TARGET_SUFFIX}_INCLUDE_DIRS})
- set(TARGET_LINK_LIBS ${TARGET_LINK_LIBS} ${LIBGCSS${TARGET_SUFFIX}_LIBS})
+ set(TARGET_LINK_LIBS ${TARGET_LINK_LIBS} ${LIBGCSS${TARGET_SUFFIX}_LIBRARIES})
+ link_directories(${LIBGCSS${TARGET_SUFFIX}_LIBRARY_DIRS})
# Include libipu(4) headers
find_package(LIBIPU)
set(TARGET_INCLUDE ${TARGET_INCLUDE} ${LIBIPU${TARGET_SUFFIX}_INCLUDE_DIRS})
- set(TARGET_LINK_LIBS ${TARGET_LINK_LIBS} ${LIBIPU${TARGET_SUFFIX}_LIBS})
+ set(TARGET_LINK_LIBS ${TARGET_LINK_LIBS} ${LIBIPU${TARGET_SUFFIX}_LIBRARIES})
+ link_directories(${LIBIPU${TARGET_SUFFIX}_LIBRARY_DIRS})
else()
# Link libiacss
find_package(LIBIACSS)
set(TARGET_INCLUDE ${TARGET_INCLUDE} ${LIBIACSS${TARGET_SUFFIX}_INCLUDE_DIRS})
- set(TARGET_LINK_LIBS ${TARGET_LINK_LIBS} ${LIBIACSS${TARGET_SUFFIX}_LIBS})
+ set(TARGET_LINK_LIBS ${TARGET_LINK_LIBS} ${LIBIACSS${TARGET_SUFFIX}_LIBRARIES})
+ link_directories(${LIBIACSS${TARGET_SUFFIX}_LIBRARY_DIRS})
endif()
#--------------------------- Add libcamhal target ---------------------------
if (BUILD_CAMHAL_PLUGIN)
- set(CAMHAL_TARGET ${IPU_VER})
- set(CAMHAL_STATIC_TARGET ${IPU_VER}_static)
+ set(CAMHAL_TARGET camhal${IPU_VER})
+ set(CAMHAL_STATIC_TARGET camhal${IPU_VER}_static)
else()
set(CAMHAL_TARGET camhal)
set(CAMHAL_STATIC_TARGET camhal_static)
diff --git a/cmake/FindIA_IMAGING.cmake b/cmake/FindIA_IMAGING.cmake
index 26cbce5e..1f3f6ec7 100644
--- a/cmake/FindIA_IMAGING.cmake
+++ b/cmake/FindIA_IMAGING.cmake
@@ -20,7 +20,6 @@ if(TARGET ia_aiq)
endif()
# Get include and lib paths for IA_IMAGING from pkgconfig
-include(FindPackageHandleStandardArgs)
find_package(PkgConfig)
pkg_check_modules(IA_IMAGING${TARGET_SUFFIX} ia_imaging${TARGET_SUFFIX})
@@ -28,64 +27,37 @@ if(NOT IA_IMAGING${TARGET_SUFFIX}_FOUND)
message(FATAL_ERROR "IA_IMAGING${TARGET_SUFFIX} not found")
endif()
-set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${IA_IMAGING${TARGET_SUFFIX}_LIBRARY_DIRS})
-
-# Libraries
-find_library(IA_CCA${TARGET_SUFFIX}_LIB ia_cca${TARGET_SUFFIX})
-find_library(IA_AIQ${TARGET_SUFFIX}_LIB ia_aiq${TARGET_SUFFIX})
-find_library(IA_AIQB_PARSER${TARGET_SUFFIX}_LIB ia_aiqb_parser${TARGET_SUFFIX})
-find_library(IA_CMC_PARSER${TARGET_SUFFIX}_LIB ia_cmc_parser${TARGET_SUFFIX})
-find_library(IA_EXC${TARGET_SUFFIX}_LIB ia_exc${TARGET_SUFFIX})
-find_library(IA_MKN${TARGET_SUFFIX}_LIB ia_mkn${TARGET_SUFFIX})
-# SENSOR_EMD_DECODER
-find_library(IA_EMD${TARGET_SUFFIX}_LIB ia_emd_decoder${TARGET_SUFFIX})
+set(IA_IMAGING${TARGET_SUFFIX}_LIBRARIES
+ ia_cca${TARGET_SUFFIX}
+ ia_aiq${TARGET_SUFFIX}
+ ia_aiqb_parser${TARGET_SUFFIX}
+ ia_cmc_parser${TARGET_SUFFIX}
+ ia_exc${TARGET_SUFFIX}
+ ia_mkn${TARGET_SUFFIX}
+ ia_emd_decoder${TARGET_SUFFIX}
+ ia_nvm${TARGET_SUFFIX}
+ ia_log${TARGET_SUFFIX}
+ ia_dvs${TARGET_SUFFIX}
+ ia_coordinate${TARGET_SUFFIX}
+ ia_ltm${TARGET_SUFFIX}
+ ia_dvs${TARGET_SUFFIX}
+ ia_isp_bxt${TARGET_SUFFIX}
+ broxton_ia_pal${TARGET_SUFFIX}
# DOL_FEATURE_S
-find_library(IA_BCOMP${TARGET_SUFFIX}_LIB ia_bcomp${TARGET_SUFFIX})
+ ia_bcomp${TARGET_SUFFIX}
# DOL_FEATURE_E
-find_library(IA_NVM${TARGET_SUFFIX}_LIB ia_nvm${TARGET_SUFFIX})
-find_library(IA_LOG${TARGET_SUFFIX}_LIB ia_log${TARGET_SUFFIX})
-find_library(IA_DVS${TARGET_SUFFIX}_LIB ia_dvs${TARGET_SUFFIX})
-find_library(IA_COORDINATE${TARGET_SUFFIX}_LIB ia_coordinate${TARGET_SUFFIX})
-find_library(IA_LTM${TARGET_SUFFIX}_LIB ia_ltm${TARGET_SUFFIX})
-find_library(IA_DVS${TARGET_SUFFIX}_LIB ia_dvs${TARGET_SUFFIX})
-find_library(IA_ISP_BXT${TARGET_SUFFIX}_LIB ia_isp_bxt${TARGET_SUFFIX})
-find_library(BXT_IA_PAL${TARGET_SUFFIX}_LIB broxton_ia_pal${TARGET_SUFFIX})
-
-set(IA_IMAGING${TARGET_SUFFIX}_LIBS
- ${IA_CCA${TARGET_SUFFIX}_LIB}
- ${IA_AIQ${TARGET_SUFFIX}_LIB}
- ${IA_AIQB_PARSER${TARGET_SUFFIX}_LIB}
- ${IA_CMC_PARSER${TARGET_SUFFIX}_LIB}
- ${IA_EXC${TARGET_SUFFIX}_LIB}
- ${IA_MKN${TARGET_SUFFIX}_LIB}
- ${IA_EMD${TARGET_SUFFIX}_LIB}
- ${IA_BCOMP${TARGET_SUFFIX}_LIB}
- ${IA_NVM${TARGET_SUFFIX}_LIB}
- ${IA_LOG${TARGET_SUFFIX}_LIB}
- ${IA_DVS${TARGET_SUFFIX}_LIB}
- ${IA_COORDINATE${TARGET_SUFFIX}_LIB}
- ${IA_LTM${TARGET_SUFFIX}_LIB}
- ${IA_DVS${TARGET_SUFFIX}_LIB}
- ${IA_OB${TARGET_SUFFIX}_LIB}
- ${IA_ISP_BXT${TARGET_SUFFIX}_LIB}
- ${BXT_IA_PAL${TARGET_SUFFIX}_LIB}
)
if (NOT ENABLE_SANDBOXING)
- find_library(IA_LARD${TARGET_SUFFIX}_LIB ia_lard${TARGET_SUFFIX})
- set(IA_IMAGING${TARGET_SUFFIX}_LIBS ${IA_IMAGING${TARGET_SUFFIX}_LIBS} ${IA_LARD${TARGET_SUFFIX}_LIB})
+ set(IA_IMAGING${TARGET_SUFFIX}_LIBRARIES
+ ${IA_IMAGING${TARGET_SUFFIX}_LIBRARIES}
+ ia_lard${TARGET_SUFFIX}
+ )
endif() #ENABLE_SANDBOXING
if (USE_PG_LITE_PIPE)
- find_library(IA_P2P${TARGET_SUFFIX}_LIB ia_p2p${TARGET_SUFFIX})
- set(IA_IMAGING${TARGET_SUFFIX}_LIBS ${IA_IMAGING${TARGET_SUFFIX}_LIBS} ${IA_P2P${TARGET_SUFFIX}_LIB})
-endif()
-
-# handle the QUIETLY and REQUIRED arguments and set EXPAT_FOUND to TRUE if
-# all listed variables are TRUE
-find_package_handle_standard_args(IA_IMAGING${TARGET_SUFFIX}
- REQUIRED_VARS IA_IMAGING${TARGET_SUFFIX}_INCLUDE_DIRS IA_IMAGING${TARGET_SUFFIX}_LIBS)
-
-if(NOT IA_IMAGING${TARGET_SUFFIX}_FOUND)
- message(FATAL_ERROR "IA_IMAGING${TARGET_SUFFIX} not found")
+ set(IA_IMAGING${TARGET_SUFFIX}_LIBRARIES
+ ${IA_IMAGING${TARGET_SUFFIX}_LIBRARIES}
+ ia_p2p${TARGET_SUFFIX}
+ )
endif()
diff --git a/cmake/FindLIBDRM.cmake b/cmake/FindLIBDRM.cmake
index c71b9ae0..af66b3f7 100644
--- a/cmake/FindLIBDRM.cmake
+++ b/cmake/FindLIBDRM.cmake
@@ -15,25 +15,9 @@
#
# Get include and lib paths for LIBDRM from pkgconfig
-include(FindPackageHandleStandardArgs)
find_package(PkgConfig)
pkg_check_modules(LIBDRM libdrm)
if(NOT LIBDRM_FOUND)
message(SEND_ERROR "LIBDRM not found")
endif()
-
-set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${LIBDRM_LIBRARY_DIRS})
-
-# Libraries
-find_library(DRM_LIB drm)
-set(LIBDRM_LIBS ${DRM_LIB})
-
-# handle the QUIETLY and REQUIRED arguments and set EXPAT_FOUND to TRUE if
-# all listed variables are TRUE
-find_package_handle_standard_args(LIBDRM REQUIRED_VARS LIBDRM_INCLUDE_DIRS LIBDRM_LIBS)
-
-if(NOT LIBDRM_FOUND)
- message(SEND_ERROR "LIBDRM not found")
-endif()
-
diff --git a/cmake/FindLIBGCSS.cmake b/cmake/FindLIBGCSS.cmake
index dd0ff799..e360f7c7 100644
--- a/cmake/FindLIBGCSS.cmake
+++ b/cmake/FindLIBGCSS.cmake
@@ -15,25 +15,9 @@
#
# Get include and lib paths for LIBGCSS from pkgconfig
-include(FindPackageHandleStandardArgs)
find_package(PkgConfig)
pkg_check_modules(LIBGCSS${TARGET_SUFFIX} libgcss${TARGET_SUFFIX})
if(NOT LIBGCSS${TARGET_SUFFIX}_FOUND)
message(FATAL_ERROR "LIBGCSS${TARGET_SUFFIX} not found")
endif()
-
-set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${LIBGCSS${TARGET_SUFFIX}_LIBRARY_DIRS})
-
-# Libraries
-find_library(GCSS${TARGET_SUFFIX}_LIB gcss${TARGET_SUFFIX})
-set(LIBGCSS${TARGET_SUFFIX}_LIBS ${GCSS${TARGET_SUFFIX}_LIB})
-
-# handle the QUIETLY and REQUIRED arguments and set EXPAT_FOUND to TRUE if
-# all listed variables are TRUE
-find_package_handle_standard_args(LIBGCSS${TARGET_SUFFIX} REQUIRED_VARS LIBGCSS${TARGET_SUFFIX}_INCLUDE_DIRS LIBGCSS${TARGET_SUFFIX}_LIBS)
-
-if(NOT LIBGCSS${TARGET_SUFFIX}_FOUND)
- message(FATAL_ERROR "LIBGCSS${TARGET_SUFFIX} not found")
-endif()
-
diff --git a/cmake/FindLIBIACSS.cmake b/cmake/FindLIBIACSS.cmake
index c2485e14..9f8769d9 100644
--- a/cmake/FindLIBIACSS.cmake
+++ b/cmake/FindLIBIACSS.cmake
@@ -15,32 +15,9 @@
#
# Get include and lib paths for LIBIACSS from pkgconfig
-include(FindPackageHandleStandardArgs)
find_package(PkgConfig)
-pkg_check_modules(LIBIACSS libiacss)
-if(NOT LIBIACSS_FOUND)
- message(FATAL_ERROR "LIBIACSS not found")
+pkg_check_modules(LIBIACSS${TARGET_SUFFIX} libiacss${TARGET_SUFFIX})
+if(NOT LIBIACSS${TARGET_SUFFIX}_FOUND)
+ message(FATAL_ERROR "LIBIACSS${TARGET_SUFFIX} not found")
endif()
-
-set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${LIBIACSS_LIBRARY_DIRS})
-
-# Libraries
-find_library(GCSS_LIB gcss)
-find_library(IA_CAMERA_LIB ia_camera)
-find_library(IA_CIPF_LIB ia_cipf)
-set(LIBIACSS_LIBS
- ${GCSS_LIB}
- ${IA_CAMERA_LIB}
- ${IA_CIPF_LIB}
- )
-
-# handle the QUIETLY and REQUIRED arguments and set EXPAT_FOUND to TRUE if
-# all listed variables are TRUE
-find_package_handle_standard_args(LIBIACSS
- REQUIRED_VARS LIBIACSS_INCLUDE_DIRS LIBIACSS_LIBS)
-
-if(NOT LIBIACSS_FOUND)
- message(FATAL_ERROR "LIBIACSS not found")
-endif()
-
diff --git a/cmake/FindLIBIPU.cmake b/cmake/FindLIBIPU.cmake
index 9f8d9fc6..17a6efe8 100644
--- a/cmake/FindLIBIPU.cmake
+++ b/cmake/FindLIBIPU.cmake
@@ -28,26 +28,9 @@ else()
endif()
# Get include and lib paths for LIBIPU from pkgconfig
-include(FindPackageHandleStandardArgs)
-# Include directory
find_package(PkgConfig)
pkg_check_modules(LIBIPU${TARGET_SUFFIX} ${libipu_ver})
if(NOT LIBIPU${TARGET_SUFFIX}_FOUND)
message(FATAL_ERROR "LIBIPU${TARGET_SUFFIX} not found")
endif()
-
-set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${LIBIPU${TARGET_SUFFIX}_LIBRARY_DIRS})
-
-# Libraries
-find_library(IPU${TARGET_SUFFIX}_LIB NAMES ${libipu_ver}.a)
-set(LIBIPU${TARGET_SUFFIX}_LIBS ${IPU${TARGET_SUFFIX}_LIB})
-
-# handle the QUIETLY and REQUIRED arguments and set EXPAT_FOUND to TRUE if
-# all listed variables are TRUE
-find_package_handle_standard_args(LIBIPU${TARGET_SUFFIX}
- REQUIRED_VARS LIBIPU${TARGET_SUFFIX}_INCLUDE_DIRS LIBIPU${TARGET_SUFFIX}_LIBS)
-
-if(NOT LIBIPU${TARGET_SUFFIX}_FOUND)
- message(FATAL_ERROR "LIBIPU${TARGET_SUFFIX} not found")
-endif()
diff --git a/config/linux/ipu6ep/libcamhal_profile.xml b/config/linux/ipu6ep/libcamhal_profile.xml
index f167d84f..7a1f87ed 100644
--- a/config/linux/ipu6ep/libcamhal_profile.xml
+++ b/config/linux/ipu6ep/libcamhal_profile.xml
@@ -21,6 +21,6 @@
+ isx031,imx390,ar0234,external_source,ar0234_usb,lt6911uxc-1-1,lt6911uxc-2-2,lt6911uxe"/>
diff --git a/config/linux/ipu6ep/psys_policy_profiles.xml b/config/linux/ipu6ep/psys_policy_profiles.xml
index eb6fb30f..c4064795 100644
--- a/config/linux/ipu6ep/psys_policy_profiles.xml
+++ b/config/linux/ipu6ep/psys_policy_profiles.xml
@@ -19,8 +19,6 @@ limitations under the License.
-
-
diff --git a/config/linux/ipu6ep/sensors/lt6911uxc-1.xml b/config/linux/ipu6ep/sensors/lt6911uxc-1.xml
new file mode 100644
index 00000000..b6ee2a3b
--- /dev/null
+++ b/config/linux/ipu6ep/sensors/lt6911uxc-1.xml
@@ -0,0 +1,166 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/config/linux/ipu6ep/sensors/lt6911uxc-2.xml b/config/linux/ipu6ep/sensors/lt6911uxc-2.xml
new file mode 100644
index 00000000..29ffcac5
--- /dev/null
+++ b/config/linux/ipu6ep/sensors/lt6911uxc-2.xml
@@ -0,0 +1,152 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/modules/algowrapper/IntelPGParam.cpp b/modules/algowrapper/IntelPGParam.cpp
index 2528015c..41824fb5 100644
--- a/modules/algowrapper/IntelPGParam.cpp
+++ b/modules/algowrapper/IntelPGParam.cpp
@@ -475,6 +475,7 @@ void IntelPGParam::destroyPayloads() {
int IntelPGParam::updatePALAndEncode(const ia_binary_data* ipuParams, int payloadCount,
ia_binary_data* payloads) {
+ LOG1("@%s", __func__);
ia_err err = ia_p2p_parse(mP2pHandle, ipuParams, mP2pCacheBuffer.data);
CheckAndLogError(err != ia_err_none, UNKNOWN_ERROR, "Failed to parse PAL data.");
diff --git a/src/core/PSysProcessor.cpp b/src/core/PSysProcessor.cpp
index 0b2286f1..5e1ee525 100644
--- a/src/core/PSysProcessor.cpp
+++ b/src/core/PSysProcessor.cpp
@@ -908,8 +908,8 @@ status_t PSysProcessor::prepareTask(CameraBufferPortMap* srcBuffers,
int64_t settingSequence = getSettingSequence(*dstBuffers);
bool needRunPipe = needExecutePipe(settingSequence, inputSequence);
bool holdOnInput = needHoldOnInputFrame(settingSequence, inputSequence);
- LOG2("%s: dst sequence = %ld, src sequence = %ld, needRunPipe = %d, needReuseInput = %d",
- __func__, settingSequence, inputSequence, needRunPipe, holdOnInput);
+ LOG2("%s: dst sequence = %ld, src sequence = %ld, needRunPipe = %d, needReuseInput = %d",
+ mCameraId, __func__, settingSequence, inputSequence, needRunPipe, holdOnInput);
{
AutoMutex l(mBufferQueueLock);
diff --git a/src/core/psysprocessor/PGCommon.cpp b/src/core/psysprocessor/PGCommon.cpp
index 30a48e29..433f0859 100644
--- a/src/core/psysprocessor/PGCommon.cpp
+++ b/src/core/psysprocessor/PGCommon.cpp
@@ -884,7 +884,7 @@ int PGCommon::iterate(CameraBufferMap& inBufs, CameraBufferMap& outBufs, ia_bina
if (!inBufs.empty()) {
sequence = inBufs.begin()->second->getSequence();
}
- LOG2("%s:%s ++", sequence, getName(), __func__);
+ LOG2("%s:%s ++", mCameraId, sequence, getName(), __func__);
int ret = prepareTerminalBuffers(ipuParameters, inBufs, outBufs, sequence);
CheckAndLogError((ret != OK), ret, "%s, prepareTerminalBuffers fail with %d", getName(), ret);
@@ -932,7 +932,7 @@ int PGCommon::iterate(CameraBufferMap& inBufs, CameraBufferMap& outBufs, ia_bina
}
postTerminalBuffersDone(sequence);
- LOG2("%s:%s -- ", sequence, getName(), __func__);
+ LOG2("%s:%s -- ", mCameraId, sequence, getName(), __func__);
return ret;
}
@@ -1255,6 +1255,8 @@ int PGCommon::handleCmd(CIPR::Command** cmd, CIPR::PSysCommandConfig* cmdCfg) {
cmdCfg->issueID = reinterpret_cast(cmd);
eventCfg.commandIssueID = cmdCfg->issueID;
+ LOG3("@%s", mCameraId, __func__);
+
CIPR::Result ret = (*cmd)->setConfig(*cmdCfg);
CheckAndLogError((ret != CIPR::Result::OK), UNKNOWN_ERROR,
"%s, call CIPR::Command::setConfig fail", __func__);
diff --git a/src/iutils/CameraDump.cpp b/src/iutils/CameraDump.cpp
index 2a9282b5..612890dc 100644
--- a/src/iutils/CameraDump.cpp
+++ b/src/iutils/CameraDump.cpp
@@ -421,11 +421,24 @@ static string formatBinFileName(int cameraId, const char* prefix, BinParam_t* bi
return string(fileName);
}
-int CameraDump::checkPattern(void* data, int bufferSize, int w, int h, int stride) {
+/*
+ * return 1, match the pattern
+ *
+ * pink pattern 0xffff may be padding bytes.
+ * 0xffff observed in bottom half of frame buffer.
+ * 0xffff not observed relative to Y/U/V plane.
+ * for example:
+ * Y plane may OK, U plane bottom half is 0xffff, V plane is whole 0xffff.
+ */
+int CameraDump::matchPattern(void* data, int bufferSize, int w, int h, int stride, int format) {
uint32_t val;
int lineStart = h - 1;
int lineEnd = h - 1;
+ if (format != V4L2_PIX_FMT_UYVY) return 0;
+
+ LOG1("%s, stride %d, w %d, h %d, buffersize %d", __func__, stride, w, h, bufferSize);
+
if (gDumpPatternLineEnabled && gDumpPatternLineMin < (uint32_t)h)
lineStart = gDumpPatternLineMin;
@@ -471,12 +484,11 @@ void CameraDump::dumpImage(int cameraId, const shared_ptr& camBuff
void* pBuf = mapper.getUserPtr();
if (gDumpPatternEnabled) {
- if (!checkPattern(pBuf, bufferSize,
- camBuffer->getWidth(),
- camBuffer->getHeight(),
- camBuffer->getStride()))
- return;
- LOGI("@%s, dump pattern matched frame %d", __func__, camBuffer->getSequence());
+ if (matchPattern(pBuf, bufferSize, camBuffer->getWidth(), camBuffer->getHeight(),
+ camBuffer->getStride(), camBuffer->getFormat()))
+ LOGI("@%s, dump pattern matched frame %d", __func__, camBuffer->getSequence());
+
+ return;
}
LOG1("@%s, fd:%d, buffersize:%d, buf:%p, memoryType:%d, fileName:%s", __func__, fd, bufferSize,
pBuf, memoryType, fileName.c_str());
diff --git a/src/iutils/CameraDump.h b/src/iutils/CameraDump.h
index 08875277..bf608c60 100644
--- a/src/iutils/CameraDump.h
+++ b/src/iutils/CameraDump.h
@@ -152,7 +152,7 @@ bool isDumpFormatEnable(int dumpFormat);
void writeData(const void* data, int size, const char* fileName);
const char* getDumpPath(void);
void parseRange(char* rangeStr, uint32_t* rangeMin, uint32_t* rangeMax);
-int checkPattern(void* data, int bufferSize, int w, int h, int stride);
+int matchPattern(void* data, int bufferSize, int w, int h, int stride, int format);
/**
* Dump image according to CameraBuffer properties
*/