<?xml version="1.0" encoding="utf-8" ?>
<!--========================================================================-->
<!-- Copyright (c) 2021-2022 Qualcomm Technologies, Inc.                    -->
<!-- All Rights Reserved.                                                   -->
<!-- Confidential and Proprietary - Qualcomm Technologies, Inc.             -->
<!--========================================================================-->



<settingsGroup Name="Hardware Independent Settings">
    
    <enum Name="CSLModeType" Prefix="CSLMode" Description="Enumerates CSL mode types">
        <enumerator Name="Hardware" Description="Hardware CSL implementation, using the standard CamX KMD and hardware" />
        <enumerator Name="IFH" Description="Infinitely Fast Hardware CSL implementation, bypassing the KMD" />
        <enumerator Name="Presil" Description="Presil CSIM CSL Implementation" />
        <enumerator Name="PresilRUMI" Description="Presil RUMI CSL Implementation" />
    </enum>
    <enum Name="CSLCameraFamilyType" Prefix="CSLCameraFamilyType" Description="CSL Camera family type">
        <enumerator Name="CameraSS" Description="Camera Subsystem present in Bear, Badger and HoneyBadger." />
        <enumerator Name="Titan" Description="Titan camera architecture." />
    </enum>
    <enum Name="EnableAFAlgoType" Prefix="EnableAFAlgo" Description="List of HAF algorithm that can be enabled overriding tuning">
        <enumerator Name="Disabled" Description="AF algorithm tuning override is disabled" />
        <enumerator Name="PDAF" Description="Override tuning and enable only PDAF" />
        <enumerator Name="TOF" Description="Override tuning and enable only TOF" />
        <enumerator Name="DCIAF" Description="Override tuning and enable only DCIAF" />
        <enumerator Name="CAF" Description="Override tuning and enable only CAF" />
    </enum>
    <enum Name="AFFullsweepType" Prefix="AFFullsweep" Description="Enumerates AF fullsweep types">
        <enumerator Name="Disabled" Description="AF fullsweep is disabled" />
        <enumerator Name="InfinityToMacro" Description="Performs fullsweep starting from Infinity to Macro" />
        <enumerator Name="MacroToInfinity" Description="Performs fullsweep starting from Macro to Infinity" />
        <enumerator Name="BothDirection" Description="Performs fullsweep starting from Infinity to Macro and back" />
    </enum>
    <enum Name="AFManualLensControlType" Prefix="AFManualLensControl" Description="Enumerates type of AF manual lens control">
        <enumerator Name="Disabled" Description="Manual lens control is disabled" />
        <enumerator Name="DAC" Description="Move lens manually using DAC value" />
        <enumerator Name="Logical" Description="Move lens manually giving logical lens position" />
    </enum>
    <enum Name="OutputFormatType" Prefix="OutputFormat" Description="Enumerates output format types">
        <enumerator Name="YUV420NV12" Description="Linear NV12 format" />
        <enumerator Name="UBWCNV12" Description="UBWC NV12 format" />
        <enumerator Name="UBWCTP10" Description="UBWC TP10 format" />
        <enumerator Name="RAWPLAIN16" Description="Raw Plain16 format" />
        <enumerator Name="PD10" Description="PD10 format" />
        <enumerator Name="P010" Description="LinerP010 format" />
        <enumerator Name="YUV420NV21" Description="Linear NV21 format" />
        <enumerator Name="RAWPLAIN64" Description="Raw Plain64 format" />
    </enum>
    <enum Name="OverrideVideoOutputFormatType" Prefix="OverrideVideoOutputFormat" Description="Enumerates video output format types">
        <enumerator Name="Default" Description="Default" />
        <enumerator Name="UBWCTP10" Description="UBWC TP10 format" />
        <enumerator Name="UBWCTP10Lossy" Description="UBWC TP10 Lossy format" />
        <enumerator Name="UBWCNV12" Description="UBWC NV12 format" />
        <enumerator Name="UBWCNV12Lossy" Description="UBWC NV12 Lossy format" />
        <enumerator Name="P010" Description="Linear P010 format" />
        <enumerator Name="NV12Venus" Description="NV12 Venus format" />
    </enum>
    <enum Name="overrideVideoDataspaceType" Prefix="overrideVideoDataspace" Description="Enumerates video dataspace types">
        <enumerator Name="Unknown" Description="Dataspace Unknown" />
        <enumerator Name="BT601_625" Description="Dataspace BT601_625" />
        <enumerator Name="BT709" Description="Dataspace BT709" />
    </enum>
    <enum Name="FDProcessingControlType" Prefix="FDProcessingControl" Description="Enumerates FD processing controls">
        <enumerator Name="ForceDisable" Description="Force disable FD processing" />
        <enumerator Name="ForceEnable" Description="Force enable FD processing" />
        <enumerator Name="AutoEnable" Description="Enable FD processing in auto control mode" />
        <enumerator Name="AppRequest" Description="Enable/Disable FD processing based on App request" />
    </enum>
    <enum Name="FDBaseResolutionType" Prefix="FDBaseResolution" Description="FD base resolutions, 0:15 width 16:32 height">
      <enumerator Name="640x480" Description="FD base resolution width 640 height 480" Number="31457920" />
      <enumerator Name="854x480" Description="FD base resolution width 854 height 480" Number="31458134" />
      <enumerator Name="320x240" Description="FD base resolution width 320 height 240" Number="15728960" />
      <enumerator Name="427x240" Description="FD base resolution width 427 height 240" Number="15729067" />
      <enumerator Name="384x288" Description="FD base resolution width 384 height 288" Number="18874752" />
    </enum>
    <enum Name="FDConfigSourceType" Prefix="FDConfig" Description="Enumerates FD config source types">
        <enumerator Name="Default" Description="Fetch default configuration" />
        <enumerator Name="VendorTag" Description="Fetch configuration from vendor tag" />
        <enumerator Name="Binary" Description="Fetch configuration from tunning binary" />
    </enum>
    <enum Name="FDFLType" Prefix="" Description="Enumerates FD FL types">
        <enumerator Name="EVAFL" Description="Use EVA HW based FL solution" />
        <enumerator Name="DLFL" Description="Use DL based FL solution" />
    </enum>
    <enum Name="FDMultiCamProcessingType" Prefix="FDMultiCam" Description="Processing criteria in multi-cam when both running">
        <enumerator Name="ProcessMasterOnly" Description="Process only master requests at full fps" />
        <enumerator Name="ProcessAuxOnly" Description="Process only aux requests at full fps" />
        <enumerator Name="ProcessBoth" Description="Process both master and aux at half fps" />
    </enum>
    <enum Name="FDClientType" Prefix="" Description="Enumerates FD Client types">
        <enumerator Name="FDHWHybrid" Description="Use FD HW as FD Client" />
        <enumerator Name="FDSWOnly" Description="Use FD SW as FD Client" />
        <enumerator Name="FDDLDSP" Description="Use FD DL as FD Client" />
        <enumerator Name="FDDLCPU" Description="Use FD DL as FD Client, CPU based" />
        <enumerator Name="FDUsecaseDependent" Description="Use HW EVAFD or SW DLFD as FD Client based on usecase" />
    </enum>
    <enum Name="SWFrameSyncType" Prefix="" Description="Enumerates SW frame sync type">
        <enumerator Name="SOFSync" Description="Sync the frames SOF" />
        <enumerator Name="MidOfFrameSync" Description="Sync the middle of active frame" />
    </enum>
    <enum Name="FDMinFaceSizeSetting" Prefix="" Description="Enumerates FD min face size setting">
        <enumerator Name="MinFaceSizeNone" Description="No min face size" />
        <enumerator Name="MinFaceSize20x20" Description="Min face size 20x20" />
        <enumerator Name="MinFaceSize25x25" Description="Min face size 25x25" />
        <enumerator Name="MinFaceSize32x32" Description="Min face size 32x32" />
        <enumerator Name="MinFaceSize40x40" Description="Min face size 40x40" />
    </enum>
    <enum Name="FDMaxFPSSetting" Prefix="" Description="Enumerates FD max frame rate setting">
        <enumerator Name="NoForce" Description="Use max frame rate setting in FD configuration" />
        <enumerator Name="Force15FPS" Description="Force 15FPS max frame rate" />
        <enumerator Name="Force30FPS" Description="Force 30FPS max frame rate" />
    </enum>
    <enum Name="ImageDumpType" Prefix="ImageDump" Description="Used as a mask to enable image dumps for specific nodes">
        <enumerator Name="None" Description="No dumps" Number="0x0" />
        <enumerator Name="IFE" Description="All output ports for IFE" Number="0x1" />
        <enumerator Name="IPE" Description="All output ports for IPE" Number="0x2" />
        <enumerator Name="BPS" Description="All output ports for BPS" Number="0x4" />
        <enumerator Name="JPEG" Description="All JPEG output ports for all JPEG nodes" Number="0x8" />
        <enumerator Name="FDHw" Description="All output ports for FDHw" Number="0x10" />
        <enumerator Name="LRME" Description="All output ports for LRME" Number="0x20" />
        <enumerator Name="RANSAC" Description="All output ports for RANSAC" Number="0x40" />
        <enumerator Name="ChiNode" Description="All output ports for all ChiNodes" Number="0x80" />
        <enumerator Name="CVP" Description="All output ports for CVP" Number="0x100" />
        <enumerator Name="TFE" Description="All output ports for TFE" Number="0x200" />
        <enumerator Name="OPE" Description="All output ports for OPE" Number="0x400" />
        <enumerator Name="QSAT" Description="All output ports for QSAT" Number="0x800" />
        <enumerator Name="ITOF" Description="All output ports for ITOF" Number="0x1000" />
        <enumerator Name="CRE" Description="All output ports for CRE" Number="0x2000" />
        <enumerator Name="Misc" Description="All other nodes not explicitly listed above" Number="0x40000000" />
    </enum>
    <enum Name="DualLEDCalibrationType" Prefix="" Description="Dual LED Calibration modes">
          <enumerator Name="DualLEDCalibrationDisabled" Description="Dual LED Calibration is disabled" />
          <enumerator Name="DualLEDCalibrationTuning" Description="Dual LED is being tuned for the golden module" />
          <enumerator Name="DualLEDCalibrationCalibration" Description="Dual LED is being calibrated" />
    </enum>
    <enum Name="CHIPartialDataType" Prefix="" Description="Enumerates CHI Partial Data types">
      <enumerator Name="CHIPartialDataDisable" Description="CHI Partial Data will be disabled" />
      <enumerator Name="CHIPartialDataSeparate" Description="CHI Partial Data will be sent separately" />
      <enumerator Name="CHIPartialDataCombined" Description="CHI Partial Data will be sent along with Core Partial Data" />
    </enum>
    <enum Name="ThreadSchedulingMode" Prefix="" Description="Enumerates thread scheduling modes">
      <enumerator Name="NormalSched" Description="Normal scheduling" />
      <enumerator Name="RealtimeMinPrioritySched" Description="Realtime scheduling but min priority" />
      <enumerator Name="RealtimeMaxPrioritySched" Description="Realtime scheduling and max priority" />
    </enum>
    <enum Name="DepthSWFrameSyncType" Prefix="" Description="Enumerates depth SW frame sync type">
        <enumerator Name="DepthSOESync" Description="Sync the frames SOE" />
        <enumerator Name="DepthSOFSync" Description="Sync the frames SOF" />
        <enumerator Name="DepthMidOfFrameSync" Description="Sync the middle of active frame" />
    </enum>
    <enum Name="SensorSubModule" Prefix="" Description="Enumerates sensor sub modules">
        <enumerator Name="ActuatorDriver" Description="Actuator Driver module " Number="1" />
        <enumerator Name="EEPROMDriver" Description="EEPROM Driver module" Number="2" />
        <enumerator Name="FlashDriver" Description="Flash Driver module" Number="4" />
        <enumerator Name="OISDriver" Description="OIS Driver module" Number="8" />
    </enum>
    <enum Name="OISCalibrationType" Prefix="" Description="Indicates source of OIS calibration">
        <enumerator Name="NoCalibration" Description="Disable calibration " Number="0" />
        <enumerator Name="OISXML" Description="OIS calibration Data from OIS driver XML" Number="1" />
        <enumerator Name="OTP" Description="OIS calibration Data from EEPROM/OTP" Number="2" />
    </enum>
    
    <settingsSubGroup Name="Camera Hardware Settings">
        <setting>
            <Name>Camera Hardware</Name>
            <Help>This is to indicate Camera Hardware
              TITAN  = 0x1
              MIMAS  = 0x2
              MIMAS2 = 0x3
            </Help>
            <VariableName>cameraHardware</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.camerahardware</SetpropKey>
            <DefaultValue>0x1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>MFHDR Fusion HW</Name>
            <Help>Indicates if MFHDR HW is available</Help>
            <VariableName>MFHDRHWEnable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mfhdrhwenable</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Extended Max ZoomRatio HW</Name>
            <Help>Indicates the extended max zoomratio</Help>
            <VariableName>extendedMaxZoomRatio</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>persist.vendor.camera.extendedmaxzoomratio</SetpropKey>
            <DefaultValue>100.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable fast zoom out</Name>
            <Help>Indicates if fast zoom out is enabled</Help>
            <VariableName>enableFastZoomOut</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enablefastzoomout</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Enable BL Stretch for Stats</Name>
          <Help>Enables BL Stretch for IFE Stats before BLS IQ block</Help>
          <VariableName>BLStretchEnable</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>vendor.debug.camera.BLStretchEnable</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
          <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>IPE IQ enable MCTF</Name>
          <Help>This is to enable LRME/Ransac dependancies for MCTF</Help>
          <VariableName>enableMCTF</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableMCTF</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Enable/Disable VIULL</Name>
          <Help>Enable/disable VIULL(low light) algo processing</Help>
          <VariableName>enableVIULLProcessing</VariableName>
          <VariableType>BOOL</VariableType>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>Enable/Disable VIULL plus version</Name>
          <Help>Enable/disable VIULL(low light) algo processing</Help>
          <VariableName>enableVIULLPlus</VariableName>
          <VariableType>BOOL</VariableType>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>Enable/Disable Cascade 2D LUT</Name>
          <Help>Enable/disable Cascade 2D LUT processing</Help>
          <VariableName>enableCascade2DLut</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>vendor.debug.camera.enableCascade2DLut</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
          <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>SFE Raw SHDR</Name>
            <Help>SFE Raw will be used for SHDR 1 exp usecase</Help>
            <VariableName>enableSHDR1ExpInlineSFE</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.sHDR1ExpInlineSFE</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>SFE Offline FS</Name>
            <Help>Enable SFE for offline FS</Help>
            <VariableName>enableOfflineFS</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableOfflineFS</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Enable/Disable AWB Refinement</Name>
          <Help>Enable/disable AWB Refinement(Low light feature) link</Help>
          <VariableName>enableAWBR</VariableName>
          <VariableType>BOOL</VariableType>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Pipeline Settings">
        <setting>
            <Name>Output Format</Name>
            <Help>Output format for IPE Preview and Video output (if no override)</Help>
            <VariableName>outputFormat</VariableName>
            <VariableType>OutputFormatType</VariableType>
            <SetpropKey>persist.vendor.camera.outputFormat</SetpropKey>
            <DefaultValue>UBWCNV12</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Output Video Format</Name>
            <Help>Output format for Video output</Help>
            <VariableName>overrideVideoOutputFormat</VariableName>
            <VariableType>OverrideVideoOutputFormatType</VariableType>
            <SetpropKey>persist.vendor.camera.overrideVideoOutputFormat</SetpropKey>
            <DefaultValue>Default</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Stride Setting</Name>
            <Help>Use the Stride Configuration data provided by OEM</Help>
            <VariableName>IsStrideSettingEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Number of Metadata Results</Name>
            <Help>Max number of metadata results supported. Value &gt; 1 means partial metadata results
                  are enabled. 2 is the max value supported</Help>
            <VariableName>numMetadataResults</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.numMetadataResults</SetpropKey>
            <DefaultValue>2</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>Max HAL Requests</Name>
            <Help>Max HAL requests the driver accepts before queueing.</Help>
            <VariableName>maxHalRequests</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.maxHalRequests</SetpropKey>
            <DefaultValue>6</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>Wait all results timeout</Name>
            <Help>Timeout value when waiting for all results</Help>
            <VariableName>waitAllResultsTimeout</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.waitAllResultsTimeout</SetpropKey>
            <DefaultValue>3500</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>Cache Enable for EGL Buffers</Name>
            <Help>Enables/Disable EGL Buffers Cache</Help>
            <VariableName>enableEGLCache</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableEGLCache</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>DMA fence enable for framework buffers</Name>
            <Help>Enable DMA fence for framework preview buffers</Help>
            <VariableName>enableDMAFence</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableDMAFence</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>DMA fence enable at high fps</Name>
            <Help>Enable DMA fence for framework preview buffers at 60 fps preview</Help>
            <VariableName>enableDMAFenceHighFPS</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableDMAFenceHighFPS</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Synx fence enablement</Name>
            <Help>Enable Synx fence</Help>
            <VariableName>enableSynxFence</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableSynxFence</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Batch initial dependency processing </Name>
            <Help>Enable initial dependency (sequence 0) batch processing </Help>
            <VariableName>enableInitDepBatchProcessing</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableInitDepBatchProcessing</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Synx Cross Node Propagation</Name>
            <Help>Enable synx fence propogation from output port of a node to input port of "source" nodes</Help>
            <VariableName>enableSynxCrossNodePropagation</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableSynxCrossNodePropagation</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="HAL Settings">
        <setting>
            <Name>Number of HAL worker threads</Name>
            <Help>The number of threads to use in the device's threadpool</Help>
            <VariableName>numWorkerThreads</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.numWorkerThreads</SetpropKey>
            <DefaultValue>3</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable CHI Override</Name>
            <Help>Enable/Disable CHI Override path</Help>
            <VariableName>chiOverrideEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.chiOverrideEnable</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Multi Camera</Name>
            <Help>Enable/Disable multi camera framework with Back Aux camera</Help>
            <VariableName>multiCameraEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.multicam</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Aux Camera Standby</Name>
            <Help>Enable/Disable standby sensor of aux session</Help>
            <VariableName>enableAuxSensorStandby</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableAuxSensorStandby</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Minimum Aux Frame Rate</Name>
            <Help>Minimum Aux Frame Rate of aux session</Help>
            <VariableName>minAuxFPS</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.minAuxFPS</SetpropKey>
            <DefaultValue>10</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Delay Submit Aux Request</Name>
            <Help>Enable/Disable delay submit aux request</Help>
            <VariableName>enableDelaySubmitAuxRequest</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableDelaySubmitAuxRequest</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Use Legacy Logical Camera Tables</Name>
            <Help>Whether to use the XML generated tables or the legacy logical camera tables</Help>
            <VariableName>multiCameraUseLegacyTables</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.uselegacytables</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Allow Partial Metadata</Name>
            <Help>Enable/Disable partial metadata to be sent</Help>
            <VariableName>allowPartialDataToBeSent</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.allowPartialDataToBeSent</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Asymmetric Bokeh Input</Name>
            <Help>
                In case of Bokeh mode, use physical stream as fusion pipeline input if FWK size &gt; RDI size.
                If actual bokeh node is enabled, we can enable it. Otherwise, we need to disable it in case of dummyrtb.
            </Help>
            <VariableName>enableAsymmetricBokehInput</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableAsymmetricBokehInput</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Physical Camera Jpeg</Name>
            <Help>Enable/Disable JPEG Capture per Physical Camera</Help>
            <VariableName>multiCameraJPEG</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.multicamJPEG</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Use Logical Camera XML</Name>
            <Help>Use this xml file when building the logical cam info. This must exist under
                  chi-cdk/oem/qcom/multicamera/logical_cam_info/TARGET_BOARD_PLATFORM_</Help>
            <VariableName>multiCameraLogicalXMLFile</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.multicameralogicalxmlfile</SetpropKey>
            
            <DefaultValue>_</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Multi Camera with front</Name>
            <Help>Enable/Disable multi camera framework with Front Main camera</Help>
            <VariableName>multiCameraEnableFront</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.front</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Multi Camera with VR</Name>
            <Help>Enable/Disable multi camera framework with VR</Help>
            <VariableName>multiCameraVREnable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.vr</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Multi Camera Sensor Hardware Sync Mask</Name>
             <Help>Will limit enable HW sync to only the specified  usecase.
                    This works only if multiCameraEnable is set.
                      Disabled                                      = 0x0
                      Enable HW sync for RTB                        = 0x1
                      Enable HW sync for SAT                        = 0x2
                      Enable HW sync for VR                         = 0x4
                      Enable HW sync for PhyStream                  = 0x8
                      Enable HW sync for all the usecae             = 0xF
            </Help>
            <VariableName>multiCameraHWSyncMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.HWSyncMask</SetpropKey>
            <DefaultValue>0x8</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Multi Camera Kernel/Software Frame Sync Mask</Name>
            <Help>
                Enable multi camera framework kernel frame sync for the
                specified usecase.
                This will help to apply both the real time request settings
                as close as possible.
                This works only if multiCameraEnable is set.
                      Disabled                                         = 0x0
                      Enable frame sync for RTB                        = 0x1
                      Enable frame sync for SAT                        = 0x2
                      Enable frame sync for VR                         = 0x4
                      Enable frame sync for PhyStream                  = 0x8
                      Enable frame sync for all the usecae             = 0xF
            </Help>
            <VariableName>multiCameraFrameSyncMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.frameSyncMask</SetpropKey>
            <DefaultValue>0x9</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Multi Camera FPS Match Mask</Name>
            <Help>
                Enable multi camera fps match for the specified usecase.
                This works only if multiCameraEnable is set.
                      Disabled                                        = 0x0
                      Enable FPS match for RTB                        = 0x1
                      Enable FPS match for SAT                        = 0x2
                      Enable FPS match for VR                         = 0x4
                      Enable FPS match for PhyStream                  = 0x8
                      Enable FPS match for all the usecae             = 0xF
            </Help>
            <VariableName>multiCameraFPSMatchMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.FPSMatchMask</SetpropKey>
            <DefaultValue>0xB</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Multi Camera Exposure Time Match</Name>
            <Help>
                This is a sub setting for FPS match, we will use same exposure time
                for the multi cameras if this setting is TRUE.
            </Help>
            <VariableName>multiCameraExposureTimeMatch</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.exposureTimeMatch</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Multi Camera SW Frame Sync Interval</Name>
            <Help>
                Configure the frame interval to do the multi camera SW frame
                sync, the SW frame sync will be disabled if it is configured
                to 0.
                The supported interval is 4~8 to enable the SW frame sync which
                is based on the performance test, the default value is 5, we can
                increase the interval to 8 if we find any performance issues or
                frame drop issues which are caused by this feature.
            </Help>
            <VariableName>multiCameraSWFrameSyncInterval</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.SWFrameSyncInterval</SetpropKey>
            <DefaultValue>5</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>SW Frame Sync Type</Name>
            <Help>
                Indicat the type of SW frame sync.
                SOFSync        - SOF timestamp as reference point
                MidOfFrameSync - MidOfFrame timestamp as reference point
            </Help>
            <VariableName>multiCameraSWFrameSyncType</VariableName>
            <VariableType>SWFrameSyncType</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.SWFrameSyncType</SetpropKey>
            <DefaultValue>MidOfFrameSync</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Master Switch Based on SAT Algorithm</Name>
            <Help>
                Master Switch can be controlled in two ways. One way is
                based on SAT algorithm output and second way is from the
                multi camera xml file.

                TRUE  - switch master camera based on SAT algorithm
                FALSE - switch master camera based on multi camera xml file
            </Help>
            <VariableName>enableSATAlgoMasterSwitch</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.enableSATAlgoMasterSwitch</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable SWMFHDR</Name>
            <Help>
                Enable SWMFHDR by this setting.

                TRUE  - SWMFHDR enable
                FALSE - SWMFHDR disable
            </Help>
            <VariableName>enableSWMFHDR</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.enableSWMFHDR</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable HWMFHDR Snapshot</Name>
            <Help>
                Enable HWMFHDR Snapshot by this setting.
                TRUE  - enable  HWMFHDR Snapshot
                FALSE - disable HWMFHDR Snapshot
            </Help>
            <VariableName>enableHWMFHDRSnapshot</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableHWMFHDRSnapshot</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>SFE Raw Out</Name>
            <Help>SFE Raw will be used for SHDR usecase</Help>
            <VariableName>enableSHDRawOutSFE</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableSHDRawOutSFE</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Offline IFE</Name>
            <Help>
                Enable Offline IFE by this setting.
            </Help>
            <VariableName>enableOfflineIFE</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableOfflineIFE</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Detect frame sync status</Name>
            <Help>
                Enable frame sync status detection by this setting.
            </Help>
            <VariableName>multiCameraDetectFrameSync</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.detectFrameSync</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Minimum startup exposure time</Name>
            <Help>Use minimum startup exposure time to get the first valid frame earlier</Help>
            <VariableName>enableMinimumStartupExposure</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableMinimumStartupExposure</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>AE Lock Frames during HW Sync Start</Name>
            <Help>Number of Frames where AE is locked for HW sync to latch on</Help>
            <VariableName>numberOfAELockFrames</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.AESyncLockFrames</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Bayer SAT</Name>
            <Help>Enable/Disable Bayer SAT, for SAT to work with bayer data</Help>
            <VariableName>enableBayerSAT</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableBayerSAT</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Bayer TMC stats</Name>
            <Help>Enable/Disable Bayer TMC stats of LTMDC to work with bayer LTM</Help>
            <VariableName>enableBayerTMCStats</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableBayerTMCStats</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Screen Grab</Name>
            <Help>Enable/Disable Screengrab, Use video stream for live snapshots</Help>
            <VariableName>enableScreenGrab</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableScreenGrab</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Capture Halt</Name>
            <Help>Enable/Disable Capture Halt</Help>
            <VariableName>enableCaptureHalt</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableScreenGrab</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
         <setting>
            <Name>Export secure camera</Name>
            <Help>Export the secure camera for IR camera application</Help>
            <VariableName>exportSecureCamera</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.exportSecureCamera</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable RAW</Name>
            <Help>Enables/Disables RAW Processing</Help>
            <VariableName>enableRAWProcessing</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableRAWProcessing</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Max RAW sizes exposed to App</Name>
            <Help>Max RAW sizes exposed in static capability to APP and minimum should be 1</Help>
            <VariableName>maxRAWSizes</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.maxRAWSizes</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>CustomCapResolution</Name>
            <Help>
                Add custom resolution to the static caps.
                example:- 2000X1500, 3000X2500
            </Help>
            <VariableName>CustomCapResolution</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.CustomCapResolution</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Internal HAL Pixel Stream Configuration</Name>
            <Help>Enables/Disables Internal HAL Pixel Stream Configuration</Help>
            <VariableName>enableInternalHALPixelStreamConfig</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableInternalHALPixelStreamConfig</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable NCS service as part of the pipeline</Name>
            <Help>Enables/Disable NCS service</Help>
            <VariableName>enableNCSService</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableNCSService</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Periperal service as part of the pipeline</Name>
            <Help>Enables/Disable Peripheral service</Help>
            <VariableName>enablePeripheralService</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enablePeripheralService</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Sample count to trigger HeartBeatMgr reconnect</Name>
            <Help>Set the sample count to trigger HeartBeatMgr reconnect
                  For example, 400 means HeartBeatMgr will trigger recovery when doesn't receive 400 sample.
            </Help>
            <VariableName>reconnectCountOfHeartBeatMgr</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.reconnectCountOfHeartBeatMgr</SetpropKey>
            <DefaultValue>20</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable NCS data dump</Name>
            <Help>Enables/Disable NCS data dump</Help>
            <VariableName>enableNCSDataDump</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableNCSDataDump</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable NCS QSEE2 interface</Name>
            <Help>True means using QSEE2
                  False means using QSEE1
            </Help>
            <VariableName>enableNCSQSEE2</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableNCSQSEE2</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable NCS Offline Dependencies interface</Name>
            <Help>True means enabling offline dependencies
                  False means disabling offline dependencies
            </Help>
            <VariableName>enableNCSOFD</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableNCSOFD</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable NCS Offline Dependencies interface Image Dumping</Name>
            <Help>True means enabling offline dependencies Image Dumping
                  False means disabling offline dependencies Image Dumping
            </Help>
            <VariableName>enableNCSOFDImageDump</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableNCSOFDImageDump</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Depth</Name>
            <Help>Enables/Disable Depth</Help>
            <VariableName>enableDepth</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableDepth</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Depth Frame Sync</Name>
            <Help>Enables/Disable Depth Frame Sync</Help>
            <VariableName>enableDepthFrameSync</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.enableDepthFrameSync</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Depth SW Frame Sync Type</Name>
            <Help>
                Indicat the type of depth SW frame sync.
                DepthSOESync        - SOE timestamp as reference point
                DepthSOFSync        - SOF timestamp as reference point
                DepthMidOfFrameSync - MidOfFrame timestamp as reference point
            </Help>
            <VariableName>DepthSWFrameSyncType</VariableName>
            <VariableType>DepthSWFrameSyncType</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.DepthSWFrameSyncType</SetpropKey>
            <DefaultValue>DepthSOESync</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>The Max Num Of Cameras Is Allowed To Do Frame Sync In MFL</Name>
            <Help>The Max Num is limited by KMD</Help>
            <VariableName>maxNumOfCamerasForFrameSync</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.maxNumOfCamerasForFrameSync</SetpropKey>
            <DefaultValue>2</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>OIS polling mode</Name>
            <Help>OIS polling thread operating mode</Help>
            <VariableName>OISThreadSchedMode</VariableName>
            <VariableType>ThreadSchedulingMode</VariableType>
            <SetpropKey>persist.vendor.camera.OISThreadSchedMode</SetpropKey>
            <DefaultValue>RealtimeMinPrioritySched</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Spectral Sensor Interface</Name>
            <Help>Enables/Disable Spectral Sensor</Help>
            <VariableName>enableSpectralSensor</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableSpectralSensor</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>ALS Sensor Interface</Name>
            <Help>Enables/Disable ALS Sensor in AEC</Help>
            <VariableName>enableALSLightSensor</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableALSLightSensor</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Override Active Camera Based On State</Name>
            <Help>
                Skip multiple active camera in transition zone if zoom is beyond a threshold
            </Help>
            <VariableName>enableMCXSPMActiveCamStateOpt</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableMCXSPMActiveCamStateOpt</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Multicamera select primary rear camera</Name>
            <Help>Settings to forcefully choose the primary rear camera for MCX session</Help>
            <VariableName>MCXPrimaryRearCameraIndex</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.MCXPrimaryRearCameraIndex</SetpropKey>
            <DefaultValue>0xFFFFFFFF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Cap minimum reprocess input width exposed to Frameworks</Name>
            <Help>
               Cap minimum reprocess width of input dimension supported by HAL.
                By default all sizes upto 5MP(2592x1944) will be advertised.
                Default value of this is 2592
            </Help>
            <VariableName>minReprocessInputWidth</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.minReprocessInputWidth</SetpropKey>
            <DefaultValue>2592</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Cap minimum reprocess input height exposed to Frameworks</Name>
            <Help>
                Cap minimum reprocess height of input dimension supported by HAL.
                By default all sizes upto 5MP(2592x1944) will be advertised.
                Default value of this is 1944
            </Help>
            <VariableName>minReprocessInputHeight</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.minReprocessInputHeight</SetpropKey>
            <DefaultValue>1944</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Minimum input output resolution</Name>
            <Help>
                Minimum input output resolution for stream configuration
                Default value is 0MP
            </Help>
            <VariableName>minInOutResolution</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.minInOutResolution</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Maximum input output resolution</Name>
            <Help>
                Maximum input output resolution for stream configuration
                Default value is 200MP
            </Help>
            <VariableName>maxInOutResolution</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.maxInOutResolution</SetpropKey>
            <DefaultValue>200</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable TOF interface as part of the pipeline</Name>
            <Help>Enables/Disable TOF interface</Help>
            <VariableName>enableTOFInterface</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableTOFInterface</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Thermal mitigation</Name>
            <Help>Enables/Disable thermal mitigation</Help>
            <VariableName>enableThermalMitigation</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableThermal</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Cap number of max_buffers for secure camera usecase</Name>
            <Help>Limits max_buffers of producer for secure camera usecase</Help>
            <VariableName>maxBuffersSecureCamera</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.maxBuffersSecureCamera</SetpropKey>
            <DefaultValue>8</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Native HEIF</Name>
            <Help>Enable/Disable native HEIF</Help>
            <VariableName>enableNativeHEIF</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableNativeHEIF</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Induce additional sleep in ms in chi nodes</Name>
            <Help>
              Induce additional sleep in millisecond in chi nodes in offline pipeline.
              Induce sleep time more than 500 milliseconds for adversial test.
            </Help>
            <VariableName>induceSleepInChiNode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.induceSleepInChiNode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable HAL format override</Name>
            <Help>Enable/Disable HAL format override</Help>
            <VariableName>enableHALFormatOverride</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableHALFormatOverride</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Max number of accepted errors</Name>
          <Help>Limit the max number of duplicate result or notification related errors accepted</Help>
          <VariableName>maxNumberOfAcceptedErrors</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.maxNumberOfAcceptedErrors</SetpropKey>
          <DefaultValue>10</DefaultValue>
          <Dynamic>FALSE</Dynamic>
          <Public>FALSE</Public>
        </setting>
        <setting>
          <Name>Enable Resource Manager</Name>
          <Help>Enable/Disable CamX Resource Manager</Help>
          <VariableName>enableResourceManager</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.enableResourceManager</SetpropKey>
          <DefaultValue>1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
    <setting>
        <Name>Enable PSM stream crop</Name>
        <Help>Enable/Disable zoom to use PSM stream crop info</Help>
        <VariableName>enableStreamCropZoom</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableStreamCropZoom</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
    </setting>
    <setting>
        <Name>Enable Populate Request Crop Info</Name>
        <Help>Enable/Disable to populate PSM stream crop info with ancestor stream crop info</Help>
        <VariableName>enablePopulateRequestCropInfo</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enablePopulateRequestCropInfo</SetpropKey>
        
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
    </setting>
        <setting>
          <Name>BPS Realtime Sensor ID</Name>
          <Help>Sensor ID for BPS Based Realtime Camera</Help>
          <VariableName>bpsRealtimeSensorId</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.bpsRealtimeSensorId</SetpropKey>
          <DefaultValue>0xFFFFFFFF</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable BLM client</Name>
            <Help>Enables/Disable Bandwidth Limits Manager Client</Help>
            <VariableName>enableBLMClient</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableBLMClient</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Override Device Memory Type</Name>
          <Help>
                Device Type Based on Memory Capability
                High Memory (greater than 2GB) Device value is 0x00000001
                Low Memory (Less than 2GB) Device value is 0
          </Help>
          <VariableName>overrideDeviceMemType</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.overrideDeviceMemType</SetpropKey>
          <DefaultValue>0x00000001</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Feature2 CTS Path</Name>
            <Help>Routes CTS through Feature2 path</Help>
            <VariableName>enableFeature2CTS</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableFeature2CTS</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Binary Graph Dump</Name>
            <Help>Allows Binary Dump for graphs at camera boot</Help>
            <VariableName>enableFeature2BinaryGraphDump</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableFeature2BinaryGraphDump</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Pruned Graph Binary Dump</Name>
            <Help>Allows Binary Dump for pruned graphs for debug purpose</Help>
            <VariableName>enableFeature2PrunedGraphDump</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableFeature2PrunedGraphDump</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable CTS to use fewer Resolution Combinations</Name>
            <Help>CTS testcases will use modified resolution combinations</Help>
            <VariableName>enableModifiedCTSResolution</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableModifiedCTSResolution</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>isSHDRFusionOffline</Name>
            <Help>SHDR HW PreviewVideo Fusion is offline or not</Help>
            <VariableName>isSHDRFusionOffline</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.isSHDRFusionOffline</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>SetSHDRMode</Name>
            <Help>Set HDR mode
            </Help>
            <VariableName>setHDRMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.setHDRMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Select SHDR and Auto Exposure usecase</Name>
            <Help>Select SHDR and Auto Exposure usecase
                0x0  = Disable
                0x1  = Enable SHDR and run in fixed exposure count, fallback to 1exp for some special cases
                0x2  = Enable SHDR and run in auto exposure count, fallback to 1exp for some special cases
            </Help>
            <VariableName>selectSHDRAutoExposureUsecase</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.selectSHDRAutoExposureUsecase</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Disable60FPS2EXPSHDRSupport</Name>
            <Help>Disable 60FPS 2 exposure SHDR Support</Help>
            <VariableName>disable60FPS2EXPSHDRSupport</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.disable60FPS2EXPSHDRSupport</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Max FPS support for SHDR snapshot</Name>
            <Help>Max FPS support for SHDR snapshot</Help>
            <VariableName>maxSHDRSnapshotFPS</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>persist.vendor.camera.maxSHDRSnapshotFPS</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>ExposeSHDRRAWSize</Name>
            <Help>Expose SHDR RAW size</Help>
            <VariableName>exposeSHDRRAWSize</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.exposeSHDRRAWSize</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>EnableAFBracketing</Name>
            <Help>Enable AF Bracketing
            </Help>
            <VariableName>enableAFB</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableAFB</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>SetAutoHDRMode</Name>
            <Help>Set Auto HDR mode
            </Help>
            <VariableName>setAutoHDRMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.setAutoHDRMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EnableAutoHDRCapability</Name>
            <Help>Enable Auto HDR Capability
          </Help>
            <VariableName>enableAutoHDRCapability</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableAutoHDRCapability</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EnableSATPreviewEISV2</Name>
            <Help>Enable/Disable SAT Preview EISV2, for SAT Preview to work with EIS2</Help>
            <VariableName>enableSATPreviewEISV2</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableSATPreviewEISV2</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EnablePostZoomFOV</Name>
            <Help>Enable post-zoomed translation for Control Zoom Ratio</Help>
            <VariableName>enablePostZoomFOV</VariableName>
            <VariableType>UINT</VariableType>
            <DefaultValue>1</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
         <setting>
            <Name>EnableQSATWithSPM</Name>
            <Help>Enable QSAT with static policy manager</Help>
            <VariableName>enableQSATWithSPM</VariableName>
            <VariableType>UINT</VariableType>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable MFL OEM customization</Name>
            <Help>OEM can customize some special functions in MFL</Help>
            <VariableName>enableMFLOEMCustomization</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableMFLOEMCustomization</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Throttle requests for look ahead nodes</Name>
            <Help>Throttle requests for look ahead nodes to optimize buffer consumption</Help>
            <VariableName>throttleRequestForLookAheadNodes</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.throttleRequestForLookAheadNodes</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>halBufferMgrMode</Name>
            <Help>Set Hal Buffer Mgr mode
                  0:Disable hal buffer mgr mode
                  1:Backward compatible
                  2:Cached mode
            </Help>
            <VariableName>halBufferMgrMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.halBufferMgrMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>halBufferCacheMin</Name>
            <Help>The minimum buffer in cached mode when halBufferMgrMode is set to 2(cached mode)
                  The value shall be great than 0 and less than the max_buffers returned in configure_stream.
            </Help>
            <VariableName>halBufferCacheMin</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.halBufferCacheMin</SetpropKey>
            <DefaultValue>3</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>halBufferCacheMax</Name>
            <Help>The maximum buffer in cached mode when halBufferMgrMode is set to 2(cached mode)
                  The value shall &gt;= halBufferCacheMin and less than the max_buffers returned in configure_stream.
            </Help>
            <VariableName>halBufferCacheMax</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.halBufferCacheMax</SetpropKey>
            <DefaultValue>6</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable HAL Output Buffer Combined</Name>
            <Help>Enable HAL output buffer combined mode for HFR</Help>
            <VariableName>HALOutputBufferCombined</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.HALOutputBufferCombined</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Use combined output buffer for FPS and higher</Name>
            <Help>Use combined output buffer for the specified FPS and higher in HFR mode</Help>
            <VariableName>FPSForHALOutputBufferCombined</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.FPSForHALOutputBufferCombined</SetpropKey>
            <DefaultValue>120</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable custom HFR Configurations</Name>
            <Help>Enable custom HFR Configurations to support both batch mode and output buffer combined mode</Help>
            <VariableName>enableCustomHFRConfig</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableCustomHFRConfig</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Maximum fps supported in HFR batch mode</Name>
            <Help>Maximum fps supported in HFR batch mode if enableCustomHFRConfig is TRUE</Help>
            <VariableName>HFRMaxBatchFPS</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.HFRMaxBatchFPS</SetpropKey>
            <DefaultValue>240</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Preview FPS On HFR Mode</Name>
            <Help>Preview FPS On HFR Mode</Help>
            <VariableName>PreviewFPSOnHFRMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.PreviewFPSOnHFRMode</SetpropKey>
            <DefaultValue>60</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable/Disable DSM</Name>
            <Help>
                Enable/Disable Dynamic Stream Mapping by this setting
                TRUE  - DSM enable
                FALSE - DSM disable
            </Help>
            <VariableName>enableDSM</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.multicam.enableDSM</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable AI</Name>
            <Help>Enable/Disable AI Camera on camera preview and snapshot
            </Help>
            <VariableName>enableAI</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableAI</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable AI segment standalone</Name>
            <Help>True means enabling AI segment standalone
                  False means disabling AI segment standalone
            </Help>
            <VariableName>enableAISegOnly</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableAISegOnly</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Back Propagation AI HSV Stats</Name>
            <Help>Merges AI HSV Metadata to Realtime </Help>
            <VariableName>enableBackPropagateAIHSVStats</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableBackPropagateAIHSVStats</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable OFFLINE AIDL SERVICE</Name>
            <Help>Enable/Disable OFFLINE AIDL SERVICE
            </Help>
            <VariableName>enableAIDLOffline</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableAIDLOffline</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Bubble Recovery</Name>
            <Help>Enable/Disable Bubble Recovery</Help>
            <VariableName>enableBubbleRecovery</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableBubbleRecovery</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Video Dataspace</Name>
            <Help>Video Dataspace</Help>
            <VariableName>overrideVideoDataspace</VariableName>
            <VariableType>overrideVideoDataspaceType</VariableType>
            <SetpropKey>persist.vendor.camera.overrideVideoDataspace</SetpropKey>
            <DefaultValue>BT601_625</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>StreamBufferManager GetStreamBuffer Wait</Name>
            <Help>Modify timeout for stream buffer manager to get a timeout</Help>
            <VariableName>streamBufferWait</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.streamBufferWait</SetpropKey>
            <DefaultValue>15</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>StreamBufferManager Stallbuffer Wait</Name>
            <Help>Modify timeout for stream buffer manager to stall for a buffer</Help>
            <VariableName>streamBufferStall</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.streamBufferStall</SetpropKey>
            <DefaultValue>500</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Skip SBM one buffer request </Name>
            <Help>Enable/Disable Skip SBM one buffer request</Help>
            <VariableName>skipSBMOneBufferRequest</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.skipSBMOneBufferRequest</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable display smomo feature status</Name>
            <Help>Enable/Disable preview smomo for display hal</Help>
            <VariableName>EnableDisplaySmomo</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.EnableDisplaySmomo</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>enableMapBufferOptimization</Name>
            <Help>Enable map buffer optimization
            </Help>
            <VariableName>enableMapBufferOptimization</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableMapBufferOptimization</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>overrideImmediateImageBufferCountRealTimeVideo</Name>
            <Help>
              Number of Image Buffers to allocate for real time nodes. This is done in order to
              preallocate realtime target buffers. This will have an impact on the latency.
              Any positive value can be used as an override.
            </Help>
            <VariableName>overrideImmediateImageBufferCountRealTimeVideo</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.immediateBufferCount</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>enableDedicatedCameraHeap</Name>
            <Help>
              This setting enables dedicated camera heap allocation. When enabled
              all the buffers will be allocated from the system heap except those specified as camera heap.
            </Help>
            <VariableName>enableDedicatedCameraHeap</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableDedicatedCameraHeap</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Display port to RealtimePostProcessor</Name>
            <Help>Enable MCX RT display port to POSTPROC for additional preview output</Help>
            <VariableName>enableDisplayPortToPOSTPROC</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableDisplayPortToPOSTPROC</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>AEC Gain Threshold for OfflineIFE Feature</Name>
            <Help>AEC Gain Threshold for OfflineIFE Feature</Help>
            <VariableName>AECGainThresholdForOfflineIFE</VariableName>
            <VariableType>FLOAT</VariableType>
            <DefaultValue>15.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Expose Recommended settings capability</Name>
            <Help>Use to expose recommended stream configuration as capabilities</Help>
            <VariableName>exposeRecommendedConfig</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.exposeRecommendedConfig</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable depthProvider feature</Name>
            <Help>Enable depthProvider to support depth16 stream</Help>
            <VariableName>enableDepthProvider</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableDepthProvider</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>S5K33D TOF Sensor Output Type</Name>
            <Help>
                Enable different TOF sensor mode, this type match to sensor mode index
                0:TofOutputTypeDefault   - 30fps 4Tap, Dual Frequency, Interleaving
                1:TofOutputType4DualIn   - 60fps 4Tap, Dual Frequency, Interleaving
                2:TofOutputType4DualNon  - 120fps 4Tap, Dual Frequency, Non-Interleaving
                3:TofOutputType4Single   - 60fps 4Tap, Single Frequency
            </Help>
            <VariableName>TofOutputType</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.TofOutputType</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Offline FD Support</Name>
            <Help>FD node is in offline pipeline</Help>
            <VariableName>offlineFDSupport</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.offlineFDSupport</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Log and Trace Settings">
        <setting>
            <Name>hwl debug data binary dump mask</Name>
            <Help>NA</Help>
            <VariableName>hwlDebugDataBinaryDumpMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.hwlDebugDataBinaryDumpMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Assert mask</Name>
            <Help>Mask of asserts which will trigger the runtime assert code</Help>
            <VariableName>assertMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.assertMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Warning log mask</Name>
            <Help>Mask of which warning logs are output</Help>
            <VariableName>logWarningMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.logWarningMask</SetpropKey>
            <DefaultValue>0xFFFFFFFFFFFFFFFF</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Entry/Exit log mask</Name>
            <Help>Mask of which entry/exit logs are output</Help>
            <VariableName>logEntryExitMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.logEntryExitMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Core Config log mask</Name>
            <Help>Mask of which core config logs are output</Help>
            <VariableName>logCoreCfgMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.logCoreCfgMask</SetpropKey>
            <DefaultValue>0xFFFFFFFFFFFFFFFF</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Config log mask</Name>
            <Help>Mask of which per frame/request config logs are output</Help>
            <VariableName>logConfigMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.logConfigMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Dump log mask</Name>
            <Help>Mask of which Dump logs are output</Help>
            <VariableName>logDumpMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.logDumpMask</SetpropKey>
            <DefaultValue>0xFFFFFFFFFFFFFFFF</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Info log mask</Name>
            <Help>Mask of which info logs are output</Help>
            <VariableName>logInfoMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.logInfoMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Perf info log mask</Name>
            <Help>Mask of which perf info logs are output</Help>
            <VariableName>logPerfInfoMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.logPerfInfoMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Verbose log mask</Name>
            <Help>Mask of which verbose logs are output</Help>
            <VariableName>logVerboseMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.logVerboseMask</SetpropKey>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>DRQ log enable</Name>
            <Help>Enable DRQ logging</Help>
            <VariableName>logDRQEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.logDRQEnable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Metadata log enable</Name>
            <Help>Enable Metadata logging</Help>
            <VariableName>logMetaEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.logMetaEnable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Request Mapping Logs</Name>
            <Help>Write request mappings to the log</Help>
            <VariableName>logRequestMapping</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.logRequestMapping</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Error trace enable</Name>
            <Help>Enable error logging in trace logs</Help>
            <VariableName>traceErrorEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.traceErrorEnable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>System log enable</Name>
            <Help>Controls if CamX logs are output to the system logging mechanism</Help>
            <VariableName>systemLogEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.systemLogEnable</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Pipeline Flush</Name>
            <Help>Flush a given pipeline in the Session</Help>
            <VariableName>enablePipelineFlush</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enablePipelineFlush</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Pipeline Flush In MCX</Name>
            <Help>Static policy will request pipelines of camera id set by the mask to be flushed</Help>
            <VariableName>enableMCXPipelineFlushMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableMCXPipelineFlushMask</SetpropKey>
            <DefaultValue>0xFF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Parallel Pipeline Deactivation in MCX</Name>
            <Help>Deactivate pipelines in parallel for MCX Preview</Help>
            <VariableName>enableParallelPipelineDeactivate</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableParallelPipelineDeactivate</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
       </setting>
       <setting>
            <Name>Enable tuning stream config dump</Name>
            <Help>Enable live tuning dump</Help>
            <VariableName>enableTuningStreamConfigDump</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableTuningStreamConfigDump</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Per Request Sync</Name>
            <Help>Enable Sync on a Per Frame Basis</Help>
            <VariableName>enablePerRequestSync</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enablePerRequestSync</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
        <Name>Enable Early pipeline activate</Name>
            <Help>Static policy will early pipeline activation</Help>
            <VariableName>enableEarlyPipelineActivate</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableEarlyPipelineActivate</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
        <Name>Enable update transition table dynamically</Name>
            <Help>Update transition table at configure stage</Help>
            <VariableName>enableUpdateTransitionTableDynamically</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableUpdateTransitionTableDynamically</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Log filename</Name>
            <Help>Controls if CamX logs are output to the filename provided (NULL to disable)</Help>
            <VariableName>debugLogFilename</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.debugLogFilename</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Trace group mask</Name>
            <Help>Mask of which traces are enabled</Help>
            <VariableName>traceGroupsEnable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.traceGroupsEnable</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>Enable FPS Logs</Name>
          <Help>Enables printing of FPS to logs</Help>
          <VariableName>enableFPSLog</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableFPSLog</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
          <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="MemSpy Settings">
        <setting>
            <Name>Maximum Number of MemSpy Statistics</Name>
            <Help>The maximum number of MemSpy statistics to report</Help>
            <VariableName>maxMemSpyStats</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.maxMemSpyStats</SetpropKey>
            <DefaultValue>50</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Runtime Report Rate</Name>
            <Help>Controls the printing of the Memspy runtime report every N requests (0 to disable)</Help>
            <VariableName>memSpyRequestRate</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.memSpyRequestRate</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Debug Settings">
        <setting>
          <Name>Enable Releasing Malloc memory after camera close</Name>
          <Help>Enable Releasing Malloc memory  0 for FALSE, 1 for TRUE</Help>
          <VariableName>enableMallopt</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.enableMallopt</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Dynamic properties enabled</Name>
          <Help>Properties can be dynamically updated and read per processRequest</Help>
          <VariableName>dynamicPropertiesEnabled</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.dynamicPropertiesEnabled</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Debug Process</Name>
            <Help>Debug settings are only applied to the given process (no process by default)</Help>
            <VariableName>pDebugProcess</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.pDebugProcess</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>enable sensor bit switch</Name>
          <Help>enable sensor bit switch</Help>
          <VariableName>enableSensorBitSwitch</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableSensorBitSwitch</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>force Raw16 format for RDI port</Name>
          <Help>force Raw16 format for RDI port</Help>
          <VariableName>forceRaw16FormatForRDIPort</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.forceRaw16FormatForRDIPort</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>CSL Mode</Name>
            <Help>Selects run-time CSL mode</Help>
            <VariableName>CSLMode</VariableName>
            <VariableType>CSLModeType</VariableType>
            <SetpropKey>vendor.debug.camera.CSLMode</SetpropKey>
            <DefaultValue>Hardware</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>IFH Output Pattern Generation</Name>
            <Help>Enable and disable IFH output pattern generation</Help>
            <VariableName>enableIFHPatternGeneration</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableIFHPatternGeneration</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>IFH Plaform Family</Name>
          <Help>Platform family from CSLQueryCameraPlatformIFH</Help>
          <VariableName>IFHPlaformFamily</VariableName>
          <VariableType>CSLCameraFamilyType</VariableType>
          <SetpropKey>vendor.debug.camera.IFHPlaformFamily</SetpropKey>
          <DefaultValue>Titan</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>IFH Plaform Major Version</Name>
          <Help>Platform major version from CSLQueryCameraPlatformIFH</Help>
          <VariableName>IFHPlaformMajorVersion</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.IFHPlaformMajorVersion</SetpropKey>
          <DefaultValue>8</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>IFH Plaform MinorVersion</Name>
          <Help>Platform minor version from CSLQueryCameraPlatformIFH</Help>
          <VariableName>IFHPlaformMinorVersion</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.IFHPlaformMinorVersion</SetpropKey>
          <DefaultValue>8</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>IFH Plaform RevVersion</Name>
          <Help>Platform reserved version from CSLQueryCameraPlatformIFH</Help>
          <VariableName>IFHPlaformRevVersion</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.IFHPlaformRevVersion</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>IFH CPAS Major Version</Name>
          <Help>CPASMajorVersion from CSLQueryCameraPlatformIFH</Help>
          <VariableName>IFHCPASMajorVersion</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.IFHCPASMajorVersion</SetpropKey>
          <DefaultValue>1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>IFH CPAS Minor Version</Name>
          <Help>IFHCPASMinorVersion from CSLQueryCameraPlatformIFH</Help>
          <VariableName>IFHCPASMinorVersion</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.IFHCPASMinorVersion</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>IFH CPAS Rev Version</Name>
          <Help>IFHCPASRevVersion from CSLQueryCameraPlatformIFH</Help>
          <VariableName>IFHCPASRevVersion</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.IFHCPASRevVersion</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>IFH CPAS HW Capability</Name>
          <Help>IFHCPASHardwareCaps from CSLQueryCameraPlatformIFH</Help>
          <VariableName>IFHCPASHardwareCaps</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.IFHCPASHardwareCaps</SetpropKey>
          <DefaultValue>0x3FFEDFF</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>IFH CPAS Fuse number in Fuse info</Name>
          <Help>IFHCPASFuseInfoNumFuses from CSLQueryCameraPlatformIFH</Help>
          <VariableName>IFHCPASFuseInfoNumFuses</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.IFHCPASFuseInfoNumFuses</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Max number of sensor bins for CSL IFH mode</Name>
          <Help>IFH mode doesn't probe real sensor and need to have limitation</Help>
          <VariableName>numOfSensorOnIFH</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.numOfSensorOnIFH</SetpropKey>
          <DefaultValue>5</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Sensor Emulation State</Name>
            <Help>Enables/Disables sensor emulation</Help>
            <VariableName>enableSensorEmulation</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableSensorEmulation</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>External Sensor Module</Name>
            <Help>Enables/Disables external sensor module</Help>
            <VariableName>enableExternalSensorModule</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableExternalSensorModule</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Debug exposure settings</Name>
            <Help>Enable setting exposure settings manually to sensor driver for debugging purpose</Help>
            <VariableName>enableDebugSensorExposure</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableDebugSensorExposure</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Exposure Time</Name>
            <Help>Camera exposure time in nanoseconds</Help>
            <VariableName>sensorExposureTime</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>vendor.debug.camera.sensorExposureTime</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Gain</Name>
            <Help>Sensor Gain</Help>
            <VariableName>gain</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.gain</SetpropKey>
            <DefaultValue>0.0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Short Exposure Time</Name>
            <Help>Camera short exposure time in nanoseconds</Help>
            <VariableName>sensorShortExposureTime</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>vendor.debug.camera.sensorShortExposureTime</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Short Gain</Name>
            <Help>camera sensor short gain</Help>
            <VariableName>shortGain</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.shortGain</SetpropKey>
            <DefaultValue>0.0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Middle Exposure Time</Name>
            <Help>Camera middle exposure time in nanoseconds</Help>
            <VariableName>sensorMiddleExposureTime</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>vendor.debug.camera.sensorMiddleExposureTime</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Middle Gain</Name>
            <Help>camera sensor middle gain</Help>
            <VariableName>middleGain</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.middleGain</SetpropKey>
            <DefaultValue>0.0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Disable Sensor Sub Modules</Name>
            <Help>Set this variable to disable specific camera sub modules
                Pass in a mask to force disable specific sensor sub module for different camera IDs.
                The sub module(s) mask should be specified at 1-nibble offsets in the mask, i.e. the lowest
                hex digit mask for cameraID/SlotID 0 sub modules, the next digit mask for  cameraID/SlotID 1, etc.
                Example:
                To disable EEPROM (for SlotID 0), Flash (for SlotID 1), Actuator and OIS (for SlotID 2) and nothing (for SlotID 3 etc.):
                    disableSensorSubModules=0xA41
            </Help>
            <VariableName>disableSensorSubModules</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>vendor.debug.camera.disableSensorSubModules</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Ignore sensor sub module creation fail</Name>
            <Help>Enables/Disables ignoring sensor sub module creation fail, if enabled, sensor initialization will move on.
                Ignored modules are Actuator, OIS, Flash.
            </Help>
            <VariableName>ignoreSensorSubModuleFail</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.ignoreSensorSubModuleFail</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Dump Sensor Emulation Data</Name>
            <Help>Enables/Disables dumping of emulated sensor output</Help>
            <VariableName>dumpSensorEmulationOutput</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.dumpSensorEmulationOutput</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Sensor Emulator Application Name</Name>
            <Help>Sensor emulator application name</Help>
            <VariableName>sensorEmulator</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.sensorEmulator</SetpropKey>
            <DefaultValue>sensorsim</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Sensor Emulator Application Path</Name>
            <Help>Sensor emulator application path</Help>
            <VariableName>sensorEmulatorPath</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.sensorEmulatorPath</SetpropKey>
            <DefaultValue>.\\..\\..\\..\\..\\tools\\sensorsim\\</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>CSL Platform Version for Presil</Name>
            <Help>CSL Platform version setting for presil development</Help>
            <VariableName>presilPlatformVersion</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.presilPlatformVersion</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>CSL Soc ID for Presil</Name>
            <Help>CSL Soc ID setting for presil development</Help>
            <VariableName>presilSocId</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.presilSocId</SetpropKey>
            <DefaultValue>557</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>PCR timeout for Presil</Name>
            <Help>Override Result timeout for PCR in Presil</Help>
            <VariableName>presilPCRTimeOut</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.presilPCRTimeOut</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Metadata Pool timeout for Presil</Name>
            <Help>Override Metadata Pool timeout in Presil</Help>
            <VariableName>presilMetadataPoolTimeOut</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.presilMetadataPoolTimeOut</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Node request done timeout</Name>
            <Help>Override Node request done timeout for Presil</Help>
            <VariableName>presilNodeRequestDoneTimeout</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.presilNodeRequestDoneTimeout</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Flush timeout for Presil</Name>
            <Help>Override flush timeout for Presil</Help>
            <VariableName>presilFlushTimeOut</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.presilFlushTimeOut</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Dual LED Calibration Mode</Name>
            <Help>Enables/Disables Dual LED Calibration or Tuning</Help>
            <VariableName>dualLEDCalibrationMode</VariableName>
            <VariableType>DualLEDCalibrationType</VariableType>
            <SetpropKey>vendor.debug.camera.dualLEDCalibrationMode</SetpropKey>
            <DefaultValue>DualLEDCalibrationDisabled</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Dynamic LED Inline calibration </Name>
            <Help>Enables/Disables dynamic inline LED Calibration</Help>
            <VariableName>dynamicInlineCalibration</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.dynamicInlineCalibration</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>Dynamic LED Inline calibration data max size</Name>
          <Help>max allocated space for dynamic inline LED Calibration data</Help>
          <VariableName>dynamicCalibrationMaxSize</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.dynamicCalibrationMaxSize</SetpropKey>
          <DefaultValue>32004</DefaultValue>
          <Dynamic>TRUE</Dynamic>
          <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Dual LED Calibration Data File</Name>
            <Help>Location of the dual LED calibration output file</Help>
            <VariableName>dualLEDCalibrationPath</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.dualLEDCalibrationPath</SetpropKey>
            <DefaultValue />
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>ADRC Processing</Name>
            <Help>Enables/Disables ADRC</Help>
            <VariableName>disableADRC</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableADRC</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>ISO Priority</Name>
            <Help>Enables/Disables ISO Priority</Help>
            <VariableName>disablePreviewManualISO</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disablePreviewManualISO</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Exposure Time Priority</Name>
            <Help>Enables/Disables Exposure Time Priority</Help>
            <VariableName>disablePreviewManualExpTime</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disablePreviewManualExpTime</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Complete Manual</Name>
            <Help>Complete Manual</Help>
            <VariableName>disablePreviewManualFull</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disablePreviewManualFull</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Speckle Detection</Name>
            <Help>Enables/Disables Speckle Detection</Help>
            <VariableName>disableSpeckleDetection</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableSpeckleDetection</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>AF Stats Processing</Name>
            <Help>Enables/Disables AF Stats Processing</Help>
            <VariableName>disableAFStatsProcessing</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableAFStatsProcessing</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AF Algo CHI Overload</Name>
            <Help>Enables/Disables  Algo CHI Overload</Help>
            <VariableName>disableAFAlgoCHIOverload</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableAFAlgoCHIOverload</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AWB Stats Processing</Name>
            <Help>Enables/Disables AWB Stats Processing</Help>
            <VariableName>disableAWBStatsProcessing</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableAWBStatsProcessing</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AWB Algo CHI Overload</Name>
            <Help>Enables/Disables AWB Algo CHI Overload</Help>
            <VariableName>disableAWBAlgoCHIOverload</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableAWBAlgoCHIOverload</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AFD Stats Processing</Name>
            <Help>Enables/Disables AFD Stats Processing</Help>
            <VariableName>disableAFDStatsProcessing</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableAFDStatsProcessing</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>AFD Algo CHI Overload</Name>
            <Help>Enables/Disables AFD Algo CHI Overload</Help>
            <VariableName>disableAFDAlgoCHIOverload</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableAFDAlgoCHIOverload</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>ASD Stats Processing</Name>
            <Help>Enables/Disables ASD Stats Processing. 0 for enable, 1 for disable</Help>
            <VariableName>disableASDStatsProcessing</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.disableASDStatsProcessing</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>ASD Algo CHI Overload</Name>
            <Help>Enables/Disables ASD Algo CHI Overload</Help>
            <VariableName>disableASDAlgoCHIOverload</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableASDAlgoCHIOverload</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>motion assited 3a algorithm</Name>
            <Help>Enables/Disables motion assited 3a algorithm. 1 for enable, 0 for disable</Help>
            <VariableName>enableMotionAssisted3A</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.enableMotionAssisted3A</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Register Dump Debug Buffer</Name>
            <Help>Whether or not UMD sends a buffer to KMD for resgister dump logging</Help>
            <VariableName>debugBufferRegDumpEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.debugBufferRegDumpEnable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Register Dump Debug Buffer Size</Name>
            <Help>Size in bytes for each register dump buffer</Help>
            <VariableName>debugBufferRegDumpSizeInBytes</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugBufferRegDumpSizeInBytes</SetpropKey>
            <DefaultValue>65536</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Register Dump File Name Prefix</Name>
            <Help>Name of the register dump file</Help>
            <VariableName>debugBufferRegDumpFileNamePrefix</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.debugBufferRegDumpFileNamePrefix</SetpropKey>
            <DefaultValue>register-dump</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Systrace Logs Switch</Name>
            <Help>Enable/Disable Systrace Logs</Help>
            <VariableName>kpiDebug</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.kpi.debug</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable QTimer</Name>
            <Help>Enable/Disable QTimer for SOF timestamps</Help>
            <VariableName>enableQTimer</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.qtimer</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable HAL API Timer</Name>
            <Help>Enable/Disable timer for HAL APIs</Help>
            <VariableName>enableHALAPITimer</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableHALAPITimer</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>IFE or CSID TPG Enable State</Name>
            <Help>Enables/Disables IFE or CSID TPG</Help>
            <VariableName>enableTPG</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableTPG</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>IFE or CSID TPG bpp value</Name>
            <Help>This bpp value will input to IFE for TPG mode simulating</Help>
            <VariableName>debugTPGbpp</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.debugTPGbpp</SetpropKey>
            <DefaultValue>10</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
        <Name>TPG probe Enable</Name>
            <Help>Enables/Disables TPG probe</Help>
            <VariableName>enableTPGProbe</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableTPGProbe</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>CSID Binning Enable</Name>
            <Help>Enables/Disables CSID binning</Help>
            <VariableName>enableCSIDBinning</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableCSIDBinning</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>CSID Binning Mode</Name>
            <Help>
                This setting is valid only if CSID Binning is enable: enableCSIDBinning=TRUE
                Set binning mode:
                0: Bayer Binning mode
                1: QCFA Binning mode
            </Help>
            <VariableName>CSIDBinningMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.CSIDBinningMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force 3A result metadata to locked</Name>
            <Help>Always returns locked in results, regardless of the actual algo state</Help>
            <VariableName>force3ALockedResult</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.force3ALockedResult</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Disable UBWC on IFE output links</Name>
            <Help>When enabled, YUV420NV12 will replace UBWC and be the primary format on IFE's and Chi node's output</Help>
            <VariableName>forceDisableUBWCOnIfeIpeLink</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.forceDisableUBWCOnIfeIpeLink</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable UBWCNV124R on IFE FullOut --&gt; IPE link</Name>
            <Help>When enabled, will always use UBWCNV124R (8 bit) on IFE FullOut --&gt; IPE link</Help>
            <VariableName>enableUBWCNV124ROnIFEFullOutIPELink</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableUBWCNV124ROnIFEFullOutIPELink</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
        <Name>Bit Mask to Enable UBWC-P with varying functionality on Device</Name>
        <Help>
        SW Nodes will use UBWC when enabled. Bit Mask are as follows:
        IOCoherency                                                                = 0x1
        IOCoherency + EnableUBWCPOps                                               = 0x3
        IOCoherency + EnableUBWCPOps + DMAUBWCPOpt                                 = 0x7
        IOCoherency + EnableUBWCPOps + DMAUBWCPOpt + DisableUBWCPFormatNegotiation = 0xF
        </Help>
        <VariableName>enableUBWCP</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.enableUBWCP</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable SFE alignment</Name>
            <Help>Enable SFE alignment</Help>
            <VariableName>enableBayerAlignment</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableBayerAlignment</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Cap resolution for force using single IFE</Name>
            <Help>When enabled, available stream resolution will be cap within single IFE supported range</Help>
            <VariableName>capResolutionForSingleIFE</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.capResolutionForSingleIFE</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Single IFE supported width</Name>
            <Help>The max width supported by single IFE</Help>
            <VariableName>singleIFESupportedWidth</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>persist.vendor.camera.singleIFESupportedWidth</SetpropKey>
            <DefaultValue>3840</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Single IFE supported height</Name>
            <Help>The max height supported by single IFE</Help>
            <VariableName>singleIFESupportedHeight</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>persist.vendor.camera.singleIFESupportedHeight</SetpropKey>
            <DefaultValue>2160</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Cap resolution for force using single TFE</Name>
            <Help>When enabled, available stream resolution will be cap within single TFE supported range</Help>
            <VariableName>capResolutionForSingleTFE</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.capResolutionForSingleTFE</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Single TFE supported width</Name>
            <Help>The max width supported by single TFE</Help>
            <VariableName>singleTFESupportedWidth</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>persist.vendor.camera.singleTFESupportedWidth</SetpropKey>
            <DefaultValue>3840</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Single TFE supported height</Name>
            <Help>The max height supported by single TFE</Help>
            <VariableName>singleTFESupportedHeight</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>persist.vendor.camera.singleTFESupportedHeight</SetpropKey>
            <DefaultValue>2160</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Flash Debug</Name>
            <Help>Bypass 3A block so flash always fire base on the captureIntent from application</Help>
            <VariableName>enableFlashDebug</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableFlashDebug</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Dump Sensor EEPROM Data</Name>
            <Help>Enables/Disables dumping of EEPROM data</Help>
            <VariableName>dumpSensorEEPROMData</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.dumpSensorEEPROMData</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Dump Sensor per frame Metadata</Name>
            <Help>Enable/Disable sensor Metadata dump</Help>
            <VariableName>dumpSensorMetaData</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.dumpSensorMetaData</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Read sensor temperature through I2C</Name>
            <Help>Enable/Disable reading sensor temperature through I2C</Help>
                Read sensor temperature:
                0: Disabled
                1: Through I2C read
                2: Through MIPI (Sensor Embedded/Meta data)
            <VariableName>readSensorTemperature</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.readSensorMetaData</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Offline Dump</Name>
            <Help>Use offline thread to write dump</Help>
            <VariableName>enableOfflineDump</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enableOfflineDump</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Offline Dump Buffer Size</Name>
            <Help>Buffer Size for offline dump in Bytes</Help>
            <VariableName>offlineDumpBufSize</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.offlineDumpBufSize</SetpropKey>
            <DefaultValue>15499264</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Offline Dump Queue Depth</Name>
            <Help>Queue depth for offline dump</Help>
            <VariableName>offlineDumpQueueDepth</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.offlineDumpQueueDepth</SetpropKey>
            <DefaultValue>150</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Offline Dump Auto Stop ReqId offset</Name>
            <Help>Offset of requests to stop dump to allow for flushing</Help>
            <VariableName>offlineDumpAutoStopOffset</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.offlineDumpAutoStopOffset</SetpropKey>
            <DefaultValue>300</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump</Name>
            <Help>Dumps output images for all enabled nodes. This will run extremely slow</Help>
            <VariableName>autoImageDump</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDump</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Input port Dump when output is dumped</Name>
            <Help>Dumps input port when output port is dumped. This will run extremely slow</Help>
            <VariableName>dumpInputatOutput</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.dumpInputatOutput</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Input Image Dump Node/Port Mask</Name>
            <Help>
              Will limit dumps to only the specified nodes when autoInputImageDump is enabled
                      Uses ImageDumpType to define the flags
                      No dumps                                      = 0x0
                      All input ports for IFE                       = 0x1
                      All input ports for IPE                       = 0x2
                      All input ports for BPS                       = 0x4
                      All JPEG input ports for all JPEG nodes       = 0x8
                      All input ports for FDHw                      = 0x10
                      All input ports for LRME                      = 0x20
                      All input ports for RANSAC                    = 0x40
                      All input ports for all ChiNodes              = 0x80
                      All input ports for CVP                       = 0x100
                      All input ports for OPE                       = 0x400
                      All input ports for QSAT                      = 0x800
                      All input ports for ITOF                      = 0x1000
                      All input ports for CRE                       = 0x2000
                      All other nodes not explicitly listed above   = 0x40000000
            </Help>
            <VariableName>autoInputImageDumpMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoInputImageDumpMask</SetpropKey>
            <DefaultValue>0x40003fff</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>IFE Register dump mask</Name>
            <Help>
                IFETop          = 0x1
                Demux           = 0x2
                ChannelGain     = 0x4
                ChromaUp        = 0x8
                BPC_PDPC        = 0x10
                BinCorrect      = 0x20
                CompDecomp      = 0x40
                WB              = 0x80
                GIC             = 0x100
                BLS             = 0x200
                Bayer_GTM       = 0x400
                Bayer_LTM       = 0x800
                LCAC            = 0x1000
                Demosaic        = 0x2000
                ColorXform      = 0x4000
                UVG             = 0x8000
                Preprocessor    = 0x10000
                SparsePD        = 0x20000
                CompDecompHVXRX = 0x40000
                CompDecompHVXTX = 0x80000
                GTM_FD          = 0x100000
                BPC_ABF         = 0x200000
                LSC             = 0x400000
                ColorCorrect    = 0x800000
                GTMDMI          = 0x1000000
                Gamma           = 0x2000000
                Stats           = 0x4000000
                VidPath         = 0x80000000
                DispPath        = 0x10000000
                FD              = 0x20000000
                PixelRaw        = 0x40000000
                PDAF            = 0x80000000
                PDOUT           = 0x100000000
                LCR             = 0x200000000
                Common          = 0x400000000
                PreLSC1DPDPC    = 0x1000000000
                PostLSC1DPDPC   = 0x2000000000
                FCG             = 0x4000000000
                PostFCG1DPDPC   = 0x8000000000
                AllModule       = 0xF877ffffff
            </Help>
            <VariableName>IFERegDumpMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.IFEFrameRegDumpMask</SetpropKey>
            <DefaultValue>0x3877ffffff</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>SFE Register dump mask</Name>
            <Help>
                SFETopReg            = 0x1
                SFECommonReg         = 0x2
                SFEQCFADemuxReg      = 0x4
                SFEHDRRemosiacBinReg = 0x8
                SFELCRReg            = 0x10
                SFEChannel0Reg       = 0x20
                SFEChannel1Reg       = 0x40
                SFEChannel2Reg       = 0x80
                SFEPreviewPathReg    = 0x100
                SFESnapshotPathReg   = 0x200
                AllModules           = 0x3ff
            </Help>
            <VariableName>SFERegDumpMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.SFEFrameRegDumpMask</SetpropKey>
            <DefaultValue>0x3ff</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>TFE Register dump mask</Name>
            <Help>
                No dumps           = 0x0
                TFETop             = 0x1
                ChannelGain        = 0x2
                BPCPDPC            = 0x4
                LensRolloff        = 0x8
                BDSpath            = 0x10
                BLS                = 0x20
                BayerGamma         = 0x40
                BDS4               = 0x80
                ColorXformDS4      = 0x100
                ChromaDS2          = 0x200
                DS4path            = 0x400
                DS16path           = 0x800
                WB                 = 0x1000
                BDS2               = 0x2000
                GTMDMI             = 0x4000
                ColorXformAI       = 0x8000
                AIpath             = 0x10000
                PixelRaw           = 0x20000
                ABF                = 0x40000
                Stats              = 0x80000
                common             = 0x100000
            </Help>
            <VariableName>TFERegDumpMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.TFEFrameRegDumpMask</SetpropKey>
            <DefaultValue>0xFFFFFF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Output Image Dump Node/Port Mask</Name>
            <Help>
              Will limit dumps to only the specified nodes and ports when autoImageDump is enabled
                      Uses ImageDumpType to define the flags
                      No dumps                                      = 0x0
                      All output ports for IFE                      = 0x1
                      All output ports for IPE                      = 0x2
                      All output ports for BPS                      = 0x4
                      All JPEG output ports for all JPEG nodes      = 0x8
                      All output ports for FDHw                     = 0x10
                      All output ports for LRME                     = 0x20
                      All output ports for RANSAC                   = 0x40
                      All output ports for all ChiNodes             = 0x80
                      All output ports for CVP                      = 0x100
                      All output ports for TFE                      = 0x200
                      All output ports for OPE                      = 0x400
                      All output ports for QSAT                     = 0x800
                      All output ports for ITOF                     = 0x1000
                      All output ports for CRE                      = 0x2000
                      All other nodes not explicitly listed above   = 0x40000000
            </Help>
            <VariableName>autoImageDumpMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpMask</SetpropKey>
            <DefaultValue>0x40003fff</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Output Port Mask for IFE </Name>
            <Help>
               Output port mask:
               IFE:
                    IFEOutputPortFull                = 0x1
                    IFEOutputPortDS4                 = 0x2
                    IFEOutputPortDS16                = 0x4
                    IFEOutputPortCAMIFRaw            = 0x8
                    IFEOutputPortLSCRaw              = 0x10
                    IFEOutputPortGTMRaw              = 0x20
                    IFEOutputPortFD                  = 0x40
                    IFEOutputPortPDAF                = 0x80
                    IFEOutputPortRDI0                = 0x100
                    IFEOutputPortRDI1                = 0x200
                    IFEOutputPortRDI2                = 0x400
                    IFEOutputPortRDI3                = 0x800
                    IFEOutputPortStatsRS             = 0x1000
                    IFEOutputPortStatsCS             = 0x2000
                    IFEOutputPortStatsLTMDC          = 0x4000
                    IFEOutputPortStatsIHIST          = 0x8000
                    IFEOutputPortStatsBHIST          = 0x10000
                    IFEOutputPortStatsHDRBE          = 0x20000
                    IFEOutputPortStatsHDRBHIST       = 0x40000
                    IFEOutputPortStatsTLBG           = 0x80000
                    IFEOutputPortStatsBF             = 0x100000
                    IFEOutputPortStatsAWBBG          = 0x200000
                    IFEOutputPortDisplayFull         = 0x400000
                    IFEOutputPortDisplayDS4          = 0x800000
                    IFEOutputPortDisplayDS16         = 0x1000000
                    IFEOutputPortStatsDualPD         = 0x2000000
                    IFEOutputPortRDIRD               = 0x4000000
                    IFEOutputPortLCR                 = 0x8000000
                    IFEOutputPortPDHWPreProcessedPD  = 0x10000000
                    IFEOutputPortStatsBFW            = 0x20000000
                    IFEOutputPortStatsAECBE          = 0x40000000
                    IFEOutputPortStatsLTMDC          = 0x80000000
                    IFEOutputPortStatsGTMBHIST       = 0x100000000
                    IFEOutputPortSparsePDOut         = 0x200000000
                    IFELITEOutputPortStatsBG         = 0x400000000
                    IFELITEOutputPortPreProcessRaw   = 0x800000000
                    IFEOutputPortStatsAECBHIST       = 0x1000000000

                    ALLports                         = 0x1FFFFFFFFF
                    AllPixelOutput                   = 0x1C00047
                    AllRawOutput                     = 0xFB8
                    AllRDIOutput                     = 0xF00
                    AllStatsOutput                   = 0x07FF000
            </Help>
            <VariableName>autoImageDumpIFEoutputPortMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpIFEoutputPortMask</SetpropKey>
            <DefaultValue>0x1FFFFFBFFF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Virtual Output Port Group Mask for IFE</Name>
            <Help>
               Virtual output port mask:
               IFE:
                    IFEOutputPortFullExposure1               = 0x1
                    IFEOutputPortFullExposure2               = 0x2
                    IFEOutputPortFullExposure3               = 0x4
                    IFEOutputPortDS4Exposure1                = 0x8
                    IFEOutputPortDS4Exposure2                = 0x10
                    IFEOutputPortDS4Exposure3                = 0x20
                    IFEOutputPortDS16Exposure1               = 0x40
                    IFEOutputPortDS16Exposure2               = 0x80
                    IFEOutputPortDS16Exposure3               = 0x100
                    IFEOutputPortDisplayFullExposure1        = 0x200
                    IFEOutputPortDisplayFullExposure2        = 0x400
                    IFEOutputPortDisplayFullExposure3        = 0x800
                    IFEOutputPortDisplayDS4Exposure1         = 0x1000
                    IFEOutputPortDisplayDS4Exposure2         = 0x2000
                    IFEOutputPortDisplayDS4Exposure3         = 0x4000
                    IFEOutputPortDisplayDS16Exposure1        = 0x8000
                    IFEOutputPortDisplayDS16Exposure2        = 0x10000
                    IFEOutputPortDisplayDS16Exposure3        = 0x20000
                    IFEOutputPortStatsAECBEExposure1         = 0x40000
                    IFEOutputPortStatsAECBEExposure2         = 0x80000
                    IFEOutputPortStatsAECBEExposure3         = 0x100000
                    IFEOutputPortStatsAECBHISTExposure1      = 0x200000
                    IFEOutputPortStatsAECBHISTExposure2      = 0x400000
                    IFEOutputPortStatsAECBHISTExposure3      = 0x800000
                    IFEOutputPortStatsTLBGExposure1          = 0x1000000
                    IFEOutputPortStatsTLBGExposure2          = 0x2000000
                    IFEOutputPortStatsTLBGExposure3          = 0x4000000
                    IFEOutputPortStatsAWBBGExposure1         = 0x80000000
                    IFEOutputPortStatsAWBBGExposure2         = 0x10000000
                    IFEOutputPortStatsAWBBGExposure3         = 0x20000000
                    IFEOutputPortStatsBFWExposure1           = 0x40000000
                    IFEOutputPortStatsBFWExposure2           = 0x80000000
                    IFEOutputPortStatsBFWExposure3           = 0x100000000
                    IFEOutputPortStatsGTMBHISTExposure1      = 0x200000000
                    IFEOutputPortStatsGTMBHISTExposure2      = 0x400000000
                    IFEOutputPortStatsGTMBHISTExposure3      = 0x800000000
                    IFEOutputPortStatsRSExposure1            = 0x1000000000
                    IFEOutputPortStatsRSExposure2            = 0x2000000000
                    IFEOutputPortStatsRSExposure3            = 0x4000000000
                    IFEOutputPortStatsIHISTExposure1         = 0x8000000000
                    IFEOutputPortStatsIHISTExposure2         = 0x10000000000
                    IFEOutputPortStatsIHISTExposure3         = 0x20000000000
                    IFEOutputPortStatsBFExposure1            = 0x40000000000
                    IFEOutputPortStatsBFExposure2            = 0x80000000000
                    IFEOutputPortStatsBFExposure3            = 0x100000000000
                    IFEOutputPortLCRExposure1                = 0x200000000000
                    IFEOutputPortLCRExposure2                = 0x400000000000
                    IFEOutputPortLCRExposure3                = 0x800000000000
                    IFEOutputPortSparsePDOutExposure1        = 0x1000000000000
                    IFEOutputPortSparsePDOutExposure2        = 0x2000000000000
                    IFEOutputPortSparsePDOutExposure3        = 0x4000000000000
                    IFEOutputPortPDHWPreProcessedPDExposure1 = 0x8000000000000
                    IFEOutputPortPDHWPreProcessedPDExposure2 = 0x10000000000000
                    IFEOutputPortPDHWPreProcessedPDExposure3 = 0x20000000000000
                    IFEOutputPortStatsDualPDExposure1        = 0x40000000000000
                    IFEOutputPortStatsDualPDExposure2        = 0x80000000000000
                    IFEOutputPortStatsDualPDExposure3        = 0x100000000000000
                    IFEOutputPortStatsHDRBEExposure1         = 0x200000000000000
                    IFEOutputPortStatsHDRBEExposure2         = 0x400000000000000
                    IFEOutputPortStatsCAFExposure1           = 0x800000000000000
                    IFEOutputPortStatsCAFExposure2           = 0x1000000000000000
                    IFEOutputPortStatsCAFExposure3           = 0x2000000000000000
                    IFEOutputPortStatsBayerRSExposure1       = 0x4000000000000000
                    IFEOutputPortStatsBayerRSExposure2       = 0x8000000000000000
            </Help>
            <VariableName>autoImageDumpIFEVirtualOutputPortMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpIFEVirtualOutputPortMask</SetpropKey>
            <DefaultValue>0x1FF3FFBFFF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Continuation of Auto Image Dump Virtual Output Port Group Mask for IFE</Name>
            <Help>
               Virtual output port mask:
               IFE:
                    IFEOutputPortStatsBayerRSExposure3 = 0x1
                    IFEOutputPortPDParsedDataExposure1 = 0x2
                    IFEOutputPortPDParsedDataExposure2 = 0x4
                    IFEOutputPortPDParsedDataExposure3 = 0x8
            </Help>
            <VariableName>autoImageDumpIFEVirtualOutputPortExtendedMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpIFEVirtualOutputPortExtendedMask</SetpropKey>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Virtual Raw Output Port Mask for IFE</Name>
            <Help>
               Raw output port mask:
               IFE:
                    IFEOutputPortRAW0 = 0x1
                    IFEOutputPortRAW1 = 0x2
                    IFEOutputPortRAW2 = 0x4
                    IFEOutputPortRAW3 = 0x8
                    IFEOutputPortRAW4 = 0x10
                    IFEOutputPortRAW5 = 0x20
                    IFEOutputPortRAW6 = 0x40
                    IFEOutputPortRAW7 = 0x80
                    IFEOutputPortRAW8 = 0x100
                    IFEOutputPortRAW9 = 0x200

                    ALLports          = 0x3FF
            </Help>
            <VariableName>autoImageDumpIFEVirtualRawOutputPortMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpIFEVirtualRawOutputPortMask</SetpropKey>
            <DefaultValue>0x3FF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
           <Name>Auto Image Dump Input Port Mask for IFE</Name>
           <Help>
              Input Port mask:
              IFE:
                   IFEInputPortCSIDTPG         = 0x1;
                   IFEInputPortCAMIFTPG        = 0x2;
                   IFEInputPortSensor          = 0x4;
                   IFEInputPortRDI0            = 0x8;
                   IFEInputPortRDI1            = 0x10;
                   IFEInputPortRDI2            = 0x20;
                   IFEInpurPortDualPD          = 0x40;
                   ALLports                    = 0x7F;
           </Help>
           <VariableName>autoImageDumpIFEinputPortMask</VariableName>
           <VariableType>UINT</VariableType>
           <SetpropKey>persist.vendor.camera.autoImageDumpIFEinputPortMask</SetpropKey>
           <DefaultValue>0x7F</DefaultValue>
           <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Output Batch Frames for IFE </Name>
            <Help>
               Output IFE batched frames(HFR):
               IFE:
                    Dump only ONE frame from  IFE Batch    = 0x1
                    Dump only TWO frames from IFE Batch    = 0x2
                    Dump only THREE frames from IFE Batch  = 0x3
                    Dump only FOUR frames from IFE Batch   = 0x4
                    Dump only FIVE frames from IFE Batch   = 0x5
                    Dump only SIX frames from IFE Batch    = 0x6
                    Dump only SEVEN frames from IFE Batch  = 0x7
                    Dump only EIGHT frames from IFE Batch  = 0x8
            </Help>
            <VariableName>autoImageDumpIFEoutputBatchNum</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpIFEoutputBatchNum</SetpropKey>
            <DefaultValue>0x1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Instance Mask for IFE </Name>
            <Help>
               Instance mask:
               IFE:
                    IFEInstanceName0            = 0x1;
                    IFEInstanceName1            = 0x2;
                    IFEInstanceName2            = 0x4;
                    AllInstances                = 0x7
            </Help>
            <VariableName>autoImageDumpIFEInstanceMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpIFEInstanceMask</SetpropKey>
            <DefaultValue>0x7</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Output Port Mask for TFE </Name>
            <Help>
               Output port mask:
               TFE:
                    TFEOutputPortFull            = 0x2
                    TFEOutputPortIdealRaw        = 0x4
                    TFEOutputPortPDAF            = 0x8
                    TFEOutputPortRDI0            = 0x10
                    TFEOutputPortRDI1            = 0x20
                    TFEOutputPortRDI2            = 0x40
                    TFEOutputPortStatsAECBG      = 0x80
                    TFEOutputPortStatsBHIST      = 0x100
                    TFEOutputPortStatsTLBG       = 0x200
                    TFEOutputPortStatsBF         = 0x400
                    TFEOutputPortStatsAWBBG      = 0x800
                    TFEOutputPortStatsRS         = 0x1000
                    TFEOutputPortDS4             = 0x2000
                    TFEOutputPortDS16            = 0x4000
                    TFEOutputPortAI              = 0x8000
                    TFEOutputPortStatsDualPD     = 0x10000
                    TFEOutputPortPDPreProcessed  = 0x20000
                    TFEOutputPortPDparsed        = 0x40000
                    ALLports                     = 0xFFFFE
                    AllPixelOutput               = 0xF8E
                    AllRawOutput                 = 0x7C
                    AllRDIOutput                 = 0x70
                    AllStatsOutput               = 0x1F80
            </Help>
            <VariableName>autoImageDumpTFEoutputPortMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpTFEoutputPortMask</SetpropKey>
            <DefaultValue>0xFFFFE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Virtual Output Port Group Mask for TFE</Name>
            <Help>
               Virtual output port mask:
               TFE:
                    TFEOutputPortFullExposure1               = 0x1
                    TFEOutputPortFullExposure2               = 0x2
                    TFEOutputPortFullExposure3               = 0x4
                    TFEOutputPortDS4Exposure1                = 0x8
                    TFEOutputPortDS4Exposure2                = 0x10
                    TFEOutputPortDS4Exposure3                = 0x20
                    TFEOutputPortDS16Exposure1               = 0x40
                    TFEOutputPortDS16Exposure2               = 0x80
                    TFEOutputPortDS16Exposure3               = 0x100
                    TFEOutputPortStatsAECBGExposure1         = 0x200
                    TFEOutputPortStatsAECBGExposure2         = 0x400
                    TFEOutputPortStatsAECBGExposure3         = 0x800
                    TFEOutputPortStatsBHISTExposure1         = 0x1000
                    TFEOutputPortStatsBHISTExposure2         = 0x2000
                    TFEOutputPortStatsBHISTExposure3         = 0x4000
                    TFEOutputPortStatsTLBGExposure1          = 0x8000
                    TFEOutputPortStatsTLBGExposure2          = 0x10000
                    TFEOutputPortStatsTLBGExposure3          = 0x20000
                    TFEOutputPortStatsBAFExposure1           = 0x40000
                    TFEOutputPortStatsBAFExposure2           = 0x80000
                    TFEOutputPortStatsBAFExposure3           = 0x100000
                    TFEOutputPortStatsAWBBGExposure1         = 0x200000
                    TFEOutputPortStatsAWBBGExposure2         = 0x400000
                    TFEOutputPortStatsAWBBGExposure3         = 0x800000
                    TFEOutputPortStatsRSExposure1            = 0x1000000
                    TFEOutputPortStatsRSExposure2            = 0x2000000
                    TFEOutputPortStatsRSExposure3            = 0x4000000
                    TFEOutputPortStatsDualPDExposure1        = 0x8000000
                    TFEOutputPortStatsDualPDExposure2        = 0x10000000
                    TFEOutputPortStatsDualPDExposure3        = 0x20000000
                    TFEOutputPortPDPreProcessedExposure1     = 0x40000000
                    TFEOutputPortPDPreProcessedExposure2     = 0x80000000
                    TFEOutputPortPDPreProcessedExposure3     = 0x100000000
                    TFEOutputPortPDparsedExposure1           = 0x200000000
                    TFEOutputPortPDparsedExposure2           = 0x400000000
                    TFEOutputPortPDparsedExposure3           = 0x800000000
            </Help>
            <VariableName>autoImageDumpTFEVirtualOutputPortMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpTFEVirtualOutputPortMask</SetpropKey>
            <DefaultValue>0xFFFFFFFFF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Virtual Raw Output Port Mask for TFE</Name>
            <Help>
               Raw output port mask:
               TFE:
                    TFEOutputPortRAW0 = 0x1
                    TFEOutputPortRAW1 = 0x2
                    TFEOutputPortRAW2 = 0x4
                    ALLports          = 0x7
            </Help>
            <VariableName>autoImageDumpTFEVirtualRawOutputPortMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpTFEVirtualRawOutputPortMask</SetpropKey>
            <DefaultValue>0x7</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Output Batch Frames for TFE </Name>
            <Help>
               Output TFE batched frames(HFR):
               TFE:
                    Dump only ONE frame from  TFE Batch    = 0x1
                    Dump only TWO frames from TFE Batch    = 0x2
                    Dump only THREE frames from TFE Batch  = 0x3
                    Dump only FOUR frames from TFE Batch   = 0x4
                    Dump only FIVE frames from TFE Batch   = 0x5
                    Dump only SIX frames from TFE Batch    = 0x6
                    Dump only SEVEN frames from TFE Batch  = 0x7
                    Dump only EIGHT frames from TFE Batch  = 0x8
            </Help>
            <VariableName>autoImageDumpTFEoutputBatchNum</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpTFEoutputBatchNum</SetpropKey>
            <DefaultValue>0x1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Instance Mask for TFE </Name>
            <Help>
               Instance mask:
               TFE:
                    TFEInstanceName0            = 0x1;
                    TFEInstanceName1            = 0x2;
                    TFEInstanceName2            = 0x4;
                    AllInstances                = 0x7
            </Help>
            <VariableName>autoImageDumpTFEInstanceMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpTFEInstanceMask</SetpropKey>
            <DefaultValue>0x7</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for IPE </Name>
          <Help>
               Output port mask for IPE:
               IPEOutputPortDisplay         = 0x100;
               IPEOutputPortVideo           = 0x200;
               IPEOutputPortFullRef         = 0x400;
               IPEOutputPortDS4Ref          = 0x800;
               IPEOutputPortDS16Ref         = 0x1000;
               IPEOutputPortDS64Ref         = 0x2000;
               IPEOutputPortApp             = 0x8000000000000
               IPEOutputPortHDR10           = 0x80000000000000
               IPEOutputPortImageFullALGM   = 0x100000000000000
               IPEOutputPortImageLTMStats   = 0x1000000000000000
               IPEOutputPortImageIHistStats = 0x2000000000000000
               IPEOutputPortImageGSSTATS    = 0x4000000000000000
               IPEOutputPortImageDS4GSSTATS = 0x8000000000000000
               ALLports                     = 0xF188000000003F00
          </Help>
          <VariableName>autoImageDumpIPEoutputPortMask</VariableName>
          <VariableType>UINT64</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpIPEoutputPortMask</SetpropKey>
          <DefaultValue>0xF188000000003F00</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Virtual Output Port Group Mask for IPE</Name>
            <Help>
               Virtual output port mask for IPE:
               IPEExposureFusionOutputFull     = 0x1
               IPEExposureFusionOutputDS4      = 0x2
               IPEAlgm8BitOutput               = 0x4
               IPEAlgm16BitOutput              = 0x8
               ALLports                        = 0xF
            </Help>
            <VariableName>autoImageDumpIPEVirtualOutputPortMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpIPEVirtualOutputPortMask</SetpropKey>
            <DefaultValue>0xF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for IPE </Name>
          <Help>
               Input port mask for IPE:
               IPEInputPortFull             = 0x1;
               IPEInputPortDS4              = 0x2;
               IPEInputPortDS16             = 0x4;
               IPEInputPortDS64             = 0x8;
               IPEInputPortFullRef          = 0x10;
               IPEInputPortDS4Ref           = 0x20;
               IPEInputPortDS16Ref          = 0x40;
               IPEInputPortDS64Ref          = 0x80;
               ALLports                     = 0xFF
          </Help>
          <VariableName>autoImageDumpIPEinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpIPEinputPortMask</SetpropKey>
          <DefaultValue>0x0F</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Virtual Input Port Group Mask for IPE</Name>
            <Help>
               Virtual Input port mask for IPE:
               IPEShortExposureInputFull   = 0x1
               IPELongExposureInputFull    = 0x2
               IPEMidExposureInputFull     = 0x4
               IPEShortExposureInputDS4    = 0x8
               IPELongExposureInputDS4     = 0x10
               IPEMidExposureInputDS4      = 0x20
               IPEAlgm8BitInput            = 0x40
               IPEAlgm16BitInput           = 0x80
               IPEDMMLMC1InputFull         = 0x100
               IPEDMMLMC1InputDS4          = 0x200
               IPEDMMLMC1InputDS16         = 0x400
               IPEDMMLMC1InputDS64         = 0x800
               IPEDMMLMC2InputFull         = 0x1000
               IPEDMMLMC2InputDS4          = 0x2000
               IPEDMMLMC2InputDS16         = 0x4000
               IPEDMMLMC2InputDS64         = 0x8000
               ALLports                    = 0xFFFF
            </Help>
            <VariableName>autoImageDumpIPEVirtualInputPortMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.autoImageDumpIPEVirtualInputPortMask</SetpropKey>
            <DefaultValue>0xFF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for IPE </Name>
          <Help>
               IPEInstanceName0             = 0x1;
               IPEInstanceName1             = 0x2;
               IPEInstanceName2             = 0x4;
               IPEInstanceName3             = 0x8;
               IPEInstanceName4             = 0x10;
               IPEInstanceName5             = 0x20;
               IPEInstanceName6             = 0x40;
               IPEInstanceName7             = 0x80;
               IPEInstanceName8             = 0x100;
               IPEInstanceName9             = 0x200;
               IPEInstanceName10            = 0x400;
               IPEInstanceName11            = 0x800;
               IPEInstanceName12            = 0x1000;
               IPEInstanceName13            = 0x2000;
               IPEInstanceName14            = 0x4000;
               IPEInstanceName15            = 0x8000;
               IPEInstanceName16            = 0x10000;
               IPEInstanceName17            = 0x20000;
               IPEInstanceName18            = 0x40000;
               IPEInstanceName19            = 0x80000;
               IPEInstanceName20            = 0x100000;
               IPEInstanceName21            = 0x200000;
               AllInstances                 = 0xFFFFFFFF
          </Help>
          <VariableName>autoImageDumpIPEInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpIPEInstanceMask</SetpropKey>
          <DefaultValue>0xFFFFFFFF</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for OPE </Name>
          <Help>
               Output port mask for OPE:
               OPEOutputPortDisplay         = 0x2;
               OPEOutputPortVideo           = 0x4;
               OPEOutputPortARGB            = 0x8;
               OPEOutputPortStatRS          = 0x10;
               OPEOutputPortStatIHIST       = 0x20;

               ALLports                     = 0x3F00
          </Help>
          <VariableName>autoImageDumpOPEoutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpOPEoutputPortMask</SetpropKey>
          <DefaultValue>0x3E</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for OPE </Name>
          <Help>
               Input port mask for OPE:
               OPEInputPortFull             = 0x2;
               ALLports                     = 0xFF
          </Help>
          <VariableName>autoImageDumpOPEinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpOPEinputPortMask</SetpropKey>
          <DefaultValue>0x0F</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for OPE </Name>
          <Help>
               OPEInstanceName0             = 0x1;
               OPEInstanceName1             = 0x2;
               OPEInstanceName2             = 0x4;
               OPEInstanceName3             = 0x8;
               OPEInstanceName4             = 0x10;
               OPEInstanceName5             = 0x20;
               OPEInstanceName6             = 0x40;
               OPEInstanceName7             = 0x80;
               OPEInstanceName8             = 0x100;
               OPEInstanceName9             = 0x200;
               OPEInstanceName10            = 0x400;
               OPEInstanceName11            = 0x800;
               OPEInstanceName12            = 0x1000;
               OPEInstanceName13            = 0x2000;
               OPEInstanceName14            = 0x4000;
               OPEInstanceName15            = 0x8000;
               OPEInstanceName16            = 0x10000;
               OPEInstanceName17            = 0x20000;
               OPEInstanceName18            = 0x40000;
               OPEInstanceName19            = 0x80000;
               OPEInstanceName20            = 0x100000;
               OPEInstanceName21            = 0x200000;
               AllInstances                 = 0xFFFFFFFF
          </Help>
          <VariableName>autoImageDumpOPEInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpOPEInstanceMask</SetpropKey>
          <DefaultValue>0xFFFFFFFF</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for BPS </Name>
          <Help>
              Output port mask BPS:
              BPSOutputPortFull            = 0x2;
              BPSOutputPortDS4             = 0x4;
              BPSOutputPortDS16            = 0x8;
              BPSOutputPortDS64            = 0x10;
              BPSOutputPortStatsBG         = 0x20;
              BPSOutputPortStatsHDRBHist   = 0x40;
              BPSOutputPortReg1            = 0x80;
              BPSOutputPortReg2            = 0x100;
              ALLports                     = 0x1FE
          </Help>
          <VariableName>autoImageDumpBPSoutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpBPSoutputPortMask</SetpropKey>
          <DefaultValue>0x1FE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for BPS </Name>
          <Help>
              Input port mask BPS:
              BPSInputPort            = 0x1;
          </Help>
          <VariableName>autoImageDumpBPSinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpBPSinputPortMask</SetpropKey>
          <DefaultValue>0x1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for BPS </Name>
          <Help>
              Instance mask BPS:
              BPSInstanceName0            = 0x1;
              BPSInstanceName1            = 0x2;
              BPSInstanceName2            = 0x4;
              BPSInstanceName3            = 0x8;
              ALLInstances                = 0xFFFFFFFF
          </Help>
          <VariableName>autoImageDumpBPSInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpBPSInstanceMask</SetpropKey>
          <DefaultValue>0xFFFFFFFF</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output port Mask for JpegHw </Name>
          <Help>
              Output port mask JpegHw:
              JPEGOutputPort0             = 0x1;
              JPEGOutputPort1             = 0x2;
              JPEGAggregatorOutputPort2   = 0x3;
              AllPorts                    = 0x7;
          </Help>
          <VariableName>autoImageDumpJpegHwoutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpJpegHwoutputPortMask</SetpropKey>
          <DefaultValue>0x7</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input port Mask for JpegHw </Name>
          <Help>
              Input port mask JpegHw:
              JPEGInputPort0             = 0x1;
              JPEGInputPort1             = 0x2;
              AllPorts                   = 0x3;
          </Help>
          <VariableName>autoImageDumpJpegHwinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpJpegHwinputPortMask</SetpropKey>
          <DefaultValue>0x3</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for JpegHw </Name>
          <Help>
              Instance mask JpegHw:
              JPEGInstanceName0            = 0x1;
              JPEGInstanceName1            = 0x2;
              JPEGInstanceName2            = 0x4;
              JPEGInstanceName3            = 0x8;
              JPEGInstanceName4            = 0x10;
              ALLInstances                 = 0x2F;
          </Help>
          <VariableName>autoImageDumpJpegHwInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpJpegHwInstanceMask</SetpropKey>
          <DefaultValue>0x2F</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for FDHw </Name>
          <Help>
              Output port mask FDHw:
              FDHwOutputPortResults         = 0x1;
              FDHwOutputPortRawResults      = 0x2;
              FDHwOutputPortWorkBuffer      = 0x4;
              ALLports                      = 0x7
          </Help>
          <VariableName>autoImageDumpFDHwoutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpFDHwoutputPortMask</SetpropKey>
          <DefaultValue>0x7</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for FDHw </Name>
          <Help>
              Input port mask FDHw:
              FDHwInputPortImage            = 0x1
          </Help>
          <VariableName>autoImageDumpFDHwinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpFDHwinputPortMask</SetpropKey>
          <DefaultValue>0x1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for FDHw </Name>
          <Help>
              Instance mask FDHw:
              FDHwInstanceName0             = 0x1;
              FDHwInstanceName1             = 0x2;
              AllInstances                  = 0x3
          </Help>
          <VariableName>autoImageDumpFDHwInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpFDHwInstanceMask</SetpropKey>
          <DefaultValue>0x3</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for LRME </Name>
          <Help>
              Output port mask LRME:
              LRMEOutputPortVector            = 0x1;
              LRMEOutputPortDS2               = 0x2;
              LRMEMaxOutputPorts              = 0x4;
              ALLports                        = 0xF
          </Help>
          <VariableName>autoImageDumpLRMEoutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpLRMEoutputPortMask</SetpropKey>
          <DefaultValue>0xF</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for LRME </Name>
          <Help>
              Input port mask LRME:
              LRMEInputPortTARIFEFull               = 0x1;
              LRMEInputPortREFIFEFull               = 0x2;
              LRMEInputPortTARIFEDS4                = 0x4;
              LRMEInputPortREFIFEDS4                = 0x8;
              LRMEInputPortTARIFEDS16               = 0x10;
              LRMEInputPortREFIFEDS16               = 0x20;
              LRMEMaxIntputPorts                    = 0x40;
              ALLports                              = 07F
          </Help>
          <VariableName>autoImageDumpLRMEinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpLRMEinputPortMask</SetpropKey>
          <DefaultValue>0x7F</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for LRME </Name>
          <Help>
              Instance mask LRME:
              LRMEInstanceName0            = 0x1;
              LRMEInstanceName1            = 0x2;
              AllInstances                 = 0x3
          </Help>
          <VariableName>autoImageDumpLRMEInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpLRMEInstanceMask</SetpropKey>
          <DefaultValue>0x3</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for RANSAC </Name>
          <Help>
              Output port mask RANSAC:
              RANSACOutputPort0            = 0x1
          </Help>
          <VariableName>autoImageDumpRANSACoutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpRANSACoutputPortMask</SetpropKey>
          <DefaultValue>0x1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for RANSAC </Name>
          <Help>
              Input port mask RANSAC:
              RANSACInputPort0           = 0x1
          </Help>
          <VariableName>autoImageDumpRANSACinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpRANSACinputPortMask</SetpropKey>
          <DefaultValue>0x1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for RANSAC </Name>
          <Help>
              Instance mask RANSAC:
              RANSACInstanceName0          = 0x1;
              RANSACInstanceName1          = 0x2;
              AllInstances                 = 0x3
          </Help>
          <VariableName>autoImageDumpRANSACInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpRANSACInstanceMask</SetpropKey>
          <DefaultValue>0x3</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for all ChiNodes </Name>
          <Help>
              Output port mask ChiNode:
              ChiNodeOutputFull            = 0x1;
              ChiNodeOutputDS4             = 0x2;
              ChiNodeOutputDS16            = 0x4;
              ChiNodeOutputDS64            = 0x8;
              ChiNodeOutputDS              = 0x10;
              ChiNodeOutputDSb             = 0x20;
              ALLports                     = 0x3F
          </Help>
          <VariableName>autoImageDumpCHINodeoutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpCHINodeoutputPortMask</SetpropKey>
          <DefaultValue>0x3F</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump input Port Mask for all ChiNodes </Name>
          <Help>
              Input port mask ChiNode:
              ChiNodeInputPort            = 0x1
          </Help>
          <VariableName>autoImageDumpCHINodeinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpCHINodeinputPortMask</SetpropKey>
          <DefaultValue>0x1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Auto Image Dump Instance Mask for ChiNodes </Name>
          <Help>
              Instance mask ChiNode:
              ChiNodeInstanceName0            = 0x1;
              ChiNodeInstanceName1            = 0x2;
              ChiNodeInstanceName2            = 0x4;
              ChiNodeInstanceName3            = 0x8;
              ChiNodeInstanceName4            = 0x10;
              ChiNodeInstanceName5            = 0x20;
              AllInstances                    = 0x3F
          </Help>
          <VariableName>autoImageDumpCHINodeInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpCHINodeInstanceMask</SetpropKey>
          <DefaultValue>0x3F</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for CVP </Name>
          <Help>
              Output port mask CVP:
              CVPOutputPortVector             = 0x1;
              CVPOutputPortData               = 0x2;
              CVPOutputPortImage              = 0x4;
              CVPOutputPortDMM                = 0x1000000000;
              CVPOutputPortSGM                = 0x2000000000;
              CVPOutputPortImageWarpStage1DSX = 0x8000000000;
              CVPOutputPortImageWarpStage1DS4 = 0x10000000000;
              CVPOutputPortImageWarpStage2DSX = 0x20000000000;
              CVPOutputPortImageWarpStage2DS4 = 0x40000000000;
              ALLports                        = 0x7B000000007;
          </Help>
          <VariableName>autoImageDumpCVPoutputPortMask</VariableName>
          <VariableType>UINT64</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpCVPoutputPortMask</SetpropKey>
          <DefaultValue>0x7B000000007</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for CVP </Name>
          <Help>
              Input port mask CVP:
              CVPInputPortTARIFEFull               = 0x8;
              CVPInputPortREFIFEFull               = 0x10;
              CVPInputPortTARIFEDS4                = 0x20;
              CVPInputPortREFIFEDS4                = 0x40;
              CVPInputPortTARIFEDS16               = 0x80;
              CVPInputPortREFIFEDS16               = 0x100;
              CVPInputPortData                     = 0x200;
              CVPInputPortIFEDS4DELAY              = 0x200000000;
              CVPInputPortImageWarp                = 0x4000000000;
              ALLports                             = 0x42000003F8;
          </Help>
          <VariableName>autoImageDumpCVPinputPortMask</VariableName>
          <VariableType>UINT64</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpCVPinputPortMask</SetpropKey>
          <DefaultValue>0x4200000060</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for CVP </Name>
          <Help>
              Instance mask CVP:
              CVPInstanceName0             = 0x1;
              CVPInstanceName1             = 0x2;
              CVPInstanceName2             = 0x4;
              CVPInstanceName10            = 0x400;
              CVPInstanceName12            = 0x1000;
              CVPInstanceName13            = 0x2000;
              CVPInstanceName15            = 0x8000;
              AllInstances                 = 0xFFFF
          </Help>
          <VariableName>autoImageDumpCVPInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpCVPInstanceMask</SetpropKey>
          <DefaultValue>0xFFFF</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for QSAT </Name>
          <Help>
              Output port mask QSAT:
              QSATOutputFull                = 0x02000
              QSATOutputDS4                 = 0x04000
              QSATOutputDS16                = 0x08000
              QSATOutputPortDataCamera1     = 0x10000
              QSATOutputPortDataCamera2     = 0x20000
              QSATOutputPortImageCamera1    = 0x40000
              QSATOutputPortImageCamera2    = 0x80000
              ALLports                      = 0xFE000
          </Help>
          <VariableName>autoImageDumpQSAToutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpQSAToutputPortMask</SetpropKey>
          <DefaultValue>0xFE000</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for QSAT </Name>
          <Help>
              Input port mask QSAT:
              QSATInputFullCamera1          = 0x0001;
              QSATInputDS4Camera1           = 0x0002;
              QSATInputDS16Camera1          = 0x0004;
              QSATInputFullCamera2          = 0x0008;
              QSATInputDS4Camera2           = 0x0010;
              QSATInputDS16Camera2          = 0x0020;
              QSATInputFullCamera3          = 0x0040;
              QSATInputDS4Camera3           = 0x0080;
              QSATInputDS16Camera3          = 0x0100;
              QSATInputPortDataCamera1      = 0x0200;
              QSATInputPortDataCamera2      = 0x0400;
              QSATInputPortImageCamera1     = 0x0800;
              QSATInputPortImageCamera2     = 0x1000;
              ALLports                      = 0x1FFF
          </Help>
          <VariableName>autoImageDumpQSATinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpQSATinputPortMask</SetpropKey>
          <DefaultValue>0x1FFF</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for QSAT </Name>
          <Help>
              Instance mask QSAT:
              QSATInstanceName0             = 0x1;
          </Help>
          <VariableName>autoImageDumpQSATInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpQSATInstanceMask</SetpropKey>
          <DefaultValue>0x1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for ITOF </Name>
          <Help>
              Output port mask ITOF:
              ITOFOutputDepthMap            = 0x0100
              ITOFOutputConfidenceMap       = 0x0200
              ITOFOutputIQNRQImage0         = 0x0400
              ITOFOutputIQNRIImage0         = 0x0800
              ITOFOutputIQNRQImage1         = 0x1000
              ITOFOutputIQNRIImage1         = 0x2000
              ALLports                      = 0x3F00
          </Help>
          <VariableName>autoImageDumpITOFoutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpITOFoutputPortMask</SetpropKey>
          <DefaultValue>0x3F00</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for ITOF </Name>
          <Help>
              Input port mask ITOF:
              ITOFInputFreq0ImageI          = 0x0001;
              ITOFInputFreq0ImageQ          = 0x0002;
              ITOFInputFreq1ImageI          = 0x0004;
              ITOFInputFreq1ImageQ          = 0x0008;
              ITOFInputDelayImageI          = 0x0010;
              ITOFInputDelayImageQ          = 0x0020;
              ALLports                      = 0x003F
          </Help>
          <VariableName>autoImageDumpITOFinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpITOFinputPortMask</SetpropKey>
          <DefaultValue>0x003F</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for ITOF </Name>
          <Help>
              Instance mask ITOF:
              ITOFInstanceName0             = 0x1;
          </Help>
          <VariableName>autoImageDumpITOFInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpITOFInstanceMask</SetpropKey>
          <DefaultValue>0x1</DefaultValue>
        </setting>
        <setting>
          <Name>Auto Image Dump Output Port Mask for CRE </Name>
          <Help>
              Output port mask CRE:
              CREOutputPortImage            = 0x2
              ALLports                      = 0x2
          </Help>
          <VariableName>autoImageDumpCREoutputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpCREoutputPortMask</SetpropKey>
          <DefaultValue>0x2</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Input Port Mask for CRE </Name>
          <Help>
              Input port mask CRE:
              CREInputPortImage             = 0x2
              ALLports                      = 0x2
          </Help>
          <VariableName>autoImageDumpCREinputPortMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpCREinputPortMask</SetpropKey>
          <DefaultValue>0x2</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Auto Image Dump Instance Mask for CRE </Name>
          <Help>
              Instance mask CRE:
              CREInstanceName0             = 0x1
              CREInstanceName1             = 0x2
              CREInstanceName2             = 0x4
              CREInstanceName3             = 0x8
              CREInstanceName4             = 0x10
              AllInstances                 = 0x1F
          </Help>
          <VariableName>autoImageDumpCREInstanceMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.autoImageDumpCREInstanceMask</SetpropKey>
          <DefaultValue>0x1F</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Allow Dynamic Image Dump</Name>
            <Help>
              Triggers an image dump only when org.codeaurora.qcamera3.hal_private_data.debug_image_dump is TRUE
              in a request, or if the dynamicImageDumpTrigger property is toggled to TRUE.  This Setting must be
              set to TRUE to enable debug_image_dump, or dynamicImageDumpTrigger to dump images per request.</Help>
            <VariableName>dynamicImageDump</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.dynamicImageDump</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Dynamic Image Dump Trigger</Name>
            <Help>
              If dynamicImageDump == TRUE, a set of images per request is dumped when this property is toggled to TRUE.
              For now, dumps continue until it is reset to FALSE.  In the future, this may be a true trigger which
              resets itself</Help>
            <VariableName>dynamicImageDumpTrigger</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.dynamicImageDumpTrigger</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Watermark Image</Name>
            <Help>Watermark request id onto frame. Only support YUV format</Help>
            <VariableName>watermarkImage</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.watermarkImage</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Watermark Offset</Name>
            <Help>
                Pass the x and y offsets to offset the location of the watermark.
                Example to offset x position by 40 and y position by 220:
                    40x220</Help>
            <VariableName>watermarkOffset</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.watermarkOffset</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Reprocess Input Dump</Name>
            <Help>Dumps reprocess input image and metadata</Help>
            <VariableName>reprocessDump</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.reprocessDump</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Reprocess Input Dump when fence errored</Name>
            <Help>Dumps reprocess input image and metadata when fence error is received</Help>
            <VariableName>inputDumpOnOutputFenceError</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.fenceErrorInputDump</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Offline Image Dump Only</Name>
            <Help>Dumps offline processing output images for all enabled nodes. This will run extremely slow</Help>
            <VariableName>offlineImageDumpOnly</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.offlineImageDumpOnly</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Metadata Dump During System events</Name>
            <Help>Dumps metadata for all outstanding request in the pipeline Every metadata dump costs 2 seconds</Help>
            <VariableName>metadataDumpDuringSystemEvents</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.metadataDumpDuringSystemEvents</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force Max FPS</Name>
            <Help>Do not pick a sensor mode above forceMaxFPS.  Primarily used for debugging.
                  Set to a huge number to disable</Help>
            <VariableName>forceMaxFPS</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.forceMaxFPS</SetpropKey>
            <DefaultValue>100000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Sensor mode per frame</Name>
          <Help>Update the sensor mode index per frame</Help>
          <VariableName>perFrameSensorMode</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.perFrameSensorMode</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Enable PN9PatternTest</Name>
          <Help>Enable PN9 Pattern Test</Help>
          <VariableName>enablePN9PatternTest</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enablePN9PatternTest</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>Enable dynamic VC update</Name>
          <Help>Update VC during dynamic mode switch</Help>
          <VariableName>enableDynamicModeSwitchVCUpdate</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableDynamicModeSwitchVCUpdate</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>cdr Tolerance</Name>
            <Help>cdr Tolerance is the step value we want to try.
                  For a given data rate let's assume the CDR range is [min, default, max],
                  tolerance will define the step value we want to go from default +/- max/min.
                  Please check with the HW PHY team for the reference values for specific targets.
            </Help>
            <VariableName>cdrTolerance</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.cdrTolerance</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>cdr ToleranceType</Name>
            <Help>cdr ToleranceType to add or subtract
                  1 = CDR Add Tolerance
                  2 = CDR Subtract Tolerance
            </Help>
            <VariableName>cdrToleranceType</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.cdrToleranceType</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>cdr LaneValue</Name>
            <Help>cdr LaneValue is the configured value to HW for that run,
                  it will be default +/- tolerance.
                  Please check with the HW PHY team for the reference values for specific targets.
            </Help>
            <VariableName>cdrLaneValue</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.cdrLaneValue</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable CDR Sweep Test</Name>
            <Help>Set this to TRUE to enable CDR Sweep Test using the camx
                  override settings: cdrLaneValue, cdrTolerance and cdrToleranceType.
            </Help>
            <VariableName>enableCDRSweepTest</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableCDRSweepTest</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>CSIPHY AuxDatarateMax</Name>
            <Help>CSIPHYAuxDatarateMax is the auxiliary datarate mask that specifies
                  if we need to use auxiliary settings for a given Physical
            </Help>
            <VariableName>CSIPHYAuxDatarateMax</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.CSIPHYAuxDatarateMax</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable CSIPHY AuxDatarate Map</Name>
            <Help>This setting Controls enabling/disabling generating CSIPHY
                  Aux data rate mapping table and saving to a file.
            </Help>
            <VariableName>EnableCSIPHYAuxDatarateMap</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.EnableCSIPHYAuxDatarateMap</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Disable PDAF</Name>
          <Help>Completely disable PDAF</Help>
          <VariableName>disablePDAF</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.disablePDAF</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>disable PDAF for IFE init packet</Name>
          <Help>disable PDAF for IFE init packet</Help>
          <VariableName>disablePDAFInit</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.disablePDAFInit</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
           <Name>disable PDAF preprocessed output port</Name>
           <Help>disable PDAF preprocessed output port</Help>
           <VariableName>disablePreProcessedOutputPorts</VariableName>
           <VariableType>BOOL</VariableType>
           <SetpropKey>persist.vendor.camera.disablePreProcessedOutputPorts</SetpropKey>
           <DefaultValue>FALSE</DefaultValue>
           <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Enable RDI Port</Name>
          <Help>Enable AF and IFE RDIRaw and RDIPDAF ports</Help>
          <VariableName>enableRDIPorts</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableRDIPorts</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>Enable PDAF Configuration Check</Name>
          <Help>Enables PDAF Mode Configuration Checks</Help>
          <VariableName>enablePDAFConfigurationChecks</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enablePDAFConfigurationChecks</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable sensor logs for feature specific debugging</Name>
            <Help>Mask to enable sensor logs for feature specific debugging
                  0x01 = Mode Switch Logs
                  0x02 = AEB Logs
                  0x04 = CSI PHY Logs
            </Help>
            <VariableName>enableSensorDebugMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.enableSensorDebugMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>Enable T2T</Name>
          <Help>Enable Touch to Track feature</Help>
          <VariableName>enableTouchToTrack</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableTouchToTrack</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>Enable IFE DRV Module</Name>
          <Help>This is to use configure IFE DRV Module</Help>
          <VariableName>enableDRV</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableDRV</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Send IFE DRV config per Frame</Name>
          <Help>This is used to send configure DRV Module per frame</Help>
          <VariableName>enablePerFrameDRVUpdate</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enablePerFrameDRVUpdate</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Set IFE DRV timeout Value</Name>
          <Help>This is used to overwrite DRV timeout Value</Help>
          <VariableName>DRVTimeOutValue</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.DRVTimeOutValue</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Blanking threshold to enable DRV</Name>
          <Help>This is to use configure the threshold to enable/disable DRV
          0 - Disable DRV for non FS usecases
          4 - Enable DRV for non FS usecase with threshold set to 4ms
          </Help>
          <VariableName>DRVBlankingThreshold</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.DRVBlankingThreshold</SetpropKey>
          <DefaultValue>4</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Use default frame duration to calculate the DRV timeout</Name>
          <Help>This is used to calculate DRV timeout based on default frame duration</Help>
          <VariableName>useDefaultFrameDurationForDRV</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.UseDefaultFrameDurationForDRV</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Enable IFE init frame reg dump only</Name>
          <Help>This is used to dump only the init frame</Help>
          <VariableName>enableInitRegDump</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableInitRegDump</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>mask for IFE init frame dump</Name>
          <Help>
                IFETop          = 0x1
                Demux           = 0x2
                ChannelGain     = 0x4
                ChromaUp        = 0x8
                BPC_PDPC        = 0x10
                BinCorrect      = 0x20
                CompDecomp      = 0x40
                WB              = 0x80
                GIC             = 0x100
                BLS             = 0x200
                Bayer_GTM       = 0x400
                Bayer_LTM       = 0x800
                LCAC            = 0x1000
                Demosaic        = 0x2000
                ColorXform      = 0x4000
                UVG             = 0x8000
                Preprocessor    = 0x10000
                SparsePD        = 0x20000
                CompDecompHVXRX = 0x40000
                CompDecompHVXTX = 0x80000
                GTM_FD          = 0x100000
                BPC_ABF         = 0x200000
                LSC             = 0x400000
                ColorCorrect    = 0x800000
                GTMDMI          = 0x1000000
                Gamma           = 0x2000000
                Stats           = 0x4000000
                VidPath         = 0x80000000
                DispPath        = 0x10000000
                FD              = 0x20000000
                PixelRaw        = 0x40000000
                PDAF            = 0x80000000
                PDOUT           = 0x100000000
                LCR             = 0x200000000
                Common          = 0x400000000
                PreLSC1DPDPC    = 0x1000000000
                PostLSC1DPDPC   = 0x2000000000
                AllModule       = 0x3877ffffff
            </Help>
          <VariableName>initRegDumpMask</VariableName>
          <VariableType>UINT64</VariableType>
          <SetpropKey>persist.vendor.camera.initRegDumpMask</SetpropKey>
          <DefaultValue>0x80000001</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>enable salinet node</Name>
          <Help>Enable/Disable salinet node</Help>
          <VariableName>enableSALINet</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableSalinet</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>PROFILE SALINet ALGO</Name>
          <Help>Enable profiling for SALINet algos</Help>
          <VariableName>enableSALINetProfile</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.SALINetProfile</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>ENABLE SALINet DUMP</Name>
            <Help>Enable/Disable dump from SALINet node and alog
            1 - Enable dump from saliency algo.
            2 - Enable dump from SALINet node
            3 - Enable dump from both algo and node
            </Help>
            <VariableName>enableSALINetDump</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.SALINetDump</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>enable PDNet node</Name>
          <Help>Enable/Disable PDNet node</Help>
          <VariableName>enablePDNet</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enablePDNet</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>PROFILE PDNet ALGO</Name>
          <Help>Enable profiling for PDNet algos</Help>
          <VariableName>enablePDNetProfile</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.PDNetProfile</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>ENABLE PDNet DUMP</Name>
            <Help>Enable/Disable dump from PDNet node and algo
            1 - Enable dump from PDNet algo.
            2 - Enable dump from PDNet node
            3 - Enable dump from both algo and node
            </Help>
            <VariableName>enablePDNetDump</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.PDNetDump</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>default fps</Name>
          <Help>Set the default fps for sensor mode pick</Help>
          <VariableName>defaultMaxFPS</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.defaultMaxFPS</SetpropKey>
          <DefaultValue>30</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>disableDRQPreemptionOnStopRecord</Name>
          <Help>Disables DRQ preemption on stop record</Help>
          <VariableName>disableDRQPreemptionOnStopRecord</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.disableDRQPreemption</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>disableVideoPerfModeSetting</Name>
          <Help>Disables video perf mode setting</Help>
          <VariableName>disableVideoPerfModeSetting</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.disableVideoPerfModeSetting</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enables offloading sensor acquire call</Name>
            <Help>Enables optimization during sensor acquire by offloading the call</Help>
            <VariableName>enableSensorAcquireOptimization</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableSensorAcquireOptimization</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Camera HW version override for testing</Name>
          <Help>Camera HW version override useful for testing purpose</Help>
          <VariableName>camVersionOverride</VariableName>
          <VariableType>INT</VariableType>
          <SetpropKey>persist.vendor.camera.camVersionOverride</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>overrideOPPCLOCK</Name>
          <Help>Increase the sensor output pixel clock by x %</Help>
          <VariableName>overrideOPPCLOCK</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.overrideOPPCLOCK</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>enable offcenter zoom in geolib</Name>
          <Help>enable offcenter zoom in geolib</Help>
          <VariableName>enablepGeolibOffCenterZoom</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enablepGeoliboffcenterzoom</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
      <setting>
        <Name>TF testing mode</Name>
        <Help>
          OVERRIDE_FS_TO_A_MAPPING = 1,
          DISABLE_REFIMEMENT       = 2,
          DISABLE_LMC              = 4,
          TEST_MCTF                = 0x7
        </Help>
        <VariableName>tfTestMode</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.tfTestMode</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Invalid SOF threshold</Name>
        <Help>
            Threshold for Invalid SOF count in a pipeline for triggering recovery
            Default value:0 means no change
            Recommended Values: 3 to 16
            [Less than 3 can invoke false alarms, 16 - Twice of requestsQueueDepth]
        </Help>
        <VariableName>invalidSOFThreshold</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.invalidSOFThreshold</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Dump BE, BHIST, BG, stats inside AEC AWB SW Node</Name>
        <Help>
              Mask info (can be dump multiple stats by setting bit position):
              No stats dump        :  0
              dump AEC BE Stats    :  1 (Bit position 1 is set)
              dump AEC BHIST Stats :  2 (Bit position 2 is set)
              dump AWB BG Stats    :  4 (Bit position 3 is set)
        </Help>
        <VariableName>dump3AStats</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.dump3AStats</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>0</Dynamic>
      </setting>
      <setting>
        <Name>Dump BE, BHIST, BG, stats inside AEC AWB SW Node</Name>
        <Help>Number of frame need to dump</Help>
        <VariableName>dump3AStatsNum</VariableName>
        <VariableType>UINT64</VariableType>
        <SetpropKey>persist.vendor.camera.dump3AStatsNum</SetpropKey>
        <DefaultValue>30</DefaultValue>
        <Dynamic>0</Dynamic>
      </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="AF Settings">
      <setting>
        <Name>Enable HJ AF</Name>
        <Help>Enable HJ AF</Help>
        <VariableName>enableHJAF</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.af.enableHJAF</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Disable Spotlight Detection</Name>
        <Help>Disable Spotlight Detection</Help>
        <VariableName>enableSPD</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.af.enableSPD</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Spotlight Detection Stats Type</Name>
        <Help>Spotlight Detection Stats Type</Help>
        <VariableName>spdStatsType</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.af.spdStatsType</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Focus Circle for Depth Based Algorithm Switch</Name>
          <Help>Enable/Disable Focus Circle for Depth Based Algorithm</Help>
          <VariableName>disableFocusIndication</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.af.depthfocus</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Fallback to Contrast AF for Spotlight Scene</Name>
          <Help>Enable/Disable Fallback to Contrast AF for Spotlight Scene</Help>
          <VariableName>spotlightFallbackToCAF</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.af.spotlightFallbackToCAF</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Log Levels</Name>
          <Help>Set AF log levels [0-7]</Help>
          <VariableName>afLog</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.af.log</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
          <Name>Field Of View Compensation Switch</Name>
          <Help>Enable/Disable Field Of View Compensation</Help>
          <VariableName>fovcEnable</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.fovc.enable</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Report rate for gyro data</Name>
          <Help>Report rate for gyro data in microsecs</Help>
          <VariableName>gyroDataReportRate</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.gyro.reportrate</SetpropKey>
          <DefaultValue>10000</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Sampling rate for gyro sensor</Name>
          <Help>Sampling rate for gyro sensor in hertz</Help>
          <VariableName>gyroSensorSamplingRate</VariableName>
          <VariableType>FLOAT</VariableType>
          <SetpropKey>persist.vendor.camera.gyro.samplerate</SetpropKey>
          <DefaultValue>104.0</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Report rate for gravity data</Name>
          <Help>Report rate for gravity data in microsecs</Help>
          <VariableName>gravityDataReportRate</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.gravity.reportrate</SetpropKey>
          <DefaultValue>30000</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Sampling rate for gravity sensor</Name>
          <Help>Sampling rate for gravity sensor in hertz</Help>
          <VariableName>gravitySensorSamplingRate</VariableName>
          <VariableType>FLOAT</VariableType>
          <SetpropKey>persist.vendor.camera.gravity.samplerate</SetpropKey>
          <DefaultValue>52.0</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Report rate for TOF data</Name>
          <Help>Report rate for TOF data in microsecs</Help>
          <VariableName>TOFDataReportRate</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.TOF.reportrate</SetpropKey>
          <DefaultValue>30000</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Sampling rate for TOF sensor</Name>
          <Help>Sampling rate for TOF sensor in hertz</Help>
          <VariableName>TOFSensorSamplingRate</VariableName>
          <VariableType>FLOAT</VariableType>
          <SetpropKey>persist.vendor.camera.TOF.samplerate</SetpropKey>
          <DefaultValue>52.0</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Custom TOF sensor default library</Name>
          <Help>TOF sensor default library
            Update the lib path in DefaultValue section below
            e.g. /system/lib/sensors.hal.tof.so
          </Help>
          <VariableName>customTOFSensorLib</VariableName>
          <VariableType>String</VariableType>
          <SetpropKey>vendor.debug.camera.customTOFSensorLib</SetpropKey>
          <DefaultValue />
          <Dynamic>FALSE</Dynamic>
          <Public>TRUE</Public>
      </setting>
      <setting>
          <Name>TOF sensor Type</Name>
          <Help>The value represents the TOF (Time of folight) sensor type
            and should be the same as the sensor type set in sensor_t object of TOF sensor
            If the sensor is changed, update the value through the camx override setting</Help>
          <VariableName>SensorTypeTof</VariableName>
          <VariableType>INT</VariableType>
          <SetpropKey>persist.vendor.camera.TOF.SensorTypeTof</SetpropKey>
          <DefaultValue>40</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>MultiWindow PDAF Switch</Name>
          <Help>Enable/Disable Multi-window PDAF</Help>
          <VariableName>mwEnable</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.mw.enable</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Adaptive LensMap Setting</Name>
          <Help>Adaptive LensMap Feature Control:
                0x00: Feature off,
                0x01: Feature on
                0x02: Feature on, show comparison with OTP prediction
                0x04: Feature on, with extra debug information
                0x08: Feature on, prediction on but learning off
          </Help>
          <VariableName>adaptLensMap</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.af.adaptlensmap</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
          <Name>HAF Tuning Switch</Name>
          <Help>Override Tuning Enabled Algorithm,
            Disabled: No Override,
            PDAF:     Enable only PDAF,
            TOF:      Enable only TOF,
            DCIAF:    Enable only DCIAF,
            CAF:      Enabled only CAF
          </Help>
          <VariableName>enableAFAlgo</VariableName>
          <VariableType>EnableAFAlgoType</VariableType>
          <SetpropKey>persist.vendor.camera.af.disablehaf</SetpropKey>
          <DefaultValue>Disabled</DefaultValue>
          <Dynamic>TRUE</Dynamic>
          <Public>TRUE</Public>
      </setting>
      <setting>
          <Name>FullSweep Mode Switch</Name>
          <Help>Enable/Disable Full-sweep Mode
            Disabled:         FullSweep mode is off,
            InfinityToMacro:  FullSweep mode is far to near end,
            MacroToInfinity:  FullSweep mode is near to far end,
            BothDirection:    Fullsweep mode is dual direction
          </Help>
          <VariableName>afFullsweep</VariableName>
          <VariableType>AFFullsweepType</VariableType>
          <SetpropKey>vendor.debug.camera.af.fullsweep</SetpropKey>
          <DefaultValue>Disabled</DefaultValue>
          <Dynamic>TRUE</Dynamic>
          <Public>TRUE</Public>
      </setting>
      <setting>
          <Name>Enable Manual lens control</Name>
          <Help>Enable/Disable Manual Lens Control
            Disabled: Disable Manual Lens Movement,
            DAC:      Enable Control via DAC,
            Logical:  Enable Control via Logical Position
          </Help>
          <VariableName>manualAf</VariableName>
          <VariableType>AFManualLensControlType</VariableType>
          <SetpropKey>vendor.debug.camera.af.manual</SetpropKey>
          <DefaultValue>Disabled</DefaultValue>
          <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Define Lens Position</Name>
          <Help>Lens Position Which Interpreted Based on Manual Lens Control</Help>
          <VariableName>lensPos</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.af.ctrl.lenspos</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
      <setting>
          <Name>VM debug string</Name>
          <Help>Used to control VM logs for visualizing VM using tool
            String value for this property should be "ALL" or VM topology names delimited
            with ',' to enable corresponding topology's VM logs. Default is ""
            Ex: 1. PDAF: Enables VM logs only under PDAF topology
                2. CAF,PDAF: Enables VM logs under CAF and PDAF
                3. FD,PDAF,ToF : Enables VM logs for FD, PDAF and ToF topologies
                4. ALL : Enable VM logs under all topologies
          </Help>
          <VariableName>vmDebugMask</VariableName>
          <VariableType>String</VariableType>
          <SetpropKey>persist.vendor.camera.stats.vm.debug</SetpropKey>
          <DefaultValue />
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>AF Core Recorder Mode</Name>
            <Help>AF Core Recorder Mode:
              0. Diable AF Core Recorder Mode
              1. Enable AF Core Recorder Mode
              2. Enable AF Core Recorder Mode and Print Set/Input Parameter as well
            </Help>
            <VariableName>AFRecorderMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.af.recorderMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Lens Sag Compensation</Name>
            <Help>Enable Lens Sag Compensation</Help>
            <VariableName>enableLensSagComp</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.af.enableLensSagComp</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
          <Name>Active Node string</Name>
          <Help>Used to create debug probes for active node mask
              String value for this property should be Active Node names delimited
              with any delimiter or none to enable corresponding Node logs. Default is ""
              Ex: 1. PDAF: Create debug probe for PDAF Node
                  2. TOF: Create debug probe for TOF Node
                  3. CAF: Create debug probe for CAF Node
                  4. FOLLOWER: Create debug probe for FOLLOWER Node
                  5. MAIN: Create debug probe for algo
          </Help>
          <VariableName>activeNodeMask</VariableName>
          <VariableType>String</VariableType>
          <SetpropKey>persist.vendor.camera.af.activenode</SetpropKey>
          <DefaultValue />
          <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>API Mask</Name>
          <Help>
            Used to set API mask
            Ex: 0. Process Monitor
                1. Process Search
                2. Set Parameters
                3. Set Inputs
                4. Set Tuning
                5. Set Mode
                6. Set Camera Mode
                7. Set ROI
                8. Set Range
                9. Get Debug Data
                10. Rebase
                11. Destroy
                12. Set Sensitivity
                13. Get Parameters
                14. Clear Data
          </Help>
          <VariableName>apiMask</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.af.hafapi</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Statistics Settings">
        <setting>
            <Name>Enable Manual Exposure control</Name>
            <Help>Enable/Disable Manual Exposure Control</Help>
            <VariableName>manualExposureType</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.aec.manual</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Dual BHist support</Name>
            <Help>Enable Dual BHist Support</Help>
            <VariableName>dualBHistSupport</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.aec.dualBHistSupport</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>Disable BG Stat for AF</Name>
          <Help>Disable Reading BG Stats for AF</Help>
          <VariableName>disableBGStatsForAF</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>vendor.debug.camera.aec.disableBGStatsForAF</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
          <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable custom AEC algo</Name>
            <Help>Enable/Disable custom AEC algo</Help>
            <VariableName>enableCustomAlgoAEC</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.aec.enableCustomAlgoAEC</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AEC Stats Processing </Name>
            <Help>Enable/Disable AEC Stats Processing</Help>
            <VariableName>disableAECStatsProcessing</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.disableAECStatsProcessing</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Disbale AF AWB Preflash States</Name>
            <Help>Flag to disable AF and AWB preflash states</Help>
            <VariableName>disableAFAWBpreFlash</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.aec.disableAFAWBpreFlash</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>YUV formats plane alignment value</Name>
          <Help>This is to update plane align value for internal YUV nodes</Help>
          <VariableName>yuvPlaneAlignment</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.yuvPlaneAlignment</SetpropKey>
          <DefaultValue>4096</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Max Frames AF Settle</Name>
            <Help>Max Frames to wait for AF to settle</Help>
            <VariableName>preFlashMaxFrameWaitLimitAF</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.aec.maxWaitFramesAF</SetpropKey>
            <DefaultValue>20</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Max Frames AWB Settle</Name>
            <Help>Max Frames to wait for AWB to settle</Help>
            <VariableName>preFlashMaxFrameWaitLimitAWB</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.aec.maxWaitFramesAWB</SetpropKey>
            <DefaultValue>3</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
      <setting>
        <Name>Turn on or not preflash over touch AE</Name>
        <Help>Turn on preflash over touch AE in always flash or auto flash mode</Help>
        <VariableName>disablePreFlashOnForTouchAE</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.aec.preflashForTouchAE</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Number of frames to skip after flash</Name>
        <Help>Number of frames to skip after flash</Help>
        <VariableName>numberOfFramesToSkip</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.aec.numFramesToSkip</SetpropKey>
        <DefaultValue>2</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
        <setting>
            <Name>Custom AEC Algo Library Name</Name>
            <Help>Custom AEC Algo library name</Help>
            <VariableName>customAlgoAECName</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customAlgoAECName</SetpropKey>
            <DefaultValue>com.qtistatic.stats.aec</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Custom AEC Algo Library Path</Name>
            <Help>Custom AEC Algo library path</Help>
            <VariableName>customAlgoAECPath</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customAlgoAECPath</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable custom AWB algo</Name>
            <Help>Enable/Disable custom AWB algo</Help>
            <VariableName>enableCustomAlgoAWB</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.awb.enableCustomAlgoAWB</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Custom AWB Algo Library Name</Name>
            <Help>Custom AWB Algo library name</Help>
            <VariableName>customAlgoAWBName</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customAlgoAWBName</SetpropKey>
            <DefaultValue>com.qtistatic.stats.awb</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Custom AWB Algo Library Path</Name>
            <Help>Custom AWB Algo Library path</Help>
            <VariableName>customAlgoAWBPath</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customAlgoAWBPath</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable custom AF algo</Name>
            <Help>Enable/Disable custom AF algo</Help>
            <VariableName>enableCustomAlgoAF</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.af.enableCustomAlgoAF</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Custom AF Algo Library Name</Name>
            <Help>Custom AF Algo library name</Help>
            <VariableName>customAlgoAFName</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customAlgoAFName</SetpropKey>
            <DefaultValue>com.qtistatic.stats.af</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Custom AF Algo Library Path</Name>
            <Help>Custom AF Algo Library path</Help>
            <VariableName>customAlgoAFPath</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customAlgoAFPath</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable custom HAF algo</Name>
            <Help>Enable/Disable custom HAF algo</Help>
            <VariableName>enableCustomHAFAlgo</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.af.enableCustomHAFAlgo</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Custom HAF Algo Library Name</Name>
            <Help>Custom HAF Algo library name</Help>
            <VariableName>customHAFAlgoName</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customHAFNameAlgo</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Custom HAF Algo Library Path</Name>
            <Help>Custom HAF Algo Library path</Help>
            <VariableName>customHAFAlgoPath</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customHAFAlgoPath</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Override HAF Algo Mask</Name>
            <Help> Bit Mask to control which HAF algorithm will be override
                Bit 0: Override CAF
                BIT 1: Override PDAF
                BIT 2: Override TOF
                BIT 3: Override default mixer
                BIT 4: Override AF Follower
                BIT 5: Override PDAF+TOF Mixer
            </Help>
            <VariableName>overrideHAFAlgoMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.overrideHAFMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Override exposure settings from 3A</Name>
            <Help>Enable setting exposure settings from 3A for debugging purpose</Help>
            <VariableName>enableStatsExposureSetting</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableStatsExposureSetting</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Define Exposure Gain</Name>
            <Help>Value of Exposure Gain</Help>
            <VariableName>exposureGain</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.aec.ctrl.gain</SetpropKey>
            <DefaultValue>1.0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Define Exposure Time</Name>
            <Help>Value of Exposure Time in nanoseconds</Help>
            <VariableName>exposureTime</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.aec.ctrl.expTime</SetpropKey>
            <DefaultValue>22000000</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Define Predictive Gain</Name>
            <Help>Value of Predictive Gain</Help>
            <VariableName>predictiveGain</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.aec.ctrl.predGain</SetpropKey>
            <DefaultValue>1.0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Define Predictive Gain for SFE</Name>
            <Help>Value of Predictive Gain</Help>
            <VariableName>predictiveGainSFE</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.aec.ctrl.predGainSFE</SetpropKey>
            <DefaultValue>1.0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Define Lux value</Name>
            <Help>Value of Lux Index</Help>
            <VariableName>luxIndex</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.aec.ctrl.luxIndex</SetpropKey>
            <DefaultValue>316.771</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable extended timeout for Long Exposure</Name>
            <Help>Enable/Disable extended timeout for Long Exposure</Help>
            <VariableName>extendedTimeForLongExposure</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.aec.extendedTimeForLongExposure</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Manual White Balance control</Name>
            <Help>Enable/Disable Manual White Balance Control</Help>
            <VariableName>manualWhiteBalanceType</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.awb.manual</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Define White Balance Red channel gain</Name>
            <Help>Value of White Balance R Gain</Help>
            <VariableName>rGain</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.awb.ctrl.rGain</SetpropKey>
            <DefaultValue>1.700643</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Define White Balance Green channel gain</Name>
            <Help>Value of White Balance G Gain</Help>
            <VariableName>gGain</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.awb.ctrl.gGain</SetpropKey>
            <DefaultValue>1.0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Define White Balance Blue channel gain</Name>
            <Help>Value of White Balance B Gain</Help>
            <VariableName>BGain</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.awb.ctrl.bGain</SetpropKey>
            <DefaultValue>2.054097</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Define White Balance color temperature</Name>
            <Help>Value of White Balance color temperature</Help>
            <VariableName>colorTemp</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.awb.ctrl.colorTemp</SetpropKey>
            <DefaultValue>4100</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Ignore scene mode</Name>
            <Help>If true, InputControlSceneMode is ignored, and scene mode is reported as disabled</Help>
            <VariableName>ignoreSceneMode</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.awb.ignoreSceneMode</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable custom ASD algo</Name>
            <Help>Enable/Disable custom ASD algo</Help>
            <VariableName>enableCustomAlgoASD</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.asd.enableCustomAlgo</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Custom ASD Algo Library Name</Name>
            <Help>Custom ASD Algo Library Name</Help>
            <VariableName>customAlgoASDName</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.asd.customAlgoName</SetpropKey>
            <DefaultValue>libcamxstaticasdalgo</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Custom ASD algo Library Path</Name>
            <Help>Custom ASD Algo Library Path</Help>
            <VariableName>customAlgoASDPath</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.asd.customAlgoPath</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable custom AFD algo</Name>
            <Help>Enable/Disable custom AFD algo</Help>
            <VariableName>enableCustomAlgoAFD</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.aFd.enableCustomAlgo</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Custom AFD Algo Library Name</Name>
            <Help>Custom AFD Algo Library Name</Help>
            <VariableName>customAlgoAFDName</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.afd.customAlgoName</SetpropKey>
            <DefaultValue>libcamxstaticafdalgo</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Custom AFD algo Library Path</Name>
            <Help>Custom AFD Algo Library Path</Help>
            <VariableName>customAlgoAFDPath</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.afd.customAlgoPath</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>IHist Stats dependency offset</Name>
            <Help> IHist stats will come from OPE in Mimas and Mimas2, So offset is needed in them
                Titan        : 0
                Mimas/Mimas2 : 1
            </Help>
            <VariableName>ihistStatsOffset</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.ihistStatsOffset</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>RS Stats dependency offset</Name>
            <Help> RS stats will come from OPE in Mimas, So offset is needed in Mimas
                Titan/Mimas2 : 0
                Mimas        : 1
            </Help>
            <VariableName>rsStatsOffset</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.rsStatsOffset</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Additional offset required for reading FD vendor tag in 3A</Name>
            <Help> Based on where FD is connected in pipeline, this extra offset
                   above pipeline delay can be increased so that 3A reads
                   the tag after FD populates it
                   FD in Titan:   IFE -&gt; FD               ==&gt; Offset = 1
                   FD in Mimas2k: TFE -&gt; OPE -&gt; GPU -&gt; FD ==&gt; Offset = 2
            </Help>
            <VariableName>fdVendorTagReadOffset</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.fdVendorTagReadOffset</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Eanble custom 3A Data</Name>
            <Help> Enable Custom 3A input by OEM </Help>
            <VariableName>enableCustom3AData</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableCustom3AData</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="TFE Settings">
        <setting>
            <Name>Enable VSR Feature</Name>
            <Help>
             Enable VSR Feature
             0x0 - Disabled
             0x1 - Video only
             0x2 - Display and Video
            </Help>
            <VariableName>enableVSR</VariableName>
            <VariableType>UINT</VariableType>
            <DefaultValue>0x1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>Override App enable VSR </Name>
            <Help>Used to override App enabled VSR option</Help>
            <VariableName>overrideEnableVSR</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.overrideEnableVSR.enable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable BDS Split Feature</Name>
            <Help>
             Enable BDS (Bayer down scaling) Split Feature
             FALSE - Disabled
             TRUE - Enabled,
             Applicable only in video usecase
            </Help>
            <VariableName>enableBDSSplitFeature</VariableName>
            <VariableType>BOOL</VariableType>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="IPE Settings">
        <setting>
            <Name>Enable QSAT</Name>
            <Help>Enable/Disable QSAT</Help>
            <VariableName>enableQSAT</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableQSAT</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Select Video bokeh mode</Name>
            <Help>
                Select video bokeh mode for MCX case
                1: DummyRTB
                2: DepthBasedVideoBokeh(VBSE)
                3: SegmentationBasedVideoBokeh
                4: DepthBasedVideoBokeh(DFSDPP)
            </Help>
            <VariableName>setVideoBokehMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.setVideoBokehMode</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable VBSE Video Bokeh</Name>
            <Help>Enable/Disable VBSE Video Bokeh</Help>
            <VariableName>enableVBSEBasedVideoBokeh</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableVBSEBasedVideoBokeh</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Segmentation mode</Name>
            <Help>Segmentation mode: 0 for normal mode, 1 for Dump mode</Help>
            <VariableName>segMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.segMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
        </setting>
        <setting>
          <Name>Bypass segmentation</Name>
          <Help>
              This is to bypass segmentation processing
                BypassEnable            =  0x1,  bypass feature enabled
                BypassAlways            =  0x2,  bypass enabled by force override, this should be 0 by default
                BypassMinAIStrength     =  0x4,  bypass enabled for minimum(0) SWDAS value
                BypassMultiExposureMode =  0x8,  bypass enabled for MFHDR realtime multi exp
                BypassUltralowlightMode =  0x10, bypass enabled for VIULL low light
                BypassSleep             =  0x20, bypass enabled for qseg sleep mode
                BypassQsegInterpolation =  0x40, bypass enabled for qseg interpolation, default 1
          </Help>
          <VariableName>bypassSegmentationProcessing</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.bypassSegmentationProcessing</SetpropKey>
          <DefaultValue>0x7D</DefaultValue>
        </setting>
        <setting>
          <Name>Allow delayed Segmentation memory allocation</Name>
          <Help>
              This is to allow delayed Segmentation memory allocation
                FALSE - Disabled
                TRUE - Enabled,
             Applicable for snapshot usecase
          </Help>
          <VariableName>allowDelaySegMemAllocation</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.allowDelaySegMemAllocation</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
        </setting>
        <setting>
          <Name>Enable AI stats metadata publish</Name>
          <Help>
              This is to enable AI stats metadata publish
                FALSE - Disabled
                TRUE - Enabled,
          </Help>
          <VariableName>enableAIStatsMetadata</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableAIStatsMetadata</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
        </setting>
         <setting>
           <Name>Disable CVP driver</Name>
           <Help>This is to disable CVP driver</Help>
           <VariableName>disableCVPDriver</VariableName>
           <VariableType>BOOL</VariableType>
           <SetpropKey>persist.vendor.camera.disableCVPDriver</SetpropKey>
           <DefaultValue>FALSE</DefaultValue>
           <Dynamic>FALSE</Dynamic>
         </setting>
        <setting>
          <Name>Enable/Disable EVA iTOF</Name>
          <Help>
            Enable/disable EVA iTOF processing
                TRUE : Enable EVA iTOF processing
                FALSE: Disable EVA iTOF and use software based depth processing flow
          </Help>
          <VariableName>enableEVAiTOF</VariableName>
          <VariableType>BOOL</VariableType>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="3A Debug / Tuning metadata settings">
        <setting>
            <Name>Debug Data header string</Name>
            <Help>Set header string needed by parser to know the type of debug data</Help>
            <VariableName>debugDataHeaderString</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.headerstring</SetpropKey>
            <DefaultValue>QTI Debug Metadata</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable 3A debug-data</Name>
            <Help>General switch to enable 3A debug data. See size settings to set a new size or use default.</Help>
            <VariableName>enable3ADebugData</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.enable3A</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AEC debug-data size</Name>
            <Help>Debug-data size reserved for AEC</Help>
            <VariableName>debugDataSizeAEC</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.sizeAEC</SetpropKey>
            <DefaultValue>640000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AWB debug data size</Name>
            <Help>Debug data size reserved for AWB</Help>
            <VariableName>debugDataSizeAWB</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.sizeAWB</SetpropKey>
            <DefaultValue>2500000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AF debug data size</Name>
            <Help>Debug data size reserved for AF</Help>
            <VariableName>debugDataSizeAF</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.sizeAF</SetpropKey>
            <DefaultValue>110000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AFD debug data size</Name>
            <Help>Debug data size reserved for AFD</Help>
            <VariableName>debugDataSizeAFD</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.sizeAFD</SetpropKey>
            <DefaultValue>450000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>AFC debug data size</Name>
            <Help>Debug data size reserved for AFC</Help>
            <VariableName>debugDataSizeAFC</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.sizeAFC</SetpropKey>
            <DefaultValue>300000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Concise 3A debug-data</Name>
            <Help>General switch to enable Concise 3A debug data. See size settings to set a new size or use default.</Help>
            <VariableName>enableConcise3ADebugData</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.enableConcise3A</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Concise AEC debug-data size</Name>
            <Help>Debug-data size reserved for Concise AEC</Help>
            <VariableName>conciseDebugDataSizeAEC</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.sizeConciseAEC</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Concise AF debug-data size</Name>
            <Help>Debug-data size reserved for Concise AF</Help>
            <VariableName>conciseDebugDataSizeAF</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.sizeConciseAF</SetpropKey>
            <DefaultValue>2600</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Concise AWB debug-data size</Name>
            <Help>Debug-data size reserved for Concise AWB</Help>
            <VariableName>conciseDebugDataSizeAWB</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.sizeConciseAWB</SetpropKey>
            <DefaultValue>2000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable customize 3A debug-data</Name>
            <Help>General switch to enable customized 3A debug data filter</Help>
            <VariableName>enable3ADebugDataCustomFilter</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.enable3ADebugDataCustomFilter</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable 3A debug-data dump</Name>
            <Help>Enables 3A debug data dump</Help>
            <VariableName>enable3ADebugDataDump</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.enable3Adump</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Tuning metadata dump</Name>
            <Help>General switch to enable tuning data dump. See size settings to set a new size or use default.</Help>
            <VariableName>enableTuningMetadata</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.enableTuningMetadata</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>IFE tuning data size</Name>
            <Help>Tuning data reserved for IFE</Help>
            <VariableName>tuningDumpDataSizeIFE</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.tuningDumpDataSizeIFE</SetpropKey>
            <DefaultValue>86000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>TFE tuning data size</Name>
            <Help>Tuning data reserved for TFE</Help>
            <VariableName>tuningDumpDataSizeTFE</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.tuningDumpDataSizeTFE</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>IPE tuning data size</Name>
            <Help>
                Tuning data size reserved for IPE.
                Size should be divisible without a remainder by the number of partitions and consider MFHDR size:
                i.e. (tuningDumpDataSizeIPE - tuningDumpDataSizeMFHDR) / DebugDataPartitionsIPE
            </Help>
            <VariableName>tuningDumpDataSizeIPE</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.tuningDumpDataSizeIPE</SetpropKey>
            <DefaultValue>1200132</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>IPE MFHDR tuning data size</Name>
            <Help>Tuning data size reserved for IPE MFHDR. IMPORTANT: if this value is change,
                  must update "IPE tuning data size" tuningDumpDataSizeIPE</Help>
            <VariableName>tuningDumpDataSizeMFHDR</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.tuningDumpDataSizeMFHDR</SetpropKey>
            <DefaultValue>300000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>OPE tuning data size</Name>
            <Help>Tuning data reserved for OPE</Help>
            <VariableName>tuningDumpDataSizeOPE</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.tuningDumpDataSizeOPE</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable OPE LTMDC Stats Optimization</Name>
            <Help>Used to control use of Preview OPE LTMDC stats in RT/NRT pipelines</Help>
            <VariableName>enablePreviewLTMDCStatsUsageOPE</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.ope.enablePreviewLTMDCStatsUsageOPE</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>BPS tuning data size</Name>
            <Help>Tuning data size reserved for BPS</Help>
            <VariableName>tuningDumpDataSizeBPS</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.tuningDumpDataSizeBPS</SetpropKey>
            <DefaultValue>71400</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>Enable New Debug Data Memory Allocation</Name>
          <Help>DebugData new memory allocation approach</Help>
          <VariableName>enableDebugDataNewMemAllocation</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableDebugDataNewMemAllocation</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Dump Debug-data on process result</Name>
            <Help>
              Control debug-data dump per process result
              If enable this setting and implemented dump by CHI, debug-data including Tuning metadata will be dump into a file
              on every process result.
              Note that to dump data, debug-data should be also enable using the corresponding settings.
              Values:
              0: Disable, do not dump any data.
              1: Enable for multi-frame snapshot.
              2: Enable only while video port is enable.
              3: Enable for all processed buffers. This include all preview frames.
            </Help>
            <VariableName>dumpDebugDataEveryProcessResult</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.dumpDebugDataEveryProcessResult</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Allocate debug-data for offline pipelines</Name>
            <Help>
              Setting this to TRUE will allocate debug-data for offline sessions.
              Disabling allocation for offline sessions, reduce memory usage. For usecases where realtime session is available,
              offline debug-data is not required in the metadata. Deep-copy and allocation takes place already by the framework
            </Help>
            <VariableName>debugDataOfflineAlloc</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.debugdata.debugDataOfflineAlloc</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>DRC Gain Threshold for SW Tintless BE StatsGen</Name>
            <Help>If DRC Gain is higher that this threshold, Tintless BE stats are generated from SW ALgo for snapshot</Help>
            <VariableName>DRCGainThresholdForSWTLBEStatsGen</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>persist.vendor.camera.defaultADRCThreshold</SetpropKey>
            <DefaultValue>1.3</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="PD Library Settings">
      <setting>
            <Name>PD Library CHI Overload</Name>
            <Help>Enables/Disables Library CHI Overload</Help>
            <VariableName>disablePDLibCHIOverload</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disablePDLibCHIOverload</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
      </setting>
      <setting>
            <Name>Enable custom PD Library</Name>
            <Help>Enable/Disable custom PD Library</Help>
            <VariableName>enableCustomPDLib</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.pdlib.enableCustomPDLib</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Custom PD Library Name</Name>
            <Help>Custom PD library name</Help>
            <VariableName>customPDLibName</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customPDLibName</SetpropKey>
            <DefaultValue>libcom.qtistatic.stats.pdlib</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Custom PD Library Path</Name>
            <Help>Custom PD Library path</Help>
            <VariableName>customPDLibPath</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>vendor.debug.camera.customPDLibPath</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>Enable Tintless</Name>
          <Help>Enables tintless algorithm</Help>
          <VariableName>tintlessEnable</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>vendor.debug.camera.tintlessEnable</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
          <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable PD Library Logging</Name>
            <Help>Enable/Disable PD Library Logging
            1 - Enable all PDLib general logging
            2 - Enable all PDLib general + verbose logging
            3 - Enable all PDLib general + verbose logging with Adaptive K logging
            </Help>
            <VariableName>enablePDLibLog</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.pdaf_logging</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable PD Library Test Mode</Name>
            <Help>Enable/Disable PD Library Test Mode
            1 - General test mode to check gainmap uniformity
            </Help>
            <VariableName>enablePDLibTestMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.pdaf_test</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable PD Library Profiling</Name>
            <Help>Enable/Disable PD Library Profiling</Help>
            <VariableName>enablePDLibProfiling</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.pdaf_profiling</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enhance PD Library Data Dump</Name>
            <Help>Enable/Disable PD Library Data Dump Enhancement
            bit[0] - Enable enhanceDump, dump with ReqId and TimeStamp
            bit[15:1] - provide cameraId control
            sample: 0x9=0b'1001 dumpCameraId 4
            </Help>
            <VariableName>enhancePDLibDump</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.pdaf_enhanceDump</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable PD Library Data Dump</Name>
            <Help>Enable/Disable PD Library Data Dump
            1 - Single raw input with configuration dump.
            2 - Raw input dump according to lens position and configuration.
            </Help>
            <VariableName>enablePDLibDump</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.pdaf_dump</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Disable PD Library LCR</Name>
            <Help>Enable/Disable PD Library LCR</Help>
            <VariableName>disablePDLibLCR</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.lcr.disable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>EnableIFESWCDM</Name>
          <Help>Enables SW CDM for IFE</Help>
          <VariableName>ifeSWCDMEnable</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>vendor.debug.camera.ifeSWCDMEnable</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
          <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>EnableTFESWCDM</Name>
          <Help>Enables SW CDM for TFE</Help>
          <VariableName>tfeSWCDMEnable</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>vendor.debug.camera.tfeSWCDMEnable</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
          <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Lux threshold for tintless processing</Name>
            <Help>
               Percentage difference lux threshold value to
               override the skipping of alternate frame during
               tintless processing.
            </Help>
            <VariableName>luxThresholdForTintless</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.luxThresholdForTintless</SetpropKey>
            <DefaultValue>0.5</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="AE Scan Settings">
        <setting>
            <Name>Enable AE Scan</Name>
            <Help>
                Enable/Disable AE Scan
                0  Disable
                1  Enable AE Scan Time Sweep
                2  Enable AE Scan Gain Sweep
                4  Enable AE Scan Toogle
                8  Enable AE Scan Time Sweep delayed
                16 Enable AE Scan Gain Sweep delayed
                32 Enable AE Scan Toogle delayed
                To Enable more then one test case bitwise or the value.
            </Help>
            <VariableName>enableAEScan</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.aec.aescan</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="ChiOverride Settings">
        <setting>
            <Name>Chi Warning log mask</Name>
            <Help>Mask of which warning logs are output</Help>
            <VariableName>chiLogWarningMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.chiLogWarningMask</SetpropKey>
            <DefaultValue>0xFFFFFFFFFFFFFFFF</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Chi Core Config log mask</Name>
            <Help>Mask of which core config logs are output</Help>
            <VariableName>chiLogCoreCfgMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.chiLogCoreCfgMask</SetpropKey>
            <DefaultValue>0xFFFFFFFFFFFFFFFF</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Chi Config log mask</Name>
            <Help>Mask of which per frame/request config logs are output</Help>
            <VariableName>chiLogConfigMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.chiLogConfigMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Chi Info log mask</Name>
            <Help>Mask of which info logs are output</Help>
            <VariableName>chiLogInfoMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.chiLogInfoMask</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Chi Dump log mask</Name>
            <Help>Mask of which Dump logs are output</Help>
            <VariableName>chiLogDumpMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.chiLogDumpMask</SetpropKey>
            <DefaultValue>0x3FFF</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Chi Verbose log mask</Name>
            <Help>Mask of which verbose logs are output</Help>
            <VariableName>chiLogVerboseMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.chiLogVerboseMask</SetpropKey>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Chi Full log mask</Name>
            <Help>Mask of which Full logs are output</Help>
            <VariableName>chiLogFullMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.chiLogFullMask</SetpropKey>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Chi Trace msg log mask</Name>
            <Help>Mask of which Trace logs are output</Help>
            <VariableName>chiLogTraceMask</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>persist.vendor.camera.chiLogTraceMask</SetpropKey>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Disable ZSL</Name>
            <Help>Do not select a ZSL usecase.  0 for FALSE, 1 for TRUE</Help>
            <VariableName>overrideDisableZSL</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideDisableZSL</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable LRME DS2 link</Name>
            <Help>Enable LRME DS2 link.  FALSE to disable, TRUE to enable</Help>
            <VariableName>enableLRMEDS2</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableLRMEDS2</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Enable MFNR</Name>
            <Help>
                Enable MFNR selection criteria
                    FALSE   = 0,
                    TRUE    = 1
            </Help>
            <VariableName>overrideEnableMFNR</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideEnableMFNR</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Select Anchor Selection</Name>
            <Help>
                Select Anchor Selection Algorithm for MFNR
                    NONE        = 0.
                    FIXED       = 1,
                    NON-FIXED   = 2
            </Help>
            <VariableName>anchorSelectionAlgoForMFNR</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.anchorSelectionAlgoForMFNR</SetpropKey>
            <DefaultValue>2</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
      <setting>
        <Name>Select Anchor Algo Selection</Name>
        <Help>
          Select Anchor Algorithm Selection Type for MFNR
          Timestamp        = 0.
          Sharpness        = 1,
          Lighting         = 2
        </Help>
        <VariableName>anchorAlgoSelectionType</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.anchorAlgoSelectionType</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
        <setting>
            <Name>Enable Advance Features</Name>
            <Help>
                Mask to enable Advance Features in AdvancedCameraUsecase
                    No extra features enabled               = 0x0
                    Enable FeatureZSL (by default)          = 0x1
                    Enable FeatureMFNR (HW multi frame)     = 0x2
                    Enable FeatureHDR/AE_Bracket            = 0x4
                    Enable FeatureSWMF (SW multi frame)     = 0x8
                    Enable FeatureMFSR (HW multi frame)     = 0x10
                    Enable FeatureQCFA                      = 0x20
                    Enable Feature2 Wrapper                 = 0x40
                    Enable FeatureAIDE                      = 0x80
            </Help>
            <VariableName>advanceFeatureMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.enableAdvanceFeatures</SetpropKey>
            <DefaultValue>64</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Manual Blur setting</Name>
            <Help>manually set blur configuration if enable this setting</Help>
            <VariableName>manualBlurConfig</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.manualBlurConfig</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable offline noise reprocessing</Name>
            <Help>
              Flag to enable offline noise reprocessing in MFNR
                  Disable   = 0,
                  Enable    = 1
            </Help>
            <VariableName>enableOfflineNoiseReprocess</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.enableOfflineNoiseReprocess</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable gamma15 pre-calculation for TMC 1.1</Name>
            <Help>
              Flag to enable gamma15 pre-calculation for TMC 1.1
                  Disable   = 0,
                  Enable    = 1
            </Help>
            <VariableName>enableGamma15PreCalculate</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.enableGamma15PreCalculate</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force usecase selection</Name>
            <Help>Pass in an ID to force a specific use case to be selected, and bypass the selection logic</Help>
            <VariableName>overrideForceUsecaseId</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceUsecaseId</SetpropKey>
            <DefaultValue>0xffffffff</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force livesnapshot support</Name>
            <Help>this setting helps to forcely enable liveshot regardless of any target-based mitigations</Help>
            <VariableName>overrideForceLiveshot</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceLiveshot</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force full size livesnapshot</Name>
            <Help>this setting helps to force full size liveshot regardless of any target-based mitigations</Help>
            <VariableName>overrideForceFullSizeLiveshot</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceFullSizeLiveshot</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force EIS support</Name>
            <Help>this setting helps to forcely enable EIS regardless of any target-based mitigations</Help>
            <VariableName>overrideForceEISSupport</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceEISSupport</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force FD rendering in UI support</Name>
            <Help>this setting helps to forcely enable FD rendering in UI</Help>
            <VariableName>overrideForceFDRendering</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceFDRendering</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force BurstShot support</Name>
            <Help>this setting helps to forcely enable Burshot</Help>
            <VariableName>overrideForceBurstShot</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceBurstShot</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force FD rendering in Camera UI support</Name>
            <Help>this setting helps to forcely enable FD rendering in Camera UI. When set to FALSE,
              behavior is determined by platform capabilities.
            </Help>
            <VariableName>overrideForceCameraFDRendering</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceCameraFDRendering</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force sensor mode selection</Name>
            <Help>Pass in an ID to force a specific sensor mode to be selected, and bypass the selection logic</Help>
            <VariableName>overrideForceSensorMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceSensorMode</SetpropKey>
            <DefaultValue>0xffffffff</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force SHDR_LINE_OFFSET0 selection</Name>
            <Help>It is used to hardcoded shdr_line_offset0 for debugging</Help>
            <VariableName>shdr_line_offset0</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.shdr_line_offset0</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force SHDR_LINE_OFFSET1 selection</Name>
            <Help>It is used to hardcoded shdr_line_offset1 for debugging</Help>
            <VariableName>shdr_line_offset1</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.shdr_line_offset1</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force sensor mode selection for multiple camera IDs</Name>
            <Help>
                Pass in a mask to force different sensor modes to be selected for different camera IDs,
                bypassing the selection logic.
                The modes should be specified at 1-nibble offsets in the mask, i.e. the lowest hex digit for
                physical camera ID 0, the next digit for ID 1, etc.

                The max mode index that can be specified by this override is 14 - 0xF (15) will be ignored and the override
                just for that camera ID will be disabled.

                This override will be ignored if it's used together with overrideForceSensorMode.

                Example:
                To force mode 8 (for camera ID 0), mode 4 (for ID 1), mode 0 (for ID 2) and nothing (for ID 3 etc.):
                    overrideForceSensorModeMultiCam=0xFFFFF048
            </Help>
            <VariableName>overrideForceSensorModeMultiCam</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceSensorModeMultiCam</SetpropKey>
            <DefaultValue>0xffffffff</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Hide certain sensor modes for multiple camera IDs</Name>
            <Help>
                Pass in a mask to hide certain sensor modes for different Sensor IDs,
                bypassing the selection logic.
                The modes will be idetnfied with the help of Active Array size and binning factor (override value)
                The binning factor should be specified at 1-nibble offsets in the mask, i.e. the lowest hex digit for
                Sensor ID 0 (Index 0 based), the next digit for ID 1, etc.

                For eg, there is 64MP Sensor and QCFA need to be hidden, then binningFactor=2 will hide any Sensor modes which
                has binning factor 2.

                SensorID value need to be derived from pSensorCaps, since there is no best way to handle this.
                It is tied up with sensorID in that structure.

                This override will be ignored if it's used together with either
                overrideForceSensorMode or overrideForceSensorModeMultiCam.

                Example:
                To force binning 8 (for sensor ID 0), 4 (for ID 1), 2 (for ID 2) and nothing (for ID 3 etc.):
                    overrideHideSensorModeMultiCam=0x248
                Usage: First collect CamxLogGroupHWL Info boot up logs to identify which Sensor has what active Array Size.
                After that derive the value to set as override. Add the override and restart camera server or device.
            </Help>
            <VariableName>overrideHideSensorModeMultiCam</VariableName>
            <VariableType>UINT64</VariableType>
            <SetpropKey>vendor.debug.camera.overrideHideSensorModeMultiCam</SetpropKey>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Add FS capability to the sensor</Name>
            <Help>Mark the sensor as FS capable inspite of having no explicit FS mode</Help>
            <VariableName>overrideForceFSCapable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.overrideForceFSCapable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Expose Internal Mode for specific usecase and camera id</Name>
            <Help>
                Pass in a mask to expose internal modes for different camera ids and selected usecases.

                The usecases should be specified at 1-nibble offsets in the mask, i.e. the lowest hex digit for
                physical camera ID 0, the next digit for ID 1, etc.

                The max mode index that can be specified by this override is 14 - 0xF (15) will be ignored.

                We can specify usecases for a max of 8 cameras

                Usecases supported:
                    PseudoZSLXCFA Snapshot = 0x0
                    Max                    = 0x1

                Example:
                    Expose internal Mode for Camera id 0 and 1 for usecase PseudoZSLXCFA
                    Value = 0xFFFFFF00
            </Help>
            <VariableName>exposeInternalModeForMultiCamUsecaseMask</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.exposeInternalModeForMultiCamUsecaseMask</SetpropKey>
            <DefaultValue>0xFFFFFF0F</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable GPU Node Rotation Usecase</Name>
            <Help>Select only GPU Node Usecase.  0 for FALSE, 1 for TRUE</Help>
            <VariableName>overrideGPURotationUsecase</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideGPURotationUsecase</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable GPU Node Downscale Usecase</Name>
            <Help>Select only GPU Node Usecase.  0 for FALSE, 1 for TRUE</Help>
            <VariableName>overrideGPUDownscaleUsecase</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideGPUDownscaleUsecase</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Contiguous output of JPEGSW Node</Name>
            <Help>JPEGSW node does memmove so that it gives contiguous output.  0 for FALSE, 1 for TRUE</Help>
            <VariableName>jpegswContiguousOutput</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.jpegswContiguousOutput</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Set Max no of CPU cores in JPEGSW lib</Name>
            <Help>Set Max no of CPU cores to be used by JPEGSW lib while encoding image.</Help>
            <VariableName>setMaxNoOfCoresJpegsw</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.setMaxNoOfCoresJpegsw</SetpropKey>
            <DefaultValue>4</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable DSP in JPEGSW Lib</Name>
            <Help>Enable HVX core in JPEGSW Lib for encoding image. 0 for FALSE, 1 for TRUE</Help>
            <VariableName>enableDSPJpegsw</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.enableDSPJpegsw</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Overwrite JPEGSW Orientation</Name>
            <Help>
              Orientation value can be 0/90/180/270/0xffffffff(-1).
              0xffffffff(-1) - Orientation value will not be overwritten.
              If any other value is set JPEGSW node considers it as invalid.
            </Help>
            <VariableName>overwriteJpegswOrientation</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overwriteJpegswOrientation</SetpropKey>
            <DefaultValue>0xffffffff</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force HFR without 3A Usecase selection</Name>
            <Help>Select HFR without 3A Usecase.  0 for FALSE, 1 for TRUE</Help>
            <VariableName>overrideHFRNo3AUseCase</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideHFRNo3AUseCase</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Camera close state</Name>
          <Help>Camera close status.  0 for FALSE, 1 for TRUE</Help>
          <VariableName>overrideCameraClose</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.overrideCameraClose</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Camera open state</Name>
          <Help>Camera open status.  0 for FALSE, 1 for TRUE</Help>
          <VariableName>overrideCameraOpen</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.overrideCameraOpen</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Allow Force Close when App does not close after deviceError</Name>
          <Help>Allow Force-Close  0 for FALSE, 1 for TRUE</Help>
          <VariableName>allowForceCloseOfCameraAfterDeviceError</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.allowForceCloseOfCameraAfterDeviceError</SetpropKey>
          <DefaultValue>0</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>PDLib close state</Name>
          <Help>PDLib close status.  0 for FALSE, 1 for TRUE</Help>
          <VariableName>overridePDLibClose</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.overridePDLibClose</SetpropKey>
          <DefaultValue>1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>PDLib open state</Name>
          <Help>PDLib open status.  0 for FALSE, 1 for TRUE</Help>
          <VariableName>overridePDLibOpen</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.overridePDLibOpen</SetpropKey>
          <DefaultValue>1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>overrideAIStrengthControlFactor</Name>
            <Help>override AI strenth control factor, including Segmentation Global Confidence and AI strength from UI.
                0 not override; 1 for segnet out globalconfidence only; 2 for sw AI strength only; 3 for both;
            </Help>
            <VariableName>overrideAIStrengthControlFactor</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideAIStrengthControlFactor</SetpropKey>
            <DefaultValue>2</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable EIS V2</Name>
            <Help>Enable EIS V2. 0 for Disable, 1 for VendorTag match, 2 for force select</Help>
            <VariableName>EISV2Enable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.eisv2enable</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable EIS V3</Name>
            <Help>Enable EIS V3. 0 for Disable, 1 for VendorTag match, 2 for force select</Help>
            <VariableName>EISV3Enable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.eisv3enable</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>SFEAlignment Margin</Name>
            <Help>SFEAlignment Margin</Help>
            <VariableName>SFEAlignmentMargin</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.sfealignmentmargin</SetpropKey>
            <DefaultValue>0.05</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EIS input dump Enable</Name>
            <Help>EIS input dump enable in file 0x1000 for SFE alignment, 0x100 for GME, 0x10 for EISv2, 0x1 for EISv3</Help>
            <VariableName>EISInputDumpEnable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.eisinputdumpenable</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EIS output dump Enable</Name>
            <Help>EIS output dump enable in file 0x1000 for SFE alignment, 0x100 for GME, 0x10 for EISv2, 0x1 for EISv3</Help>
            <VariableName>EISOutputDumpEnable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.eisoutputdumpenable</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EIS dump force flush</Name>
            <Help>EIS force flush 0x1000 for SFE alignment, 0x100 for GME, 0x10 for EISv2, 0x1 for EISv3</Help>
            <VariableName>EISDumpForceFlush</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.eisdumpforceflush</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Magnetometer enablement in EIS</Name>
            <Help>Magnetometer enablement in EIS 0x1000 for SFE alignment, 0x100 for GME,
                0x10 for EISv2, 0x1 for EISv3</Help>
            <VariableName>MagEnable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.magenable</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Accelerometer enablement in EIS</Name>
            <Help>Accelerometer enablement in EIS 0x1000 for SFE alignment, 0x100 for GME,
                0x10 for EISv2, 0x1 for EISv3</Help>
            <VariableName>AccelEnable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.accelenable</SetpropKey>
            <DefaultValue>0x1111</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>OIS enablement in EIS</Name>
            <Help>OIS enablement in EIS 0x1000 for SFE alignment, 0x100 for GME,
                0x10 for EISv2, 0x1 for EISv3</Help>
            <VariableName>OISEnable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.oisenable</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Offeset to Produce Bayer Alignment Grid</Name>
            <Help>Offset to Produce Bayer Alignment Grid</Help>
            <VariableName>OffsetToProduceBayerAlignGrid</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.OffsetToProduceBayerAlignGrid</SetpropKey>
            <DefaultValue>2</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EIS V2 Margin</Name>
            <Help>Set EIS V2 Margin</Help>
            <VariableName>EISV2Margin</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.eisv2margin</SetpropKey>
            <DefaultValue>0.2</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EIS V2 Frame Delay</Name>
            <Help>Set EIS V2 Frame Delay</Help>
            <VariableName>EISV2FrameDelay</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.eisv2framedelay</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EIS V3 Margin</Name>
            <Help>Set EIS V3 Margin</Help>
            <VariableName>EISV3Margin</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.eisv3margin</SetpropKey>
            <DefaultValue>0.2</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EIS V3 Frame Delay</Name>
            <Help>Set EIS V3 Frame Delay</Help>
            <VariableName>EISv3FrameDelay</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.eisv3framedelay</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EIS Horizon Leveling control</Name>
            <Help>Set EIS Horizon Leveling</Help>
            <VariableName>EISHorizonLevelEnable</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>vendor.debug.camera.eishorizonlevelenable</SetpropKey>
            <DefaultValue>-1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>EIS max Roll Leveling Deg</Name>
            <Help>Set EIS Horizon Leveling max degree</Help>
            <VariableName>EISHorizonLevelMaxDeg</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>vendor.debug.camera.eishorizonlevelmaxdeg</SetpropKey>
            <DefaultValue>-1.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Number of PCRs before stream on</Name>
            <Help>Set number of PCRs to handle before stream on</Help>
            <VariableName>numPCRsBeforeStreamOn</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.numPCRsBeforeStreamOn</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Max Image Buffer Timeout Count</Name>
            <Help>
                How many times to wait for an image buffer to be free when all are busy.
                Effective wait time = imageBufferWaitTime*MaxImageBufferTimeoutCount.
            </Help>
            <VariableName>maxImageBufferTimeoutCount</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.MaxImageBufferTimeoutCount</SetpropKey>
            <DefaultValue>3</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Image Buffer Wait Time</Name>
            <Help>
              How long to wait for an image buffer to be free when all are busy in milliseconds.
            </Help>
            <VariableName>imageBufferWaitTime</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.imageBufferWaitTime</SetpropKey>
            <DefaultValue>800</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Maximum image buffer allocation count override for real time nodes</Name>
            <Help>
              Maximum number of Image Buffers to allocate for real time nodes
              0xffffffff (-1) will completely disable the maximum image buffer count override
              Any positive value can be used as an override.
            </Help>
            <VariableName>overrideMaxImageBufferCountRealTime</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideMaxImageBufferCountRealTime</SetpropKey>
            <DefaultValue>64</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Maximum image buffer allocation count override for non-real time nodes</Name>
            <Help>
              Maximum number of Image Buffers to allocate for non-real time nodes
              0xffffffff (-1) will completely disable the maximum image buffer count override
              Any positive value can be used as an override.
            </Help>
            <VariableName>overrideMaxImageBufferCountNonRealTime</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.overrideMaxImageBufferCountNonRealTime</SetpropKey>
            <DefaultValue>64</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Stats Frame Skipping</Name>
          <Help>Factor to skip stats processing. e.g. 0: invalid. 1: No Skip. 2: skip 1 frame. 3: skip 2 frames</Help>
          <VariableName>statsProcessingSkipFactor</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.statsProcessingSkipCount</SetpropKey>
          <DefaultValue>1</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Non HFR mode FPS bound</Name>
          <Help>Maximum fps bound exposed in capability to App in Non HFR mode</Help>
          <VariableName>maxNonHfrFps</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.maxNonHfrFps</SetpropKey>
          <DefaultValue>60</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Min FPS bound for frame duration</Name>
          <Help>Minimum fps bound of frame duration for max resolution</Help>
          <VariableName>minFrameRateBound</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.minFrameRateBound</SetpropKey>
          <DefaultValue>10</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable OIS Optimization</Name>
            <Help> Enable OIS Optimization</Help>
            <VariableName>enableOISOptimization</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableOISOptimization</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>OIS Calibration Mode</Name>
            <Help>Indicates source of OIS calibration data</Help>
            <VariableName>OISCalibrationMode</VariableName>
            <VariableType>OISCalibrationType</VariableType>
            <SetpropKey>vendor.debug.camera.OISCalibrationMode</SetpropKey>
            <DefaultValue>OTP</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Sensor Handle Caching</Name>
            <Help> Enable Sensor Handle Caching</Help>
            <VariableName>enableSensorCaching</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableSensorCaching</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable CSIPHY caching</Name>
            <Help> Enable CSIPHY device caching</Help>
            <VariableName>enableCSIPHYCaching</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableCSIPHYCaching</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
      <setting>
        <Name>Enable CHI Partial Data</Name>
        <Help>
          Enable Partial Data Support from CHI:
          CHIPartialDataDisable for no CHI Partial Data,
          CHIPartialDataSeparate to send CHI Partial Data independently,
          CHIPartialDataCombined to send it along with Core Driver.
        </Help>
        <VariableName>enableCHIPartialData</VariableName>
        <VariableType>CHIPartialDataType</VariableType>
        <SetpropKey>vendor.debug.camera.enableCHIPartialData</SetpropKey>
        <DefaultValue>CHIPartialDataDisable</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable CHI Partial Data Recovery</Name>
        <Help>
          Enable Partial Data Recovery
        </Help>
        <VariableName>enableCHIPartialDataRecovery</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.enableCHIPartialDataRecovery</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable per-frame metadata dump</Name>
        <Help>
           0 - disable:
           1 - Enable text metadata dump for offline pipelines,
           2 - Enable text metadata dump for real-time pipelines,
           3 - Enable text metadata dump for both offline and real-time pipelines
           4 - Enable binary metadata dump for offline pipelines,
           8 - Enable binary metadata dump for real-time pipelines,
          12 - Enable binary metadata dump for both offline and real-time pipelines
        </Help>
        <VariableName>dumpMetadata</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.dumpMetadata</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable detailed ascii metadata dump</Name>
        <Help>
          0 - disable
          1 - enable
        </Help>
        <VariableName>enableVendorTagDump</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.enableVendorTagDump</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable per-frame CHI metadata dump for set features</Name>
        <Help>
          1. This enables printing specific metadata tags(tag Name) listed at /vendor/etc/camera/camxmetatagsfilter.txt
             Fore reference tag name, check list of tags available at /data/vendor/camera/metadata/metadatatable.txt
          2. To enable entire Metadata Dump, refer to variable dumpCHIMetadataToFile
          3. Set bitmask for specific feature(s) (Check g_feature2xmltypes.h)
        
        </Help>
        <VariableName>dumpCHIMetadata</VariableName>
        <VariableType>UINT64</VariableType>
        <SetpropKey>persist.vendor.camera.dumpCHIMetadata</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable dumping per-frame CHI metadata buffer data to file system</Name>
        <Help>
          Dump entire metadata buffer to file system.on per Frame basis.
          Refer to variable dumpCHIMetadata for the feature(s) list which enable this.
        </Help>
        <VariableName>dumpCHIMetadataToFile</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.dumpCHIMetadataToFile</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable dumping per-frame CHI image buffer data to file system</Name>
        <Help>
          1. This enables dumping chi image buffers into /data/vendor/camera/
          3. Set bitmask for specific feature(s) [Same as dumpChiMetadata above]
          May slow down FPS if dumping too many images at once
        </Help>
        <VariableName>dumpCHIImageBuffer</VariableName>
        <VariableType>UINT64</VariableType>
        <SetpropKey>persist.vendor.camera.dumpCHIImageBuffers</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable dumping per-frame image buffer data to file system</Name>
        <Help>
        Triggered by Recording start in video or offlineDump vendorTag
        
        </Help>
        <VariableName>chifeature2PortDump</VariableName>
        <VariableType>UINT64</VariableType>
        <SetpropKey>persist.vendor.camera.chifeature2PortDump</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable metadata dumps</Name>
        <Help>
          Enable proving memset data to the nodes when input data for tag ID is
          NULL. 0 - disable, 1 - only properties, 2 - all tags.
        </Help>
        <VariableName>memsetInputMeta</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.enablememsetInputMeta</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable linear LUT for metadata</Name>
        <Help>
          Enable linear LUT for metadata operations
        </Help>
        <VariableName>enableLinearMetaLUT</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableLinearMetaLUT</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable FD Stream in Real Time</Name>
        <Help>
          Enable FD Stream in Real Time from CHI:
          FALSE   = 0,
          TRUE    = 1
        </Help>
        <VariableName>enableFDStreamInRealTime</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.enableFDStreamInRealTime</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Select In-Sensor HDR 3 Exposure usecase</Name>
        <Help>
          Select in-Sensor HDR 3 Exposure usecase and sensor mode:
            0x0  = None
            0x1  = Preview
            0x2  = Seamless snapshot
            0x10 = Force enable seamless snapshot (for debug usage only and please make sure current sensor is supported)
        </Help>
        <VariableName>selectInSensorHDR3ExpUsecase</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.selectInSensorHDR3ExpUsecase</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable In Sensor Zoom</Name>
        <Help>Settings to enable In sensor Zoom</Help>
        <VariableName>enableInSensorZoom</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableInSensorZoom</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Enable Snapshot Only In Sensor Zoom</Name>
        <Help>
            Settings to enable Snapshot Only In sensor Zoom.
            Need to enable both enableInSensorZoom and enableSnapshotOnlyInSensorZoom.
        </Help>
        <VariableName>enableSnapshotOnlyInSensorZoom</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableSnapshotOnlyInSensorZoom</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Enable In Sensor Zoom In Only Physical stream case</Name>
        <Help>
            Settings to enable in sensor zoom in only physical stream case.
        </Help>
        <VariableName>enableInSensorZoomForOnlyPhysicalStream</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableInSensorZoomForOnlyPhysicalStream</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Optimize Dummy Request during Seamless Mode Switch in Realtime Feature</Name>
        <Help>
            Settings to remove dummy request during sensor mode switch.
        </Help>
        <VariableName>enableDummyRequestOptimization</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableDummyRequestOptimization</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Enable Sensor Remosaic For Insensor Zoom</Name>
        <Help>Settings to enable ensor remosaic for insensor zoom</Help>
        <VariableName>enableSensorRemosaic</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.enableSensorRemosaic</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>TRUE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Enable Fast Shutter mode</Name>
        <Help>Settings to enable fast shutter mode</Help>
        <VariableName>enableFastShutter</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableFastShutter</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
	  <setting>
        <Name>Disable IQ Trigger Threshold</Name>
        <Help>Enable/Disable IQ Trigger Threshold</Help>
        <VariableName>disableIQThreshold</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.disableIQThreshold</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable HDR10P For new API</Name>
        <Help>
            Settings to enable new API for HDR10P.
        </Help>
        <VariableName>enableFrameworkHDR10P</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableFrameworkHDR10P</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Enable Dolby Vision Dynamic Range Mode</Name>
        <Help>
            Settings to enable Dolby Vision dynamic range feature.
        </Help>
        <VariableName>enableDolbyVisionHDR</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableDolbyVisionHDR</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>EOS handling through repeating_request_end API</Name>
        <Help>
          Settings to enable EOS handling through repeating_request_end API.
            0 for FALSE, Disable
            1 for TRUE,  Enable
        </Help>
        <VariableName>enableEOSWithRRE</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableEOSWithRRE</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Enable framework color space API</Name>
        <Help>Setting to enable new API for color space profiles.</Help>
        <VariableName>enableFWColorSpace</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableFWColorSpace</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Enable P3 HDR Modes</Name>
        <Help>Enables HDR modes for P3 color space</Help>
        <VariableName>enableP3HDRModes</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableP3HDRModes</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Enable Unified Buffer Manager</Name>
        <Help>
            Enable this setting so that CHI and CAMX use the unified image buffer manager.
            0 for FALSE, i.e CHIBufferManager uses Gralloc interface to allocate Buffers
            1 for TRUE, i.e CHIBufferManager uses CamXBufferManager interface to allocate Buffers
        </Help>
        <VariableName>enableUnifiedBufferManager</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.enableUnifiedBufferManager</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable/Disable late binding of buffer to ImageBuffer holder for CHI buffer managers</Name>
        <Help>
            Whether to enable late bind of memory/buffers to ImageBuffer for CHI buffer managers.
            0 for FALSE, i.e Buffers are allocated/bound at the time of GetImageBufferInfo
            1 for TRUE, i.e holder ImageBuffer objects are returned in GetImageBufferInfo
        </Help>
        <VariableName>enableCHIImageBufferLateBinding</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.enablechilatebinding</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable feature2 dump</Name>
        <Help>
          Flag to enable raw image and/or metadata dump in feature2.
                Disable    = 0,
                Enable     = 1
        </Help>
        <VariableName>enableFeature2Dump</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.enableFeature2Dump</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Force fixed number of frames for HWMF</Name>
        <Help>
          Integer to force HWMF fixed number of frames
                Disable                     = 0,
                Enable and num of frames    &gt; 0
        </Help>
        <VariableName>forceHWMFFixedNumOfFrames</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.forceHWMFFixedNumOfFrames</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Force fixed number of frames for SWMF</Name>
        <Help>
          Integer to force SWMF fixed number of frames
                Disable                     = 0,
                Enable and num of frames    &gt; 0
        </Help>
        <VariableName>forceSWMFFixedNumOfFrames</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.forceSWMFFixedNumOfFrames</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable CHITargetBufferManager CHI Fence Support</Name>
        <Help>
            Enable this setting so that CHI fence support is enabled on CHITargetBufferManager class.
            0 for FALSE, 1 for TRUE.
        </Help>
        <VariableName>enableTBMChiFence</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.enableTBMChiFence</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable CHITargetBufferManager CHI Fence Support for MFSR only</Name>
        <Help>
            Enable this setting so that CHI fence support is enabled on MFSR CHITargetBufferManager.
            0 for FALSE, 1 for TRUE.
        </Help>
        <VariableName>enableMFSRChiFence</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.enableMFSRChiFence</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable RAW HDR Snapshot</Name>
        <Help>
            Enable/Disable RAW HDR Snapshot by set this value.
            0 for FALSE, Disable
            1 for TRUE, Enable
        </Help>
        <VariableName>enableRawHDR</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>vendor.debug.camera.enableRawHDR</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>FD full stream dimension</Name>
        <Help>Enable setting of FD full stream dimension
        </Help>
        <VariableName>enableFDFullStreamDimension</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>debug.vendor.camera.enableFDFullStreamDimension</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable resolution upscale for camera</Name>
        <Help>
            Enable/Disable resolution upscale.
            0 for FALSE, Disable
            1 for TRUE, Enable
        </Help>
        <VariableName>enableResolutionUpscale</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableResolutionUpscale</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable ChiMetadata client sigabort</Name>
        <Help>
            Enable/Disable raising sigabort when no free meta buffer available in ChiMetadata client
            0 for FALSE, Disable
            1 for TRUE, Enable
        </Help>
        <VariableName>enableChiMetadataSigAbort</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.enableChiMetadataSigAbort</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Disable Indefinite Wait For Async Pipelines Destroy</Name>
        <Help>Disable/Enable waiting indefinitely for pipelines destroy</Help>
        <VariableName>disableWaitForPipelinesDestroy</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.disableWaitForPipelinesDestroy</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Induce delay in IFE node-destroy</Name>
        <Help>Induce delay if True</Help>
        <VariableName>induceDelayIFENodeDestroy</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>vendor.debug.camera.induceDelayIFENodeDestroy</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
            <Name>Force to select user transition table</Name>
            <Help>
                Force to select user transition table by specifying user transition table Id
                By default (0xFFFFFFFF), the user transition table is selected by static policy manager.
            </Help>
            <VariableName>forceToSelectUserTransitionTable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.forceToSelectUserTransitionTable</SetpropKey>
            <DefaultValue>0xFFFFFFFF</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
      <setting>
         <Name>Enable SHDR Mode Algo Type</Name>
         <Help>
           Select between RAW and YUV SHDR
                   SHDRLibRAWAlgoLIMode2Frame                    = 1,
                   SHDRLibYUVAlgoVCMode2FrameGPUStats            = 2,
                   SHDRLibYUVAlgoVCMode2FrameCPUStats            = 3,
                   SHDRLibYUVAlgoLIMode3FrameGPUStats            = 4,
                   SHDRLibYUVAlgoVCMode3FrameGPUStats            = 5,
         </Help>
         <VariableName>shdrModeType</VariableName>
         <VariableType>UINT</VariableType>
         <SetpropKey>persist.vendor.camera.shdrModeType</SetpropKey>
         <DefaultValue>0</DefaultValue>
         <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>SHDR Width</Name>
        <Help>SHDR Width Output</Help>
        <VariableName>shdrWidth</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.shdrWidth</SetpropKey>
        <DefaultValue>3840</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>SHDR Height</Name>
        <Help>SHDR Height Output</Help>
        <VariableName>shdrHeight</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.shdrHeight</SetpropKey>
        <DefaultValue>2160</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="FD Settings">
        <setting>
            <Name>FD Processing Control</Name>
            <Help>Override to control FD processing,
                ForceDisable:   Force disable FD processing eventhough App requests for processing. Android tests will fail
                ForceEnable:    Force enbale FD processing eventhough App doesn't enable FD. Android tests still pass
                AutoEnable:     Enbale FD processing in auto control mode even though App doesn't request. Android tests still pass
                AppRequest:     Enable/Disable based on App request. Android tests pass
            </Help>
            <VariableName>FDProcessingControl</VariableName>
            <VariableType>FDProcessingControlType</VariableType>
            <SetpropKey>persist.vendor.camera.FDControl</SetpropKey>
            <DefaultValue>AutoEnable</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>FD HW Processing Control</Name>
          <Help>Disable FD HW processing in case of an FD HW node</Help>
          <VariableName>disableFDHWProcessing</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.disableFDHWProcessing</SetpropKey>
          <DefaultValue>FALSE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Ignore EVA TA loading in FD Secure case</Name>
          <Help>In secure usecase, if TA loading is failed return success.
                As FD is part of pipeline, for secure FD to work, need to copy EVA TA from vendor/firmware_mnt_image to
                vendor/firmware. If FD is off, there is need for OME's to follow these steps, but TA loading will fail.
                So ignore TA loading status and return Success. EPR will take care of actual error handling.
          </Help>
          <VariableName>ignoreEVATAloadingForSecureCase</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.ignoreEVATAloadingForSecureCase</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>FD Manager Enable Threading</Name>
            <Help>Enable/Disable FD Manager threading</Help>
            <VariableName>enableFDManagerThreading</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableFDManagerThreading</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>FD base resolution</Name>
            <Help>
                Select one of the following base resolutions
                640x480,
                854x480,
                320x240,
                427x240,
                384x288
            </Help>
            <VariableName>FDBaseResolution</VariableName>
            <VariableType>FDBaseResolutionType</VariableType>
            <SetpropKey>persist.vendor.camera.FDBaseResolution</SetpropKey>
            <DefaultValue>640x480</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>FD CAMIF map from sensor</Name>
            <Help>
                  Use CAMIF map from sensor for FD face ROI translation
                  TRUE  - Yes
                  FALSE - No
            </Help>
            <VariableName>FDUseCAMIFMapFromSensor</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.FDUseCAMIFMapFromSensor</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>FD Config source</Name>
            <Help>Override to control source for FD configuration,
                Default:   Default config populated by driver
                VendorTag: Config fetched from vendor tag
                Binary:    Config fetched from tuning binary
            </Help>
            <VariableName>FDConfigSource</VariableName>
            <VariableType>FDConfigSourceType</VariableType>
            <SetpropKey>persist.vendor.camera.FDConfigSource</SetpropKey>
            <DefaultValue>Binary</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD Config preview binary file name</Name>
            <Help>Binary file for FD preview configuration</Help>
            <VariableName>FDConfigPreviewBin</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.FDConfigPreviewBin</SetpropKey>
            <DefaultValue>fdconfigpreview.bin</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD Config video binary file name</Name>
            <Help>Binary bin file for FD video configuration</Help>
            <VariableName>FDConfigVideoBin</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.FDConfigVideoBin</SetpropKey>
            <DefaultValue>fdconfigvideo.bin</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD Config secure mode binary file name</Name>
            <Help>Binary file for FD secure mode configuration</Help>
            <VariableName>FDConfigSecureBin</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.FDConfigSecureBin</SetpropKey>
            <DefaultValue>fdconfigsecure.bin</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Whether to enable dynamic FD configuration</Name>
            <Help>Dynamic FD configuration
                  TRUE  - Enable
                  FALSE - Disable
            </Help>
            <VariableName>enableDynamicFDConfig</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableDynamicFDConfig</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>Facial Landmark solution</Name>
            <Help>Override to control source for FD FL
                EVAFL: EVA HW landmark based solution
                DLFL:  DL landmark based Solution
            </Help>
            <VariableName>FDFLSolution</VariableName>
            <VariableType>FDFLType</VariableType>
            <SetpropKey>persist.vendor.camera.FDFLSolution</SetpropKey>
            <DefaultValue>DLFL</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD face contour 115-point configuration file</Name>
            <Help>Binary configuration file of point indices for 115-point DLFL face contour</Help>
            <VariableName>CamXFL115Indices</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.CamXFL115Indices</SetpropKey>
            <DefaultValue>camxfl115indices.bin</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD face contour 300-point v1 configuration file</Name>
            <Help>Binary configuration file of point indices for 300-point v1 DLFL face contour</Help>
            <VariableName>CamXFL300v1Indices</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.CamXFL300v1Indices</SetpropKey>
            <DefaultValue>camxfl300v1indices.bin</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD face contour 300-point v2 configuration file</Name>
            <Help>Binary configuration file of point indices for 300-point v2 DLFL face contour</Help>
            <VariableName>CamXFL300v2Indices</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.CamXFL300v2Indices</SetpropKey>
            <DefaultValue>camxfl300v2indices.bin</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD face contour custom configuration file</Name>
            <Help>Binary configuration file of point indices for custom DLFL face contour</Help>
            <VariableName>FLCustomContourPointBin</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.FLCustomContourPointBin</SetpropKey>
            <DefaultValue>camxflcustom300indices.bin</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD Multi Cam Processing type</Name>
            <Help>Criteria to select which camera to run when both running,
                ProcessMasterOnly: Process only master requests at full fps
                ProcessAuxOnly:    Process only aux requests at full fps
                ProcessBoth:       Process both master and aux at half fps
            </Help>
            <VariableName>FDMultiCamProcess</VariableName>
            <VariableType>FDMultiCamProcessingType</VariableType>
            <SetpropKey>persist.vendor.camera.FDMultiCamProcess</SetpropKey>
            <DefaultValue>ProcessBoth</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Whether to use FPS based or alternate frame skip</Name>
            <Help>FD frame skip</Help>
            <VariableName>useAlternateFrameSkip</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.useAlternateFrameSkip</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Whether to use device orienation for FD improvement</Name>
            <Help>Use device orienation to improve FD</Help>
            <VariableName>useDeviceOrientationInFD</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.useDeviceOrientationInFD</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Whether to get accelerometer info from vendor tag</Name>
            <Help>Get Accelerometer info using vendor tag</Help>
            <VariableName>getAccelInfoUsingVendorTag</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.getAccelInfoUsingVendorTag</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Vendor Tag section for Accelerometer information</Name>
            <Help>Vendor tag to read accelerometer information</Help>
            <VariableName>accelVendorTagSection</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.accelVendorTagSection</SetpropKey>
            <DefaultValue>none</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Vendor Tag name for Accelerometer information</Name>
            <Help>Vendor tag to read accelerometer information</Help>
            <VariableName>accelVendorTagName</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.accelVendorTagName</SetpropKey>
            <DefaultValue>accelerometerValues</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD Client Type source</Name>
            <Help>Override to control FD client type
                FDHWHybrid        : Use HW Hybrid FD as client type
                FDSWOnly          : Use SW FD only as client type
                FDDLDSP           : Use DL FD as client type
                FDDLCPU           : Use FD DL as client type, CPU based
                FDUsecaseDependent: Use HW EVA FD or SW DL FD as FD client type based on usecase
            </Help>
            <VariableName>FDClient</VariableName>
            <VariableType>FDClientType</VariableType>
            <SetpropKey>persist.vendor.camera.FDClientType</SetpropKey>
            <DefaultValue>FDDLDSP</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Disable Posting FD results</Name>
            <Help>Enable/Disable posting FD results to metadata, property</Help>
            <VariableName>disablePostingResults</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.disableFDPostResults</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable Offline processing of FD</Name>
            <Help>Enable/Disable offline FD processing</Help>
            <VariableName>enableOfflineFD</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableOfflineFD</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>ENABLE MLINFERENCE</Name>
            <Help>Enable/Disable MLInference</Help>
            <VariableName>enableMLInference</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableMLInference</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Optimize Result Metadata</Name>
            <Help>Enable/Disable framework metadata optimization</Help>
            <VariableName>MetadataVisibility</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.metadatavisibility</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Use Different tuning for front camera for FD processing</Name>
            <Help>Enable/Disable different tuning for front camera for processing</Help>
            <VariableName>useDifferentTuningForFrontCamera</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.useDifferentTuningForFrontCamera</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Use Internal buffers for FD processing</Name>
            <Help>Enable/Disable using internal buffers and copy frames for processing</Help>
            <VariableName>useFDInternalBuffers</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.useFDInternalBuffers</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Use UseCase Pool for FD data</Name>
            <Help>Use UseCase Pool for FD data</Help>
            <VariableName>useFDUseCasePool</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.useFDUseCasePool</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Fast FD Metadata</Name>
            <Help>Determine when the FD metadata is returned
                  TRUE  - Return metadata after IFE completes hw submission
                  FALSE - Defer to the point when buffers return for the request
            </Help>
            <VariableName>fastFDMetadata</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.fastFDMetadata</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
          <Name>Minimum req id for FD dependency</Name>
          <Help>Can't set dependency on for FD on req id lesser than 5</Help>
          <VariableName>minReqFdDependency</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>persist.vendor.camera.minReqFdDependency</SetpropKey>
          <DefaultValue>3</DefaultValue>
          <Dynamic>FALSE</Dynamic>
          <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Whether to enable dumping of FD input frames </Name>
            <Help>Control FD input images dump
                  TRUE  - Enable FD frame dumping, when FDInputDumpControlTrigger is TRUE begin to dump
                  FALSE - Disable
            </Help>
            <VariableName>FDInputDumpControl</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.FDInputDumpControl</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Dynamic FD images dump trigger </Name>
            <Help>If FDInputDumpControl == TRUE, FD input images would be dumped when this property
                  is set to TRUE
            </Help>
            <VariableName>FDInputDumpControlTrigger</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.FDInputDumpControlTrigger</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Whether to enable early BitMl skel loading </Name>
            <Help>Early BitmL skel loading
                  TRUE  - Enable early skel loading
                  FALSE - Disable
            </Help>
            <VariableName>enableEarlyBitMLSkelLoad</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.enableEarlyBitMLSkelLoad</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Whether to enable dynamic inputport disablement for FD</Name>
            <Help>Dynamic input port disablement
                  TRUE  - Enable dynamic input port
                  FALSE - Disable
            </Help>
            <VariableName>enableFDDynamicInputPortDisable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.enableFDDynamicInputPortDisable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Switch of App UI facial attribute settings</Name>
            <Help>Whether to accept App UI settings of facial atttibutes detection or not
                  Valid only when FD is enabled
                  TRUE  - Accept App UI settings
                  FALSE - Ignore App UI settings
            </Help>
            <VariableName>acceptAppUIFacialAttrSettings</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.acceptAppUIFacialAttrSettings</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Switch of face mask detection</Name>
            <Help>Enable/Disable face mask detection
                  Valid only when FD are enabled
                  TRUE  - Enable face mask detection. This is to enable FD Engine
                          post-processing and result-publishing to internal pool.
                          App needs to set a session parameter in addition to the
                          static setting to enable result-publishing to vendor tag and access the results.
                  FALSE - Disable face mask detection.
                          All-zero results would be published to internal pool, and no results to vendor tag.
            </Help>
            <VariableName>enableMaskDetection</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.enableMaskDetection</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Switch of upper body detection</Name>
            <Help>Enable/Disable upper body detection
                  Valid only when FD are enabled
                  TRUE  - Enable upper body detection. This is to enable FD Engine
                          post-processing and result-publishing to internal pool.
                          App needs to set a session parameter in addition to the
                          static setting to enable result-publishing to vendor tag and access the results.
                  FALSE - Disable upper body detection.
                          All-zero results would be published to internal pool, and no results to vendor tag.
            </Help>
            <VariableName>enableUpperBodyDetection</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.enableUpperBodyDetection</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Switch of gaze and blink detection</Name>
            <Help>Enable/Disable gaze and blink detection
                  Valid only when FD and facial parts detection are enabled
                  TRUE  - Enable gaze and blink detection
                  FALSE - Disable
            </Help>
            <VariableName>enableGBDetection</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.enableGBDetection</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Switch of facial contour detection</Name>
            <Help>Enable/Disable facial contour detection (AKA dense landmark)
                  Valid only when FD and facial parts detection are enabled
                  TRUE  - Enable facial contour detection
                  FALSE - Disable
            </Help>
            <VariableName>enableCTDetection</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.enableCTDetection</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Switch of facial expression detection</Name>
            <Help>Enable/Disable facial expression detection
                  Valid only when FD is enabled
                  TRUE  - Enable facial expression detection
                  FALSE - Disable
            </Help>
            <VariableName>enableExpressionDetection</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.enableExpressionDetection</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Switch of face Gender detection</Name>
            <Help>Enable/Disable face Gender detection
                  Valid only when FD is enabled
                  TRUE  - Enable facial Gender detection
                  FALSE - Disable
            </Help>
            <VariableName>enableGenderDetection</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.vendor.camera.enableGenderDetection</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>FD min face size setting</Name>
            <Help>Override FD min face size setting in FD configuration
                MinFaceSizeNone:  Use min face size setting in FD configuration
                MinFaceSize20x20: Set min face size to 20x20
                MinFaceSize25x25: Set min face size to 25x25
                MinFaceSize32x32: Set min face size to 32x32
                MinFaceSize40x40: Set min face size to 40x40
            </Help>
            <VariableName>FDMinFaceSize</VariableName>
            <VariableType>FDMinFaceSizeSetting</VariableType>
            <SetpropKey>persist.vendor.camera.FDMinFaceSize</SetpropKey>
            <DefaultValue>MinFaceSizeNone</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>FD max frame rate setting</Name>
            <Help>Override FD max frame rate setting in FD configuration
                NoForce:       Use max frame rate setting in FD configuration
                Force15FPS:    Force 15FPS max frame rate
                Force30FPS:    Force 30FPS max frame rate
            </Help>
            <VariableName>FDMaxFPS</VariableName>
            <VariableType>FDMaxFPSSetting</VariableType>
            <SetpropKey>persist.vendor.camera.FDMaxFPS</SetpropKey>
            <DefaultValue>NoForce</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable FD Specific Tone Mapping</Name>
            <Help>Set tuning type feature1 to FDProcess if enabled
                TRUE:   Read tuning with feature1 = FDProcess
                FALSE:  Fallback to the default tuning type
            </Help>
            <VariableName>enableFDSpecificToneMapping</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableFDSpecificToneMapping</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Disable dynamic FPS control for FD</Name>
            <Help>Override the FD configuration to disable dynamic FPS control
                TRUE:   Disables the tracker with dynamic FPS control and enables the fallback tracker
                FALSE:  Fallbacks to the default configuration setting
            </Help>
            <VariableName>disableDynamicFPSControl</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.disableDynamicFPSControl</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable publish projected FD Results</Name>
            <Help>Override FD frame skip logic
                TRUE:   Enable publish projected results
                FALSE:  Disable publish projected results
            </Help>
            <VariableName>enablePublishProjectedFDResults</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enablePublishProjectedFDResults</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="SWHME Settings">
        <setting>
            <Name>Enable SWHME</Name>
            <Help>Enable SWHME for image transform. 0 for FALSE, 1 for TRUE</Help>
            <VariableName>enableSwHME</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.enableSwHME</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable DSP SWHME</Name>
            <Help>Enable DSP based SWHME for image transform. 0 for FALSE, 1 for TRUE</Help>
            <VariableName>enableDSPSwHME</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.enableDSPSwHME</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="SWCAC Settings">
        <setting>
            <Name>Enable CAC4.0</Name>
            <Help>Enable CAC version 4.0 feature
                FALSE: Disable cac4 and call cac3
                TRUE : Enable cac4
            </Help>
            <VariableName>enableSwCacVersion4</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableSwCacVersion4</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Enable CAC BloomFilter</Name>
            <Help>Enable CAC with BloomFilter
                FALSE: Disable bloomfilter
                TRUE : Enable bloomfilter
            </Help>
            <VariableName>enableSwCacBloomFilter</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableSwCacBloomFilter</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Quad CFA Settings">
        <setting>
            <Name>Enable swcac</Name>
            <Help>Enable swcac feature
                FALSE: swcac  Disable
                TRUE : swcac  Enable
            </Help>
            <VariableName>enableSwCac</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableSwCac</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Quad CFA Settings">
        <setting>
            <Name>AEC Gain Threshold for Quad CFA Feature</Name>
            <Help>AEC Gain Threshold for Quad CFA Feature</Help>
            <VariableName>AECGainThresholdForQCFA</VariableName>
            <VariableType>FLOAT</VariableType>
            <DefaultValue>5.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>remosaicType</Name>
            <Help>
                -1 = UnKnown
                0  = SW Remosaic
                1  = HW Remosaic
                2  = No/SFE Remosaic
            </Help>
            <VariableName>remosaicType</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>vendor.debug.camera.remosaicType</SetpropKey>
            <DefaultValue>-1</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Number Of Pixels Per Color when Force Enable Debug Mode XCFA with SW Remosaic</Name>
            <Help>
                Force Enable XCFA and SW Remosaic in Sensor Capability for Debug/Test purposes only
                0  = NOT SW Remosaic
                4  = 2x2 Patten SW Remosaic
                9  = 3x3 patten SW Remosaic
                16 = 4x4 Patten SW Remosaic
            </Help>
            <VariableName>forceNumberOfPixelsPerColorForXCFASWRemosaic</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.forceNumberOfPixelsPerColorForXCFASWRemosaic</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force to override the settings for instant zoom</Name>
            <Help>
                Force to override the settings for instant zoom
            </Help>
            <VariableName>forceToOverrideSettingsForInstantZoom</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.forceToOverrideSettingsForInstantZoom</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
            <Name>Max optimization variation for instant zoom</Name>
            <Help>
                Max optimization variation for instant zoom
            </Help>
            <VariableName>maxOptimizationVariationForInstantZoom</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.maxOptimizationVariationForInstantZoom</SetpropKey>
            <DefaultValue>2</DefaultValue>
            <Dynamic>0</Dynamic>
        </setting>
        <setting>
            <Name>Rule to apply RealTime zoom ratio</Name>
            <Help>
                The zoom ratio from realtime request is considered applicable iff
                such zoom ratio apply to image produced by:
                0 = any of the active camera
                1 = all of the active camera
                2 = realtime master camera
            </Help>
            <VariableName>ruleToApplyRealTimeZoomRatio</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.ruleToApplyRealTimeZoomRatio</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Flash Settings">
        <setting>
            <Name>Flash control</Name>
            <Help>Disables Flash</Help>
            <VariableName>disableFlash</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.disableFlash</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Torch Led Currents</Name>
            <Help>Torch Led Currents. This will be used in torch mode</Help>
            <VariableName>torchCurrent</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>vendor.debug.camera.torchCurrent</SetpropKey>
            <DefaultValue>150</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Flush Settings">
        <setting>
            <Name>Default Node Response Time </Name>
            <Help>
              The time a node needs to process a request in Milliseconds. Used when taking the maximum time a pipeline is
              expected to be done.
            </Help>
            <VariableName>nodeResponseTime</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.nodeFlushResponseTime</SetpropKey>
            <DefaultValue>5</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Session Response Padding Time </Name>
            <Help>
              The padding time in milliseconds added to the maximum time reported by pipelines. Used by flush to let pipelines
              have some room to inject results and do other processing besides the request processing.
            </Help>
            <VariableName>sessionResponseTimePadding</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.sessionResponseTimePadding</SetpropKey>
            <DefaultValue>50</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>Max Flush Wait Time</Name>
          <Help>
            The maximum amount of time flush should wait for regardless of what the maximum node reported is.
          </Help>
          <VariableName>sessionMaxFlushWaitTime</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.sessionMaxFlushWaitTime</SetpropKey>
          <DefaultValue>500</DefaultValue>
          <Dynamic>FALSE</Dynamic>
          <Public>TRUE</Public>
        </setting>
        <setting>
          <Name>Flush Fallback Wait Time</Name>
          <Help>
            The time flush will wait after it has timed out (Do not factor this in with max flush wait time).
          </Help>
          <VariableName>sessionFallbackWaitTime</VariableName>
          <VariableType>UINT</VariableType>
          <SetpropKey>vendor.debug.camera.sessionFallbackWaitTime</SetpropKey>
          <DefaultValue>100</DefaultValue>
          <Dynamic>FALSE</Dynamic>
          <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Tuning feature1 setting">
        <setting>
            <Name>feature1</Name>
            <Help>
                set tuning feature1
                None            = 0,
                ISPHDR          = 1,
                ADRC            = 2,
                InSensorHDR3Exp = 3
            </Help>
            <VariableName>feature1</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.feature1</SetpropKey>
            <DefaultValue>2</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Tuning feature2 setting">
        <setting>
            <Name>feature2</Name>
            <Help>
                set tuning feature2
                None           = 0,
                OISCapture     = 1,
                HLG            = 2,
                HDR10          = 3,
                MFNRBlend      = 4,
                MFNRPostFilter = 5,
                MFSRBlend      = 6,
                MFSRPostFilter = 7
            </Help>
            <VariableName>feature2</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.feature2</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Raise sigabrt during error">
        <setting>
            <Name>RaiseSigabrt</Name>
            <Help>Raise sigabrt for debug builds to track critical failures</Help>
            <VariableName>raisesigabrt</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.raisesigabrt</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
     <settingsSubGroup Name="Enable Chi Recovery">
        <setting>
            <Name>EnableChiRecovery</Name>
            <Help>Trigger Chi Recovery for any incomplete URO in CHI</Help>
            <VariableName>enablechirecovery</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enablerecovery</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Enable HW Binary">
        <setting>
            <Name>EnableHwBinary</Name>
            <Help>Enable Hardware Binary framework</Help>
            <VariableName>enableHwBinary</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableHWBinary</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Enable HW Binary Dump">
        <setting>
            <Name>EnableHwBinaryDump</Name>
            <Help>Enable Hardware Binary framework data dump</Help>
            <VariableName>enableHwBinaryDump</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableHWBinaryDump</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Disable MMF">
        <setting>
            <Name>DisableMMF</Name>
            <Help>Override setting to disable MMF</Help>
            <VariableName>disableMMF</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.disableMMF</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="VideoRetouch settings">
        <setting>
            <Name>EnableVideoRetouch</Name>
            <Help>This setting is used to force enable video retouch</Help>
            <VariableName>enableVideoRetouch</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableVideoRetouch</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="EIS Settings">
        <setting>
            <Name>Enable EIS for all physical streams</Name>
            <Help>Enable EIS
                FALSE: Disable EIS
                TRUE:  Enable EIS
            </Help>
            <VariableName>enableEISAllPhysicalStream</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableEISAllPhysicalStream</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Is warping on post IPE</Name>
            <Help>Is warping on post IPE</Help>
            <VariableName>isWarpOnPostIPE</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.isWarpOnPostIPE</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Raise sigabrt during recovery">
        <setting>
            <Name>RaiseRecoverySigabrt</Name>
            <Help>Raise recovery sigabrt for debug builds to track critical failures</Help>
            <VariableName>raiserecoverysigabrt</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.raiserecoverysigabrt</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
        <setting>
          <Name>EnableSignal35Tombstone</Name>
          <Help>Enable Signal 35 Tombstone without process crash for Callstacks</Help>
          <VariableName>enableSignal35Tombstone</VariableName>
          <VariableType>BOOL</VariableType>
          <SetpropKey>persist.vendor.camera.enableSignal35Tombstone</SetpropKey>
          <DefaultValue>TRUE</DefaultValue>
          <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Selective recovery">
        <setting>
            <Name>SelectiveRecovery</Name>
            <Help>Enable Selective Pipeline/Session/Feature Recovery</Help>
            <VariableName>enableSelectiveRecovery</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableSelectiveRecovery</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="FD Segment settings">
        <setting>
            <Name>DisableFDSegment</Name>
            <Help>This setting is used to force disable FD Segment</Help>
            <VariableName>disableFDSegment</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.disableFDSegment</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
  <settingsSubGroup Name="Offline Logger parameter">
      <setting>
        <Name>EnableAsciiLogging</Name>
        <Help>
            Set offline ASCII Logging
            Disable = 0,
            Enable  = 1
            Note: The setting is independent from binary logger setting.
                  It does not effect binary logging
        </Help>
        <VariableName>enableAsciiLogging</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.enableAsciiLogging</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>EnableBinaryLog</Name>
        <Help>
            Set offline binary Logging.
            Disable = 0,
            Enable  = 1
            Note: The setting is independent from ASCII logging setting.
                  It does not effect ASCII logging.
        </Help>
        <VariableName>enableBinaryLogging</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.enableBinaryLogging</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>OfflineLoggerMinFlushCnt</Name>
        <Help>Offline Log minium flush count</Help>
        <VariableName>offlineLoggerMinFlushCnt</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.offlineLoggerMinFlushCnt</SetpropKey>
        <DefaultValue>50</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>offlineLoggerMaxAllLogSize</Name>
        <Help>Offline Log maximum total log size</Help>
        <VariableName>offlineLoggerMaxAllLogSize</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.offlineLoggerMaxAllLogSize</SetpropKey>
        <DefaultValue>2600</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>offlineLoggerEnableBackupCrashLog</Name>
        <Help>
            Store a copy of backup log in other folder while crash event happened.
            Suggest enable for stress test.
            Disable = 0,
            Enable  = 1
        </Help>
        <VariableName>offlineLoggerEnableBackupLog</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.offlineLoggerEnableBackupLog</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
       <setting>
        <Name>EnableCoredumpOfflineTextLogging</Name>
        <Help>
            Set offline Coredump text Logging
            Disable = 0,
            Enable  = 1
            Note: The setting is independent from coredump binary logger setting.
                  It does not effect coredump binary logging
        </Help>
        <VariableName>enableCoredumpOfflineTextLogging</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.enableCoredumpOfflineTextLogging</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>EnableCoredumpOfflineBinaryLogging</Name>
        <Help>
            Set offline Coredump binary Logging
            Disable = 0,
            Enable  = 1
            Note: The setting is independent from coredump text logger setting.
                  It does not effect coredump text logging
        </Help>
        <VariableName>enableCoredumpOfflineBinaryLogging</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.enableCoredumpOfflineBinaryLogging</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>offlineLoggerBackupFileNumber</Name>
        <Help>
            How many recently modify files need
            to be backed-up whenever crash event happens
        </Help>
        <VariableName>offlineLoggerBackupFileNumber</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.offlineLoggerBackupFileNumber</SetpropKey>
        <DefaultValue>200</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>offlineLoggerMinimumBackupSizeRequire</Name>
        <Help>
            Minimum requirement of device storage (MB)
            for backed-up the log file whenever crash event happens
        </Help>
        <VariableName>offlineLoggerMinBackupRequire</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.offlineLoggerMinBackupRequire</SetpropKey>
        <DefaultValue>3000</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>offlineLoggerEnableDebugDump</Name>
        <Help>
            Dump self debug information to file.
            Disable = 0,
            Enable  = 1
        </Help>
        <VariableName>offlineLoggerEnableDebugDump</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.offlineLoggerEnableDebugDump</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="Error Inducer framework enable parameter">
      <setting>
        <Name>EnableErrorInducerFramework</Name>
        <Help>
          Enable error inducement framework
          Note: This flag is mandatory to enable error inducement framework at CAMX
                or CHI feature2 level using overridesettings or vendor tags.
        </Help>
        <VariableName>enableErrorInducerFramework</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableErrorInducerFramework</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="Contingency Inducer parameter">
      <setting>
        <Name>InducerErrorType</Name>
        <Help>
          Error Type need to be triggered by inducer
          0: None
          1: Fence Error
          2: Fence Drop
          3: Metadata Error
          4: SBM Error
          5: Request Error
          6: System Event
        </Help>
        <VariableName>inducerErrorType</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.inducerErrorType</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerKMDEventType</Name>
        <Help>
          KMD Event Type need to be triggered by inducer
          0: None
          1: V4L2_EVENT - CRM Error
          2: SYNC_EVENT - Sync/Fence Error
        </Help>
        <VariableName>inducerKMDEventType</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.inducerKMDEventType</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerKMDErrorType</Name>
        <Help>
          KMD Error Type need to be triggered by inducer
          Error Type sample values :
          CAM_REQ_MGR_ERROR_TYPE_RECOVERY           - 3
          CAM_REQ_MGR_ERROR_TYPE_SOF_FREEZE         - 4
          CAM_REQ_MGR_ERROR_TYPE_FULL_RECOVERY      - 5
          CAM_REQ_MGR_RETRY_EVENT                   - 1
          CAM_SYNC_STATE_SIGNALED_ERROR             - 3, etc
        </Help>
        <VariableName>inducerKMDErrorType</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.inducerKMDErrorType</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerKMDErrorCode</Name>
        <Help>
          KMD ErrorCode of specific ErrorType need to be induced
          Sample values of ErrorCode specific to ErrorType
          CAM_REQ_MGR_CSID_FIFO_OVERFLOW_ERROR      - 4
          CAM_REQ_MGR_ISP_UNREPORTED_ERROR          - 0
          CAM_REQ_MGR_CSID_FATAL_ERROR              - 2
          CAM_REQ_MGR_JPEG_THUBNAIL_SIZE_ERROR      - 1
          CAM_SYNC_ICP_EVENT_FRAME_PROCESS_FAILURE  - 103, etc
        </Help>
        <VariableName>inducerKMDErrorCode</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.inducerKMDErrorCode</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerRequestId</Name>
        <Help>For this reqId will trigger inducer</Help>
        <VariableName>inducerRequestId</VariableName>
        <VariableType>UINT64</VariableType>
        <SetpropKey>persist.vendor.camera.inducerRequestId</SetpropKey>
        <DefaultValue>100</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerPipelineName</Name>
        <Help>
          Which pipeline need to be trigger by inducer
          Note: PipelineName is optional. If pipeline name is not provided,
                it will induce error for all piplines in that request
        </Help>
        <VariableName>inducerPipelineName</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerPipelineName</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerNodeName</Name>
        <Help>
          Which node need to be trigger by inducer. For Metadata and request
          errors we can skip this setting as they are induced at pipeline level.
          The string format for node name will be "Nodename + InstanceId"
          For example : "IPE2"
          Note: NodeName is optional. If node name is not provided, it will
                induce error for all nodes in the pipeline.
        </Help>
        <VariableName>inducerNodeName</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerNodeName</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerPortId</Name>
        <Help>
          Which port need to be trigger by inducer. For Metadata and request
          errors we can skip this setting as they are induced at pipeline level.
          Note: PortId is optional. If portId is not provided, it will induce
                error for all output ports in the node.
        </Help>
        <VariableName>inducerPortId</VariableName>
        <VariableType>INT</VariableType>
        <SetpropKey>persist.vendor.camera.inducerPortId</SetpropKey>
        <DefaultValue>-1</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerSystemEventErrorCodes</Name>
        <Help>Inducer will trigger for these error codes. Each error code is associated with node/pipeline/session/requestId
            positionally, i.e:
            CamxResultEInducedErrorBase1(1st error code), CamxResultEInducedErrorBase6(2nd error code)
            1st session, 2nd session
            1st node, 2nd Node
            ...
            Note: Error Code takes precedence over request id (over session/pipeline/node)
        </Help>
        <VariableName>inducerSystemEventErrorCodes</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerSystemEventErrorCodes</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerSystemEventRequestId</Name>
        <Help>For this reqId will trigger inducer</Help>
        <VariableName>inducerSystemEventRequestId</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerSystemEventRequestId</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>inducerSystemEventSessionName</Name>
        <Help>
          The session needed to be trigger by inducer
        </Help>
        <VariableName>inducerSystemEventSessionName</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerSystemEventSessionName</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerSystemEventPipelineName</Name>
        <Help>
          Which pipeline need to be trigger by inducer
        </Help>
        <VariableName>inducerSystemEventPipelineName</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerSystemEventPipelineName</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerSystemEventNodeName</Name>
        <Help>
          Which node need to be trigger by inducer. For Metadata and request
          errors we can skip this setting as they are induced at pipeline level.
          The string format for node name will be "Nodename + InstanceId"
          For example : "IPE2"
          Note: NodeName is optional. If node name is not provided, it will
                induce error for all nodes in the pipeline.
        </Help>
        <VariableName>inducerSystemEventNodeName</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerSystemEventNodeName</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerSystemEventPortId</Name>
        <Help>
          Which port need to be trigger by inducer.
          Note: PortId is optional. If portId is not provided, it will induce
                error for all output ports in the node.
        </Help>
        <VariableName>inducerSystemEventPortId</VariableName>
        <VariableType>INT</VariableType>
        <SetpropKey>persist.vendor.camera.inducerSystemEventPortId</SetpropKey>
        <DefaultValue>-1</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
  <settingsSubGroup Name="Feature2 Contingency Inducer parameter">
      <setting>
        <Name>InduceFeature2ErrorType</Name>
        <Help>
        Error Type need to be triggered by inducer
        0: None
        1: Buffer error
        2: Metadata error
        3: Request error
        </Help>
        <VariableName>induceFeature2ErrorType</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.induceFeature2ErrorType</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerFeature2RequestId</Name>
        <Help>For this reqId will trigger inducer</Help>
        <VariableName>inducerFeature2RequestId</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.inducerFeature2RequestId</SetpropKey>
        <DefaultValue>50</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerFeatureGraphName</Name>
        <Help>
          Which Feature Graph need to be trigger by inducer
          Note: FeatureGraphName is optional. If graph name is not provided, then
                it will induce error in the selected graph for that requestId.
        </Help>
        <VariableName>inducerFeatureGraphName</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerFeatureGraphName</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerFeatureName</Name>
        <Help>
          Which Feature need to be trigger by inducer
          Note: FeatureName is optional. If feature name is not provided, then it
                will induce error in all the features of that requestId.
        </Help>
        <VariableName>inducerFeatureName</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerFeatureName</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerFROProcessSeqId</Name>
        <Help>
          Which FRO process sequence Id need to be trigger by inducer
          Note: Process SeqId is optional. If sequence id is not provided, then it
                will induce error for all the process seqId.
        </Help>
        <VariableName>inducerFROProcessSeqId</VariableName>
        <VariableType>INT</VariableType>
        <SetpropKey>persist.vendor.camera.inducerFROProcessSeqId</SetpropKey>
        <DefaultValue>-1</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>InducerFeaturePortName</Name>
        <Help>
          Which Feature Port need to be trigger by inducer. This settings is only
          valid for buffer error and we can skip this for metadata and request errors.
          Note: Port name is optional. If port name is not provided, then it will induce
                error for all the output ports.
        </Help>
        <VariableName>inducerFeaturePortName</VariableName>
        <VariableType>String</VariableType>
        <SetpropKey>persist.vendor.camera.inducerFeaturePortName</SetpropKey>
        <DefaultValue />
        <Dynamic>TRUE</Dynamic>
      </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="Session dump to log if in error state">
      <setting>
        <Name>SessionDumpForFlush</Name>
        <Help>Dumps session info if in error state at Flush</Help>
        <VariableName>sessionDumpForFlush</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.SessionDumpForFlush</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
  <settingsSubGroup Name="Camera core dump in binary format">
      <setting>
        <Name>enableCameraCoreDumpBinary</Name>
        <Help>Flag to enable entire camera core dump to binary file</Help>
        <VariableName>enableCameraCoreDumpBinary</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableCameraCoreDumpBinary</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Camera core dump in text format">
      <setting>
        <Name>enableCameraCoreDumpText</Name>
        <Help>Flag to enable entire camera core dump to text file</Help>
        <VariableName>enableCameraCoreDumpText</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableCameraCoreDumpText</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Camera session dump in text format">
      <setting>
        <Name>enableCameraSessionDump</Name>
        <Help>Flag to enable camera session dump</Help>
        <VariableName>enableCameraSessionDump</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableCameraSessionDump</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Camera core dump for commercial release">
      <setting>
        <Name>overrideCameraCoreDumpLogging</Name>
        <Help>Flag to disable entire camera core dump</Help>
        <VariableName>overrideCameraCoreDumpLogging</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.overrideCameraCoreDumpLogging</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Camera framework core dump">
      <setting>
        <Name>Enable framework dump</Name>
        <Help>Enable/Disable framework core dump</Help>
        <VariableName>enableFwkDump</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableFwkDump</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
        <Public>TRUE</Public>
      </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Dump node processing info">
      <setting>
        <Name>DumpNodeProcessingInfo</Name>
        <Help>Dumps basic stats about node processing time to logcat</Help>
        <VariableName>dumpNodeProcessingInfo</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.dumpNodeProcessingInfo</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
  <settingsSubGroup Name="Dump session processing info">
    <setting>
      <Name>DumpSessionProcessingInfo</Name>
      <Help>Dumps basic stats about session request processing time to logcat</Help>
      <VariableName>dumpSessionProcessingInfo</VariableName>
      <VariableType>BOOL</VariableType>
      <SetpropKey>persist.vendor.camera.dumpSessionProcessingInfo</SetpropKey>
      <DefaultValue>FALSE</DefaultValue>
      <Dynamic>TRUE</Dynamic>
    </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="Camera core dump recycle">
      <setting>
        <Name>enableCameraCoreDumpRecycle</Name>
        <Help>Flag to enable camera core dump recycle</Help>
        <VariableName>enableCameraCoreDumpRecycle</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableCameraCoreDumpRecycle</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>numCameraCoreDumpReserved</Name>
        <Help>The number of core dump reserved after recycling</Help>
        <VariableName>numCameraCoreDumpReserved</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.numCameraCoreDumpReserved</SetpropKey>
        <DefaultValue>3</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>maxNumCameraCoreDump</Name>
        <Help>Max number of camera core dump that system can have </Help>
        <VariableName>maxNumCameraCoreDump</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.maxNumCameraCoreDump</SetpropKey>
        <DefaultValue>8</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Camera offlinelog recycle">
      <setting>
        <Name>enableCameraOfflinelogRecycle</Name>
        <Help>Flag to enable camera offlinelog recycle</Help>
        <VariableName>enableCameraOfflinelogRecycle</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableCameraOfflinelogRecycle</SetpropKey>
        <DefaultValue>TRUE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>numCameraOfflinelogReserved</Name>
        <Help>The number of offlinelog reserved after recycling</Help>
        <VariableName>numCameraOfflinelogReserved</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.numCameraOfflinelogReserved</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>sizeTrigOfflinelogRecycling</Name>
        <Help>File system size (MB) less than this number will trigger camera offlinelog recycling </Help>
        <VariableName>sizeTrigOfflinelogRecycling</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.sizeTrigOfflinelogRecycling</SetpropKey>
        <DefaultValue>10000</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
  <settingsSubGroup Name="Health Monitor setting">
    <setting>
      <Name>Enable health monitor service</Name>
      <Help>Enable the monitoring of jobs in camX and CHI</Help>
      <VariableName>enableHealthMonitor</VariableName>
      <VariableType>BOOL</VariableType>
      <SetpropKey>persist.vendor.camera.enableHealthMonitor</SetpropKey>
      <DefaultValue>TRUE</DefaultValue>
      <Dynamic>TRUE</Dynamic>
    </setting>
    <setting>
      <Name>Health Monitor thread time interval</Name>
      <Help>The time interval (in milliseconds) of HMS thread that wakes up
            periodically to perform certain tasks</Help>
      <VariableName>HMSTimeInterval</VariableName>
      <VariableType>UINT</VariableType>
      <SetpropKey>persist.vendor.camera.HMSTimeInterval</SetpropKey>
      <DefaultValue>100</DefaultValue>
      <Dynamic>FALSE</Dynamic>
    </setting>
    <setting>
      <Name>Health Monitor max delayed count to trigger system event </Name>
      <Help>Health Monitor max delayed count if a particular job failed
            count is equal to max delayed count system event
            will be triggered</Help>
      <VariableName>HMSMaxDelayedJobCount</VariableName>
      <VariableType>UINT</VariableType>
      <SetpropKey>persist.vendor.camera.HMSMaxDelayedJobCount</SetpropKey>
      <DefaultValue>3</DefaultValue>
      <Dynamic>FALSE</Dynamic>
    </setting>
    <setting>
      <Name>Health Monitor SystemEvent delay count factor </Name>
      <Help>Count factor for system event error path</Help>
      <VariableName>HMSSystemEventDelayCountFactor</VariableName>
      <VariableType>UINT</VariableType>
      <SetpropKey>persist.vendor.camera.HMSSystemEventDelayCountFactor</SetpropKey>
      <DefaultValue>2</DefaultValue>
      <Dynamic>FALSE</Dynamic>
    </setting>
    <setting>
      <Name>Health Monitor  to monitor non core auxiliary jobs</Name>
      <Help>Enable HMSJobClient to monitor non core auxiliary jobs</Help>
      <VariableName>HMSEnableAuxJobMonitoring</VariableName>
      <VariableType>BOOL</VariableType>
      <SetpropKey>persist.vendor.camera.HMSEnableAuxJobMonitoring</SetpropKey>
      <DefaultValue>FALSE</DefaultValue>
      <Dynamic>FALSE</Dynamic>
    </setting>
  </settingsSubGroup>
    <settingsSubGroup Name="Thread Settings">
        <setting>
            <Name>Number Of CHI Threads</Name>
            <Help>Allows to configure the number of CHI Threads to be used</Help>
            <VariableName>numberOfCHIThreads</VariableName>
            <VariableType>UINT</VariableType>
            <DefaultValue>6</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Number Of Aux Thread Mgr Threads</Name>
            <Help>Allows to configure the number of aux thread mgr threads to be used</Help>
            <VariableName>numberOfAuxThreadMgrThreads</VariableName>
            <VariableType>UINT</VariableType>
            <DefaultValue>5</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Unit Test Settings">
        <setting>
            <Name>UseVFETPG</Name>
            <Help>Use VFE_TPG: Valid for presil test modes (CSIM against RUMI)</Help>
            <VariableName>useVFETPG</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>debug.camera.unitTestUseVFETPG</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>IFE Buf-done timeout</Name>
            <Help>IFE Buf-done fence wait timeout in millisecond</Help>
            <VariableName>IFEBufDoneTimeout</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>debug.camera.IFEBufDoneTimeout</SetpropKey>
            <DefaultValue>500000</DefaultValue>
            <MinimumValue>10</MinimumValue>
            <MaximumValue>1000000</MaximumValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>IFE input width</Name>
            <Help>IFE input width in pixel</Help>
            <VariableName>IFEInputWidth</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>debug.camera.IFEInputWidth</SetpropKey>
            <DefaultValue>640</DefaultValue>
            <MinimumValue>128</MinimumValue>
            <MaximumValue>10000</MaximumValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>IFE input height</Name>
            <Help>IFE input height in pixel</Help>
            <VariableName>IFEInputHeight</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>debug.camera.IFEInputHeight</SetpropKey>
            <DefaultValue>480</DefaultValue>
            <MinimumValue>128</MinimumValue>
            <MaximumValue>10000</MaximumValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>IPE Buf-done timeout</Name>
            <Help>IPE Buf-done fence wait timeout in millisecond</Help>
            <VariableName>IPEBufDoneTimeout</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>debug.camera.IPEBufDoneTimeout</SetpropKey>
            <DefaultValue>80000</DefaultValue>
            <MinimumValue>10</MinimumValue>
            <MaximumValue>1000000</MaximumValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>IPE number of iteration for Unit test bypassing IQ blocks</Name>
            <Help>A setting to IPE IQ bypass unit test to specify number of iterations to run.</Help>
            <VariableName>IPEUnitTestIQBypassNumOfIteration</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>debug.camera.IPEUnitTestIQBypassNumOfIteration</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <MinimumValue>0</MinimumValue>
            <MaximumValue>50</MaximumValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Memory Manager">
        <setting>
            <Name>Enable/Disable late binding of buffer to ImageBuffer holder</Name>
            <Help>Wheter to enable late bind of memory/buffers to ImageBuffer</Help>
            <VariableName>enableImageBufferLateBinding</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.mpmenablelatebinding</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Use Mem Pool Manager for Memory allocations</Name>
            <Help>Whether to use Memory Pool Manager for image buffer allocations</Help>
            <VariableName>MPMEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.mpmenable</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Validate Mem Pool Group in list</Name>
            <Help>Verifies whether input MemPoolGroup handle exists in the list</Help>
            <VariableName>MPMValidateMemPoolGroup</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.mpmvalidatempg</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Do not group Buffer Managers</Name>
            <Help>Each Buffer manager will have its own group, no sharing of buffers among Buffer Managers</Help>
            <VariableName>MPMDoNotGroupBufferManagers</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.mpmdonotgroupbm</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Minimum number of Buffers to have in Free list always</Name>
            <Help>These many buffer will always be there in free list of a specific group</Help>
            <VariableName>MPMKeepMinNumFreeBuffers</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmminnumfreebuffers</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Allocate buffers on Buffer Manager Register</Name>
            <Help>Allocates buffers at the time of register</Help>
            <VariableName>MPMAllocateBuffersOnRegister</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.mpmallocatebuffersonregister</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Group Buffer managers with exact device match</Name>
            <Help>
                Share buffers among Buffer Managers having exact list of devices to map.
                Valid only if MPMDoNotGroupBufferManagers is FALSE
                If Grouping and MPMGroupIfExactDeviceMatch is enabled : Buffer managers will share buffers only if
                    the Buffer Managers needs buffers that needs to be mapped to exact same devices.
                If Grouping is enabled and MPMGroupIfExactDeviceMatch is disabled : Device list is not considered to
                    decide whether Buffer Managers can share buffers. Buffers will be mapped to all devices that are
                    required by both the Buffer Managers.
            </Help>
            <VariableName>MPMGroupIfExactDeviceMatch</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.mpmgroupifexactdevicematch</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Min Buffer size in bytes for sharing</Name>
            <Help>Buffer Managers with size less than this value will have dedicated groups, i.e no sharing</Help>
            <VariableName>MPMMinSizeForSharing</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmminsizeforsharing</SetpropKey>
            <DefaultValue>4096</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Max size (in bytes) difference allowed while matching buffer managers' required size</Name>
            <Help>
                Buffer Managers are attached to same Group if buffer size difference (in bytes) is within
                this range
            </Help>
            <VariableName>MPMSizeDiffAllowedToGroup</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmsizedifftogroup</SetpropKey>
            <DefaultValue>4096</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Threshold of buffer (in bytes) to override MPMSizeDiffAllowedToGroup to have different grouping rule</Name>
            <Help>
                Groups above this defined size will use MPMSizeDiffAllowedToGroupOverride to define difference
                allowed when matching buffer managers' required size
            </Help>
            <VariableName>MPMLargeGroupSizeDefinition</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmlargegroupsizedef</SetpropKey>
            <DefaultValue>15000000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Max override size (in bytes) difference allowed while matching buffer managers' required size</Name>
            <Help>
                This byte range is used when a group size is larger than the defined large group size
                (MPMLargeGroupSizeDefinition) to determine if buffer managers should have a different group
            </Help>
            <VariableName>MPMSizeDiffAllowedToGroupOverride</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmsizedifftogroupoverride</SetpropKey>
            <DefaultValue>4000000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Buffer address alignment</Name>
            <Help>Address alignment with which all buffers are allocated, valid only for CSL allocations</Help>
            <VariableName>MPMBufferAddressAlignment</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmaddressalign</SetpropKey>
            <DefaultValue>4096</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force CHI Buffer Managers to use one of the buffer heaps</Name>
            <Help>
                Force to use CHI Buffer Managers to use a specified heap if bufferHeap field is not explicitly set
                in CHIBufferManagerCreateData.
                0 - System
                1 - Ion
                2 - DSP
                3 - EGL (Gralloc)
            </Help>
            <VariableName>forceCHIBufferManagerHeap</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.forcechibmheap</SetpropKey>
            <DefaultValue>1</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Self tune immediate count</Name>
            <Help>
                When enabled, immediate count configured in Buffer Manager create data is ignored and self tuned
                based on different link properties (node type, real time/offline pipeline, etc)
            </Help>
            <VariableName>MPMSelfTuneImmediateCount</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.MPMSelfTuneImmediateCount</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable/Disable MPM monitor thread</Name>
            <Help>Whether to enable Memory Pool Manager monitor thread</Help>
            <VariableName>enableMPMMonitorThread</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enablempmmonitorthread</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>MPM monitor thread time interval</Name>
            <Help>
                The time interval (in milliseconds) of MPM monitor thread that wakes up
                periodically to perform certain tasks
            </Help>
            <VariableName>MPMMonitorTimeInterval</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmmonitortimeinterval</SetpropKey>
            <DefaultValue>1000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>MPM monitor thread self-shrinking buffer size limit</Name>
            <Help>
                The advantages we get with self shrinking on small buffers may be less than the costs of allocating
                those buffers again when needed. Hence MPM monitor thread won't free up idle buffers of sizes less
                than this pre-defined size in bytes.
            </Help>
            <VariableName>MPMMonitorSelfShrinkSizeLimit</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmmonitorselfshrinksizelimit</SetpropKey>
            <DefaultValue>524288</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable/Disable MPM state logging</Name>
            <Help>
                Whether to enable more debug logging printing state of Buffers, Buffer Managers, Groups
                at different stages of their lifecycle.
            </Help>
            <VariableName>enableMPMStatelogging</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableMPMStatelogging</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable Memory statistics profiling</Name>
            <Help>When enabled, memory statistics are tracked and printed for CmdBuffers, Memory Pool Manager</Help>
            <VariableName>enableMemoryStats</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableMemoryStats</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Minimum buffer size to free immediately on deactivate</Name>
            <Help>
                If the buffer size in the current group is more than this threshold, we free the buffers
                immediately on Deactivate, keeping max 1 buffer in free list for any immediate usage.
                Current value 50MB
            </Help>
            <VariableName>MPMMinSizeToFreeOnDeactivate</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmminsizetofreeondeactivate</SetpropKey>
            <DefaultValue>52428800</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Validate ImageBuffer state for client usage</Name>
            <Help>Check whether ImageBuffer object is in a state where clients can access it legally</Help>
            <VariableName>validateImageBufferUsageState</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.validateImageBufferUsageState</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Size Threshold to disable Delayed Unmap feature</Name>
            <Help>
                Disable Delayed Unamp feature while mapping to SMMU for buffers of size more than this threshold.
                Current threshold is 35MB
            </Help>
            <VariableName>MPMSizeThresToDisableDelayedUnmap</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmsizethrestodisabledelayedunmap</SetpropKey>
            <DefaultValue>36700160</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Force Disable Delayed Unmap optimization</Name>
            <Help>
                Disable Delayed Unamp feature while mapping to SMMU for all buffers
            </Help>
            <VariableName>MPMForceDisableDelayedUnmap</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.mpmforcedisabledelayedunmap</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Size Threshold to delay mapping of Gralloc buffer</Name>
            <Help>
                Size threshold above which a gralloc buffer may be delayed to be mapped to smmu.
                Delay mapping depends on few other condition apart from size threshold.
                Default value of 35MB allows upto 4K resolution buffers to be mapped immediately (not delayed map)
            </Help>
            <VariableName>MPMSizeThresToDelayedMap</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.mpmsizethrestodisabledelayedunmap</SetpropKey>
            <DefaultValue>36700160</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Maximum Dedicated Memory for camera ImageBuffers</Name>
            <Help>
                The maximum dedicated memory for camera ImageBuffers is configured in bytes. It is used to release the peak
                memory usage from mempool group free list.this setting can be tune/configure by customer through checking
                different usecase which one has max peak usage.if maxDedicatedCameraMemory set to 0,it means disable release
                free list buffer.
            </Help>
            <VariableName>maxDedicatedCameraMemory</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.maxdedicatedcameramemory</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Size Threshold to use chi Gralloc buffer</Name>
            <Help>
                If RDI resolution more than this threshold,then use chi gralloc interface to alloc buffer.
                Current threshold is 48Mpixels
            </Help>
            <VariableName>sizeThresToUseChiGrallocBuffer</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.sizethrestousechigrallocbuffer</SetpropKey>
            <DefaultValue>48000000</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Flag to enable BufferManager Activity</Name>
            <Help>
                When enabled, IdleTime thread goes through all groups and all Buffer Managers in it and checks
                whether BufferManager is regularly doing GetBufferFromPool and ReleaseBufferToPool. This helps in
                identifying such BufferManagers who did Get and holding the buffers with themseleves. Mostly
                helpful in identifying CHI BufferManagers who are holding buffers in CHI or TBM.
            </Help>
            <VariableName>MPMCheckActivity</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.mpmcheckactivity</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Dump AF output to logs</Name>
            <Help>
              Mask info:
              dump AF Stats: 0x1
              dump AF Info:  0x2
              dump AF HWPD Config: 0x4
              dump Stats, Info and HWPD config: 0x7
              dump depthAF data: 0x8
              dump CAFStatsConfig data: 0x10
            </Help>
            <VariableName>dumpAF</VariableName>
            <VariableType>UINT</VariableType>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Dump AEC output to logs</Name>
            <Help>
              Mask info:
              dump AEC Stats: 0x1
              dump AEC Info:  0x2
              dump AEC HAL Data: 0x4
              dump Stats, Info and HAL Data: 0x7
            </Help>
            <VariableName>dumpAEC</VariableName>
            <VariableType>UINT</VariableType>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
        </setting>
        <setting>
            <Name>Dump AWB output to logs</Name>
            <Help>
              Mask info:
              dump AWB Stats: 0x1
              dump AWB Info:  0x2
              dump AWB HAL Data: 0x4
              dump Stats, Info and HAL Data: 0x7
            </Help>
            <VariableName>dumpAWB</VariableName>
            <VariableType>UINT</VariableType>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
            <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Dump AFD row sum stats to bin</Name>
        <Help>
          If flag is enabled then row sum stats will be dumped into mobile device.
          To enable/disable dump, use below flag values.
          TRUE:  Enable dump
          FALSE: Disable dump
        </Help>
        <VariableName>dumpAFDRowsum</VariableName>
        <VariableType>BOOL</VariableType>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
        <Public>TRUE</Public>
      </setting>
      <setting>
        <Name>Enable/Disable QLL</Name>
        <Help>Enable/disable QLL(low light) algo processing</Help>
        <VariableName>enableQLLProcessing</VariableName>
        <VariableType>BOOL</VariableType>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable/Disable ForceQLL</Name>
        <Help>Enable/disable force QLL(low light) algo processing</Help>
        <VariableName>forceQLLTriggered</VariableName>
        <VariableType>BOOL</VariableType>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>BypassQLLMLProcess</Name>
        <Help>Bypass/Pass QLL ML process</Help>
        <VariableName>BypassQLLMLProcess</VariableName>
        <VariableType>BOOL</VariableType>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable/Disable OTP</Name>
        <Help>Enable/disable OTP Data
              Disable OTP for feature BET
        </Help>
        <VariableName>FeatureBETMode</VariableName>
        <VariableType>BOOL</VariableType>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Dump QLL Library Logs</Name>
        <Help>
            Mask info:
            dump QLL Input: 0x1
            dump QLL Output: 0x2
            dump QLL TFI Input: 0x4
            Dump All: 0x7
        </Help>
        <VariableName>dumpQLLLogsMask</VariableName>
        <VariableType>UINT</VariableType>
        <DefaultValue>0x0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable Multicamera hard transitions</Name>
        <Help>Enable/Disable Multicamera hard transition</Help>
        <VariableName>enableMCXHardTransition</VariableName>
        <VariableType>BOOL</VariableType>
        <SetpropKey>persist.vendor.camera.enableMCXHardTransition</SetpropKey>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>FALSE</Dynamic>
      </setting>
      <setting>
        <Name>Enable HDR10+ Library Logs</Name>
        <Help>Enable/Disable HDR10+ Library Logs</Help>
        <VariableName>enableHDR10PlibLogs</VariableName>
        <VariableType>BOOL</VariableType>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Dump HDR10+ Chi Logs</Name>
        <Help>
            Mask info:
            Dump to file or log: 0th bit
            Dump stats     : 1st bit
            Dump i/p to lib: 2nd bit
            Dump SEI       : 3rd bit
            Dump output repeatation: 4t to 12th bit(1= repeat every frame, 2= alternate frame etc)
        </Help>
        <VariableName>dumpHDR10pLogsMask</VariableName>
        <VariableType>UINT</VariableType>
        <DefaultValue>0x0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Dump AFC data to bin</Name>
        <Help>
          If flag is enabled then data needed for AFC will be dumped into mobile device.
          To enable/disable dump, use below flag values.
          TRUE:  Enable dump
          FALSE: Disable dump
        </Help>
        <VariableName>dumpAFCData</VariableName>
        <VariableType>BOOL</VariableType>
        <DefaultValue>FALSE</DefaultValue>
        <Dynamic>TRUE</Dynamic>
        <Public>TRUE</Public>
      </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="Profile 3A setting">
        <setting>
            <Name>profile3A</Name>
            <Help>
              Bit mask for profiling
              Bit       0: AEC module (Range- 0:Disable,1:Enable)
              Bit       1: AWB module (Range- 0:Disable,1:Enable)
              Bit       2: AFD module (Range- 0:Disable,1:Enable)
              Bit       3: ASD module (Range- 0:Disable,1:Enable)
              Bit       4: AF module  (Range- 0:Disable,1:Enable)
              Bit       5: PDLIB module (Range- 0:Disable,1:Enable)
              Bit      24: Camera ID based profiling (Range- 0:Disable,1:Enable)
              Bit 25 - 28: Camera ID (Range- 0-15)
              Bit      31: Time/Trace (Range- 0:Time,1:Trace)
              To enable multiple modules, set corresponding bits.
            </Help>
            <VariableName>profile3A</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>vendor.debug.camera.profile3A</SetpropKey>
            <DefaultValue>0x0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>TRUE</Public>
        </setting>
  </settingsSubGroup>
    <settingsSubGroup Name="AIDenoiser Settings">
        <setting>
            <Name>Lux Index Threshold for SWMF+AIDenoiser Feature</Name>
            <Help>Lux Index Threshold for SWMF+AIDenoiser Feature</Help>
            <VariableName>luxIndexThresholdForAIDenoiser</VariableName>
            <SetpropKey>persist.vendor.camera.luxIndexThresholdForAIDenoiser</SetpropKey>
            <VariableType>FLOAT</VariableType>
            <DefaultValue>320.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>ADRC Gain Threshold for SWMF+AIDenoiser Feature</Name>
            <Help>ADRC Gain Threshold for SWMF+AIDenoiser Feature</Help>
            <VariableName>ADRCGainThresholdForAIDenoiser</VariableName>
            <SetpropKey>persist.vendor.camera.ADRCGainThresholdForAIDenoiser</SetpropKey>
            <VariableType>FLOAT</VariableType>
            <DefaultValue>1.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Tracker Settings">
        <setting>
            <Name>Tracker ROI Mixer Setting</Name>
            <Help>Tracker ROI Mixer Setting :
            0x00 : Debug Disable
            0x01 : enable Debug log
            0x02 : enable Debug Dump
            </Help>
            <VariableName>trackerRoiMixer</VariableName>
            <SetpropKey>persist.vendor.camera.trackerRoiMixer</SetpropKey>
            <VariableType>UINT</VariableType>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Bayer2YUV-CDS Settings">
        <setting>
            <Name>AEC Gain Threshold for Bayer2YUV+CDS Feature</Name>
            <Help>AEC Gain Threshold for Bayer2YUV+CDS Feature</Help>
            <VariableName>aecGainThresholdForCDS</VariableName>
            <SetpropKey>persist.vendor.camera.aecGainThresholdForCDS</SetpropKey>
            <VariableType>FLOAT</VariableType>
            
            
            <DefaultValue>16777215.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
  <settingsSubGroup Name="video dynamic fps">
        <setting>
            <Name>minimum FPS change interval</Name>
            <Help>
              The minimal frame interval between fps change. 0 means disable.
              This value should be adjusted according to the requirement from video encoder.
            </Help>
            <VariableName>fpsChangeInterval</VariableName>
            <SetpropKey>persist.vendor.camera.fpsChangeInterval</SetpropKey>
            <VariableType>UINT</VariableType>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>maximal stats calculation frame rate</Name>
            <Help>
              The maximal frame rate that stats/3A could run.
            </Help>
            <VariableName>maxStatsFps</VariableName>
            <SetpropKey>persist.vendor.camera.maxStatsFps</SetpropKey>
            <VariableType>FLOAT</VariableType>
            <DefaultValue>30.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="Bayer2YUV-SWPDPC settings">
        <setting>
            <Name>PDPC node enable for PDAF sensor</Name>
            <Help>PDPC node enable for PDAF sensor</Help>
            <VariableName>enableSWPDPC</VariableName>
            <SetpropKey>persist.vendor.camera.enableSWPDPC</SetpropKey>
            <VariableType>BOOL</VariableType>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="Bayer2YUV-Shading-correction settings">
        <setting>
            <Name>Enable stats in B2Y</Name>
            <Help>Enable stats in B2Y</Help>
            <VariableName>enableShadingCorrection</VariableName>
            <SetpropKey>persist.vendor.camera.enableShadingCorrection</SetpropKey>
            <VariableType>BOOL</VariableType>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="QC Companion sensor settings">
          <setting>
            <Name>Enable if sensor is companion chip</Name>
            <Help>Enable if sensor is companion chip</Help>
            <VariableName>QCCompanionSensor</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.QCCompanionSensor</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="insensor SHDR support">
          <setting>
            <Name>Enable if sensor supports insensor SHDR</Name>
            <Help>Enable if sensor supports insensor SHDR</Help>
            <VariableName>inSensorSHDRMode</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.inSensorSHDRMode</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="UHDR support">
        <setting>
            <Name>Enable Pipeline Splitting</Name>
            <Help>Enables Pipeline Split in Session</Help>
            <VariableName>enablePipelineSplit</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.enablePipelineSplit</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
  </settingsSubGroup>
  <settingsSubGroup Name="AON camera Usecase support">
        <setting>
            <Name>Enable always on camera usecase</Name>
            <Help>Enable/Disable always on camera usecase and functionality</Help>
            <VariableName>enableAONUsecase</VariableName>
            <SetpropKey>persist.vendor.camera.enableAONUsecase</SetpropKey>
            <VariableType>BOOL</VariableType>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Always on camera control release delay</Name>
            <Help>Delay milliseconds before sending control release message to AON FW</Help>
            <VariableName>aonControlReleaseDelay</VariableName>
            <SetpropKey>persist.vendor.camera.aonControlReleaseDelay</SetpropKey>
            <VariableType>UINT</VariableType>
            <DefaultValue>200</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable HDR Max Resolution Check</Name>
            <Help>Enable/Disable HDR Max Resolution Check</Help>
            <VariableName>enableHDRMaxResolutionCheck</VariableName>
            <SetpropKey>persist.vendor.camera.enableHDRMaxResolutionCheck</SetpropKey>
            <VariableType>BOOL</VariableType>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>Enable AON AEC warm start-up</Name>
            <Help>Enable/Disable AON AEC warm start-up</Help>
            <VariableName>enableAONAECWarmStartUp</VariableName>
            <SetpropKey>persist.vendor.camera.enableAONAECWarmStartUp</SetpropKey>
            <VariableType>BOOL</VariableType>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Testing Settings">
        <setting>
            <Name>EnableSnapshotAEBTesting</Name>
            <Help>A setting to allow testing of Snapshot AEB</Help>
            <VariableName>enableSnapshotAEBTesting</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableSnapshotAEBTesting</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="NonHDR AEB Snapshot Testing Settings">
        <setting>
            <Name>EnableNonHDRAEBSnapshot</Name>
            <Help>A setting to allow testing of NonHDR Snapshot AEB</Help>
            <VariableName>enableNonHDRAEBSnapshot</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableNonHDRAEBSnapshot</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Single exposure AEB switching for nonMaster Cameras Settings">
        <setting>
            <Name>EnableSingleExposureAEBSwitchingForNonMasterCameras</Name>
            <Help>Single exposure applied for non-master AEB cameras when switching</Help>
            <VariableName>enableSingleExposureAEBSwitching</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enableSingleExposureAEBSwitching</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Preview Callback in Multi-Preivew Settings">
        <setting>
            <Name>EnablePreviewCBInMultiPreview</Name>
            <Help>A setting to link PreviewCB port to MCReprocRT</Help>
            <VariableName>enablePreviewCBInMultiPreview</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enablePreviewCBInMultiPreview</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Disable Stats Ports in 3A nodes">
        <setting>
            <Name>Disable Stats Ports Mask</Name>
            <Help>
                Mask Format: bitX.........bit1.bit0
                Each bit corresponds to ISPStatsType Enum defined in chiispstatsdefs.h
                To Disable a StatsType port from IFE to [AF, AWB, Stats, StatsParse] nodes
                make the bit 0. e.g. To disable ISPStatsTypeBF(value 1) mask is "01" in binary
                To disable ISPStatsTypeShortAECBHist(value 63) mask will be
                "0(followed by 62 '1's)"
            </Help>
            <VariableName>disableStatsPorts</VariableName>
            <VariableType>String</VariableType>
            <SetpropKey>persist.vendor.camera.disableStatsPorts</SetpropKey>
            <DefaultValue />
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="SHDR Settings">
        <setting>
            <Name>Enable 3exp SHDR Snapshot</Name>
            <Help>A setting to force 3exp SHDR snapshot</Help>
            <VariableName>enable3expSHDRSnapshot</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>vendor.debug.camera.enable3expSHDRSnapshot</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Node Retry Settings">
        <setting>
            <Name>JPEG Thumbnail Threshold</Name>
            <Help>JPEG Thumbnail Threshold Size in Bytes</Help>
            <VariableName>thumbnailThreshold</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.thumbnailThreshold</SetpropKey>
            <DefaultValue>64002</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
        <setting>
            <Name>JPEG Thumbnail Retry Enable</Name>
            <Help>JPEG Thumbnail Retry Enable</Help>
            <VariableName>enableThumbRetry</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableThumbRetry</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="ML AWB Snapshot Settings">
        <setting>
            <Name>Enable ML AWB Snapshot</Name>
            <Help>Picks Feature Graph with ML AWB feature for snapshot processing</Help>
            <VariableName>enableMLAWBSnapshot</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableMLAWBSnapshot</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Enable 4 Channel BHist">
        <setting>
            <Name>Enable 4 Channel BHist</Name>
            <Help>Enable Color Channel Toggling for AECBhist and GTMBhist</Help>
            <VariableName>enableGTMChannelToggle</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableGTMChannelToggle</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Internal Multiresolution Settings">
        <setting>
            <Name>Internal multiresolution mode</Name>
            <Help>
              Internal MR Mode
                  0: Disable
                  1: Logical to physical stream for YUV, RAW streams using one buffer
                  2: Logical to physical stream for XCFA streams
            </Help>
            <VariableName>internalMultiresolutionMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.internalMultiresolutionMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="NoRemosaic XCFA and Crop Settings">
        <setting>
            <Name>NoRemosaic XCFA and Crop setting</Name>
            <Help>
              NoRemosaic mode (Test purpose)
                  0: Disable
                  1: Force to enable NoRemosaic crop
                  2: Force to enable NoRemosaic XCFA snapshot
            </Help>
            <VariableName>noRemosaicCaptureMode</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.noRemosaicCaptureMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Enable ZSL Off for Aux settings">
        <setting>
            <Name>Enable ZSL Off for Aux</Name>
            <Help>Enable ZSL Off for Aux</Help>
            <VariableName>enabledMultiCameraZSLOffForAux</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enabledMultiCameraZSLOffForAux</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Is skip stats in NZSL snapshot settings">
        <setting>
            <Name>Is skip stats in ZSL snapshot</Name>
            <Help>Is skip stats in ZSL snapshot</Help>
            <VariableName>isSkipStatsNZSLSnapshot</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.isSkipStatsNZSLSnapshot</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="EIS Settings">
        <setting>
            <Name>EIS Width Margin</Name>
            <Help>Request margins in float on the width in percentage (Eg. 0.2 for 20%)</Help>
            <VariableName>EISWidthMargin</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>persist.vendor.camera.eisWidthMargin</SetpropKey>
            <DefaultValue>-1.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS Height Margin</Name>
            <Help>Request margins on the height in percentage (Eg. 0.1 for 10%)</Help>
            <VariableName>EISHeightMargin</VariableName>
            <VariableType>FLOAT</VariableType>
            <SetpropKey>persist.vendor.camera.eisHeightMargin</SetpropKey>
            <DefaultValue>-1.0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS Gyro Conf</Name>
            <Help>Gyro confidence override</Help>
            <VariableName>EISGyroConf</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.eisGyroConf</SetpropKey>
            <DefaultValue>256</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS LDC Grid Enabled</Name>
            <Help>Flag for LDC grid enable</Help>
            <VariableName>EISLDCGridEnabled</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisLDCGridEnabled</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Gyro Dump Enabled</Name>
            <Help>Flag to indicate if Gyro Dump enabled</Help>
            <VariableName>EISv2GyroDumpEnabled</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2GyroDumpEnabled</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Input Dump Logcat Enabled</Name>
            <Help>Flag to indicate if algorithm output to file is enabled</Help>
            <VariableName>EISv2InputDumpLogcatEnabled</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2InputDumpLogcatEnabled</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Output Dump Enabled</Name>
            <Help>Flag to indicate if algorithm output to file is enabled</Help>
            <VariableName>EISv2OutputDumpEnabled</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2OutputDumpEnabled</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Output Dump Logcat Enabled</Name>
            <Help>Flag to indicate if algorithm output to file is enabled</Help>
            <VariableName>EISv2OutputDumpLogcatEnabled</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2OutputDumpLogcatEnabled</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Default Grid Transform Enable</Name>
            <Help>Flag for default grid/transform</Help>
            <VariableName>EISv2OperationMode</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2OperationMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Operation Mode</Name>
            <Help>Calibration mode</Help>
            <VariableName>EISv2DefaultGridTransformEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2DefaultGridTransformEnable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Dump Force Flush</Name>
            <Help>Flag to indicate if node will be forced to call algorithm log flush API each iteration</Help>
            <VariableName>EISv2DumpForceFlush</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2DumpForceFlush</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS OIS Mode</Name>
            <Help>Override algorithm's ois_mode output. If 0 then doesn't override (uses algorithm's ois_mode).</Help>
            <VariableName>EISOISMode</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>persist.vendor.camera.eisOISMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Disable OIS</Name>
            <Help>Flag to disable OIS</Help>
            <VariableName>EISv2DisableOIS</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2DisableOIS</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Disable Mag</Name>
            <Help>Flag to disable Mag</Help>
            <VariableName>EISv2DisableMag</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2DisableMag</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Disable Accel</Name>
            <Help>Flag to disable Accel</Help>
            <VariableName>EISv2DisableAccel</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2DisableAccel</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 Disable Gravity</Name>
            <Help>Flag to disable Gravity</Help>
            <VariableName>EISv2DisableGravity</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2DisableGravity</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V2 iFOVC Enable</Name>
            <Help>Flag to indicate if iFOVC is</Help>
            <VariableName>EISv2iFOVCEnable</VariableName>
            <VariableType>UINT</VariableType>
            <SetpropKey>persist.vendor.camera.eisv2iFOVCEnable</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>FD Enable In EIS</Name>
            <Help>Flag to indicate if iFOVC is</Help>
            <VariableName>FDEnableInEIS</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.fdEnableInEIS</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Gyro Dump Enabled</Name>
            <Help>Flag to indicate if Gyro Dump enabled</Help>
            <VariableName>EISv3GyroDumpEnabled</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3GyroDumpEnabled</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Input Dump Logcat Enabled</Name>
            <Help>Flag to indicate if algorithm output to file is enabled</Help>
            <VariableName>EISv3InputDumpLogcatEnabled</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3InputDumpLogcatEnabled</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Output Dump Enabled</Name>
            <Help>Flag to indicate if algorithm output to file is enabled</Help>
            <VariableName>EISv3OutputDumpEnabled</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3OutputDumpEnabled</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Output Dump Logcat Enabled</Name>
            <Help>Flag to indicate if algorithm output to file is enabled</Help>
            <VariableName>EISv3OutputDumpLogcatEnabled</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3OutputDumpLogcatEnabled</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Operation Mode</Name>
            <Help>Calibration mode</Help>
            <VariableName>EISv3OperationMode</VariableName>
            <VariableType>INT</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3OperationMode</SetpropKey>
            <DefaultValue>0</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Default Grid Transform Enable</Name>
            <Help>Flag for default grid/transform</Help>
            <VariableName>EISv3DefaultGridTransformEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3DefaultGridTransformEnable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Dump Force Flush</Name>
            <Help>Flag to indicate if node will be forced to call algorithm log flush API each iteration</Help>
            <VariableName>EISv3DumpForceFlush</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3DumpForceFlush</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Disable DIS</Name>
            <Help>Flag to disable DIS</Help>
            <VariableName>EISv3DisableDIS</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3DisableDIS</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>Disable MOF Alignment</Name>
            <Help>Flag indicating MOF alignement disabled</Help>
            <VariableName>disableMOFAlignment</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.disableMOFAlignment</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Disable OIS</Name>
            <Help>Flag to disable OIS</Help>
            <VariableName>EISv3DisableOIS</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3DisableOIS</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Disable Mag</Name>
            <Help>Flag to disable Mag</Help>
            <VariableName>EISv3DisableMag</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3DisableMag</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Disable Accel</Name>
            <Help>Flag to disable Accel</Help>
            <VariableName>EISv3DisableAccel</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3DisableAccel</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 Disable Gravity</Name>
            <Help>Flag to disable Gravity</Help>
            <VariableName>EISv3DisableGravity</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3DisableGravity</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>Enable Legacy Stop Recording</Name>
            <Help>Flag to indicate if Legacy stop recording is enabled.</Help>
            <VariableName>enableLegacyStopRecording</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableLegacyStopRecording</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>EIS V3 iFOVC Enable</Name>
            <Help>Flag to indicate if iFOVC is</Help>
            <VariableName>EISv3iFOVCEnable</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.eisv3iFOVCEnable</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>Enable Distortion Corr Optimization</Name>
            <Help>Enable Distortion correction optimization</Help>
            <VariableName>EnableDistortionCorrOptimization</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableDistortionCorrOptimization</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>Enable FCG Module</Name>
            <Help>Enable Flicker Gain Correction IQ Module</Help>
            <VariableName>enableFCG</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableFCG</SetpropKey>
            <DefaultValue>TRUE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
        <setting>
            <Name>DisableSR</Name>
            <Help>Disable SR scaling</Help>
            <VariableName>disableSR</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.disableSR</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
            <Public>FALSE</Public>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="CSL Hw Capability Settings">
      <setting>
        <Name>CSL Hw Capability No Camera Mode Type</Name>
        <Help>
          Specify the scenario in which no camera mode should be exercised
          0: None
          1: No Camera Present: camera is not present from camera enumeration
          2: Camera Present: camera is present but internal hw does not meet the
             requirement for partial or limited camera
        </Help>
        <VariableName>noCameraMode</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.noCameraMode</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>CSL Hw Capability Partial Camera Mode Type</Name>
        <Help>
          Specify the scenario in which partial camera mode should be exercised
          0: None
          1: Lesser IFE: reduce the number of IFE to be within the threshold to stream camera
          2: Lesser SFE: reduce the number of SFE to be within the threshold to stream camera
          3: Lesser IFE and SFE: reduce the number of IFE and SFE to be within the threshold to stream camera
        </Help>
        <VariableName>partialCameraMode</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.partialCameraMode</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>CSL Hw Capability Limited Camera Mode Type</Name>
        <Help>
          Specify the scenario in which limited camera mode should be exercised
          0: None
          1: No EVA: Mark EVA not present in external camera hw
          2: No GPU: Mark GPU not present in external camera hw
          3: No NPU: Mark NPU not present in external camera hw
          4: No External Camera HW: Mark EVA/GPU/NPU as not present in external camera hw
          5: No External Camera Hw Plus Lesser IFE: Mark EVA/GPU/NP as not present in external camera hw
             and reduce the number of IFE to be within the threshold to stream camera
          6: No External Camera Hw Plus Lesser SFE: Mark EVA/GPU/NP as not present in external camera hw
             and reduce the number of SFE to be within the threshold to stream camera
          7: No External Camera Hw Plus Lesser IFE and SFE: Mark EVA/GPU/NP as not present in external camera hw
             and reduce the number of IFE and SFE to be within the threshold to stream camera
        </Help>
        <VariableName>limitedCameraMode</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.limitedCameraMode</SetpropKey>
        <DefaultValue>0</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
      <setting>
        <Name>Enable CSL Hw Capability Detection</Name>
        <Help>
            This setting toggles the CSL Hw Capability detection feature on and off.
            This feature is and should remain enabled by default, but scenarios where
            it should be considered in disabling include test platforms which are
            hardware independent.
        </Help>
        <VariableName>enableCSLHwCapabilityDetection</VariableName>
        <VariableType>UINT</VariableType>
        <SetpropKey>persist.vendor.camera.enableCSLHwCapabilityDetection</SetpropKey>
        <DefaultValue>1</DefaultValue>
        <Dynamic>TRUE</Dynamic>
      </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="SWMLRemosaic settings">
        <setting>
            <Name>EnableSWMLRemosaic</Name>
            <Help>This setting is used to force enable SWMLRemosaic</Help>
            <VariableName>enableSWMLRemosaic</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableSWMLRemosaic</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>TRUE</Dynamic>
        </setting>
    </settingsSubGroup>
    <settingsSubGroup Name="Broadcast settings">
        <setting>
            <Name>Broadcast enable</Name>
            <Help>Enable broadcast functionality</Help>
            <VariableName>enableBroadcast</VariableName>
            <VariableType>BOOL</VariableType>
            <SetpropKey>persist.vendor.camera.enableBroadcast</SetpropKey>
            <DefaultValue>FALSE</DefaultValue>
            <Dynamic>FALSE</Dynamic>
        </setting>
    </settingsSubGroup>
</settingsGroup>