mt7628 uboot spl

u-boot-spl.bin

sample is from uboot mainline

begin of file is text section:

Disassembly of section .text:

9c000000 <_start>:
9c000000:       1000013f        b       9c000500 <reset>
9c000004:       00000000        nop
	...
9c000200:       0320d025        move    k0,t9
9c000204:       0080d825        move    k1,a0
9c000208:       2419000f        li      t9,15
9c00020c:       24040000        li      a0,0
9c000210:       7000007f        sdbbp   0x1
	...

why 0x9c000000, because mt7628 have a flash direct access memory at 0x1c000000

0x9c000000 is KSEG0 mapping.

ref:

https://johnloomis.org/microchip/pic32/memory/memory.html

https://s3-eu-west-1.amazonaws.com/downloads-mips/documents/MD00565-2B-MIPS32-QRC-01.01.pdf

I guess mt7628 bootup process is:

BROM: do some thing.
BROM: setup pc (program counter) register to FLASH_MAPPING (0x9c000000)
FLASH_MAPPING: pc is 0x9c000000, instruction is 'b reset'
FLASH_MAPPING: jump to 'reset'
FLASH_MAPPING: do some thing in 'reset'
FLASH_MAPPING: init SDRAM
FLASH_MAPPING: init some thing
FLASH_MAPPING: copy uboot to SDRAM
FLASH_MAPPING: setup pc to SDRAM at uboot entry
SDRAM: uboot is starting.
SDRAM: all is ok, display prompt.

Last updated: 2023-06-28