Ayufan, I think, usually uses GPT partitoning, better check
No, uboot is not in internal memory, bootrom is quite limited,
it searches, in its boot order (SPI, emmc, SD, usb-not-for-booting) for
the signature of idbloader, on the above media (3B 8C DC FC BE 9F 9D 51)
Signature (for rk3399) is 64 sectors in, this is a "raw" read
Then idbloader sets up memory, has more memory available, loads uboot,
I think it is assumed that it will be on that same media as idbloader, 8M in
To have space for this (idbloader, uboot, trust) is why 1st user partition is at 16m, 32768 sectors
The bootrom will use the 1st idbloader found, ignore all others (in its search path)
So,.... if SPI is blank, if emmc uboot area is blank, then idbloader & uboot on SD will be used
To blank,,, save mbr, dd /dev/zero to 1st-16M, restore mbr,, GPT mbr is 34 sectors
--edit--
uboot nearly always has a different search path, looking for extlinux.conf or boot.scr, for example
@localhost mrfixit-uboot]$ strings uboot.img |grep _target
boot_targets=mmc1 nvme0 usb0 mmc0 pxe dhcp ,,,,, mmc0 is emmc
In previous post, if SD partitions are deleted, can't find anything on disk it is still there, just in unknown place
(idbloader/uboot/trust) is equivalent of bios, they are loaded by "raw" reads
No, uboot is not in internal memory, bootrom is quite limited,
it searches, in its boot order (SPI, emmc, SD, usb-not-for-booting) for
the signature of idbloader, on the above media (3B 8C DC FC BE 9F 9D 51)
Signature (for rk3399) is 64 sectors in, this is a "raw" read
Then idbloader sets up memory, has more memory available, loads uboot,
I think it is assumed that it will be on that same media as idbloader, 8M in
To have space for this (idbloader, uboot, trust) is why 1st user partition is at 16m, 32768 sectors
The bootrom will use the 1st idbloader found, ignore all others (in its search path)
So,.... if SPI is blank, if emmc uboot area is blank, then idbloader & uboot on SD will be used
To blank,,, save mbr, dd /dev/zero to 1st-16M, restore mbr,, GPT mbr is 34 sectors
--edit--
uboot nearly always has a different search path, looking for extlinux.conf or boot.scr, for example
@localhost mrfixit-uboot]$ strings uboot.img |grep _target
boot_targets=mmc1 nvme0 usb0 mmc0 pxe dhcp ,,,,, mmc0 is emmc
In previous post, if SD partitions are deleted, can't find anything on disk it is still there, just in unknown place
(idbloader/uboot/trust) is equivalent of bios, they are loaded by "raw" reads