(6) 內(nèi)存/寄存器操作指令
nm 修改內(nèi)存值 (指定地址) 格式: nm [.b, .w, .l] address
mm 修改內(nèi)存值(地址自動(dòng)加一) 格式: mm [.b, .w, .l] address
md 顯示內(nèi)存值 格式: md [.b, .w, .l] address [# of objects]
mw 用指定的數(shù)據(jù)填充內(nèi)存 格式: mw [.b, .w, .l] address value [count]
cp 內(nèi)存的拷貝(包括內(nèi)存與Nor Flash間的數(shù)據(jù)拷貝) 格式:cp [.b, .w, .l] source target count
上面是查看和修改內(nèi)存值的指令,可以查看和修改SDRAM和寄存器值。 [.b, .w, .l]代表了查看和修改形式:Byte、word、long 使用范例:
[u-boot@MINI2440]# md.b 0x30008000 20 30008000: cc 33 fe 33 cc b3 4c 33 ac 33 de 33 5c 13 cc 33 .3.3..L3.3.3\..3 30008010: cc 32 cc 31 dc 33 cf 33 cc 33 4e 33 8f 13 cc 33 .2.1.3.3.3N3...3 [u-boot@MINI2440]# md.w 0x30008000 20 30008000: 33cc 33fe b3cc 334c 33ac 33de 135c 33cc .3.3..L3.3.3\..3 30008010: 32cc 31cc 33dc 33cf 33cc 334e 138f 33cc .2.1.3.3.3N3...3 30008020: 338c 33cd 33cc 7bcc 3bcc 33cc 135e 734c .3.3.3.{.;.3^.Ls 30008030: 7bdc 37cc 31dc 33c4 038c 33e8 77cc 13cc .{.7.1.3...3.w.. [u-boot@MINI2440]# md.l 0x30008000 20 30008000: 33fe33cc 334cb3cc 33de33ac 33cc135c .3.3..L3.3.3\..3 30008010: 31cc32cc 33cf33dc 334e33cc 33cc138f .2.1.3.3.3N3...3 30008020: 33cd338c 7bcc33cc 33cc3bcc 734c135e .3.3.3.{.;.3^.Ls 30008030: 37cc7bdc 33c431dc 33e8038c 13cc77cc .{.7.1.3...3.w.. 30008040: 234c77ce 33dc339c 33ec3ece f3cc36ec .wL#.3.3.>.3.6.. 30008050: 37dc33cc 73cc3f5c 17dd314c 33cc62e8 .3.7\?.sL1...b.3 30008060: b6cc33dc 33c233cc 33cc32cc 33cc3f68 .3...3.3.2.3h?.3 30008070: 73cc31cc b3cc33cc 33cc37c9 33df13cc .1.s.3...7.3...3 [u-boot@MINI2440]# nm 0x30008000 30008000: 33fe33cc ? 12345678 30008000: 12345678 ? 34567890 30008000: 34567890 ? q [u-boot@MINI2440]# nm.b 0x30008000 30008000: 90 ? 11 30008000: 11 ? 12 30008000: 12 ? q [u-boot@MINI2440]# mm 0x30008000 30008000: 34567812 ? 54321123 30008004: 334cb3cc ? 12345678 30008008: 33de33ac ? 21234543 3000800c: 33cc135c ? q [u-boot@MINI2440]# md.b 0x30008000 20 30008000: 23 11 32 54 78 56 34 12 43 45 23 21 5c 13 cc 33 #.2TxV4.CE#!\..3 30008010: cc 32 cc 31 dc 33 cf 33 cc 33 4e 33 8f 13 cc 33 .2.1.3.3.3N3...3 [u-boot@MINI2440]# mw.b 0x30008000 aa 10 [u-boot@MINI2440]# mw.b 0x30008010 55 10 [u-boot@MINI2440]# md.b 0x30008000 20 30008000: aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa ................ 30008010: 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 UUUUUUUUUUUUUUUU [u-boot@MINI2440]# cp.b 0x30008000 0x30008010 10 [u-boot@MINI2440]# md.b 0x30008000 20 30008000: aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa ................ 30008010: aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa ................ |
你可以試著修改LED相連的GPIO寄存器的數(shù)據(jù)寄存器值,可以控制LED的點(diǎn)亮! 先熄滅后點(diǎn)亮LED1的范例:(這個(gè)實(shí)驗(yàn)要結(jié)合芯片數(shù)據(jù)手冊(cè)和mini2440的原理圖來(lái)理解)
[u-boot@MINI2440]# md 0x56000014 1 56000014: 00000600 .... [u-boot@MINI2440]# nm.w 0x56000014 56000014: 0600 ? 620 (熄滅) 56000014: 0620 ? 600 (點(diǎn)亮) |
(7) Nor Flash指令
Nor Flash 的命令經(jīng)常用于燒寫數(shù)據(jù)到Nor Flash 。
flinfo 打印Flash存儲(chǔ)器的信息,并列出所有Sector。 flinfo N 單獨(dú)打Flash存儲(chǔ)器N Block的信息。(在有多塊Nor Flash時(shí)使用)
使用范例:
[u-boot@MINI2440]# flinfo
Bank # 1: SST: 1x SST39VF1601 (2MB) Size: 2 MB in 32 Sectors Sector Start Addresses: 00000000 (RO) 00010000 (RO) 00020000 (RO) 00030000 (RO) 00040000 00050000 00060000 (RO) 00070000 (RO) 00080000 00090000 000A0000 000B0000 000C0000 000D0000 000E0000 000F0000 00100000 00110000 00120000 00130000 00140000 00150000 00160000 00170000 00180000 00190000 001A0000 001B0000 001C0000 001D0000 001E0000 001F0000 [u-boot@MINI2440]# flinfo 1
Bank # 1: SST: 1x SST39VF1601 (2MB) Size: 2 MB in 32 Sectors Sector Start Addresses: 00000000 (RO) 00010000 (RO) 00020000 (RO) 00030000 (RO) 00040000 00050000 00060000 (RO) 00070000 (RO) 00080000 00090000 000A0000 000B0000 000C0000 000D0000 000E0000 000F0000 00100000 00110000 00120000 00130000 00140000 00150000 00160000 00170000 00180000 00190000 001A0000 001B0000 001C0000 001D0000 001E0000 001F0000 [u-boot@MINI2440]# flinfo 2 Only FLASH Banks # 1 ... # 1 supported |
后面帶有(RO)的說(shuō)明這個(gè)Sector已經(jīng)寫保護(hù)了。
因?yàn)镹or Flash的讀取接口和SDRAM是一樣的,所以Nor Flash的讀取也是使用md命令。范例如下:
[u-boot@MINI2440]# md.b 0x0 20 00000000: 12 00 00 ea 14 f0 9f e5 14 f0 9f e5 14 f0 9f e5 ................ 00000010: 14 f0 9f e5 14 f0 9f e5 14 f0 9f e5 14 f0 9f e5 ................ [u-boot@MINI2440]# md 0x0 20 00000000: ea000012 e59ff014 e59ff014 e59ff014 ................ 00000010: e59ff014 e59ff014 e59ff014 e59ff014 ................ 00000020: 33f80260 33f802c0 33f80320 33f80380 `..3...3 ..3...3 00000030: 33f803e0 33f80440 33f804a0 deadbeef ...3@..3...3.... 00000040: 33f80000 33f80000 33fbe8dc 3400374c ...3...3...3L7.4 00000050: e10f0000 e3c0001f e38000d3 e129f000 ..............). 00000060: e3a00453 e3a01000 e5801000 e3e01000 S............... 00000070: e59f0488 e5801000 e59f1484 e59f0484 ................
|
但由于Nor Flash的燒寫時(shí)序和SDRAM的寫入不同,燒寫Nor Flash 不能使用mm等命令,只能使用cp命令從內(nèi)存拷貝到Nor Flash,而且燒寫之前必須解除保護(hù)并擦除!命令如下:
protect :對(duì)Flash 寫保護(hù)的操作,可以使能和解除寫保護(hù)。 格式: protect on/off start end protect on/off start +end protect on/off N:SF[-SL] protect on/off bank N protect on/off all
第1 個(gè)參數(shù)on 代表使能寫保護(hù);off 代表解除寫保護(hù)。 第2 、3 參數(shù)是指定Flash 寫保護(hù)操作范圍
start end是照起始地址和結(jié)束地址定義范圍,start是擦除塊的起始地址;end 是擦除末尾塊的結(jié)束地址。 例如:擦除Sector 2和Sector 3區(qū)域命令為erase 20000 3ffff 。
start +end是照起始地址和操作字節(jié)數(shù)定義范圍,這種方式最常用。start是擦除塊的起始地址;end 是擦除的字節(jié)數(shù)。 例如:擦除Sector 2和Sector 3區(qū)域命令為erase 20000 +20000
N:SF[-SL]是按照組和扇區(qū),N 表示Flash 的Block號(hào),SF 表示擦除起始Sector號(hào),SL 表示擦除結(jié)束Sector號(hào)。 例如:擦除Block1 的Sector 2和Sector 3區(qū)域命令為erase 1:2-3。
bank N是擦除整個(gè)Block,擦除Block號(hào)為N 的整個(gè)Flash。
all是擦除全部Flash。
注意:Nor Flash擦除的最小單位是Sector,也就是0x10000字節(jié),如果你定義的大小不滿1 Sector或超過(guò)Sector的邊界,那么被定義到的Sector會(huì)被全部擦除。
erase :擦除Flash的命令 格式: erase start end erase start +end erase N:SF[-SL] erase bank N erase all 參數(shù)是指定Flash 擦除操作范圍,跟寫保護(hù)的方式相同。
以下的范例將mini2440的Nor Flash的Sector 16寫保護(hù),再解除保護(hù),擦除數(shù)據(jù),最后將起始的20字節(jié)拷貝到Sector 16。
[u-boot@MINI2440]# flinfo 1
Bank # 1: SST: 1x SST39VF1601 (2MB) Size: 2 MB in 32 Sectors Sector Start Addresses: 00000000 (RO) 00010000 (RO) 00020000 (RO) 00030000 (RO) 00040000 00050000 00060000 (RO) 00070000 (RO) 00080000 00090000 000A0000 000B0000 000C0000 000D0000 000E0000 000F0000 00100000 00110000 00120000 00130000 00140000 00150000 00160000 00170000 00180000 00190000 001A0000 001B0000 001C0000 001D0000 001E0000 001F0000 [u-boot@MINI2440]# protect on 1:16-16 Protect Flash Sectors 16-16 in Bank # 1 [u-boot@MINI2440]# flinfo 1
Bank # 1: SST: 1x SST39VF1601 (2MB) Size: 2 MB in 32 Sectors Sector Start Addresses: 00000000 (RO) 00010000 (RO) 00020000 (RO) 00030000 (RO) 00040000 00050000 00060000 (RO) 00070000 (RO) 00080000 00090000 000A0000 000B0000 000C0000 000D0000 000E0000 000F0000 00100000 (RO) 00110000 00120000 00130000 00140000 00150000 00160000 00170000 00180000 00190000 001A0000 001B0000 001C0000 001D0000 001E0000 001F0000 [u-boot@MINI2440]# protect off 0x100000 0x10ffff Un-Protect Flash Sectors 16-16 in Bank # 1 [u-boot@MINI2440]# flinfo 1
Bank # 1: SST: 1x SST39VF1601 (2MB) Size: 2 MB in 32 Sectors Sector Start Addresses: 00000000 (RO) 00010000 (RO) 00020000 (RO) 00030000 (RO) 00040000 00050000 00060000 (RO) 00070000 (RO) 00080000 00090000 000A0000 000B0000 000C0000 000D0000 000E0000 000F0000 00100000 00110000 00120000 00130000 00140000 00150000 00160000 00170000 00180000 00190000 001A0000 001B0000 001C0000 001D0000 001E0000 001F0000 [u-boot@MINI2440]# erase 0x100000 +20 Erasing sector 16 ... ok. Erased 1 sectors [u-boot@MINI2440]# cp.b 0x0 0x100000 0x20 Copy to Flash... done [u-boot@MINI2440]# md.b 100000 20 00100000: 12 00 00 ea 14 f0 9f e5 14 f0 9f e5 14 f0 9f e5 ................ 00100010: 14 f0 9f e5 14 f0 9f e5 14 f0 9f e5 14 f0 9f e5 ................
|
(8) USB 操作指令
指令 |
功能 |
usb reset |
初始化USB控制器 |
usb stop [f] |
關(guān)閉USB控制器 |
usb tree |
已連接的USB設(shè)備樹 |
usb info [dev] |
顯示USB設(shè)備[dev]的信息 |
usb storage |
顯示已連接的USB存儲(chǔ)設(shè)備 |
usb dev [dev] |
顯示和設(shè)置當(dāng)前USB存儲(chǔ)設(shè)備 |
usb part [dev] |
顯示USB存儲(chǔ)設(shè)備[dev]的分區(qū)信息 |
usb read addr blk# cnt |
讀取USB存儲(chǔ)設(shè)備數(shù)據(jù) |
在所有的命令使用前,必須先插入USB設(shè)備,然后使用:usb reset,以初始化USB控制器,獲取設(shè)備信息。 我將一個(gè)4G的kingstonU盤(可引導(dǎo)盤)插入 mini2440,然后讀取他的頭512 字節(jié)(MBR):
[u-boot@MINI2440]# usb reset (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found [u-boot@MINI2440]# usb tree
Device Tree: 1 Hub (12 Mb/s, 0mA) | OHCI Root Hub | +-2 Mass Storage (12 Mb/s, 100mA) Kingston DT 101 II 0019E02CB6EB5B8B1B120051
[u-boot@MINI2440]# usb info 1: Hub, USB Revision 1.10 - OHCI Root Hub - Class: Hub - PacketSize: 8 Configurations: 1 - Vendor: 0x0000 Product 0x0000 Version 0.0 Configuration: 1 - Interfaces: 1 Self Powered 0mA Interface: 0 - Alternate Setting 0, Endpoints: 1 - Class Hub - Endpoint 1 In Interrupt MaxPacket 2 Interval 255ms
2: Mass Storage, USB Revision 2.0 - Kingston DT 101 II 0019E02CB6EB5B8B1B120051 - Class: (from Interface) Mass Storage - PacketSize: 64 Configurations: 1 - Vendor: 0x0951 Product 0x1613 Version 1.0 Configuration: 1 - Interfaces: 1 Bus Powered 100mA Interface: 0 - Alternate Setting 0, Endpoints: 2 - Class Mass Storage, Transp. SCSI, Bulk only - Endpoint 1 In Bulk MaxPacket 64 - Endpoint 2 Out Bulk MaxPacket 64
[u-boot@MINI2440]# usb storage Device 0: Vendor: Kingston Rev: PMAP Prod: DT 101 II Type: Removable Hard Disk Capacity: 3875.0 MB = 3.7 GB (7936000 x 512) [u-boot@MINI2440]# usb dev 0
USB device 0: Device 0: Vendor: Kingston Rev: PMAP Prod: DT 101 II Type: Removable Hard Disk Capacity: 3875.0 MB = 3.7 GB (7936000 x 512) ... is now current device [u-boot@MINI2440]# usb part 0 print_part of 0
Partition Map for USB device 0 -- Partition Type: DOS
Partition Start Sector Num Sectors Type 4 63 7935937 c [u-boot@MINI2440]# usb read 0x30008000 0 200
USB read: device 0 block # 0, count 512 ... ......................... 512 blocks read: OK [u-boot@MINI2440]# md.b 0x30008000 200
30008000: fa 31 c0 8e d8 8e c0 8e d0 bc 00 7c fb fc 89 e6 .1.........|....
30008010: bf 00 06 b9 00 01 f3 a5 ea dc 06 00 00 10 00 01 ................
30008020: 00 00 7c 00 00 00 00 00 00 00 00 00 00 80 3f 00 ..|...........?.
30008030: ff 00 ed 01 1e 0e 1f 3a 16 10 00 74 06 1f ea 36 .......:...t...6
30008040: e7 00 f0 3d fb 54 75 05 8c d8 fb eb 1d 80 fc 08 ...=.Tu.........
30008050: 75 1b e8 81 00 8a 36 13 00 fe ce 8b 0e 15 00 86 u.....6.........
30008060: cd c0 e1 06 0a 0e 11 00 31 c0 f8 eb 65 80 fc 02 ........1...e...
30008070: 72 cb 80 fc 04 77 c6 60 80 cc 40 50 be 00 00 c7 r....w.`..@P....
30008080: 04 10 00 30 e4 89 44 02 89 5c 04 8c 44 06 66 31 ...0..D..\..D.f1
30008090: c0 66 89 44 0c 88 f0 f6 26 11 00 88 cf 88 eb c0 .f.D....&.......
300080a0: ef 06 81 e1 3f 00 01 c8 48 89 c7 a1 13 00 f7 26 ....?...H......&
300080b0: 11 00 f7 e3 01 f8 81 d2 00 00 89 44 08 89 54 0a ...........D..T.
300080c0: 58 30 c0 8a 16 10 00 e8 0c 00 88 26 03 00 61 a1 X0.........&..a.
300080d0: 02 00 1f ca 02 00 9c ff 1e 22 00 c3 80 fa 8f 7f ........."......
300080e0: 04 88 16 2d 06 be 87 07 e8 8d 00 be be 07 31 c0 ...-..........1.
300080f0: b9 04 00 f6 04 80 74 03 40 89 f5 81 c6 10 00 e2 ......t.@.......
30008100: f2 48 74 02 cd 18 bf 05 00 be 1d 06 c7 44 02 01 .Ht..........D..
30008110: 00 66 8b 46 08 66 89 44 08 b8 00 42 8a 16 2d 06 .f.F.f.D...B..-.
30008120: cd 13 73 0d 4f 74 49 30 e4 8a 16 2d 06 cd 13 eb ..s.OtI0...-....
30008130: d8 a1 fe 7d 3d 55 aa 75 37 fa 66 a1 4c 00 66 a3 ...}=U.u7.f.L.f.
30008140: 3f 06 be 13 04 8b 04 48 89 04 c1 e0 06 8e c0 31 ?......H.......1
30008150: ff be 1d 06 b9 60 00 fc f3 a5 c7 06 4c 00 17 00 .....`......L...
30008160: a3 4e 00 fb 8a 16 2d 06 89 ee fa ea 00 7c 00 00 .N....-......|..
30008170: be aa 07 e8 02 00 eb fe ac 20 c0 74 09 b4 0e bb ......... .t....
30008180: 07 00 cd 10 eb f2 c3 53 74 61 72 74 20 62 6f 6f .......Start boo
30008190: 74 69 6e 67 20 66 72 6f 6d 20 55 53 42 20 64 65 ting from USB de
300081a0: 76 69 63 65 2e 2e 2e 0d 0a 00 42 6f 6f 74 20 66 vice......Boot f
300081b0: 61 69 6c 65 64 00 00 00 ea eb d4 ca 00 00 00 00 ailed...........
300081c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
300081d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
300081e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 01 ................
300081f0: 01 00 0c fe 7f ec 3f 00 00 00 c1 17 79 00 55 aa ......?.....y.U. |
(9) SD卡(MMC)指令
SD卡的使用命令比較簡(jiǎn)單,只有初始化和設(shè)備信息的顯示,讀寫是通過(guò)文件系統(tǒng)命令實(shí)現(xiàn)的。 mmc init [dev] - 初始化MMC子系統(tǒng) mmc device [dev] - 查看和設(shè)置當(dāng)前設(shè)備
使用和USB類似,在所有的命令使用前,必須先插入SD卡,然后使用:mmc init,以初始化MMC 控制器,獲取設(shè)備信息。 我在mini2440中插入1GB SD卡:
[u-boot@MINI2440]# mmc init mmc: Probing for SDHC ... mmc: SD 2.0 or later card found trying to detect SD Card... Manufacturer: 0x00, OEM "Product name: " ", revision 0.0
Serial number: 7864775
Manufacturing date: 11/2006
CRC: 0x4f, b0 = 1
READ_BL_LEN=6, C_SIZE_MULT=7, C_SIZE=4095
size = 0
SD Card detected RCA: 0x2 type: SD
mmc1 is available
[u-boot@MINI2440]# mmc device
mmc1 is current device |
(10) FAT文件系統(tǒng)指令
fatinfo:顯示文件系統(tǒng)的相關(guān)信息 格式:fatinfo <interface> <dev[:part]> Interface:代表接口,如usb、mmc; dev:代表設(shè)備編號(hào),如0、1……; part:代表存儲(chǔ)設(shè)備中的分區(qū),如1、2……。
fatload:從FAT32文件系統(tǒng)中讀取二進(jìn)制文件到SDRAM。 格式:fatload <interface> <dev[:part]> <addr> <filename> [bytes] Interface、dev和part同上; addr:代表寫入SDRAM的地址; filename:代表存儲(chǔ)設(shè)備中的文件名; bytes:代表從存儲(chǔ)設(shè)備中讀取的文件大小,可不填;如果填的數(shù)據(jù)比文件小,就只讀取bytes字節(jié),如果填的數(shù)據(jù)比文件大,也只讀取文件的大小。
fatls:列出FAT32文件系統(tǒng)中目錄里的文件。 格式:fatls <interface> <dev[:part]> [directory] Interface、dev和part同上; directoryr:代表所要查看的目錄,可不填,默認(rèn)為/。
這些指令基本上要和U盤或者SD卡同時(shí)使用,主要用于讀取這些移動(dòng)存儲(chǔ)器上的FAT32分區(qū)。
使用范例:
[u-boot@MINI2440]# usb part 0 print_part of 0
Partition Map for USB device 0 -- Partition Type: DOS
Partition Start Sector Num Sectors Type 4 63 7935937 c [u-boot@MINI2440]# fatinfo usb 0:4 Interface: USB Device 0: Vendor: Kingston Rev: PMAP Prod: DT 101 II Type: Removable Hard Disk Capacity: 3875.0 MB = 3.7 GB (7936000 x 512) Partition 4: Filesystem: FAT32 "7600_16385_" [u-boot@MINI2440]# fatls usb 0:4 boot/ efi/ sources/ support/ upgrade/ 43 autorun.inf 383562 bootmgr 111880 setup.exe 256220 u-boot.bin
4 file(s), 5 dir(s)
[u-boot@MINI2440]# fatls usb 0:4 /boot/ ./ ../ fonts/ zh-cn/ 262144 bcd 3170304 boot.sdi 1024 bootfix.bin 97280 bootsect.exe 4096 etfsboot.com 485440 memtest.exe
6 file(s), 4 dir(s) [u-boot@MINI2440]# fatload usb 0:4 0x30008000 u-boot.bin reading u-boot.bin ........................
256220 bytes read [u-boot@MINI2440]# fatload usb 0:4 0x30008000 u-boot.bin 200 reading u-boot.bin
512 bytes read |
(11) 系統(tǒng)引導(dǎo)指令
boot 和bootd 都是運(yùn)行ENV”bootcmd”中指定的指令。
bootm 指令是專門用于啟動(dòng)在SDRAM中的用U-boot的mkimage工具處理過(guò)的內(nèi)核映像。 格式:bootm [addr [arg ...]] addr 是內(nèi)核映像所在的SDRAM中的地址 當(dāng)啟動(dòng)的是Linux內(nèi)核時(shí),'arg' 可以使 initrd 的地址。
[u-boot@MINI2440]# setenv bootcmd tftp\;bootm [u-boot@MINI2440]# saveenv Saving Environment to NAND... Erasing Nand... Erasing at 0x6000000000002 -- 0% complete. Writing to Nand... done [u-boot@MINI2440]# boot dm9000 i/o: 0x20000300, id: 0x90000a46 DM9000: running in 16 bit mode MAC: 08:08:11:18:12:27 operating at 100M full duplex mode Using dm9000 device TFTP from server 192.168.1.100; our IP address is 192.168.1.101 Filename 'zImage.img'. Load address: 0x30008000 Loading: T ################################################################# ################################################################# ########################## done Bytes transferred = 2277540 (22c0a4 hex) ## Booting kernel from Legacy Image at 30008000 ... Image Name: tekkaman Created: 2010-03-29 12:59:51 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 2277476 Bytes = 2.2 MB Load Address: 30008000 Entry Point: 30008040 Verifying Checksum ... OK XIP Kernel Image ... OK OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel. Linux version 2.6.33.1 (tekkaman@MAGI-Linux) (gcc version 4.3.2 (crosstool-NG-1.6.1-tekkaman) ) #5 Mon Mar 29 20:58:50 CST 2010 CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177 CPU: VIVT data cache, VIVT instruction cache Machine: MINI2440 (略)
U-Boot 2009.11 ( 4月 04 2010 - 12:09:25)
modified by tekkamanninja (tekkamanninja@163.com) Love Linux
I2C: ready DRAM: 64 MB Flash: 2 MB NAND: 128 MiB Video: 240x320x16 20kHz 62Hz In: serial Out: serial Err: serial Net: dm9000 U-Boot 2009.11 ( 4月 04 2010 - 12:09:25) modified by tekkamanninja (tekkamanninja@163.com) Love Linux Hit any key to stop autoboot: 0 [u-boot@MINI2440]# bootd dm9000 i/o: 0x20000300, id: 0x90000a46 DM9000: running in 16 bit mode MAC: 08:08:11:18:12:27 operating at 100M full duplex mode Using dm9000 device TFTP from server 192.168.1.100; our IP address is 192.168.1.101 Filename 'zImage.img'. Load address: 0x30008000 Loading: T ################################################################# ################################################################# ########################## done Bytes transferred = 2277540 (22c0a4 hex) ## Booting kernel from Legacy Image at 30008000 ... Image Name: tekkaman Created: 2010-03-29 12:59:51 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 2277476 Bytes = 2.2 MB Load Address: 30008000 Entry Point: 30008040 Verifying Checksum ... OK XIP Kernel Image ... OK OK
Starting kernel ... (略)
|
(12)EEPROM 讀寫指令
eeprom - I2C 接口的EEPROM 讀寫指令 格式: eeprom read addr off cnt eeprom write addr off cnt 第一個(gè)參數(shù)addr 是要寫入或讀出的數(shù)據(jù)在SDRAM中的存放地址; 第二個(gè)參數(shù)off 是在EEPROM中的偏移; 第三個(gè)參數(shù)cnt 是讀寫的數(shù)據(jù)字節(jié)數(shù)。
使用范例:
[u-boot@MINI2440]# md.b 0x30008000 2 30008000: aa aa .. [u-boot@MINI2440]# eeprom read 0x30008000 10 2
EEPROM @0x50 read: addr 30008000 off 0010 count 2 ... done [u-boot@MINI2440]# md.b 0x30008000 2 30008000: ff ff .. [u-boot@MINI2440]# mm.b 0x30008000 30008000: ff ? aa 30008001: ff ? 55 30008002: aa ? q [u-boot@MINI2440]# md.b 0x30008000 2 30008000: aa 55 .U [u-boot@MINI2440]# eeprom write 0x30008000 10 2
EEPROM @0x50 write: addr 30008000 off 0010 count 2 ... done [u-boot@MINI2440]# eeprom read 0x30008010 10 2
EEPROM @0x50 read: addr 30008010 off 0010 count 2 ... done [u-boot@MINI2440]# md.b 0x30008010 2 30008010: aa 55 .U
|
(13)設(shè)置和讀取RTC指令
date - 設(shè)置和讀取RTC 格式: date [MMDDhhmm[[CC]YY][.ss]] MM:月份
DD:日期
hh:小時(shí)
mm 分鐘
CC:年份的前兩個(gè)數(shù)字
YY:年份的后兩個(gè)數(shù)字
ss:秒數(shù)
使用范例:
[u-boot@MINI2440]# date Date: 1980-00-06 (Thursday) Time: 20:30:25 [u-boot@MINI2440]# date 041100582010.20 Date: 2010-04-11 (Sunday) Time: 0:58:20 |
(14)腳本運(yùn)行指令
run var [...] var :ENV中的腳本名
使用范例:
[u-boot@MINI2440]# setenv a_run_test echo $bootfile \; version [u-boot@MINI2440]# run a_run_test zImage.img
U-Boot 2009.11 ( 4月 04 2010 - 12:09:25) |
(15)系統(tǒng)重啟指令
reset - 重啟CPU
[u-boot@MINI2440]# reset resetting ...
U-Boot 2009.11 ( 4月 04 2010 - 12:09:25)
modified by tekkamanninja (tekkamanninja@163.com) Love Linux
I2C: ready DRAM: 64 MB Flash: 2 MB NAND: 128 MiB Video: 240x320x16 20kHz 62Hz In: serial Out: serial Err: serial Net: dm9000 U-Boot 2009.11 ( 4月 04 2010 - 12:09:25) modified by tekkamanninja (tekkamanninja@163.com) Love Linux Hit any key to stop autoboot: 0 [u-boot@MINI2440]#
| |