Pull request for efi-2023-10-rc2

Documentation:
 
 * Update the documentation for TI K3 boards (use SVG images)
 * Update doc/sphinx/requirements.txt
 * Describe QEMU emulation of block devices
 
 UEFI
 
 * Fix device paths for special block devices
 -----BEGIN PGP SIGNATURE-----
 
 iQJWBAABCABAFiEEK7wKXt3/btL6/yA+hO4vgnE3U0sFAmTDoQ8iHGhlaW5yaWNo
 LnNjaHVjaGFyZHRAY2Fub25pY2FsLmNvbQAKCRCE7i+CcTdTS+XZEAC+VoP0OETr
 t2xEpL1bluc7a3rv9qWL+abSl/o2klhP816oSXM2EBZAZxGKnrZH731lgnnm9P6y
 OSmy2G/sTBywsc4qZrBK/SOs9mZxdEkSS2aX3YLvcJ0hKY7gD+ApER/gvkWqkPeE
 2X8UxwL5LnrP8iXI3mpFatCFfRV3fSSUoVMMDxnxsvSRaXBQP3cJOlKAFvudc8su
 i8i3UpDtyu/dQh031YRPgdsWtM4xz/S6zV7R23IIrgQBXkzelIo9xtraGSZpe8eP
 KDAxbqhqFxCydfmXnqWPEbNN+vwke9tTlkSFpYk2wFcQxCAMGP9iJ/sH5OlJEmE6
 Vi/l/y9JhK+UV+Tottm8GTlJhdsRatMO52Q77AQA/AdV5NgGcKUA3nPtxEQMRA4C
 98hFF76uXzy7yI6xjyzPDn8jx9AFhhoEUgDw8jeWnEAtChpx4ELFPFTJSjHZu7Kz
 43eL/I+UbT5K2tLbbFsA873CnSMc7ByT3qCuE/xSPgNug2Pl71Gek9Eph2Ptz5Yn
 KxBgVRuF9P0eYnX6sOYbxOummqp/L5PN95OHxOEBBb0/+r/KZoEgQd02Hobb4Cx+
 6C6PzOWez0CZVFR6GKTw3V6Rr7OIsIYQ0oaxNxhFgtBMHgVMgwGQsbbrMmvCERHL
 3aNGg4andFdK/zHZSlHLBTE6MfK6ETfRoA==
 =3DSQ
 -----END PGP SIGNATURE-----

Merge tag 'efi-2023-10-rc2' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request for efi-2023-10-rc2

Documentation:

* Update the documentation for TI K3 boards (use SVG images)
* Update doc/sphinx/requirements.txt
* Describe QEMU emulation of block devices

UEFI

* Fix device paths for special block devices
This commit is contained in:
Tom Rini 2023-07-28 12:48:00 -04:00
commit a36d59ba99
32 changed files with 12015 additions and 998 deletions

View file

@ -606,20 +606,6 @@ failure:
return ret;
}
/**
* bootefi_run_finish() - finish up after running an EFI test
*
* @loaded_image_info: Pointer to a struct which holds the loaded image info
* @image_obj: Pointer to a struct which holds the loaded image object
*/
static void bootefi_run_finish(struct efi_loaded_image_obj *image_obj,
struct efi_loaded_image *loaded_image_info)
{
efi_restore_gd();
free(loaded_image_info->load_options);
efi_delete_handle(&image_obj->header);
}
/**
* do_efi_selftest() - execute EFI selftest
*
@ -638,7 +624,12 @@ static int do_efi_selftest(void)
/* Execute the test */
ret = EFI_CALL(efi_selftest(&image_obj->header, &systab));
bootefi_run_finish(image_obj, loaded_image_info);
efi_restore_gd();
free(loaded_image_info->load_options);
if (ret != EFI_SUCCESS)
efi_delete_handle(&image_obj->header);
else
ret = efi_delete_handle(&image_obj->header);
return ret != EFI_SUCCESS;
}

View file

@ -0,0 +1,38 @@
.. SPDX-License-Identifier: GPL-2.0+
Emulation of block devices
--------------------------
QEMU can emulate common block devices by adding the following parameters to
the qemu-system-<arch> command line:
* MMC
.. code-block:: bash
-device sdhci-pci,sd-spec-version=3 \
-device sd-card,drive=MMC1 \
-drive if=none,file=disk.img,format=raw,id=MMC1
* NVMe
.. code-block:: bash
-drive if=none,file=disk.img,format=raw,id=NVME1 \
-device nvme,drive=NVME1,serial=nvme-1
* SATA
.. code-block:: bash
-device ahci,id=ahci0 \
-drive if=none,file=disk.img,format=raw,id=SATA1 \
-device ide-hd,bus=ahci0.0,drive=SATA1
* USB
.. code-block:: bash
-device qemu-xhci \
-drive if=none,file=disk.img,format=raw,id=USB1 \
-device usb-storage,drive=USB1

View file

@ -4,8 +4,10 @@ Emulation
=========
.. toctree::
:maxdepth: 2
:maxdepth: 1
blkdev
../../usage/semihosting
qemu-arm
qemu-mips
qemu-ppce500

View file

@ -38,138 +38,87 @@ Some highlights of this SoC are:
More details can be found in the Technical Reference Manual:
https://www.ti.com/lit/pdf/spruiv7
Platform information:
* https://www.ti.com/tool/SK-AM62B
Boot Flow:
----------
Below is the pictorial representation of boot flow:
.. code-block:: text
+------------------------------------------------------------------------+
| TIFS | Main R5 | A53 |
+------------------------------------------------------------------------+
| +--------+ | | |
| | Reset | | | |
| +--------+ | | |
| : | | |
| +--------+ | +-----------+ | |
| | *ROM* |----------|-->| Reset rls | | |
| +--------+ | +-----------+ | |
| | | | : | |
| | ROM | | : | |
| |services| | : | |
| | | | +-------------+ | |
| | | | | *R5 ROM* | | |
| | | | +-------------+ | |
| | |<---------|---|Load and auth| | |
| | | | | tiboot3.bin | | |
| +--------+ | +-------------+ | |
| | |<---------|---| Load sysfw | | |
| | | | | part to TIFS| | |
| | | | | core | | |
| | | | +-------------+ | |
| | | | : | |
| | | | : | |
| | | | : | |
| | | | +-------------+ | |
| | | | | *R5 SPL* | | |
| | | | +-------------+ | |
| | | | | DDR | | |
| | | | | config | | |
| | | | +-------------+ | |
| | | | | Load | | |
| | | | | tispl.bin | | |
| | | | +-------------+ | |
| | | | | Load R5 | | |
| | | | | firmware | | |
| | | | +-------------+ | |
| | |<---------|---| Start A53 | | |
| | | | | and jump to | | |
| | | | | DM fw image | | |
| | | | +-------------+ | |
| | | | | +-----------+ |
| | |----------|-----------------------|---->| Reset rls | |
| | | | | +-----------+ |
| | TIFS | | | : |
| |Services| | | +-------------+ |
| | |<---------|-----------------------|---->|*TF-A/OP-TEE*| |
| | | | | +-------------+ |
| | | | | : |
| | | | | +-----------+ |
| | |<---------|-----------------------|---->| *A53 SPL* | |
| | | | | +-----------+ |
| | | | | | Load | |
| | | | | | u-boot.img| |
| | | | | +-----------+ |
| | | | | : |
| | | | | +-----------+ |
| | |<---------|-----------------------|---->| *U-Boot* | |
| | | | | +-----------+ |
| | | | | | prompt | |
| | |----------|-----------------------|-----+-----------+-----|
| +--------+ | | |
| | | |
+------------------------------------------------------------------------+
.. image:: img/boot_diagram_k3_current.svg
- Here TIFS acts as master and provides all the critical services. R5/A53
requests TIFS to get these services done as shown in the above diagram.
Sources:
--------
1. Trusted Firmware-A:
Tree: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/
Branch: master
2. OP-TEE:
Tree: https://github.com/OP-TEE/optee_os.git
Branch: master
3. U-Boot:
Tree: https://source.denx.de/u-boot/u-boot
Branch: master
4. TI Linux Firmware:
Tree: git://git.ti.com/processor-firmware/ti-linux-firmware.git
Branch: ti-linux-firmware
.. include:: k3.rst
:start-after: .. k3_rst_include_start_boot_sources
:end-before: .. k3_rst_include_end_boot_sources
Build procedure:
----------------
1. Trusted Firmware-A:
0. Setup the environment variables:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_common_env_vars_desc
:end-before: .. k3_rst_include_end_common_env_vars_desc
.. include:: k3.rst
:start-after: .. k3_rst_include_start_board_env_vars_desc
:end-before: .. k3_rst_include_end_board_env_vars_desc
Set the variables corresponding to this platform:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_common_env_vars_defn
:end-before: .. k3_rst_include_end_common_env_vars_defn
.. code-block:: bash
$ make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64 PLAT=k3 \
TARGET_BOARD=lite SPD=opteed
$ export UBOOT_CFG_CORTEXR=am62x_evm_r5_defconfig
$ export UBOOT_CFG_CORTEXA=am62x_evm_a53_defconfig
$ export TFA_BOARD=lite
$ # we dont use any extra TFA parameters
$ unset TFA_EXTRA_ARGS
$ export OPTEE_PLATFORM=k3-am62x
$ export OPTEE_EXTRA_ARGS="CFG_WITH_SOFTWARE_PRNG=y"
.. am62x_evm_rst_include_start_build_steps
1. Trusted Firmware-A:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_tfa
:end-before: .. k3_rst_include_end_build_steps_tfa
2. OP-TEE:
.. code-block:: bash
$ make PLATFORM=k3 CFG_ARM64_core=y CROSS_COMPILE=arm-none-linux-gnueabihf- \
CROSS_COMPILE64=aarch64-none-linux-gnu-
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_optee
:end-before: .. k3_rst_include_end_build_steps_optee
3. U-Boot:
* 3.1 R5:
* 4.1 R5:
.. code-block:: bash
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_spl_r5
:end-before: .. k3_rst_include_end_build_steps_spl_r5
$ make ARCH=arm am62x_evm_r5_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabihf- \
BINMAN_INDIRS=<path/to/ti-linux-firmware>
* 4.2 A53:
* 3.2 A53:
.. code-block:: bash
$ make ARCH=arm am62x_evm_a53_defconfig
$ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- \
BL31=<path/to/trusted-firmware-a/dir>/build/k3/lite/release/bl31.bin \
TEE=<path/to/optee_os/dir>/out/arm-plat-k3/core/tee-raw.bin \
BINMAN_INDIRS=<path/to/ti-linux-firmware>
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_uboot
:end-before: .. k3_rst_include_end_build_steps_uboot
.. am62x_evm_rst_include_end_build_steps
Target Images
--------------
Copy the below images to an SD card and boot:
In order to boot we need tiboot3.bin, tispl.bin and u-boot.img. Each SoC
variant (GP, HS-FS, HS-SE) requires a different source for these files.
- GP
@ -189,61 +138,19 @@ Copy the below images to an SD card and boot:
Image formats:
--------------
- tiboot3.bin:
- tiboot3.bin
.. code-block:: text
+-----------------------+
| X.509 |
| Certificate |
| +-------------------+ |
| | | |
| | R5 | |
| | u-boot-spl.bin | |
| | | |
| +-------------------+ |
| | | |
| |TIFS with board cfg| |
| | | |
| +-------------------+ |
| | | |
| | | |
| | FIT header | |
| | +---------------+ | |
| | | | | |
| | | DTB 1...N | | |
| | +---------------+ | |
| +-------------------+ |
+-----------------------+
.. image:: img/multi_cert_tiboot3.bin.svg
- tispl.bin
.. code-block:: text
+-----------------------+
| |
| FIT HEADER |
| +-------------------+ |
| | | |
| | A53 TF-A | |
| +-------------------+ |
| | | |
| | A53 OP-TEE | |
| +-------------------+ |
| | | |
| | R5 DM FW | |
| +-------------------+ |
| | | |
| | A53 SPL | |
| +-------------------+ |
| | | |
| | SPL DTB 1...N | |
| +-------------------+ |
+-----------------------+
.. image:: img/dm_tispl.bin.svg
A53 SPL DDR Memory Layout
-------------------------
.. am62x_evm_rst_include_start_ddr_mem_layout
This provides an overview memory usage in A53 SPL stage.
.. list-table::
@ -297,6 +204,7 @@ This provides an overview memory usage in A53 SPL stage.
* - EMPTY
- 0x80d00400
- 0x81000000
.. am62x_evm_rst_include_end_ddr_mem_layout
Switch Setting for Boot Mode
----------------------------
@ -309,16 +217,32 @@ The following table shows some common boot modes used on AM62 platform. More
details can be found in the Technical Reference Manual:
https://www.ti.com/lit/pdf/spruiv7 under the `Boot Mode Pins` section.
*Boot Modes*
.. list-table:: Boot Modes
:widths: 16 16 16
:header-rows: 1
============ ============= =============
Switch Label SW2: 12345678 SW3: 12345678
============ ============= =============
SD 01000000 11000010
OSPI 00000000 11001110
EMMC 00000000 11010010
UART 00000000 11011100
USB DFU 00000000 11001010
============ ============= =============
* - Switch Label
- SW2: 12345678
- SW3: 12345678
* - SD
- 01000000
- 11000010
* - OSPI
- 00000000
- 11001110
* - EMMC
- 00000000
- 11010010
* - UART
- 00000000
- 11011100
* - USB DFU
- 00000000
- 11001010
For SW2 and SW1, the switch state in the "ON" position = 1.

View file

@ -24,6 +24,10 @@ cores, voltage domains and peripherals:
More info can be found in TRM: http://www.ti.com/lit/pdf/spruid7
Platform information:
* https://www.ti.com/tool/TMDX654GPEVM
Boot Flow:
----------
On AM65x family devices, ROM supports boot only via MCU(R5). This means that
@ -41,136 +45,80 @@ applications. This should happen before running Linux.
3. In production boot flow, we might not like to use full U-Boot,
instead use Falcon boot flow to reduce boot time.
.. code-block:: text
+------------------------------------------------------------------------+
| DMSC | R5 | A53 |
+------------------------------------------------------------------------+
| +--------+ | | |
| | Reset | | | |
| +--------+ | | |
| : | | |
| +--------+ | +-----------+ | |
| | *ROM* |----------|-->| Reset rls | | |
| +--------+ | +-----------+ | |
| | | | : | |
| | ROM | | : | |
| |services| | : | |
| | | | +-------------+ | |
| | | | | *R5 ROM* | | |
| | | | +-------------+ | |
| | |<---------|---|Load and auth| | |
| | | | | tiboot3.bin | | |
| | | | +-------------+ | |
| | | | : | |
| | | | : | |
| | | | : | |
| | | | +-------------+ | |
| | | | | *R5 SPL* | | |
| | | | +-------------+ | |
| | | | | Load | | |
| | | | | sysfw.itb | | |
| | Start | | +-------------+ | |
| | System |<---------|---| Start | | |
| |Firmware| | | SYSFW | | |
| +--------+ | +-------------+ | |
| : | | | | |
| +---------+ | | Load | | |
| | *SYSFW* | | | system | | |
| +---------+ | | Config data | | |
| | |<--------|---| | | |
| | | | +-------------+ | |
| | | | | | | |
| | | | | DDR | | |
| | | | | config | | |
| | | | +-------------+ | |
| | | | | | | |
| | |<--------|---| Start A53 | | |
| | | | | and Reset | | |
| | | | +-------------+ | |
| | | | | +-----------+ |
| | |---------|-----------------------|---->| Reset rls | |
| | | | | +-----------+ |
| | DMSC | | | : |
| |Services | | | +------------+ |
| | |<--------|-----------------------|---->|*ATF/OP-TEE*| |
| | | | | +------------+ |
| | | | | : |
| | | | | +-----------+ |
| | |<--------|-----------------------|---->| *A53 SPL* | |
| | | | | +-----------+ |
| | | | | | Load | |
| | | | | | u-boot.img| |
| | | | | +-----------+ |
| | | | | : |
| | | | | +-----------+ |
| | |<--------|-----------------------|---->| *U-Boot* | |
| | | | | +-----------+ |
| | | | | | prompt | |
| | | | | +-----------+ |
| +---------+ | | |
| | | |
+------------------------------------------------------------------------+
.. image:: img/boot_diagram_am65.svg
- Here DMSC acts as master and provides all the critical services. R5/A53
requests DMSC to get these services done as shown in the above diagram.
Sources:
--------
1. Trusted Firmware-A:
Tree: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/
Branch: master
2. OP-TEE:
Tree: https://github.com/OP-TEE/optee_os.git
Branch: master
3. U-Boot:
Tree: https://source.denx.de/u-boot/u-boot
Branch: master
4. TI Linux Firmware:
Tree: git://git.ti.com/processor-firmware/ti-linux-firmware.git
Branch: ti-linux-firmware
.. include:: k3.rst
:start-after: .. k3_rst_include_start_boot_sources
:end-before: .. k3_rst_include_end_boot_sources
Build procedure:
----------------
1. Trusted Firmware-A:
0. Setup the environment variables:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_common_env_vars_desc
:end-before: .. k3_rst_include_end_common_env_vars_desc
.. include:: k3.rst
:start-after: .. k3_rst_include_start_board_env_vars_desc
:end-before: .. k3_rst_include_end_board_env_vars_desc
Set the variables corresponding to this platform:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_common_env_vars_defn
:end-before: .. k3_rst_include_end_common_env_vars_defn
.. code-block:: bash
$ make CROSS_COMPILE=aarch64-linux-gnu- ARCH=aarch64 PLAT=k3 \
TARGET_BOARD=generic SPD=opteed
$ export UBOOT_CFG_CORTEXR=am65x_evm_r5_defconfig
$ export UBOOT_CFG_CORTEXA=am65x_evm_a53_defconfig
$ export TFA_BOARD=generic
$ # we dont use any extra TFA parameters
$ unset TFA_EXTRA_ARGS
$ export OPTEE_PLATFORM=k3-am65x
$ # we dont use any extra OP-TEE parameters
$ unset OPTEE_EXTRA_ARGS
.. am65x_evm_rst_include_start_build_steps
1. Trusted Firmware-A:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_tfa
:end-before: .. k3_rst_include_end_build_steps_tfa
2. OP-TEE:
.. code-block:: bash
$ make PLATFORM=k3-am65x CFG_ARM64_core=y
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_optee
:end-before: .. k3_rst_include_end_build_steps_optee
3. U-Boot:
* 4.1 R5:
.. code-block:: bash
$ make am65x_evm_r5_defconfig
$ make CROSS_COMPILE=arm-linux-gnueabihf- \
BINMAN_INDIRS=<path/to/ti-linux-firmware>
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_spl_r5
:end-before: .. k3_rst_include_end_build_steps_spl_r5
* 4.2 A53:
.. code-block:: bash
$ make am65x_evm_a53_defconfig
$ make CROSS_COMPILE=aarch64-linux-gnu- \
BL31=<path/to/trusted-firmware-a/dir>/build/k3/generic/release/bl31.bin \
TEE=<path/to/optee_os/dir>/out/arm-plat-k3/core/tee-raw.bin \
BINMAN_INDIRS=<path/to/ti-linux-firmware>
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_uboot
:end-before: .. k3_rst_include_end_build_steps_uboot
.. am65x_evm_rst_include_end_build_steps
Target Images
--------------
Copy the below images to an SD card and boot:
In order to boot we need tiboot3.bin, sysfw.itb, tispl.bin and u-boot.img.
Each SoC variant (GP and HS) requires a different source for these files.
- GP
@ -185,74 +133,17 @@ Copy the below images to an SD card and boot:
Image formats:
--------------
- tiboot3.bin:
- tiboot3.bin
.. code-block:: text
+-----------------------+
| X.509 |
| Certificate |
| +-------------------+ |
| | | |
| | R5 | |
| | u-boot-spl.bin | |
| | | |
| +-------------------+ |
| | | |
| | FIT header | |
| | +---------------+ | |
| | | | | |
| | | DTB 1...N | | |
| | +---------------+ | |
| +-------------------+ |
+-----------------------+
.. image:: img/no_multi_cert_tiboot3.bin.svg
- tispl.bin
.. code-block:: text
+-----------------------+
| |
| FIT HEADER |
| +-------------------+ |
| | | |
| | A53 ATF | |
| +-------------------+ |
| | | |
| | A53 OP-TEE | |
| +-------------------+ |
| | | |
| | A53 SPL | |
| +-------------------+ |
| | | |
| | SPL DTB 1...N | |
| +-------------------+ |
+-----------------------+
.. image:: img/nodm_tispl.bin.svg
- sysfw.itb
.. code-block:: text
+-----------------------+
| |
| FIT HEADER |
| +-------------------+ |
| | | |
| | sysfw.bin | |
| +-------------------+ |
| | | |
| | board config | |
| +-------------------+ |
| | | |
| | PM config | |
| +-------------------+ |
| | | |
| | RM config | |
| +-------------------+ |
| | | |
| | Secure config | |
| +-------------------+ |
+-----------------------+
.. image:: img/sysfw.itb.svg
eMMC:
-----
@ -293,22 +184,7 @@ used:
eMMC layout:
.. code-block:: text
boot0 partition (8 MB) user partition
0x0+----------------------------------+ 0x0+-------------------------+
| tiboot3.bin (512 KB) | | |
0x400+----------------------------------+ | |
| tispl.bin (2 MB) | | |
0x1400+----------------------------------+ | rootfs |
| u-boot.img (4 MB) | | |
0x3400+----------------------------------+ | |
| environment (128 KB) | | |
0x3500+----------------------------------+ | |
| backup environment (128 KB) | | |
0x3600+----------------------------------+ | |
| sysfw (1 MB) | | |
0x3E00+----------------------------------+ +-------------------------+
.. image:: img/emmc_am65x_evm_boot0.svg
Kernel image and DT are expected to be present in the /boot folder of rootfs.
To boot kernel from eMMC, use the following commands:
@ -343,32 +219,7 @@ addresses.
Flash layout for OSPI:
.. code-block:: text
0x0 +----------------------------+
| ospi.tiboot3(512K) |
| |
0x80000 +----------------------------+
| ospi.tispl(2M) |
| |
0x280000 +----------------------------+
| ospi.u-boot(4M) |
| |
0x680000 +----------------------------+
| ospi.env(128K) |
| |
0x6A0000 +----------------------------+
| ospi.env.backup (128K) |
| |
0x6C0000 +----------------------------+
| ospi.sysfw(1M) |
| |
0x7C0000 +----------------------------+
| padding (256k) |
0x800000 +----------------------------+
| ospi.rootfs(UBIFS) |
| |
+----------------------------+
.. image:: img/ospi_sysfw.svg
Kernel Image and DT are expected to be present in the /boot folder of UBIFS
ospi.rootfs just like in SD card case. U-Boot looks for UBI volume named
@ -387,16 +238,34 @@ ROM supports booting from MCU_UART0 via X-Modem protocol. The entire UART-based
boot process up to U-Boot (proper) prompt goes through different stages and uses
different UART peripherals as follows:
.. code-block:: text
.. list-table:: ROM UART Boot Responsibilities
:widths: 16 16 16 16
:header-rows: 1
+---------+---------------+-------------+------------+
| WHO | Loading WHAT | HW Module | Protocol |
+---------+---------------+-------------+------------+
|Boot ROM | tiboot3.bin | MCU_UART0 | X-Modem(*)|
|R5 SPL | sysfw.itb | MCU_UART0 | Y-Modem(*)|
|R5 SPL | tispl.bin | MAIN_UART0 | Y-Modem |
|A53 SPL | u-boot.img | MAIN_UART0 | Y-Modem |
+---------+---------------+-------------+------------+
* - Who
- Loading What
- Hardware Module
- Protocol
* - Boot ROM
- tiboot3.bin
- MCU_UART0
- X-Modem(*)
* - R5 SPL
- sysfw.itb
- MCU_UART0
- Y-Modem(*)
* - R5 SPL
- tispl.bin
- MAIN_UART0
- Y-Modem
* - A53 SPL
- u-boot.img
- MAIN_UART0
- Y-Modem
Note that in addition to X/Y-Modem related protocol timeouts the DMSC
watchdog timeout of 3min (typ.) needs to be observed until System Firmware

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 60 KiB

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 68 KiB

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 65 KiB

View file

@ -0,0 +1,220 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="296px"
height="302px"
viewBox="-0.5 -0.5 296 302"
id="svg50"
sodipodi:docname="boot_flow_01.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview52"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.2582781"
inkscape:cx="144.35777"
inkscape:cy="151"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg50" />
<defs
id="defs2" />
<g
id="g40">
<path
d="M 0 23 L 0 0 L 295 0 L 295 23"
fill="#ffe6cc"
stroke="#d79b00"
stroke-miterlimit="10"
pointer-events="all"
id="path4" />
<path
d="M 0 23 L 0 300 L 295 300 L 295 23"
fill="none"
stroke="#d79b00"
stroke-miterlimit="10"
pointer-events="none"
id="path6" />
<path
d="M 0 23 L 295 23"
fill="none"
stroke="#d79b00"
stroke-miterlimit="10"
pointer-events="none"
id="path8" />
<g
transform="translate(-0.5 -0.5)"
id="g14">
<switch
id="switch12">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 293px; height: 1px; padding-top: 12px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">WKUP Domain</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="148"
y="15"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
font-weight="bold"
id="text10">WKUP Domain</text>
</switch>
</g>
<rect
x="25"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect16" />
<path
d="M 75 90 L 75 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path18" />
<g
transform="translate(-0.5 -0.5)"
id="g24">
<switch
id="switch22">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 26px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">ROM</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="75"
y="74"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text20">ROM</text>
</switch>
</g>
<rect
x="165"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect26" />
<path
d="M 215 90 L 215 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path28" />
<g
transform="translate(-0.5 -0.5)"
id="g34">
<switch
id="switch32">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 166px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">WKUP SPL</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="215"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text30">WKUP SPL</text>
</switch>
</g>
<path
d="M 74.67 130 L 150 130 L 208.13 130"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path36" />
<path
d="M 213.38 130 L 206.38 133.5 L 208.13 130 L 206.38 126.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path38" />
</g>
<switch
id="switch48">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g42" />
<a
transform="translate(0,-5)"
xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems"
target="_blank"
id="a46">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text44">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 6.9 KiB

View file

@ -0,0 +1,459 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="751px"
height="301px"
viewBox="-0.5 -0.5 751 301"
id="svg104"
sodipodi:docname="boot_flow_02.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview106"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="1.4993342"
inkscape:cx="370.1643"
inkscape:cy="150.73357"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg104" />
<defs
id="defs2" />
<g
id="g94">
<path
d="M 0 23 L 0 0 L 295 0 L 295 23"
fill="#ffe6cc"
stroke="#d79b00"
stroke-miterlimit="10"
pointer-events="all"
id="path4" />
<path
d="M 0 23 L 0 300 L 295 300 L 295 23"
fill="none"
stroke="#d79b00"
stroke-miterlimit="10"
pointer-events="none"
id="path6" />
<path
d="M 0 23 L 295 23"
fill="none"
stroke="#d79b00"
stroke-miterlimit="10"
pointer-events="none"
id="path8" />
<g
transform="translate(-0.5 -0.5)"
id="g14">
<switch
id="switch12">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 293px; height: 1px; padding-top: 12px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">WKUP Domain</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="148"
y="15"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
font-weight="bold"
id="text10">WKUP Domain</text>
</switch>
</g>
<rect
x="25"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect16" />
<path
d="M 75 90 L 75 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path18" />
<g
transform="translate(-0.5 -0.5)"
id="g24">
<switch
id="switch22">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 26px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">ROM</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="75"
y="74"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text20">ROM</text>
</switch>
</g>
<rect
x="165"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect26" />
<path
d="M 215 90 L 215 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path28" />
<g
transform="translate(-0.5 -0.5)"
id="g34">
<switch
id="switch32">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 166px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">WKUP SPL</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="215"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text30">WKUP SPL</text>
</switch>
</g>
<path
d="M 74.5 130 L 150 130 L 208.13 130"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path36" />
<path
d="M 213.38 130 L 206.38 133.5 L 208.13 130 L 206.38 126.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path38" />
<path
d="M 310 23 L 310 0 L 750 0 L 750 23"
fill="#d5e8d4"
stroke="#82b366"
stroke-miterlimit="10"
pointer-events="none"
id="path40" />
<path
d="M 310 23 L 310 300 L 750 300 L 750 23"
fill="none"
stroke="#82b366"
stroke-miterlimit="10"
pointer-events="none"
id="path42" />
<path
d="M 310 23 L 750 23"
fill="none"
stroke="#82b366"
stroke-miterlimit="10"
pointer-events="none"
id="path44" />
<g
transform="translate(-0.5 -0.5)"
id="g50">
<switch
id="switch48">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 438px; height: 1px; padding-top: 12px; margin-left: 311px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">Main Domain</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="530"
y="15"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
font-weight="bold"
id="text46">Main Domain</text>
</switch>
</g>
<rect
x="335"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect52" />
<path
d="M 385 90 L 385 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path54" />
<g
transform="translate(-0.5 -0.5)"
id="g60">
<switch
id="switch58">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 336px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">TF-A</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="385"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text56">TF-A</text>
</switch>
</g>
<rect
x="475"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect62" />
<path
d="M 525 90 L 525 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path64" />
<g
transform="translate(-0.5 -0.5)"
id="g70">
<switch
id="switch68">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 476px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">OP-TEE</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="525"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text66">OP-TEE</text>
</switch>
</g>
<path
d="M 384.5 180 L 420 180 L 518.13 180"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path72" />
<path
d="M 523.38 180 L 516.38 183.5 L 518.13 180 L 516.38 176.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path74" />
<rect
x="620"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect76" />
<path
d="M 670 90 L 670 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path78" />
<g
transform="translate(-0.5 -0.5)"
id="g84">
<switch
id="switch82">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 621px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">Main SPL</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="670"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text80">Main SPL</text>
</switch>
</g>
<path
d="M 524.5 201 L 565.5 201 L 663.13 201"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path86" />
<path
d="M 668.38 201 L 661.38 204.5 L 663.13 201 L 661.38 197.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path88" />
<path
d="M 214.5 160 L 315.5 160 L 378.13 160"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path90" />
<path
d="M 383.38 160 L 376.38 163.5 L 378.13 160 L 376.38 156.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path92" />
</g>
<switch
id="switch102">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g96" />
<a
transform="translate(0,-5)"
xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems"
target="_blank"
id="a100">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text98">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 15 KiB

View file

@ -0,0 +1,583 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="1031px"
height="301px"
viewBox="-0.5 -0.5 1031 301"
id="svg132"
sodipodi:docname="boot_flow_03.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview134"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="1.0921435"
inkscape:cx="508.17496"
inkscape:cy="150.16341"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg132" />
<defs
id="defs2" />
<g
id="g122">
<path
d="M 0 23 L 0 0 L 295 0 L 295 23"
fill="#ffe6cc"
stroke="#d79b00"
stroke-miterlimit="10"
pointer-events="all"
id="path4" />
<path
d="M 0 23 L 0 300 L 295 300 L 295 23"
fill="none"
stroke="#d79b00"
stroke-miterlimit="10"
pointer-events="none"
id="path6" />
<path
d="M 0 23 L 295 23"
fill="none"
stroke="#d79b00"
stroke-miterlimit="10"
pointer-events="none"
id="path8" />
<g
transform="translate(-0.5 -0.5)"
id="g14">
<switch
id="switch12">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 293px; height: 1px; padding-top: 12px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">WKUP Domain</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="148"
y="15"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
font-weight="bold"
id="text10">WKUP Domain</text>
</switch>
</g>
<rect
x="25"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect16" />
<path
d="M 75 90 L 75 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path18" />
<g
transform="translate(-0.5 -0.5)"
id="g24">
<switch
id="switch22">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 26px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">ROM</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="75"
y="74"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text20">ROM</text>
</switch>
</g>
<rect
x="165"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect26" />
<path
d="M 215 90 L 215 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path28" />
<g
transform="translate(-0.5 -0.5)"
id="g34">
<switch
id="switch32">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 166px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">WKUP SPL</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="215"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text30">WKUP SPL</text>
</switch>
</g>
<path
d="M 74.5 130 L 150 130 L 208.13 130"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path36" />
<path
d="M 213.38 130 L 206.38 133.5 L 208.13 130 L 206.38 126.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path38" />
<path
d="M 310 23 L 310 0 L 1030 0 L 1030 23"
fill="#d5e8d4"
stroke="#82b366"
stroke-miterlimit="10"
pointer-events="none"
id="path40" />
<path
d="M 310 23 L 310 300 L 1030 300 L 1030 23"
fill="none"
stroke="#82b366"
stroke-miterlimit="10"
pointer-events="none"
id="path42" />
<path
d="M 310 23 L 1030 23"
fill="none"
stroke="#82b366"
stroke-miterlimit="10"
pointer-events="none"
id="path44" />
<g
transform="translate(-0.5 -0.5)"
id="g50">
<switch
id="switch48">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 718px; height: 1px; padding-top: 12px; margin-left: 311px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">Main Domain</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="670"
y="15"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
font-weight="bold"
id="text46">Main Domain</text>
</switch>
</g>
<rect
x="335"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect52" />
<path
d="M 385 90 L 385 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path54" />
<g
transform="translate(-0.5 -0.5)"
id="g60">
<switch
id="switch58">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 336px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">TF-A</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="385"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text56">TF-A</text>
</switch>
</g>
<rect
x="475"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect62" />
<path
d="M 525 90 L 525 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path64" />
<g
transform="translate(-0.5 -0.5)"
id="g70">
<switch
id="switch68">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 476px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">OP-TEE</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="525"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text66">OP-TEE</text>
</switch>
</g>
<path
d="M 384.5 180 L 420 180 L 518.13 180"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path72" />
<path
d="M 523.38 180 L 516.38 183.5 L 518.13 180 L 516.38 176.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path74" />
<rect
x="620"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect76" />
<path
d="M 670 90 L 670 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path78" />
<g
transform="translate(-0.5 -0.5)"
id="g84">
<switch
id="switch82">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 621px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">Main SPL</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="670"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text80">Main SPL</text>
</switch>
</g>
<path
d="M 524.5 201 L 565.5 201 L 663.13 201"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path86" />
<path
d="M 668.38 201 L 661.38 204.5 L 663.13 201 L 661.38 197.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path88" />
<rect
x="765"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect90" />
<path
d="M 815 90 L 815 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path92" />
<g
transform="translate(-0.5 -0.5)"
id="g98">
<switch
id="switch96">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 766px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">U-Boot</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="815"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text94">U-Boot</text>
</switch>
</g>
<rect
x="900"
y="50"
width="100"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="none"
id="rect100" />
<path
d="M 950 90 L 950 280"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
stroke-dasharray="3 3"
pointer-events="none"
id="path102" />
<g
transform="translate(-0.5 -0.5)"
id="g108">
<switch
id="switch106">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 70px; margin-left: 901px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">Linux</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="950"
y="74"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text104">Linux</text>
</switch>
</g>
<path
d="M 669.5 220 L 711 220 L 808.13 220"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path110" />
<path
d="M 813.38 220 L 806.38 223.5 L 808.13 220 L 806.38 216.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path112" />
<path
d="M 814.5 240 L 851.5 240 L 943.13 240"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path114" />
<path
d="M 948.38 240 L 941.38 243.5 L 943.13 240 L 941.38 236.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path116" />
<path
d="M 214.5 160 L 315.5 160 L 378.13 160"
fill="none"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path118" />
<path
d="M 383.38 160 L 376.38 163.5 L 378.13 160 L 376.38 156.5 Z"
fill="rgb(0, 0, 0)"
stroke="rgb(0, 0, 0)"
stroke-miterlimit="10"
pointer-events="none"
id="path120" />
</g>
<switch
id="switch130">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g124" />
<a
transform="translate(0,-5)"
xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems"
target="_blank"
id="a128">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text126">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 19 KiB

View file

@ -0,0 +1,317 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="231px"
height="321px"
viewBox="-0.5 -0.5 231 321"
id="svg66"
sodipodi:docname="dm_tispl.bin.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview68"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.1246106"
inkscape:cx="111.54985"
inkscape:cy="160.5"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg66" />
<defs
id="defs2" />
<g
id="g56">
<rect
x="0"
y="0"
width="230"
height="320"
rx="34.5"
ry="34.5"
fill="#d5e8d4"
stroke="#82b366"
pointer-events="all"
id="rect4" />
<rect
x="40"
y="30"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect6" />
<g
transform="translate(-0.5 -0.5)"
id="g12">
<switch
id="switch10">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 60px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">FIT Header</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="64"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text8">FIT Header</text>
</switch>
</g>
<rect
x="40"
y="90"
width="160"
height="190"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect14" />
<rect
x="40"
y="90"
width="160"
height="30"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect16" />
<g
transform="translate(-0.5 -0.5)"
id="g22">
<switch
id="switch20">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 105px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">TF-A</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="109"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text18">TF-A</text>
</switch>
</g>
<rect
x="40"
y="120"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect24" />
<g
transform="translate(-0.5 -0.5)"
id="g30">
<switch
id="switch28">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 140px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">OP-TEE</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="144"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text26">OP-TEE</text>
</switch>
</g>
<rect
x="40"
y="160"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect32" />
<g
transform="translate(-0.5 -0.5)"
id="g38">
<switch
id="switch36">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 180px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">R5 DM FW</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="184"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text34">R5 DM FW</text>
</switch>
</g>
<rect
x="40"
y="200"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect40" />
<g
transform="translate(-0.5 -0.5)"
id="g46">
<switch
id="switch44">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 220px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">Cortex-A SPL</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="224"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text42">Cortex-A SPL</text>
</switch>
</g>
<rect
x="40"
y="240"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect48" />
<g
transform="translate(-0.5 -0.5)"
id="g54">
<switch
id="switch52">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 260px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">SPL DTB 1..N</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="264"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text50">SPL DTB 1..N</text>
</switch>
</g>
</g>
<switch
id="switch64">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g58" />
<a
transform="translate(0,-5)"
xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems"
target="_blank"
id="a62">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text60">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 10 KiB

View file

@ -0,0 +1,748 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="570px"
height="305px"
viewBox="-0.5 -0.5 570 305"
id="svg144"
sodipodi:docname="emmc_am65x_evm_boot0.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview146"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="1.9754386"
inkscape:cx="280.95027"
inkscape:cy="152.37123"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg144" />
<defs
id="defs2" />
<g
id="g134">
<rect
x="99"
y="30"
width="200"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect4" />
<g
transform="translate(-0.5 -0.5)"
id="g10">
<switch
id="switch8">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 50px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">tiboot3.bin (512KB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="54"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text6">tiboot3.bin (512KB)</text>
</switch>
</g>
<rect
x="39"
y="17"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect12" />
<g
transform="translate(-0.5 -0.5)"
id="g18">
<switch
id="switch16">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 32px; margin-left: 40px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x0</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="69"
y="36"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text14">0x0</text>
</switch>
</g>
<rect
x="99"
y="70"
width="200"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect20" />
<g
transform="translate(-0.5 -0.5)"
id="g26">
<switch
id="switch24">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 90px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">tispl.bin (2MB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="94"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text22">tispl.bin (2MB)</text>
</switch>
</g>
<rect
x="0"
y="57"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect28" />
<g
transform="translate(-0.5 -0.5)"
id="g34">
<switch
id="switch32">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 72px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x400</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="76"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text30">0x400</text>
</switch>
</g>
<rect
x="99"
y="110"
width="200"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect36" />
<g
transform="translate(-0.5 -0.5)"
id="g42">
<switch
id="switch40">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 130px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">U-boot.img (4MB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="134"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text38">U-boot.img (4MB)</text>
</switch>
</g>
<rect
x="0"
y="97"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect44" />
<g
transform="translate(-0.5 -0.5)"
id="g50">
<switch
id="switch48">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 112px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x1400</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="116"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text46">0x1400</text>
</switch>
</g>
<rect
x="99"
y="150"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect52" />
<g
transform="translate(-0.5 -0.5)"
id="g58">
<switch
id="switch56">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 170px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">environment (128KB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="174"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text54">environment (128KB)</text>
</switch>
</g>
<rect
x="0"
y="137"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect60" />
<g
transform="translate(-0.5 -0.5)"
id="g66">
<switch
id="switch64">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 152px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x3400</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="156"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text62">0x3400</text>
</switch>
</g>
<rect
x="99"
y="190"
width="200"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect68" />
<g
transform="translate(-0.5 -0.5)"
id="g74">
<switch
id="switch72">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 210px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">backup environment (128KB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="214"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text70">backup environment (128KB)</text>
</switch>
</g>
<rect
x="0"
y="177"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect76" />
<g
transform="translate(-0.5 -0.5)"
id="g82">
<switch
id="switch80">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 192px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x3500</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="196"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text78">0x3500</text>
</switch>
</g>
<rect
x="99"
y="230"
width="200"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect84" />
<g
transform="translate(-0.5 -0.5)"
id="g90">
<switch
id="switch88">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 250px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">Sysfw (1MB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="254"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text86">Sysfw (1MB)</text>
</switch>
</g>
<rect
x="0"
y="217"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect92" />
<g
transform="translate(-0.5 -0.5)"
id="g98">
<switch
id="switch96">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 232px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x3600</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="236"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text94">0x3600</text>
</switch>
</g>
<rect
x="0"
y="257"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect100" />
<g
transform="translate(-0.5 -0.5)"
id="g106">
<switch
id="switch104">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 272px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x3E00</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="276"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text102">0x3E00</text>
</switch>
</g>
<rect
x="369"
y="30"
width="200"
height="240"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect108" />
<rect
x="389"
y="0"
width="160"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect110" />
<g
transform="translate(-0.5 -0.5)"
id="g116">
<switch
id="switch114">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 15px; margin-left: 390px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">UDA Partition</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="469"
y="19"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text112">UDA Partition</text>
</switch>
</g>
<rect
x="119"
y="0"
width="160"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect118" />
<g
transform="translate(-0.5 -0.5)"
id="g124">
<switch
id="switch122">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 15px; margin-left: 120px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">Boot0 partition (8MB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="19"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text120">Boot0 partition (8MB)</text>
</switch>
</g>
<rect
x="439"
y="137"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect126" />
<g
transform="translate(-0.5 -0.5)"
id="g132">
<switch
id="switch130">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 152px; margin-left: 440px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">rootfs</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="469"
y="156"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text128">rootfs</text>
</switch>
</g>
</g>
<switch
id="switch142">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g136" />
<a
transform="translate(0,-5)"
xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems"
target="_blank"
id="a140">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text138">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 29 KiB

View file

@ -0,0 +1,662 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="570px"
height="265px"
viewBox="-0.5 -0.5 570 265"
id="svg128"
sodipodi:docname="emmc_j7200_evm_boot01.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview130"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="1.9754386"
inkscape:cx="280.95027"
inkscape:cy="132.62877"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg128" />
<defs
id="defs2" />
<g
id="g118">
<rect
x="99"
y="30"
width="200"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect4" />
<g
transform="translate(-0.5 -0.5)"
id="g10">
<switch
id="switch8">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 50px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">tiboot3.bin (1MB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="54"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text6">tiboot3.bin (1MB)</text>
</switch>
</g>
<rect
x="30"
y="20"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect12" />
<g
transform="translate(-0.5 -0.5)"
id="g18">
<switch
id="switch16">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 35px; margin-left: 31px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x0</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="39"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text14">0x0</text>
</switch>
</g>
<rect
x="99"
y="70"
width="200"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect20" />
<g
transform="translate(-0.5 -0.5)"
id="g26">
<switch
id="switch24">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 90px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">tispl.bin (2MB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="94"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text22">tispl.bin (2MB)</text>
</switch>
</g>
<rect
x="0"
y="57"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect28" />
<g
transform="translate(-0.5 -0.5)"
id="g34">
<switch
id="switch32">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 72px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x800</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="76"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text30">0x800</text>
</switch>
</g>
<rect
x="99"
y="110"
width="200"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect36" />
<g
transform="translate(-0.5 -0.5)"
id="g42">
<switch
id="switch40">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 130px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">U-boot.img (4MB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="134"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text38">U-boot.img (4MB)</text>
</switch>
</g>
<rect
x="0"
y="97"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect44" />
<g
transform="translate(-0.5 -0.5)"
id="g50">
<switch
id="switch48">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 112px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x1800</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="116"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text46">0x1800</text>
</switch>
</g>
<rect
x="99"
y="150"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect52" />
<g
transform="translate(-0.5 -0.5)"
id="g58">
<switch
id="switch56">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 170px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">environment (128KB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="174"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text54">environment (128KB)</text>
</switch>
</g>
<rect
x="0"
y="137"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect60" />
<g
transform="translate(-0.5 -0.5)"
id="g66">
<switch
id="switch64">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 152px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x3800</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="156"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text62">0x3800</text>
</switch>
</g>
<rect
x="99"
y="190"
width="200"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect68" />
<g
transform="translate(-0.5 -0.5)"
id="g74">
<switch
id="switch72">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 210px; margin-left: 100px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">backup environment (128KB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="214"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text70">backup environment (128KB)</text>
</switch>
</g>
<rect
x="0"
y="177"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect76" />
<g
transform="translate(-0.5 -0.5)"
id="g82">
<switch
id="switch80">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 192px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x3900</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="196"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text78">0x3900</text>
</switch>
</g>
<rect
x="0"
y="217"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect84" />
<g
transform="translate(-0.5 -0.5)"
id="g90">
<switch
id="switch88">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 232px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x3A00</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="236"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text86">0x3A00</text>
</switch>
</g>
<rect
x="369"
y="30"
width="200"
height="200"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect92" />
<rect
x="389"
y="0"
width="160"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect94" />
<g
transform="translate(-0.5 -0.5)"
id="g100">
<switch
id="switch98">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 15px; margin-left: 390px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">UDA Partition</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="469"
y="19"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text96">UDA Partition</text>
</switch>
</g>
<rect
x="119"
y="0"
width="160"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect102" />
<g
transform="translate(-0.5 -0.5)"
id="g108">
<switch
id="switch106">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 15px; margin-left: 120px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">Boot0/1 partition (8MB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="199"
y="19"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text104">Boot0/1 partition (8MB)</text>
</switch>
</g>
<rect
x="439"
y="137"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect110" />
<g
transform="translate(-0.5 -0.5)"
id="g116">
<switch
id="switch114">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 152px; margin-left: 440px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">rootfs</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="469"
y="156"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text112">rootfs</text>
</switch>
</g>
</g>
<switch
id="switch126">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g120" />
<a
transform="translate(0,-5)"
xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems"
target="_blank"
id="a124">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text122">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 25 KiB

View file

@ -0,0 +1,505 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="571px"
height="265px"
viewBox="-0.5 -0.5 571 265"
id="svg102"
sodipodi:docname="emmc_j7200_evm_udafs.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview104"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="1.971979"
inkscape:cx="281.44316"
inkscape:cy="132.35435"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg102" />
<defs
id="defs2" />
<g
id="g92">
<rect
x="40"
y="17"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect4" />
<g
transform="translate(-0.5 -0.5)"
id="g10">
<switch
id="switch8">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 32px; margin-left: 41px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x0</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="70"
y="36"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text6">0x0</text>
</switch>
</g>
<rect
x="0"
y="217"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect12" />
<g
transform="translate(-0.5 -0.5)"
id="g18">
<switch
id="switch16">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 232px; margin-left: 1px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64);">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto;">0x3A00</xhtml:pre>
</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="236"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text14">0x3A00</text>
</switch>
</g>
<rect
x="370"
y="30"
width="200"
height="200"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect20" />
<rect
x="390"
y="0"
width="160"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect22" />
<g
transform="translate(-0.5 -0.5)"
id="g28">
<switch
id="switch26">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 15px; margin-left: 391px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">UDA Partition</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="470"
y="19"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text24">UDA Partition</text>
</switch>
</g>
<rect
x="120"
y="0"
width="160"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect30" />
<g
transform="translate(-0.5 -0.5)"
id="g36">
<switch
id="switch34">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 15px; margin-left: 121px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">Boot0/1 partition (8MB)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="200"
y="19"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text32">Boot0/1 partition (8MB)</text>
</switch>
</g>
<rect
x="370"
y="37"
width="190"
height="113"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect38" />
<rect
x="370"
y="150"
width="190"
height="80"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect40" />
<rect
x="500"
y="200"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect42" />
<g
transform="translate(-0.5 -0.5)"
id="g48">
<switch
id="switch46">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 215px; margin-left: 501px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">rootfs</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="530"
y="219"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text44">rootfs</text>
</switch>
</g>
<rect
x="500"
y="120"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect50" />
<g
transform="translate(-0.5 -0.5)"
id="g56">
<switch
id="switch54">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 135px; margin-left: 501px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">boot</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="530"
y="139"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text52">boot</text>
</switch>
</g>
<rect
x="100"
y="30"
width="200"
height="200"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect58" />
<rect
x="420"
y="37"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect60" />
<g
transform="translate(-0.5 -0.5)"
id="g66">
<switch
id="switch64">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 52px; margin-left: 421px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">tiboot3.bin*</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="450"
y="56"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text62">tiboot3.bi...</text>
</switch>
</g>
<rect
x="412"
y="61"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect68" />
<g
transform="translate(-0.5 -0.5)"
id="g74">
<switch
id="switch72">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 76px; margin-left: 413px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">tispl.bin</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="442"
y="80"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text70">tispl.bin</text>
</switch>
</g>
<rect
x="420"
y="90"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect76" />
<g
transform="translate(-0.5 -0.5)"
id="g82">
<switch
id="switch80">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 105px; margin-left: 421px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">u-boot.img</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="450"
y="109"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text78">u-boot.img</text>
</switch>
</g>
<rect
x="423"
y="115"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect84" />
<g
transform="translate(-0.5 -0.5)"
id="g90">
<switch
id="switch88">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 130px; margin-left: 424px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">environment</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="453"
y="134"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text86">environment</text>
</switch>
</g>
</g>
<switch
id="switch100">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g94" />
<a
transform="translate(0,-5)"
xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems"
target="_blank"
id="a98">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text96">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,447 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="231px"
height="401px"
viewBox="-0.5 -0.5 231 401"
id="svg92"
sodipodi:docname="j7200_tiboot3.bin.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview94"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="1.7007481"
inkscape:cx="110.53959"
inkscape:cy="200.5"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg92" />
<defs
id="defs2" />
<g
id="g82">
<rect
x="0"
y="0"
width="230"
height="400"
rx="34.5"
ry="34.5"
fill="#ffe6cc"
stroke="#d79b00"
pointer-events="all"
id="rect4" />
<rect
x="80"
y="6"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect6" />
<g
transform="translate(-0.5 -0.5)"
id="g12">
<switch
id="switch10">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 21px; margin-left: 81px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">X.509 Certificate</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="110"
y="25"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text8">X.509 Cert...</text>
</switch>
</g>
<rect
x="40"
y="50"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect14" />
<g
transform="translate(-0.5 -0.5)"
id="g20">
<switch
id="switch18">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 80px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">R5<xhtml:br />
u-boot-spl.bin</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="84"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text16">R5...</text>
</switch>
</g>
<rect
x="40"
y="110"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect22" />
<rect
x="60"
y="110"
width="140"
height="30"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect24" />
<g
transform="translate(-0.5 -0.5)"
id="g30">
<switch
id="switch28">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 125px; margin-left: 61px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">FIT Header</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="130"
y="129"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text26">FIT Header</text>
</switch>
</g>
<rect
x="60"
y="140"
width="140"
height="30"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect32" />
<g
transform="translate(-0.5 -0.5)"
id="g38">
<switch
id="switch36">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 155px; margin-left: 61px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">DTB 1..N</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="130"
y="159"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text34">DTB 1..N</text>
</switch>
</g>
<rect
x="40"
y="170"
width="160"
height="200"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect40" />
<rect
x="40"
y="170"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect42" />
<g
transform="translate(-0.5 -0.5)"
id="g48">
<switch
id="switch46">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 190px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">sysfw.bin</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="194"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text44">sysfw.bin</text>
</switch>
</g>
<rect
x="40"
y="210"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect50" />
<g
transform="translate(-0.5 -0.5)"
id="g56">
<switch
id="switch54">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 230px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">board config</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="234"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text52">board config</text>
</switch>
</g>
<rect
x="40"
y="250"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect58" />
<g
transform="translate(-0.5 -0.5)"
id="g64">
<switch
id="switch62">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 270px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">PM config</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="274"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text60">PM config</text>
</switch>
</g>
<rect
x="40"
y="290"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect66" />
<g
transform="translate(-0.5 -0.5)"
id="g72">
<switch
id="switch70">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 310px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">RM config</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="314"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text68">RM config</text>
</switch>
</g>
<rect
x="40"
y="330"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect74" />
<g
transform="translate(-0.5 -0.5)"
id="g80">
<switch
id="switch78">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 350px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">Secure config</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="354"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text76">Secure config</text>
</switch>
</g>
</g>
<switch
id="switch90">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g84" />
<a
transform="translate(0,-5)"
xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems"
target="_blank"
id="a88">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text86">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 15 KiB

View file

@ -0,0 +1,287 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="231px"
height="251px"
viewBox="-0.5 -0.5 231 251"
id="svg60"
sodipodi:docname="multi_cert_tiboot3.bin.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview62"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.7171315"
inkscape:cx="112.61877"
inkscape:cy="125.5"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg60" />
<defs
id="defs2" />
<g
id="g50">
<rect
x="0"
y="0"
width="230"
height="250"
rx="34.5"
ry="34.5"
fill="#ffe6cc"
stroke="#d79b00"
pointer-events="all"
id="rect4" />
<rect
x="80"
y="6"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect6" />
<g
transform="translate(-0.5 -0.5)"
id="g12">
<switch
id="switch10">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 21px; margin-left: 81px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">X.509 Certificate</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="110"
y="25"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text8">X.509 Cert...</text>
</switch>
</g>
<rect
x="40"
y="50"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect14" />
<g
transform="translate(-0.5 -0.5)"
id="g20">
<switch
id="switch18">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 80px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">R5<xhtml:br />
u-boot-spl.bin</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="84"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text16">R5...</text>
</switch>
</g>
<rect
x="40"
y="110"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect22" />
<rect
x="60"
y="140"
width="140"
height="30"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect24" />
<g
transform="translate(-0.5 -0.5)"
id="g30">
<switch
id="switch28">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 155px; margin-left: 61px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">DTB 1..N</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="130"
y="159"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text26">DTB 1..N</text>
</switch>
</g>
<rect
x="40"
y="170"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect32" />
<rect
x="60"
y="110"
width="140"
height="30"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect34" />
<g
transform="translate(-0.5 -0.5)"
id="g40">
<switch
id="switch38">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 125px; margin-left: 61px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">FIT Header</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="130"
y="129"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text36">FIT Header</text>
</switch>
</g>
<rect
x="40"
y="170"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect42" />
<g
transform="translate(-0.5 -0.5)"
id="g48">
<switch
id="switch46">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 200px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">TIFS with board cfg</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="204"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text44">TIFS with board cfg</text>
</switch>
</g>
</g>
<switch
id="switch58">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g52" />
<a
transform="translate(0,-5)"
xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems"
target="_blank"
id="a56">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text54">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 9.1 KiB

View file

@ -0,0 +1,238 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="231px"
height="201px"
viewBox="-0.5 -0.5 231 201"
id="svg50"
sodipodi:docname="no_multi_cert_tiboot3.bin.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview52"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="3.3930348"
inkscape:cx="113.17302"
inkscape:cy="100.5"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg50" />
<defs
id="defs2" />
<g
id="g40">
<rect
x="0"
y="0"
width="230"
height="200"
rx="30"
ry="30"
fill="#ffe6cc"
stroke="#d79b00"
pointer-events="all"
id="rect4" />
<rect
x="80"
y="6"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect6" />
<g
transform="translate(-0.5 -0.5)"
id="g12">
<switch
id="switch10">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 21px; margin-left: 81px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">X.509 Certificate</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="110"
y="25"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text8">X.509 Cert...</text>
</switch>
</g>
<rect
x="40"
y="50"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect14" />
<g
transform="translate(-0.5 -0.5)"
id="g20">
<switch
id="switch18">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 80px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">R5<xhtml:br />
u-boot-spl.bin</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="84"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text16">R5...</text>
</switch>
</g>
<rect
x="40"
y="110"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect22" />
<rect
x="60"
y="140"
width="140"
height="30"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect24" />
<g
transform="translate(-0.5 -0.5)"
id="g30">
<switch
id="switch28">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 155px; margin-left: 61px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">DTB 1..N</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="130"
y="159"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text26">DTB 1..N</text>
</switch>
</g>
<rect
x="60"
y="110"
width="140"
height="30"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect32" />
<g
transform="translate(-0.5 -0.5)"
id="g38">
<switch
id="switch36">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 125px; margin-left: 61px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">FIT Header</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="130"
y="129"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text34">FIT Header</text>
</switch>
</g>
</g>
<switch
id="switch48">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g42" />
<a
transform="translate(0,-5)"
xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems"
target="_blank"
id="a46">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text44">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 7.5 KiB

View file

@ -0,0 +1,277 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="231px"
height="271px"
viewBox="-0.5 -0.5 231 271"
id="svg58"
sodipodi:docname="nodm_tispl.bin.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview60"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.5166052"
inkscape:cx="112.45308"
inkscape:cy="135.5"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg58" />
<defs
id="defs2" />
<g
id="g48">
<rect
x="0"
y="0"
width="230"
height="270"
rx="34.5"
ry="34.5"
fill="#d5e8d4"
stroke="#82b366"
pointer-events="all"
id="rect4" />
<rect
x="40"
y="30"
width="160"
height="60"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect6" />
<g
transform="translate(-0.5 -0.5)"
id="g12">
<switch
id="switch10">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 60px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">FIT Header</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="64"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text8">FIT Header</text>
</switch>
</g>
<rect
x="40"
y="90"
width="160"
height="150"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect14" />
<rect
x="40"
y="90"
width="160"
height="30"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect16" />
<g
transform="translate(-0.5 -0.5)"
id="g22">
<switch
id="switch20">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 105px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">TF-A</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="109"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text18">TF-A</text>
</switch>
</g>
<rect
x="40"
y="120"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect24" />
<g
transform="translate(-0.5 -0.5)"
id="g30">
<switch
id="switch28">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 140px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">OP-TEE</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="144"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text26">OP-TEE</text>
</switch>
</g>
<rect
x="40"
y="160"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect32" />
<g
transform="translate(-0.5 -0.5)"
id="g38">
<switch
id="switch36">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 180px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">Cortex-A SPL</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="184"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text34">Cortex-A SPL</text>
</switch>
</g>
<rect
x="40"
y="200"
width="160"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect40" />
<g
transform="translate(-0.5 -0.5)"
id="g46">
<switch
id="switch44">
<foreignObject
style="overflow: visible; text-align: left;"
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 220px; margin-left: 41px;">
<xhtml:div
style="box-sizing: border-box; font-size: 0px; text-align: center;"
data-drawio-colors="color: rgb(0, 0, 0); ">
<xhtml: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;">SPL DTB 1..N</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="120"
y="224"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text42">SPL DTB 1..N</text>
</switch>
</g>
</g>
<switch
id="switch56">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g50" />
<a
transform="translate(0,-5)"
xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems"
target="_blank"
id="a54">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text52">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 8.9 KiB

View file

@ -0,0 +1,721 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="321px"
height="336px"
viewBox="-0.5 -0.5 321 336"
id="svg142"
sodipodi:docname="ospi_sysfw.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview144"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.0297619"
inkscape:cx="156.66862"
inkscape:cy="168"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg142" />
<defs
id="defs2" />
<g
id="g132">
<rect
x="120"
y="15"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect4" />
<g
transform="translate(-0.5 -0.5)"
id="g10">
<switch
id="switch8">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 35px; margin-left: 121px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">ospi.tiboot3(512k)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="220"
y="39"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text6">ospi.tiboot3(512k)</text>
</switch>
</g>
<rect
x="60"
y="5"
width="60"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect12" />
<g
transform="translate(-0.5 -0.5)"
id="g18">
<switch
id="switch16">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe flex-end; width: 58px; height: 1px; padding-top: 20px; margin-left: 60px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: right;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64); text-align: start;">0x0</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="24"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="end"
id="text14">0x0</text>
</switch>
</g>
<rect
x="120"
y="55"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect20" />
<g
transform="translate(-0.5 -0.5)"
id="g26">
<switch
id="switch24">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 75px; margin-left: 121px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">ospi.tispl(2M)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="220"
y="79"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text22">ospi.tispl(2M)</text>
</switch>
</g>
<rect
x="0"
y="45"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect28" />
<g
transform="translate(-0.5 -0.5)"
id="g34">
<switch
id="switch32">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe flex-end; width: 118px; height: 1px; padding-top: 60px; margin-left: 0px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: right;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64); text-align: start;">0x80000</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="64"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="end"
id="text30">0x80000</text>
</switch>
</g>
<rect
x="120"
y="95"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect36" />
<g
transform="translate(-0.5 -0.5)"
id="g42">
<switch
id="switch40">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 115px; margin-left: 121px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">ospi.u-boot(4M)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="220"
y="119"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text38">ospi.u-boot(4M)</text>
</switch>
</g>
<rect
x="0"
y="85"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect44" />
<g
transform="translate(-0.5 -0.5)"
id="g50">
<switch
id="switch48">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe flex-end; width: 118px; height: 1px; padding-top: 100px; margin-left: 0px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: right;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64); text-align: start;">0x280000</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="104"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="end"
id="text46">0x280000</text>
</switch>
</g>
<rect
x="120"
y="135"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect52" />
<g
transform="translate(-0.5 -0.5)"
id="g58">
<switch
id="switch56">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 155px; margin-left: 121px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">ospi.env(128K)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="220"
y="159"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text54">ospi.env(128K)</text>
</switch>
</g>
<rect
x="0"
y="125"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect60" />
<g
transform="translate(-0.5 -0.5)"
id="g66">
<switch
id="switch64">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe flex-end; width: 118px; height: 1px; padding-top: 140px; margin-left: 0px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: right;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64); text-align: start;">0x680000</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="144"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="end"
id="text62">0x680000</text>
</switch>
</g>
<rect
x="120"
y="175"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect68" />
<g
transform="translate(-0.5 -0.5)"
id="g74">
<switch
id="switch72">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 195px; margin-left: 121px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">ospi.env.backup(128K)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="220"
y="199"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text70">ospi.env.backup(128K)</text>
</switch>
</g>
<rect
x="0"
y="165"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect76" />
<g
transform="translate(-0.5 -0.5)"
id="g82">
<switch
id="switch80">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe flex-end; width: 118px; height: 1px; padding-top: 180px; margin-left: 0px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: right;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64); text-align: start;">0x6A0000</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="184"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="end"
id="text78">0x6A0000</text>
</switch>
</g>
<rect
x="120"
y="215"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect84" />
<g
transform="translate(-0.5 -0.5)"
id="g90">
<switch
id="switch88">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 235px; margin-left: 121px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">ospi.sysfw(1M)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="220"
y="239"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text86">ospi.sysfw(1M)</text>
</switch>
</g>
<rect
x="0"
y="205"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect92" />
<g
transform="translate(-0.5 -0.5)"
id="g98">
<switch
id="switch96">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe flex-end; width: 118px; height: 1px; padding-top: 220px; margin-left: 0px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: right;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64); text-align: start;">0x6C0000</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="224"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="end"
id="text94">0x6C0000</text>
</switch>
</g>
<rect
x="120"
y="255"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect100" />
<g
transform="translate(-0.5 -0.5)"
id="g106">
<switch
id="switch104">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 275px; margin-left: 121px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">padding(256K)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="220"
y="279"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text102">padding(256K)</text>
</switch>
</g>
<rect
x="0"
y="245"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect108" />
<g
transform="translate(-0.5 -0.5)"
id="g114">
<switch
id="switch112">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe flex-end; width: 118px; height: 1px; padding-top: 260px; margin-left: 0px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: right;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64); text-align: start;">0x7C0000</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="264"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="end"
id="text110">0x7C0000</text>
</switch>
</g>
<rect
x="120"
y="295"
width="200"
height="40"
fill="rgb(255, 255, 255)"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect116" />
<g
transform="translate(-0.5 -0.5)"
id="g122">
<switch
id="switch120">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 315px; margin-left: 121px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">ospi.rootfs(UBIFS)</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="220"
y="319"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text118">ospi.rootfs(UBIFS)</text>
</switch>
</g>
<rect
x="0"
y="285"
width="120"
height="30"
fill="none"
stroke="none"
pointer-events="all"
id="rect124" />
<g
transform="translate(-0.5 -0.5)"
id="g130">
<switch
id="switch128">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe flex-end; width: 118px; height: 1px; padding-top: 300px; margin-left: 0px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: right;">
<xhtml: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;">
<xhtml:pre
style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, &quot;Liberation Mono&quot;, &quot;Courier New&quot;, Courier, monospace; line-height: 1.4; margin-top: 0px; margin-bottom: 0px; padding: 12px; overflow: auto; color: rgb(64, 64, 64); text-align: start;">0x800000</xhtml:pre>
</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="304"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="end"
id="text126">0x800000</text>
</switch>
</g>
</g>
<switch
id="switch140">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g134" />
<a
transform="translate(0,-5)"
xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems"
target="_blank"
id="a138">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text136">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 27 KiB

View file

@ -0,0 +1,317 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="231px"
height="291px"
viewBox="-0.5 -0.5 231 291"
id="svg933"
sodipodi:docname="sysfw.itb.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<sodipodi:namedview
id="namedview935"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.3436426"
inkscape:cx="112.21848"
inkscape:cy="145.5"
inkscape:window-width="3440"
inkscape:window-height="1416"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg933" />
<defs
id="defs869" />
<g
id="g923">
<rect
x="0"
y="0"
width="230"
height="290"
rx="34.5"
ry="34.5"
fill="#f8cecc"
stroke="#b85450"
pointer-events="all"
id="rect871" />
<rect
x="40"
y="40"
width="155"
height="230"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect873" />
<rect
x="40"
y="40"
width="155"
height="30"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect875" />
<g
transform="translate(-0.5 -0.5)"
id="g881">
<switch
id="switch879">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 153px; height: 1px; padding-top: 55px; margin-left: 41px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">FIT Header</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="59"
fill="#000000"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text877">FIT Header</text>
</switch>
</g>
<rect
x="40"
y="70"
width="155"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect883" />
<g
transform="translate(-0.5 -0.5)"
id="g889">
<switch
id="switch887">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 153px; height: 1px; padding-top: 90px; margin-left: 41px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">sysfw.bin</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="94"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text885">sysfw.bin</text>
</switch>
</g>
<rect
x="40"
y="110"
width="155"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect891" />
<g
transform="translate(-0.5 -0.5)"
id="g897">
<switch
id="switch895">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 153px; height: 1px; padding-top: 130px; margin-left: 41px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">board config</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="134"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text893">board config</text>
</switch>
</g>
<rect
x="40"
y="150"
width="155"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect899" />
<g
transform="translate(-0.5 -0.5)"
id="g905">
<switch
id="switch903">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 153px; height: 1px; padding-top: 170px; margin-left: 41px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">PM config</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="174"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text901">PM config</text>
</switch>
</g>
<rect
x="40"
y="190"
width="155"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect907" />
<g
transform="translate(-0.5 -0.5)"
id="g913">
<switch
id="switch911">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 153px; height: 1px; padding-top: 210px; margin-left: 41px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">RM config</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="214"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text909">RM config</text>
</switch>
</g>
<rect
x="40"
y="230"
width="155"
height="40"
fill="none"
stroke="rgb(0, 0, 0)"
pointer-events="all"
id="rect915" />
<g
transform="translate(-0.5 -0.5)"
id="g921">
<switch
id="switch919">
<foreignObject
pointer-events="none"
width="100%"
height="100%"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
style="overflow: visible; text-align: left;">
<xhtml:div
style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 153px; height: 1px; padding-top: 250px; margin-left: 41px;">
<xhtml:div
data-drawio-colors="color: rgb(0, 0, 0); "
style="box-sizing: border-box; font-size: 0px; text-align: center;">
<xhtml: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;">Secure config</xhtml:div>
</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="118"
y="254"
fill="rgb(0, 0, 0)"
font-family="Helvetica"
font-size="12px"
text-anchor="middle"
id="text917">Secure config</text>
</switch>
</g>
</g>
<switch
id="switch931">
<g
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"
id="g925" />
<a
transform="translate(0,-5)"
xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems"
target="_blank"
id="a929">
<text
text-anchor="middle"
font-size="10px"
x="50%"
y="100%"
id="text927">Text is not SVG - cannot display</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 10 KiB

View file

@ -26,153 +26,88 @@ specific processing cores and peripherals:
More info can be found in TRM: https://www.ti.com/lit/pdf/spruiu1
Platform information:
* https://www.ti.com/tool/J7200XSOMXEVM
Boot Flow:
----------
Below is the pictorial representation of boot flow:
.. code-block:: text
+------------------------------------------------------------------------+-----------------------+
| DMSC | MCU R5 | A72 | MAIN R5/C7x |
+------------------------------------------------------------------------+-----------------------+
| +--------+ | | | |
| | Reset | | | | |
| +--------+ | | | |
| : | | | |
| +--------+ | +-----------+ | | |
| | *ROM* |----------|-->| Reset rls | | | |
| +--------+ | +-----------+ | | |
| | | | : | | |
| | ROM | | : | | |
| |services| | : | | |
| | | | +-------------+ | | |
| | | | | *R5 ROM* | | | |
| | | | +-------------+ | | |
| | |<---------|---|Load and auth| | | |
| | | | | tiboot3.bin | | | |
| | Start | | +-------------+ | | |
| | TIFS |<---------|---| Start | | | |
| | | | | TIFS | | | |
| +--------+ | +-------------+ | | |
| : | | | | | |
| +---------+ | | Load | | | |
| | *TIFS* | | | system | | | |
| +---------+ | | Config data | | | |
| | |<--------|---| | | | |
| | | | +-------------+ | | |
| | | | : | | |
| | | | : | | |
| | | | : | | |
| | | | +-------------+ | | |
| | | | | *R5 SPL* | | | |
| | | | +-------------+ | | |
| | | | | DDR | | | |
| | | | | config | | | |
| | | | +-------------+ | | |
| | | | | Load | | | |
| | | | | tispl.bin | | | |
| | | | +-------------+ | | |
| | | | | Load R5 | | | |
| | | | | firmware | | | |
| | | | +-------------+ | | |
| | |<--------|---| Start A72 | | | |
| | | | | and jump to | | | |
| | | | | DM fw image | | | |
| | | | +-------------+ | | |
| | | | | +-----------+ | |
| | |---------|-----------------------|---->| Reset rls | | |
| | | | | +-----------+ | |
| | TIFS | | | : | |
| |Services | | | +-------------+ | |
| | |<--------|-----------------------|---->|*TF-A/OP-TEE*| | |
| | | | | +-------------+ | |
| | | | | : | |
| | | | | +-----------+ | |
| | |<--------|-----------------------|---->| *A72 SPL* | | |
| | | | | +-----------+ | |
| | | | | | Load | | |
| | | | | | u-boot.img| | |
| | | | | +-----------+ | |
| | | | | : | |
| | | | | +-----------+ | |
| | |<--------|-----------------------|---->| *U-Boot* | | |
| | | | | +-----------+ | |
| | | | | | prompt | | |
| | | | | +-----------+ | |
| | | | | | Load R5 | | |
| | | | | | Firmware | | |
| | | | | +-----------+ | |
| | |<--------|-----------------------|-----| Start R5 | | +-----------+ |
| | |---------|-----------------------|-----+-----------+-----|----->| R5 starts | |
| | | | | | Load C7 | | +-----------+ |
| | | | | | Firmware | | |
| | | | | +-----------+ | |
| | |<--------|-----------------------|-----| Start C7 | | +-----------+ |
| | |---------|-----------------------|-----+-----------+-----|----->| C7 starts | |
| | | | | | +-----------+ |
| | | | | | |
| +---------+ | | | |
| | | | |
+------------------------------------------------------------------------+-----------------------+
.. image:: img/boot_diagram_k3_current.svg
- Here DMSC acts as master and provides all the critical services. R5/A72
requests DMSC to get these services done as shown in the above diagram.
Sources:
--------
1. Trusted Firmware-A:
Tree: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/
Branch: master
2. OP-TEE:
Tree: https://github.com/OP-TEE/optee_os.git
Branch: master
3. U-Boot:
Tree: https://source.denx.de/u-boot/u-boot
Branch: master
4. TI Linux Firmware:
Tree: git://git.ti.com/processor-firmware/ti-linux-firmware.git
Branch: ti-linux-firmware
.. include:: k3.rst
:start-after: .. k3_rst_include_start_boot_sources
:end-before: .. k3_rst_include_end_boot_sources
Build procedure:
----------------
1. Trusted Firmware-A:
0. Setup the environment variables:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_common_env_vars_desc
:end-before: .. k3_rst_include_end_common_env_vars_desc
.. include:: k3.rst
:start-after: .. k3_rst_include_start_board_env_vars_desc
:end-before: .. k3_rst_include_end_board_env_vars_desc
Set the variables corresponding to this platform:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_common_env_vars_defn
:end-before: .. k3_rst_include_end_common_env_vars_defn
.. code-block:: bash
$ make CROSS_COMPILE=aarch64-linux-gnu- ARCH=aarch64 PLAT=k3 TARGET_BOARD=generic SPD=opteed
$ export UBOOT_CFG_CORTEXR=j7200_evm_r5_defconfig
$ export UBOOT_CFG_CORTEXA=j7200_evm_a72_defconfig
$ export TFA_BOARD=generic
$ # we dont use any extra TFA parameters
$ unset TFA_EXTRA_ARGS
$ export OPTEE_PLATFORM=k3-j7200
$ # we dont use any extra OP-TEE parameters
$ unset OPTEE_EXTRA_ARGS
.. j7200_evm_rst_include_start_build_steps
1. Trusted Firmware-A:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_tfa
:end-before: .. k3_rst_include_end_build_steps_tfa
2. OP-TEE:
.. code-block:: bash
$ make PLATFORM=k3-j7200 CFG_ARM64_core=y
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_optee
:end-before: .. k3_rst_include_end_build_steps_optee
3. U-Boot:
* 4.1 R5:
.. code-block:: bash
$ make CROSS_COMPILE=arm-linux-gnueabihf- j7200_evm_r5_defconfig O=build/r5
$ make CROSS_COMPILE=arm-linux-gnueabihf- \
BINMAN_INDIRS=<path/to/ti-linux-firmware>
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_spl_r5
:end-before: .. k3_rst_include_end_build_steps_spl_r5
* 4.2 A72:
.. code-block:: bash
$ make CROSS_COMPILE=aarch64-linux-gnu- j7200_evm_a72_defconfig O=build/a72
$ make CROSS_COMPILE=aarch64-linux-gnu- \
BL31=<path/to/trusted-firmware-a/dir>/build/k3/generic/release/bl31.bin \
TEE=<path/to/optee_os/dir>/out/arm-plat-k3/core/tee-raw.bin \
BINMAN_INDIRS=<path/to/ti-linux-firmware>
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_uboot
:end-before: .. k3_rst_include_end_build_steps_uboot
.. j7200_evm_rst_include_end_build_steps
Target Images
--------------
Copy the below images to an SD card and boot:
In order to boot we need tiboot3.bin, tispl.bin and u-boot.img. Each SoC
variant (GP, HS-FS, HS-SE) requires a different source for these files.
- GP
@ -192,71 +127,14 @@ Copy the below images to an SD card and boot:
Image formats:
--------------
- tiboot3.bin:
- tiboot3.bin
.. code-block:: console
+-----------------------+
| X.509 |
| Certificate |
| +-------------------+ |
| | | |
| | R5 | |
| | u-boot-spl.bin | |
| | | |
| +-------------------+ |
| | | |
| | FIT header | |
| | +---------------+ | |
| | | | | |
| | | DTB 1...N | | |
| | +---------------+ | |
| +-------------------+ |
| | | |
| | FIT HEADER | |
| | +---------------+ | |
| | | | | |
| | | sysfw.bin | | |
| | +---------------+ | |
| | | | | |
| | | board config | | |
| | +---------------+ | |
| | | | | |
| | | PM config | | |
| | +---------------+ | |
| | | | | |
| | | RM config | | |
| | +---------------+ | |
| | | | | |
| | | Secure config | | |
| | +---------------+ | |
| +-------------------+ |
+-----------------------+
.. image:: img/j7200_tiboot3.bin.svg
- tispl.bin
.. code-block:: console
.. image:: img/dm_tispl.bin.svg
+-----------------------+
| |
| FIT HEADER |
| +-------------------+ |
| | | |
| | A72 TF-A | |
| +-------------------+ |
| | | |
| | A72 OP-TEE | |
| +-------------------+ |
| | | |
| | R5 DM FW | |
| +-------------------+ |
| | | |
| | A72 SPL | |
| +-------------------+ |
| | | |
| | SPL DTB 1...N | |
| +-------------------+ |
+-----------------------+
Switch Setting for Boot Mode
@ -270,18 +148,33 @@ The following table shows some common boot modes used on J7200 platform. More
details can be found in the Technical Reference Manual:
https://www.ti.com/lit/pdf/spruiu1 under the `Boot Mode Pins` section.
.. list-table:: Boot Modes
:widths: 16 16 16
:header-rows: 1
*Boot Modes*
* - Switch Label
- SW9: 12345678
- SW8: 12345678
============ ============= =============
Switch Label SW9: 12345678 SW8: 12345678
============ ============= =============
SD 00000000 10000010
EMMC 01000000 10000000
OSPI 01000000 00000110
UART 01110000 00000000
USB DFU 00100000 10000000
============ ============= =============
* - SD
- 00000000
- 10000010
* - EMMC
- 01000000
- 10000000
* - OSPI
- 01000000
- 00000110
* - UART
- 01110000
- 00000000
* - USB DFU
- 00100000
- 10000000
For SW8 and SW9, the switch state in the "ON" position = 1.
@ -297,42 +190,14 @@ Current allocated size for tiboot3 size is 1MB, tispl is 2MB.
Size of u-boot.img is taken 4MB for refernece,
But this is subject to change depending upon atf, optee size
.. code-block:: console
boot0/1 partition (8 MB) user partition
0x0+----------------------------------+ 0x0+------------------------+
| tiboot3.bin (1 MB) | | |
0x800+----------------------------------+ | |
| tispl.bin (2 MB) | | |
0x1800+----------------------------------+ | |
| u-boot.img (4MB) | | |
0x3800+----------------------------------+ | |
| | | |
0x3900+ environment | | |
| | | |
0x3A00+----------------------------------+ +-------------------------+
.. image:: img/emmc_j7200_evm_boot01.svg
In case of UDA FS mode booting, following is layout.
All boot images tiboot3.bin, tispl and u-boot should be written to
fat formatted UDA FS as file.
.. code-block:: console
boot0/1 partition (8 MB) user partition
0x0+---------------------------------+ 0x0+-------------------------+
| | | tiboot3.bin* |
0x800+----------------------------------+ | |
| | | tispl.bin |
0x1800+----------------------------------+ | |
| | | u-boot.img |
0x3800+----------------------------------+ | |
| | | |
0x3900+ | | environment |
| | | |
0x3A00+----------------------------------+ +-------------------------+
.. image:: img/emmc_j7200_evm_udafs.svg
In case of booting from eMMC, write above images into raw or UDA FS.
and set mmc partconf accordingly.

View file

@ -29,161 +29,91 @@ specific processing cores and peripherals:
More info can be found in TRM: http://www.ti.com/lit/pdf/spruil1
Platform information:
* https://www.ti.com/tool/J721EXSOMXEVM
* https://www.ti.com/tool/SK-TDA4VM
Boot Flow:
----------
Boot flow is similar to that of AM65x SoC and extending it with remoteproc
support. Below is the pictorial representation of boot flow:
.. code-block:: text
+------------------------------------------------------------------------+-----------------------+
| DMSC | MCU R5 | A72 | MAIN R5/C66x/C7x |
+------------------------------------------------------------------------+-----------------------+
| +--------+ | | | |
| | Reset | | | | |
| +--------+ | | | |
| : | | | |
| +--------+ | +-----------+ | | |
| | *ROM* |----------|-->| Reset rls | | | |
| +--------+ | +-----------+ | | |
| | | | : | | |
| | ROM | | : | | |
| |services| | : | | |
| | | | +-------------+ | | |
| | | | | *R5 ROM* | | | |
| | | | +-------------+ | | |
| | |<---------|---|Load and auth| | | |
| | | | | tiboot3.bin | | | |
| | | | +-------------+ | | |
| | | | : | | |
| | | | : | | |
| | | | : | | |
| | | | +-------------+ | | |
| | | | | *R5 SPL* | | | |
| | | | +-------------+ | | |
| | | | | Load | | | |
| | | | | sysfw.itb | | | |
| | Start | | +-------------+ | | |
| | System |<---------|---| Start | | | |
| |Firmware| | | SYSFW | | | |
| +--------+ | +-------------+ | | |
| : | | | | | |
| +---------+ | | Load | | | |
| | *SYSFW* | | | system | | | |
| +---------+ | | Config data | | | |
| | |<--------|---| | | | |
| | | | +-------------+ | | |
| | | | | DDR | | | |
| | | | | config | | | |
| | | | +-------------+ | | |
| | | | | Load | | | |
| | | | | tispl.bin | | | |
| | | | +-------------+ | | |
| | | | | Load R5 | | | |
| | | | | firmware | | | |
| | | | +-------------+ | | |
| | |<--------|---| Start A72 | | | |
| | | | | and jump to | | | |
| | | | | DM fw image | | | |
| | | | +-------------+ | | |
| | | | | +-----------+ | |
| | |---------|-----------------------|---->| Reset rls | | |
| | | | | +-----------+ | |
| | TIFS | | | : | |
| |Services | | | +-------------+ | |
| | |<--------|-----------------------|---->|*TF-A/OP-TEE*| | |
| | | | | +-------------+ | |
| | | | | : | |
| | | | | +-----------+ | |
| | |<--------|-----------------------|---->| *A72 SPL* | | |
| | | | | +-----------+ | |
| | | | | | Load | | |
| | | | | | u-boot.img| | |
| | | | | +-----------+ | |
| | | | | : | |
| | | | | +-----------+ | |
| | |<--------|-----------------------|---->| *U-Boot* | | |
| | | | | +-----------+ | |
| | | | | | prompt | | |
| | | | | +-----------+ | |
| | | | | | Load R5 | | |
| | | | | | Firmware | | |
| | | | | +-----------+ | |
| | |<--------|-----------------------|-----| Start R5 | | +-----------+ |
| | |---------|-----------------------|-----+-----------+-----|----->| R5 starts | |
| | | | | | Load C6 | | +-----------+ |
| | | | | | Firmware | | |
| | | | | +-----------+ | |
| | |<--------|-----------------------|-----| Start C6 | | +-----------+ |
| | |---------|-----------------------|-----+-----------+-----|----->| C6 starts | |
| | | | | | Load C7 | | +-----------+ |
| | | | | | Firmware | | |
| | | | | +-----------+ | |
| | |<--------|-----------------------|-----| Start C7 | | +-----------+ |
| | |---------|-----------------------|-----+-----------+-----|----->| C7 starts | |
| +---------+ | | | +-----------+ |
| | | | |
+------------------------------------------------------------------------+-----------------------+
.. image:: img/boot_diagram_j721e.svg
- Here DMSC acts as master and provides all the critical services. R5/A72
requests DMSC to get these services done as shown in the above diagram.
Sources:
--------
1. Trusted Firmware-A:
Tree: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/
Branch: master
2. OP-TEE:
Tree: https://github.com/OP-TEE/optee_os.git
Branch: master
3. U-Boot:
Tree: https://source.denx.de/u-boot/u-boot
Branch: master
4. TI Linux Firmware:
Tree: git://git.ti.com/processor-firmware/ti-linux-firmware.git
Branch: ti-linux-firmware
.. include:: k3.rst
:start-after: .. k3_rst_include_start_boot_sources
:end-before: .. k3_rst_include_end_boot_sources
Build procedure:
----------------
1. Trusted Firmware-A:
0. Setup the environment variables:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_common_env_vars_desc
:end-before: .. k3_rst_include_end_common_env_vars_desc
.. include:: k3.rst
:start-after: .. k3_rst_include_start_board_env_vars_desc
:end-before: .. k3_rst_include_end_board_env_vars_desc
Set the variables corresponding to this platform:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_common_env_vars_defn
:end-before: .. k3_rst_include_end_common_env_vars_defn
.. code-block:: bash
$ make CROSS_COMPILE=aarch64-linux-gnu- ARCH=aarch64 PLAT=k3 \
TARGET_BOARD=generic SPD=opteed
$ export UBOOT_CFG_CORTEXR=j721e_evm_r5_defconfig
$ export UBOOT_CFG_CORTEXA=j721e_evm_a72_defconfig
$ export TFA_BOARD=generic
$ # we dont use any extra TFA parameters
$ unset TFA_EXTRA_ARGS
$ export OPTEE_PLATFORM=k3-j721e
$ # we dont use any extra OP-TEE parameters
$ unset OPTEE_EXTRA_ARGS
.. j721e_evm_rst_include_start_build_steps
1. Trusted Firmware-A:
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_tfa
:end-before: .. k3_rst_include_end_build_steps_tfa
2. OP-TEE:
.. code-block:: bash
$ make PLATFORM=k3-j721e CFG_ARM64_core=y
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_optee
:end-before: .. k3_rst_include_end_build_steps_optee
3. U-Boot:
* 4.1 R5:
.. code-block:: bash
$ make j721e_evm_r5_defconfig
$ make CROSS_COMPILE=arm-linux-gnueabihf- \
BINMAN_INDIRS=<path/to/ti-linux-firmware>
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_spl_r5
:end-before: .. k3_rst_include_end_build_steps_spl_r5
* 4.2 A72:
.. code-block:: bash
$ make j721e_evm_a72_defconfig
$ make CROSS_COMPILE=aarch64-linux-gnu- \
BL31=<path/to/trusted-firmware-a/dir>/build/k3/generic/release/bl31.bin \
TEE=<path/to/optee_os/dir>/out/arm-plat-k3/core/tee-raw.bin \
BINMAN_INDIRS=<path/to/ti-linux-firmware>
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_uboot
:end-before: .. k3_rst_include_end_build_steps_uboot
.. j721e_evm_rst_include_end_build_steps
Target Images
--------------
Copy the below images to an SD card and boot:
In order to boot we need tiboot3.bin, sysfw.itb, tispl.bin and u-boot.img.
Each SoC variant (GP, HS-FS and HS-SE) requires a different source for these
files.
- GP
@ -203,77 +133,17 @@ Copy the below images to an SD card and boot:
Image formats:
--------------
- tiboot3.bin:
- tiboot3.bin
.. code-block:: text
+-----------------------+
| X.509 |
| Certificate |
| +-------------------+ |
| | | |
| | R5 | |
| | u-boot-spl.bin | |
| | | |
| +-------------------+ |
| | | |
| | FIT header | |
| | +---------------+ | |
| | | | | |
| | | DTB 1...N | | |
| | +---------------+ | |
| +-------------------+ |
+-----------------------+
.. image:: img/no_multi_cert_tiboot3.bin.svg
- tispl.bin
.. code-block:: text
+-----------------------+
| |
| FIT HEADER |
| +-------------------+ |
| | | |
| | A72 TF-A | |
| +-------------------+ |
| | | |
| | A72 OP-TEE | |
| +-------------------+ |
| | | |
| | R5 DM FW | |
| +-------------------+ |
| | | |
| | A72 SPL | |
| +-------------------+ |
| | | |
| | SPL DTB 1...N | |
| +-------------------+ |
+-----------------------+
.. image:: img/dm_tispl.bin.svg
- sysfw.itb
.. code-block:: text
+-----------------------+
| |
| FIT HEADER |
| +-------------------+ |
| | | |
| | sysfw.bin | |
| +-------------------+ |
| | | |
| | board config | |
| +-------------------+ |
| | | |
| | PM config | |
| +-------------------+ |
| | | |
| | RM config | |
| +-------------------+ |
| | | |
| | Secure config | |
| +-------------------+ |
+-----------------------+
.. image:: img/sysfw.itb.svg
R5 Memory Map:
--------------
@ -342,32 +212,7 @@ addresses.
Flash layout for OSPI:
.. code-block:: text
0x0 +----------------------------+
| ospi.tiboot3(512K) |
| |
0x80000 +----------------------------+
| ospi.tispl(2M) |
| |
0x280000 +----------------------------+
| ospi.u-boot(4M) |
| |
0x680000 +----------------------------+
| ospi.env(128K) |
| |
0x6A0000 +----------------------------+
| ospi.env.backup (128K) |
| |
0x6C0000 +----------------------------+
| ospi.sysfw(1M) |
| |
0x7C0000 +----------------------------+
| padding (256k) |
0x800000 +----------------------------+
| ospi.rootfs(UBIFS) |
| |
+----------------------------+
.. image:: img/ospi_sysfw.svg
Firmwares:
----------

View file

@ -30,10 +30,10 @@ K3 Based SoCs
.. toctree::
:maxdepth: 1
j721e_evm
j7200_evm
am62x_sk
am65x_evm
j7200_evm
j721e_evm
Boot Flow Overview
------------------
@ -45,10 +45,7 @@ boot media needed to load the binaries packaged inside `tiboot3.bin`,
including a 32bit U-Boot SPL, (called the wakup SPL) that ROM will jump
to after it has finished loading everything into internal SRAM.
.. code-block:: text
| WKUP Domain
ROM -> WKUP SPL ->
.. image:: img/boot_flow_01.svg
The wakeup SPL, running on a wakeup domain core, will initialize DDR and
any peripherals needed load the larger binaries inside the `tispl.bin`
@ -57,10 +54,7 @@ application cores inside the main domain to initialize the main domain,
starting with Trusted Firmware-A (TF-A), before moving on to start
OP-TEE and the main domain's U-Boot SPL.
.. code-block:: text
| WKUP Domain | Main Domain ->
ROM -> WKUP SPL -> TF-A -> OP-TEE -> Main SPL
.. image:: img/boot_flow_02.svg
The main domain's SPL, running on a 64bit application core, has
virtually unlimited space (billions of bytes now that DDR is working) to
@ -68,10 +62,7 @@ initialize even more peripherals needed to load in the `u-boot.img`
which loads more firmware into the micro-controller & wakeup domains and
finally prepare the main domain to run Linux.
.. code-block:: text
| WKUP Domain | Main Domain ->
ROM -> WKUP SPL -> TF-A -> OP-TEE -> Main SPL -> UBoot -> Linux
.. image:: img/boot_flow_03.svg
This is the typical boot flow for all K3 based SoCs, however this flow
offers quite a lot in the terms of flexibility, especially on High
@ -111,6 +102,8 @@ All scripts and code needed to build the `tiboot3.bin`, `tispl.bin` and
`u-boot.img` for all K3 SoCs can be located at the following places
online
.. k3_rst_include_start_boot_sources
* **Das U-Boot**
| **source:** https://source.denx.de/u-boot/u-boot.git
@ -131,6 +124,8 @@ online
| **source:** https://git.ti.com/git/processor-firmware/ti-linux-firmware.git
| **branch:** ti-linux-firmware
.. k3_rst_include_end_boot_sources
Build Procedure
---------------
@ -150,10 +145,71 @@ compiled for 64bit main domain CPU cores.
All of that to say you will need both a 32bit and 64bit cross compiler
(assuming you're using an x86 desktop)
.. k3_rst_include_start_common_env_vars_desc
.. list-table:: Generic environment variables
:widths: 25 25 50
:header-rows: 1
* - S/w Component
- Env Variable
- Description
* - All Software
- CC32
- Cross compiler for ARMv7 (ARM 32bit), typically arm-linux-gnueabihf-
* - All Software
- CC64
- Cross compiler for ARMv8 (ARM 64bit), typically aarch64-linux-gnu-
* - All Software
- LNX_FW_PATH
- Path to TI Linux firmware repository
* - All Software
- TFA_PATH
- Path to source of Trusted Firmware-A
* - All Software
- OPTEE_PATH
- Path to source of OP-TEE
.. k3_rst_include_end_common_env_vars_desc
.. k3_rst_include_start_common_env_vars_defn
.. code-block:: bash
$ export CC32=arm-linux-gnueabihf-
$ export CC64=aarch64-linux-gnu-
$ export LNX_FW_PATH=path/to/ti-linux-firmware
$ export TFA_PATH=path/to/trusted-firmware-a
$ export OPTEE_PATH=path/to/optee_os
.. k3_rst_include_end_common_env_vars_defn
We will also need some common environment variables set up for the various
other build sources. we shall use the following, in the build descriptions below:
.. k3_rst_include_start_board_env_vars_desc
.. list-table:: Board specific environment variables
:widths: 25 25 50
:header-rows: 1
* - S/w Component
- Env Variable
- Description
* - U-Boot
- UBOOT_CFG_CORTEXR
- Defconfig for Cortex-R (Boot processor).
* - U-Boot
- UBOOT_CFG_CORTEXA
- Defconfig for Cortex-A (MPU processor).
* - Trusted Firmware-A
- TFA_BOARD
- Platform name used for building TF-A for Cortex-A Processor.
* - Trusted Firmware-A
- TFA_EXTRA_ARGS
- Any extra arguments used for building TF-A.
* - OP-TEE
- OPTEE_PLATFORM
- Platform name used for building OP-TEE for Cortex-A Processor.
* - OP-TEE
- OPTEE_EXTRA_ARGS
- Any extra arguments used for building OP-TEE.
.. k3_rst_include_end_board_env_vars_desc
Building tiboot3.bin
^^^^^^^^^^^^^^^^^^^^^
@ -164,13 +220,13 @@ Building tiboot3.bin
the final `tiboot3.bin` binary. (or the `sysfw.itb` if your device
uses the split binary flow)
.. k3_rst_include_start_build_steps_spl_r5
.. code-block:: bash
$ # inside u-boot source
$ make ARCH=arm {SOC}_evm_r5_defconfig
$ make ARCH=arm CROSS_COMPILE=$CC32 \
BINMAN_INDIRS=<path/to/ti-linux-firmware>
$ make $UBOOT_CFG_CORTEXR
$ make CROSS_COMPILE=$CC32 BINMAN_INDIRS=$LNX_FW_PATH
.. k3_rst_include_end_build_steps_spl_r5
At this point you should have all the needed binaries to boot the wakeup
domain of your K3 SoC.
@ -200,39 +256,43 @@ firmware if your device using a split firmware.
2. We will first need TF-A, as it's the first thing to run on the 'big'
application cores on the main domain.
.. k3_rst_include_start_build_steps_tfa
.. code-block:: bash
$ # inside trusted-firmware-a source
$ make CROSS_COMPILE=$CC64 ARCH=aarch64 PLAT=k3 \
TARGET_BOARD={lite|generic|j784s4} \
SPD=opteed
$ make CROSS_COMPILE=$CC64 ARCH=aarch64 PLAT=k3 SPD=opteed $TFA_EXTRA_ARGS \
TARGET_BOARD=$TFA_BOARD
.. k3_rst_include_end_build_steps_tfa
Typically all `j7*` devices will use `TARGET_BOARD=generic` or `TARGET_BOARD
=j784s4` (if it is a J784S4 device), while all Sitara (`am6*`) devices
=j784s4` (if it is a J784S4 device), while typical Sitara (`am6*`) devices
use the `lite` option.
3. The Open Portable Trusted Execution Environment (OP-TEE) is designed
to run as a companion to a non-secure Linux kernel for Cortex-A cores
using the TrustZone technology built into the core.
.. k3_rst_include_start_build_steps_optee
.. code-block:: bash
$ # inside optee_os source
$ make CROSS_COMPILE=$CC32 CROSS_COMPILE64=$CC64 \
PLATFORM=k3 CFG_ARM64_core=y
$ make CROSS_COMPILE=$CC32 CROSS_COMPILE64=$CC64 CFG_ARM64_core=y $OPTEE_EXTRA_ARGS \
PLATFORM=$OPTEE_PLATFORM
.. k3_rst_include_end_build_steps_optee
4. Finally, after TF-A has initialized the main domain and OP-TEE has
finished, we can jump back into U-Boot again, this time running on a
64bit core in the main domain.
.. k3_rst_include_start_build_steps_uboot
.. code-block:: bash
$ # inside u-boot source
$ make ARCH=arm {SOC}_evm_a{53,72}_defconfig
$ make ARCH=arm CROSS_COMPILE=$CC64 \
BINMAN_INDIRS=<path/to/ti-linux-firmware> \
BL31=<path/to/trusted-firmware-a/dir>/build/k3/generic/release/bl31.bin \
TEE=<path/to/optee_os/dir>/out/arm-plat-k3/core/tee-raw.bin
$ make $UBOOT_CFG_CORTEXA
$ make CROSS_COMPILE=$CC64 BINMAN_INDIRS=$LNX_FW_PATH \
BL31=$TFA_PATH/build/k3/$TFA_BOARD/release/bl31.bin \
TEE=$OPTEE_PATH/out/arm-plat-k3/core/tee-raw.bin
.. k3_rst_include_end_build_steps_uboot
At this point you should have every binary needed initialize both the
wakeup and main domain and to boot to the U-Boot prompt
@ -310,13 +370,11 @@ and the same can be extended to other platforms
2. Compile U-boot for the respective board
.. code-block:: bash
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_uboot
:end-before: .. k3_rst_include_end_build_steps_uboot
make O=build/a72 CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=arm
BL31=/path/to/bl31.bin TEE=/path/to/bl32.bin
BINMAN_INDIRS="/path/to/ti-linux-firmware" -j15
.. note::
.. note::
The changes only affect a72 binaries so the example just builds that
@ -362,11 +420,9 @@ and the same can be extended to other platforms
This is required so that the modified dtb gets updated in u-boot.img
.. code-block:: bash
make O=build/a72 CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=arm
BL31=/path/to/bl31.bin TEE=/path/to/bl32.bin
BINMAN_INDIRS="/path/to/ti-linux-firmware" -j15
.. include:: k3.rst
:start-after: .. k3_rst_include_start_build_steps_uboot
:end-before: .. k3_rst_include_end_build_steps_uboot
6. (Optional) Enabled FIT_SIGNATURE_ENFORCED

View file

@ -120,7 +120,7 @@ then headers with directories, then local files:
#include <others.h>
#include <asm/...>
#include <arm/arch/...>
#include <dm/device_compat/.h>
#include <dm/device_compat.h>
#include <linux/...>
#include "local.h"

View file

@ -1,6 +1,6 @@
alabaster==0.7.12
Babel==2.9.1
certifi==2022.12.7
certifi==2023.5.7
charset-normalizer==2.0.12
docutils==0.16
idna==3.3
@ -8,9 +8,9 @@ imagesize==1.3.0
Jinja2==3.0.3
MarkupSafe==2.1.1
packaging==21.3
Pygments==2.11.2
Pygments==2.15.1
pyparsing==3.0.7
pytz==2022.1
pytz==2023.3
requests==2.31.0
six==1.16.0
snowballstemmer==2.2.0

View file

@ -629,7 +629,7 @@ void efi_add_handle(efi_handle_t obj);
/* Create handle */
efi_status_t efi_create_handle(efi_handle_t *handle);
/* Delete handle */
void efi_delete_handle(efi_handle_t obj);
efi_status_t efi_delete_handle(efi_handle_t obj);
/* Call this to validate a handle and find the EFI object for it */
struct efi_object *efi_search_obj(const efi_handle_t handle);
/* Locate device_path handle */

View file

@ -285,10 +285,8 @@ static efi_status_t efi_add_driver(struct driver *drv)
bp->ops = ops;
ret = efi_create_handle(&bp->bp.driver_binding_handle);
if (ret != EFI_SUCCESS) {
free(bp);
goto out;
}
if (ret != EFI_SUCCESS)
goto err;
bp->bp.image_handle = bp->bp.driver_binding_handle;
ret = efi_add_protocol(bp->bp.driver_binding_handle,
&efi_guid_driver_binding_protocol, bp);
@ -299,11 +297,11 @@ static efi_status_t efi_add_driver(struct driver *drv)
if (ret != EFI_SUCCESS)
goto err;
}
out:
return ret;
return ret;
err:
efi_delete_handle(bp->bp.driver_binding_handle);
if (bp->bp.driver_binding_handle)
efi_delete_handle(bp->bp.driver_binding_handle);
free(bp);
return ret;
}

View file

@ -59,6 +59,10 @@ static efi_handle_t current_image;
static volatile gd_t *efi_gd, *app_gd;
#endif
static efi_status_t efi_uninstall_protocol
(efi_handle_t handle, const efi_guid_t *protocol,
void *protocol_interface);
/* 1 if inside U-Boot code, 0 if inside EFI payload code */
static int entry_count = 1;
static int nesting_level;
@ -610,8 +614,8 @@ static efi_status_t efi_remove_all_protocols(const efi_handle_t handle)
list_for_each_entry_safe(protocol, pos, &efiobj->protocols, link) {
efi_status_t ret;
ret = efi_remove_protocol(handle, &protocol->guid,
protocol->protocol_interface);
ret = efi_uninstall_protocol(handle, &protocol->guid,
protocol->protocol_interface);
if (ret != EFI_SUCCESS)
return ret;
}
@ -622,19 +626,23 @@ static efi_status_t efi_remove_all_protocols(const efi_handle_t handle)
* efi_delete_handle() - delete handle
*
* @handle: handle to delete
*
* Return: status code
*/
void efi_delete_handle(efi_handle_t handle)
efi_status_t efi_delete_handle(efi_handle_t handle)
{
efi_status_t ret;
ret = efi_remove_all_protocols(handle);
if (ret == EFI_INVALID_PARAMETER) {
log_err("Can't remove invalid handle %p\n", handle);
return;
if (ret != EFI_SUCCESS) {
log_err("Handle %p has protocols installed. Unable to delete\n", handle);
return ret;
}
list_del(&handle->link);
free(handle);
return ret;
}
/**

View file

@ -22,16 +22,6 @@
#include <asm-generic/unaligned.h>
#include <linux/compat.h> /* U16_MAX */
#ifdef CONFIG_BLKMAP
const efi_guid_t efi_guid_blkmap_dev = U_BOOT_BLKMAP_DEV_GUID;
#endif
#ifdef CONFIG_SANDBOX
const efi_guid_t efi_guid_host_dev = U_BOOT_HOST_DEV_GUID;
#endif
#ifdef CONFIG_VIRTIO_BLK
const efi_guid_t efi_guid_virtio_dev = U_BOOT_VIRTIO_DEV_GUID;
#endif
/* template END node: */
const struct efi_device_path END = {
.type = DEVICE_PATH_TYPE_END,
@ -524,43 +514,15 @@ __maybe_unused static unsigned int dp_size(struct udevice *dev)
return dp_size(dev->parent) +
sizeof(struct efi_device_path_nvme);
#endif
#ifdef CONFIG_SANDBOX
case UCLASS_HOST:
/*
* Sandbox's host device will be represented
* as vendor device with extra one byte for
* device number
*/
return dp_size(dev->parent)
+ sizeof(struct efi_device_path_vendor) + 1;
#endif
#ifdef CONFIG_USB
case UCLASS_MASS_STORAGE:
return dp_size(dev->parent)
+ sizeof(struct efi_device_path_controller);
#endif
#ifdef CONFIG_VIRTIO_BLK
case UCLASS_VIRTIO:
/*
* Virtio devices will be represented as a vendor
* device node with an extra byte for the device
* number.
*/
return dp_size(dev->parent)
+ sizeof(struct efi_device_path_vendor) + 1;
#endif
#ifdef CONFIG_BLKMAP
case UCLASS_BLKMAP:
/*
* blkmap devices will be represented as a vendor
* device node with an extra byte for the device
* number.
*/
return dp_size(dev->parent)
+ sizeof(struct efi_device_path_vendor) + 1;
#endif
default:
return dp_size(dev->parent);
/* UCLASS_BLKMAP, UCLASS_HOST, UCLASS_VIRTIO */
return dp_size(dev->parent) +
sizeof(struct efi_device_path_udevice);
}
#if defined(CONFIG_MMC)
case UCLASS_MMC:
@ -586,14 +548,19 @@ __maybe_unused static unsigned int dp_size(struct udevice *dev)
*/
__maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
{
enum uclass_id uclass_id;
if (!dev || !dev->driver)
return buf;
switch (device_get_uclass_id(dev)) {
uclass_id = device_get_uclass_id(dev);
if (uclass_id != UCLASS_ROOT)
buf = dp_fill(buf, dev->parent);
switch (uclass_id) {
#ifdef CONFIG_NETDEVICES
case UCLASS_ETH: {
struct efi_device_path_mac_addr *dp =
dp_fill(buf, dev->parent);
struct efi_device_path_mac_addr *dp = buf;
struct eth_pdata *pdata = dev_get_plat(dev);
dp->dp.type = DEVICE_PATH_TYPE_MESSAGING_DEVICE;
@ -608,57 +575,10 @@ __maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
}
#endif
case UCLASS_BLK:
switch (dev->parent->uclass->uc_drv->id) {
#ifdef CONFIG_BLKMAP
case UCLASS_BLKMAP: {
struct efi_device_path_vendor *dp;
struct blk_desc *desc = dev_get_uclass_plat(dev);
dp = dp_fill(buf, dev->parent);
dp->dp.type = DEVICE_PATH_TYPE_HARDWARE_DEVICE;
dp->dp.sub_type = DEVICE_PATH_SUB_TYPE_VENDOR;
dp->dp.length = sizeof(*dp) + 1;
memcpy(&dp->guid, &efi_guid_blkmap_dev,
sizeof(efi_guid_t));
dp->vendor_data[0] = desc->devnum;
return &dp->vendor_data[1];
}
#endif
#ifdef CONFIG_SANDBOX
case UCLASS_HOST: {
/* stop traversing parents at this point: */
struct efi_device_path_vendor *dp;
struct blk_desc *desc = dev_get_uclass_plat(dev);
dp = dp_fill(buf, dev->parent);
dp->dp.type = DEVICE_PATH_TYPE_HARDWARE_DEVICE;
dp->dp.sub_type = DEVICE_PATH_SUB_TYPE_VENDOR;
dp->dp.length = sizeof(*dp) + 1;
memcpy(&dp->guid, &efi_guid_host_dev,
sizeof(efi_guid_t));
dp->vendor_data[0] = desc->devnum;
return &dp->vendor_data[1];
}
#endif
#ifdef CONFIG_VIRTIO_BLK
case UCLASS_VIRTIO: {
struct efi_device_path_vendor *dp;
struct blk_desc *desc = dev_get_uclass_plat(dev);
dp = dp_fill(buf, dev->parent);
dp->dp.type = DEVICE_PATH_TYPE_HARDWARE_DEVICE;
dp->dp.sub_type = DEVICE_PATH_SUB_TYPE_VENDOR;
dp->dp.length = sizeof(*dp) + 1;
memcpy(&dp->guid, &efi_guid_virtio_dev,
sizeof(efi_guid_t));
dp->vendor_data[0] = desc->devnum;
return &dp->vendor_data[1];
}
#endif
switch (device_get_uclass_id(dev->parent)) {
#ifdef CONFIG_IDE
case UCLASS_IDE: {
struct efi_device_path_atapi *dp =
dp_fill(buf, dev->parent);
struct efi_device_path_atapi *dp = buf;
struct blk_desc *desc = dev_get_uclass_plat(dev);
dp->dp.type = DEVICE_PATH_TYPE_MESSAGING_DEVICE;
@ -674,8 +594,7 @@ __maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
#endif
#if defined(CONFIG_SCSI)
case UCLASS_SCSI: {
struct efi_device_path_scsi *dp =
dp_fill(buf, dev->parent);
struct efi_device_path_scsi *dp = buf;
struct blk_desc *desc = dev_get_uclass_plat(dev);
dp->dp.type = DEVICE_PATH_TYPE_MESSAGING_DEVICE;
@ -688,8 +607,7 @@ __maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
#endif
#if defined(CONFIG_MMC)
case UCLASS_MMC: {
struct efi_device_path_sd_mmc_path *sddp =
dp_fill(buf, dev->parent);
struct efi_device_path_sd_mmc_path *sddp = buf;
struct blk_desc *desc = dev_get_uclass_plat(dev);
sddp->dp.type = DEVICE_PATH_TYPE_MESSAGING_DEVICE;
@ -703,8 +621,7 @@ __maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
#endif
#if defined(CONFIG_AHCI) || defined(CONFIG_SATA)
case UCLASS_AHCI: {
struct efi_device_path_sata *dp =
dp_fill(buf, dev->parent);
struct efi_device_path_sata *dp = buf;
struct blk_desc *desc = dev_get_uclass_plat(dev);
dp->dp.type = DEVICE_PATH_TYPE_MESSAGING_DEVICE;
@ -719,8 +636,7 @@ __maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
#endif
#if defined(CONFIG_NVME)
case UCLASS_NVME: {
struct efi_device_path_nvme *dp =
dp_fill(buf, dev->parent);
struct efi_device_path_nvme *dp = buf;
u32 ns_id;
dp->dp.type = DEVICE_PATH_TYPE_MESSAGING_DEVICE;
@ -734,8 +650,7 @@ __maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
#if defined(CONFIG_USB)
case UCLASS_MASS_STORAGE: {
struct blk_desc *desc = dev_get_uclass_plat(dev);
struct efi_device_path_controller *dp =
dp_fill(buf, dev->parent);
struct efi_device_path_controller *dp = buf;
dp->dp.type = DEVICE_PATH_TYPE_HARDWARE_DEVICE;
dp->dp.sub_type = DEVICE_PATH_SUB_TYPE_CONTROLLER;
@ -744,16 +659,26 @@ __maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
return &dp[1];
}
#endif
default:
debug("%s(%u) %s: unhandled parent class: %s (%u)\n",
__FILE__, __LINE__, __func__,
dev->name, dev->parent->uclass->uc_drv->id);
return dp_fill(buf, dev->parent);
default: {
/* UCLASS_BLKMAP, UCLASS_HOST, UCLASS_VIRTIO */
struct efi_device_path_udevice *dp = buf;
struct blk_desc *desc = dev_get_uclass_plat(dev);
dp->dp.type = DEVICE_PATH_TYPE_HARDWARE_DEVICE;
dp->dp.sub_type = DEVICE_PATH_SUB_TYPE_VENDOR;
dp->dp.length = sizeof(*dp);
memcpy(&dp->guid, &efi_u_boot_guid,
sizeof(efi_guid_t));
dp->uclass_id = (UCLASS_BLK & 0xffff) |
(desc->uclass_id << 16);
dp->dev_number = desc->devnum;
return &dp[1];
}
}
#if defined(CONFIG_MMC)
case UCLASS_MMC: {
struct efi_device_path_sd_mmc_path *sddp =
dp_fill(buf, dev->parent);
struct efi_device_path_sd_mmc_path *sddp = buf;
struct mmc *mmc = mmc_get_mmc_dev(dev);
struct blk_desc *desc = mmc_get_blk_desc(mmc);
@ -769,7 +694,7 @@ __maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
#endif
case UCLASS_MASS_STORAGE:
case UCLASS_USB_HUB: {
struct efi_device_path_usb *udp = dp_fill(buf, dev->parent);
struct efi_device_path_usb *udp = buf;
switch (device_get_uclass_id(dev->parent)) {
case UCLASS_USB_HUB: {
@ -789,13 +714,7 @@ __maybe_unused static void *dp_fill(void *buf, struct udevice *dev)
return &udp[1];
}
default: {
struct efi_device_path_udevice *vdp;
enum uclass_id uclass_id = device_get_uclass_id(dev);
if (uclass_id == UCLASS_ROOT)
vdp = buf;
else
vdp = dp_fill(buf, dev->parent);
struct efi_device_path_udevice *vdp = buf;
vdp->dp.type = DEVICE_PATH_TYPE_HARDWARE_DEVICE;
vdp->dp.sub_type = DEVICE_PATH_SUB_TYPE_VENDOR;

View file

@ -708,6 +708,7 @@ int efi_disk_remove(void *ctx, struct event *event)
efi_handle_t handle;
struct blk_desc *desc;
struct efi_disk_obj *diskobj = NULL;
efi_status_t ret;
if (dev_tag_get_ptr(dev, DM_TAG_EFI, (void **)&handle))
return 0;
@ -727,10 +728,14 @@ int efi_disk_remove(void *ctx, struct event *event)
return 0;
}
ret = efi_delete_handle(handle);
/* Do not delete DM device if there are still EFI drivers attached. */
if (ret != EFI_SUCCESS)
return -1;
if (diskobj)
efi_free_pool(diskobj->dp);
efi_delete_handle(handle);
dev_tag_del(dev, DM_TAG_EFI);
return 0;

View file

@ -31,10 +31,10 @@ efi_status_t efi_set_load_options(efi_handle_t handle,
efi_status_t ret;
ret = efi_search_protocol(handle, &efi_guid_loaded_image, &handler);
loaded_image_info = handler->protocol_interface;
if (ret != EFI_SUCCESS)
return EFI_INVALID_PARAMETER;
loaded_image_info = handler->protocol_interface;
loaded_image_info->load_options = load_options;
loaded_image_info->load_options_size = load_options_size;