DM365 booting from SD card

来源:互联网 发布:coser 知乎 编辑:程序博客网 时间:2024/05/28 05:18

1.  SD / MMC

 

 

 

偏移地址0x200 (第2块第0页,每块0x200 = 512字节)

80700200: a1aced00 00000100 00000028 00000075    ........(...u...
80700210: 00000000 00000000 00000000 00000000    ................

...

80700600: a1aced00 00000100 00000028 00000075    ........(...u...
80700610: 00000000 00000000 00000000 00000000    ................

用工具烧写的SD卡几乎前面的几个块开头都有UBL magic number 及描述符

a1aced00 00000100 00000028 00000075

Page 0 Address

Value

Address

32-Bits

Description

0

a1aced00

 

0xA1AC EDxx

Magic number (0xA1ACEDxx)

4

00000100

 

Entry Point Address of UBL

Entry point address for the user bootloader (absolute address)

8

00000028

 

Number of blocks in UBL

Number of blocks (size of user bootloader in number of blocks)

12

00000075

0x75×0x200=EA00

Starting Block # of UBL

Block number where user bootloader is located

 

  • 根据 Number of blocks in UBL 计算Ubl大小(非实际大小,可能略大于)

0x28 *0x200 (/字节) = 20,480字节

 

支持最大UBL 30KB

 

  • Starting Block # of UBL 指明,从偏移地址EA00  处开始,为UBL实际内容:

 

8070ea00: ee190f31 e3a00001 ee090f31 ee190f11    1.......1.......
8070ea10: e59f0038 e380001d ee090f11 e59f0034    8...........4...
8070ea20: e59f1034 e59f2034 e1520000 9a000005    4...4 ....R.....
8070ea30: e0422000 e1a02142 e490c004 e2522001    . B.B!....... R.
8070ea40: e481c004 1afffffb e59f0004 e1a0f000    ................
8070ea50: 00010000 00000100 02000000 00010020    ............ ...
8070ea60: 02004428 e12fff1e 00000000 00000000    (D..../.........

 

(将SD卡读到内存 0x80700000处后直接看内存)