05
12

fw_printenv-control u-boot enviroment variables under linux

u-boot可以設定的環境變數,例如tftp server ip, eth ip…等,如果要在進入linux後還能隨意操縱這些enviroment variable,就必需藉由fw_printenv這個小程式,這支小程式能顯示和設定u-boot的環境變數

因為小弟的板子是nand flash,所以我下載目前最新的u-boot,並試著用make env指令把fw_printenv編出來(最新板的fw_printenv可以自動切換nand與nor flash的操作方式)

接下來就要設定fw_env.config檔案並把它擺在/etc下,因為小弟u-boot的env offset被設定成如下

#define CFG_ENV_OFFSET  0x020000
#define CFG_NAND_BASE    0x4E000000
#define CMD_SAVEENV
#define CFG_NAND_LEGACY   
#define CFG_ENV_SIZE  0x10000 /* Total Size of Environment Sector */
#define SECTORSIZE 512

所以fw_env.config必需被設定如下
# NAND example
# MTD device name  offset                env. size                  Flash sector size                  Number of sectors
/dev/mtd0                   0x020000          0x10000                 0x4000                                   512

這樣一來以後改u-boot environment variable就不用特地進u-boot修改了…

執行畫面大致如下圖

attachments/200905/1124668809.jpg

標籤: embedded
評論: 3 | 引用: 0 | 閱讀: 11537
  • 1 
haitao182 [ 2009-06-12 11:29 | 回覆 | 編輯 刪除 ]
我使用fw_printenv怎么报-bash: /sbin/fw_printenv: No such file or directory的错误勒?请指教一下
Joey [ 回復於2009-06-24 19:44 郵箱 | 編輯 刪除 ]
給你點線索

1. library missing
2. none executable binary
haitao182 [ 2009-06-12 11:32 | 回覆 | 編輯 刪除 ]
我的邮箱是haitao182@163.com
  • 1 
發表評論
暱 稱: 密 碼:
網 址: E - mail:
驗證碼: 驗證碼圖片 選 項:
頭 像:
內 容: