存取所需裝置
若要測試特定裝置,請不要在使用該裝置的其他裝置使用 以及系統的功能限制您可以透過以下兩種方式來達成這個目的:
避免其他驅動程式繫結至裝置。這可能需要建立 系統具有修改後的驅動程式庫繫結規則,一般會將此實體繫結至該系統 到所需裝置,或是將核心指令列引數傳送給所需裝置 該驅動程式庫。
解除繫結至所需裝置。
舉例來說,若要對 nandpart 使用測試工具進行 nandpart 裝置可能會遭到移除,例如:
$ unbind /dev/sys/platform/raw_nand/aml-raw_nand/nand/fvm
請注意,由 nandpart 建立的所有其他裝置也必須移除。使用
driver dump
可檢查裝置樹狀結構。
通訊協定測試
nand-test
是一項整合測試,可執行 nand 通訊協定的基本測試
驅動程式。
舉例來說,這個指令會測試現有的 ram-nand 裝置,確定 測試不會修改外部區塊的內容 [100, 109]:
$ /boot/test/sys/nand-test --device /dev/sys/platform/00:00:2e/nand-ctl/ram-nand-0 --first-block 100 --num-blocks 10
正確性測試
nand-util
是一項疑難排解工具,可以執行簡單的讀取可靠性
測試。
$ nand-util --device /dev/sys/platform/00:00:2e/nand-ctl/ram-nand-0 --check
檢查 / 操縱
$ nand-util --device /dev/sys/platform/raw_nand/aml-raw_nand/nand --info
$ nand-util --device /dev/sys/platform/raw_nand/aml-raw_nand/nand/fvm --read --block 1 --page 2
擷取圖片
nand-util
也可用來擷取 nand 內容的圖片:
$ unbind /dev/sys/platform/raw_nand/aml-raw_nand/nand/fvm/ftl/block
$ unbind /dev/sys/platform/raw_nand/aml-raw_nand/nand/fvm/ftl
$ nand-util --device /dev/sys/platform/raw_nand/aml-raw_nand/nand/fvm --save --file /tmp/image
將圖片檔轉移至主機:
$ out/default/host-tools/netcp :/tmp/image /tmp/saved_image_file
重播
您可以使用 nand-loader 將已儲存的 nand 圖像載入至 RAM 裝置上方。
首先,將映像檔轉移到執行 Zircon 的裝置。例如,在該主機上:
echo /nand.dmp=/tmp/saved_image_file > /tmp/manifest.txt
out/default/host-tools/minfs /tmp/image.dsk create --manifest /tmp/manifest.txt
fx set bringup.x64
fx build
fx qemu -k -- -hda /tmp/image.dsk
然後在 zircon 中執行下列操作:
$ mkdir data/a
$ mount /dev/class/block/000 data/a
$ nand-loader data/a/nand.dmp