en:bpi-r3:uboot
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
en:bpi-r3:uboot [2023/04/02 15:19] – [nor flash] frank | en:bpi-r3:uboot [2024/04/07 09:39] (current) – [writing emmc] frank | ||
---|---|---|---|
Line 69: | Line 69: | ||
BPI-R3> run newboot | BPI-R3> run newboot | ||
- | # | + | #using dt-overlay |
BPI-R3> setenv bootconf "# | BPI-R3> setenv bootconf "# | ||
Line 86: | Line 86: | ||
Bootup with sdcard (put spi-nand bl2 + fip with emmc-and usb-support as files on card) and flash them like described [[# | Bootup with sdcard (put spi-nand bl2 + fip with emmc-and usb-support as files on card) and flash them like described [[# | ||
===== nand flash ===== | ===== nand flash ===== | ||
+ | |||
+ | https:// | ||
< | < | ||
Line 139: | Line 141: | ||
===== nor flash ===== | ===== nor flash ===== | ||
- | FIXME not complete | + | https:// |
< | < | ||
- | MT7986> fatload usb 0:1 ${loadaddr} 2023.04/ | ||
- | 202160 bytes read in 21 ms (9.2 MiB/s) | ||
MT7986> sf probe | MT7986> sf probe | ||
SF: Detected w25q256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB | SF: Detected w25q256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB | ||
MT7986> sf erase 0 0x180000 | MT7986> sf erase 0 0x180000 | ||
SF: 1572864 bytes @ 0x0 Erased: OK | SF: 1572864 bytes @ 0x0 Erased: OK | ||
+ | MT7986> fatload usb 0:1 ${loadaddr} 2023.04/ | ||
+ | 202160 bytes read in 21 ms (9.2 MiB/s) | ||
MT7986> sf write ${loadaddr} 0 0x40000 | MT7986> sf write ${loadaddr} 0 0x40000 | ||
device 0 offset 0x0, size 0x40000 | device 0 offset 0x0, size 0x40000 | ||
SF: 262144 bytes @ 0x0 Written: OK | SF: 262144 bytes @ 0x0 Written: OK | ||
MT7986> fatload usb 0:1 ${loadaddr} 2023.04/ | MT7986> fatload usb 0:1 ${loadaddr} 2023.04/ | ||
- | 645009 | + | 255509 |
- | MT7986> sf write ${loadaddr} 0x100000 | + | MT7986> sf write ${loadaddr} 0x100000 |
- | device 0 offset 0x100000, size 0xa0000 | + | device 0 offset 0x100000, size 0x80000 |
- | SF: 655360 | + | SF: 524288 |
+ | </ | ||
+ | |||
+ | if you get this error on bootup | ||
+ | |||
+ | NOTICE: | ||
+ | No valid device tree binary found at 0000000041e92f20 | ||
+ | initcall sequence 0000000041e621a8 failed at call 0000000041e57800 (err=-2) | ||
+ | ### ERROR ### Please RESET the board ### | ||
+ | |||
+ | you need to compress bl31 | ||
+ | |||
+ | xz -f -e -k -9 -C crc32 u-boot.bin | ||
+ | |||
+ | and use the resulting u-boot.bin.xz as BL33 | ||
+ | |||
+ | ==== kernel/ | ||
+ | |||
+ | currently untested... | ||
+ | |||
+ | < | ||
+ | label = " | ||
+ | reg = < | ||
+ | |||
+ | label = " | ||
+ | reg = < | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | MT7986> sf probe | ||
+ | SF: Detected w25q256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB | ||
+ | MT7986> sf erase 0x180000 0xa80000 | ||
+ | SF: 11010048 bytes @ 0x180000 Erased: OK | ||
+ | MT7986> fatload usb 0:1 ${loadaddr} rootfs_bpi-r3.cpio.zst | ||
+ | 9501203 bytes read in 798 ms (11.4 MiB/s) | ||
+ | MT7986> sf write ${loadaddr} 0x180000 ${filesize} | ||
+ | device 0 offset 0x180000, size 0x90fa13 | ||
+ | SF: 9501203 bytes @ 0x180000 Written: OK | ||
+ | MT7986> sf erase 0xc00000 0x1400000 | ||
+ | SF: 20971520 bytes @ 0xc00000 Erased: OK | ||
+ | MT7986> fatload usb 0:1 ${loadaddr} bpi-r3-6.1.itb | ||
+ | 8424540 bytes read in 708 ms (11.3 MiB/s) | ||
+ | MT7986> sf write ${loadaddr} 0xc00000 ${filesize} | ||
+ | device 0 offset 0xc00000, size 0x808c5c | ||
+ | SF: 8424540 bytes @ 0xc00000 Written: OK | ||
+ | </ | ||
+ | |||
+ | loading it: | ||
+ | |||
+ | < | ||
+ | MT7986> setenv useinitrd ' | ||
+ | MT7986> sf read ${rdaddr} 0x180000 0xa80000 | ||
+ | device 0 offset 0x180000, size 0xa80000 | ||
+ | SF: 11010048 bytes @ 0x180000 Read: OK | ||
+ | MT7986> sf read ${kaddr} 0xc00000 0x1400000 | ||
+ | device 0 offset 0xc00000, size 0x1400000 | ||
+ | SF: 20971520 bytes @ 0xc00000 Read: OK | ||
+ | MT7986> setenv bootnor 'run useinitrd; | ||
+ | MT7986> run bootnor | ||
</ | </ | ||
===== usb ===== | ===== usb ===== | ||
Line 198: | Line 258: | ||
</ | </ | ||
===== writing emmc ===== | ===== writing emmc ===== | ||
+ | |||
+ | :!: newest atf for mediatek needs gpt with fip partition so it must be created first (maybe copy first 1M from sdcard to emmc). | ||
get emmc/gpt information: | get emmc/gpt information: | ||
Line 345: | Line 407: | ||
now flash bl2 to boot0 block and fip to fip partition | now flash bl2 to boot0 block and fip to fip partition | ||
+ | |||
+ | short way using my environment: | ||
+ | < | ||
+ | MT7986> setenv bl2file 2023.04/ | ||
+ | MT7986> setenv fipfile 2023.04/ | ||
+ | MT7986> run wremmc | ||
+ | bl2file=2023.04/ | ||
+ | 195976 bytes read in 20 ms (9.3 MiB/ | ||
+ | | ||
+ | MMC erase: dev # 0, block # 0, count 1024 ... 1024 blocks erased: OK | ||
+ | | ||
+ | MMC write: dev # 0, block # 0, count 1024 ... 1024 blocks written: OK | ||
+ | fipfile=2023.04/ | ||
+ | 645001 bytes read in 58 ms (10.6 MiB/ | ||
+ | | ||
+ | MMC erase: dev # 0, block # 13312, count 4096 ... 4096 blocks erased: OK | ||
+ | | ||
+ | MMC write: dev # 0, block # 13312, count 4096 ... 4096 blocks written: OK | ||
+ | </ | ||
+ | manual way: | ||
+ | < | ||
< | < | ||
BPI-R3> mmc dev 0 | BPI-R3> mmc dev 0 | ||
Line 371: | Line 454: | ||
BPI-R3> | BPI-R3> | ||
</ | </ | ||
+ | </ | ||
If boot from emmc does not work,maybe bootbus needs to be changed to 0: | If boot from emmc does not work,maybe bootbus needs to be changed to 0: |
en/bpi-r3/uboot.1680441595.txt.gz · Last modified: 2023/06/08 17:06 (external edit)