This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
products:sbc:edge2:troubleshooting:edge2-uboot-uefi [2023/07/17 23:12] hyphop |
products:sbc:edge2:troubleshooting:edge2-uboot-uefi [2023/08/28 02:14] (current) hyphop [Edge2 Uboot UEFI] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== Edge2 Uboot EFI ===== | + | ~~tag> Edge2 Uboot UEFI boot~~ |
+ | |||
+ | ===== Edge2 Uboot UEFI ===== | ||
- | WIP: ... | + | <WRAP important > |
- | ```shell partitions | + | We recommend start 1st partition from 32768 block |
- | master@universe:/tmp/uboot$ sfdisk --dump /dev/sda | + | |
+ | ``` | ||
+ | sfdisk --dump / | ||
+ | first-lba: 32768 | ||
+ | / | ||
+ | ``` | ||
+ | |||
+ | </ | ||
+ | |||
+ | <WRAP tip > | ||
+ | UEFI bootloader for [[:Edge2]] can be fixed/ | ||
+ | |||
+ | </ | ||
+ | |||
+ | <WRAP tip > | ||
+ | UEFI bootloader for [[:Edge2]] can be installed via [[:OOWOW]] online images | ||
+ | </ | ||
+ | |||
+ | <WRAP tip > | ||
+ | Problems was solved: [[# | ||
+ | </ | ||
+ | |||
+ | <WRAP alert > | ||
+ | eMMC storage From **16384** to **32768** block must be reserved for boot-loader | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Default Boot problem ===== | ||
+ | |||
+ | OOWOW SPL loader can't find FIT-image at **0x4000** sector eMMC | SD | ||
+ | |||
+ | ```log OOWOW SPL boot log | ||
+ | |||
+ | U-Boot SPL board init | ||
+ | U-Boot SPL 2017.09 (May 12 2023 - 11:40:17) | ||
+ | Failed to set cpub01 | ||
+ | Failed to set cpub23 | ||
+ | I2c2 speed: 100000Hz | ||
+ | MCU: boot mode 0x20: 1, flag 0x92: 3 | ||
+ | MCU: boot flag < 83 | ||
+ | board_boot_order: | ||
+ | !!! same-as-spl: | ||
+ | +++ /mmc@fe2e0000: | ||
+ | !!! /mmc@fe2c0000: | ||
+ | !!! /mmc@fe2e0000: | ||
+ | !!! / | ||
+ | Trying to boot from MMC1 :: 0 | ||
+ | Trying fit image at 0x4000 sector | ||
+ | Not fit magic | ||
+ | ... | ||
+ | ``` | ||
+ | |||
+ | ===== Solution ===== | ||
+ | |||
+ | Write FIT image to eMMC or SD **0x4000** sector | ||
+ | |||
+ | ```sh write-uefi-bootloader-to-emmc | ||
+ | EFI=edge2_UEFI_Release_v0.7.1.img | ||
+ | wget https:// | ||
+ | DISK=${DISK: | ||
+ | dd skip=2048 seek=$((0x4000)) count=$((0x4000)) of=$DISK if=$EFI conv=fsync, | ||
+ | ``` | ||
+ | |||
+ | For example 1st write https:// | ||
+ | to USB flash, start OOWOW going into shell... | ||
+ | |||
+ | ```sh copy FIT image to eMMC | ||
+ | dd if=/dev/sda skip=2048 count=$((0x4000)) seek=$((0x4000)) of=/ | ||
+ | ``` | ||
+ | |||
+ | or just using oowow with Internet, start OOWOW going into shell... | ||
+ | |||
+ | ```shell oowow copy EFI loader to eMMC | ||
+ | root@edge2-00000:/# | ||
+ | | ||
+ | | ||
+ | ``` | ||
+ | |||
+ | ```shell check eMMC EFI Image header | ||
+ | root@edge2-00000:/# | ||
+ | | hexdump -C | grep " | ||
+ | ``` | ||
+ | |||
+ | ```shell check eMMC | ||
+ | root@edge2-00000:/# | ||
+ | |||
+ | 1+0 records in | ||
+ | 1+0 records out | ||
+ | 512 bytes copied, 0.000668208 s, 766 kB/s | ||
+ | 00000000 | ||
+ | 00000010 | ||
+ | 00000020 | ||
+ | 00000030 | ||
+ | 00000040 | ||
+ | 00000050 | ||
+ | 00000060 | ||
+ | 00000070 | ||
+ | 00000080 | ||
+ | 00000090 | ||
+ | 000000a0 | ||
+ | 000000b0 | ||
+ | 000000c0 | ||
+ | 000000d0 | ||
+ | 000000e0 | ||
+ | 000000f0 | ||
+ | 00000100 | ||
+ | 00000110 | ||
+ | 00000120 | ||
+ | 00000130 | ||
+ | 00000140 | ||
+ | 00000150 | ||
+ | 00000160 | ||
+ | 00000170 | ||
+ | 00000180 | ||
+ | 00000190 | ||
+ | 000001a0 | ||
+ | 000001b0 | ||
+ | 000001c0 | ||
+ | 000001d0 | ||
+ | 000001e0 | ||
+ | 000001f0 | ||
+ | 00000200 | ||
+ | |||
+ | ``` | ||
+ | ===== UBOOT SPL EFI logs ===== | ||
+ | |||
+ | ```log UBOOT SPL EFI logs | ||
+ | Trying to boot from MMC1 :: 1 | ||
+ | Trying fit image at 0x4000 sector | ||
+ | ## Verified-boot: | ||
+ | ## Checking atf-1 0x00040000 ... sha256(909ea14106...) + OK | ||
+ | ## Checking | ||
+ | ## Checking fdt 0x00300000 ... sha256(c07f4a4d71...) + OK | ||
+ | ## Checking atf-2 0x000f0000 ... sha256(6a970ae6b4...) + OK | ||
+ | ## Checking atf-3 0xff100000 ... sha256(3ea8cf0d7e...) + OK | ||
+ | ## Checking optee 0x08400000 ... sha256(fde0860845...) + OK | ||
+ | Jumping to U-Boot(0x00200000) via ARM Trusted Firmware(0x00040000) | ||
+ | Total: 126.537 ms | ||
+ | ... | ||
+ | UEFI firmware (version 3676af4b built at 16:11:00 on May 11 2023) | ||
+ | ... | ||
+ | |||
+ | ``` | ||
+ | |||
+ | ===== UBOOT EFI disk partitions ===== | ||
+ | |||
+ | ```shell UBOOT EFI partitions dump | ||
+ | ~$ sfdisk --dump /dev/sda | ||
label: gpt | label: gpt | ||
Line 14: | Line 163: | ||
/dev/sda1 : start= | /dev/sda1 : start= | ||
+ | |||
+ | ``` | ||
+ | |||
+ | ===== UEFI image info ===== | ||
+ | |||
+ | ```shell UEFI-info example | ||
+ | |||
+ | ~$ ./ | ||
+ | |||
+ | /dts-v1/; | ||
+ | version = < | ||
+ | totalsize = < | ||
+ | timestamp = < | ||
+ | description = "FIT Image with ATF/ | ||
+ | # | ||
+ | |||
+ | SIZE: 0x5afc0b == 5962763 : 11646 == 5962774 | ||
+ | LAST: 7274496(14208 - 0x3780) < 7274496 < 0x6F0000 | ||
+ | |||
+ | # dd skip=2048 count=11646 of=edge2-uefi-bootloader.img if=RK3588_NOR_FLASH_REL.img conv=fsync, | ||
+ | |||
+ | / { | ||
+ | images { | ||
+ | uboot { | ||
+ | data-size = < | ||
+ | data-offset = < | ||
+ | atf-1 { | ||
+ | data-size = < | ||
+ | data-offset = < | ||
+ | atf-2 { | ||
+ | data-size = < | ||
+ | data-offset = < | ||
+ | atf-3 { | ||
+ | data-size = < | ||
+ | data-offset = < | ||
+ | optee { | ||
+ | data-size = < | ||
+ | data-offset = < | ||
+ | fdt { | ||
+ | data-size = < | ||
+ | data-offset = < | ||
+ | nvdata { | ||
+ | data-position = < | ||
+ | data-size = < | ||
+ | configurations { | ||
+ | loadables = " | ||
+ | |||
+ | 005afb70 | ||
+ | 005afb80 | ||
+ | 005afb90 | ||
+ | 005afba0 | ||
+ | 005afbb0 | ||
+ | 005afbc0 | ||
+ | 005afbd0 | ||
+ | 005afbe0 | ||
+ | 005afbf0 | ||
+ | 005afc00 | ||
+ | |||
+ | 1f206fece22135a50e929aff52105782 | ||
+ | |||
+ | edge2-uefi-bootloader.img: | ||
+ | |||
``` | ``` | ||
+ | |||
+ | ===== Downloads ===== | ||
+ | |||
+ | * [[dl>/ | ||
+ | * [[gh>/ | ||
+ | |||
+ | ===== Links ===== | ||
+ | |||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||