2010-12-14 65 views
1

我想捕獲已寫入U-Boot環境的序列號。從引導程序捕獲序列號

的Bootloader:U-啓動1.2 內核:2.6.24 工具鏈ARM-Linux的GCC-3.4.1 RFS:busybox的-1.9.2

Creating 3 MTD partitions on "NAND 64MiB 3,3V 8-bit": 
0x00000000-0x00060000 : "bootloader" 
0x00060000-0x00260000 : "kernel" 
0x00260000-0x03e60000 : "rootfilesystem" 

請告訴我怎麼能我這樣做?

非常感謝。

+0

什麼序列號?我看到的只有3個mtd分區和它們的存儲位置... – leppie 2010-12-14 10:38:37

+0

這是一個配置問題,無需編程。 – 2011-03-04 16:26:31

回答

0

那麼,如果你可以到達u-boot命令行,你可以看看環境變量 - 用printenv轉儲出來。我們的系統有一個叫做「unlock_env」的系統 - 如果你的系統有這個值,你可以輸入「echo $ unlock_env」,它會顯示你的內容。環境部門的地址將是第一個十六進制值。

當你在u-boot中時,「echo $ serial#」應該打印序列號,但我假設你想在引導到O/S後讀取它。

無論如何,一旦你有環境部門的地址,你必須解析扇區中的數據並尋找「序列號」。不應該那麼難,我認爲它可能只是一系列以NULL結尾的字符串。祝你好運。

1

你可以通過它在內核命令行,然後用/proc/cmdline