hi,
i see also the raise errors and unknown partitiontable (where i do not know if it is from sd or emmc)
mmc-part of preloader-output looks same as in your log
[mmc_init_mem_card 3140][SD0] Initialized, eMMC50
before host->cur_bus_clk(259740)
[info][msdc_config_clksrc] input clock is 400000kHz
[info][msdc_set_startbit 1127] read data start bit at rising edge
[SD0] SET_CLK(52000kHz): SCLK(50000kHz) MODE(2) DDR(1) DIV(1) DS(0) RS(0)
host->cur_bus_clk(50000000)
[mmc_init_card]: finish successfully
i wonder about this (needed for emmc to work?):
NAND: Recognize SNAND: ID [ef aa 21 ], Device Name [Winbond 1Gb], Page Size [2048]B Spare Size [64]B Total Size [128]MB
[mtk_snand] probe successfully!
[BBT] BMT.v2 is found at 0x3ff
also i see you have a newer build of uboot (not the one from the ubuntu-image)
U-Boot (Oct 02 2019 - 15:01:05)
and you use a ubuntu 18.4 image i have not found yet (only 16.4 for r64). also in your wiki there is only ubuntu 16.4.
i guess you have changes in uboot/image (atf, bootheaders, …) which are not yet public
That works for the normal OpenWrt build. But if the OpenWrt included many third-party modules, the initramfs-kernel.bin may bigger than 20MB+, after load that kernel into flash via TFTP, the kernel decompress failed with error “Uncompressing Kernel Image … LZMA: uncompress or overwrite error 1”. I think it’s the kernel partition is too small to fit the big kernel. But i don’t know how to modify the kernel partition size. Could you please tell me how to?
I successfully boot from SD.
Also, I managed to change root partition in uEnv.txt file to eMMC’ one and load system from eMMC, but not the kernel.
I many times toggled Boot select switch (physical), but not understand how it works. It seems it doesn’t work with my BPI-R64, that is I got boot from SD in either cases and cannot boot anyhow without it.
Thanks, it works,
really it works up to ‘U-Boot SD CARD’
*** U-Boot SD CARD ***
1. System Load Linux to SDRAM via TFTP.
2. System Load Linux Kernel then write to Flash via TFTP.
3. Boot Linux from SD.
4. System Load U-Boot then write to Flash via TFTP.
5. System Load U-Boot then write to Flash via Serial.
6. System Load ATF then write to Flash via TFTP.
7. System Load Preloader then write to Flash via TFTP.
8. System Load ROM header then write to Flash via TFTP.
9. System Load CTP then write to Flash via TFTP.
a. System Load CTP then Boot to CTP (via Flash).
b. System Load flashimage then write to Flash via TFTP.
c. System Load partition table then write to Flash via TFTP.
U-Boot console
Press UP/DOWN to move or Press 1~9,a~b to choose, ENTER to select
change root and uEnv.txt and finally booted from emmc.
Thanks, Franks.
How does it work, u-boot-mtk_r64_emmc_rtl8367_gcc8.3.bin - how to build it/where is config etc? How you have changed that menu to
*** U-Boot EMMC ***
1. Reload Bootmenu
2. Load Kernel from TFTP.
3. Boot Linux from SD.
U-Boot console
Press UP/DOWN to move or Press 1~9,a~b to choose, ENTER to select
i have not done anything on r64 with openwrt…i only loaded linux kernel from uboot without using the flashing menuentries in stock uboot…
try loading your file without the flash command
as you see uboot-menu your uart setup is right so far…only kernel cmdline may not be right (console=…), so you don’t see kernel booting. maybe you can check if system is booted if you can ping router over ethernet (openwrts default ip/dhcp-ip)