1. 程式人生 > >RK3399模組開發資料下載(RK3399PRO_NPU上電啟動)

RK3399模組開發資料下載(RK3399PRO_NPU上電啟動)

RK3399PRO_NPU上電啟動

1.1 電源控制部分概述
可執行檔案: usr/bin/npu_powerctrl
rk3399pro:/ # npu_powerctrl
Usage:npu_powerctrl [­s] [­r] [­o] [­i] [­d]
­s npu enter sleep
­r wakup npu
­o power up or reset npu
­i gpio init
­d power down

1.2 韌體燒寫部分
可執行檔案:
Usr/bin/upgrade_tool :直接由劉翊編譯提交,沒有提交原始碼
Usr/bin/npu_upgrade: 這是一個 shell 指令碼,呼叫 npu_powerctrl 上電, 呼叫
upgrade_tool 執行燒寫
韌體位置: npu fw 修改可直接 push 到這個目錄,再執行 npu_upgrade 上電燒寫
rk3399pro:/ # ./usr/bin/npu-image.sh 升級 NPU 韌體

1.3 手動上電燒寫啟動
npu_upgrade MiniLoaderAll.bin uboot.img trust.img boot.img
npu 啟動失敗分析: 

1.4 npu 啟動失敗分析:
1. 上電 進 maskrom
Dmesg |grep NPU_POWER 確認上電控制是否正常, 比如相關的 gpio 是否有 request 錯誤的,狀態是否正常
npu_powerctrl ­o 單獨執行上電命令,檢視串列埠 log,是否有識別到裝置。

正常情況上電之後可以馬上識別到 maskrom 如下:
rk3399pro:/ # npu_powerctrl ­o
rk3399pro:/ # [9419.717848] usb 1­1: new high­speed USB device number 64 using
xhci­hcd
[ 9419.839635] usb 1­1: New USB device found, idVendor=2207,
idProduct=180a[ 9419.839720] usb 1­1: New USB device strings: Mfr=0

無法正常識別:
cat /d/gpio 檢視相關的電源 gpio 是否正確
rk3399pro:/ # cat /sys/kernel/debug/clk/clk_wifi_pmu/clk_rate
24000000
rk3399pro:/ # cat /sys/kernel/debug/clk/clk_wifi_pmu/clk_enable_count
1

2 燒寫韌體
錯誤的概率比較低,通常是 ddr 或者控制器異常才會有問題,


3 啟動
涉及到 npu 的韌體是否正常, 或者硬體 ddr 是否有問題

·······················

參考資料:資料轉自一牛網論壇