# ELF load details during QCC730 boot

Source: [https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html](https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html)

ELF loading is the main process of loading an image. As described in [QCC730 boot flow](https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_flow.html), SBL and APP images are loaded
            during bootup. For commercial products, both images can only be loaded in ELF format.

## ELF load software architecture

Source: [https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html](https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html)

The ELF loading is designed to support loading ELF images from different types of memory. For example, SBL		images stored on RRAM and APP images stored on flash. It's realized through a virtual layer between memory driver and ELF loader,		as shown in the following figure.

	
Figure : ELF load software architecture				<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by Microsoft Visio, SVG Export elf_load_software_architecture.svg ELF load -->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" width="7.73886in" height="3.27052in" viewbox="0 0 557.198 235.477" xml:space="preserve" color-interpolation-filters="sRGB" class="st6"><style>.svg-1 .st1 { fill: #f7f8fa; stroke: #ffffff; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-1 .st2 { fill: #dee3ec; stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-1 .st3 { stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-1 .st4 { fill: none; stroke: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-1 .st5 { fill: #000000; font-family: Arial; font-size: 1.08334em; letter-spacing: normal }
.svg-1 .st6 { fill: none; fill-rule: evenodd; font-size: 12px; overflow: visible; stroke-linecap: square; stroke-miterlimit: 3 }</style>
<g>	<title></title>	<g id="shape23-1" transform="translate(0.375,-0.375)">		<title></title>		<rect x="0" y="0.750009" width="556.448" height="234.727" rx="7.2" ry="7.2" class="st1"></rect>	</g>	<g id="group17-3" transform="translate(25.3693,-23.1506)">		<title></title>		<g id="shape7-4" transform="translate(0,-3.60577E-06)">			<title></title>			<rect x="0" y="46.8361" width="506.234" height="188.641" class="st2"></rect>		</g>		<g id="shape9-6" transform="translate(6.39488E-14,-47.5317)">			<title></title>			<path d="M0 235.48 L506.23 235.48" class="st3"></path>		</g>		<g id="shape10-9" transform="translate(0,-141.605)">			<title></title>			<path d="M0 235.48 L506.23 235.48" class="st3"></path>		</g>		<g id="shape11-12" transform="translate(0,-94.5682)">			<title></title>			<path d="M0 235.48 L506.23 235.48" class="st3"></path>		</g>		<g id="shape12-15" transform="translate(362.036,187.946) rotate(90)">			<title></title>			<path d="M0 235.48 L47.53 235.48" class="st3"></path>		</g>		<g id="shape14-18" transform="translate(488.736,187.946) rotate(90)">			<title></title>			<path d="M0 235.48 L47.53 235.48" class="st3"></path>		</g>		<g id="shape15-21" transform="translate(615.153,187.946) rotate(90)">			<title></title>			<path d="M0 235.48 L47.53 235.48" class="st3"></path>		</g>		<g id="shape16-24" transform="translate(488.736,46.8361) rotate(90)">			<title></title>			<path d="M0 235.48 L47.04 235.48" class="st3"></path>		</g>	</g>	<g id="shape2-27" transform="translate(151.363,-23.6457)">		<title></title>		<desc>RRAM_TO_RRAM</desc>		<rect x="0" y="188.441" width="126.559" height="47.0365" class="st4"></rect>		<text x="8.75" y="215.86" class="st5">RRAM_TO_RRAM</text>		</g>	<g id="shape3-30" transform="translate(277.921,-23.6457)">		<title></title>		<desc>FLASH_TO_RRAM</desc>		<rect x="0" y="188.441" width="126.559" height="47.0365" class="st4"></rect>		<text x="6.93" y="215.86" class="st5">FLASH_TO_RRAM</text>		</g>	<g id="shape4-33" transform="translate(404.48,-23.6457)">		<title></title>		<desc>FLASH_TO_RAM</desc>		<rect x="0" y="188.441" width="126.559" height="47.0365" class="st4"></rect>		<text x="11.63" y="215.86" class="st5">FLASH_TO_RAM</text>		</g>	<g id="shape18-36" transform="translate(24.8043,-23.6457)">		<title></title>		<desc>RRAM_TO_RAM</desc>		<rect x="0" y="188.441" width="126.559" height="47.0365" class="st4"></rect>		<text x="13.44" y="215.86" class="st5">RRAM_TO_RAM</text>		</g>	<g id="shape19-39" transform="translate(215.207,-70.6823)">		<title></title>		<desc>Virtual MEM layer</desc>		<rect x="0" y="188.441" width="126.559" height="47.0365" class="st4"></rect>		<text x="11.99" y="215.86" class="st5">Virtual MEM layer</text>		</g>	<g id="shape20-42" transform="translate(82.9986,-164.755)">		<title></title>		<desc>OTA</desc>		<rect x="0" y="188.441" width="126.559" height="47.0365" class="st4"></rect>		<text x="49.92" y="215.86" class="st5">OTA</text>		</g>	<g id="shape21-45" transform="translate(215.207,-118.709)">		<title></title>		<desc>ELF loader</desc>		<rect x="0" y="188.441" width="126.559" height="47.0365" class="st4"></rect>		<text x="31.48" y="215.86" class="st5">ELF loader</text>		</g>	<g id="shape22-48" transform="translate(340.071,-165.746)">		<title></title>		<desc>Security</desc>		<rect x="0" y="188.441" width="126.559" height="47.0365" class="st4"></rect>		<text x="39.8" y="215.86" class="st5">Security</text>		</g></g>
</svg>

## ELF load type

Source: [https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html](https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html)

The following three types of loading are supported for ELF images:

	
- FULL\_LOAD

			
    Load all PT\_LOAD type segments to the virtual DDR specified in the program header, RAM segments to RAM, and RRAM segments to RRAM.
- RAM\_LOAD

			
    Only load virtual addresses in RAM (0x0 ~ 0xA0000) of PT\_LOAD type segments. This type reduces the number of RRAM loading times since				the code running on RRAM only need be loaded once.

			
    After a FULL\_LOAD, you only need to run RAM\_LOAD after bootup.
- COPY\_LOAD

			
    Copy the PT\_LOAD type segment to the physical address (PADDR) specified in the program header. This type of loading is similar to burning a BIN file, except that there is no padding between				segments.

## SBL ELF load

Source: [https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html](https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html)

An SBL image has code/data segments and PBL patch segment, as described in [SBL image](https://docs.qualcomm.com/doc/80-Y8730-2/topic/program_images.html#sbl). The code/data segments run in the			RAM, while the PBL patch segment is loaded to the PBL\_PATCH region of RRAM. As described in [ELF load type](https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html#elf_load_type), code/data segments only need be loaded with RAM\_LOAD, while PBL\_PATCH need be loaded with FULL\_LOAD but only once. Therefore, a new OTA image requires a FULL\_LOAD to load both RAM segments (code/data) and RRAM segment (PBL\_PATCH). After that, only		RAM\_LOAD is needed during SBL loading.

	
Figure : SBL ELF load				<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by Microsoft Visio, SVG Export sbl_elf_load.svg SBL ELF load -->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" width="7.30552in" height="4.59175in" viewbox="0 0 525.997 330.606" xml:space="preserve" color-interpolation-filters="sRGB" class="st15"><style>.svg-2 .st1 { fill: #f7f8fa; stroke: #ffffff; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-2 .st2 { fill: #dee3ec; stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-2 .st3 { stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-2 .st4 { fill: none; stroke: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-2 .st5 { fill: #000000; font-family: Arial; font-size: 1.08334em; font-weight: bold; letter-spacing: normal }
.svg-2 .st6 { stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.25 }
.svg-2 .st7 { fill: #000000; font-family: Arial; font-size: 1.08334em; letter-spacing: normal }
.svg-2 .st8 { fill: #000000; font-family: Courier New; font-size: 1.08334em; letter-spacing: normal }
.svg-2 .st9 { stroke: #000000; stroke-dasharray: 1.75, 1.25; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.25 }
.svg-2 .st10 { marker-start: url("#1-mrkr5-87"); stroke: #4a5a75; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.75 }
.svg-2 .st11 { fill: #4a5a75; fill-opacity: 1; stroke: #4a5a75; stroke-opacity: 1; stroke-width: 0.40983606557377 }
.svg-2 .st12 { fill: #ffffff; stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-2 .st13 { marker-end: url("#1-mrkr5-95"); stroke: #4a5a75; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.75 }
.svg-2 .st14 { fill: none; stroke: #3253dc; stroke-dasharray: 6, 6; stroke-width: 2 }
.svg-2 .st15 { fill: none; fill-rule: evenodd; font-size: 12px; overflow: visible; stroke-linecap: square; stroke-miterlimit: 3 }</style>
<defs id="Markers">	<g id="lend5">		<path d="M 2 1 L 0 0 L 1.98117 -0.993387 C 1.67173 -0.364515 1.67301 0.372641 1.98465 1.00043 " style="stroke:none"></path>	</g>	<marker id="1-mrkr5-87" class="st11" refx="4.0642857142857" orient="auto" markerunits="strokeWidth" overflow="visible">		<use xlink:href="#lend5" transform="scale(2.44) "></use>	</marker>	<marker id="1-mrkr5-95" class="st11" refx="-4.27" orient="auto" markerunits="strokeWidth" overflow="visible">		<use xlink:href="#lend5" transform="scale(-2.44,-2.44) "></use>	</marker></defs><g>	<title></title>	<g id="shape64-1" transform="translate(0.375,-0.375)">		<title></title>		<rect x="0" y="0.750018" width="525.247" height="329.856" rx="7.2" ry="7.2" class="st1"></rect>	</g>	<g id="shape1-3" transform="translate(68.6961,-37.4139)">		<title></title>		<rect x="0" y="58.8119" width="156.21" height="271.794" class="st2"></rect>	</g>	<g id="shape2-5" transform="translate(68.6961,-243.458)">		<title></title>		<path d="M0 330.61 L156.21 330.61" class="st3"></path>	</g>	<g id="shape3-8" transform="translate(68.6961,-216.353)">		<title></title>		<path d="M0 330.61 L156.21 330.61" class="st3"></path>	</g>	<g id="shape4-11" transform="translate(68.6961,-185.748)">		<title></title>		<path d="M0 330.61 L156.21 330.61" class="st3"></path>	</g>	<g id="shape8-14" transform="translate(77.9729,-219.865)">		<title></title>		<desc>PBL patch</desc>		<rect x="0" y="311.019" width="137.656" height="19.5874" class="st4"></rect>		<text x="36.69" y="324.71" class="st5">PBL patch</text>		</g>	<g id="shape9-17" transform="translate(77.9729,-265.322)">		<title></title>		<desc>PBL</desc>		<rect x="0" y="311.019" width="137.656" height="19.5874" class="st4"></rect>		<text x="55.83" y="324.71" class="st5">PBL</text>		</g>	<g id="shape20-20" transform="translate(68.6961,-161.604)">		<title></title>		<path d="M0 330.61 L156.21 330.61" class="st6"></path>	</g>	<g id="shape21-23" transform="translate(68.6961,-137.51)">		<title></title>		<path d="M0 330.61 L156.21 330.61" class="st6"></path>	</g>	<g id="shape22-26" transform="translate(68.6961,-113.416)">		<title></title>		<path d="M0 330.61 L156.21 330.61" class="st6"></path>	</g>	<g id="shape23-29" transform="translate(68.6961,-89.3224)">		<title></title>		<path d="M0 330.61 L156.21 330.61" class="st6"></path>	</g>	<g id="shape24-32" transform="translate(68.6961,-65.2286)">		<title></title>		<path d="M0 330.61 L156.21 330.61" class="st6"></path>	</g>	<g id="shape28-35" transform="translate(77.9729,-163.731)">		<title></title>		<desc>ELF</desc>		<rect x="0" y="311.019" width="137.656" height="19.5874" class="st4"></rect>		<text x="56.91" y="324.71" class="st7">ELF</text>		</g>	<g id="shape29-38" transform="translate(77.6736,-139.761)">		<title></title>		<desc>Hash segment</desc>		<rect x="0" y="311.019" width="137.656" height="19.5874" class="st4"></rect>		<text x="26.92" y="324.71" class="st7">Hash segment</text>		</g>	<g id="shape30-41" transform="translate(77.9729,-115.709)">		<title></title>		<desc>Code segment</desc>		<rect x="0" y="311.019" width="137.656" height="19.5874" class="st4"></rect>		<text x="26.55" y="324.71" class="st7">Code segment</text>		</g>	<g id="shape31-44" transform="translate(77.9729,-91.6568)">		<title></title>		<desc>Data segment</desc>		<rect x="0" y="311.019" width="137.656" height="19.5874" class="st4"></rect>		<text x="28.36" y="324.71" class="st7">Data segment</text>		</g>	<g id="shape32-47" transform="translate(77.9729,-67.6045)">		<title></title>		<desc>PBL patch segment</desc>		<rect x="0" y="311.019" width="137.656" height="19.5874" class="st4"></rect>		<text x="12.1" y="324.71" class="st7">PBL patch segment</text>		</g>	<g id="shape33-50" transform="translate(310.145,-49.6269)">		<title></title>		<rect x="0" y="159.816" width="142.972" height="170.79" class="st2"></rect>	</g>	<g id="shape36-52" transform="translate(310.14,-81.8644)">		<title></title>		<path d="M0 330.61 L142.98 330.61" class="st3"></path>	</g>	<g id="shape37-55" transform="translate(310.14,-144.948)">		<title></title>		<path d="M0 330.61 L142.98 330.61" class="st3"></path>	</g>	<g id="shape39-58" transform="translate(320.97,-21.4094)">		<title></title>		<desc>RAM</desc>		<rect x="0" y="312.677" width="126" height="17.9289" class="st4"></rect>		<text x="48.2" y="325.54" class="st5">RAM</text>		</g>	<g id="shape40-61" transform="translate(318.631,-102.527)">		<title></title>		<desc>SBL RAM</desc>		<rect x="0" y="312.677" width="126" height="17.9289" class="st4"></rect>		<text x="33.39" y="325.54" class="st5">SBL RAM</text>		</g>	<g id="shape44-64" transform="translate(444.96,-144.777)">		<title></title>		<desc>0x80000</desc>		<rect x="0" y="320.813" width="72.6064" height="9.79372" class="st4"></rect>		<text x="14" y="329.61" class="st8">0x80000</text>		</g>	<g id="shape45-67" transform="translate(444.96,-81.8644)">		<title></title>		<desc>0x90000</desc>		<rect x="0" y="320.813" width="72.6064" height="9.79372" class="st4"></rect>		<text x="14" y="329.61" class="st8">0x90000</text>		</g>	<g id="shape46-70" transform="translate(444.96,-49.9031)">		<title></title>		<desc>0xA0000</desc>		<rect x="0" y="320.813" width="72.6064" height="9.79372" class="st4"></rect>		<text x="14" y="329.61" class="st8">0xA0000</text>		</g>	<g id="shape47-73" transform="translate(452.3,-144.948)">		<title></title>		<path d="M0 330.61 L59.19 330.61" class="st9"></path>	</g>	<g id="shape48-76" transform="translate(452.3,-81.8644)">		<title></title>		<path d="M0 330.61 L59.19 330.61" class="st9"></path>	</g>	<g id="shape49-79" transform="translate(452.3,-49.9031)">		<title></title>		<path d="M0 330.61 L59.19 330.61" class="st9"></path>	</g>	<g id="shape51-82" transform="translate(59.6961,-229.467)">		<title></title>		<path d="M1.89 330.61 L1.53 330.61 L-24.7 330.61 L-24.7 482.32 L9 482.32" class="st10"></path>	</g>	<g id="shape59-88" transform="translate(68.6961,-185.608)">		<title></title>		<rect x="0" y="299.912" width="156.21" height="30.6942" class="st12"></rect>	</g>	<g id="shape60-90" transform="translate(224.906,-127.134)">		<title></title>		<path d="M0 330.61 L77.42 330.61" class="st13"></path>	</g>	<g id="shape61-96" transform="translate(224.906,-99.698)">		<title></title>		<path d="M0 330.61 L77.42 330.61" class="st13"></path>	</g>	<g id="shape62-101" transform="translate(310.145,-49.6269)">		<title></title>		<rect x="0" y="298.369" width="142.972" height="32.2375" class="st12"></rect>	</g>	<g id="shape63-103" transform="translate(310.145,-144.968)">		<title></title>		<rect x="0" y="255.157" width="142.972" height="75.4495" class="st12"></rect>	</g>	<g id="shape65-105" transform="translate(68.5464,-37.4139)">		<title></title>		<path d="M0 330.61 L156.21 330.61 L156.21 182.55 L0 182.55 L0 330.61 Z" class="st14"></path>	</g>	<g id="shape66-107" transform="translate(77.9729,-41.5293)">		<title></title>		<desc>SBL</desc>		<rect x="0" y="311.019" width="137.656" height="19.5874" class="st4"></rect>		<text x="55.83" y="324.71" class="st5">SBL</text>		</g></g>
</svg>

## APP ELF load

Source: [https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html](https://docs.qualcomm.com/doc/80-Y8730-2/topic/qcc730_boot_elf_load.html)

The following diagram illustrates the APP ELF load process.

Figure : APP ELF load
            
            <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by Microsoft Visio, SVG Export app_elf_load.svg APP ELF load -->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" width="7.60026in" height="4.38828in" viewbox="0 0 547.219 315.956" xml:space="preserve" color-interpolation-filters="sRGB" class="st10"><style>.svg-3 .st1 { fill: #f7f8fa; stroke: #ffffff; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-3 .st2 { fill: #ffffff; stroke: #4a5a75; stroke-dasharray: 2.25, 2.25; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-3 .st3 { fill: #dee3ec; stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-3 .st4 { fill: #000000; font-family: Arial; font-size: 1.08334em; letter-spacing: normal }
.svg-3 .st5 { stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-3 .st6 { fill: none; stroke: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-3 .st7 { marker-end: url("#2-mrkr5-52"); stroke: #4a5a75; stroke-width: 2.5 }
.svg-3 .st8 { fill: #4a5a75; fill-opacity: 1; stroke: #4a5a75; stroke-opacity: 1; stroke-width: 0.49800796812749 }
.svg-3 .st9 { marker-end: url("#2-mrkr5-52"); stroke: #4a5a75; stroke-dasharray: 7.5, 7.5; stroke-width: 2.5 }
.svg-3 .st10 { fill: none; fill-rule: evenodd; font-size: 12px; overflow: visible; stroke-linecap: square; stroke-miterlimit: 3 }</style>
<defs id="Markers">	<g id="lend5">		<path d="M 2 1 L 0 0 L 1.98117 -0.993387 C 1.67173 -0.364515 1.67301 0.372641 1.98465 1.00043 " style="stroke:none"></path>	</g>	<marker id="2-mrkr5-52" class="st8" refx="-3.514" orient="auto" markerunits="strokeWidth" overflow="visible">		<use xlink:href="#lend5" transform="scale(-2.008,-2.008) "></use>	</marker></defs><g>	<title></title>	<g id="shape1-1" transform="translate(0.375,-0.375)">		<title></title>		<rect x="0" y="0.749992" width="546.469" height="315.206" rx="7.2" ry="7.2" class="st1"></rect>	</g>	<g id="shape2-3" transform="translate(22.2528,-108.837)">		<title></title>		<path d="M0 315.96 L143.5 315.96 L143.5 130.47 L0 130.47 L0 315.96 Z" class="st2"></path>	</g>	<g id="shape3-5" transform="translate(201.623,-108.837)">		<title></title>		<path d="M0 315.96 L143.5 315.96 L143.5 130.47 L0 130.47 L0 315.96 Z" class="st2"></path>	</g>	<g id="shape4-7" transform="translate(380.994,-108.837)">		<title></title>		<path d="M0 315.96 L143.5 315.96 L143.5 130.47 L0 130.47 L0 315.96 Z" class="st2"></path>	</g>	<g id="shape5-9" transform="translate(27.2977,-230.116)">		<title></title>		<desc>RRAM segments</desc>		<rect x="0" y="260.311" width="133.407" height="55.6456" class="st3"></rect>		<text x="17.58" y="292.03" class="st4">RRAM segments</text>		</g>	<g id="shape6-12" transform="translate(206.668,-230.116)">		<title></title>		<desc>RAM segments</desc>		<rect x="0" y="260.311" width="133.407" height="55.6456" class="st3"></rect>		<text x="22.27" y="292.03" class="st4">RAM segments</text>		</g>	<g id="shape7-15" transform="translate(386.039,-140.226)">		<title></title>		<rect x="0" y="171.135" width="133.407" height="144.821" class="st3"></rect>	</g>	<g id="shape8-17" transform="translate(386.039,-249.377)">		<title></title>		<path d="M0 315.96 L133.41 315.96" class="st5"></path>	</g>	<g id="shape9-20" transform="translate(386.039,-212.994)">		<title></title>		<path d="M0 315.96 L133.41 315.96" class="st5"></path>	</g>	<g id="shape10-23" transform="translate(386.039,-176.61)">		<title></title>		<path d="M0 315.96 L133.41 315.96" class="st5"></path>	</g>	<g id="shape11-26" transform="translate(388.615,-254.054)">		<title></title>		<desc>ELF header</desc>		<rect x="0" y="290.591" width="128.254" height="25.3655" class="st6"></rect>		<text x="30.16" y="307.17" class="st4">ELF header</text>		</g>	<g id="shape12-29" transform="translate(388.615,-218.542)">		<title></title>		<desc>Hash segment</desc>		<rect x="0" y="290.591" width="128.254" height="25.3655" class="st6"></rect>		<text x="22.22" y="307.17" class="st4">Hash segment</text>		</g>	<g id="shape13-32" transform="translate(388.615,-181.445)">		<title></title>		<desc>RAM segments</desc>		<rect x="0" y="290.591" width="128.254" height="25.3655" class="st6"></rect>		<text x="19.7" y="307.17" class="st4">RAM segments</text>		</g>	<g id="shape14-35" transform="translate(388.615,-144.824)">		<title></title>		<desc>RRAM segments</desc>		<rect x="0" y="290.591" width="128.254" height="25.3655" class="st6"></rect>		<text x="15" y="307.17" class="st4">RRAM segments</text>		</g>	<g id="shape15-38" transform="translate(481.749,-108.837)">		<title></title>		<desc>Flash</desc>		<rect x="0" y="290.591" width="42.741" height="25.3655" class="st6"></rect>		<text x="5.48" y="307.17" class="st4">Flash</text>		</g>	<g id="shape16-41" transform="translate(305.883,-108.837)">		<title></title>		<desc>RAM</desc>		<rect x="0" y="290.591" width="39.1354" height="25.3655" class="st6"></rect>		<text x="5.12" y="307.17" class="st4">RAM</text>		</g>	<g id="shape17-44" transform="translate(114.416,-108.837)">		<title></title>		<desc>RRAM</desc>		<rect x="0" y="290.591" width="51.3336" height="25.3655" class="st6"></rect>		<text x="6.53" y="307.17" class="st4">RRAM</text>		</g>	<g id="shape18-47" transform="translate(386.039,-158.775)">		<title></title>		<path d="M0 315.96 L-292.04 315.96 L-292.04 253.4" class="st7"></path>	</g>	<g id="shape19-53" transform="translate(386.039,-188.025)">		<title></title>		<path d="M0 315.96 L-138.35 315.96 L-138.35 282.65" class="st7"></path>	</g>	<g id="shape20-58" transform="translate(386.039,-201.579)">		<title></title>		<path d="M0 315.96 L-88.41 315.96 L-88.41 296.21" class="st9"></path>	</g>	<g id="shape22-63" transform="translate(398.931,-52.7052)">		<title></title>		<path d="M0 306.96 L9.91 306.96 L-45.43 306.96" class="st9"></path>	</g>	<g id="shape23-68" transform="translate(409.969,-59.0567)">		<title></title>		<desc>RAM_LOAD</desc>		<rect x="0" y="310.725" width="81.7133" height="5.23164" class="st6"></rect>		<text x="4" y="317.24" class="st4">RAM_LOAD</text>		</g>	<g id="shape25-71" transform="translate(399.622,-25.5868)">		<title></title>		<path d="M0 306.96 L9.49 306.96 L-46.12 306.96" class="st7"></path>	</g>	<g id="shape26-76" transform="translate(409.969,-31.7094)">		<title></title>		<desc>FULL_LOAD</desc>		<rect x="0" y="310.725" width="87.0355" height="5.23164" class="st6"></rect>		<text x="4" y="317.24" class="st4">FULL_LOAD</text>		</g></g>
</svg>

Last Published: Jun 03, 2026

[Previous Topic
QCC730 boot flow](https://docs.qualcomm.com/bundle/publicresource/80-Y8730-2/topics/qcc730_boot_flow.md) [Next Topic
QCC730 OTA upgrade](https://docs.qualcomm.com/bundle/publicresource/80-Y8730-2/topics/firmware_upgrade.md)