<?xml version="1.0" encoding="UTF-8"?>
<!--
===============================================================================

  Copyright (c) 2013-2017 Qualcomm Technologies, Inc.
  All Rights Reserved.
  Confidential and Proprietary - Qualcomm Technologies, Inc.

===============================================================================
-->

<tns:secimage xmlns:tns="http://www.qualcomm.com/secimage"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.qualcomm.com/secimage ../xsd/secimage.xsd">

    <metadata>
        <chipset>default</chipset>
        <version>2.0</version>
    </metadata>

    <!--
       See documentation on general_properties below.
    -->
    <general_properties>
        <selected_signer>local_v2</selected_signer>
        <selected_encryptor>unified_encryption_2_0</selected_encryptor>
        <selected_cert_config>qti_presigned_certs</selected_cert_config>

        <key_size>2048</key_size>
        <exponent>65537</exponent>

        <mrc_index>0</mrc_index>
        <num_root_certs>1</num_root_certs>
        <max_num_root_certs>1</max_num_root_certs>

        <msm_part>0x00000000</msm_part>
        <soc_hw_version>0x30000000</soc_hw_version>
        <soc_vers>0x3000</soc_vers>
        <in_use_soc_hw_version>0</in_use_soc_hw_version>
        <oem_id>0x0000</oem_id>
        <model_id>0x0000</model_id>
        <debug>0x1</debug>

        <secboot_version>3.0</secboot_version>
        <qti_sign>false</qti_sign>
        <oem_sign>true</oem_sign>

        <max_cert_size>2048</max_cert_size>
        <num_certs_in_certchain>3</num_certs_in_certchain>

        <hmac>false</hmac>
        <rsa_padding>pss</rsa_padding>
        <segment_hash_algorithm>sha384</segment_hash_algorithm>
    </general_properties>

    <!--
        ***general_properties***

        The default properties for all images. These properties may be overridden
        per image in the 'images' section below as needed.

        Supported signer are:
        local: use local signer with test keys

        Supported encryptor are:
        ssd_encryption: legacy encryption for OTA, supports MBN and ELF images.
        unified_encryption_2_0: supports ELF images. Image must be signed to encrypt

        msm_part: jtag_id for signing. (in hex)
        oem_id: oem_id for signing. (in hex)
        model_id: model_id for signing. (in hex)
        debug: debug_id for signing. (in hex)
        exponent: exponent value used in attestation key generation.

        max_cert_size: Maximum size (in bytes) of one certificate.
        key_size: Size (in bits) of the key used for signing.
        num_certs_in_certchain: Number of certificates in the certificate chain.
        num_root_certs: Number of root certificates in the certificate chain.
    -->

    <parsegen>
        <image_types_list>
            <image_type id='elf_wrapped_mbn'>
                <!-- Type of file format -->
                <file_type>ewm</file_type>

                <ewm_properties>
                    <image_entry>0x01200000</image_entry>
                    <relocatable>false</relocatable>
                </ewm_properties>

                <elf_properties>
                    <has_hash_table>false</has_hash_table>
                    <image_type>0</image_type>
                </elf_properties>

                <mbn_properties>
                    <header_size>80</header_size>
                </mbn_properties>

            </image_type>
        </image_types_list>
    </parsegen>

    <!-- Signing configurations used by secimage. -->
    <signing>
        <signer_attributes>
            <!--
                Use of CASS signer will require additional license agreement
                and contract. Hardware token is required for access.
            -->
            <cass_signer_attributes>
                <!--
                    keystore_type: PKCS11 (hardware token)
                    token_password: User will be prompted if password
                                    is an empty string
                    token_driver_home: Safenet driver location
                -->
                <user_identity>
                    <keystore_type>PKCS11</keystore_type>
                    <token_password></token_password>
                    <token_driver_home>
                        <windows>C:/WINDOWS/SYSTEM32/eTpkcs11.dll</windows>
                        <linux>/usr/lib/libeTPkcs11.so</linux>
                    </token_driver_home>
                </user_identity>
            </cass_signer_attributes>
        </signer_attributes>
    </signing>

    <post_process>
        <pil_splitter>$(META_BUILD)/common/tools/misc/pil-splitter.py</pil_splitter>
    </post_process>

    <data_provisioning>
        <base_path>./../../resources/data_prov_assets/</base_path>
    </data_provisioning>

    <images_list>
        <image sign_id="sbl1" name="sbl1.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000000</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <debug>0x0000000000000000</debug>
            </general_properties_overrides>
        </image>

        <image sign_id="sbl1_mbn" name="sbl1.mbn" image_type="mbn_80b">
            <general_properties_overrides>
                <sw_id>0x0000000000000000</sw_id>
            </general_properties_overrides>
        </image>

        <image sign_id="sbl1_nand" name="sbl1.mbn" image_type="elf_preamble">
            <general_properties_overrides>
                <sw_id>0x00000000</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="sbl1_nand_hash_128b_align" name="sbl1.mbn" image_type="elf_preamble_end_128b_aligned">
            <general_properties_overrides>
                <sw_id>0x00000000</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="sbl1_hash_64b_align" name="sbl1.mbn" image_type="elf_end_64b_aligned">
            <general_properties_overrides>
                <sw_id>0x00000000</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="sbl1_hash_128b_align" name="sbl1.mbn" image_type="elf_end_128b_aligned">
            <general_properties_overrides>
                <sw_id>0x00000000</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="qdsp6sw" name="qdsp6sw.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000000000002</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="emmcbld" name="MPRG*.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000003</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="emmcbld_mbn" name="MPRG*.mbn" image_type="mbn_80b">
            <general_properties_overrides>
                <sw_id>0x0000000000000003</sw_id>
            </general_properties_overrides>
        </image>

        <image sign_id="ENPRG_mbn" name="ENPRG*.mbn" image_type="mbn_80b">
            <general_properties_overrides>
                <sw_id>0x0000000000000003</sw_id>
            </general_properties_overrides>
        </image>

        <image sign_id="ENPRG" name="ENPRG*.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000003</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="NPRG_mbn" name="NPRG*.mbn" image_type="mbn_40b">
            <general_properties_overrides>
                <sw_id>0x0000000000000003</sw_id>
            </general_properties_overrides>
        </image>

        <image sign_id="NPRG" name="NPRG*.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000003</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="adsp" name="dsp*.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000004</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="devcfg" name="devcfg.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000005</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="sp_mcp" name="sp_mcp.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000000000006</sw_id>
                <oem_id_independent>1</oem_id_independent>
                <secboot_version>1.0</secboot_version>
            </general_properties_overrides>
        </image>

        <image sign_id="tz" name="tz.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000007</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <oem_id_independent>1</oem_id_independent>
                <qti_sign>true</qti_sign>
            </general_properties_overrides>
        </image>

        <image sign_id="sp_apps" name="sp_apps.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000000000008</sw_id>
                <oem_id_independent>1</oem_id_independent>
                <secboot_version>1.0</secboot_version>
            </general_properties_overrides>
        </image>

        <image sign_id="appsboot" name="appsboot.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000009</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="appsbl" name="emmc_appsboot.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000009</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="uefi" name="uefi_sign_ready.mbn" image_type="elf_as_bin">
            <general_properties_overrides>
                <sw_id>0x00000009</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="rpm" name="rpm.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000A</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="imc" name="imc.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000A</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="xbl_sec" name="xbl_sec.mbn" image_type="elf_post_phdr_load_aligned">
            <general_properties_overrides>
                <sw_id>0x0000000B</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <oem_id_independent>1</oem_id_independent>
                <qti_sign>true</qti_sign>
                <oem_sign>false</oem_sign>
            </general_properties_overrides>
        </image>

        <image sign_id="xbl_config" name="xbl_config.elf" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000025</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <selected_encryptor>UIE_1_0_L2_1_1</selected_encryptor>
            </general_properties_overrides>
        </image>

        <image sign_id="wcnss" name="wcnss.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000D</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="vss" name="venus.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000E</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="apps" name="apps.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000E</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="sti" name="loaderTest.elf" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000011</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="sdi" name="sdi.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000012</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="sdi_mbn" name="sdi.mbn" image_type="mbn_40b">
            <general_properties_overrides>
                <sw_id>0x0000000000000012</sw_id>
            </general_properties_overrides>
        </image>

        <image sign_id="wlan" name="wlan.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000012</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="acpi" name="acpi.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000013</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="gfx_microcode" name="a*_zap.elf" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000014</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="qhee" name="hyp.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000015</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="pmic" name="pmic.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000016</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="slpi" name="slpi.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000018</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="cnss" name="cnss.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000019</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="abl" name="abl.fv.elf" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000001C</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="ipa_fw" name="ipa_fw.elf" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000001D</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="tzapps" name="tzapps.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000C</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <app_id>0x000000000000000F</app_id>
            </general_properties_overrides>
        </image>

        <image sign_id="tzapps_dbl" name="tzapps_dbl.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000000C</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <app_id>0x000000000000000F</app_id>
                <oem_id_independent>1</oem_id_independent>
                <qti_sign>true</qti_sign>
            </general_properties_overrides>
        </image>

        <image sign_id="tz_tee" name="tz_tee.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000001E</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <app_id>0x000000000000000F</app_id>
            </general_properties_overrides>
        </image>

        <image sign_id="tz_lib" name="tz_lib.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000001F</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <app_id>0x000000000000000F</app_id>
            </general_properties_overrides>
        </image>

        <image sign_id="tz_lib_dbl" name="tz_lib_dbl.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000001F</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <app_id>0x000000000000000F</app_id>
                <oem_id_independent>1</oem_id_independent>
                <qti_sign>true</qti_sign>
            </general_properties_overrides>
        </image>

        <image sign_id="cdsp" name="cdsp.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000017</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="aop" name="aop.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000021</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <selected_encryptor>UIE_1_0_L2_1_1</selected_encryptor>
            </general_properties_overrides>
        </image>

        <image sign_id="qupv3" name="qupv3_fw_32b.elf" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000024</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <selected_encryptor>UIE_1_0_L2_1_1</selected_encryptor>
                <oem_id_independent>1</oem_id_independent>
                <qti_sign>true</qti_sign>
            </general_properties_overrides>
        </image>

        <image sign_id="dolby" name="dolby.mbn" image_type="elf_has_ht_licmngr">
            <general_properties_overrides>
                <sw_id>0x00000010</sw_id>
                <secboot_version>1.0</secboot_version>
            </general_properties_overrides>
        </image>

        <image sign_id="uefifv" name="uefifw.elf" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000027</sw_id>
                <selected_encryptor>UIE_1_0_L2_1_1</selected_encryptor>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="npu" name="npu.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000028</sw_id>
                <selected_encryptor>UIE_1_0_L2_1_1</selected_encryptor>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="mcfg_hw" name="mcfg_hw.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000002</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="mcfg_sw" name="mcfg_sw.mbn" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x00000002</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
            </general_properties_overrides>
        </image>

        <image sign_id="face_auth" name="face_auth.elf" image_type="elf_has_ht">
            <general_properties_overrides>
                <sw_id>0x0000002a</sw_id>
                <anti_rollback_version>0x00000000</anti_rollback_version>
                <selected_encryptor>UIE_2_0_L2_1_2</selected_encryptor>
                <UIE_key>asymmetric</UIE_key>
                <UIE_feature_id>0x1</UIE_feature_id>
            </general_properties_overrides>
        </image>
    </images_list>

</tns:secimage>
