Docs: Update configuration docs
Update configuration docs to align with changes which decouples option
configuration and validation in config header files.
Convert header file config system diagrams in svg format
It is difficult to modify existing figures in header_file_system.rst and
kconfig_header_file_system.rst.
Re-draw those figures in svg format and enable developers to more easily
update the diagram.
Change-Id: If88a6a07104ef54de127ccb9149c5ff4792b3cdd
Signed-off-by: David Hu <david.hu@arm.com>
diff --git a/docs/configuration/kconfig_header_file_system.svg b/docs/configuration/kconfig_header_file_system.svg
new file mode 100755
index 0000000..96ded0d
--- /dev/null
+++ b/docs/configuration/kconfig_header_file_system.svg
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Do not edit this file with editors other than diagrams.net -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1292px" height="582px" viewBox="-0.5 -0.5 1292 582" content="<mxfile host="app.diagrams.net" modified="2023-02-23T09:09:57.035Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36" etag="yLQbZwC1y7tSuCipqXV3" version="20.8.23" type="device"><diagram name="Page-1" id="C50KTVw_eySCdgQrAY2m">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</diagram></mxfile>"><defs/><g><path d="M 1002 385 C 1004.76 385 1007 387.24 1007 390 L 1007 567.08 Q 967 543.84 927 567.08 Q 887 590.33 847 567.08 L 847 397.92 L 847 390 C 847 387.24 849.24 385 852 385 Z" fill="#dae8fc" stroke="#6c8ebf" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="926.5" y="402.5">config_tfm.h</text></g><rect x="371" y="0" width="240" height="180" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 238px; height: 1px; padding-top: 7px; margin-left: 373px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">CMake Variables</div></div></div></foreignObject><text x="373" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">CMake Variables</text></switch></g><rect x="1083" y="397" width="160" height="108" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 404px; margin-left: 1163px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: nowrap;"><span style="font-weight: normal;">Component</span></div></div></div></foreignObject><text x="1163" y="416" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">Component</text></switch></g><path d="M 1220 404 L 1236 404 L 1236 424 L 1220 424 L 1220 420 L 1216 420 L 1216 416 L 1220 416 L 1220 412 L 1216 412 L 1216 408 L 1220 408 Z" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 1220 408 L 1224 408 L 1224 412 L 1220 412 M 1220 416 L 1224 416 L 1224 420 L 1220 420" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="1073" y="388" width="160" height="108" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 395px; margin-left: 1153px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: nowrap;"><span style="font-weight: normal;">Component</span></div></div></div></foreignObject><text x="1153" y="407" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">Component</text></switch></g><path d="M 1210 395 L 1226 395 L 1226 415 L 1210 415 L 1210 411 L 1206 411 L 1206 407 L 1210 407 L 1210 403 L 1206 403 L 1206 399 L 1210 399 Z" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 1210 399 L 1214 399 L 1214 403 L 1210 403 M 1210 407 L 1214 407 L 1214 411 L 1210 411" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 401 270 L 434.63 270" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 439.88 270 L 432.88 273.5 L 434.63 270 L 432.88 266.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><ellipse cx="351" cy="270" rx="50" ry="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="2" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="350.5" y="267.5">Command line</text><text x="350.5" y="281.5">input</text></g><path d="M 541 270 L 657.63 270" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 662.88 270 L 655.88 273.5 L 657.63 270 L 655.88 266.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 536.45 220 C 538.31 220.02 539.79 220.64 540.4 221.65 C 541.01 222.66 540.7 223.95 539.54 225.1 L 442.46 314.9 C 441.3 316.05 440.99 317.34 441.6 318.35 C 442.21 319.36 443.69 319.98 445.55 320 L 536.45 320 C 538.31 319.98 539.79 319.36 540.4 318.35 C 541.01 317.34 540.7 316.05 539.54 314.9 L 442.46 225.1 C 441.3 223.95 440.99 222.66 441.6 221.65 C 442.21 220.64 443.69 220.02 445.55 220 L 536.45 220 Z" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 531 30 C 533.76 30 536 32.24 536 35 L 536 73.75 Q 513.5 62.5 491 73.75 Q 468.5 85 446 73.75 L 446 36.25 L 446 35 C 446 32.24 448.24 30 451 30 Z" fill="#f5f5f5" stroke="#666666" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><g fill="#333333" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="490.5" y="47.5">Platform config</text></g><path d="M 491.09 160.2 L 491.01 213.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 491 218.88 L 487.51 211.88 L 491.01 213.63 L 494.51 211.89 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 967 414 C 969.76 414 972 416.24 972 419 L 972 457.75 Q 949.5 446.5 927 457.75 Q 904.5 469 882 457.75 L 882 420.25 L 882 419 C 882 416.24 884.24 414 887 414 Z" fill="#dae8fc" stroke="#6c8ebf" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="926.5" y="431.5">config_base.h</text></g><path d="M 927 385 L 1007.5 304.5" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1011.21 300.79 L 1008.73 308.22 L 1007.5 304.5 L 1003.78 303.27 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 967 494 C 969.76 494 972 496.24 972 499 L 972 546.5 Q 949.5 533 927 546.5 Q 904.5 560 882 546.5 L 882 501.5 L 882 499 C 882 496.24 884.24 494 887 494 Z" fill="#dae8fc" stroke="#6c8ebf" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="926.5" y="511.5">Target config</text><text x="926.5" y="525.5">header file</text></g><path d="M 693 187.33 L 693 160.67 C 693 156.98 709.12 154 729 154 C 748.88 154 765 156.98 765 160.67 L 765 187.33 C 765 191.02 748.88 194 729 194 C 709.12 194 693 191.02 693 187.33 Z" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 693 160.67 C 693 164.35 709.12 167.33 729 167.33 C 748.88 167.33 765 164.35 765 160.67" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 729 240 L 729 200.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 729 195.12 L 732.5 202.12 L 729 200.37 L 725.5 202.12 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 729 333 L 729 306.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 729 301.12 L 732.5 308.12 L 729 306.37 L 725.5 308.12 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 794 270 L 940.63 270" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 945.88 270 L 938.88 273.5 L 940.63 270 L 938.88 266.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="664" y="240" width="130" height="60" rx="7" ry="7" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="2" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="728.5" y="274.5">CMake configuration</text></g><rect x="664" y="333" width="130" height="40" rx="7" ry="7" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="2" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="728.5" y="357.5">Invalid config check</text></g><rect x="1119" y="89" width="156" height="26" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 154px; height: 1px; padding-top: 96px; margin-left: 1121px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(251, 251, 251); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">Header file config system</span></div></div></div></foreignObject><text x="1121" y="108" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">Header file config system</text></switch></g><rect x="947" y="240" width="130" height="60" rx="7" ry="7" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="2" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="1011.5" y="274.5">CMake Building</text></g><path d="M 927 494 L 927 464.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 927 459.12 L 930.5 466.12 L 927 464.37 L 923.5 466.12 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="1063" y="381" width="160" height="108" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" font-weight="bold" text-anchor="middle" font-size="12px"><text x="1142.5" y="398.5">Component A</text></g><path d="M 1200 388 L 1216 388 L 1216 408 L 1200 408 L 1200 404 L 1196 404 L 1196 400 L 1200 400 L 1200 396 L 1196 396 L 1196 392 L 1200 392 Z" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 1200 392 L 1204 392 L 1204 396 L 1200 396 M 1200 400 L 1204 400 L 1204 404 L 1200 404" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 1200 419 C 1202.76 419 1205 421.24 1205 424 L 1205 471.5 Q 1175.25 458 1145.5 471.5 Q 1115.75 485 1086 471.5 L 1086 426.5 L 1086 424 C 1086 421.24 1088.24 419 1091 419 Z" fill="#dae8fc" stroke="#6c8ebf" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="1145" y="436.5">config_<A>_check.h</text></g><path d="M 1143 381 L 1017.42 303.35" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1012.95 300.59 L 1020.75 301.29 L 1017.42 303.35 L 1017.06 307.25 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 1007.32 448.96 L 1079.63 449" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1084.88 449 L 1077.88 452.5 L 1079.63 449 L 1077.88 445.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><path d="M 1229.5 300 L 1197 300 Q 1191 300 1193.15 294.4 L 1211.85 245.6 Q 1214 240 1220 240 L 1285 240 Q 1291 240 1288.85 245.6 L 1270.15 294.4 Q 1268 300 1262 300 Z" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="1240.5" y="267.5">TF-M</text><text x="1240.5" y="281.5">Binaries</text></g><path d="M 1077 270 L 1196.13 270" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1201.38 270 L 1194.38 273.5 L 1196.13 270 L 1194.38 266.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="371" y="116" width="60" height="26" fill="none" stroke="none" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px"><text x="372.5" y="133.5">Override</text></g><path d="M 531 116 C 533.76 116 536 118.24 536 121 L 536 159.75 Q 513.5 148.5 491 159.75 Q 468.5 171 446 159.75 L 446 122.25 L 446 121 C 446 118.24 448.24 116 451 116 Z" fill="#f5f5f5" stroke="#666666" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><g fill="#333333" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="490.5" y="133.5">Base config</text></g><path d="M 490.82 75.2 L 490.97 109.63" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 491 114.88 L 487.46 107.9 L 490.97 109.63 L 494.46 107.87 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/><rect x="781" y="410" width="60" height="26" fill="none" stroke="none" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="810.5" y="427.5">Override</text></g><rect x="931" y="465" width="60" height="26" fill="none" stroke="none" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="960.5" y="482.5">Override</text></g><path d="M 1104 133.5 C 1106.76 133.5 1109 135.74 1109 138.5 L 1109 160.63 Q 1101 153.65 1093 160.63 Q 1085 167.6 1077 160.63 L 1077 137.38 L 1077 138.5 C 1077 135.74 1079.24 133.5 1082 133.5 Z" fill="#f5f5f5" stroke="#666666" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="674" y="127" width="110" height="26" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 134px; margin-left: 675px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(251, 251, 251); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">CMakeCache</span></div></div></div></foreignObject><text x="729" y="146" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">CMakeCache</text></switch></g><rect x="1119" y="136" width="156" height="26" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 154px; height: 1px; padding-top: 143px; margin-left: 1121px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(251, 251, 251); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">Legacy CMake based config</span></div></div></div></foreignObject><text x="1121" y="155" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">Legacy CMake based config</text></switch></g><rect x="1038" y="4" width="110" height="26" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 11px; margin-left: 1039px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;"><span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(251, 251, 251); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">Legend</span></div></div></div></foreignObject><text x="1093" y="23" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">Legend</text></switch></g><rect x="491" y="81" width="60" height="26" fill="none" stroke="none" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px"><text x="492.5" y="98.5">Override</text></g><rect x="1" y="240" width="120" height="60" rx="7" ry="7" fill="#d5e8d4" stroke="#82b366" stroke-width="2" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="60.5" y="274.5">TF-M Kconfig tool</text></g><path d="M 296 116 C 298.76 116 301 118.24 301 121 L 301 159.75 Q 278.5 148.5 256 159.75 Q 233.5 171 211 159.75 L 211 122.25 L 211 121 C 211 118.24 213.24 116 216 116 Z" fill="#d5e8d4" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="255.5" y="133.5">CMake config</text></g><path d="M 301 141 L 439.63 141" fill="none" stroke="#82b366" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 444.88 141 L 437.88 144.5 L 439.63 141 L 437.88 137.5 Z" fill="#82b366" stroke="#82b366" stroke-miterlimit="10" pointer-events="all"/><path d="M 121 270 L 166 270 L 166 141 L 204.63 141" fill="none" stroke="#82b366" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 209.88 141 L 202.88 144.5 L 204.63 141 L 202.88 137.5 Z" fill="#82b366" stroke="#82b366" stroke-miterlimit="10" pointer-events="all"/><path d="M 296 406 C 298.76 406 301 408.24 301 411 L 301 466.6 Q 278.5 456.87 256 466.6 Q 233.5 476.32 211 466.6 L 211 411.4 L 211 411 C 211 408.24 213.24 406 216 406 Z" fill="#d5e8d4" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><g fill="rgb(0, 0, 0)" font-family="Helvetica" text-anchor="middle" font-size="12px"><text x="255.5" y="423.5">Project config</text><text x="255.5" y="437.5">header file </text></g><path d="M 301 439 L 875.63 439" fill="none" stroke="#82b366" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 880.88 439 L 873.88 442.5 L 875.63 439 L 873.88 435.5 Z" fill="#82b366" stroke="#82b366" stroke-miterlimit="10" pointer-events="all"/><path d="M 121 270 L 166 270 L 166 439 L 204.63 439" fill="none" stroke="#82b366" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 209.88 439 L 202.88 442.5 L 204.63 439 L 202.88 435.5 Z" fill="#82b366" stroke="#82b366" stroke-miterlimit="10" pointer-events="all"/><rect x="186" y="86" width="140" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 93px; margin-left: 187px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(251, 251, 251); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">Essential build options</span></div></div></div></foreignObject><text x="256" y="105" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Essential build options</text></switch></g><rect x="201" y="378" width="110" height="32" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 385px; margin-left: 202px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(251, 251, 251); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">Advanced options</span></div></div></div></foreignObject><text x="256" y="397" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Advanced options</text></switch></g><path d="M 61 331 L 61 306.37" fill="none" stroke="#82b366" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 61 301.12 L 64.5 308.12 L 61 306.37 L 57.5 308.12 Z" fill="#82b366" stroke="#82b366" stroke-miterlimit="10" pointer-events="all"/><path d="M 38 331 L 84 331 L 111 353 L 84 375 L 38 375 L 11 353 Z" fill="#d5e8d4" stroke="#82b366" stroke-miterlimit="10" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 382px; margin-left: 61px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">Dependencies</div></div></div></foreignObject><text x="61" y="394" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Dependencies</text></switch></g><path d="M 111 353 L 657.63 353" fill="none" stroke="#82b366" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 662.88 353 L 655.88 356.5 L 657.63 353 L 655.88 349.5 Z" fill="#82b366" stroke="#82b366" stroke-miterlimit="10" pointer-events="all"/><rect x="381" y="351" width="140" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 358px; margin-left: 382px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(251, 251, 251); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">Replace part of checks</span></div></div></div></foreignObject><text x="451" y="370" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Replace part of checks</text></switch></g><path d="M 1104 86.5 C 1106.76 86.5 1109 88.74 1109 91.5 L 1109 113.63 Q 1101 106.65 1093 113.63 Q 1085 120.6 1077 113.63 L 1077 90.38 L 1077 91.5 C 1077 88.74 1079.24 86.5 1082 86.5 Z" fill="#dae8fc" stroke="#6c8ebf" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><path d="M 1104 39.5 C 1106.76 39.5 1109 41.74 1109 44.5 L 1109 66.63 Q 1101 59.65 1093 66.63 Q 1085 73.6 1077 66.63 L 1077 43.38 L 1077 44.5 C 1077 41.74 1079.24 39.5 1082 39.5 Z" fill="#d5e8d4" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/><rect x="1121" y="42" width="156" height="26" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 154px; height: 1px; padding-top: 49px; margin-left: 1123px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;"><span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(251, 251, 251); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">Kconfig config system</span></div></div></div></foreignObject><text x="1123" y="61" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px">Kconfig config system</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg>
\ No newline at end of file